diff --git a/README.md b/README.md index 1be01a9a09b35556959604f6d47148c32debd53b..ecacc7c109af48e6c9929dd19274a3bcec023448 100644 --- a/README.md +++ b/README.md @@ -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```** diff --git a/ui/README.md b/ui/README.md index df4e52b6176ee72843ae2777abfe10d7544b70b1..83feb3be6522453bf19ff033718960d4403f43d8 100644 --- a/ui/README.md +++ b/ui/README.md @@ -1,29 +1,76 @@ -# 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/). diff --git a/ui/public/index.html b/ui/public/index.html index cc8b5d9d7503b97a7f190ddc77a3cf8db2302258..d3daf0bd2d3bb26645b5aae6f2fba96937094467 100644 --- a/ui/public/index.html +++ b/ui/public/index.html @@ -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 "