Commit e238ff1d authored by Renzo Mauro Ontivero's avatar Renzo Mauro Ontivero

Merge branch 'develop' of https://gitlab.bfa.ar/blockchain/tsa2 into develop

parents 2aa5a52a cd6323a5
......@@ -83,12 +83,38 @@ Conectado exitosamente:
> netId: 5777
> account: 0x80C6C180d044d476437F9F5bCc824dF134A2c9B2
```
Si estas probando en la red de TESTNET, deberás configurar el parámetro ```chainId``` que se encuentra en ```api/src/StamperWrapper.js``` con el valor ```99118822```
La api tiene dos endpoints:
* **/stamp**: Es un POST, recibe en el body un objeto json con sólo una clave
llamada ```hashes``` que es un array de strings que representan los hashes a
stampear.
Devuelve 200 si la operación tuve exito, sino devuelve un error code > 400
Devuelve un objeto json con la siguiente estructura:
```json
{
"status": "ok",
"txHash": [
{
"hash": "0x0bd11b06abfd0d29295bada8aec7dda0c336d23856ac0a21b93d4be60d6388d5",
"block_number": "2540433",
"status": "already_stamped_by_this_TSA"
},
{
"hash": "0xca7ad1fc3c916e0f8956e997dd5f32072b17b381c9ea753295d387792499fcdc",
"block_number": "2540508",
"status": "already_stamped_by_this_TSA"
},
{
"hash": "0x589e0b25fe9e05ff319af24b9dd356a9228be8b1a46fe4bd4cca3567688c617b",
"block_number": "2540508",
"status": "stamped"
}
]
}
```
```status``` es ok si el resultado fue correcto. En ```txHash``` viene la
lista de hashes stampados (con sus metadatos). El campo ```status``` propio de cada elemento, se refiere
a que si el hash ya se encontraba previamente stampado ```already_stamped_by_this_TSA```, si fue stampado correctamente en el envío ```stamped```, o si tuvo algún error durante su proceso ```error```.
* **/verify/:hash**: Es un GET, se le pasa en vez de :hash el hash a verificar.
Devuelve un objecto json con la siguiente estructura:
......@@ -99,7 +125,7 @@ La api tiene dos endpoints:
lista de stampers de ese objecto junto al nro de bloque en el que lo hizo.
### UI
La primera vez hay que ejecutar lo siguiente dentro del directorio ```ui```
Para el desarrollo de la UI, la primera vez hay que ejecutar lo siguiente dentro del directorio ```ui```
```bash
npm install
```
......@@ -108,6 +134,8 @@ La aplicación está escrita con Vue.js. Para correr el servicio hay que ejecuta
```bash
npm run serve
```
**Ver más detalles en el README dentro del directorio ```ui```**
## Instalación en producción
Para correr en producción se deben compilar la UI y la API. Una vez hecho eso
ya se está listo para correr la API y tirar los assets de UI donde se desee.
......@@ -171,29 +199,37 @@ node dist/index.js
### Deploy de la UI
Al buildear se crea el archivo ```ui/dist/index.html``` y todo el resto de los recursos
necesarios. Al acceder al index.html sólo se ve el componente de Stampeo. El html se ve así:
```html
<!DOCTYPE html>
<html lang=en>
<head>
<meta charset=utf-8>
<meta http-equiv=X-UA-Compatible content="IE=edge">
<meta name=viewport content="width=device-width,initial-scale=1">
<link rel=icon href=/favicon.ico>
<title>ui</title>
<link href=/css/app.47c5343e.css rel=preload as=style>
<link href=/js/app.fa8c25b5.js rel=preload as=script>
<link href=/js/chunk-vendors.bbeb7c49.js rel=preload as=script>
<link href=/css/app.47c5343e.css rel=stylesheet>
</head>
<body>
<noscript><strong>We're sorry but ui doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript>
<div id=app apiurl=http://localhost:3000></div>
<script src=/js/chunk-vendors.bbeb7c49.js></script><script src=/js/app.fa8c25b5.js></script>
</body>
</html>
<div id="app" apiurl=https://tsa2.buenosaires.gob.ar
lb_00=" El archivo "
lb_01=" fue enviado con éxito para ser sellado"
lb_02="Se ha producido un error al intentar sellar "
lb_03=" se encuentra sellado por: "
lb_04=" en el bloque "
lb_05="No se ha podido verificar el archivo "
lb_06="Volver a Sellar o Verificar"
lb_07="Cargando"
lb_08="Arrastrá archivos aquí<br>ó"
lb_09="Seleccioná archivos <span class='sr-only'>para Sellar o Verificar</span>"
lb_10="Nombre del archivo: "
lb_11="Hash del archivo: "
lb_12="Sellar"
lb_13="Verificar"
lb_14=" Agregar archivos"
lb_15=" Copiar"
lb_16="Enlace de verificación"
lb_17="Remover archivo"
lb_18="Seleccionar otros archivos"
lb_19=" Solo se pueden agregar "
lb_20=" archivos por vez">
</div>
```
Para embeberlo en otro contexto hay que copiar los ```<link />``` y el ```<div id=app>``` y ```<script />```
del body.
Para embeberlo en otro contexto hay que copiar el div ```<div id=app>```, los estilos ```link``` y el script ```tsa2.js``` del body.
También se puede cambiar los textos de la app modificando todos los labels (```lb_```) que figuran como atributos de ```<div id=app>``` según corresponda.
Es **importante** notar que la url de la api se configura en el atributo ***apiurl*** del div con id ```app```. Esto tiene que apuntar a la URL donde se eligió ejecutar la API. En este caso apunta a la API de producción hosteada por buenosaires.gob.ar
**Es importante notar que la url de la api se configura en el atributo ***apiurl*** del div con id ```app```. Esto tiene que apuntar a la URL donde se eligió ejecutar la API.**
**Ver más detalles en el README dentro del directorio ```ui```**
# ui
# UI
## Project setup
## Producción
Si no se requieren cambios en la funcionalidad de la UI, se puede utilizar solamente la carpeta ```dist``` que ya se encuentra lista para su uso. No hace falta compilar nada, ni correr npm. Ahí mismo se pueden cambiar los estilos e imágenes de ser necesario.
### Cambios de Estilos
Modificar los estilos dentro del directorio ```dist/static/css/style.css``` y ```dist/static/css/tsa2.css```
También se puede cambiar los textos de la app modificando todos los labels (```lb_```) que figuran como atributos de ```<div id=app>``` según corresponda.
Es **importante** notar que la url de la api se configura en el atributo ***apiurl*** del div con id ```app```. Esto tiene que apuntar a la URL donde se eligió ejecutar la API. En este caso apunta a la API de producción hosteada por buenosaires.gob.ar
```html
<div id="app" apiurl=https://tsa2.buenosaires.gob.ar
lb_00=" El archivo "
lb_01=" fue enviado con éxito para ser sellado"
lb_02="Se ha producido un error al intentar sellar "
lb_03=" se encuentra sellado por: "
lb_04=" en el bloque "
lb_05="No se ha podido verificar el archivo "
lb_06="Volver a Sellar o Verificar"
lb_07="Cargando"
lb_08="Arrastrá archivos aquí<br>ó"
lb_09="Seleccioná archivos <span class='sr-only'>para Sellar o Verificar</span>"
lb_10="Nombre del archivo: "
lb_11="Hash del archivo: "
lb_12="Sellar"
lb_13="Verificar"
lb_14=" Agregar archivos"
lb_15=" Copiar"
lb_16="Enlace de verificación"
lb_17="Remover archivo"
lb_18="Seleccionar otros archivos"
lb_19=" Solo se pueden agregar "
lb_20=" archivos por vez">
</div>
```
Para embeberlo en otro contexto hay que copiar el div ```<div id=app>```, los estilos ```link``` y el script ```tsa2.js``` del body.
## Desarrollo
En caso de necesitar realizar cambios en la UI.
### 1. Setup del proyecto
```
npm install
```
### Compiles and hot-reloads for development
### 2. Compila y tiene un live-reload para desarrollar
```
npm run serve
```
### Compiles and minifies for production
**Importante:** Siempre tratar de poner en el wording/texto de la app como atributo en el HTML para poder facilitar los cambios de texto/traducciones sin tener la necesidad de compilar.
### 3. Después de realizar los cambios es necesario hacer un build para compilar y minimizar en la carpeta ```dist```.
```
npm run build
```
### Run your tests
### 4. Corré el test para verificar que no haya errores
```
npm run test
```
### Lints and fixes files
### 5. Arreglo de lints
```
npm run lint
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).
### Si se requiere más configuración
Ver [Configuration Reference](https://cli.vuejs.org/config/).
......@@ -32,7 +32,7 @@
<p>El servicio de Sello de Tiempo de BFA permite demostrar que el contenido de cualquier documento digital existió en un momento y que desde entonces, no ha cambiado. Al sellar un archivo, cualquiera podrá verificar el día y la hora en que su hash fue almacenado en Blockchain Federal Argentina. Tené en cuenta que el documento seleccionado nunca se sube a la red, garantizando su privacidad.</p>
<p class="font_small"><a href="https://bfa.ar/sello">Si tenés un archivo con Recibo Digital (.rd) verificalo aquí</a></p>
<div id="app"
apiurl="http://10.10.0.7:3000"
apiurl="https://tsa2.buenosaires.gob.ar"
lb_00=" El archivo "
lb_01=" fue enviado con éxito para ser sellado"
lb_02="Se ha producido un error al intentar sellar "
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment