@sapphire-ion/framework 1.2.43 → 1.2.45
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/esm2022/lib/classes/comparison/comparison-operator.mjs +18 -0
- package/esm2022/lib/classes/comparison/comparison-value-type.mjs +25 -0
- package/esm2022/lib/classes/comparison/comparison.mjs +41 -0
- package/esm2022/lib/classes/comparison/properties/bool-property.mjs +15 -0
- package/esm2022/lib/classes/comparison/properties/date-property.mjs +27 -0
- package/esm2022/lib/classes/comparison/properties/datetime-property.mjs +27 -0
- package/esm2022/lib/classes/comparison/properties/decimal-property.mjs +27 -0
- package/esm2022/lib/classes/comparison/properties/enum-property.mjs +27 -0
- package/esm2022/lib/classes/comparison/properties/implicit-property.mjs +12 -0
- package/esm2022/lib/classes/comparison/properties/int-property.mjs +27 -0
- package/esm2022/lib/classes/comparison/properties/long-property.mjs +27 -0
- package/esm2022/lib/classes/comparison/properties/string-property.mjs +15 -0
- package/esm2022/lib/classes/comparison/properties/time-property.mjs +27 -0
- package/esm2022/lib/classes/credentials.mjs +2 -0
- package/esm2022/lib/classes/environment.mjs +34 -0
- package/esm2022/lib/classes/filters/view-filtros.mjs +18 -0
- package/esm2022/lib/classes/infinite-scroll.mjs +90 -0
- package/esm2022/lib/classes/inputs/table-field-form-builder.mjs +10 -0
- package/esm2022/lib/classes/inputs/table-field.mjs +79 -0
- package/esm2022/lib/classes/page-option.mjs +2 -0
- package/esm2022/lib/classes/routes/default-routing-factory.mjs +23 -0
- package/esm2022/lib/classes/routes/id-preloader-configuration.mjs +22 -0
- package/esm2022/lib/classes/routes/route-data.mjs +9 -0
- package/esm2022/lib/components/carousel/carousel-image/carousel-image.component.mjs +18 -0
- package/esm2022/lib/components/carousel/carousel-item/carousel-item.component.mjs +15 -0
- package/esm2022/lib/components/carousel/carousel.component.mjs +79 -0
- package/esm2022/lib/components/carousel/carousel.module.mjs +31 -0
- package/esm2022/lib/components/carousel/i-carousel-item.component.mjs +16 -0
- package/esm2022/lib/components/content-block/content-block.component.mjs +27 -0
- package/esm2022/lib/components/default/default-list/abstract-list.mjs +49 -0
- package/esm2022/lib/components/default/default-list/default-list.component.mjs +95 -0
- package/esm2022/lib/components/default/default-list/header-list/header-list.component.mjs +98 -0
- package/esm2022/lib/components/default/default-list/list.mjs +120 -0
- package/esm2022/lib/components/default/default-pagination/default-pagination.component.mjs +123 -0
- package/esm2022/lib/components/default/default-table/default-table.component.mjs +216 -0
- package/esm2022/lib/components/default/default-table/th-filter/th-filter.component.mjs +206 -0
- package/esm2022/lib/components/default/default-view/abstract-view.mjs +22 -0
- package/esm2022/lib/components/default/default-view/default-view.component.mjs +63 -0
- package/esm2022/lib/components/default/default-view/header-view/header-view.component.mjs +78 -0
- package/esm2022/lib/components/default/default-view/view.mjs +188 -0
- package/esm2022/lib/components/default/default.module.mjs +98 -0
- package/esm2022/lib/components/default-page/default.page.mjs +75 -0
- package/esm2022/lib/components/drag-drop-file/drag-drop-file.directive.mjs +60 -0
- package/esm2022/lib/components/drag-drop-file/drag-drop-file.module.mjs +31 -0
- package/esm2022/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.mjs +15 -0
- package/esm2022/lib/components/drawer/default-drawer-end/default-drawer-end.component.mjs +34 -0
- package/esm2022/lib/components/drawer/drawer-group/drawer-group.component.mjs +52 -0
- package/esm2022/lib/components/drawer/drawer.component.mjs +156 -0
- package/esm2022/lib/components/drawer/menu.mjs +15 -0
- package/esm2022/lib/components/filter/filter.component.mjs +145 -0
- package/esm2022/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.mjs +17 -0
- package/esm2022/lib/components/image/image.component.mjs +91 -0
- package/esm2022/lib/components/info-popover/info-popover.component.mjs +91 -0
- package/esm2022/lib/components/inputs/custom-input.mjs +85 -0
- package/esm2022/lib/components/inputs/input-bool/input-bool.component.mjs +46 -0
- package/esm2022/lib/components/inputs/input-bool/input-bool.configuration.mjs +16 -0
- package/esm2022/lib/components/inputs/input-cep/input-cep.component.mjs +50 -0
- package/esm2022/lib/components/inputs/input-cep/input-cep.configuration.mjs +4 -0
- package/esm2022/lib/components/inputs/input-color/input-color.component.mjs +481 -0
- package/esm2022/lib/components/inputs/input-configuration.mjs +2 -0
- package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.mjs +116 -0
- package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.configuration.mjs +6 -0
- package/esm2022/lib/components/inputs/input-date/input-date.component.mjs +235 -0
- package/esm2022/lib/components/inputs/input-date/input-date.configuration.mjs +8 -0
- package/esm2022/lib/components/inputs/input-decimal/input-decimal.component.mjs +243 -0
- package/esm2022/lib/components/inputs/input-decimal/input-decimal.configuration.mjs +50 -0
- package/esm2022/lib/components/inputs/input-default-configurations.mjs +14 -0
- package/esm2022/lib/components/inputs/input-file/download-button/download-button.component.mjs +99 -0
- package/esm2022/lib/components/inputs/input-file/input-file.component.mjs +101 -0
- package/esm2022/lib/components/inputs/input-file/input-file.configuration.mjs +24 -0
- package/esm2022/lib/components/inputs/input-icon/fluenticons.mjs +3734 -0
- package/esm2022/lib/components/inputs/input-icon/input-icon.component.mjs +60 -0
- package/esm2022/lib/components/inputs/input-icon/ionicons.mjs +1360 -0
- package/esm2022/lib/components/inputs/input-provider-factory.mjs +12 -0
- package/esm2022/lib/components/inputs/input-select/directives/sion-label-template.directive.mjs +16 -0
- package/esm2022/lib/components/inputs/input-select/directives/sion-option-template.directive.mjs +16 -0
- package/esm2022/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.mjs +16 -0
- package/esm2022/lib/components/inputs/input-select/input-select.component.mjs +373 -0
- package/esm2022/lib/components/inputs/input-select/input.select.configuration.mjs +229 -0
- package/esm2022/lib/components/inputs/input-string/input-string.component.mjs +41 -0
- package/esm2022/lib/components/inputs/input-string/input-string.configuration.mjs +20 -0
- package/esm2022/lib/components/inputs/input-telefone/input-telefone.component.mjs +74 -0
- package/esm2022/lib/components/inputs/input-telefone/input-telefone.configuration.mjs +12 -0
- package/esm2022/lib/components/inputs/input-textarea/input-textarea.component.mjs +74 -0
- package/esm2022/lib/components/inputs/input-textarea/input-textarea.configuration.mjs +7 -0
- package/esm2022/lib/components/inputs/input-type.mjs +24 -0
- package/esm2022/lib/components/inputs/input-validators.mjs +121 -0
- package/esm2022/lib/components/inputs/inputs.module.mjs +133 -0
- package/esm2022/lib/components/loading/loading.component.mjs +34 -0
- package/esm2022/lib/components/login/login-admin/login-admin.component.mjs +52 -0
- package/esm2022/lib/components/login/login.component.mjs +99 -0
- package/esm2022/lib/components/main-content/main-content.component.mjs +100 -0
- package/esm2022/lib/components/popover/sion-popover/sion-popover.component.mjs +182 -0
- package/esm2022/lib/components/popover/sion-popover.module.mjs +21 -0
- package/esm2022/lib/components/sion-card/sion-card.component.mjs +26 -0
- package/esm2022/lib/components/stepper/step/step.component.mjs +43 -0
- package/esm2022/lib/components/stepper/stepper.component.mjs +36 -0
- package/esm2022/lib/components/stepper/stepper.module.mjs +25 -0
- package/esm2022/lib/components/tabs/tab/tab.component.mjs +41 -0
- package/esm2022/lib/components/tabs/tabs/tabs.component.mjs +56 -0
- package/esm2022/lib/components/tabs/tabs.module.mjs +22 -0
- package/esm2022/lib/components/text-tooltip/text-tooltip.component.mjs +51 -0
- package/esm2022/lib/components/tooltip/tooltip.component.mjs +21 -0
- package/esm2022/lib/core.module.mjs +38 -0
- package/esm2022/lib/directives/ng-var.directive.mjs +29 -0
- package/esm2022/lib/guards/auth.guard.mjs +26 -0
- package/esm2022/lib/guards/error.interceptor.mjs +107 -0
- package/esm2022/lib/guards/token.interceptor.mjs +25 -0
- package/esm2022/lib/index.mjs +187 -0
- package/esm2022/lib/pipes/secure.pipe.mjs +42 -0
- package/esm2022/lib/services/auth.service.mjs +146 -0
- package/esm2022/lib/services/environment.service.mjs +26 -0
- package/esm2022/lib/services/generic.service.mjs +84 -0
- package/esm2022/lib/services/modal-focus-trap.service.mjs +62 -0
- package/esm2022/lib/services/popover-focus-trap.service.mjs +62 -0
- package/esm2022/lib/services/route/route.cache.service.mjs +15 -0
- package/esm2022/lib/services/route/route.provider.service.mjs +42 -0
- package/esm2022/lib/services/usuario.service.mjs +49 -0
- package/esm2022/lib/services/utils.service.mjs +190 -0
- package/esm2022/lib/services/web/api-url-provider.service.mjs +29 -0
- package/esm2022/lib/services/web/http.ativo.service.mjs +37 -0
- package/esm2022/lib/services/web/http.service.mjs +177 -0
- package/esm2022/lib/services/web/storage.service.mjs +183 -0
- package/esm2022/public-api.mjs +5 -0
- package/esm2022/sapphire-ion-framework.mjs +5 -0
- package/fesm2022/sapphire-ion-framework.mjs +12265 -0
- package/fesm2022/sapphire-ion-framework.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/classes/comparison/comparison-operator.d.ts +9 -0
- package/lib/classes/comparison/comparison-value-type.d.ts +23 -0
- package/lib/classes/comparison/comparison.d.ts +25 -0
- package/lib/classes/comparison/properties/bool-property.d.ts +7 -0
- package/lib/classes/comparison/properties/date-property.d.ts +11 -0
- package/lib/classes/comparison/properties/datetime-property.d.ts +11 -0
- package/lib/classes/comparison/properties/decimal-property.d.ts +11 -0
- package/lib/classes/comparison/properties/enum-property.d.ts +11 -0
- package/lib/classes/comparison/properties/implicit-property.d.ts +6 -0
- package/lib/classes/comparison/properties/int-property.d.ts +11 -0
- package/lib/classes/comparison/properties/long-property.d.ts +11 -0
- package/lib/classes/comparison/properties/string-property.d.ts +7 -0
- package/lib/classes/comparison/properties/time-property.d.ts +11 -0
- package/{src/lib/classes/credentials.ts → lib/classes/credentials.d.ts} +5 -5
- package/lib/classes/environment.d.ts +14 -0
- package/lib/classes/filters/view-filtros.d.ts +10 -0
- package/lib/classes/infinite-scroll.d.ts +26 -0
- package/lib/classes/inputs/table-field-form-builder.d.ts +5 -0
- package/lib/classes/inputs/table-field.d.ts +20 -0
- package/lib/classes/page-option.d.ts +7 -0
- package/lib/classes/routes/default-routing-factory.d.ts +8 -0
- package/lib/classes/routes/id-preloader-configuration.d.ts +28 -0
- package/lib/classes/routes/route-data.d.ts +5 -0
- package/lib/components/carousel/carousel-image/carousel-image.component.d.ts +10 -0
- package/lib/components/carousel/carousel-item/carousel-item.component.d.ts +9 -0
- package/lib/components/carousel/carousel.component.d.ts +32 -0
- package/lib/components/carousel/carousel.module.d.ts +12 -0
- package/lib/components/carousel/i-carousel-item.component.d.ts +9 -0
- package/lib/components/content-block/content-block.component.d.ts +15 -0
- package/lib/components/default/default-list/abstract-list.d.ts +21 -0
- package/lib/components/default/default-list/default-list.component.d.ts +47 -0
- package/lib/components/default/default-list/header-list/header-list.component.d.ts +45 -0
- package/lib/components/default/default-list/list.d.ts +40 -0
- package/lib/components/default/default-pagination/default-pagination.component.d.ts +36 -0
- package/lib/components/default/default-table/default-table.component.d.ts +90 -0
- package/lib/components/default/default-table/th-filter/th-filter.component.d.ts +23 -0
- package/lib/components/default/default-view/abstract-view.d.ts +18 -0
- package/lib/components/default/default-view/default-view.component.d.ts +32 -0
- package/lib/components/default/default-view/header-view/header-view.component.d.ts +29 -0
- package/lib/components/default/default-view/view.d.ts +59 -0
- package/lib/components/default/default.module.d.ts +31 -0
- package/lib/components/default-page/default.page.d.ts +35 -0
- package/lib/components/drag-drop-file/drag-drop-file.directive.d.ts +14 -0
- package/lib/components/drag-drop-file/drag-drop-file.module.d.ts +10 -0
- package/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.d.ts +9 -0
- package/lib/components/drawer/default-drawer-end/default-drawer-end.component.d.ts +13 -0
- package/lib/components/drawer/drawer-group/drawer-group.component.d.ts +22 -0
- package/lib/components/drawer/drawer.component.d.ts +31 -0
- package/lib/components/drawer/menu.d.ts +9 -0
- package/lib/components/filter/filter.component.d.ts +29 -0
- package/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.d.ts +8 -0
- package/lib/components/image/image.component.d.ts +23 -0
- package/lib/components/info-popover/info-popover.component.d.ts +15 -0
- package/lib/components/inputs/custom-input.d.ts +40 -0
- package/lib/components/inputs/input-bool/input-bool.component.d.ts +16 -0
- package/lib/components/inputs/input-bool/input-bool.configuration.d.ts +17 -0
- package/lib/components/inputs/input-cep/input-cep.component.d.ts +18 -0
- package/lib/components/inputs/input-cep/input-cep.configuration.d.ts +3 -0
- package/lib/components/inputs/input-color/input-color.component.d.ts +77 -0
- package/{src/lib/components/inputs/input-configuration.ts → lib/components/inputs/input-configuration.d.ts} +10 -23
- package/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.d.ts +19 -0
- package/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.configuration.d.ts +5 -0
- package/lib/components/inputs/input-date/input-date.component.d.ts +60 -0
- package/lib/components/inputs/input-date/input-date.configuration.d.ts +7 -0
- package/lib/components/inputs/input-decimal/input-decimal.component.d.ts +26 -0
- package/lib/components/inputs/input-decimal/input-decimal.configuration.d.ts +28 -0
- package/lib/components/inputs/input-default-configurations.d.ts +13 -0
- package/lib/components/inputs/input-file/download-button/download-button.component.d.ts +39 -0
- package/lib/components/inputs/input-file/input-file.component.d.ts +27 -0
- package/lib/components/inputs/input-file/input-file.configuration.d.ts +8 -0
- package/lib/components/inputs/input-icon/fluenticons.d.ts +1 -0
- package/lib/components/inputs/input-icon/input-icon.component.d.ts +20 -0
- package/lib/components/inputs/input-icon/ionicons.d.ts +1 -0
- package/lib/components/inputs/input-provider-factory.d.ts +4 -0
- package/lib/components/inputs/input-select/directives/sion-label-template.directive.d.ts +18 -0
- package/lib/components/inputs/input-select/directives/sion-option-template.directive.d.ts +14 -0
- package/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.d.ts +18 -0
- package/lib/components/inputs/input-select/input-select.component.d.ts +83 -0
- package/lib/components/inputs/input-select/input.select.configuration.d.ts +122 -0
- package/lib/components/inputs/input-string/input-string.component.d.ts +14 -0
- package/lib/components/inputs/input-string/input-string.configuration.d.ts +15 -0
- package/lib/components/inputs/input-telefone/input-telefone.component.d.ts +19 -0
- package/lib/components/inputs/input-telefone/input-telefone.configuration.d.ts +9 -0
- package/lib/components/inputs/input-textarea/input-textarea.component.d.ts +16 -0
- package/lib/components/inputs/input-textarea/input-textarea.configuration.d.ts +4 -0
- package/lib/components/inputs/input-type.d.ts +22 -0
- package/lib/components/inputs/input-validators.d.ts +25 -0
- package/lib/components/inputs/inputs.module.d.ts +33 -0
- package/lib/components/loading/loading.component.d.ts +18 -0
- package/lib/components/login/login-admin/login-admin.component.d.ts +20 -0
- package/lib/components/login/login.component.d.ts +29 -0
- package/lib/components/main-content/main-content.component.d.ts +27 -0
- package/lib/components/popover/sion-popover/sion-popover.component.d.ts +43 -0
- package/lib/components/popover/sion-popover.module.d.ts +9 -0
- package/lib/components/sion-card/sion-card.component.d.ts +11 -0
- package/lib/components/stepper/step/step.component.d.ts +15 -0
- package/lib/components/stepper/stepper.component.d.ts +14 -0
- package/lib/components/stepper/stepper.module.d.ts +10 -0
- package/lib/components/tabs/tab/tab.component.d.ts +19 -0
- package/lib/components/tabs/tabs/tabs.component.d.ts +18 -0
- package/lib/components/tabs/tabs.module.d.ts +12 -0
- package/lib/components/text-tooltip/text-tooltip.component.d.ts +16 -0
- package/lib/components/tooltip/tooltip.component.d.ts +7 -0
- package/lib/core.module.d.ts +16 -0
- package/lib/directives/ng-var.directive.d.ts +12 -0
- package/lib/guards/auth.guard.d.ts +11 -0
- package/lib/guards/error.interceptor.d.ts +32 -0
- package/lib/guards/token.interceptor.d.ts +11 -0
- package/lib/index.d.ts +117 -0
- package/lib/pipes/secure.pipe.d.ts +15 -0
- package/lib/services/auth.service.d.ts +47 -0
- package/lib/services/environment.service.d.ts +10 -0
- package/lib/services/generic.service.d.ts +22 -0
- package/lib/services/modal-focus-trap.service.d.ts +13 -0
- package/lib/services/popover-focus-trap.service.d.ts +13 -0
- package/lib/services/route/route.cache.service.d.ts +7 -0
- package/lib/services/route/route.provider.service.d.ts +13 -0
- package/lib/services/usuario.service.d.ts +21 -0
- package/lib/services/utils.service.d.ts +53 -0
- package/lib/services/web/api-url-provider.service.d.ts +13 -0
- package/lib/services/web/http.ativo.service.d.ts +20 -0
- package/lib/services/web/http.service.d.ts +59 -0
- package/lib/services/web/storage.service.d.ts +46 -0
- package/package.json +47 -43
- package/public-api.d.ts +1 -0
- package/{src/lib → themes}/compiled-styles.scss +2551 -2551
- package/build.ps1 +0 -39
- package/ng-package.json +0 -10
- package/src/lib/classes/comparison/comparison-operator.ts +0 -17
- package/src/lib/classes/comparison/comparison-value-type.ts +0 -34
- package/src/lib/classes/comparison/comparison.ts +0 -45
- package/src/lib/classes/comparison/properties/bool-property.ts +0 -16
- package/src/lib/classes/comparison/properties/date-property.ts +0 -28
- package/src/lib/classes/comparison/properties/datetime-property.ts +0 -28
- package/src/lib/classes/comparison/properties/decimal-property.ts +0 -28
- package/src/lib/classes/comparison/properties/enum-property.ts +0 -28
- package/src/lib/classes/comparison/properties/implicit-property.ts +0 -13
- package/src/lib/classes/comparison/properties/int-property.ts +0 -28
- package/src/lib/classes/comparison/properties/long-property.ts +0 -28
- package/src/lib/classes/comparison/properties/string-property.ts +0 -16
- package/src/lib/classes/comparison/properties/time-property.ts +0 -28
- package/src/lib/classes/environment.ts +0 -37
- package/src/lib/classes/filters/view-filtros.ts +0 -18
- package/src/lib/classes/infinite-scroll.ts +0 -112
- package/src/lib/classes/inputs/table-field-form-builder.ts +0 -12
- package/src/lib/classes/inputs/table-field.ts +0 -62
- package/src/lib/classes/page-option.ts +0 -8
- package/src/lib/classes/routes/default-routing-factory.ts +0 -24
- package/src/lib/classes/routes/id-preloader-configuration.ts +0 -21
- package/src/lib/classes/routes/route-data.ts +0 -9
- package/src/lib/components/carousel/carousel-image/carousel-image.component.html +0 -4
- package/src/lib/components/carousel/carousel-image/carousel-image.component.ts +0 -15
- package/src/lib/components/carousel/carousel-item/carousel-item.component.html +0 -3
- package/src/lib/components/carousel/carousel-item/carousel-item.component.ts +0 -14
- package/src/lib/components/carousel/carousel.component.html +0 -22
- package/src/lib/components/carousel/carousel.component.ts +0 -83
- package/src/lib/components/carousel/carousel.module.ts +0 -20
- package/src/lib/components/carousel/i-carousel-item.component.ts +0 -8
- package/src/lib/components/content-block/content-block.component.html +0 -6
- package/src/lib/components/content-block/content-block.component.ts +0 -25
- package/src/lib/components/default/default-list/abstract-list.ts +0 -56
- package/src/lib/components/default/default-list/default-list.component.html +0 -60
- package/src/lib/components/default/default-list/default-list.component.ts +0 -72
- package/src/lib/components/default/default-list/header-list/header-list.component.html +0 -32
- package/src/lib/components/default/default-list/header-list/header-list.component.ts +0 -85
- package/src/lib/components/default/default-list/list.ts +0 -127
- package/src/lib/components/default/default-pagination/default-pagination.component.html +0 -52
- package/src/lib/components/default/default-pagination/default-pagination.component.ts +0 -118
- package/src/lib/components/default/default-table/default-table.component.html +0 -104
- package/src/lib/components/default/default-table/default-table.component.ts +0 -255
- package/src/lib/components/default/default-table/th-filter/th-filter.component.html +0 -69
- package/src/lib/components/default/default-table/th-filter/th-filter.component.ts +0 -183
- package/src/lib/components/default/default-view/abstract-view.ts +0 -25
- package/src/lib/components/default/default-view/default-view.component.html +0 -111
- package/src/lib/components/default/default-view/default-view.component.ts +0 -44
- package/src/lib/components/default/default-view/header-view/header-view.component.html +0 -64
- package/src/lib/components/default/default-view/header-view/header-view.component.ts +0 -57
- package/src/lib/components/default/default-view/view.ts +0 -183
- package/src/lib/components/default/default.module.ts +0 -61
- package/src/lib/components/default-page/default.page.html +0 -63
- package/src/lib/components/default-page/default.page.ts +0 -84
- package/src/lib/components/drag-drop-file/drag-drop-file.directive.ts +0 -44
- package/src/lib/components/drag-drop-file/drag-drop-file.module.ts +0 -21
- package/src/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.html +0 -5
- package/src/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.ts +0 -17
- package/src/lib/components/drawer/default-drawer-end/default-drawer-end.component.html +0 -12
- package/src/lib/components/drawer/default-drawer-end/default-drawer-end.component.ts +0 -35
- package/src/lib/components/drawer/drawer-group/drawer-group.component.html +0 -79
- package/src/lib/components/drawer/drawer-group/drawer-group.component.ts +0 -49
- package/src/lib/components/drawer/drawer.component.html +0 -120
- package/src/lib/components/drawer/drawer.component.ts +0 -157
- package/src/lib/components/drawer/menu.ts +0 -20
- package/src/lib/components/filter/filter.component.html +0 -43
- package/src/lib/components/filter/filter.component.ts +0 -141
- package/src/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.html +0 -35
- package/src/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.ts +0 -19
- package/src/lib/components/image/image.component.html +0 -17
- package/src/lib/components/image/image.component.ts +0 -95
- package/src/lib/components/info-popover/info-popover.component.html +0 -23
- package/src/lib/components/info-popover/info-popover.component.ts +0 -75
- package/src/lib/components/inputs/custom-input.ts +0 -94
- package/src/lib/components/inputs/input-bool/input-bool.component.html +0 -26
- package/src/lib/components/inputs/input-bool/input-bool.component.ts +0 -39
- package/src/lib/components/inputs/input-bool/input-bool.configuration.ts +0 -14
- package/src/lib/components/inputs/input-cep/input-cep.component.html +0 -27
- package/src/lib/components/inputs/input-cep/input-cep.component.ts +0 -41
- package/src/lib/components/inputs/input-cep/input-cep.configuration.ts +0 -4
- package/src/lib/components/inputs/input-color/input-color.component.html +0 -79
- package/src/lib/components/inputs/input-color/input-color.component.ts +0 -544
- package/src/lib/components/inputs/input-color/input-color.configuration.ts +0 -0
- package/src/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.html +0 -28
- package/src/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.ts +0 -99
- package/src/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.configuration.ts +0 -4
- package/src/lib/components/inputs/input-date/input-date.component.html +0 -88
- package/src/lib/components/inputs/input-date/input-date.component.ts +0 -241
- package/src/lib/components/inputs/input-date/input-date.configuration.ts +0 -6
- package/src/lib/components/inputs/input-decimal/input-decimal.component.html +0 -31
- package/src/lib/components/inputs/input-decimal/input-decimal.component.ts +0 -249
- package/src/lib/components/inputs/input-decimal/input-decimal.configuration.ts +0 -47
- package/src/lib/components/inputs/input-default-configurations.ts +0 -15
- package/src/lib/components/inputs/input-file/download-button/download-button.component.html +0 -56
- package/src/lib/components/inputs/input-file/download-button/download-button.component.ts +0 -89
- package/src/lib/components/inputs/input-file/input-file.component.html +0 -59
- package/src/lib/components/inputs/input-file/input-file.component.ts +0 -96
- package/src/lib/components/inputs/input-file/input-file.configuration.ts +0 -25
- package/src/lib/components/inputs/input-icon/fluenticons.ts +0 -3733
- package/src/lib/components/inputs/input-icon/input-icon.component.html +0 -8
- package/src/lib/components/inputs/input-icon/input-icon.component.ts +0 -52
- package/src/lib/components/inputs/input-icon/ionicons.ts +0 -1359
- package/src/lib/components/inputs/input-provider-factory.ts +0 -12
- package/src/lib/components/inputs/input-select/directives/sion-label-template.directive.ts +0 -19
- package/src/lib/components/inputs/input-select/directives/sion-option-template.directive.ts +0 -16
- package/src/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.ts +0 -19
- package/src/lib/components/inputs/input-select/input-select.component.html +0 -176
- package/src/lib/components/inputs/input-select/input-select.component.ts +0 -361
- package/src/lib/components/inputs/input-select/input.select.configuration.ts +0 -292
- package/src/lib/components/inputs/input-string/input-string.component.html +0 -27
- package/src/lib/components/inputs/input-string/input-string.component.ts +0 -31
- package/src/lib/components/inputs/input-string/input-string.configuration.ts +0 -18
- package/src/lib/components/inputs/input-telefone/input-telefone.component.html +0 -29
- package/src/lib/components/inputs/input-telefone/input-telefone.component.ts +0 -63
- package/src/lib/components/inputs/input-telefone/input-telefone.configuration.ts +0 -8
- package/src/lib/components/inputs/input-textarea/input-textarea.component.html +0 -27
- package/src/lib/components/inputs/input-textarea/input-textarea.component.ts +0 -31
- package/src/lib/components/inputs/input-textarea/input-textarea.configuration.ts +0 -7
- package/src/lib/components/inputs/input-type.ts +0 -22
- package/src/lib/components/inputs/input-validators.ts +0 -111
- package/src/lib/components/inputs/inputs.module.ts +0 -74
- package/src/lib/components/loading/loading.component.html +0 -28
- package/src/lib/components/loading/loading.component.ts +0 -29
- package/src/lib/components/login/login-admin/login-admin.component.html +0 -28
- package/src/lib/components/login/login-admin/login-admin.component.ts +0 -51
- package/src/lib/components/login/login.component.html +0 -104
- package/src/lib/components/login/login.component.ts +0 -96
- package/src/lib/components/main-content/main-content.component.html +0 -145
- package/src/lib/components/main-content/main-content.component.ts +0 -93
- package/src/lib/components/popover/sion-popover/sion-popover.component.html +0 -21
- package/src/lib/components/popover/sion-popover/sion-popover.component.ts +0 -182
- package/src/lib/components/popover/sion-popover.module.ts +0 -12
- package/src/lib/components/sion-card/sion-card.component.html +0 -12
- package/src/lib/components/sion-card/sion-card.component.ts +0 -23
- package/src/lib/components/stepper/step/step.component.html +0 -11
- package/src/lib/components/stepper/step/step.component.ts +0 -44
- package/src/lib/components/stepper/stepper.component.html +0 -3
- package/src/lib/components/stepper/stepper.component.ts +0 -37
- package/src/lib/components/stepper/stepper.module.ts +0 -15
- package/src/lib/components/tabs/tab/tab.component.html +0 -8
- package/src/lib/components/tabs/tab/tab.component.ts +0 -28
- package/src/lib/components/tabs/tabs/tabs.component.html +0 -14
- package/src/lib/components/tabs/tabs/tabs.component.ts +0 -42
- package/src/lib/components/tabs/tabs.module.ts +0 -15
- package/src/lib/components/text-tooltip/text-tooltip.component.html +0 -8
- package/src/lib/components/text-tooltip/text-tooltip.component.ts +0 -45
- package/src/lib/components/tooltip/tooltip.component.html +0 -53
- package/src/lib/components/tooltip/tooltip.component.ts +0 -16
- package/src/lib/core.module.ts +0 -29
- package/src/lib/directives/ng-var.directive.ts +0 -26
- package/src/lib/guards/auth.guard.ts +0 -19
- package/src/lib/guards/error.interceptor.ts +0 -108
- package/src/lib/guards/token.interceptor.ts +0 -28
- package/src/lib/index.ts +0 -190
- package/src/lib/pipes/secure.pipe.ts +0 -39
- package/src/lib/services/auth.service.ts +0 -153
- package/src/lib/services/crypto.service.ts +0 -164
- package/src/lib/services/environment.service.ts +0 -17
- package/src/lib/services/generic.service.ts +0 -85
- package/src/lib/services/modal-focus-trap.service.ts +0 -65
- package/src/lib/services/popover-focus-trap.service.ts +0 -65
- package/src/lib/services/route/route.cache.service.ts +0 -17
- package/src/lib/services/route/route.provider.service.ts +0 -49
- package/src/lib/services/usuario.service.ts +0 -44
- package/src/lib/services/utils.service.ts +0 -216
- package/src/lib/services/web/api-url-provider.service.ts +0 -48
- package/src/lib/services/web/http.ativo.service.ts +0 -37
- package/src/lib/services/web/http.service.ts +0 -193
- package/src/lib/services/web/storage.service.ts +0 -206
- package/src/public-api.ts +0 -5
- package/tailwind.config.js +0 -27
- package/tsconfig.lib.json +0 -29
- package/tsconfig.lib.prod.json +0 -23
- package/tsconfig.spec.json +0 -27
- /package/{src/lib → themes}/components/carousel/carousel-image/carousel-image.component.scss +0 -0
- /package/{src/lib → themes}/components/carousel/carousel-item/carousel-item.component.scss +0 -0
- /package/{src/lib → themes}/components/carousel/carousel.component.scss +0 -0
- /package/{src/lib → themes}/components/content-block/content-block.component.scss +0 -0
- /package/{src/lib → themes}/components/default/default-list/default-list.component.scss +0 -0
- /package/{src/lib → themes}/components/default/default-list/header-list/header-list.component.scss +0 -0
- /package/{src/lib → themes}/components/default/default-pagination/default-pagination.component.scss +0 -0
- /package/{src/lib → themes}/components/default/default-table/default-table.component.scss +0 -0
- /package/{src/lib → themes}/components/default/default-table/th-filter/th-filter.component.scss +0 -0
- /package/{src/lib → themes}/components/default/default-view/default-view.component.scss +0 -0
- /package/{src/lib → themes}/components/default/default-view/header-view/header-view.component.scss +0 -0
- /package/{src/lib → themes}/components/default-page/default.page.scss +0 -0
- /package/{src/lib → themes}/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.scss +0 -0
- /package/{src/lib → themes}/components/drawer/default-drawer-end/default-drawer-end.component.scss +0 -0
- /package/{src/lib → themes}/components/drawer/drawer-group/drawer-group.component.scss +0 -0
- /package/{src/lib → themes}/components/drawer/drawer.component.scss +0 -0
- /package/{src/lib → themes}/components/filter/filter.component.scss +0 -0
- /package/{src/lib → themes}/components/http-responses-pages/forbidden-403/forbidden-403.component.scss +0 -0
- /package/{src/lib → themes}/components/image/image.component.scss +0 -0
- /package/{src/lib → themes}/components/info-popover/info-popover.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-bool/input-bool.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-cep/input-cep.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-color/input-color.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-date/input-date.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-decimal/input-decimal.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-file/download-button/download-button.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-file/input-file.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-icon/input-icon.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-select/input-select.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-string/input-string.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-telefone/input-telefone.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/input-textarea/input-textarea.component.scss +0 -0
- /package/{src/lib → themes}/components/inputs/inputs.scss +0 -0
- /package/{src/lib → themes}/components/loading/loading.component.scss +0 -0
- /package/{src/lib → themes}/components/login/login-admin/login-admin.component.scss +0 -0
- /package/{src/lib → themes}/components/login/login.component.scss +0 -0
- /package/{src/lib → themes}/components/main-content/main-content.component.scss +0 -0
- /package/{src/lib → themes}/components/popover/sion-popover/sion-popover.component.scss +0 -0
- /package/{src/lib → themes}/components/sion-card/sion-card.component.scss +0 -0
- /package/{src/lib → themes}/components/stepper/step/step.component.scss +0 -0
- /package/{src/lib → themes}/components/stepper/stepper.component.scss +0 -0
- /package/{src/lib → themes}/components/tabs/tab/tab.component.scss +0 -0
- /package/{src/lib → themes}/components/tabs/tabs/tabs.component.scss +0 -0
- /package/{src/lib → themes}/components/text-tooltip/text-tooltip.component.scss +0 -0
- /package/{src/lib → themes}/components/tooltip/tooltip.component.scss +0 -0
- /package/{src/lib → themes}/styles/components.scss +0 -0
- /package/{src/lib → themes}/styles/core.styles.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-action-sheet.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-alert.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-button.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-card.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-content.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-datetime.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-item.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-list.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-modal.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-popover.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-progress-bar.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-searchbar.scss +0 -0
- /package/{src/lib → themes}/styles/ionic/ion-toast.scss +0 -0
- /package/{src/lib → themes}/styles/ionic.scss +0 -0
- /package/{src/lib → themes}/styles/login-default.scss +0 -0
- /package/{src/lib → themes}/styles/mixins.scss +0 -0
- /package/{src/lib → themes}/styles/styles.scss +0 -0
- /package/{src/lib → themes}/styles/translucid.scss +0 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { HttpClient } from "@angular/common/http";
|
|
2
|
+
import { catchError } from "rxjs";
|
|
3
|
+
import { ToastController } from "@ionic/angular";
|
|
4
|
+
import { Injectable } from "@angular/core";
|
|
5
|
+
import { ApiUrlProviderService } from "../services/web/api-url-provider.service";
|
|
6
|
+
import { GenericService } from "../services/generic.service";
|
|
7
|
+
import { AuthService } from "../services/auth.service";
|
|
8
|
+
import { Router } from "@angular/router";
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "../services/auth.service";
|
|
11
|
+
import * as i2 from "@angular/common/http";
|
|
12
|
+
import * as i3 from "../services/generic.service";
|
|
13
|
+
import * as i4 from "@ionic/angular";
|
|
14
|
+
import * as i5 from "../services/web/api-url-provider.service";
|
|
15
|
+
import * as i6 from "@angular/router";
|
|
16
|
+
export class ErrorInterceptor {
|
|
17
|
+
constructor(auth, http, genericService, toastController, apiUrlProviderService, router) {
|
|
18
|
+
this.auth = auth;
|
|
19
|
+
this.http = http;
|
|
20
|
+
this.genericService = genericService;
|
|
21
|
+
this.toastController = toastController;
|
|
22
|
+
this.apiUrlProviderService = apiUrlProviderService;
|
|
23
|
+
this.router = router;
|
|
24
|
+
this.localUserKey = "APLICATION_USER_KEY";
|
|
25
|
+
this.localAdminKey = "APLICATION_ADMIN_KEY";
|
|
26
|
+
}
|
|
27
|
+
intercept(req, next) {
|
|
28
|
+
return next.handle(req).pipe(catchError((error) => {
|
|
29
|
+
// if(error.status == 0){
|
|
30
|
+
// this.PresentErrorToast(error.error, req, error);
|
|
31
|
+
// }
|
|
32
|
+
if (error.status == 401) {
|
|
33
|
+
this.auth.Loggout();
|
|
34
|
+
this.router.navigate(['/login'], { queryParams: { returnUrl: window.location.pathname } });
|
|
35
|
+
}
|
|
36
|
+
else if (error.status == 403) {
|
|
37
|
+
this.router.navigate(['/403']);
|
|
38
|
+
}
|
|
39
|
+
else if (error.status != 404) {
|
|
40
|
+
this.PresentErrorToast(error.error, req, error);
|
|
41
|
+
}
|
|
42
|
+
throw error;
|
|
43
|
+
}));
|
|
44
|
+
}
|
|
45
|
+
async PresentErrorToast(json, request, fullError) {
|
|
46
|
+
var res = null;
|
|
47
|
+
try {
|
|
48
|
+
res = JSON.parse(json);
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
res = { Erro: "Não foi possivel converter o JSON de retorno!", Mensagem: "Ocorreu um erro inesperado!", _Info: "" };
|
|
52
|
+
}
|
|
53
|
+
res._Info = await this.GetInfo(request, fullError);
|
|
54
|
+
const toast = await this.toastController.create({
|
|
55
|
+
message: res.Mensagem,
|
|
56
|
+
duration: 5000,
|
|
57
|
+
icon: "bug",
|
|
58
|
+
position: 'bottom',
|
|
59
|
+
translucent: false,
|
|
60
|
+
cssClass: 'ionic-toast',
|
|
61
|
+
buttons: [
|
|
62
|
+
{
|
|
63
|
+
text: "Reportar Erro",
|
|
64
|
+
icon: "document",
|
|
65
|
+
side: "end",
|
|
66
|
+
handler: () => {
|
|
67
|
+
this.Report(res);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
]
|
|
71
|
+
});
|
|
72
|
+
await toast.present();
|
|
73
|
+
}
|
|
74
|
+
get fullRoute() {
|
|
75
|
+
return this.apiUrlProviderService.apiUrl + 'error';
|
|
76
|
+
}
|
|
77
|
+
Report(res) {
|
|
78
|
+
this.http.post(this.fullRoute, res).subscribe({
|
|
79
|
+
next: (res) => { this.genericService.PresentToast("Erro informado com sucesso!", "checkmark-circle"); },
|
|
80
|
+
error: (err) => { this.genericService.PresentToast("Ocorreu um erro inesperado no retorno do erro!"); }
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
async GetInfo(request, fullError) {
|
|
84
|
+
return JSON.stringify({
|
|
85
|
+
token: this.auth.LoadToken(),
|
|
86
|
+
tokenAdmin: this.auth.LoadTokenAdmin(),
|
|
87
|
+
currentUrl: window.location.href,
|
|
88
|
+
userId: (await this.auth.LoadToken()).id,
|
|
89
|
+
jwtAdmin: localStorage.getItem(this.localAdminKey),
|
|
90
|
+
jwtUser: localStorage.getItem(this.localUserKey),
|
|
91
|
+
request: request,
|
|
92
|
+
error: fullError,
|
|
93
|
+
apiUrl: this.apiUrlProviderService.apiUrl
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ErrorInterceptor, deps: [{ token: i1.AuthService }, { token: i2.HttpClient }, { token: i3.GenericService }, { token: i4.ToastController }, { token: i5.ApiUrlProviderService }, { token: i6.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
97
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ErrorInterceptor, providedIn: 'root' }); }
|
|
98
|
+
}
|
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ErrorInterceptor, decorators: [{
|
|
100
|
+
type: Injectable,
|
|
101
|
+
args: [{
|
|
102
|
+
providedIn: 'root'
|
|
103
|
+
}]
|
|
104
|
+
}], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.HttpClient }, { type: i3.GenericService }, { type: i4.ToastController }, { type: i5.ApiUrlProviderService }, { type: i6.Router }] });
|
|
105
|
+
class ApiErrorReturn {
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2d1YXJkcy9lcnJvci5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUEyRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNILE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQWtCLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7OztBQUt6RCxNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQ1UsSUFBaUIsRUFDakIsSUFBZ0IsRUFDaEIsY0FBOEIsRUFDOUIsZUFBZ0MsRUFDaEMscUJBQTRDLEVBQzVDLE1BQWM7UUFMZCxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLFdBQU0sR0FBTixNQUFNLENBQVE7UUF3QmhCLGlCQUFZLEdBQVcscUJBQXFCLENBQUM7UUFDN0Msa0JBQWEsR0FBVyxzQkFBc0IsQ0FBQztJQXhCcEQsQ0FBQztJQUVKLFNBQVMsQ0FBQyxHQUFxQixFQUFFLElBQWlCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENB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QyxDQUFDO0lBQ0wsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBWSxFQUFFLFNBQWM7UUFDeEMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ3BCLEtBQUssRUFBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNqQyxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdEMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSTtZQUNoQyxNQUFNLEVBQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQzVDLFFBQVEsRUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDcEQsT0FBTyxFQUFLLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztZQUNuRCxPQUFPLEVBQUssT0FBTztZQUNuQixLQUFLLEVBQU8sU0FBUztZQUNyQixNQUFNLEVBQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU07U0FDOUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0F2RlUsZ0JBQWdCO21IQUFoQixnQkFBZ0IsY0FGZixNQUFNOzs0RkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COztBQTJGRCxNQUFNLGNBQWM7Q0FJbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwRXJyb3JSZXNwb25zZSwgSHR0cEV2ZW50LCBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjYXRjaEVycm9yIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgVG9hc3RDb250cm9sbGVyIH0gZnJvbSBcIkBpb25pYy9hbmd1bGFyXCI7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuaW1wb3J0IHsgQXBpVXJsUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL3dlYi9hcGktdXJsLXByb3ZpZGVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgR2VuZXJpY1NlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvZ2VuZXJpYy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2F1dGguc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRXJyb3JJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhdXRoOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgZ2VuZXJpY1NlcnZpY2U6IEdlbmVyaWNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0b2FzdENvbnRyb2xsZXI6IFRvYXN0Q29udHJvbGxlcixcclxuICAgIHByaXZhdGUgYXBpVXJsUHJvdmlkZXJTZXJ2aWNlOiBBcGlVcmxQcm92aWRlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICkge31cclxuXHJcbiAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XHJcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKS5waXBlKFxyXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHsgXHJcbiAgICAgICAgLy8gaWYoZXJyb3Iuc3RhdHVzID09IDApe1xyXG4gICAgICAgIC8vICAgdGhpcy5QcmVzZW50RXJyb3JUb2FzdChlcnJvci5lcnJvciwgcmVxLCBlcnJvcik7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIGlmKGVycm9yLnN0YXR1cyA9PSA0MDEpeyBcclxuICAgICAgICAgIHRoaXMuYXV0aC5Mb2dnb3V0KCk7IFxyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvbG9naW4nXSwgeyBxdWVyeVBhcmFtczogeyByZXR1cm5Vcmw6IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSB9IH0pO1xyXG4gICAgICAgIH1lbHNlIFxyXG4gICAgICAgIGlmKGVycm9yLnN0YXR1cyA9PSA0MDMpe1xyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvNDAzJ10pXHJcbiAgICAgICAgfSBlbHNlXHJcbiAgICAgICAgaWYoZXJyb3Iuc3RhdHVzICE9IDQwNCl7IFxyXG4gICAgICAgICAgdGhpcy5QcmVzZW50RXJyb3JUb2FzdChlcnJvci5lcnJvciwgcmVxLCBlcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9jYWxVc2VyS2V5OiBzdHJpbmcgPSBcIkFQTElDQVRJT05fVVNFUl9LRVlcIjtcclxuICBwcml2YXRlIGxvY2FsQWRtaW5LZXk6IHN0cmluZyA9IFwiQVBMSUNBVElPTl9BRE1JTl9LRVlcIjtcclxuICBhc3luYyBQcmVzZW50RXJyb3JUb2FzdChqc29uOiBzdHJpbmcsIHJlcXVlc3Q6IGFueSwgZnVsbEVycm9yOiBhbnkpIHtcclxuICAgIHZhciByZXM6IEFwaUVycm9yUmV0dXJuID0gbnVsbDtcclxuICAgIHRyeXtcclxuICAgICAgcmVzID0gSlNPTi5wYXJzZShqc29uKSBhcyBBcGlFcnJvclJldHVyblxyXG4gICAgfWNhdGNoe1xyXG4gICAgICByZXMgPSB7IEVycm86IFwiTsOjbyBmb2kgcG9zc2l2ZWwgY29udmVydGVyIG8gSlNPTiBkZSByZXRvcm5vIVwiLCBNZW5zYWdlbTogXCJPY29ycmV1IHVtIGVycm8gaW5lc3BlcmFkbyFcIiwgX0luZm86IFwiXCIgfVxyXG4gICAgfVxyXG4gICAgcmVzLl9JbmZvID0gYXdhaXQgdGhpcy5HZXRJbmZvKHJlcXVlc3QsIGZ1bGxFcnJvcik7XHJcblxyXG4gICAgY29uc3QgdG9hc3QgPSBhd2FpdCB0aGlzLnRvYXN0Q29udHJvbGxlci5jcmVhdGUoe1xyXG4gICAgICBtZXNzYWdlOiByZXMuTWVuc2FnZW0sXHJcbiAgICAgIGR1cmF0aW9uOiA1MDAwLFxyXG4gICAgICBpY29uOiBcImJ1Z1wiLFxyXG4gICAgICBwb3NpdGlvbjogJ2JvdHRvbScsXHJcbiAgICAgIHRyYW5zbHVjZW50OiBmYWxzZSwgXHJcbiAgICAgIGNzc0NsYXNzOiAnaW9uaWMtdG9hc3QnLFxyXG4gICAgICBidXR0b25zOiBbXHJcbiAgICAgICAgeyBcclxuICAgICAgICAgIHRleHQ6IFwiUmVwb3J0YXIgRXJyb1wiLFxyXG4gICAgICAgICAgaWNvbjogXCJkb2N1bWVudFwiLFxyXG4gICAgICAgICAgc2lkZTogXCJlbmRcIixcclxuICAgICAgICAgIGhhbmRsZXI6ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5SZXBvcnQocmVzKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIF1cclxuICAgIH0pO1xyXG5cclxuICAgIGF3YWl0IHRvYXN0LnByZXNlbnQoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXQgZnVsbFJvdXRlKCk6IHN0cmluZ3tcclxuICAgIHJldHVybiB0aGlzLmFwaVVybFByb3ZpZGVyU2VydmljZS5hcGlVcmwgKyAnZXJyb3InXHJcbiAgfVxyXG4gIFJlcG9ydChyZXM6IEFwaUVycm9yUmV0dXJuKTogdm9pZHtcclxuICAgIHRoaXMuaHR0cC5wb3N0KHRoaXMuZnVsbFJvdXRlLCByZXMpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXMpID0+IHsgdGhpcy5nZW5lcmljU2VydmljZS5QcmVzZW50VG9hc3QoXCJFcnJvIGluZm9ybWFkbyBjb20gc3VjZXNzbyFcIiwgXCJjaGVja21hcmstY2lyY2xlXCIpOyB9LFxyXG4gICAgICBlcnJvcjooZXJyKSA9PiB7IHRoaXMuZ2VuZXJpY1NlcnZpY2UuUHJlc2VudFRvYXN0KFwiT2NvcnJldSB1bSBlcnJvIGluZXNwZXJhZG8gbm8gcmV0b3JubyBkbyBlcnJvIVwiKTsgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBHZXRJbmZvKHJlcXVlc3Q6IGFueSwgZnVsbEVycm9yOiBhbnkpOiBQcm9taXNlPHN0cmluZz57XHJcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICB0b2tlbiAgICAgOiB0aGlzLmF1dGguTG9hZFRva2VuKCksXHJcbiAgICAgIHRva2VuQWRtaW46IHRoaXMuYXV0aC5Mb2FkVG9rZW5BZG1pbigpLFxyXG4gICAgICBjdXJyZW50VXJsOiB3aW5kb3cubG9jYXRpb24uaHJlZixcclxuICAgICAgdXNlcklkICAgIDogKGF3YWl0IHRoaXMuYXV0aC5Mb2FkVG9rZW4oKSkuaWQsXHJcbiAgICAgIGp3dEFkbWluICA6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMubG9jYWxBZG1pbktleSksXHJcbiAgICAgIGp3dFVzZXIgICA6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMubG9jYWxVc2VyS2V5KSxcclxuICAgICAgcmVxdWVzdCAgIDogcmVxdWVzdCxcclxuICAgICAgZXJyb3IgICAgIDogZnVsbEVycm9yLFxyXG4gICAgICBhcGlVcmwgICAgOiB0aGlzLmFwaVVybFByb3ZpZGVyU2VydmljZS5hcGlVcmxcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuY2xhc3MgQXBpRXJyb3JSZXR1cm4ge1xyXG4gIE1lbnNhZ2VtOiBzdHJpbmc7XHJcbiAgRXJybzogc3RyaW5nO1xyXG4gIF9JbmZvOiBzdHJpbmc7XHJcbn0iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AuthService } from '../services/auth.service';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { from, switchMap } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../services/auth.service";
|
|
6
|
+
export class TokenInterceptor {
|
|
7
|
+
constructor(auth) {
|
|
8
|
+
this.auth = auth;
|
|
9
|
+
}
|
|
10
|
+
intercept(request, next) {
|
|
11
|
+
return from(this.auth.JWToken()).pipe(switchMap((authToken) => {
|
|
12
|
+
const authReq = request.clone({ setHeaders: { Authorization: `Bearer ${authToken}` } });
|
|
13
|
+
return next.handle(authReq);
|
|
14
|
+
}));
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TokenInterceptor, deps: [{ token: i1.AuthService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
17
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TokenInterceptor, providedIn: 'root' }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TokenInterceptor, decorators: [{
|
|
20
|
+
type: Injectable,
|
|
21
|
+
args: [{
|
|
22
|
+
providedIn: 'root'
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: () => [{ type: i1.AuthService }] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2d1YXJkcy90b2tlbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8zQyxPQUFPLEVBQXFDLElBQUksRUFBMkIsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFLbkcsTUFBTSxPQUFPLGdCQUFnQjtJQUUzQixZQUNVLElBQWlCO1FBQWpCLFNBQUksR0FBSixJQUFJLENBQWE7SUFDeEIsQ0FBQztJQUVKLFNBQVMsQ0FBQyxPQUE2QixFQUFFLElBQWlCO1FBQ3hELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ25DLFNBQVMsQ0FBQyxDQUFDLFNBQWlCLEVBQUUsRUFBRTtZQUM5QixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsYUFBYSxFQUFFLFVBQVUsU0FBUyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEYsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOytHQWJVLGdCQUFnQjttSEFBaEIsZ0JBQWdCLGNBRmYsTUFBTTs7NEZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEh0dHBSZXF1ZXN0LFxyXG4gIEh0dHBIYW5kbGVyLFxyXG4gIEh0dHBFdmVudCxcclxuICBIdHRwSW50ZXJjZXB0b3JcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIGZpcnN0LCBmaXJzdFZhbHVlRnJvbSwgZnJvbSwgbGFzdFZhbHVlRnJvbSwgbWVyZ2VNYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9rZW5JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhdXRoOiBBdXRoU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XHJcbiAgICByZXR1cm4gZnJvbSh0aGlzLmF1dGguSldUb2tlbigpKS5waXBlKCBcclxuICAgICAgc3dpdGNoTWFwKChhdXRoVG9rZW46IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGNvbnN0IGF1dGhSZXEgPSByZXF1ZXN0LmNsb25lKHsgc2V0SGVhZGVyczogeyBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7YXV0aFRva2VufWAgfSB9KTtcclxuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUoYXV0aFJlcSk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Public API Surface of @sapphire-ion/framework
|
|
3
|
+
*/
|
|
4
|
+
// [ 📁 Lib ]
|
|
5
|
+
//[ 📁 Classes ]
|
|
6
|
+
// [ 📁 Classes -> Comparison ]
|
|
7
|
+
export * from '../lib/classes/comparison/properties/bool-property';
|
|
8
|
+
export * from '../lib/classes/comparison/properties/date-property';
|
|
9
|
+
export * from '../lib/classes/comparison/properties/datetime-property';
|
|
10
|
+
export * from '../lib/classes/comparison/properties/decimal-property';
|
|
11
|
+
export * from '../lib/classes/comparison/properties/enum-property';
|
|
12
|
+
export * from '../lib/classes/comparison/properties/implicit-property';
|
|
13
|
+
export * from '../lib/classes/comparison/properties/int-property';
|
|
14
|
+
export * from '../lib/classes/comparison/properties/long-property';
|
|
15
|
+
export * from '../lib/classes/comparison/properties/string-property';
|
|
16
|
+
export * from '../lib/classes/comparison/properties/time-property';
|
|
17
|
+
export * from '../lib/classes/comparison/properties/bool-property';
|
|
18
|
+
export * from '../lib/classes/comparison/comparison';
|
|
19
|
+
export * from '../lib/classes/comparison/comparison-operator';
|
|
20
|
+
export * from '../lib/classes/comparison/comparison-value-type';
|
|
21
|
+
// [ 📁 Classes -> Filters ]
|
|
22
|
+
export * from '../lib/classes/filters/view-filtros';
|
|
23
|
+
// [ 📁 Classes -> Inputs ]
|
|
24
|
+
export * from '../lib/classes/inputs/table-field-form-builder';
|
|
25
|
+
export * from '../lib/classes/inputs/table-field';
|
|
26
|
+
// [ 📁 Classes -> Routes ]
|
|
27
|
+
export * from '../lib/classes/routes/default-routing-factory';
|
|
28
|
+
export * from '../lib/classes/routes/id-preloader-configuration';
|
|
29
|
+
export * from '../lib/classes/routes/route-data';
|
|
30
|
+
export * from '../lib/classes/credentials';
|
|
31
|
+
export * from '../lib/classes/environment';
|
|
32
|
+
export * from '../lib/classes/infinite-scroll';
|
|
33
|
+
export * from '../lib/classes/page-option';
|
|
34
|
+
//[ 📁 Components ]
|
|
35
|
+
//[ 📁 Components -> Carousel ]
|
|
36
|
+
// [ 📁 Components -> Carousel -> Carrousel-Image ]
|
|
37
|
+
export * from '../lib/components/carousel/carousel-image/carousel-image.component';
|
|
38
|
+
// [ 📁 Components -> Carousel -> Carrousel-Item ]
|
|
39
|
+
export * from '../lib/components/carousel/carousel-item/carousel-item.component';
|
|
40
|
+
export * from '../lib/components/carousel/carousel.component';
|
|
41
|
+
export * from '../lib/components/carousel/carousel.module';
|
|
42
|
+
export * from '../lib/components/carousel/i-carousel-item.component';
|
|
43
|
+
// [ 📁 Components -> Content-Block ]
|
|
44
|
+
export * from '../lib/components/content-block/content-block.component';
|
|
45
|
+
// [ 📁 Components -> Default ]
|
|
46
|
+
// [ 📁 Components -> Default -> default-list ]
|
|
47
|
+
// [ 📁 Components -> Default -> default-list -> header-list ]
|
|
48
|
+
export * from '../lib/components/default/default-list/header-list/header-list.component';
|
|
49
|
+
export * from '../lib/components/default/default-list/abstract-list';
|
|
50
|
+
export * from '../lib/components/default/default-list/default-list.component';
|
|
51
|
+
export * from '../lib/components/default/default-list/list';
|
|
52
|
+
// [ 📁 Components -> Default -> default-pagination ]
|
|
53
|
+
export * from '../lib/components/default/default-pagination/default-pagination.component';
|
|
54
|
+
// [ 📁 Components -> Default -> default-table ]
|
|
55
|
+
// [ 📁 Components -> Default -> default-table -> th-filter ]
|
|
56
|
+
export * from '../lib/components/default/default-table/th-filter/th-filter.component';
|
|
57
|
+
export * from '../lib/components/default/default-table/default-table.component';
|
|
58
|
+
// [ 📁 Components -> Default -> default-view ]
|
|
59
|
+
// [ 📁 Components -> Default -> default-view -> header-view ]
|
|
60
|
+
export * from '../lib/components/default/default-view/header-view/header-view.component';
|
|
61
|
+
export * from '../lib/components/default/default-view/abstract-view';
|
|
62
|
+
export * from '../lib/components/default/default-view/default-view.component';
|
|
63
|
+
export * from '../lib/components/default/default-view/view';
|
|
64
|
+
export * from '../lib/components/default/default.module';
|
|
65
|
+
// [ 📁 Components -> default-page ]
|
|
66
|
+
export * from '../lib/components/default-page/default.page';
|
|
67
|
+
// [ 📁 Components -> drag-drop-page ]
|
|
68
|
+
// [ 📁 Components -> drag-drop-page -> drag-drop-overlay ]
|
|
69
|
+
export * from '../lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component';
|
|
70
|
+
export * from '../lib/components/drag-drop-file/drag-drop-file.directive';
|
|
71
|
+
export * from '../lib/components/drag-drop-file/drag-drop-file.module';
|
|
72
|
+
// [ 📁 Components -> drawer ]
|
|
73
|
+
// [ 📁 Components -> drawer -> default-drawer-end ]
|
|
74
|
+
export * from '../lib/components/drawer/default-drawer-end/default-drawer-end.component';
|
|
75
|
+
// [ 📁 Components -> drawer -> drawer-group ]
|
|
76
|
+
export * from '../lib/components/drawer/drawer-group/drawer-group.component';
|
|
77
|
+
export * from '../lib/components/drawer/drawer.component';
|
|
78
|
+
export * from '../lib/components/drawer/menu';
|
|
79
|
+
// [ 📁 Components -> filter ]
|
|
80
|
+
export * from '../lib/components/filter/filter.component';
|
|
81
|
+
// [ 📁 Components -> http-responses-pages ]
|
|
82
|
+
// [ 📁 Components -> http-responses-pages -> forbidden-403 ]
|
|
83
|
+
export * from '../lib/components/http-responses-pages/forbidden-403/forbidden-403.component';
|
|
84
|
+
// [ 📁 Components -> image ]
|
|
85
|
+
export * from '../lib/components/image/image.component';
|
|
86
|
+
// [ 📁 Components -> info-popover ]
|
|
87
|
+
export * from '../lib/components/info-popover/info-popover.component';
|
|
88
|
+
// [ 📁 Components -> inputs ]
|
|
89
|
+
// [ 📁 Components -> inputs -> input-bool ]
|
|
90
|
+
export * from '../lib/components/inputs/input-bool/input-bool.component';
|
|
91
|
+
export * from '../lib/components/inputs/input-bool/input-bool.configuration';
|
|
92
|
+
// [ 📁 Components -> inputs -> input-cep ]
|
|
93
|
+
export * from '../lib/components/inputs/input-cep/input-cep.component';
|
|
94
|
+
export * from '../lib/components/inputs/input-cep/input-cep.configuration';
|
|
95
|
+
// [ 📁 Components -> inputs -> input-color ]
|
|
96
|
+
export * from '../lib/components/inputs/input-color/input-color.component';
|
|
97
|
+
// export * from '../lib/components/inputs/input-color/input-color.configuration';
|
|
98
|
+
// [ 📁 Components -> inputs -> input-cpf-cnpj ]
|
|
99
|
+
export * from '../lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component';
|
|
100
|
+
export * from '../lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.configuration';
|
|
101
|
+
// [ 📁 Components -> inputs -> input-date ]
|
|
102
|
+
export * from '../lib/components/inputs/input-date/input-date.component';
|
|
103
|
+
export * from '../lib/components/inputs/input-date/input-date.configuration';
|
|
104
|
+
// [ 📁 Components -> inputs -> input-decimal ]
|
|
105
|
+
export * from '../lib/components/inputs/input-decimal/input-decimal.component';
|
|
106
|
+
export * from '../lib/components/inputs/input-decimal/input-decimal.configuration';
|
|
107
|
+
// [ 📁 Components -> inputs -> input-file ]
|
|
108
|
+
export * from '../lib/components/inputs/input-file/download-button/download-button.component';
|
|
109
|
+
export * from '../lib/components/inputs/input-file/input-file.component';
|
|
110
|
+
export * from '../lib/components/inputs/input-file/input-file.configuration';
|
|
111
|
+
// [ 📁 Components -> inputs -> input-icon ]
|
|
112
|
+
export * from '../lib/components/inputs/input-icon/input-icon.component';
|
|
113
|
+
// [ 📁 Components -> inputs -> input-select ]
|
|
114
|
+
// [ 📁 Components -> inputs -> input-select -> directives ]
|
|
115
|
+
export * from '../lib/components/inputs/input-select/directives/sion-label-template.directive';
|
|
116
|
+
export * from '../lib/components/inputs/input-select/directives/sion-option-template.directive';
|
|
117
|
+
export * from '../lib/components/inputs/input-select/directives/sion-placeholder-template.directive';
|
|
118
|
+
export * from '../lib/components/inputs/input-select/input-select.component';
|
|
119
|
+
export * from '../lib/components/inputs/input-select/input.select.configuration';
|
|
120
|
+
// [ 📁 Components -> inputs -> input-string ]
|
|
121
|
+
export * from '../lib/components/inputs/input-string/input-string.component';
|
|
122
|
+
export * from '../lib/components/inputs/input-string/input-string.configuration';
|
|
123
|
+
// [ 📁 Components -> inputs -> input-telefone ]
|
|
124
|
+
export * from '../lib/components/inputs/input-telefone/input-telefone.component';
|
|
125
|
+
export * from '../lib/components/inputs/input-telefone/input-telefone.configuration';
|
|
126
|
+
// [ 📁 Components -> inputs -> input-textarea ]
|
|
127
|
+
export * from '../lib/components/inputs/input-textarea/input-textarea.component';
|
|
128
|
+
export * from '../lib/components/inputs/input-configuration';
|
|
129
|
+
export * from '../lib/components/inputs/input-default-configurations';
|
|
130
|
+
export * from '../lib/components/inputs/input-provider-factory';
|
|
131
|
+
export * from '../lib/components/inputs/input-type';
|
|
132
|
+
export * from '../lib/components/inputs/input-validators';
|
|
133
|
+
export * from '../lib/components/inputs/inputs.module';
|
|
134
|
+
// [ 📁 Components -> loading ]
|
|
135
|
+
export * from '../lib/components/loading/loading.component';
|
|
136
|
+
// [ 📁 Components -> login ]
|
|
137
|
+
// [ 📁 Components -> login -> login-admin ]
|
|
138
|
+
export * from '../lib/components/login/login-admin/login-admin.component';
|
|
139
|
+
export * from '../lib/components/login/login.component';
|
|
140
|
+
// [ 📁 Components -> main-content ]
|
|
141
|
+
export * from '../lib/components/main-content/main-content.component';
|
|
142
|
+
// [ 📁 Components -> popover ]
|
|
143
|
+
// [ 📁 Components -> sion-popover ]
|
|
144
|
+
export * from '../lib/components/popover/sion-popover/sion-popover.component';
|
|
145
|
+
export * from '../lib/components/popover/sion-popover.module';
|
|
146
|
+
// [ 📁 Components -> sion-card ]
|
|
147
|
+
export * from '../lib/components/sion-card/sion-card.component';
|
|
148
|
+
// [ 📁 Components -> stepper ]
|
|
149
|
+
// [ 📁 Components -> stepper -> step ]
|
|
150
|
+
export * from '../lib/components/stepper/step/step.component';
|
|
151
|
+
export * from '../lib/components/stepper/stepper.component';
|
|
152
|
+
export * from '../lib/components/stepper/stepper.module';
|
|
153
|
+
// [ 📁 Components -> tabs ]
|
|
154
|
+
// [ 📁 Components -> tabs -> tab ]
|
|
155
|
+
export * from '../lib/components/tabs/tab/tab.component';
|
|
156
|
+
// [ 📁 Components -> tabs -> tabs ]
|
|
157
|
+
export * from '../lib/components/tabs/tabs/tabs.component';
|
|
158
|
+
export * from '../lib/components/tabs/tabs.module';
|
|
159
|
+
// [ 📁 Components -> text-tooltip ]
|
|
160
|
+
export * from '../lib/components/text-tooltip/text-tooltip.component';
|
|
161
|
+
// [ 📁 Components -> tooltip ]
|
|
162
|
+
export * from '../lib/components/tooltip/tooltip.component';
|
|
163
|
+
//[ 📁 Directives ]
|
|
164
|
+
export * from '../lib/directives/ng-var.directive';
|
|
165
|
+
//[ 📁 Guards ]
|
|
166
|
+
export * from '../lib/guards/auth.guard';
|
|
167
|
+
export * from '../lib/guards/error.interceptor';
|
|
168
|
+
export * from '../lib/guards/token.interceptor';
|
|
169
|
+
// [ 📁 Pipes ]
|
|
170
|
+
export * from '../lib/pipes/secure.pipe';
|
|
171
|
+
// [ 📁 Services ]
|
|
172
|
+
// [ 📁 Services -> Route ]
|
|
173
|
+
export * from '../lib/services/route/route.provider.service';
|
|
174
|
+
export * from '../lib/services/route/route.cache.service';
|
|
175
|
+
// [ 📁 Services -> Web ]
|
|
176
|
+
export * from '../lib/services/web/api-url-provider.service';
|
|
177
|
+
export * from '../lib/services/web/http.ativo.service';
|
|
178
|
+
export * from '../lib/services/web/http.service';
|
|
179
|
+
export * from '../lib/services/web/storage.service';
|
|
180
|
+
export * from '../lib/services/auth.service';
|
|
181
|
+
// export * from '../lib/services/crypto.service';
|
|
182
|
+
export * from '../lib/services/environment.service';
|
|
183
|
+
export * from './services/generic.service';
|
|
184
|
+
export * from '../lib/services/usuario.service';
|
|
185
|
+
export * from '../lib/services/utils.service';
|
|
186
|
+
export * from '../lib/core.module';
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsYUFBYTtBQUNiLGdCQUFnQjtBQUNkLCtCQUErQjtBQUM3QixjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDckUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsaURBQWlELENBQUM7QUFDaEUsNEJBQTRCO0FBQzVCLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsMkJBQTJCO0FBQzNCLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCwyQkFBMkI7QUFDM0IsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsa0NBQWtDLENBQUM7QUFDbkQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxtQkFBbUI7QUFDakIsK0JBQStCO0FBQzdCLG1EQUFtRDtBQUNuRCxjQUFjLG9FQUFvRSxDQUFDO0FBQ25GLGtEQUFrRDtBQUNsRCxjQUFjLGtFQUFrRSxDQUFDO0FBQ25GLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLHFDQUFxQztBQUNyQyxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLCtCQUErQjtBQUM3QiwrQ0FBK0M7QUFDN0MsOERBQThEO0FBQzlELGNBQWMsMEVBQTBFLENBQUM7QUFDM0YsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQscURBQXFEO0FBQ3JELGNBQWMsMkVBQTJFLENBQUM7QUFDMUYsZ0RBQWdEO0FBQzlDLDZEQUE2RDtBQUM3RCxjQUFjLHVFQUF1RSxDQUFDO0FBQ3hGLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsK0NBQStDO0FBQzdDLDhEQUE4RDtBQUM5RCxjQUFjLDBFQUEwRSxDQUFDO0FBQzNGLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYywrREFBK0QsQ0FBQztBQUM5RSxjQUFjLDZDQUE2QyxDQUFDO0FBQzlELGNBQWMsMENBQTBDLENBQUM7QUFDekQsb0NBQW9DO0FBQ3BDLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsc0NBQXNDO0FBQ3BDLDJEQUEyRDtBQUMzRCxjQUFjLGdGQUFnRixDQUFDO0FBQ2pHLGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSw4QkFBOEI7QUFDNUIsb0RBQW9EO0FBQ3BELGNBQWMsMEVBQTBFLENBQUM7QUFDekYsOENBQThDO0FBQzlDLGNBQWMsOERBQThELENBQUM7QUFDL0UsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLDhCQUE4QjtBQUM5QixjQUFjLDJDQUEyQyxDQUFDO0FBQzFELDRDQUE0QztBQUMxQyw2REFBNkQ7QUFDN0QsY0FBYyw4RUFBOEUsQ0FBQztBQUMvRiw2QkFBNkI7QUFDN0IsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxvQ0FBb0M7QUFDcEMsY0FBYyx1REFBdUQsQ0FBQztBQUV0RSw4QkFBOEI7QUFDNUIsNENBQTRDO0FBQzVDLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSwyQ0FBMkM7QUFDM0MsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLDZDQUE2QztBQUM3QyxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGtGQUFrRjtBQUNsRixnREFBZ0Q7QUFDaEQsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLDRDQUE0QztBQUM1QyxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsOERBQThELENBQUM7QUFDN0UsK0NBQStDO0FBQy9DLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRiw0Q0FBNEM7QUFDNUMsY0FBYywrRUFBK0UsQ0FBQztBQUM5RixjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsOERBQThELENBQUM7QUFDN0UsNENBQTRDO0FBQzVDLGNBQWMsMERBQTBELENBQUM7QUFDekUsOENBQThDO0FBQzVDLDREQUE0RDtBQUM1RCxjQUFjLGdGQUFnRixDQUFDO0FBQy9GLGNBQWMsaUZBQWlGLENBQUM7QUFDaEcsY0FBYyxzRkFBc0YsQ0FBQztBQUN2RyxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsOENBQThDO0FBQzlDLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixnREFBZ0Q7QUFDaEQsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGdEQUFnRDtBQUNoRCxjQUFjLGtFQUFrRSxDQUFDO0FBQ25GLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELCtCQUErQjtBQUMvQixjQUFjLDZDQUE2QyxDQUFDO0FBQzVELDZCQUE2QjtBQUMzQiw0Q0FBNEM7QUFDNUMsY0FBYywyREFBMkQsQ0FBQztBQUM1RSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELG9DQUFvQztBQUNwQyxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLCtCQUErQjtBQUM3QixvQ0FBb0M7QUFDcEMsY0FBYywrREFBK0QsQ0FBQztBQUNoRixjQUFjLCtDQUErQyxDQUFDO0FBQzlELGlDQUFpQztBQUNqQyxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLCtCQUErQjtBQUM3Qix1Q0FBdUM7QUFDdkMsY0FBYywrQ0FBK0MsQ0FBQztBQUNoRSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMENBQTBDLENBQUM7QUFDekQsNEJBQTRCO0FBQzFCLG1DQUFtQztBQUNuQyxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELG9DQUFvQztBQUNwQyxjQUFjLDRDQUE0QyxDQUFDO0FBQzdELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsb0NBQW9DO0FBQ3BDLGNBQWMsdURBQXVELENBQUM7QUFDdEUsK0JBQStCO0FBQy9CLGNBQWMsNkNBQTZDLENBQUM7QUFDOUQsbUJBQW1CO0FBQ2pCLGNBQWMsb0NBQW9DLENBQUM7QUFDckQsZUFBZTtBQUNiLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2xELGVBQWU7QUFDYixjQUFjLDBCQUEwQixDQUFDO0FBQzNDLGtCQUFrQjtBQUNoQiwyQkFBMkI7QUFDekIsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzVELHlCQUF5QjtBQUN2QixjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3RELGNBQWMsOEJBQThCLENBQUM7QUFDN0Msa0RBQWtEO0FBQ2xELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsK0JBQStCLENBQUM7QUFFaEQsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBAc2FwcGhpcmUtaW9uL2ZyYW1ld29ya1xyXG4gKi9cclxuXHJcbi8vIFsg8J+TgSBMaWIgXVxyXG4vL1sg8J+TgSBDbGFzc2VzIF1cclxuICAvLyBbIPCfk4EgQ2xhc3NlcyAtPiBDb21wYXJpc29uIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2NvbXBhcmlzb24vcHJvcGVydGllcy9ib29sLXByb3BlcnR5JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2NvbXBhcmlzb24vcHJvcGVydGllcy9kYXRlLXByb3BlcnR5JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2NvbXBhcmlzb24vcHJvcGVydGllcy9kYXRldGltZS1wcm9wZXJ0eSc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY2xhc3Nlcy9jb21wYXJpc29uL3Byb3BlcnRpZXMvZGVjaW1hbC1wcm9wZXJ0eSc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY2xhc3Nlcy9jb21wYXJpc29uL3Byb3BlcnRpZXMvZW51bS1wcm9wZXJ0eSc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY2xhc3Nlcy9jb21wYXJpc29uL3Byb3BlcnRpZXMvaW1wbGljaXQtcHJvcGVydHknO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NsYXNzZXMvY29tcGFyaXNvbi9wcm9wZXJ0aWVzL2ludC1wcm9wZXJ0eSc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY2xhc3Nlcy9jb21wYXJpc29uL3Byb3BlcnRpZXMvbG9uZy1wcm9wZXJ0eSc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY2xhc3Nlcy9jb21wYXJpc29uL3Byb3BlcnRpZXMvc3RyaW5nLXByb3BlcnR5JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2NvbXBhcmlzb24vcHJvcGVydGllcy90aW1lLXByb3BlcnR5JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2NvbXBhcmlzb24vcHJvcGVydGllcy9ib29sLXByb3BlcnR5JztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY2xhc3Nlcy9jb21wYXJpc29uL2NvbXBhcmlzb24nO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2NvbXBhcmlzb24vY29tcGFyaXNvbi1vcGVyYXRvcic7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NsYXNzZXMvY29tcGFyaXNvbi9jb21wYXJpc29uLXZhbHVlLXR5cGUnO1xyXG4gIC8vIFsg8J+TgSBDbGFzc2VzIC0+IEZpbHRlcnMgXVxyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2ZpbHRlcnMvdmlldy1maWx0cm9zJztcclxuICAvLyBbIPCfk4EgQ2xhc3NlcyAtPiBJbnB1dHMgXVxyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2lucHV0cy90YWJsZS1maWVsZC1mb3JtLWJ1aWxkZXInO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2lucHV0cy90YWJsZS1maWVsZCc7XHJcbiAgLy8gWyDwn5OBIENsYXNzZXMgLT4gUm91dGVzIF1cclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY2xhc3Nlcy9yb3V0ZXMvZGVmYXVsdC1yb3V0aW5nLWZhY3RvcnknO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL3JvdXRlcy9pZC1wcmVsb2FkZXItY29uZmlndXJhdGlvbic7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NsYXNzZXMvcm91dGVzL3JvdXRlLWRhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuLi9saWIvY2xhc3Nlcy9jcmVkZW50aWFscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4uL2xpYi9jbGFzc2VzL2Vudmlyb25tZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi4vbGliL2NsYXNzZXMvaW5maW5pdGUtc2Nyb2xsJztcclxuZXhwb3J0ICogZnJvbSAnLi4vbGliL2NsYXNzZXMvcGFnZS1vcHRpb24nO1xyXG5cclxuLy9bIPCfk4EgQ29tcG9uZW50cyBdXHJcbiAgLy9bIPCfk4EgQ29tcG9uZW50cyAtPiBDYXJvdXNlbCBdXHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBDYXJvdXNlbCAtPiBDYXJyb3VzZWwtSW1hZ2UgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvY2Fyb3VzZWwvY2Fyb3VzZWwtaW1hZ2UvY2Fyb3VzZWwtaW1hZ2UuY29tcG9uZW50JztcclxuICAgIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IENhcm91c2VsIC0+IENhcnJvdXNlbC1JdGVtIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2Nhcm91c2VsL2Nhcm91c2VsLWl0ZW0vY2Fyb3VzZWwtaXRlbS5jb21wb25lbnQnO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudCc7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvY2Fyb3VzZWwvY2Fyb3VzZWwubW9kdWxlJztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9jYXJvdXNlbC9pLWNhcm91c2VsLWl0ZW0uY29tcG9uZW50JztcclxuICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBDb250ZW50LUJsb2NrIF1cclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9jb250ZW50LWJsb2NrL2NvbnRlbnQtYmxvY2suY29tcG9uZW50JztcclxuICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBEZWZhdWx0IF1cclxuICAgIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IERlZmF1bHQgLT4gZGVmYXVsdC1saXN0IF1cclxuICAgICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gRGVmYXVsdCAtPiBkZWZhdWx0LWxpc3QgLT4gaGVhZGVyLWxpc3QgXVxyXG4gICAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9kZWZhdWx0L2RlZmF1bHQtbGlzdC9oZWFkZXItbGlzdC9oZWFkZXItbGlzdC5jb21wb25lbnQnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvZGVmYXVsdC9kZWZhdWx0LWxpc3QvYWJzdHJhY3QtbGlzdCc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9kZWZhdWx0L2RlZmF1bHQtbGlzdC9kZWZhdWx0LWxpc3QuY29tcG9uZW50JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2RlZmF1bHQvZGVmYXVsdC1saXN0L2xpc3QnO1xyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gRGVmYXVsdCAtPiBkZWZhdWx0LXBhZ2luYXRpb24gXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvZGVmYXVsdC9kZWZhdWx0LXBhZ2luYXRpb24vZGVmYXVsdC1wYWdpbmF0aW9uLmNvbXBvbmVudCc7XHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBEZWZhdWx0IC0+IGRlZmF1bHQtdGFibGUgXVxyXG4gICAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBEZWZhdWx0IC0+IGRlZmF1bHQtdGFibGUgLT4gdGgtZmlsdGVyIF1cclxuICAgICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvZGVmYXVsdC9kZWZhdWx0LXRhYmxlL3RoLWZpbHRlci90aC1maWx0ZXIuY29tcG9uZW50JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2RlZmF1bHQvZGVmYXVsdC10YWJsZS9kZWZhdWx0LXRhYmxlLmNvbXBvbmVudCc7XHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBEZWZhdWx0IC0+IGRlZmF1bHQtdmlldyBdXHJcbiAgICAgIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IERlZmF1bHQgLT4gZGVmYXVsdC12aWV3IC0+IGhlYWRlci12aWV3IF1cclxuICAgICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvZGVmYXVsdC9kZWZhdWx0LXZpZXcvaGVhZGVyLXZpZXcvaGVhZGVyLXZpZXcuY29tcG9uZW50JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2RlZmF1bHQvZGVmYXVsdC12aWV3L2Fic3RyYWN0LXZpZXcnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvZGVmYXVsdC9kZWZhdWx0LXZpZXcvZGVmYXVsdC12aWV3LmNvbXBvbmVudCc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9kZWZhdWx0L2RlZmF1bHQtdmlldy92aWV3JztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9kZWZhdWx0L2RlZmF1bHQubW9kdWxlJztcclxuICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBkZWZhdWx0LXBhZ2UgXVxyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2RlZmF1bHQtcGFnZS9kZWZhdWx0LnBhZ2UnO1xyXG4gIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IGRyYWctZHJvcC1wYWdlIF1cclxuICAgIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IGRyYWctZHJvcC1wYWdlIC0+IGRyYWctZHJvcC1vdmVybGF5IF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2RyYWctZHJvcC1maWxlL2RyYWctZHJvcC1vdmVybGF5L2RyYWctZHJvcC1vdmVybGF5LmNvbXBvbmVudCc7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvZHJhZy1kcm9wLWZpbGUvZHJhZy1kcm9wLWZpbGUuZGlyZWN0aXZlJztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9kcmFnLWRyb3AtZmlsZS9kcmFnLWRyb3AtZmlsZS5tb2R1bGUnO1xyXG4gIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IGRyYXdlciBdXHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBkcmF3ZXIgLT4gZGVmYXVsdC1kcmF3ZXItZW5kIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2RyYXdlci9kZWZhdWx0LWRyYXdlci1lbmQvZGVmYXVsdC1kcmF3ZXItZW5kLmNvbXBvbmVudCc7XHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBkcmF3ZXIgLT4gZHJhd2VyLWdyb3VwIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2RyYXdlci9kcmF3ZXItZ3JvdXAvZHJhd2VyLWdyb3VwLmNvbXBvbmVudCc7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvZHJhd2VyL2RyYXdlci5jb21wb25lbnQnO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2RyYXdlci9tZW51JztcclxuICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBmaWx0ZXIgXVxyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcclxuICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBodHRwLXJlc3BvbnNlcy1wYWdlcyBdXHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBodHRwLXJlc3BvbnNlcy1wYWdlcyAtPiBmb3JiaWRkZW4tNDAzIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2h0dHAtcmVzcG9uc2VzLXBhZ2VzL2ZvcmJpZGRlbi00MDMvZm9yYmlkZGVuLTQwMy5jb21wb25lbnQnO1xyXG4gIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IGltYWdlIF1cclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbWFnZS9pbWFnZS5jb21wb25lbnQnO1xyXG4gIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IGluZm8tcG9wb3ZlciBdXHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5mby1wb3BvdmVyL2luZm8tcG9wb3Zlci5jb21wb25lbnQnO1xyXG5cclxuICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBpbnB1dHMgXVxyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gaW5wdXRzIC0+IGlucHV0LWJvb2wgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWJvb2wvaW5wdXQtYm9vbC5jb21wb25lbnQnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWJvb2wvaW5wdXQtYm9vbC5jb25maWd1cmF0aW9uJztcclxuICAgIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IGlucHV0cyAtPiBpbnB1dC1jZXAgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWNlcC9pbnB1dC1jZXAuY29tcG9uZW50JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1jZXAvaW5wdXQtY2VwLmNvbmZpZ3VyYXRpb24nO1xyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gaW5wdXRzIC0+IGlucHV0LWNvbG9yIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1jb2xvci9pbnB1dC1jb2xvci5jb21wb25lbnQnO1xyXG4gICAgLy8gZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWNvbG9yL2lucHV0LWNvbG9yLmNvbmZpZ3VyYXRpb24nO1xyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gaW5wdXRzIC0+IGlucHV0LWNwZi1jbnBqIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1jcGYtY25wai9pbnB1dC1jcGYtY25wai5jb21wb25lbnQnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWNwZi1jbnBqL2lucHV0LWNwZi1jbnBqLmNvbmZpZ3VyYXRpb24nO1xyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gaW5wdXRzIC0+IGlucHV0LWRhdGUgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWRhdGUvaW5wdXQtZGF0ZS5jb21wb25lbnQnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWRhdGUvaW5wdXQtZGF0ZS5jb25maWd1cmF0aW9uJztcclxuICAgIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IGlucHV0cyAtPiBpbnB1dC1kZWNpbWFsIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1kZWNpbWFsL2lucHV0LWRlY2ltYWwuY29tcG9uZW50JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1kZWNpbWFsL2lucHV0LWRlY2ltYWwuY29uZmlndXJhdGlvbic7XHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBpbnB1dHMgLT4gaW5wdXQtZmlsZSBdXHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbnB1dHMvaW5wdXQtZmlsZS9kb3dubG9hZC1idXR0b24vZG93bmxvYWQtYnV0dG9uLmNvbXBvbmVudCc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbnB1dHMvaW5wdXQtZmlsZS9pbnB1dC1maWxlLmNvbXBvbmVudCc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbnB1dHMvaW5wdXQtZmlsZS9pbnB1dC1maWxlLmNvbmZpZ3VyYXRpb24nO1xyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gaW5wdXRzIC0+IGlucHV0LWljb24gXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWljb24vaW5wdXQtaWNvbi5jb21wb25lbnQnO1xyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gaW5wdXRzIC0+IGlucHV0LXNlbGVjdCBdXHJcbiAgICAgIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IGlucHV0cyAtPiBpbnB1dC1zZWxlY3QgLT4gZGlyZWN0aXZlcyBdXHJcbiAgICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1zZWxlY3QvZGlyZWN0aXZlcy9zaW9uLWxhYmVsLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XHJcbiAgICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1zZWxlY3QvZGlyZWN0aXZlcy9zaW9uLW9wdGlvbi10ZW1wbGF0ZS5kaXJlY3RpdmUnO1xyXG4gICAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbnB1dHMvaW5wdXQtc2VsZWN0L2RpcmVjdGl2ZXMvc2lvbi1wbGFjZWhvbGRlci10ZW1wbGF0ZS5kaXJlY3RpdmUnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LXNlbGVjdC9pbnB1dC1zZWxlY3QuY29tcG9uZW50JztcclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1zZWxlY3QvaW5wdXQuc2VsZWN0LmNvbmZpZ3VyYXRpb24nO1xyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gaW5wdXRzIC0+IGlucHV0LXN0cmluZyBdXHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbnB1dHMvaW5wdXQtc3RyaW5nL2lucHV0LXN0cmluZy5jb21wb25lbnQnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LXN0cmluZy9pbnB1dC1zdHJpbmcuY29uZmlndXJhdGlvbic7XHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBpbnB1dHMgLT4gaW5wdXQtdGVsZWZvbmUgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LXRlbGVmb25lL2lucHV0LXRlbGVmb25lLmNvbXBvbmVudCc7XHJcbiAgICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbnB1dHMvaW5wdXQtdGVsZWZvbmUvaW5wdXQtdGVsZWZvbmUuY29uZmlndXJhdGlvbic7XHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBpbnB1dHMgLT4gaW5wdXQtdGV4dGFyZWEgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LXRleHRhcmVhL2lucHV0LXRleHRhcmVhLmNvbXBvbmVudCc7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWNvbmZpZ3VyYXRpb24nO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1kZWZhdWx0LWNvbmZpZ3VyYXRpb25zJztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbnB1dHMvaW5wdXQtcHJvdmlkZXItZmFjdG9yeSc7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LXR5cGUnO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC12YWxpZGF0b3JzJztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9pbnB1dHMvaW5wdXRzLm1vZHVsZSc7XHJcbiAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gbG9hZGluZyBdXHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvbG9hZGluZy9sb2FkaW5nLmNvbXBvbmVudCc7XHJcbiAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gbG9naW4gXVxyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gbG9naW4gLT4gbG9naW4tYWRtaW4gXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4tYWRtaW4vbG9naW4tYWRtaW4uY29tcG9uZW50JztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xyXG4gIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IG1haW4tY29udGVudCBdXHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvbWFpbi1jb250ZW50L21haW4tY29udGVudC5jb21wb25lbnQnO1xyXG4gIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IHBvcG92ZXIgXVxyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gc2lvbi1wb3BvdmVyIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL3BvcG92ZXIvc2lvbi1wb3BvdmVyL3Npb24tcG9wb3Zlci5jb21wb25lbnQnO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL3BvcG92ZXIvc2lvbi1wb3BvdmVyLm1vZHVsZSc7XHJcbiAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gc2lvbi1jYXJkIF1cclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9zaW9uLWNhcmQvc2lvbi1jYXJkLmNvbXBvbmVudCc7XHJcbiAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gc3RlcHBlciBdXHJcbiAgICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiBzdGVwcGVyIC0+IHN0ZXAgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvc3RlcHBlci9zdGVwL3N0ZXAuY29tcG9uZW50JztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50JztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy9zdGVwcGVyL3N0ZXBwZXIubW9kdWxlJztcclxuICAvLyBbIPCfk4EgQ29tcG9uZW50cyAtPiB0YWJzIF1cclxuICAgIC8vIFsg8J+TgSBDb21wb25lbnRzIC0+IHRhYnMgLT4gdGFiIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL3RhYnMvdGFiL3RhYi5jb21wb25lbnQnO1xyXG4gICAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gdGFicyAtPiB0YWJzIF1cclxuICAgIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9jb21wb25lbnRzL3RhYnMvdGFicy90YWJzLmNvbXBvbmVudCc7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvdGFicy90YWJzLm1vZHVsZSc7XHJcbiAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gdGV4dC10b29sdGlwIF1cclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvY29tcG9uZW50cy90ZXh0LXRvb2x0aXAvdGV4dC10b29sdGlwLmNvbXBvbmVudCc7XHJcbiAgLy8gWyDwn5OBIENvbXBvbmVudHMgLT4gdG9vbHRpcCBdXHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2NvbXBvbmVudHMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudCc7XHJcbi8vWyDwn5OBIERpcmVjdGl2ZXMgXVxyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9kaXJlY3RpdmVzL25nLXZhci5kaXJlY3RpdmUnO1xyXG4vL1sg8J+TgSBHdWFyZHMgXVxyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9ndWFyZHMvYXV0aC5ndWFyZCc7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2d1YXJkcy9lcnJvci5pbnRlcmNlcHRvcic7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL2d1YXJkcy90b2tlbi5pbnRlcmNlcHRvcic7XHJcbi8vIFsg8J+TgSBQaXBlcyBdXHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL3BpcGVzL3NlY3VyZS5waXBlJztcclxuLy8gWyDwn5OBIFNlcnZpY2VzIF1cclxuICAvLyBbIPCfk4EgU2VydmljZXMgLT4gUm91dGUgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL3NlcnZpY2VzL3JvdXRlL3JvdXRlLnByb3ZpZGVyLnNlcnZpY2UnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL3NlcnZpY2VzL3JvdXRlL3JvdXRlLmNhY2hlLnNlcnZpY2UnO1xyXG4gIC8vIFsg8J+TgSBTZXJ2aWNlcyAtPiBXZWIgXVxyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL3NlcnZpY2VzL3dlYi9hcGktdXJsLXByb3ZpZGVyLnNlcnZpY2UnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL3NlcnZpY2VzL3dlYi9odHRwLmF0aXZvLnNlcnZpY2UnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL3NlcnZpY2VzL3dlYi9odHRwLnNlcnZpY2UnO1xyXG4gICAgZXhwb3J0ICogZnJvbSAnLi4vbGliL3NlcnZpY2VzL3dlYi9zdG9yYWdlLnNlcnZpY2UnO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG4gIC8vIGV4cG9ydCAqIGZyb20gJy4uL2xpYi9zZXJ2aWNlcy9jcnlwdG8uc2VydmljZSc7XHJcbiAgZXhwb3J0ICogZnJvbSAnLi4vbGliL3NlcnZpY2VzL2Vudmlyb25tZW50LnNlcnZpY2UnO1xyXG4gIGV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZ2VuZXJpYy5zZXJ2aWNlJztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvc2VydmljZXMvdXN1YXJpby5zZXJ2aWNlJztcclxuICBleHBvcnQgKiBmcm9tICcuLi9saWIvc2VydmljZXMvdXRpbHMuc2VydmljZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuLi9saWIvY29yZS5tb2R1bGUnOyJdfQ==
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { HttpClient, HttpHeaders } from '@angular/common/http';
|
|
2
|
+
import { from, switchMap } from 'rxjs';
|
|
3
|
+
import { Pipe } from '@angular/core';
|
|
4
|
+
import { ApiUrlProviderService } from '../services/web/api-url-provider.service';
|
|
5
|
+
import { AuthService } from '../services/auth.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common/http";
|
|
8
|
+
import * as i2 from "../services/auth.service";
|
|
9
|
+
import * as i3 from "../services/web/api-url-provider.service";
|
|
10
|
+
export class SecurePipe {
|
|
11
|
+
constructor(http, auth, apiUrlProviderService) {
|
|
12
|
+
this.http = http;
|
|
13
|
+
this.auth = auth;
|
|
14
|
+
this.apiUrlProviderService = apiUrlProviderService;
|
|
15
|
+
}
|
|
16
|
+
transform(src) {
|
|
17
|
+
if (src.startsWith(this.apiUrlProviderService.apiUrl)) {
|
|
18
|
+
// Convert the Promise to an Observable and chain the HTTP request
|
|
19
|
+
return from(this.auth.LoadToken())
|
|
20
|
+
.pipe(switchMap((Bearer) => {
|
|
21
|
+
const headers = new HttpHeaders({ 'Authorization': `Bearer ${Bearer}` });
|
|
22
|
+
return this.http.get(src, { headers, responseType: 'blob' });
|
|
23
|
+
}), switchMap((blob) => {
|
|
24
|
+
const url = URL.createObjectURL(blob);
|
|
25
|
+
return from(Promise.resolve(url));
|
|
26
|
+
}));
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
return Promise.resolve(src);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SecurePipe, deps: [{ token: i1.HttpClient }, { token: i2.AuthService }, { token: i3.ApiUrlProviderService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
33
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: SecurePipe, isStandalone: true, name: "secure" }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SecurePipe, decorators: [{
|
|
36
|
+
type: Pipe,
|
|
37
|
+
args: [{
|
|
38
|
+
name: 'secure',
|
|
39
|
+
standalone: true,
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.AuthService }, { type: i3.ApiUrlProviderService }] });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3BpcGVzL3NlY3VyZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFjLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFcEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQU12RCxNQUFNLE9BQU8sVUFBVTtJQUVyQixZQUNVLElBQWdCLEVBQ2hCLElBQWlCLEVBQ2pCLHFCQUE0QztRQUY1QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLFNBQUksR0FBSixJQUFJLENBQWE7UUFDakIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtJQUNuRCxDQUFDO0lBRUosU0FBUyxDQUFDLEdBQVc7UUFDbkIsSUFBRyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsRUFBQyxDQUFDO1lBQ3BELGtFQUFrRTtZQUNsRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2lCQUNqQyxJQUFJLENBQ0gsU0FBUyxDQUFDLENBQUMsTUFBYyxFQUFFLEVBQUU7Z0JBQzNCLE1BQU0sT0FBTyxHQUFHLElBQUksV0FBVyxDQUFDLEVBQUUsZUFBZSxFQUFFLFVBQVUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN6RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztZQUMvRCxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsQ0FBQyxJQUFVLEVBQUUsRUFBRTtnQkFDdkIsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxDQUNILENBQUM7UUFDSixDQUFDO2FBQ0csQ0FBQztZQUNILE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QixDQUFDO0lBQ0gsQ0FBQzsrR0ExQlUsVUFBVTs2R0FBVixVQUFVOzs0RkFBVixVQUFVO2tCQUp0QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxRQUFRO29CQUNkLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmcm9tLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQXBpVXJsUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvd2ViL2FwaS11cmwtcHJvdmlkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnc2VjdXJlJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VjdXJlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgYXV0aDogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFwaVVybFByb3ZpZGVyU2VydmljZTogQXBpVXJsUHJvdmlkZXJTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICB0cmFuc2Zvcm0oc3JjOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4gfCBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgaWYoc3JjLnN0YXJ0c1dpdGgodGhpcy5hcGlVcmxQcm92aWRlclNlcnZpY2UuYXBpVXJsKSl7XHJcbiAgICAgIC8vIENvbnZlcnQgdGhlIFByb21pc2UgdG8gYW4gT2JzZXJ2YWJsZSBhbmQgY2hhaW4gdGhlIEhUVFAgcmVxdWVzdFxyXG4gICAgICByZXR1cm4gZnJvbSh0aGlzLmF1dGguTG9hZFRva2VuKCkpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcCgoQmVhcmVyOiBzdHJpbmcpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoeyAnQXV0aG9yaXphdGlvbic6IGBCZWFyZXIgJHtCZWFyZXJ9YCB9KTtcclxuICAgICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNyYywgeyBoZWFkZXJzLCByZXNwb25zZVR5cGU6ICdibG9iJyB9KTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBzd2l0Y2hNYXAoKGJsb2I6IEJsb2IpID0+IHtcclxuICAgICAgICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcbiAgICAgICAgICByZXR1cm4gZnJvbShQcm9taXNlLnJlc29sdmUodXJsKSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGVsc2V7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoc3JjKTtcclxuICAgIH1cclxuICB9XHJcbn0iXX0=
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { firstValueFrom } from 'rxjs';
|
|
2
|
+
import { NavController } from '@ionic/angular';
|
|
3
|
+
import { Preferences } from '@capacitor/preferences';
|
|
4
|
+
import { HttpClient } from '@angular/common/http';
|
|
5
|
+
import { Injectable } from '@angular/core';
|
|
6
|
+
import { jwtDecode } from 'jwt-decode';
|
|
7
|
+
import { ApiUrlProviderService } from '../services/web/api-url-provider.service';
|
|
8
|
+
import { EnvironmentService } from './environment.service';
|
|
9
|
+
import { Utils } from './utils.service';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/common/http";
|
|
12
|
+
import * as i2 from "@ionic/angular";
|
|
13
|
+
import * as i3 from "./environment.service";
|
|
14
|
+
import * as i4 from "../services/web/api-url-provider.service";
|
|
15
|
+
export class AuthService {
|
|
16
|
+
constructor(http, navController, coreService, apiUrlProviderService) {
|
|
17
|
+
this.http = http;
|
|
18
|
+
this.navController = navController;
|
|
19
|
+
this.coreService = coreService;
|
|
20
|
+
this.apiUrlProviderService = apiUrlProviderService;
|
|
21
|
+
this.localUserKey = this.coreService.environment.applicationName.toUpperCase() + "_USER_KEY";
|
|
22
|
+
this.localAdminKey = this.coreService.environment.applicationName.toUpperCase() + "_ADMIN_KEY";
|
|
23
|
+
this.currentToken = null;
|
|
24
|
+
this._isAdmin = false;
|
|
25
|
+
this.SetToken();
|
|
26
|
+
}
|
|
27
|
+
async SetToken() {
|
|
28
|
+
const Token = await this.LoadToken();
|
|
29
|
+
const TokenAdmin = await this.LoadTokenAdmin();
|
|
30
|
+
if (this.isTokenValid(Token)) {
|
|
31
|
+
this.currentToken = await this.JWToken();
|
|
32
|
+
}
|
|
33
|
+
if (TokenAdmin && this.isTokenValid(TokenAdmin)) {
|
|
34
|
+
this._isAdmin = true;
|
|
35
|
+
}
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
async Loggout() {
|
|
39
|
+
await Preferences.remove({ key: this.localUserKey });
|
|
40
|
+
await Preferences.remove({ key: this.localAdminKey });
|
|
41
|
+
this.currentToken = null;
|
|
42
|
+
this.navController.navigateRoot("login");
|
|
43
|
+
}
|
|
44
|
+
get isAdmin() { return this._isAdmin; }
|
|
45
|
+
async Login(credentials) {
|
|
46
|
+
try {
|
|
47
|
+
const JWToken = await firstValueFrom(this.ApiLogin(credentials));
|
|
48
|
+
await this.SaveToken(JWToken);
|
|
49
|
+
await this.SetToken();
|
|
50
|
+
return (jwtDecode(JWToken));
|
|
51
|
+
}
|
|
52
|
+
catch (Error) {
|
|
53
|
+
throw Error;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
async BypassLogin(id) {
|
|
57
|
+
try {
|
|
58
|
+
const JWToken = await firstValueFrom(this.ApiBypassLogin(id));
|
|
59
|
+
await this.SaveToken(JWToken);
|
|
60
|
+
await this.SetToken();
|
|
61
|
+
return (jwtDecode(JWToken));
|
|
62
|
+
}
|
|
63
|
+
catch (Error) {
|
|
64
|
+
throw Error;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
ApiLogin(credentials) {
|
|
68
|
+
return this.http.post(this.apiUrlProviderService.apiUrl + 'auth', credentials);
|
|
69
|
+
}
|
|
70
|
+
ApiBypassLogin(id) {
|
|
71
|
+
return this.http.get(this.apiUrlProviderService.apiUrl + `auth/${id}`);
|
|
72
|
+
}
|
|
73
|
+
async SaveToken(JWToken) {
|
|
74
|
+
if (jwtDecode(JWToken).id == 1) {
|
|
75
|
+
await Preferences.set({ key: this.localAdminKey, value: JWToken });
|
|
76
|
+
}
|
|
77
|
+
await Preferences.set({ key: this.localUserKey, value: JWToken });
|
|
78
|
+
}
|
|
79
|
+
async LoadToken() {
|
|
80
|
+
const JWToken = (await Preferences.get({ key: this.localUserKey })).value;
|
|
81
|
+
if (JWToken) {
|
|
82
|
+
const ParsedObject = jwtDecode(JWToken);
|
|
83
|
+
return ParsedObject;
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
async LoadTokenAdmin() {
|
|
90
|
+
const JWToken = (await Preferences.get({ key: this.localAdminKey })).value;
|
|
91
|
+
if (JWToken) {
|
|
92
|
+
const ParsedObject = jwtDecode(JWToken);
|
|
93
|
+
return ParsedObject;
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
async JWToken() {
|
|
100
|
+
const JWToken = (await Preferences.get({ key: this.localUserKey })).value;
|
|
101
|
+
return JWToken;
|
|
102
|
+
}
|
|
103
|
+
async GetBearer() {
|
|
104
|
+
return `Bearer ${await this.JWToken()}`;
|
|
105
|
+
}
|
|
106
|
+
isTokenValid(Token) {
|
|
107
|
+
if (!Token) {
|
|
108
|
+
return false;
|
|
109
|
+
}
|
|
110
|
+
else
|
|
111
|
+
return !(Utils.UNIXToDate(Token.exp) < new Date());
|
|
112
|
+
}
|
|
113
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: i2.NavController }, { token: i3.EnvironmentService }, { token: i4.ApiUrlProviderService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
114
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuthService, providedIn: 'root' }); }
|
|
115
|
+
}
|
|
116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuthService, decorators: [{
|
|
117
|
+
type: Injectable,
|
|
118
|
+
args: [{
|
|
119
|
+
providedIn: 'root'
|
|
120
|
+
}]
|
|
121
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.NavController }, { type: i3.EnvironmentService }, { type: i4.ApiUrlProviderService }] });
|
|
122
|
+
class Authentication {
|
|
123
|
+
constructor() {
|
|
124
|
+
this.Apelido = null;
|
|
125
|
+
this.Senha = null;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
class Token {
|
|
129
|
+
constructor() {
|
|
130
|
+
this.Acesso = 0;
|
|
131
|
+
this.Apelido = "";
|
|
132
|
+
this.Nome = "";
|
|
133
|
+
this.id = 0;
|
|
134
|
+
this.idEmpresa = 0;
|
|
135
|
+
}
|
|
136
|
+
patch(token) {
|
|
137
|
+
for (let prop of Object.getOwnPropertyNames(token)) {
|
|
138
|
+
if (Number((token[prop]))) {
|
|
139
|
+
this[prop] = Number(token[prop]);
|
|
140
|
+
continue;
|
|
141
|
+
}
|
|
142
|
+
this[prop] = token[prop];
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFdkMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFLeEMsTUFBTSxPQUFPLFdBQVc7SUFFdEIsWUFDVSxJQUFnQixFQUNoQixhQUE0QixFQUM1QixXQUErQixFQUMvQixxQkFBNEM7UUFINUMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUs5QyxpQkFBWSxHQUFpQixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLEdBQUcsV0FBVyxDQUFDO1FBQ3RHLGtCQUFhLEdBQWdCLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsR0FBRyxZQUFZLENBQUM7UUFDdkcsaUJBQVksR0FBa0IsSUFB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SyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBOYXZDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xyXG5pbXBvcnQgeyBQcmVmZXJlbmNlcyB9IGZyb20gJ0BjYXBhY2l0b3IvcHJlZmVyZW5jZXMnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGp3dERlY29kZSB9IGZyb20gJ2p3dC1kZWNvZGUnO1xyXG5cclxuaW1wb3J0IHsgQXBpVXJsUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvd2ViL2FwaS11cmwtcHJvdmlkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEVudmlyb25tZW50U2VydmljZSB9IGZyb20gJy4vZW52aXJvbm1lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLi91dGlscy5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dGhTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIG5hdkNvbnRyb2xsZXI6IE5hdkNvbnRyb2xsZXIsXHJcbiAgICBwcml2YXRlIGNvcmVTZXJ2aWNlOiBFbnZpcm9ubWVudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFwaVVybFByb3ZpZGVyU2VydmljZTogQXBpVXJsUHJvdmlkZXJTZXJ2aWNlIFxyXG4gICkge1xyXG4gICAgdGhpcy5TZXRUb2tlbigpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2NhbFVzZXJLZXkgICAgICA6IHN0cmluZyA9IHRoaXMuY29yZVNlcnZpY2UuZW52aXJvbm1lbnQuYXBwbGljYXRpb25OYW1lLnRvVXBwZXJDYXNlKCkgKyBcIl9VU0VSX0tFWVwiO1xyXG4gIHByaXZhdGUgbG9jYWxBZG1pbktleSAgICAgOiBzdHJpbmcgPSB0aGlzLmNvcmVTZXJ2aWNlLmVudmlyb25tZW50LmFwcGxpY2F0aW9uTmFtZS50b1VwcGVyQ2FzZSgpICsgXCJfQURNSU5fS0VZXCI7XHJcbiAgcHVibGljICBjdXJyZW50VG9rZW46IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cclxuICBhc3luYyBTZXRUb2tlbigpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IFRva2VuICAgICAgPSBhd2FpdCB0aGlzLkxvYWRUb2tlbigpO1xyXG4gICAgY29uc3QgVG9rZW5BZG1pbiA9IGF3YWl0IHRoaXMuTG9hZFRva2VuQWRtaW4oKTtcclxuICAgIGlmKHRoaXMuaXNUb2tlblZhbGlkKFRva2VuKSl7XHJcbiAgICAgIHRoaXMuY3VycmVudFRva2VuID0gYXdhaXQgdGhpcy5KV1Rva2VuKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoVG9rZW5BZG1pbiAmJiB0aGlzLmlzVG9rZW5WYWxpZChUb2tlbkFkbWluKSl7XHJcbiAgICAgIHRoaXMuX2lzQWRtaW4gPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIGFzeW5jIExvZ2dvdXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBhd2FpdCBQcmVmZXJlbmNlcy5yZW1vdmUoeyBrZXk6IHRoaXMubG9jYWxVc2VyS2V5IH0pO1xyXG4gICAgYXdhaXQgUHJlZmVyZW5jZXMucmVtb3ZlKHsga2V5OiB0aGlzLmxvY2FsQWRtaW5LZXkgfSk7XHJcbiAgICB0aGlzLmN1cnJlbnRUb2tlbiA9IG51bGw7XHJcbiAgICB0aGlzLm5hdkNvbnRyb2xsZXIubmF2aWdhdGVSb290KFwibG9naW5cIik7XHJcbiAgfVxyXG4gIFxyXG4gIF9pc0FkbWluOiBib29sZWFuID0gZmFsc2U7XHJcbiAgZ2V0IGlzQWRtaW4oKXsgcmV0dXJuIHRoaXMuX2lzQWRtaW47ICB9XHJcblxyXG4gIGFzeW5jIExvZ2luKGNyZWRlbnRpYWxzOiBBdXRoZW50aWNhdGlvbik6IFByb21pc2U8YW55PiB7XHJcbiAgICB0cnl7XHJcbiAgICAgIGNvbnN0IEpXVG9rZW4gPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLkFwaUxvZ2luKGNyZWRlbnRpYWxzKSk7XHJcbiAgICAgIGF3YWl0IHRoaXMuU2F2ZVRva2VuKEpXVG9rZW4pO1xyXG4gICAgICBhd2FpdCB0aGlzLlNldFRva2VuKCk7XHJcbiAgICAgIHJldHVybiAoand0RGVjb2RlKEpXVG9rZW4pKTtcclxuICAgIH1cclxuICAgIGNhdGNoIChFcnJvcil7XHJcbiAgICAgIHRocm93IEVycm9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgQnlwYXNzTG9naW4oaWQ6IG51bWJlcik6IFByb21pc2U8YW55PiB7XHJcbiAgICB0cnl7XHJcbiAgICAgIGNvbnN0IEpXVG9rZW4gPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLkFwaUJ5cGFzc0xvZ2luKGlkKSk7XHJcbiAgICAgIGF3YWl0IHRoaXMuU2F2ZVRva2VuKEpXVG9rZW4pO1xyXG4gICAgICBhd2FpdCB0aGlzLlNldFRva2VuKCk7XHJcbiAgICAgIHJldHVybiAoand0RGVjb2RlKEpXVG9rZW4pKTtcclxuICAgIH1cclxuICAgIGNhdGNoIChFcnJvcil7XHJcbiAgICAgIHRocm93IEVycm9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQXBpTG9naW4oY3JlZGVudGlhbHM6IEF1dGhlbnRpY2F0aW9uKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxzdHJpbmc+KHRoaXMuYXBpVXJsUHJvdmlkZXJTZXJ2aWNlLmFwaVVybCArICdhdXRoJywgY3JlZGVudGlhbHMpO1xyXG4gIH1cclxuICBBcGlCeXBhc3NMb2dpbihpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PHN0cmluZz4odGhpcy5hcGlVcmxQcm92aWRlclNlcnZpY2UuYXBpVXJsICsgYGF1dGgvJHtpZH1gKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIFNhdmVUb2tlbihKV1Rva2VuOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+e1xyXG4gICAgaWYoKGp3dERlY29kZShKV1Rva2VuKSBhcyBUb2tlbikuaWQgPT0gMSl7IFxyXG4gICAgICBhd2FpdCBQcmVmZXJlbmNlcy5zZXQoeyBrZXk6IHRoaXMubG9jYWxBZG1pbktleSwgdmFsdWU6IEpXVG9rZW59KTtcclxuICAgIH1cclxuICAgIGF3YWl0IFByZWZlcmVuY2VzLnNldCh7IGtleTogdGhpcy5sb2NhbFVzZXJLZXksIHZhbHVlOiBKV1Rva2VuIH0pXHJcbiAgfVxyXG5cclxuICBhc3luYyBMb2FkVG9rZW4oKTogUHJvbWlzZTxUb2tlbiB8IG51bGwgfCBhbnk+IHtcclxuICAgIGNvbnN0IEpXVG9rZW4gPSAoYXdhaXQgUHJlZmVyZW5jZXMuZ2V0KHsga2V5OiB0aGlzLmxvY2FsVXNlcktleX0pKS52YWx1ZTtcclxuICAgIGlmKEpXVG9rZW4pe1xyXG4gICAgICBjb25zdCBQYXJzZWRPYmplY3QgPSBqd3REZWNvZGUoSldUb2tlbik7XHJcbiAgICAgIHJldHVybiBQYXJzZWRPYmplY3Q7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGFzeW5jIExvYWRUb2tlbkFkbWluKCk6IFByb21pc2U8VG9rZW4gfCBudWxsIHwgYW55PiB7XHJcbiAgICBjb25zdCBKV1Rva2VuID0gKGF3YWl0IFByZWZlcmVuY2VzLmdldCh7IGtleTogdGhpcy5sb2NhbEFkbWluS2V5fSkpLnZhbHVlO1xyXG4gICAgaWYoSldUb2tlbil7XHJcbiAgICAgIGNvbnN0IFBhcnNlZE9iamVjdCA9IGp3dERlY29kZShKV1Rva2VuKTtcclxuICAgICAgcmV0dXJuIFBhcnNlZE9iamVjdDtcclxuICAgIH1lbHNle1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIEpXVG9rZW4oKTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICAgIGNvbnN0IEpXVG9rZW46IHN0cmluZyA9IChhd2FpdCBQcmVmZXJlbmNlcy5nZXQoeyBrZXk6IHRoaXMubG9jYWxVc2VyS2V5IH0pKS52YWx1ZTtcclxuICAgIHJldHVybiBKV1Rva2VuO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgR2V0QmVhcmVyKCk6IFByb21pc2U8c3RyaW5nPntcclxuICAgIHJldHVybiBgQmVhcmVyICR7YXdhaXQgdGhpcy5KV1Rva2VuKCl9YFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGlzVG9rZW5WYWxpZChUb2tlbjogYW55KTogYm9vbGVhbntcclxuICAgIGlmKCFUb2tlbil7IHJldHVybiBmYWxzZTsgfWVsc2VcclxuICAgIHJldHVybiAhKFV0aWxzLlVOSVhUb0RhdGUoVG9rZW4uZXhwKSA8IG5ldyBEYXRlKCkpXHJcbiAgfVxyXG59XHJcblxyXG5jbGFzcyBBdXRoZW50aWNhdGlvbntcclxuICBwdWJsaWMgQXBlbGlkbzogc3RyaW5nID0gbnVsbDtcclxuICBwdWJsaWMgU2VuaGEgIDogc3RyaW5nID0gbnVsbDtcclxufVxyXG5cclxuY2xhc3MgVG9rZW4ge1xyXG4gIFtwcm9wOiBzdHJpbmddOiBhbnk7XHJcbiAgQWNlc3NvICAgOiBudW1iZXIgPSAwO1xyXG4gIEFwZWxpZG8gIDogc3RyaW5nID0gXCJcIjtcclxuICBOb21lICAgICA6IHN0cmluZyA9IFwiXCI7XHJcbiAgaWQgICAgICAgOiBudW1iZXIgPSAwO1xyXG4gIGlkRW1wcmVzYTogbnVtYmVyID0gMDtcclxuICBcclxuICBjb25zdHJ1Y3Rvcigpe31cclxuICBcclxuICBwYXRjaCh0b2tlbjogVG9rZW4gfCBhbnkpOiB2b2lke1xyXG4gICAgZm9yKGxldCBwcm9wIG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHRva2VuKSl7XHJcbiAgICAgIGlmKE51bWJlcigodG9rZW5bcHJvcF0pKSl7XHJcbiAgICAgICAgdGhpc1twcm9wXSA9IE51bWJlcih0b2tlbltwcm9wXSk7IFxyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXNbcHJvcF0gPSB0b2tlbltwcm9wXTtcclxuICAgIH1cclxuICB9XHJcbn0iXX0=
|