bitfront-library

Angular CLI project with components and classes used by other Angular projects of the BIT foundation.

Usage no npm install needed!

<script type="module">
  import bitfrontLibrary from 'https://cdn.skypack.dev/bitfront-library';
</script>

README

bitfront-library

Angular CLI project with components and classes used by other Angular projects of the BIT foundation.

This project was generated with Angular CLI version 1.6.3.

installing the sample (via npm)

update package.json of the client project to include this library and install:

    ```
    npm install

installing the sample (manually. this updates package.json automatically.)

    ``` install current release
    npm install bitfront-library --save

    ``` install previous release
    npm install bitfront-library@1.0.0 --save

working with the repo

    git clone https://user@bitbucket.org/fundaciobitdesarrollo/bitfront-library.git
    cd bitfront-library
    npm install
    npm run dev

publishing a new version

Increase release number in the package.json

Recommended to manually remove the node_modules folder and run: npm install

    npm run dist
    cd dist
    npm publish

changelog

[11.0.1] - 2021-06-11

  • primera versión de la bitFrontLibrary en angular11

[11.0.0] - 2021-06-11

  • NO USAR. Incorrectamente publicada

[8.3.6] - 2021-05-10

  • Se añade el validador CIP

[8.3.5] - 2021-05-10 (NO USAR)

  • El validador nifniecip solo debe aceptar CIPs. Petición del IBSalut de fecha 7 de Mayo

[8.3.4] - 2021-04-28

  • Se incluye el validador nifniecip para el caso del ibsalut

[8.3.3] - 2021-04-08

  • Nuevos @Input en bit-date y bit-date-time: rangoAnyoMinimo y rangoAnyoMaximo

[8.3.2] - 2021-04-06

  • Cambio validator 'telefono' para que acepte teléfonos con prefijo (ejemplo: 0034650112233). Corrección mensaje de error.

[8.3.1] - 2021-04-06

  • Cambio validator 'telefono' para que acepte teléfonos con prefijo (ejemplo: 0034650112233)

[8.3.0] - 2020-07-10

  • Se implementa el selector getRouterStateUrl para recuperar el RouterStateUrl
  • Se implementan dos funciones para poder almacenar el RouterStateUrl en el localStorage

[8.2.2] - 2020-04-30

  • Mejoras en BitEditor

[8.2.1] - 2019-01-02

  • Arreglados pequeños errores en componentes developerlibrary

[8.2.0] - 2019-12-18

  • Se incluye el nuevo componente bit-ng-upload para subida de ficheros más cómoda para el usuario

Updated

[8.1.0] - 2019-11-30

Updated

  • Se adapta la librería a ngrx 8. Se añaden tres ejemplos de programación CRUD con stores:
    • v1. Contiene la forma antigua de como programar con ngrx
    • v2. Contiene la forma nueva de como programar con ngrx un poco menos verbosa, usando los create
    • v3. Contiene la forma de hacerlo via ngrx data. Mucho menos verbosa

[8.0.3] - 2019-09-25

Updated

  • Se arregla un problema con el bit-date que hacía que al escribir manualmente la fecha, el primer dígito escrito se borraba

[8.0.2] - 2019-09-25

Updated

  • Se suben las versiones de Angular

[8.0.1] - 2019-08-06

Updated

  • Se migra a Angular 8.2.0

[7.2.11] - 2019-10-24

Updated

  • Se arregla un problema con bit-switch que en el caso de que reciba un null, debemos retornar false al control asociado

[7.2.10] - 2019-10-07

Updated

  • Se arregla un problema con bit-datetime y bit-date que hacía que al borrar la fecha no se ponía a null el valor en el controlador

[7.2.9] - 2019-09-25

Updated

  • Se arregla un problema con bit-date que hacía que al escribir manualmente una fecha, el primer dígito se borraba

[7.2.8] - 2019-07-22

Updated

  • Se amplía el comportamiento de bit-dropdown* para que un valor de entrada number pueda transformarse automáticamente a string (y un string a number) y, de esta forma, funcionen sin tener que transformar manualmente el valor en el código que utiliza el componente.

[7.2.0] - 2019-07-11

Fixed

  • Se crea un método en DomainCachedService para poder setear un dominio recuperado desde fuera de este servicio. Típico caso de precarga de datos

[7.1.0] - 2019-06-26

Fixed

  • Esta versión incluye el módulo de Prime para poder usar los p-table.
  • Además modifica el tema que carga de Prime para cargar nova-light en vez del de boostrap que está deprecated. Si un proyecto importa esta versión deberá tener en cuenta que tal vez algunos estilos pueden no verse exactamente como antes y tendrá que hacer ajustes en el fichero style local. Para más referencias mirar el proyecto BITCITA

[7.0.15] - 2019-06-25

Fixed

  • Nueva versión corriendo errores de empaquetado de la 7.0.14.

[7.0.14] - 2019-06-25

Fixed

  • Modificado bit-readonly con tipos list y list-multiple para funcionar en modo OnPush con listas de dominio cargadas asíncronamente.

[7.0.13] - 2019-06-19

Updated

  • Se añaden los tipos list y list-multiple a bit-readonly aceptando dominios y listas de opciones.

[7.0.12] - 2019-06-19

Added

  • Se crea el componente bit-readonly para elementos de formulario que siempre sean de solo lectura y no se considere necesario crear un FormControl para ellos.

[7.0.11] - 2019-06-13

Added

  • Se crean dos métodos en base-filter.component.ts llamados fillFilterWithFormValues() y resetForm() que ya se encargan en el submit y en el reserFilter de recuperar los datos del formGroup hacia nuestro objeto o de resetear el formGroup

[7.0.10] - 2019-05-20

Added

  • Métodos choose y assign (similar a Object.assign() pero haciendo copia profunda) en base/shared/utils.ts

[7.0.8] - 2019-04-10

Added

  • Estilo ui-messages ul para mostrar errores en vertical

[7.0.7] - 2019-04-04

Added

  • Usar versión 7.0.4 de primeng

[7.0.6] - 2019-04-04

Added

  • Código de error invalidTime

[7.0.5] - 2019-02-01

Added

  • Se elimina el soporte al atributo "disabled" al no llevarse bien con forms reactivos. La manera de deshabilitar un campo del form es mediante el FormGroup. Ejemplo: nombreCampo: {value: "valor", disabled: true}

[7.0.4] - 2019-01-31

Added

  • Añadido soporte en CustomValidators para recorrer errores de formularios que utilicen FormArray.

[7.0.3] - 2019-01-31

Added

  • Incluye soporte del atributo "disabled" para bit-checkbox

[7.0.2] - 2019-01-29

Fixed

  • Incluye arreglo de algunos fallos al probar los nuevos componentes y mejoras de código

[7.0.1] - 2019-01-17

Fixed

  • Incluye los cambios de la 6.5.7 añadidos a posteriori a crear la 7.0.0

[7.0.1] - 2019-01-17

Fixed

  • Arreglado error del footer del store que cuando se modificaba el número de elementos a mostrar en la página se volvía a la página 1 pero no se actualizaba visualmente en el paginator
  • Arreglado errores de compilación de base.po por temas de falta de tipados
  • Se suben las versiones de jasmine y karma para ver si los tests e2e van mejor

[7.0.0] - 2019-01-16

Added

  • Migrada la BitFrontLibrary a Angular7

[6.6.5] - 2019-06-11

Added

  • Método postLoadItems a la versión no-store de base-sublist.component.ts para posibles acciones posteriores a la recarga.

[6.6.4] - 2019-05-20

Added

  • Método assign (similar a Object.assign() pero haciendo copia profunda) en base/shared/utils.ts

[6.6.3] - 2019-03-28

Fixed

  • Republicado 6.6.2

[6.6.2] - 2019-03-28

Added

  • Métodos reject, choose en base/shared/utils.ts

[6.6.1] - 2019-02-01

Added

  • Se añade la funcionalidad al custom-validators para validar FormArray

[6.6.0] - 2019-02-01

Added

  • Se añaden los nuevos componentes que funcionan con formularios reactivos

[6.5.7] - 2019-01-18

Fixed

  • Modificamos el atributo para indicar visualmente opciones de desplegable inactivas, ya que PrimeNG usa el atributo "disabled" para no permitir seleccionarlas.

[6.5.6] - 2019-01-09

Fixed

  • Arreglos visuales en campos de formulario de tipo selector múltiple.

[6.5.5] - 2018-12-20

Fixed

  • Se modifica el base-form.model para permitir que la función que crea el toolbar pueda pasarsele el objeto item de tipo T
  • Típico caso que queremos desde el componente pasar al modelo una función cuya toolbar se va a calcular en función del objeto que hay
  • en el store

[6.5.1] - 2018-12-14

Fixed

  • Por exigencias de BITCITA la validacion de nifs tambien valida nies

[6.5.0] - 2018-11-13

Fixed

  • Se añade la validación de campo conjunto NIFNIE

[6.4.2] - 2018-11-02

Fixed

  • Se modifica la pantalla que muestra la lista de excepciones para añadir el método HTTP que ha provocado el error
  • Se pasa el proyecto a npm borrando yarn.lock y generando package-lock.json

[6.4.1] - 2018-11-02

Fixed

  • Se modifica la clase Base para tests e2e con el nuevo selector para opciones de un dropdown gestionado por Prime. El texto de cada opción queda dentro de un y no dentro del
  • .

[6.4.0] - 2018-10-29

Added

  • Se crea un componente BaseComponente general del que extienden los tres componentes BaseList, BaseForm y BaseSublist del directorio store. Este componente implementa un destroy$ para que los observables que se creen en los componentes se desuscriban mediante takeUntil(destroy$)

[6.3.11] - 2018-10-25

Added

  • Prescindimos de cambiar la toolbar o el formType cuando se indica al store si el formulario es de solo lectura o no, con el flag ya basta y el resto es información redundante.

[6.3.10] - 2018-10-25

Added

  • Se modifican las acciones de store SetReadOnly para recibir mediante payload si el listado/formulario debe marcarse como solo lectura o no.

[6.3.9] - 2018-10-24

Added

  • Se modifica el modo de limpiar campos en los tests con Protractor para aquellos casos donde el método .clear() de Selenium ha dejado de funcionar.

[6.3.8] - 2018-10-24

Added

[6.3.7] - 2018-10-19

Added

  • Se soluciona bug introducido en la versión anterior.

[6.3.6] - 2018-10-19

Added

  • Se soluciona que los listados persistan en el estado que son de solo lectura.

[6.3.5] - 2018-10-09

Added

  • Modificada la forma de crear la toolbar para el caso de BaseForm

[6.3.4] - 2018-10-02

Added

  • Se ha añadido el fichero utils.ts en base para tener funciones de utilería

[6.3.3] - 2018-09-27

Added

  • Se ha cambiado el menú superior de Megamenu a Menubar y se han adaptado los estilos

[6.3.2] - 2018-09-25

Added

  • Se han solucionan pequeñas incidencias detectadas después de los cambios en los estilos de prime.
  • Se ha vuelto a la antigua versión del loading
  • Se ha adaptado la interface a los nuevos switches de prime 6.1.4

[6.3.1] - 2018-09-21

Added

  • se ha creado porque la 6.3.0 no se ha publicado correctamente. Los contenidos son los mismos, salvo que se ha modificado el package.json para actualizar los primeicons a la versión "1.0.0-beta.10"

[6.3.0] - 2018-09-21

Added

  • Se ha eliminado la hoja de estilos styles.css
  • Se ha añadido una nueva hoja de estilos styles-prime.css la cual solo afecta a los componentes de prime y es de reducidas dimensiones, para evistar en la medida de lo posible cambios gráficos al cambiar la versión de prime.
  • Se ha cambiado la forma en que se muestra el loading

[6.2.1] - 2018-09-14

Added

  • Componentes y modelos para trabajar con store

[6.1.12] - 2018-09-03

Added

  • UploadService poder indicar el usuario y contraseña como header (variable LOGIN_AUTHENTICATION)

[6.1.11] - 2018-09-03

Added

  • Base protractor: métodos getDialogButton, mouseCtrlClick

[6.1.10] - 2018-09-03

Added

  • Base protractor: métodos getVisibleButton, clickVisibleButton, expectVisibleButtonIsPresent, mouseClick

[6.1.9] - 2018-08-31

Added

  • Variable LOGIN_AUTHENTICATION en HttpUtilsService para poder indicar el usuario y contraseña como header.

[6.1.8] - 2018-08-08

Fixed

  • Soportamos en page.getInputValue y page.setInputValue que el elemento sea un p-switch.

[6.1.7] - 2018-08-08

Fixed

  • Soportamos en page.getInputValue que el elemento sea un <p> de solo lectura.

[6.1.6] - 2018-08-06

Fixed

  • Los desplegables de solo lectura conservan el ID configurado.
  • Nuevos métodos helpers para los tests end-to-end.

[6.1.5] - 2018-08-01

Fixed

  • Release que usa la version 6.0.0 de primeng (sin actualización de la subversión ^6.0.0")

[6.1.4] - 2018-07-26

Added

  • Variable RESULTADOS_PAGE accessible desde BaseTableViewComponent
  • Validator buildMinLongitudValidator

[6.1.3] - 2018-07-26

Added

  • Integradas correcciones de estilos procedentes de la versión 1.3.4 (angular 5)

[6.1.2] - 2018-07-26

Added

  • Integradas correcciones de estilos procedentes de la versión 1.3.3 (angular 5)

[6.1.1] - 2018-07-20

Added

  • Se han corregido estilos para los acordeones, calendarios y megamenu. Se ha incorporado la versión 1.3.2 (angular 5)

[6.1.0] - 2018-07-20

Added

  • Añadidas a la versión 6.x (Angular 6) las modificaciones de la versión 1.3.0 (Angular 5)

[6.0.5] - 2018-07-20

Fixed

  • correccion base.po.ts para protractor tras cambio en estilos que afectan a checkboxes

[6.0.4] - 2018-06-29

Changed

  • adaptada la librería a PrimeNG v6

[6.0.3] - 2018-05-31

Changed

  • refactorizado los imports de Prime para no traernos todo el bundle

[6.0.2] - 2018-05-30

Changed

  • refactorizado Observable.throw por throwError

[6.0.1] - 2018-05-30

Changed

  • nada cambia. Solo que publicamos en npm la raíz del proyecto en vez del directorio dist

[6.0.0] - 2018-05-30

Changed

  • Nueva versión funcionando para Angular 6

[1.3.4] - 2018-07-25

Fixed

  • Arreglado estilo para que los mensajes de error prevalezcan sobre la ventana modal.

[1.3.3] - 2018-07-25

Fixed

  • Corregidos estilos.

[1.3.2] - 2018-07-24

Added

  • Estilos para el selector de orden en los filtros.

[1.3.1] - 2018-07-24

Fixed

  • Arreglos en los estilos.
  • Movido el botón "Imprimir" de las botoneras a continuación de las acciones habituales de formulario.

[1.3.0] - 2018-07-20

Added

  • Fichero .gitignore para las fuentes de la librería.
  • Se añaden los atributos para modificar la ordenación en los objetos BaseFilter.
  • Se añade la acción Imprimir para todo componente heredado de BaseFormComponent.
  • Se añade un handler preSave() que pueden extender los formularios antes de enviar la acción a servidor.
  • Se mejora la ordenación en cliente de listados por campo de fecha.
  • Se añaden nuevas acciones a la consola SQL/HQL vía web.
  • Nuevo pipe para formatear monedas.
  • Nuevo pipe para eliminar saltos de líneas.
  • Nuevo calidador para cantidades enteras positivas incluyendo el cero.

Fixed

  • Se eliminan imports de TypeScript no utilizados.
  • Se comentan múltiples llamadas a console.log.
  • Se contempla poder tener identificadores de ficha negativos.
  • Se dejan de usar internamente los ficheros index.ts, si bien siguen existiendo para utilizarlos al incluir la librería como dependencia.
  • El validador de Tipo de documento + Documento de persona no funcionaba correctamente.
  • DomainCachedService ahora devuelve copias del dominio para que se puedan alterar posteriormente sin daños colaterales.

[1.2.5] - 2018-05-30

Fixed

  • Al realizar busqueda se indica que el filtro es para la pagina 1 (Modificado BaseFilterComponent).

[1.2.4] - 2018-05-30

Added

  • Clase Base protractor: metodo getDeleteButton()

Changed

  • Utilizar
     para formatear texto de resultado de query en HQLComponent

[1.2.3] - 2018-05-24

Changed

  • Estilos relacionados con el componente MultiSelect de PrimeNG y el div que muestra los elementos seleccionados usando labels.

[1.2.2] - 2018-05-18

Changed

  • Método getSelectHTMLOptionsByText clase Base de protractor

[1.2.1] - 2018-05-18

Changed

  • Clase Base protractor. Variable path usada en la subida de ficheros.

[1.2.0] - 2018-05-17

Changed

  • Nueva clase Base para tests de protractor

[1.1.20] - 2018-05-17

Changed

  • Se han incluido los css para los nuevos editores html que utiliza GEOTUR

[1.1.19] - 2018-05-16

Changed

  • Se han incluido los css y scss para los proyectos

[1.1.18] - 2018-05-10

Changed

  • Cambio select numero resultados en footer a 20,40,100,200,400 (20=BaseFilter.RESULTADOS_PAGE)

[1.1.17] - 2018-04-19

Added

  • Input showSeparateSelectedLabels en BitSelectMultipleComponent. Si es true, se muestran los items seleccionados de forma separada en lugar de mostrarlos dentro del campo select.

[1.1.16] - 2018-04-19

Fixed

  • BitInputComponent, BitSelectComponent, BitSelectMultiple: No propagar evento onChange al hacer focus.
  • BitEditorComponent: No propagar evento onChange al hacer focus. Solo se propaga el evento onChange si cambia el valor. El componente p-editor lanza evento onTextChange al inicializarse. Solo se propaga el cambio si el texto ha cambiado.

Changed

  • BitSelectMultiple cambio texto selectedItemsLabel
  • Update dependecia quill 1.3.5 a 1.3.6.

[1.1.15] - 2018-04-18

Added

  • Cambiado BaseForm para que si se ejecuta el evento unload también se detecten cambios en el formulario.

[1.1.14] - 2018-04-16

Added

  • @Input BitHeaderComponent: otherActionsDropDown. Determina si las "other actions" deben mostrarse en línea o como un desplegable.

[1.1.13] - 2018-04-13

Added

  • Variable columnasOrdenacion en BaseFilter para poder especificar ordenación de resultados.
  • Poder configurar que aparezca el botón de link en bit-editor. Nueva propiedad en ConfigurationEditor: link (true/false).

[1.1.12] - 2018-04-05

Fixed

  • Cambio validatores buildCantidadMinValidator, buildCantidadMaxValidator. Validador pasa si el valor no es numérico, pero no si es numérico y fuera del límite.

[1.1.11] - 2018-04-03

Fixed

  • Export clase Fichero.

[1.1.10] - 2018-03-15

Fixed

  • Clase Error: nuevo atributo "text". Para generacion de errores desde el back que no utilizan traducciones (textES, textCA). BitNotificationComponent muestra el valor text si textCA no está definido.

[1.1.9] - 2018-03-09

Fixed

  • BitFormUploadComponent: obtiene variable DOWNLOAD_URL del proyecto cliente

Changed

  • HttpUtilsService: Se inyecta variable CONTEXT_PATH

[1.1.8] - 2018-03-07

Changed

  • Clase HttpUtilsService: La variable API_URL se inyecta desde el proyecto cliente (no se utiliza variable static).

[1.1.7] - 2018-03-07

Changed

  • Componente BitLoading: Se controla con un contador los starts y stops que se invocan para casos de multiples componentes en paralelo llamado a startLoading y stopLoading

[1.1.6] - 2018-03-05

Changed

  • Componente bit-select: se añade el parámetro nombre que será el id final para el p-dropdown por debajo. El parámetro id de bit-select se elimina

[1.1.5] - 2018-03-05

Changed

  • Componente BitInputComponent: se añade id al

    cuando el bit-input es de solo lectura. Esto se hace para que desde los e2e podamos localizar el componente html

  • Componente GeneralUtilsService: Se actualiza el método addOpcionVacia

[1.1.4] - 2018-03-02

Changed

  • Componente BitEditorComponent: configuration: ConfigurationEditor. Poder configurar que controles se activan. Variable static globalConfiguration par configuracion que aplique a todos los bit-editor de un proyecto.

[1.1.3] - 2018-02-28

Fixed

  • Componente BitEditorComponent: se añade evento onTextChange para que se marque como touched el form control.

[1.1.2] - 2018-02-28

Added

  • Componente BitEditorComponent

[1.1.1] - 2018-02-26

Added

  • @Input maxSelectedLabels en BitSelectMultipleComponent

[1.1.0] - 2018-02-21

Added

  • DeveloperLibraryModule: HQLComponent, UploadComponent, ExceptionListComponent, LogListComponent

[1.0.6] - 2018-02-21

Added

  • DeveloperModule: Pruebas export componentes developer (HQLComponent, UploadComponent, etc). Cambio temporal.

[1.0.5] - 2018-02-16

Changed

  • Cambio estilo toolbar: btn-group -> btn-inline

[1.0.4] - 2018-02-07

Changed

  • BitNotificationFrontComponent se subscribe al observable de errores generales.

[1.0.3] - 2018-02-05

Changed

  • Cambios gestion errores HttpUtilsService

[1.0.2] - SIN RELEASE

[1.0.1] - 2018-02-01

Changed

  • Cambios gestion errores HttpUtilsService: JSON.parse del error en try-catch

[1.0.0] - 2018-01-29

Added

  • Commit inicial