ngx-redi-core 18.2.5 → 19.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Helper/index.ts +2 -0
- package/Helper/ng-package.json +6 -0
- package/Helper/{public-api.d.ts → public-api.ts} +10 -7
- package/Helper/src/helpers/bag-data-subject.service.spec.ts +16 -0
- package/Helper/src/helpers/bag-data-subject.service.ts +66 -0
- package/Helper/src/helpers/csv.service.spec.ts +16 -0
- package/Helper/src/helpers/csv.service.ts +71 -0
- package/Helper/src/helpers/data-subject.service.spec.ts +16 -0
- package/Helper/src/helpers/data-subject.service.ts +53 -0
- package/Helper/src/helpers/form-bind.service.spec.ts +16 -0
- package/Helper/src/helpers/form-bind.service.ts +30 -0
- package/Helper/src/helpers/location.service.spec.ts +16 -0
- package/Helper/src/helpers/location.service.ts +27 -0
- package/Helper/src/helpers/query-filters.service.spec.ts +16 -0
- package/Helper/src/helpers/query-filters.service.ts +85 -0
- package/Helper/src/models/interfaces/{data-subject.interface.d.ts → data-subject.interface.ts} +24 -21
- package/Helper/src/models/interfaces/{query-filters.d.ts → query-filters.ts} +34 -29
- package/RediBreadCrumb/index.ts +2 -0
- package/RediBreadCrumb/ng-package.json +6 -0
- package/RediBreadCrumb/{public-api.d.ts → public-api.ts} +2 -2
- package/RediBreadCrumb/src/components/redi-bread-crumb/redi-bread-crumb.component.html +4 -0
- package/RediBreadCrumb/src/components/redi-bread-crumb/redi-bread-crumb.component.scss +20 -0
- package/RediBreadCrumb/src/components/redi-bread-crumb/redi-bread-crumb.component.spec.ts +23 -0
- package/RediBreadCrumb/src/components/redi-bread-crumb/redi-bread-crumb.component.ts +43 -0
- package/RediContainer/index.ts +2 -0
- package/RediContainer/ng-package.json +6 -0
- package/RediContainer/{public-api.d.ts → public-api.ts} +6 -6
- package/RediContainer/src/components/redi-actions-container/redi-actions-container.component.html +1 -0
- package/RediContainer/src/components/redi-actions-container/redi-actions-container.component.scss +3 -0
- package/RediContainer/src/components/redi-actions-container/redi-actions-container.component.spec.ts +23 -0
- package/RediContainer/src/components/redi-actions-container/redi-actions-container.component.ts +11 -0
- package/RediContainer/src/components/redi-body-container/redi-body-container.component.html +1 -0
- package/RediContainer/src/components/redi-body-container/redi-body-container.component.scss +3 -0
- package/RediContainer/src/components/redi-body-container/redi-body-container.component.spec.ts +23 -0
- package/RediContainer/src/components/redi-body-container/redi-body-container.component.ts +11 -0
- package/RediContainer/src/components/redi-container/redi-container.component.html +10 -0
- package/RediContainer/src/components/redi-container/redi-container.component.scss +7 -0
- package/RediContainer/src/components/redi-container/redi-container.component.spec.ts +23 -0
- package/RediContainer/src/components/redi-container/redi-container.component.ts +14 -0
- package/RediContainer/src/components/redi-subtitle-container/redi-subtitle-container.component.html +1 -0
- package/RediContainer/src/components/redi-subtitle-container/redi-subtitle-container.component.scss +8 -0
- package/RediContainer/src/components/redi-subtitle-container/redi-subtitle-container.component.spec.ts +23 -0
- package/RediContainer/src/components/redi-subtitle-container/redi-subtitle-container.component.ts +11 -0
- package/RediContainer/src/components/redi-title-container/redi-title-container.component.html +6 -0
- package/RediContainer/src/components/redi-title-container/redi-title-container.component.scss +17 -0
- package/RediContainer/src/components/redi-title-container/redi-title-container.component.spec.ts +23 -0
- package/RediContainer/src/components/redi-title-container/redi-title-container.component.ts +11 -0
- package/RediDetail/index.ts +2 -0
- package/RediDetail/ng-package.json +6 -0
- package/RediDetail/{public-api.d.ts → public-api.ts} +4 -3
- package/RediDetail/src/components/redi-detail-object/redi-detail-object.component.html +8 -0
- package/RediDetail/src/components/redi-detail-object/redi-detail-object.component.scss +28 -0
- package/RediDetail/src/components/redi-detail-object/redi-detail-object.component.spec.ts +23 -0
- package/RediDetail/src/components/redi-detail-object/redi-detail-object.component.ts +21 -0
- package/RediDetail/src/models/interfaces/{detail-item.interface.d.ts → detail-item.interface.ts} +14 -13
- package/RediDialog/index.ts +2 -0
- package/RediDialog/ng-package.json +6 -0
- package/RediDialog/{public-api.d.ts → public-api.ts} +4 -3
- package/RediDialog/src/components/redi-dialog/redi-dialog.component.css +15 -0
- package/RediDialog/src/components/redi-dialog/redi-dialog.component.html +10 -0
- package/RediDialog/src/components/redi-dialog/redi-dialog.component.spec.ts +23 -0
- package/RediDialog/src/components/redi-dialog/redi-dialog.component.ts +59 -0
- package/RediDialog/src/models/{dialog-data.interface.d.ts → dialog-data.interface.ts} +7 -6
- package/RediDialog/src/services/redi-dialog.service.spec.ts +16 -0
- package/RediDialog/src/services/redi-dialog.service.ts +26 -0
- package/RediDragDrop/index.ts +2 -0
- package/RediDragDrop/ng-package.json +6 -0
- package/RediDragDrop/{public-api.d.ts → public-api.ts} +5 -4
- package/RediDragDrop/src/assets/cloud.svg +1 -0
- package/RediDragDrop/src/assets/documento.svg +1 -0
- package/RediDragDrop/src/assets/lista.svg +1 -0
- package/RediDragDrop/src/models/classes/proceso-archivo-csv.spec.ts +72 -0
- package/RediDragDrop/src/models/classes/proceso-archivo-csv.ts +133 -0
- package/RediDragDrop/src/models/directives/drag-drop.directive.spec.ts +85 -0
- package/RediDragDrop/src/models/directives/drag-drop.directive.ts +78 -0
- package/RediDragDrop/src/modules/redi-drag-drop/redi-drag-drop.component.html +52 -0
- package/RediDragDrop/src/modules/redi-drag-drop/redi-drag-drop.component.scss +125 -0
- package/RediDragDrop/src/modules/redi-drag-drop/redi-drag-drop.component.spec.ts +239 -0
- package/RediDragDrop/src/modules/redi-drag-drop/redi-drag-drop.component.ts +403 -0
- package/RediDragDrop/src/modules/redi-drag-drop.module.ts +25 -0
- package/RediForms/index.ts +2 -0
- package/RediForms/ng-package.json +6 -0
- package/RediForms/{public-api.d.ts → public-api.ts} +4 -4
- package/RediForms/src/directives/auto-focus.directive.spec.ts +8 -0
- package/RediForms/src/directives/auto-focus.directive.ts +19 -0
- package/RediForms/src/directives/place-holder.directive.spec.ts +8 -0
- package/RediForms/src/directives/place-holder.directive.ts +26 -0
- package/RediForms/src/helpers/form-bind.service.spec.ts +16 -0
- package/RediForms/src/helpers/form-bind.service.ts +30 -0
- package/RediForms/src/models/validators/input-validator.spec.ts +7 -0
- package/RediForms/src/models/validators/input-validator.ts +61 -0
- package/RediGrid/index.ts +2 -0
- package/RediGrid/ng-package.json +6 -0
- package/RediGrid/{public-api.d.ts → public-api.ts} +6 -4
- package/RediGrid/src/models/interfaces/{cell.d.ts → cell.ts} +44 -37
- package/RediGrid/src/models/interfaces/{data-grid.d.ts → data-grid.ts} +36 -30
- package/RediGrid/src/modules/redi-grid/redi-grid.component.css +123 -0
- package/RediGrid/src/modules/redi-grid/redi-grid.component.html +37 -0
- package/RediGrid/src/modules/redi-grid/redi-grid.component.spec.ts +69 -0
- package/RediGrid/src/modules/redi-grid/redi-grid.component.ts +189 -0
- package/RediGrid/src/modules/redi-grid.module.ts +22 -0
- package/RediMenu/index.ts +2 -0
- package/RediMenu/ng-package.json +6 -0
- package/RediMenu/{public-api.d.ts → public-api.ts} +3 -3
- package/RediMenu/src/components/redi-leading-item-menu/redi-leading-item-menu.component.html +1 -0
- package/RediMenu/src/components/redi-leading-item-menu/redi-leading-item-menu.component.scss +6 -0
- package/RediMenu/src/components/redi-leading-item-menu/redi-leading-item-menu.component.spec.ts +23 -0
- package/RediMenu/src/components/redi-leading-item-menu/redi-leading-item-menu.component.ts +11 -0
- package/RediMenu/src/components/redi-menu/redi-menu.component.html +10 -0
- package/RediMenu/src/components/redi-menu/redi-menu.component.scss +24 -0
- package/RediMenu/src/components/redi-menu/redi-menu.component.spec.ts +23 -0
- package/RediMenu/src/components/redi-menu/redi-menu.component.ts +54 -0
- package/RediSemaphore/index.ts +2 -0
- package/RediSemaphore/ng-package.json +6 -0
- package/RediSemaphore/{public-api.d.ts → public-api.ts} +2 -2
- package/RediSemaphore/src/components/redi-semaphore/redi-semaphore.component.html +1 -0
- package/RediSemaphore/src/components/redi-semaphore/redi-semaphore.component.scss +10 -0
- package/RediSemaphore/src/components/redi-semaphore/redi-semaphore.component.spec.ts +23 -0
- package/RediSemaphore/src/components/redi-semaphore/redi-semaphore.component.ts +13 -0
- package/RediTable/index.ts +2 -0
- package/RediTable/ng-package.json +6 -0
- package/RediTable/{public-api.d.ts → public-api.ts} +8 -7
- package/RediTable/src/components/filter-data/filter-data.component.css +26 -0
- package/RediTable/src/components/filter-data/filter-data.component.html +17 -0
- package/RediTable/src/components/filter-data/filter-data.component.spec.ts +23 -0
- package/RediTable/src/components/filter-data/filter-data.component.ts +96 -0
- package/RediTable/src/components/redi-table/redi-table.component.css +194 -0
- package/RediTable/src/components/redi-table/redi-table.component.html +133 -0
- package/RediTable/src/components/redi-table/redi-table.component.spec.ts +23 -0
- package/RediTable/src/components/redi-table/redi-table.component.ts +451 -0
- package/RediTable/src/components/redi-table-col/redi-table-col.component.css +0 -0
- package/RediTable/src/components/redi-table-col/redi-table-col.component.html +1 -0
- package/RediTable/src/components/redi-table-col/redi-table-col.component.spec.ts +23 -0
- package/RediTable/src/components/redi-table-col/redi-table-col.component.ts +41 -0
- package/RediTable/src/models/interfaces/{column-definition.d.ts → column-definition.ts} +26 -19
- package/RediTable/src/models/interfaces/{data-table.d.ts → data-table.ts} +32 -26
- package/RediTable/src/models/interfaces/filter-item.ts +5 -0
- package/RediTable/src/models/interfaces/{row-action.d.ts → row-action.ts} +18 -12
- package/RediTable/src/models/types/event-table.type.spec.ts +7 -0
- package/RediTable/src/models/types/event-table.type.ts +3 -0
- package/RediTransposeList/index.ts +2 -0
- package/RediTransposeList/ng-package.json +6 -0
- package/RediTransposeList/{public-api.d.ts → public-api.ts} +2 -2
- package/RediTransposeList/src/components/redi-transpose-list/redi-transpose-list.component.html +37 -0
- package/RediTransposeList/src/components/redi-transpose-list/redi-transpose-list.component.scss +92 -0
- package/RediTransposeList/src/components/redi-transpose-list/redi-transpose-list.component.spec.ts +68 -0
- package/RediTransposeList/src/components/redi-transpose-list/redi-transpose-list.component.ts +109 -0
- package/Security/index.ts +2 -0
- package/Security/ng-package.json +6 -0
- package/Security/{public-api.d.ts → public-api.ts} +6 -6
- package/Security/src/modules/security-web-intercept/interceptors/redi-secure.interceptor.spec.ts +225 -0
- package/Security/src/modules/security-web-intercept/interceptors/redi-secure.interceptor.ts +96 -0
- package/Security/src/modules/security-web-intercept/models/secure-factory.model.spec.ts +31 -0
- package/Security/src/modules/security-web-intercept/models/secure-factory.model.ts +28 -0
- package/Security/src/modules/security-web-intercept/models/tipo-operacion.enum.ts +19 -0
- package/Security/src/modules/security-web-intercept/services/cifrado-basico.service.spec.ts +16 -0
- package/Security/src/modules/security-web-intercept/services/cifrado-basico.service.ts +53 -0
- package/Security/src/modules/security-web-intercept/services/cifrado.service.spec.ts +25 -0
- package/Security/src/modules/security-web-intercept/services/cifrado.service.ts +29 -0
- package/Security/src/modules/security-web-intercept/services/reflection.service.spec.ts +16 -0
- package/Security/src/modules/security-web-intercept/services/reflection.service.ts +122 -0
- package/Security/src/modules/security.module.ts +15 -0
- package/ng-package.json +7 -0
- package/package.json +14 -105
- package/public-api.ts +8 -0
- package/tsconfig.lib.json +14 -0
- package/tsconfig.lib.prod.json +10 -0
- package/tsconfig.spec.json +14 -0
- package/Helper/index.d.ts +0 -5
- package/Helper/src/helpers/bag-data-subject.service.d.ts +0 -43
- package/Helper/src/helpers/csv.service.d.ts +0 -33
- package/Helper/src/helpers/data-subject.service.d.ts +0 -36
- package/Helper/src/helpers/form-bind.service.d.ts +0 -8
- package/Helper/src/helpers/location.service.d.ts +0 -10
- package/Helper/src/helpers/query-filters.service.d.ts +0 -32
- package/RediBreadCrumb/index.d.ts +0 -5
- package/RediBreadCrumb/src/components/redi-bread-crumb/redi-bread-crumb.component.d.ts +0 -11
- package/RediContainer/index.d.ts +0 -5
- package/RediContainer/src/components/redi-actions-container/redi-actions-container.component.d.ts +0 -5
- package/RediContainer/src/components/redi-body-container/redi-body-container.component.d.ts +0 -5
- package/RediContainer/src/components/redi-container/redi-container.component.d.ts +0 -5
- package/RediContainer/src/components/redi-subtitle-container/redi-subtitle-container.component.d.ts +0 -5
- package/RediContainer/src/components/redi-title-container/redi-title-container.component.d.ts +0 -5
- package/RediDetail/index.d.ts +0 -5
- package/RediDetail/src/components/redi-detail-object/redi-detail-object.component.d.ts +0 -8
- package/RediDialog/index.d.ts +0 -5
- package/RediDialog/src/components/redi-dialog/redi-dialog.component.d.ts +0 -23
- package/RediDialog/src/services/redi-dialog.service.d.ts +0 -12
- package/RediDragDrop/index.d.ts +0 -5
- package/RediDragDrop/src/models/classes/proceso-archivo-csv.d.ts +0 -29
- package/RediDragDrop/src/models/directives/drag-drop.directive.d.ts +0 -43
- package/RediDragDrop/src/modules/redi-drag-drop/redi-drag-drop.component.d.ts +0 -188
- package/RediDragDrop/src/modules/redi-drag-drop.module.d.ts +0 -13
- package/RediForms/index.d.ts +0 -5
- package/RediForms/src/directives/auto-focus.directive.d.ts +0 -9
- package/RediForms/src/directives/place-holder.directive.d.ts +0 -9
- package/RediForms/src/helpers/form-bind.service.d.ts +0 -8
- package/RediForms/src/models/validators/input-validator.d.ts +0 -13
- package/RediGrid/index.d.ts +0 -5
- package/RediGrid/src/modules/redi-grid/redi-grid.component.d.ts +0 -94
- package/RediGrid/src/modules/redi-grid.module.d.ts +0 -14
- package/RediMenu/index.d.ts +0 -5
- package/RediMenu/src/components/redi-leading-item-menu/redi-leading-item-menu.component.d.ts +0 -5
- package/RediMenu/src/components/redi-menu/redi-menu.component.d.ts +0 -15
- package/RediSemaphore/index.d.ts +0 -5
- package/RediSemaphore/src/components/redi-semaphore/redi-semaphore.component.d.ts +0 -5
- package/RediTable/index.d.ts +0 -5
- package/RediTable/src/components/filter-data/filter-data.component.d.ts +0 -23
- package/RediTable/src/components/redi-table/redi-table.component.d.ts +0 -144
- package/RediTable/src/components/redi-table-col/redi-table-col.component.d.ts +0 -15
- package/RediTable/src/models/interfaces/filter-item.d.ts +0 -5
- package/RediTable/src/models/types/event-table.type.d.ts +0 -5
- package/RediTransposeList/index.d.ts +0 -5
- package/RediTransposeList/src/components/redi-transpose-list/redi-transpose-list.component.d.ts +0 -22
- package/Security/index.d.ts +0 -5
- package/Security/src/modules/security-web-intercept/interceptors/redi-secure.interceptor.d.ts +0 -39
- package/Security/src/modules/security-web-intercept/models/secure-factory.model.d.ts +0 -10
- package/Security/src/modules/security-web-intercept/services/cifrado-basico.service.d.ts +0 -14
- package/Security/src/modules/security-web-intercept/services/cifrado.service.d.ts +0 -21
- package/Security/src/modules/security-web-intercept/services/reflection.service.d.ts +0 -58
- package/Security/src/modules/security.module.d.ts +0 -11
- package/esm2022/Helper/ngx-redi-core-Helper.mjs +0 -5
- package/esm2022/Helper/public-api.mjs +0 -8
- package/esm2022/Helper/src/helpers/bag-data-subject.service.mjs +0 -61
- package/esm2022/Helper/src/helpers/csv.service.mjs +0 -69
- package/esm2022/Helper/src/helpers/data-subject.service.mjs +0 -45
- package/esm2022/Helper/src/helpers/form-bind.service.mjs +0 -32
- package/esm2022/Helper/src/helpers/location.service.mjs +0 -29
- package/esm2022/Helper/src/helpers/query-filters.service.mjs +0 -90
- package/esm2022/Helper/src/models/interfaces/data-subject.interface.mjs +0 -2
- package/esm2022/Helper/src/models/interfaces/query-filters.mjs +0 -2
- package/esm2022/RediBreadCrumb/ngx-redi-core-RediBreadCrumb.mjs +0 -5
- package/esm2022/RediBreadCrumb/public-api.mjs +0 -3
- package/esm2022/RediBreadCrumb/src/components/redi-bread-crumb/redi-bread-crumb.component.mjs +0 -39
- package/esm2022/RediContainer/ngx-redi-core-RediContainer.mjs +0 -5
- package/esm2022/RediContainer/public-api.mjs +0 -7
- package/esm2022/RediContainer/src/components/redi-actions-container/redi-actions-container.component.mjs +0 -11
- package/esm2022/RediContainer/src/components/redi-body-container/redi-body-container.component.mjs +0 -11
- package/esm2022/RediContainer/src/components/redi-container/redi-container.component.mjs +0 -15
- package/esm2022/RediContainer/src/components/redi-subtitle-container/redi-subtitle-container.component.mjs +0 -11
- package/esm2022/RediContainer/src/components/redi-title-container/redi-title-container.component.mjs +0 -11
- package/esm2022/RediDetail/ngx-redi-core-RediDetail.mjs +0 -5
- package/esm2022/RediDetail/public-api.mjs +0 -4
- package/esm2022/RediDetail/src/components/redi-detail-object/redi-detail-object.component.mjs +0 -22
- package/esm2022/RediDetail/src/models/interfaces/detail-item.interface.mjs +0 -2
- package/esm2022/RediDialog/ngx-redi-core-RediDialog.mjs +0 -5
- package/esm2022/RediDialog/public-api.mjs +0 -5
- package/esm2022/RediDialog/src/components/redi-dialog/redi-dialog.component.mjs +0 -58
- package/esm2022/RediDialog/src/models/dialog-data.interface.mjs +0 -2
- package/esm2022/RediDialog/src/services/redi-dialog.service.mjs +0 -27
- package/esm2022/RediDragDrop/ngx-redi-core-RediDragDrop.mjs +0 -5
- package/esm2022/RediDragDrop/public-api.mjs +0 -5
- package/esm2022/RediDragDrop/src/models/classes/proceso-archivo-csv.mjs +0 -132
- package/esm2022/RediDragDrop/src/models/directives/drag-drop.directive.mjs +0 -95
- package/esm2022/RediDragDrop/src/modules/redi-drag-drop/redi-drag-drop.component.mjs +0 -369
- package/esm2022/RediDragDrop/src/modules/redi-drag-drop.module.mjs +0 -34
- package/esm2022/RediForms/ngx-redi-core-RediForms.mjs +0 -5
- package/esm2022/RediForms/public-api.mjs +0 -5
- package/esm2022/RediForms/src/directives/auto-focus.directive.mjs +0 -24
- package/esm2022/RediForms/src/directives/place-holder.directive.mjs +0 -31
- package/esm2022/RediForms/src/helpers/form-bind.service.mjs +0 -32
- package/esm2022/RediForms/src/models/validators/input-validator.mjs +0 -51
- package/esm2022/RediGrid/ngx-redi-core-RediGrid.mjs +0 -5
- package/esm2022/RediGrid/public-api.mjs +0 -5
- package/esm2022/RediGrid/src/models/interfaces/cell.mjs +0 -2
- package/esm2022/RediGrid/src/models/interfaces/data-grid.mjs +0 -2
- package/esm2022/RediGrid/src/modules/redi-grid/redi-grid.component.mjs +0 -163
- package/esm2022/RediGrid/src/modules/redi-grid.module.mjs +0 -34
- package/esm2022/RediMenu/ngx-redi-core-RediMenu.mjs +0 -5
- package/esm2022/RediMenu/public-api.mjs +0 -4
- package/esm2022/RediMenu/src/components/redi-leading-item-menu/redi-leading-item-menu.component.mjs +0 -11
- package/esm2022/RediMenu/src/components/redi-menu/redi-menu.component.mjs +0 -49
- package/esm2022/RediSemaphore/ngx-redi-core-RediSemaphore.mjs +0 -5
- package/esm2022/RediSemaphore/public-api.mjs +0 -3
- package/esm2022/RediSemaphore/src/components/redi-semaphore/redi-semaphore.component.mjs +0 -14
- package/esm2022/RediTable/ngx-redi-core-RediTable.mjs +0 -5
- package/esm2022/RediTable/public-api.mjs +0 -8
- package/esm2022/RediTable/src/components/filter-data/filter-data.component.mjs +0 -84
- package/esm2022/RediTable/src/components/redi-table/redi-table.component.mjs +0 -411
- package/esm2022/RediTable/src/components/redi-table-col/redi-table-col.component.mjs +0 -36
- package/esm2022/RediTable/src/models/interfaces/column-definition.mjs +0 -2
- package/esm2022/RediTable/src/models/interfaces/data-table.mjs +0 -2
- package/esm2022/RediTable/src/models/interfaces/filter-item.mjs +0 -2
- package/esm2022/RediTable/src/models/interfaces/row-action.mjs +0 -2
- package/esm2022/RediTable/src/models/types/event-table.type.mjs +0 -2
- package/esm2022/RediTransposeList/ngx-redi-core-RediTransposeList.mjs +0 -5
- package/esm2022/RediTransposeList/public-api.mjs +0 -3
- package/esm2022/RediTransposeList/src/components/redi-transpose-list/redi-transpose-list.component.mjs +0 -82
- package/esm2022/Security/ngx-redi-core-Security.mjs +0 -5
- package/esm2022/Security/public-api.mjs +0 -7
- package/esm2022/Security/src/modules/security-web-intercept/interceptors/redi-secure.interceptor.mjs +0 -88
- package/esm2022/Security/src/modules/security-web-intercept/models/secure-factory.model.mjs +0 -27
- package/esm2022/Security/src/modules/security-web-intercept/services/cifrado-basico.service.mjs +0 -51
- package/esm2022/Security/src/modules/security-web-intercept/services/cifrado.service.mjs +0 -33
- package/esm2022/Security/src/modules/security-web-intercept/services/reflection.service.mjs +0 -122
- package/esm2022/Security/src/modules/security.module.mjs +0 -23
- package/esm2022/ngx-redi-core.mjs +0 -5
- package/esm2022/public-api.mjs +0 -8
- package/fesm2022/ngx-redi-core-Helper.mjs +0 -320
- package/fesm2022/ngx-redi-core-Helper.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediBreadCrumb.mjs +0 -48
- package/fesm2022/ngx-redi-core-RediBreadCrumb.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediContainer.mjs +0 -60
- package/fesm2022/ngx-redi-core-RediContainer.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediDetail.mjs +0 -31
- package/fesm2022/ngx-redi-core-RediDetail.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediDialog.mjs +0 -90
- package/fesm2022/ngx-redi-core-RediDialog.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediDragDrop.mjs +0 -628
- package/fesm2022/ngx-redi-core-RediDragDrop.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediForms.mjs +0 -141
- package/fesm2022/ngx-redi-core-RediForms.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediGrid.mjs +0 -200
- package/fesm2022/ngx-redi-core-RediGrid.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediMenu.mjs +0 -67
- package/fesm2022/ngx-redi-core-RediMenu.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediSemaphore.mjs +0 -23
- package/fesm2022/ngx-redi-core-RediSemaphore.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediTable.mjs +0 -533
- package/fesm2022/ngx-redi-core-RediTable.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-RediTransposeList.mjs +0 -91
- package/fesm2022/ngx-redi-core-RediTransposeList.mjs.map +0 -1
- package/fesm2022/ngx-redi-core-Security.mjs +0 -339
- package/fesm2022/ngx-redi-core-Security.mjs.map +0 -1
- package/fesm2022/ngx-redi-core.mjs +0 -14
- package/fesm2022/ngx-redi-core.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/public-api.d.ts +0 -4
package/Helper/index.ts
ADDED
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
export * from './src/helpers/csv.service';
|
|
2
|
-
export * from './src/helpers/data-subject.service';
|
|
3
|
-
export * from './src/helpers/bag-data-subject.service';
|
|
4
|
-
|
|
5
|
-
export * from './src/
|
|
6
|
-
export * from './src/
|
|
7
|
-
|
|
1
|
+
export * from './src/helpers/csv.service';
|
|
2
|
+
export * from './src/helpers/data-subject.service';
|
|
3
|
+
export * from './src/helpers/bag-data-subject.service';
|
|
4
|
+
|
|
5
|
+
export * from './src/helpers/query-filters.service';
|
|
6
|
+
export * from './src/models/interfaces/query-filters';
|
|
7
|
+
|
|
8
|
+
export * from './src/helpers/form-bind.service';
|
|
9
|
+
|
|
10
|
+
export * from './src/helpers/location.service';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { BagDataSubjectService } from './bag-data-subject.service';
|
|
4
|
+
|
|
5
|
+
describe('BagDataSubjectService', () => {
|
|
6
|
+
let service: BagDataSubjectService;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
TestBed.configureTestingModule({});
|
|
10
|
+
service = TestBed.inject(BagDataSubjectService);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should be created', () => {
|
|
14
|
+
expect(service).toBeTruthy();
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { DataSubjectService } from './data-subject.service';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Servicio para compartir datos entre micro-fronts
|
|
7
|
+
* @decorators `@Injectable`
|
|
8
|
+
*/
|
|
9
|
+
@Injectable({
|
|
10
|
+
providedIn: 'root'
|
|
11
|
+
})
|
|
12
|
+
export class BagDataSubjectService {
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Crea un nuevo servicio de datos compartido
|
|
16
|
+
*/
|
|
17
|
+
constructor() {
|
|
18
|
+
this.subjects = {};
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Obtiene el subjet dada un identificador
|
|
23
|
+
* @param subject Identificador
|
|
24
|
+
* @returns Servicio de datos
|
|
25
|
+
*/
|
|
26
|
+
public getSubject<T>(subject: string): DataSubjectService<T> {
|
|
27
|
+
let result = Reflect.get(this.subjects, subject);
|
|
28
|
+
if (!result) {
|
|
29
|
+
result = new DataSubjectService<T>();
|
|
30
|
+
Reflect.defineProperty(this.subjects, subject, { value: result });
|
|
31
|
+
}
|
|
32
|
+
return result as DataSubjectService<T>;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Asigna los datos a un servicio mediante su identificador
|
|
37
|
+
* @param subject Identificador del servicio
|
|
38
|
+
* @param data Datos a emitir
|
|
39
|
+
*/
|
|
40
|
+
public setData<T>(subject: string, data: T): void {
|
|
41
|
+
return this.getSubject<T>(subject).broadcast(data);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Obtiene el ultimo dato del servicio especificando su identificador
|
|
46
|
+
* @param subject Identificador del servicio
|
|
47
|
+
* @returns Dato
|
|
48
|
+
*/
|
|
49
|
+
public getData<T>(subject: string): T {
|
|
50
|
+
return this.getSubject(subject).data as T;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Obtiene el observable especificando el servicio
|
|
55
|
+
* @param subject Identificador del servicio
|
|
56
|
+
* @returns Observable<T>
|
|
57
|
+
*/
|
|
58
|
+
public getObservable<T>(subject: string): Observable<T> {
|
|
59
|
+
return this.getSubject(subject).observer as Observable<T>;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Objeto contenedor de los subjects
|
|
64
|
+
*/
|
|
65
|
+
private subjects: object;
|
|
66
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { CsvService } from './csv.service';
|
|
4
|
+
|
|
5
|
+
describe('CsvService', () => {
|
|
6
|
+
let service: CsvService;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
TestBed.configureTestingModule({});
|
|
10
|
+
service = TestBed.inject(CsvService);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should be created', () => {
|
|
14
|
+
expect(service).toBeTruthy();
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
/**
|
|
3
|
+
* Servicio que provee métodos para trabajar con datos CSV
|
|
4
|
+
*/
|
|
5
|
+
@Injectable({
|
|
6
|
+
providedIn: 'root'
|
|
7
|
+
})
|
|
8
|
+
export class CsvService {
|
|
9
|
+
/**
|
|
10
|
+
* Genera el texto CSV a partir de un archivo
|
|
11
|
+
* @param data- Datos a construir
|
|
12
|
+
* @returns CSV texto
|
|
13
|
+
*/
|
|
14
|
+
public generarCsv<T extends {}>(data: Array<T>): string {
|
|
15
|
+
const datos = data.map(d => {
|
|
16
|
+
return Object.values(d)
|
|
17
|
+
.filter(p => this.tipoSerializable(p))
|
|
18
|
+
.map(v => (v as string).includes(',') ? `"${v}"` : v);
|
|
19
|
+
});
|
|
20
|
+
return `${data?.slice(0, 1)?.map((o) => {
|
|
21
|
+
return `${Object.keys(o).join(',')}\n`
|
|
22
|
+
})}${datos.map(d => {
|
|
23
|
+
return Object.values(d).join(',');
|
|
24
|
+
}).join('\n')}`;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Método que indica si la propiedad es serializable
|
|
29
|
+
* @param propiedad - Propiedad a validar
|
|
30
|
+
* @returns True si es una propiedad serializable
|
|
31
|
+
*/
|
|
32
|
+
private tipoSerializable(propiedad: unknown): boolean {
|
|
33
|
+
return typeof (propiedad) !== 'object' &&
|
|
34
|
+
typeof (propiedad) !== 'function';
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Descarga el CSV a partir de los datos establecidos
|
|
39
|
+
* @param archivo - Nombre del archivo a descargar
|
|
40
|
+
* @param data - Arreglo de datos a descargar
|
|
41
|
+
*/
|
|
42
|
+
public descargarCsv<T extends {}>(archivo: string, data: Array<T>): void {
|
|
43
|
+
const blob = new Blob([BOM_CSV, this.generarCsv(data)], { type: TYPE_CSV });
|
|
44
|
+
const link = this.generarLink(archivo, blob);
|
|
45
|
+
document.body.appendChild(link);
|
|
46
|
+
link.click();
|
|
47
|
+
document.body.removeChild(link);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Genera el link para el blob y archivo establecidos
|
|
52
|
+
* @param archivo - Nombre del archivo a descargar
|
|
53
|
+
* @param blob - Contenido del blob
|
|
54
|
+
* @returns link
|
|
55
|
+
*/
|
|
56
|
+
private generarLink(archivo: string, blob: Blob): HTMLAnchorElement {
|
|
57
|
+
const link = document.createElement('a') as HTMLAnchorElement;
|
|
58
|
+
if (link.download !== undefined) {
|
|
59
|
+
link.setAttribute('href', URL.createObjectURL(blob));
|
|
60
|
+
link.setAttribute('download', archivo);
|
|
61
|
+
link.style.visibility = 'hidden';
|
|
62
|
+
}
|
|
63
|
+
return link;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/** Tipo MIME CSV + Encode */
|
|
69
|
+
const TYPE_CSV = 'text/csv;charset=utf-8;';
|
|
70
|
+
/** BOM CSV */
|
|
71
|
+
const BOM_CSV = new Uint8Array([0xEF, 0xBB, 0xBF]);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { DataSubjectService } from './data-subject.service';
|
|
4
|
+
|
|
5
|
+
describe('DataSubjectService', () => {
|
|
6
|
+
let service: DataSubjectService<unknown>;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
TestBed.configureTestingModule({});
|
|
10
|
+
service = TestBed.inject(DataSubjectService);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should be created', () => {
|
|
14
|
+
expect(service).toBeTruthy();
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Observable, Subject } from 'rxjs';
|
|
3
|
+
import { DataSubject } from '../models/interfaces/data-subject.interface';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Servicio para compartir datos
|
|
7
|
+
* @decorators `@Injectable`
|
|
8
|
+
*/
|
|
9
|
+
@Injectable({
|
|
10
|
+
providedIn: 'root'
|
|
11
|
+
})
|
|
12
|
+
export class DataSubjectService<T> implements DataSubject<T> {
|
|
13
|
+
/**
|
|
14
|
+
* Crea un nuevo servicio de Datos compartidos
|
|
15
|
+
*/
|
|
16
|
+
constructor() {
|
|
17
|
+
this._data = undefined as T;
|
|
18
|
+
this.subject = new Subject();
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Contiene el subject que emite datos
|
|
23
|
+
*/
|
|
24
|
+
private readonly subject: Subject<T>;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Datos internos
|
|
28
|
+
*/
|
|
29
|
+
private _data: T;
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Emite los datos a los subscriptores
|
|
33
|
+
* @param data Datos a emitir
|
|
34
|
+
*/
|
|
35
|
+
public broadcast(data: T): void {
|
|
36
|
+
this._data = data;
|
|
37
|
+
this.subject.next(data);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Contiene el ultimo dato emitido
|
|
42
|
+
*/
|
|
43
|
+
public get data(): T {
|
|
44
|
+
return this._data;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Observable que notifica los cambios
|
|
49
|
+
*/
|
|
50
|
+
public get observer(): Observable<T> {
|
|
51
|
+
return this.subject.asObservable();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { FormBindService } from './form-bind.service';
|
|
4
|
+
|
|
5
|
+
describe('FormBindService', () => {
|
|
6
|
+
let service: FormBindService;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
TestBed.configureTestingModule({});
|
|
10
|
+
service = TestBed.inject(FormBindService);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should be created', () => {
|
|
14
|
+
expect(service).toBeTruthy();
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { FormGroup } from '@angular/forms';
|
|
3
|
+
|
|
4
|
+
@Injectable({
|
|
5
|
+
providedIn: 'root'
|
|
6
|
+
})
|
|
7
|
+
export class FormBindService {
|
|
8
|
+
|
|
9
|
+
constructor() { }
|
|
10
|
+
|
|
11
|
+
public setValues<T extends {}>(entity: T, formGroup: unknown) {
|
|
12
|
+
if (!entity || !formGroup) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
let internalForm = formGroup as FormGroup;
|
|
16
|
+
Object.keys(entity).map(k => internalForm.get(k)?.setValue(Reflect.get(entity, k)));
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
public updateValues<T extends {}>(entity: T, formGroup: unknown) {
|
|
20
|
+
if (!entity || !formGroup) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
let internalForm = formGroup as FormGroup;
|
|
24
|
+
Object.keys(entity).map(k => {
|
|
25
|
+
if (internalForm.contains(k)) {
|
|
26
|
+
Reflect.set(entity, k, internalForm.get(k)?.value);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { LocationService } from './location.service';
|
|
4
|
+
|
|
5
|
+
describe('LocationService', () => {
|
|
6
|
+
let service: LocationService;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
TestBed.configureTestingModule({});
|
|
10
|
+
service = TestBed.inject(LocationService);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should be created', () => {
|
|
14
|
+
expect(service).toBeTruthy();
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { Route, Router } from '@angular/router';
|
|
3
|
+
|
|
4
|
+
@Injectable({
|
|
5
|
+
providedIn: 'root'
|
|
6
|
+
})
|
|
7
|
+
export class LocationService {
|
|
8
|
+
|
|
9
|
+
private readonly router = inject(Router);
|
|
10
|
+
|
|
11
|
+
constructor() { }
|
|
12
|
+
|
|
13
|
+
public navigate(path: string): void {
|
|
14
|
+
this.router.navigate(this.getRelative(path));
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
public getRelative(relativePath?: string): Array<string> {
|
|
18
|
+
return this.getCurrentPath(relativePath);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
private getCurrentPath(relative: string | undefined): Array<string> {
|
|
22
|
+
const url = (new URL(relative ?? '', window.location.href)).href;
|
|
23
|
+
const currentLocation = Reflect.get(this.router, 'location')?._basePath ?? '';
|
|
24
|
+
return url.substring(url.lastIndexOf(currentLocation) + currentLocation.length)
|
|
25
|
+
.split('/');
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { QueryFiltersService } from './query-filters.service';
|
|
4
|
+
|
|
5
|
+
describe('QueryFiltersService', () => {
|
|
6
|
+
let service: QueryFiltersService;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
TestBed.configureTestingModule({});
|
|
10
|
+
service = TestBed.inject(QueryFiltersService);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should be created', () => {
|
|
14
|
+
expect(service).toBeTruthy();
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute, Params } from '@angular/router';
|
|
3
|
+
import { QueryFilters } from '../models/interfaces/query-filters';
|
|
4
|
+
import { map, Observable } from 'rxjs';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Servicio de filtro de datos para query params
|
|
8
|
+
* @decorators `@Injectable`
|
|
9
|
+
*/
|
|
10
|
+
@Injectable({
|
|
11
|
+
providedIn: 'root'
|
|
12
|
+
})
|
|
13
|
+
export class QueryFiltersService {
|
|
14
|
+
/**
|
|
15
|
+
* Crea una nueva instancia de QueryFilter
|
|
16
|
+
* @param {ActivatedRoute} rutaActiva - Servicio de ruta
|
|
17
|
+
*/
|
|
18
|
+
constructor(@Inject(ActivatedRoute) private readonly rutaActiva: ActivatedRoute) {
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Obtiene los filtros de la ruta
|
|
23
|
+
* @returns Observable<QueryFilters>
|
|
24
|
+
*/
|
|
25
|
+
public getQueryFilters(): Observable<QueryFilters> {
|
|
26
|
+
return this.rutaActiva.queryParams.pipe(map(queryParam => {
|
|
27
|
+
return {
|
|
28
|
+
seleccionarTodo: queryParam['seleccionar'] === '',
|
|
29
|
+
seleccionados: this.getData(queryParam, 'seleccionar'),
|
|
30
|
+
deseleccionados: this.getData(queryParam, 'deseleccionar'),
|
|
31
|
+
eliminados: this.getData(queryParam, 'eliminar'),
|
|
32
|
+
filtrados: this.getData(queryParam, 'filtrar'),
|
|
33
|
+
servicio: queryParam['bagDataSubject'] ?? ''
|
|
34
|
+
} as QueryFilters;
|
|
35
|
+
}));
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
public getSnapFilters(state: string): QueryFilters {
|
|
40
|
+
let filter = Reflect.get(history.state, state);
|
|
41
|
+
if (filter) {
|
|
42
|
+
filter = {
|
|
43
|
+
seleccionarTodo: filter.seleccionarTodo ?? false,
|
|
44
|
+
seleccionados: filter.seleccionados ?? [],
|
|
45
|
+
deseleccionados: filter.deseleccionados ?? [],
|
|
46
|
+
eliminados: filter.eliminados ?? [],
|
|
47
|
+
filtrados: filter.filtrados ?? [],
|
|
48
|
+
servicio: filter.servicio ?? ''
|
|
49
|
+
} as QueryFilters;
|
|
50
|
+
}
|
|
51
|
+
return filter;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
public generateFilter(url: string): QueryFilters | undefined {
|
|
55
|
+
if (!url) {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
let params = url.split('&')
|
|
59
|
+
.map(p => {
|
|
60
|
+
let data = p.split('=');
|
|
61
|
+
return {
|
|
62
|
+
key: data[0],
|
|
63
|
+
value: data[1] ?? ''
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
return {
|
|
67
|
+
seleccionarTodo: params.some(p => p.key === 'seleccionar' && p.value === ''),
|
|
68
|
+
seleccionados: params.find(p => p.key === 'seleccionar')?.value.split(',') ?? [],
|
|
69
|
+
deseleccionados: params.find(p => p.key === 'deseleccionar')?.value.split(',') ?? [],
|
|
70
|
+
eliminados: params.find(p => p.key === 'eliminar')?.value.split(',') ?? [],
|
|
71
|
+
filtrados: params.find(p => p.key === 'filtrar')?.value?.split(',') ?? [],
|
|
72
|
+
servicio: params.find(p => p.key === 'servicio')?.value ?? '',
|
|
73
|
+
} as QueryFilters;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Obtiene los datos de los parámetros establecidos
|
|
78
|
+
* @param {Params} param - Parámetros
|
|
79
|
+
* @param {string} key - Clave del parámetro
|
|
80
|
+
* @returns Arreglo de parámetros
|
|
81
|
+
*/
|
|
82
|
+
private getData(param: Params, key: string): Array<string> {
|
|
83
|
+
return param[key]?.split(',') ?? [];
|
|
84
|
+
}
|
|
85
|
+
}
|
package/Helper/src/models/interfaces/{data-subject.interface.d.ts → data-subject.interface.ts}
RENAMED
|
@@ -1,21 +1,24 @@
|
|
|
1
|
-
import { Observable } from "rxjs";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
1
|
+
import { Observable } from "rxjs";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Interface de suscripción para compartir datos
|
|
5
|
+
*/
|
|
6
|
+
export interface DataSubject<T> {
|
|
7
|
+
/**
|
|
8
|
+
* Realiza la propagación de datos a los suscriptores
|
|
9
|
+
* @param {T} data - Dato a propagar
|
|
10
|
+
*/
|
|
11
|
+
broadcast(data: T): void;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Obtiene los datos propagados
|
|
15
|
+
* @return {T} datos
|
|
16
|
+
*/
|
|
17
|
+
get data(): T;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Observable de datos
|
|
21
|
+
* @return {Observer<T>} Observable<T>
|
|
22
|
+
*/
|
|
23
|
+
get observer(): Observable<T>;
|
|
24
|
+
}
|
|
@@ -1,29 +1,34 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Interface que contiene los filtros de parámetros
|
|
3
|
-
*/
|
|
4
|
-
export interface QueryFilters {
|
|
5
|
-
/**
|
|
6
|
-
* Indica que elementos están seleccionados
|
|
7
|
-
*/
|
|
8
|
-
seleccionados: Array<string>;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
*
|
|
27
|
-
*/
|
|
28
|
-
|
|
29
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Interface que contiene los filtros de parámetros
|
|
3
|
+
*/
|
|
4
|
+
export interface QueryFilters {
|
|
5
|
+
/**
|
|
6
|
+
* Indica que elementos están seleccionados
|
|
7
|
+
*/
|
|
8
|
+
seleccionados: Array<string>;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Indica que elementos están deseleccionados
|
|
12
|
+
*/
|
|
13
|
+
deseleccionados: Array<string>;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Indica que elementos se eliminan
|
|
17
|
+
*/
|
|
18
|
+
eliminados: Array<string>;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Indica que elementos se filtran
|
|
22
|
+
*/
|
|
23
|
+
filtrados: Array<string>;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Indica si se selecciona todo
|
|
27
|
+
*/
|
|
28
|
+
seleccionarTodo: boolean;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Contiene el nombre del servicio que comparten datos
|
|
32
|
+
*/
|
|
33
|
+
servicio: string;
|
|
34
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/** Componentes */
|
|
2
|
-
export * from './src/components/redi-bread-crumb/redi-bread-crumb.component';
|
|
1
|
+
/** Componentes */
|
|
2
|
+
export * from './src/components/redi-bread-crumb/redi-bread-crumb.component';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
div {
|
|
2
|
+
color: gray;
|
|
3
|
+
display: inline-flex;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
p {
|
|
7
|
+
margin: 0px;
|
|
8
|
+
padding-left: 5px;
|
|
9
|
+
align-content: end;
|
|
10
|
+
font-size: 0.9em;
|
|
11
|
+
letter-spacing: -0.04rem;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.material-symbols-outlined {
|
|
15
|
+
font-variation-settings:
|
|
16
|
+
'FILL' 1,
|
|
17
|
+
'wght' 600,
|
|
18
|
+
'GRAD' 200,
|
|
19
|
+
'opsz' 24
|
|
20
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { RediBreadCrumbComponent } from './redi-bread-crumb.component';
|
|
4
|
+
|
|
5
|
+
describe('BreadCrumbComponent', () => {
|
|
6
|
+
let component: RediBreadCrumbComponent;
|
|
7
|
+
let fixture: ComponentFixture<RediBreadCrumbComponent>;
|
|
8
|
+
|
|
9
|
+
beforeEach(async () => {
|
|
10
|
+
await TestBed.configureTestingModule({
|
|
11
|
+
imports: [RediBreadCrumbComponent]
|
|
12
|
+
})
|
|
13
|
+
.compileComponents();
|
|
14
|
+
|
|
15
|
+
fixture = TestBed.createComponent(RediBreadCrumbComponent);
|
|
16
|
+
component = fixture.componentInstance;
|
|
17
|
+
fixture.detectChanges();
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('should create', () => {
|
|
21
|
+
expect(component).toBeTruthy();
|
|
22
|
+
});
|
|
23
|
+
});
|