@gnggln/ng-ui-system 1.0.0-alpha.2 → 1.0.0-alpha.21
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/accordion/entry-accordion.d.ts +4 -0
- package/accordion/index.d.ts +5 -0
- package/accordion/lib/components/accordion/accordion.component.d.ts +125 -0
- package/accordion/lib/components/accordion/accordion.types.d.ts +64 -0
- package/accordion/lib/components/accordion/index.d.ts +2 -0
- package/accordion/lib/core/types/index.d.ts +133 -0
- package/base-layout/entry-base-layout.d.ts +4 -0
- package/base-layout/index.d.ts +5 -0
- package/base-layout/lib/components/base-layout/base-layout.component.d.ts +108 -0
- package/base-layout/lib/components/base-layout/base-layout.types.d.ts +40 -0
- package/base-layout/lib/components/base-layout/index.d.ts +13 -0
- package/base-layout/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
- package/base-layout/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
- package/base-layout/lib/components/blackbox/blackbox.service.d.ts +144 -0
- package/base-layout/lib/components/blackbox/blackbox.types.d.ts +238 -0
- package/base-layout/lib/components/button/button-area.component.d.ts +93 -0
- package/base-layout/lib/components/button/button.component.d.ts +61 -0
- package/base-layout/lib/components/button/button.types.d.ts +75 -0
- package/base-layout/lib/components/page-header/breadcrumb.service.d.ts +96 -0
- package/base-layout/lib/components/page-header/page-header.component.d.ts +59 -0
- package/base-layout/lib/components/page-header/page-header.types.d.ts +96 -0
- package/base-layout/lib/core/types/index.d.ts +133 -0
- package/blackbox/entry-blackbox.d.ts +4 -0
- package/blackbox/index.d.ts +5 -0
- package/blackbox/lib/components/blackbox/blackbox-debugger.component.d.ts +80 -0
- package/blackbox/lib/components/blackbox/blackbox-debugger.service.d.ts +34 -0
- package/blackbox/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
- package/blackbox/lib/components/blackbox/blackbox-json-viewer.component.d.ts +18 -0
- package/blackbox/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
- package/blackbox/lib/components/blackbox/blackbox.interceptor.d.ts +38 -0
- package/blackbox/lib/components/blackbox/blackbox.service.d.ts +144 -0
- package/blackbox/lib/components/blackbox/blackbox.types.d.ts +238 -0
- package/blackbox/lib/components/blackbox/index.d.ts +23 -0
- package/blackbox/lib/components/blackbox/ui-track.directive.d.ts +20 -0
- package/blackbox/lib/components/button/button-area.component.d.ts +93 -0
- package/blackbox/lib/components/button/button.component.d.ts +61 -0
- package/blackbox/lib/components/button/button.types.d.ts +75 -0
- package/blackbox/lib/components/button/index.d.ts +15 -0
- package/blackbox/lib/components/modal/confirm-dialog.component.d.ts +46 -0
- package/blackbox/lib/components/modal/index.d.ts +4 -0
- package/blackbox/lib/components/modal/modal.component.d.ts +44 -0
- package/blackbox/lib/components/modal/modal.service.d.ts +93 -0
- package/blackbox/lib/components/modal/modal.types.d.ts +110 -0
- package/blackbox/lib/core/types/index.d.ts +133 -0
- package/button/entry-button.d.ts +4 -0
- package/button/index.d.ts +5 -0
- package/button/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
- package/button/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
- package/button/lib/components/blackbox/blackbox.service.d.ts +144 -0
- package/button/lib/components/blackbox/blackbox.types.d.ts +238 -0
- package/button/lib/components/button/button-area.component.d.ts +93 -0
- package/button/lib/components/button/button.component.d.ts +61 -0
- package/button/lib/components/button/button.types.d.ts +75 -0
- package/button/lib/components/button/index.d.ts +15 -0
- package/button/lib/core/types/index.d.ts +133 -0
- package/core/entry-core.d.ts +5 -0
- package/core/index.d.ts +5 -0
- package/core/lib/core/types/index.d.ts +133 -0
- package/core/lib/core/utils/index.d.ts +60 -0
- package/crud-table/entry-crud-table.d.ts +4 -0
- package/crud-table/index.d.ts +5 -0
- package/crud-table/lib/components/accordion/accordion.component.d.ts +125 -0
- package/crud-table/lib/components/accordion/accordion.types.d.ts +64 -0
- package/crud-table/lib/components/accordion/index.d.ts +2 -0
- package/crud-table/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
- package/crud-table/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
- package/crud-table/lib/components/blackbox/blackbox.service.d.ts +144 -0
- package/crud-table/lib/components/blackbox/blackbox.types.d.ts +238 -0
- package/crud-table/lib/components/button/button-area.component.d.ts +93 -0
- package/crud-table/lib/components/button/button.component.d.ts +61 -0
- package/crud-table/lib/components/button/button.types.d.ts +75 -0
- package/crud-table/lib/components/button/index.d.ts +15 -0
- package/crud-table/lib/components/crud-table/crud-table.component.d.ts +143 -0
- package/crud-table/lib/components/crud-table/crud-table.types.d.ts +207 -0
- package/crud-table/lib/components/crud-table/index.d.ts +15 -0
- package/crud-table/lib/components/form-builder/adapters/it-date-adapter.d.ts +32 -0
- package/crud-table/lib/components/form-builder/directives/currency-input.directive.d.ts +48 -0
- package/crud-table/lib/components/form-builder/form-builder.component.d.ts +279 -0
- package/crud-table/lib/components/form-builder/services/form-condition.service.d.ts +46 -0
- package/crud-table/lib/components/form-builder/services/form-error-state.matcher.d.ts +9 -0
- package/crud-table/lib/components/form-builder/services/form-field-error.service.d.ts +38 -0
- package/crud-table/lib/components/form-builder/services/form-validation.service.d.ts +63 -0
- package/crud-table/lib/components/form-builder/services/location.service.d.ts +83 -0
- package/crud-table/lib/components/form-builder/services/nominatim-geocoding.service.d.ts +37 -0
- package/crud-table/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +31 -0
- package/crud-table/lib/components/form-builder/sub-components/file-input/file-input.component.d.ts +41 -0
- package/crud-table/lib/components/form-builder/sub-components/form-fields/form-number-field.component.d.ts +42 -0
- package/crud-table/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.d.ts +45 -0
- package/crud-table/lib/components/form-builder/sub-components/form-fields/form-select-field.component.d.ts +44 -0
- package/crud-table/lib/components/form-builder/sub-components/form-fields/form-text-field.component.d.ts +62 -0
- package/crud-table/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.d.ts +39 -0
- package/crud-table/lib/components/form-builder/sub-components/form-fields/index.d.ts +5 -0
- package/crud-table/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.d.ts +84 -0
- package/crud-table/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.d.ts +145 -0
- package/crud-table/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.d.ts +108 -0
- package/crud-table/lib/components/form-builder/types/condition.types.d.ts +51 -0
- package/crud-table/lib/components/form-builder/types/field.types.d.ts +330 -0
- package/crud-table/lib/components/form-builder/types/geocoded-location.types.d.ts +116 -0
- package/crud-table/lib/components/form-builder/types/schema.types.d.ts +304 -0
- package/crud-table/lib/components/form-builder/types/territoriale.types.d.ts +170 -0
- package/crud-table/lib/components/form-builder/types/validation.types.d.ts +179 -0
- package/crud-table/lib/components/modal/confirm-dialog.component.d.ts +46 -0
- package/crud-table/lib/components/modal/modal.service.d.ts +93 -0
- package/crud-table/lib/components/modal/modal.types.d.ts +110 -0
- package/crud-table/lib/core/logging/logger.config.d.ts +18 -0
- package/crud-table/lib/core/logging/logger.service.d.ts +75 -0
- package/crud-table/lib/core/logging/logger.types.d.ts +70 -0
- package/crud-table/lib/core/types/index.d.ts +133 -0
- package/esm2022/accordion/entry-accordion.mjs +5 -0
- package/esm2022/accordion/gnggln-ng-ui-system-accordion.mjs +5 -0
- package/esm2022/accordion/lib/components/accordion/accordion.component.mjs +398 -0
- package/esm2022/accordion/lib/components/accordion/accordion.types.mjs +6 -0
- package/esm2022/accordion/lib/components/accordion/index.mjs +2 -0
- package/esm2022/accordion/lib/core/types/index.mjs +6 -0
- package/esm2022/base-layout/entry-base-layout.mjs +5 -0
- package/esm2022/base-layout/gnggln-ng-ui-system-base-layout.mjs +5 -0
- package/esm2022/base-layout/lib/components/base-layout/base-layout.component.mjs +272 -0
- package/esm2022/base-layout/lib/components/base-layout/base-layout.types.mjs +6 -0
- package/esm2022/base-layout/lib/components/base-layout/index.mjs +14 -0
- package/esm2022/base-layout/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
- package/esm2022/base-layout/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
- package/esm2022/base-layout/lib/components/blackbox/blackbox.service.mjs +323 -0
- package/esm2022/base-layout/lib/components/blackbox/blackbox.types.mjs +25 -0
- package/esm2022/base-layout/lib/components/button/button-area.component.mjs +210 -0
- package/esm2022/base-layout/lib/components/button/button.component.mjs +180 -0
- package/esm2022/base-layout/lib/components/button/button.types.mjs +6 -0
- package/esm2022/base-layout/lib/components/page-header/breadcrumb.service.mjs +243 -0
- package/esm2022/base-layout/lib/components/page-header/page-header.component.mjs +243 -0
- package/esm2022/base-layout/lib/components/page-header/page-header.types.mjs +21 -0
- package/esm2022/base-layout/lib/core/types/index.mjs +6 -0
- package/esm2022/blackbox/entry-blackbox.mjs +5 -0
- package/esm2022/blackbox/gnggln-ng-ui-system-blackbox.mjs +5 -0
- package/esm2022/blackbox/lib/components/blackbox/blackbox-debugger.component.mjs +904 -0
- package/esm2022/blackbox/lib/components/blackbox/blackbox-debugger.service.mjs +51 -0
- package/esm2022/blackbox/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
- package/esm2022/blackbox/lib/components/blackbox/blackbox-json-viewer.component.mjs +66 -0
- package/esm2022/blackbox/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
- package/esm2022/blackbox/lib/components/blackbox/blackbox.interceptor.mjs +135 -0
- package/esm2022/blackbox/lib/components/blackbox/blackbox.service.mjs +323 -0
- package/esm2022/blackbox/lib/components/blackbox/blackbox.types.mjs +25 -0
- package/esm2022/blackbox/lib/components/blackbox/index.mjs +27 -0
- package/esm2022/blackbox/lib/components/blackbox/ui-track.directive.mjs +69 -0
- package/esm2022/blackbox/lib/components/button/button-area.component.mjs +210 -0
- package/esm2022/blackbox/lib/components/button/button.component.mjs +180 -0
- package/esm2022/blackbox/lib/components/button/button.types.mjs +6 -0
- package/esm2022/blackbox/lib/components/button/index.mjs +16 -0
- package/esm2022/blackbox/lib/components/modal/confirm-dialog.component.mjs +151 -0
- package/esm2022/blackbox/lib/components/modal/index.mjs +4 -0
- package/esm2022/blackbox/lib/components/modal/modal.component.mjs +139 -0
- package/esm2022/blackbox/lib/components/modal/modal.service.mjs +197 -0
- package/esm2022/blackbox/lib/components/modal/modal.types.mjs +6 -0
- package/esm2022/blackbox/lib/core/types/index.mjs +6 -0
- package/esm2022/button/entry-button.mjs +5 -0
- package/esm2022/button/gnggln-ng-ui-system-button.mjs +5 -0
- package/esm2022/button/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
- package/esm2022/button/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
- package/esm2022/button/lib/components/blackbox/blackbox.service.mjs +323 -0
- package/esm2022/button/lib/components/blackbox/blackbox.types.mjs +25 -0
- package/esm2022/button/lib/components/button/button-area.component.mjs +210 -0
- package/esm2022/button/lib/components/button/button.component.mjs +180 -0
- package/esm2022/button/lib/components/button/button.types.mjs +6 -0
- package/esm2022/button/lib/components/button/index.mjs +16 -0
- package/esm2022/button/lib/core/types/index.mjs +6 -0
- package/esm2022/core/entry-core.mjs +6 -0
- package/esm2022/core/gnggln-ng-ui-system-core.mjs +5 -0
- package/esm2022/core/lib/core/types/index.mjs +6 -0
- package/esm2022/core/lib/core/utils/index.mjs +102 -0
- package/esm2022/crud-table/entry-crud-table.mjs +5 -0
- package/esm2022/crud-table/gnggln-ng-ui-system-crud-table.mjs +5 -0
- package/esm2022/crud-table/lib/components/accordion/accordion.component.mjs +398 -0
- package/esm2022/crud-table/lib/components/accordion/accordion.types.mjs +6 -0
- package/esm2022/crud-table/lib/components/accordion/index.mjs +2 -0
- package/esm2022/crud-table/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
- package/esm2022/crud-table/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
- package/esm2022/crud-table/lib/components/blackbox/blackbox.service.mjs +323 -0
- package/esm2022/crud-table/lib/components/blackbox/blackbox.types.mjs +25 -0
- package/esm2022/crud-table/lib/components/button/button-area.component.mjs +210 -0
- package/esm2022/crud-table/lib/components/button/button.component.mjs +180 -0
- package/esm2022/crud-table/lib/components/button/button.types.mjs +6 -0
- package/esm2022/crud-table/lib/components/button/index.mjs +16 -0
- package/esm2022/crud-table/lib/components/crud-table/crud-table.component.mjs +789 -0
- package/esm2022/crud-table/lib/components/crud-table/crud-table.types.mjs +6 -0
- package/esm2022/crud-table/lib/components/crud-table/index.mjs +16 -0
- package/esm2022/crud-table/lib/components/form-builder/adapters/it-date-adapter.mjs +82 -0
- package/esm2022/crud-table/lib/components/form-builder/directives/currency-input.directive.mjs +184 -0
- package/esm2022/crud-table/lib/components/form-builder/form-builder.component.mjs +1351 -0
- package/esm2022/crud-table/lib/components/form-builder/services/form-condition.service.mjs +132 -0
- package/esm2022/crud-table/lib/components/form-builder/services/form-error-state.matcher.mjs +10 -0
- package/esm2022/crud-table/lib/components/form-builder/services/form-field-error.service.mjs +103 -0
- package/esm2022/crud-table/lib/components/form-builder/services/form-validation.service.mjs +381 -0
- package/esm2022/crud-table/lib/components/form-builder/services/location.service.mjs +141 -0
- package/esm2022/crud-table/lib/components/form-builder/services/nominatim-geocoding.service.mjs +120 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +190 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/file-input/file-input.component.mjs +310 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-number-field.component.mjs +113 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.mjs +105 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-select-field.component.mjs +126 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-text-field.component.mjs +147 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.mjs +99 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/index.mjs +6 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.mjs +322 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.mjs +648 -0
- package/esm2022/crud-table/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +432 -0
- package/esm2022/crud-table/lib/components/form-builder/types/condition.types.mjs +6 -0
- package/esm2022/crud-table/lib/components/form-builder/types/field.types.mjs +6 -0
- package/esm2022/crud-table/lib/components/form-builder/types/geocoded-location.types.mjs +6 -0
- package/esm2022/crud-table/lib/components/form-builder/types/schema.types.mjs +6 -0
- package/esm2022/crud-table/lib/components/form-builder/types/territoriale.types.mjs +6 -0
- package/esm2022/crud-table/lib/components/form-builder/types/validation.types.mjs +10 -0
- package/esm2022/crud-table/lib/components/modal/confirm-dialog.component.mjs +151 -0
- package/esm2022/crud-table/lib/components/modal/modal.service.mjs +197 -0
- package/esm2022/crud-table/lib/components/modal/modal.types.mjs +6 -0
- package/esm2022/crud-table/lib/core/logging/logger.config.mjs +18 -0
- package/esm2022/crud-table/lib/core/logging/logger.service.mjs +295 -0
- package/esm2022/crud-table/lib/core/logging/logger.types.mjs +7 -0
- package/esm2022/crud-table/lib/core/types/index.mjs +6 -0
- package/esm2022/crud-table/lib/sources/location-data.opt.json +8942 -0
- package/esm2022/crud-table/lib/sources/nazioni.opt.json +215 -0
- package/esm2022/form-builder/entry-form-builder.mjs +5 -0
- package/esm2022/form-builder/gnggln-ng-ui-system-form-builder.mjs +5 -0
- package/esm2022/form-builder/lib/components/accordion/accordion.component.mjs +398 -0
- package/esm2022/form-builder/lib/components/accordion/accordion.types.mjs +6 -0
- package/esm2022/form-builder/lib/components/accordion/index.mjs +2 -0
- package/esm2022/form-builder/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
- package/esm2022/form-builder/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
- package/esm2022/form-builder/lib/components/blackbox/blackbox.service.mjs +323 -0
- package/esm2022/form-builder/lib/components/blackbox/blackbox.types.mjs +25 -0
- package/esm2022/form-builder/lib/components/button/button-area.component.mjs +210 -0
- package/esm2022/form-builder/lib/components/button/button.component.mjs +180 -0
- package/esm2022/form-builder/lib/components/button/button.types.mjs +6 -0
- package/esm2022/form-builder/lib/components/button/index.mjs +16 -0
- package/esm2022/form-builder/lib/components/form-builder/adapters/it-date-adapter.mjs +82 -0
- package/esm2022/form-builder/lib/components/form-builder/directives/currency-input.directive.mjs +184 -0
- package/esm2022/form-builder/lib/components/form-builder/form-builder.component.mjs +1351 -0
- package/esm2022/form-builder/lib/components/form-builder/form-wizard.component.mjs +1064 -0
- package/esm2022/form-builder/lib/components/form-builder/index.mjs +24 -0
- package/esm2022/form-builder/lib/components/form-builder/services/form-condition.service.mjs +132 -0
- package/esm2022/form-builder/lib/components/form-builder/services/form-error-state.matcher.mjs +10 -0
- package/esm2022/form-builder/lib/components/form-builder/services/form-field-error.service.mjs +103 -0
- package/esm2022/form-builder/lib/components/form-builder/services/form-validation.service.mjs +381 -0
- package/esm2022/form-builder/lib/components/form-builder/services/location.service.mjs +141 -0
- package/esm2022/form-builder/lib/components/form-builder/services/nominatim-geocoding.service.mjs +120 -0
- package/esm2022/form-builder/lib/components/form-builder/services/wizard-sync.service.mjs +84 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +190 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/file-input/file-input.component.mjs +310 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-number-field.component.mjs +113 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.mjs +105 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-select-field.component.mjs +126 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-text-field.component.mjs +147 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.mjs +99 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/index.mjs +6 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.mjs +322 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.mjs +648 -0
- package/esm2022/form-builder/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +432 -0
- package/esm2022/form-builder/lib/components/form-builder/types/condition.types.mjs +6 -0
- package/esm2022/form-builder/lib/components/form-builder/types/field.types.mjs +6 -0
- package/esm2022/form-builder/lib/components/form-builder/types/geocoded-location.types.mjs +6 -0
- package/esm2022/form-builder/lib/components/form-builder/types/index.mjs +3 -0
- package/esm2022/form-builder/lib/components/form-builder/types/schema.types.mjs +6 -0
- package/esm2022/form-builder/lib/components/form-builder/types/territoriale.types.mjs +6 -0
- package/esm2022/form-builder/lib/components/form-builder/types/validation.types.mjs +10 -0
- package/esm2022/form-builder/lib/core/logging/logger.config.mjs +18 -0
- package/esm2022/form-builder/lib/core/logging/logger.service.mjs +295 -0
- package/esm2022/form-builder/lib/core/logging/logger.types.mjs +7 -0
- package/esm2022/form-builder/lib/core/types/index.mjs +6 -0
- package/esm2022/form-builder/lib/sources/location-data.opt.json +8942 -0
- package/esm2022/form-builder/lib/sources/nazioni.opt.json +215 -0
- package/esm2022/form-builder-editor/entry-form-builder-editor.mjs +5 -0
- package/esm2022/form-builder-editor/gnggln-ng-ui-system-form-builder-editor.mjs +5 -0
- package/esm2022/form-builder-editor/lib/components/accordion/accordion.component.mjs +398 -0
- package/esm2022/form-builder-editor/lib/components/accordion/accordion.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/accordion/index.mjs +2 -0
- package/esm2022/form-builder-editor/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
- package/esm2022/form-builder-editor/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
- package/esm2022/form-builder-editor/lib/components/blackbox/blackbox.service.mjs +323 -0
- package/esm2022/form-builder-editor/lib/components/blackbox/blackbox.types.mjs +25 -0
- package/esm2022/form-builder-editor/lib/components/button/button-area.component.mjs +210 -0
- package/esm2022/form-builder-editor/lib/components/button/button.component.mjs +180 -0
- package/esm2022/form-builder-editor/lib/components/button/button.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/button/index.mjs +16 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/adapters/it-date-adapter.mjs +82 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/directives/currency-input.directive.mjs +184 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/form-builder.component.mjs +1351 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/services/form-condition.service.mjs +132 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/services/form-error-state.matcher.mjs +10 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/services/form-field-error.service.mjs +103 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/services/form-validation.service.mjs +381 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/services/location.service.mjs +141 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/services/nominatim-geocoding.service.mjs +120 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +190 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/file-input/file-input.component.mjs +310 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-number-field.component.mjs +113 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.mjs +105 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-select-field.component.mjs +126 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-text-field.component.mjs +147 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.mjs +99 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/index.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.mjs +322 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.mjs +648 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +432 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/types/condition.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/types/field.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/types/geocoded-location.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/types/index.mjs +3 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/types/schema.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/types/territoriale.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/form-builder/types/validation.types.mjs +10 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/form-builder-editor.component.mjs +730 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/form-builder-editor.service.mjs +56 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/index.mjs +23 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/presets/editor-presets.mjs +395 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/services/editor-persistence.service.mjs +190 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/services/editor-state.service.mjs +324 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/services/field-factory.service.mjs +188 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/condition-editor/condition-editor.component.mjs +667 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/editor-toolbar/editor-toolbar.component.mjs +317 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/field-config-panel/field-config-panel.component.mjs +611 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/field-palette/field-palette.component.mjs +267 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/form-values-panel/form-values-panel.component.mjs +276 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/options-editor/options-editor.component.mjs +323 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/preview-container/preview-container.component.mjs +238 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/section-editor/section-editor.component.mjs +473 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/validation-editor/validation-editor.component.mjs +473 -0
- package/esm2022/form-builder-editor/lib/components/form-builder-editor/types/editor.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/components/modal/confirm-dialog.component.mjs +151 -0
- package/esm2022/form-builder-editor/lib/components/modal/index.mjs +4 -0
- package/esm2022/form-builder-editor/lib/components/modal/modal.component.mjs +139 -0
- package/esm2022/form-builder-editor/lib/components/modal/modal.service.mjs +197 -0
- package/esm2022/form-builder-editor/lib/components/modal/modal.types.mjs +6 -0
- package/esm2022/form-builder-editor/lib/core/logging/logger.config.mjs +18 -0
- package/esm2022/form-builder-editor/lib/core/logging/logger.service.mjs +295 -0
- package/esm2022/form-builder-editor/lib/core/logging/logger.types.mjs +7 -0
- package/esm2022/form-builder-editor/lib/core/types/index.mjs +6 -0
- package/esm2022/form-builder-editor/lib/sources/location-data.opt.json +8942 -0
- package/esm2022/form-builder-editor/lib/sources/nazioni.opt.json +215 -0
- package/esm2022/http/entry-http.mjs +5 -0
- package/esm2022/http/gnggln-ng-ui-system-http.mjs +5 -0
- package/esm2022/http/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
- package/esm2022/http/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
- package/esm2022/http/lib/components/blackbox/blackbox.service.mjs +323 -0
- package/esm2022/http/lib/components/blackbox/blackbox.types.mjs +25 -0
- package/esm2022/http/lib/components/http/http-message.handler.mjs +143 -0
- package/esm2022/http/lib/components/http/http.service.mjs +228 -0
- package/esm2022/http/lib/components/http/http.tokens.mjs +29 -0
- package/esm2022/http/lib/components/http/http.types.mjs +6 -0
- package/esm2022/http/lib/components/http/index.mjs +19 -0
- package/esm2022/http/lib/components/layout-builder/layout-builder.types.mjs +9 -0
- package/esm2022/http/lib/components/layout-builder/layout.service.mjs +239 -0
- package/esm2022/http/lib/components/toast/toast-container.component.mjs +80 -0
- package/esm2022/http/lib/components/toast/toast.component.mjs +151 -0
- package/esm2022/http/lib/components/toast/toast.service.mjs +156 -0
- package/esm2022/http/lib/components/toast/toast.types.mjs +12 -0
- package/esm2022/http/lib/core/types/index.mjs +6 -0
- package/esm2022/http/lib/core/utils/index.mjs +102 -0
- package/esm2022/layout-builder/entry-layout-builder.mjs +5 -0
- package/esm2022/layout-builder/gnggln-ng-ui-system-layout-builder.mjs +5 -0
- package/esm2022/layout-builder/lib/components/layout-builder/index.mjs +18 -0
- package/esm2022/layout-builder/lib/components/layout-builder/layout-builder.component.mjs +1804 -0
- package/esm2022/layout-builder/lib/components/layout-builder/layout-builder.types.mjs +9 -0
- package/esm2022/layout-builder/lib/components/layout-builder/layout.service.mjs +239 -0
- package/esm2022/layout-builder/lib/core/types/index.mjs +6 -0
- package/esm2022/lib/components/accordion/accordion.component.mjs +106 -61
- package/esm2022/lib/components/accordion/accordion.types.mjs +1 -1
- package/esm2022/lib/components/base-layout/base-layout.component.mjs +88 -34
- package/esm2022/lib/components/base-layout/base-layout.types.mjs +1 -1
- package/esm2022/lib/components/base-layout/index.mjs +1 -1
- package/esm2022/lib/components/blackbox/blackbox-debugger.component.mjs +904 -0
- package/esm2022/lib/components/blackbox/blackbox-debugger.service.mjs +51 -0
- package/esm2022/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
- package/esm2022/lib/components/blackbox/blackbox-json-viewer.component.mjs +66 -0
- package/esm2022/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
- package/esm2022/lib/components/blackbox/blackbox.interceptor.mjs +135 -0
- package/esm2022/lib/components/blackbox/blackbox.service.mjs +323 -0
- package/esm2022/lib/components/blackbox/blackbox.types.mjs +25 -0
- package/esm2022/lib/components/blackbox/index.mjs +27 -0
- package/esm2022/lib/components/blackbox/ui-track.directive.mjs +69 -0
- package/esm2022/lib/components/button/button-area.component.mjs +16 -2
- package/esm2022/lib/components/button/button.component.mjs +23 -7
- package/esm2022/lib/components/button/button.types.mjs +1 -1
- package/esm2022/lib/components/crud-table/crud-table.component.mjs +14 -14
- package/esm2022/lib/components/form-builder/form-builder.component.mjs +710 -183
- package/esm2022/lib/components/form-builder/form-wizard.component.mjs +789 -235
- package/esm2022/lib/components/form-builder/index.mjs +7 -2
- package/esm2022/lib/components/form-builder/services/form-error-state.matcher.mjs +10 -0
- package/esm2022/lib/components/form-builder/services/form-field-error.service.mjs +103 -0
- package/esm2022/lib/components/form-builder/services/location.service.mjs +4 -3
- package/esm2022/lib/components/form-builder/services/nominatim-geocoding.service.mjs +120 -0
- package/esm2022/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +142 -113
- package/esm2022/lib/components/form-builder/sub-components/form-fields/form-number-field.component.mjs +113 -0
- package/esm2022/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.mjs +105 -0
- package/esm2022/lib/components/form-builder/sub-components/form-fields/form-select-field.component.mjs +126 -0
- package/esm2022/lib/components/form-builder/sub-components/form-fields/form-text-field.component.mjs +147 -0
- package/esm2022/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.mjs +99 -0
- package/esm2022/lib/components/form-builder/sub-components/form-fields/index.mjs +6 -0
- package/esm2022/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.mjs +322 -0
- package/esm2022/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +3 -3
- package/esm2022/lib/components/form-builder/types/field.types.mjs +1 -1
- package/esm2022/lib/components/form-builder/types/geocoded-location.types.mjs +6 -0
- package/esm2022/lib/components/form-builder/types/index.mjs +3 -2
- package/esm2022/lib/components/form-builder/types/schema.types.mjs +1 -1
- package/esm2022/lib/components/form-builder/types/validation.types.mjs +6 -2
- package/esm2022/lib/components/form-builder-editor/form-builder-editor.component.mjs +3 -3
- package/esm2022/lib/components/form-builder-editor/index.mjs +3 -1
- package/esm2022/lib/components/form-builder-editor/presets/editor-presets.mjs +395 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/preview-container/preview-container.component.mjs +2 -2
- package/esm2022/lib/components/form-builder-editor/sub-components/section-editor/section-editor.component.mjs +2 -1
- package/esm2022/lib/components/http/http-message.handler.mjs +143 -0
- package/esm2022/lib/components/http/http.service.mjs +228 -0
- package/esm2022/lib/components/http/http.tokens.mjs +29 -0
- package/esm2022/lib/components/http/http.types.mjs +6 -0
- package/esm2022/lib/components/http/index.mjs +19 -0
- package/esm2022/lib/components/layout-builder/layout-builder.component.mjs +27 -15
- package/esm2022/lib/components/modal/confirm-dialog.component.mjs +3 -3
- package/esm2022/lib/components/modal/modal.service.mjs +5 -2
- package/esm2022/lib/components/page-header/breadcrumb.service.mjs +5 -4
- package/esm2022/lib/components/table/paginated-table.component.mjs +17 -3
- package/esm2022/lib/components/table/table.types.mjs +1 -1
- package/esm2022/lib/components/toast/index.mjs +18 -0
- package/esm2022/lib/components/toast/toast-container.component.mjs +80 -0
- package/esm2022/lib/components/toast/toast.component.mjs +151 -0
- package/esm2022/lib/components/toast/toast.service.mjs +156 -0
- package/esm2022/lib/components/toast/toast.types.mjs +12 -0
- package/esm2022/lib/core/logging/index.mjs +10 -0
- package/esm2022/lib/core/logging/logger.config.mjs +18 -0
- package/esm2022/lib/core/logging/logger.service.mjs +295 -0
- package/esm2022/lib/core/logging/logger.types.mjs +7 -0
- package/esm2022/lib/core/types/index.mjs +1 -1
- package/esm2022/lib/core/utils/index.mjs +50 -1
- package/esm2022/lib/version/ng-ui-system-version.mjs +12 -0
- package/esm2022/modal/entry-modal.mjs +5 -0
- package/esm2022/modal/gnggln-ng-ui-system-modal.mjs +5 -0
- package/esm2022/modal/lib/components/button/button.component.mjs +180 -0
- package/esm2022/modal/lib/components/button/button.types.mjs +6 -0
- package/esm2022/modal/lib/components/modal/confirm-dialog.component.mjs +151 -0
- package/esm2022/modal/lib/components/modal/index.mjs +4 -0
- package/esm2022/modal/lib/components/modal/modal.component.mjs +139 -0
- package/esm2022/modal/lib/components/modal/modal.service.mjs +197 -0
- package/esm2022/modal/lib/components/modal/modal.types.mjs +6 -0
- package/esm2022/modal/lib/core/types/index.mjs +6 -0
- package/esm2022/page-header/entry-page-header.mjs +5 -0
- package/esm2022/page-header/gnggln-ng-ui-system-page-header.mjs +5 -0
- package/esm2022/page-header/lib/components/page-header/breadcrumb.service.mjs +243 -0
- package/esm2022/page-header/lib/components/page-header/index.mjs +20 -0
- package/esm2022/page-header/lib/components/page-header/page-header.component.mjs +243 -0
- package/esm2022/page-header/lib/components/page-header/page-header.types.mjs +21 -0
- package/esm2022/public-api.mjs +17 -8
- package/esm2022/table/entry-table.mjs +5 -0
- package/esm2022/table/gnggln-ng-ui-system-table.mjs +5 -0
- package/esm2022/table/lib/components/table/index.mjs +2 -0
- package/esm2022/table/lib/components/table/paginated-table.component.mjs +421 -0
- package/esm2022/table/lib/components/table/table.types.mjs +6 -0
- package/esm2022/table/lib/core/utils/index.mjs +102 -0
- package/esm2022/toast/entry-toast.mjs +5 -0
- package/esm2022/toast/gnggln-ng-ui-system-toast.mjs +5 -0
- package/esm2022/toast/lib/components/toast/index.mjs +18 -0
- package/esm2022/toast/lib/components/toast/toast-container.component.mjs +80 -0
- package/esm2022/toast/lib/components/toast/toast.component.mjs +151 -0
- package/esm2022/toast/lib/components/toast/toast.service.mjs +156 -0
- package/esm2022/toast/lib/components/toast/toast.types.mjs +12 -0
- package/esm2022/toast/lib/core/types/index.mjs +6 -0
- package/esm2022/toast/lib/core/utils/index.mjs +102 -0
- package/fesm2022/gnggln-ng-ui-system-accordion.mjs +409 -0
- package/fesm2022/gnggln-ng-ui-system-accordion.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-base-layout.mjs +1905 -0
- package/fesm2022/gnggln-ng-ui-system-base-layout.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-blackbox.mjs +2829 -0
- package/fesm2022/gnggln-ng-ui-system-blackbox.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-button.mjs +1148 -0
- package/fesm2022/gnggln-ng-ui-system-button.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-core.mjs +117 -0
- package/fesm2022/gnggln-ng-ui-system-core.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-crud-table.mjs +49600 -0
- package/fesm2022/gnggln-ng-ui-system-crud-table.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-form-builder-editor.mjs +54332 -0
- package/fesm2022/gnggln-ng-ui-system-form-builder-editor.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-form-builder.mjs +49609 -0
- package/fesm2022/gnggln-ng-ui-system-form-builder.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-http.mjs +1878 -0
- package/fesm2022/gnggln-ng-ui-system-http.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-layout-builder.mjs +2064 -0
- package/fesm2022/gnggln-ng-ui-system-layout-builder.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-modal.mjs +664 -0
- package/fesm2022/gnggln-ng-ui-system-modal.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-page-header.mjs +526 -0
- package/fesm2022/gnggln-ng-ui-system-page-header.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-table.mjs +533 -0
- package/fesm2022/gnggln-ng-ui-system-table.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system-toast.mjs +516 -0
- package/fesm2022/gnggln-ng-ui-system-toast.mjs.map +1 -0
- package/fesm2022/gnggln-ng-ui-system.mjs +10068 -4234
- package/fesm2022/gnggln-ng-ui-system.mjs.map +1 -1
- package/form-builder/entry-form-builder.d.ts +4 -0
- package/form-builder/index.d.ts +5 -0
- package/form-builder/lib/components/accordion/accordion.component.d.ts +125 -0
- package/form-builder/lib/components/accordion/accordion.types.d.ts +64 -0
- package/form-builder/lib/components/accordion/index.d.ts +2 -0
- package/form-builder/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
- package/form-builder/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
- package/form-builder/lib/components/blackbox/blackbox.service.d.ts +144 -0
- package/form-builder/lib/components/blackbox/blackbox.types.d.ts +238 -0
- package/form-builder/lib/components/button/button-area.component.d.ts +93 -0
- package/form-builder/lib/components/button/button.component.d.ts +61 -0
- package/form-builder/lib/components/button/button.types.d.ts +75 -0
- package/form-builder/lib/components/button/index.d.ts +15 -0
- package/form-builder/lib/components/form-builder/adapters/it-date-adapter.d.ts +32 -0
- package/form-builder/lib/components/form-builder/directives/currency-input.directive.d.ts +48 -0
- package/form-builder/lib/components/form-builder/form-builder.component.d.ts +279 -0
- package/form-builder/lib/components/form-builder/form-wizard.component.d.ts +172 -0
- package/form-builder/lib/components/form-builder/index.d.ts +19 -0
- package/form-builder/lib/components/form-builder/services/form-condition.service.d.ts +46 -0
- package/form-builder/lib/components/form-builder/services/form-error-state.matcher.d.ts +9 -0
- package/form-builder/lib/components/form-builder/services/form-field-error.service.d.ts +38 -0
- package/form-builder/lib/components/form-builder/services/form-validation.service.d.ts +63 -0
- package/form-builder/lib/components/form-builder/services/location.service.d.ts +83 -0
- package/form-builder/lib/components/form-builder/services/nominatim-geocoding.service.d.ts +37 -0
- package/form-builder/lib/components/form-builder/services/wizard-sync.service.d.ts +63 -0
- package/form-builder/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +31 -0
- package/form-builder/lib/components/form-builder/sub-components/file-input/file-input.component.d.ts +41 -0
- package/form-builder/lib/components/form-builder/sub-components/form-fields/form-number-field.component.d.ts +42 -0
- package/form-builder/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.d.ts +45 -0
- package/form-builder/lib/components/form-builder/sub-components/form-fields/form-select-field.component.d.ts +44 -0
- package/form-builder/lib/components/form-builder/sub-components/form-fields/form-text-field.component.d.ts +62 -0
- package/form-builder/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.d.ts +39 -0
- package/form-builder/lib/components/form-builder/sub-components/form-fields/index.d.ts +5 -0
- package/form-builder/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.d.ts +84 -0
- package/form-builder/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.d.ts +145 -0
- package/form-builder/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.d.ts +108 -0
- package/form-builder/lib/components/form-builder/types/condition.types.d.ts +51 -0
- package/form-builder/lib/components/form-builder/types/field.types.d.ts +330 -0
- package/form-builder/lib/components/form-builder/types/geocoded-location.types.d.ts +116 -0
- package/form-builder/lib/components/form-builder/types/index.d.ts +6 -0
- package/form-builder/lib/components/form-builder/types/schema.types.d.ts +304 -0
- package/form-builder/lib/components/form-builder/types/territoriale.types.d.ts +170 -0
- package/form-builder/lib/components/form-builder/types/validation.types.d.ts +179 -0
- package/form-builder/lib/core/logging/logger.config.d.ts +18 -0
- package/form-builder/lib/core/logging/logger.service.d.ts +75 -0
- package/form-builder/lib/core/logging/logger.types.d.ts +70 -0
- package/form-builder/lib/core/types/index.d.ts +133 -0
- package/form-builder-editor/entry-form-builder-editor.d.ts +4 -0
- package/form-builder-editor/index.d.ts +5 -0
- package/form-builder-editor/lib/components/accordion/accordion.component.d.ts +125 -0
- package/form-builder-editor/lib/components/accordion/accordion.types.d.ts +64 -0
- package/form-builder-editor/lib/components/accordion/index.d.ts +2 -0
- package/form-builder-editor/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
- package/form-builder-editor/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
- package/form-builder-editor/lib/components/blackbox/blackbox.service.d.ts +144 -0
- package/form-builder-editor/lib/components/blackbox/blackbox.types.d.ts +238 -0
- package/form-builder-editor/lib/components/button/button-area.component.d.ts +93 -0
- package/form-builder-editor/lib/components/button/button.component.d.ts +61 -0
- package/form-builder-editor/lib/components/button/button.types.d.ts +75 -0
- package/form-builder-editor/lib/components/button/index.d.ts +15 -0
- package/form-builder-editor/lib/components/form-builder/adapters/it-date-adapter.d.ts +32 -0
- package/form-builder-editor/lib/components/form-builder/directives/currency-input.directive.d.ts +48 -0
- package/form-builder-editor/lib/components/form-builder/form-builder.component.d.ts +279 -0
- package/form-builder-editor/lib/components/form-builder/services/form-condition.service.d.ts +46 -0
- package/form-builder-editor/lib/components/form-builder/services/form-error-state.matcher.d.ts +9 -0
- package/form-builder-editor/lib/components/form-builder/services/form-field-error.service.d.ts +38 -0
- package/form-builder-editor/lib/components/form-builder/services/form-validation.service.d.ts +63 -0
- package/form-builder-editor/lib/components/form-builder/services/location.service.d.ts +83 -0
- package/form-builder-editor/lib/components/form-builder/services/nominatim-geocoding.service.d.ts +37 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +31 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/file-input/file-input.component.d.ts +41 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-number-field.component.d.ts +42 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.d.ts +45 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-select-field.component.d.ts +44 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-text-field.component.d.ts +62 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.d.ts +39 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/index.d.ts +5 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.d.ts +84 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.d.ts +145 -0
- package/form-builder-editor/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.d.ts +108 -0
- package/form-builder-editor/lib/components/form-builder/types/condition.types.d.ts +51 -0
- package/form-builder-editor/lib/components/form-builder/types/field.types.d.ts +330 -0
- package/form-builder-editor/lib/components/form-builder/types/geocoded-location.types.d.ts +116 -0
- package/form-builder-editor/lib/components/form-builder/types/index.d.ts +6 -0
- package/form-builder-editor/lib/components/form-builder/types/schema.types.d.ts +304 -0
- package/form-builder-editor/lib/components/form-builder/types/territoriale.types.d.ts +170 -0
- package/form-builder-editor/lib/components/form-builder/types/validation.types.d.ts +179 -0
- package/form-builder-editor/lib/components/form-builder-editor/form-builder-editor.component.d.ts +117 -0
- package/form-builder-editor/lib/components/form-builder-editor/form-builder-editor.service.d.ts +38 -0
- package/form-builder-editor/lib/components/form-builder-editor/index.d.ts +17 -0
- package/form-builder-editor/lib/components/form-builder-editor/presets/editor-presets.d.ts +25 -0
- package/form-builder-editor/lib/components/form-builder-editor/services/editor-persistence.service.d.ts +42 -0
- package/form-builder-editor/lib/components/form-builder-editor/services/editor-state.service.d.ts +66 -0
- package/form-builder-editor/lib/components/form-builder-editor/services/field-factory.service.d.ts +28 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/condition-editor/condition-editor.component.d.ts +139 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/editor-toolbar/editor-toolbar.component.d.ts +43 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/field-config-panel/field-config-panel.component.d.ts +83 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/field-palette/field-palette.component.d.ts +40 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/form-values-panel/form-values-panel.component.d.ts +51 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/options-editor/options-editor.component.d.ts +63 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/preview-container/preview-container.component.d.ts +68 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/section-editor/section-editor.component.d.ts +82 -0
- package/form-builder-editor/lib/components/form-builder-editor/sub-components/validation-editor/validation-editor.component.d.ts +112 -0
- package/form-builder-editor/lib/components/form-builder-editor/types/editor.types.d.ts +124 -0
- package/form-builder-editor/lib/components/modal/confirm-dialog.component.d.ts +46 -0
- package/form-builder-editor/lib/components/modal/index.d.ts +4 -0
- package/form-builder-editor/lib/components/modal/modal.component.d.ts +44 -0
- package/form-builder-editor/lib/components/modal/modal.service.d.ts +93 -0
- package/form-builder-editor/lib/components/modal/modal.types.d.ts +110 -0
- package/form-builder-editor/lib/core/logging/logger.config.d.ts +18 -0
- package/form-builder-editor/lib/core/logging/logger.service.d.ts +75 -0
- package/form-builder-editor/lib/core/logging/logger.types.d.ts +70 -0
- package/form-builder-editor/lib/core/types/index.d.ts +133 -0
- package/http/entry-http.d.ts +4 -0
- package/http/index.d.ts +5 -0
- package/http/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
- package/http/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
- package/http/lib/components/blackbox/blackbox.service.d.ts +144 -0
- package/http/lib/components/blackbox/blackbox.types.d.ts +238 -0
- package/http/lib/components/http/http-message.handler.d.ts +59 -0
- package/http/lib/components/http/http.service.d.ts +98 -0
- package/http/lib/components/http/http.tokens.d.ts +29 -0
- package/http/lib/components/http/http.types.d.ts +50 -0
- package/http/lib/components/http/index.d.ts +17 -0
- package/http/lib/components/layout-builder/layout-builder.types.d.ts +436 -0
- package/http/lib/components/layout-builder/layout.service.d.ts +100 -0
- package/http/lib/components/toast/toast-container.component.d.ts +27 -0
- package/http/lib/components/toast/toast.component.d.ts +37 -0
- package/http/lib/components/toast/toast.service.d.ts +39 -0
- package/http/lib/components/toast/toast.types.d.ts +52 -0
- package/http/lib/core/types/index.d.ts +133 -0
- package/http/lib/core/utils/index.d.ts +60 -0
- package/layout-builder/entry-layout-builder.d.ts +4 -0
- package/layout-builder/index.d.ts +5 -0
- package/layout-builder/lib/components/layout-builder/index.d.ts +16 -0
- package/layout-builder/lib/components/layout-builder/layout-builder.component.d.ts +85 -0
- package/layout-builder/lib/components/layout-builder/layout-builder.types.d.ts +436 -0
- package/layout-builder/lib/components/layout-builder/layout.service.d.ts +100 -0
- package/layout-builder/lib/core/types/index.d.ts +133 -0
- package/lib/components/accordion/accordion.component.d.ts +10 -3
- package/lib/components/accordion/accordion.types.d.ts +2 -0
- package/lib/components/base-layout/base-layout.component.d.ts +36 -11
- package/lib/components/base-layout/base-layout.types.d.ts +14 -0
- package/lib/components/base-layout/index.d.ts +1 -1
- package/lib/components/blackbox/blackbox-debugger.component.d.ts +80 -0
- package/lib/components/blackbox/blackbox-debugger.service.d.ts +34 -0
- package/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
- package/lib/components/blackbox/blackbox-json-viewer.component.d.ts +18 -0
- package/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
- package/lib/components/blackbox/blackbox.interceptor.d.ts +38 -0
- package/lib/components/blackbox/blackbox.service.d.ts +144 -0
- package/lib/components/blackbox/blackbox.types.d.ts +238 -0
- package/lib/components/blackbox/index.d.ts +23 -0
- package/lib/components/blackbox/ui-track.directive.d.ts +20 -0
- package/lib/components/button/button-area.component.d.ts +6 -1
- package/lib/components/button/button.component.d.ts +8 -2
- package/lib/components/button/button.types.d.ts +5 -0
- package/lib/components/form-builder/form-builder.component.d.ts +125 -29
- package/lib/components/form-builder/form-wizard.component.d.ts +89 -4
- package/lib/components/form-builder/index.d.ts +7 -1
- package/lib/components/form-builder/services/form-error-state.matcher.d.ts +9 -0
- package/lib/components/form-builder/services/form-field-error.service.d.ts +38 -0
- package/lib/components/form-builder/services/nominatim-geocoding.service.d.ts +37 -0
- package/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +9 -6
- package/lib/components/form-builder/sub-components/form-fields/form-number-field.component.d.ts +42 -0
- package/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.d.ts +45 -0
- package/lib/components/form-builder/sub-components/form-fields/form-select-field.component.d.ts +44 -0
- package/lib/components/form-builder/sub-components/form-fields/form-text-field.component.d.ts +62 -0
- package/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.d.ts +39 -0
- package/lib/components/form-builder/sub-components/form-fields/index.d.ts +5 -0
- package/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.d.ts +84 -0
- package/lib/components/form-builder/types/field.types.d.ts +48 -6
- package/lib/components/form-builder/types/geocoded-location.types.d.ts +116 -0
- package/lib/components/form-builder/types/index.d.ts +4 -3
- package/lib/components/form-builder/types/schema.types.d.ts +83 -6
- package/lib/components/form-builder/types/validation.types.d.ts +5 -0
- package/lib/components/form-builder-editor/index.d.ts +2 -0
- package/lib/components/form-builder-editor/presets/editor-presets.d.ts +25 -0
- package/lib/components/http/http-message.handler.d.ts +59 -0
- package/lib/components/http/http.service.d.ts +98 -0
- package/lib/components/http/http.tokens.d.ts +29 -0
- package/lib/components/http/http.types.d.ts +50 -0
- package/lib/components/http/index.d.ts +17 -0
- package/lib/components/page-header/breadcrumb.service.d.ts +2 -2
- package/lib/components/table/table.types.d.ts +5 -0
- package/lib/components/toast/index.d.ts +17 -0
- package/lib/components/toast/toast-container.component.d.ts +27 -0
- package/lib/components/toast/toast.component.d.ts +37 -0
- package/lib/components/toast/toast.service.d.ts +39 -0
- package/lib/components/toast/toast.types.d.ts +52 -0
- package/lib/core/logging/index.d.ts +8 -0
- package/lib/core/logging/logger.config.d.ts +18 -0
- package/lib/core/logging/logger.service.d.ts +75 -0
- package/lib/core/logging/logger.types.d.ts +70 -0
- package/lib/core/types/index.d.ts +76 -0
- package/lib/core/utils/index.d.ts +31 -0
- package/lib/version/ng-ui-system-version.d.ts +9 -0
- package/modal/entry-modal.d.ts +4 -0
- package/modal/index.d.ts +5 -0
- package/modal/lib/components/button/button.component.d.ts +61 -0
- package/modal/lib/components/button/button.types.d.ts +75 -0
- package/modal/lib/components/modal/confirm-dialog.component.d.ts +46 -0
- package/modal/lib/components/modal/index.d.ts +4 -0
- package/modal/lib/components/modal/modal.component.d.ts +44 -0
- package/modal/lib/components/modal/modal.service.d.ts +93 -0
- package/modal/lib/components/modal/modal.types.d.ts +110 -0
- package/modal/lib/core/types/index.d.ts +133 -0
- package/package.json +93 -8
- package/page-header/entry-page-header.d.ts +4 -0
- package/page-header/index.d.ts +5 -0
- package/page-header/lib/components/page-header/breadcrumb.service.d.ts +96 -0
- package/page-header/lib/components/page-header/index.d.ts +16 -0
- package/page-header/lib/components/page-header/page-header.component.d.ts +59 -0
- package/page-header/lib/components/page-header/page-header.types.d.ts +96 -0
- package/public-api.d.ts +11 -6
- package/table/entry-table.d.ts +4 -0
- package/table/index.d.ts +5 -0
- package/table/lib/components/table/index.d.ts +2 -0
- package/table/lib/components/table/paginated-table.component.d.ts +85 -0
- package/table/lib/components/table/table.types.d.ts +86 -0
- package/table/lib/core/utils/index.d.ts +60 -0
- package/toast/entry-toast.d.ts +4 -0
- package/toast/index.d.ts +5 -0
- package/toast/lib/components/toast/index.d.ts +17 -0
- package/toast/lib/components/toast/toast-container.component.d.ts +27 -0
- package/toast/lib/components/toast/toast.component.d.ts +37 -0
- package/toast/lib/components/toast/toast.service.d.ts +39 -0
- package/toast/lib/components/toast/toast.types.d.ts +52 -0
- package/toast/lib/core/types/index.d.ts +133 -0
- package/toast/lib/core/utils/index.d.ts +60 -0
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
// ── Componenti ──
|
|
2
|
-
export { UiFormBuilderComponent
|
|
2
|
+
export { UiFormBuilderComponent } from './form-builder.component';
|
|
3
|
+
export { UiFormErrorStateMatcher } from './services/form-error-state.matcher';
|
|
3
4
|
export { UiFormWizardComponent } from './form-wizard.component';
|
|
4
5
|
export { UiFormErrorSummaryComponent } from './sub-components/error-summary/form-error-summary.component';
|
|
5
6
|
export { UiFileInputComponent } from './sub-components/file-input/file-input.component';
|
|
6
7
|
export { UiSpecificaTerritorialeComponent } from './sub-components/specifica-territoriale/specifica-territoriale.component';
|
|
7
8
|
export { UiTableTerritorialeComponent } from './sub-components/table-territoriale/table-territoriale.component';
|
|
9
|
+
export { UiLocationGeocodedComponent } from './sub-components/location-geocoded/location-geocoded.component';
|
|
10
|
+
export { UiFormTextFieldComponent, UiFormTextareaFieldComponent, UiFormNumberFieldComponent, UiFormSelectFieldComponent, UiFormRadioFieldComponent } from './sub-components/form-fields/index';
|
|
8
11
|
// ── Servizi ──
|
|
9
12
|
export { UiFormConditionService } from './services/form-condition.service';
|
|
10
13
|
export { UiFormValidationService } from './services/form-validation.service';
|
|
14
|
+
export { UiFormFieldErrorService } from './services/form-field-error.service';
|
|
11
15
|
export { UiLocationService, } from './services/location.service';
|
|
12
16
|
export { UiWizardSyncService, } from './services/wizard-sync.service';
|
|
17
|
+
export { UiNominatimGeocodingService } from './services/nominatim-geocoding.service';
|
|
13
18
|
// ── Direttive ──
|
|
14
19
|
export { UiCurrencyInputDirective } from './directives/currency-input.directive';
|
|
15
20
|
// ── Adapter e formati data ──
|
|
16
21
|
export { UiItalianDateAdapter, UI_IT_DATE_FORMATS } from './adapters/it-date-adapter';
|
|
17
22
|
// ── Tipi ──
|
|
18
23
|
export * from './types/index';
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy11aS1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0tYnVpbGRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxtQkFBbUI7QUFDbkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDMUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFDNUgsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDaEgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7QUFDN0csT0FBTyxFQUFFLHdCQUF3QixFQUFFLDRCQUE0QixFQUFFLDBCQUEwQixFQUFFLDBCQUEwQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFL0wsZ0JBQWdCO0FBQ2hCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTlFLE9BQU8sRUFDTCxpQkFBaUIsR0FJbEIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQ0wsbUJBQW1CLEdBRXBCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFckYsa0JBQWtCO0FBQ2xCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRWpGLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV0RixhQUFhO0FBQ2IsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyDilIDilIAgQ29tcG9uZW50aSDilIDilIBcclxuZXhwb3J0IHsgVWlGb3JtQnVpbGRlckNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1idWlsZGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IFVpRm9ybUVycm9yU3RhdGVNYXRjaGVyIH0gZnJvbSAnLi9zZXJ2aWNlcy9mb3JtLWVycm9yLXN0YXRlLm1hdGNoZXInO1xyXG5leHBvcnQgeyBVaUZvcm1XaXphcmRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0td2l6YXJkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IFVpRm9ybUVycm9yU3VtbWFyeUNvbXBvbmVudCB9IGZyb20gJy4vc3ViLWNvbXBvbmVudHMvZXJyb3Itc3VtbWFyeS9mb3JtLWVycm9yLXN1bW1hcnkuY29tcG9uZW50JztcclxuZXhwb3J0IHsgVWlGaWxlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL3N1Yi1jb21wb25lbnRzL2ZpbGUtaW5wdXQvZmlsZS1pbnB1dC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBVaVNwZWNpZmljYVRlcnJpdG9yaWFsZUNvbXBvbmVudCB9IGZyb20gJy4vc3ViLWNvbXBvbmVudHMvc3BlY2lmaWNhLXRlcnJpdG9yaWFsZS9zcGVjaWZpY2EtdGVycml0b3JpYWxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IFVpVGFibGVUZXJyaXRvcmlhbGVDb21wb25lbnQgfSBmcm9tICcuL3N1Yi1jb21wb25lbnRzL3RhYmxlLXRlcnJpdG9yaWFsZS90YWJsZS10ZXJyaXRvcmlhbGUuY29tcG9uZW50JztcclxuZXhwb3J0IHsgVWlMb2NhdGlvbkdlb2NvZGVkQ29tcG9uZW50IH0gZnJvbSAnLi9zdWItY29tcG9uZW50cy9sb2NhdGlvbi1nZW9jb2RlZC9sb2NhdGlvbi1nZW9jb2RlZC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBVaUZvcm1UZXh0RmllbGRDb21wb25lbnQsIFVpRm9ybVRleHRhcmVhRmllbGRDb21wb25lbnQsIFVpRm9ybU51bWJlckZpZWxkQ29tcG9uZW50LCBVaUZvcm1TZWxlY3RGaWVsZENvbXBvbmVudCwgVWlGb3JtUmFkaW9GaWVsZENvbXBvbmVudCB9IGZyb20gJy4vc3ViLWNvbXBvbmVudHMvZm9ybS1maWVsZHMvaW5kZXgnO1xyXG5cclxuLy8g4pSA4pSAIFNlcnZpemkg4pSA4pSAXHJcbmV4cG9ydCB7IFVpRm9ybUNvbmRpdGlvblNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2Zvcm0tY29uZGl0aW9uLnNlcnZpY2UnO1xyXG5leHBvcnQgeyBVaUZvcm1WYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZm9ybS12YWxpZGF0aW9uLnNlcnZpY2UnO1xyXG5leHBvcnQgeyBVaUZvcm1GaWVsZEVycm9yU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZm9ybS1maWVsZC1lcnJvci5zZXJ2aWNlJztcclxuZXhwb3J0IHR5cGUgeyBVaUZpZWxkRXJyb3JEaXNwbGF5T3B0aW9ucyB9IGZyb20gJy4vc2VydmljZXMvZm9ybS1maWVsZC1lcnJvci5zZXJ2aWNlJztcclxuZXhwb3J0IHtcclxuICBVaUxvY2F0aW9uU2VydmljZSxcclxuICB0eXBlIFVpTmF6aW9uZSxcclxuICB0eXBlIFVpUHJvdmluY2lhLFxyXG4gIHR5cGUgVWlDb211bmUsXHJcbn0gZnJvbSAnLi9zZXJ2aWNlcy9sb2NhdGlvbi5zZXJ2aWNlJztcclxuZXhwb3J0IHtcclxuICBVaVdpemFyZFN5bmNTZXJ2aWNlLFxyXG4gIHR5cGUgVWlXaXphcmRTeW5jRGF0YSxcclxufSBmcm9tICcuL3NlcnZpY2VzL3dpemFyZC1zeW5jLnNlcnZpY2UnO1xyXG5leHBvcnQgeyBVaU5vbWluYXRpbUdlb2NvZGluZ1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL25vbWluYXRpbS1nZW9jb2Rpbmcuc2VydmljZSc7XHJcblxyXG4vLyDilIDilIAgRGlyZXR0aXZlIOKUgOKUgFxyXG5leHBvcnQgeyBVaUN1cnJlbmN5SW5wdXREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY3VycmVuY3ktaW5wdXQuZGlyZWN0aXZlJztcclxuXHJcbi8vIOKUgOKUgCBBZGFwdGVyIGUgZm9ybWF0aSBkYXRhIOKUgOKUgFxyXG5leHBvcnQgeyBVaUl0YWxpYW5EYXRlQWRhcHRlciwgVUlfSVRfREFURV9GT1JNQVRTIH0gZnJvbSAnLi9hZGFwdGVycy9pdC1kYXRlLWFkYXB0ZXInO1xyXG5cclxuLy8g4pSA4pSAIFRpcGkg4pSA4pSAXHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvaW5kZXgnO1xyXG4iXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ErrorStateMatcher condiviso tra form-builder e campi atomici.
|
|
3
|
+
* Mostra errore quando il controllo è invalido e (touched o dirty).
|
|
4
|
+
*/
|
|
5
|
+
export class UiFormErrorStateMatcher {
|
|
6
|
+
isErrorState(control, _form) {
|
|
7
|
+
return !!(control && control.invalid && (control.touched || control.dirty));
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvci1zdGF0ZS5tYXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctdWktc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWJ1aWxkZXIvc2VydmljZXMvZm9ybS1lcnJvci1zdGF0ZS5tYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7R0FHRztBQUNILE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsWUFBWSxDQUFDLE9BQTJCLEVBQUUsS0FBeUM7UUFDakYsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cERpcmVjdGl2ZSwgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBFcnJvclN0YXRlTWF0Y2hlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5cclxuLyoqXHJcbiAqIEVycm9yU3RhdGVNYXRjaGVyIGNvbmRpdmlzbyB0cmEgZm9ybS1idWlsZGVyIGUgY2FtcGkgYXRvbWljaS5cclxuICogTW9zdHJhIGVycm9yZSBxdWFuZG8gaWwgY29udHJvbGxvIMOoIGludmFsaWRvIGUgKHRvdWNoZWQgbyBkaXJ0eSkuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgVWlGb3JtRXJyb3JTdGF0ZU1hdGNoZXIgaW1wbGVtZW50cyBFcnJvclN0YXRlTWF0Y2hlciB7XHJcbiAgaXNFcnJvclN0YXRlKGNvbnRyb2w6IEZvcm1Db250cm9sIHwgbnVsbCwgX2Zvcm06IEZvcm1Hcm91cERpcmVjdGl2ZSB8IE5nRm9ybSB8IG51bGwpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIShjb250cm9sICYmIGNvbnRyb2wuaW52YWxpZCAmJiAoY29udHJvbC50b3VjaGVkIHx8IGNvbnRyb2wuZGlydHkpKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Servizio condiviso per messaggi di errore, visibilità errori e conteggio caratteri
|
|
5
|
+
* dei campi form-builder e dei componenti atomici standalone.
|
|
6
|
+
*/
|
|
7
|
+
export class UiFormFieldErrorService {
|
|
8
|
+
/**
|
|
9
|
+
* Restituisce i messaggi di errore user-facing per un controllo.
|
|
10
|
+
*
|
|
11
|
+
* @param control Controllo Angular del campo
|
|
12
|
+
* @param rules Regole di validazione dichiarative (messaggi custom dallo schema)
|
|
13
|
+
*/
|
|
14
|
+
getFieldErrors(control, rules = []) {
|
|
15
|
+
if (!control?.errors)
|
|
16
|
+
return [];
|
|
17
|
+
const messages = [];
|
|
18
|
+
for (const [errorKey, errorValue] of Object.entries(control.errors)) {
|
|
19
|
+
const rule = rules.find((r) => this.normalizeValidationKey(r.type) === errorKey ||
|
|
20
|
+
(r.type === 'crossField' && errorKey === 'crossField'));
|
|
21
|
+
if (rule?.message) {
|
|
22
|
+
messages.push(rule.message);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
messages.push(this.getDefaultErrorMessage(errorKey, errorValue));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return messages;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Indica se mostrare gli errori per un controllo (invalid + touched/dirty/prevalorizzato).
|
|
32
|
+
*/
|
|
33
|
+
shouldShowFieldErrors(control, options = {}) {
|
|
34
|
+
if (!control)
|
|
35
|
+
return false;
|
|
36
|
+
return (control.invalid &&
|
|
37
|
+
(control.dirty || control.touched || options.treatAsPrevalorized === true));
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Conteggio caratteri corrente/massimo per campi text/textarea con maxLength.
|
|
41
|
+
*/
|
|
42
|
+
getCharCount(control, maxLength) {
|
|
43
|
+
if (maxLength == null || maxLength <= 0)
|
|
44
|
+
return null;
|
|
45
|
+
const current = String(control?.value ?? '').length;
|
|
46
|
+
return { current, max: maxLength };
|
|
47
|
+
}
|
|
48
|
+
/** Estrae maxLength dalle regole schema. */
|
|
49
|
+
resolveMaxLength(rules = []) {
|
|
50
|
+
const rule = rules.find((r) => r.type === 'maxLength');
|
|
51
|
+
return rule?.value != null ? Number(rule.value) : undefined;
|
|
52
|
+
}
|
|
53
|
+
normalizeValidationKey(schemaType) {
|
|
54
|
+
const keyMap = {
|
|
55
|
+
minLength: 'minlength',
|
|
56
|
+
maxLength: 'maxlength',
|
|
57
|
+
};
|
|
58
|
+
return keyMap[schemaType] || schemaType;
|
|
59
|
+
}
|
|
60
|
+
getDefaultErrorMessage(errorKey, errorValue) {
|
|
61
|
+
if (typeof errorValue === 'string') {
|
|
62
|
+
return errorValue;
|
|
63
|
+
}
|
|
64
|
+
const ev = errorValue;
|
|
65
|
+
switch (errorKey) {
|
|
66
|
+
case 'required':
|
|
67
|
+
return 'Campo obbligatorio';
|
|
68
|
+
case 'email':
|
|
69
|
+
return 'Formato email non valido';
|
|
70
|
+
case 'min':
|
|
71
|
+
return `Valore minimo: ${ev?.['min']}`;
|
|
72
|
+
case 'max':
|
|
73
|
+
return `Valore massimo: ${ev?.['max']}`;
|
|
74
|
+
case 'minlength':
|
|
75
|
+
return `Lunghezza minima: ${ev?.['requiredLength']} caratteri`;
|
|
76
|
+
case 'maxlength':
|
|
77
|
+
return `Lunghezza massima: ${ev?.['requiredLength']} caratteri`;
|
|
78
|
+
case 'pattern':
|
|
79
|
+
return 'Formato non valido';
|
|
80
|
+
case 'crossField':
|
|
81
|
+
return 'Valore non coerente con il campo correlato';
|
|
82
|
+
case 'date-min':
|
|
83
|
+
return ev?.['message'] || 'Data troppo remota';
|
|
84
|
+
case 'date-max':
|
|
85
|
+
return ev?.['message'] || 'Data troppo avanzata';
|
|
86
|
+
case 'fileSize':
|
|
87
|
+
return `Dimensione massima: ${ev?.['maxSizeFormatted']}`;
|
|
88
|
+
case 'fileType':
|
|
89
|
+
return 'Formato file non accettato';
|
|
90
|
+
case 'fileCount':
|
|
91
|
+
return `Massimo ${ev?.['maxCount']} file`;
|
|
92
|
+
default:
|
|
93
|
+
return 'Valore non valido';
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiFormFieldErrorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
97
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiFormFieldErrorService, providedIn: 'root' }); }
|
|
98
|
+
}
|
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiFormFieldErrorService, decorators: [{
|
|
100
|
+
type: Injectable,
|
|
101
|
+
args: [{ providedIn: 'root' }]
|
|
102
|
+
}] });
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC1lcnJvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctdWktc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWJ1aWxkZXIvc2VydmljZXMvZm9ybS1maWVsZC1lcnJvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVTNDOzs7R0FHRztBQUVILE1BQU0sT0FBTyx1QkFBdUI7SUFDbEM7Ozs7O09BS0c7SUFDSCxjQUFjLENBQUMsT0FBK0IsRUFBRSxRQUE0QixFQUFFO1FBQzVFLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTTtZQUFFLE9BQU8sRUFBRSxDQUFDO1FBRWhDLE1BQU0sUUFBUSxHQUFhLEVBQUUsQ0FBQztRQUM5QixLQUFLLE1BQU0sQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNwRSxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUNyQixDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0osSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxRQUFRO2dCQUNoRCxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssWUFBWSxJQUFJLFFBQVEsS0FBSyxZQUFZLENBQUMsQ0FDekQsQ0FBQztZQUNGLElBQUksSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDO2dCQUNsQixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5QixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7WUFDbkUsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxxQkFBcUIsQ0FDbkIsT0FBK0IsRUFDL0IsVUFBc0MsRUFBRTtRQUV4QyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNCLE9BQU8sQ0FDTCxPQUFPLENBQUMsT0FBTztZQUNmLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxtQkFBbUIsS0FBSyxJQUFJLENBQUMsQ0FDM0UsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVksQ0FDVixPQUErQixFQUMvQixTQUFrQjtRQUVsQixJQUFJLFNBQVMsSUFBSSxJQUFJLElBQUksU0FBUyxJQUFJLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQztRQUNyRCxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDcEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxnQkFBZ0IsQ0FBQyxRQUE0QixFQUFFO1FBQzdDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssV0FBVyxDQUFDLENBQUM7UUFDdkQsT0FBTyxJQUFJLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzlELENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxVQUFrQjtRQUMvQyxNQUFNLE1BQU0sR0FBMkI7WUFDckMsU0FBUyxFQUFFLFdBQVc7WUFDdEIsU0FBUyxFQUFFLFdBQVc7U0FDdkIsQ0FBQztRQUNGLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFVBQVUsQ0FBQztJQUMxQyxDQUFDO0lBRU8sc0JBQXNCLENBQUMsUUFBZ0IsRUFBRSxVQUFtQjtRQUNsRSxJQUFJLE9BQU8sVUFBVSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ25DLE9BQU8sVUFBVSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxNQUFNLEVBQUUsR0FBRyxVQUF3RCxDQUFDO1FBRXBFLFFBQVEsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxVQUFVO2dCQUNiLE9BQU8sb0JBQW9CLENBQUM7WUFDOUIsS0FBSyxPQUFPO2dCQUNWLE9BQU8sMEJBQTBCLENBQUM7WUFDcEMsS0FBSyxLQUFLO2dCQUNSLE9BQU8sa0JBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekMsS0FBSyxLQUFLO2dCQUNSLE9BQU8sbUJBQW1CLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDMUMsS0FBSyxXQUFXO2dCQUNkLE9BQU8scUJBQXFCLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQztZQUNqRSxLQUFLLFdBQVc7Z0JBQ2QsT0FBTyxzQkFBc0IsRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDO1lBQ2xFLEtBQUssU0FBUztnQkFDWixPQUFPLG9CQUFvQixDQUFDO1lBQzlCLEtBQUssWUFBWTtnQkFDZixPQUFPLDRDQUE0QyxDQUFDO1lBQ3RELEtBQUssVUFBVTtnQkFDYixPQUFRLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBWSxJQUFJLG9CQUFvQixDQUFDO1lBQzdELEtBQUssVUFBVTtnQkFDYixPQUFRLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBWSxJQUFJLHNCQUFzQixDQUFDO1lBQy9ELEtBQUssVUFBVTtnQkFDYixPQUFPLHVCQUF1QixFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUM7WUFDM0QsS0FBSyxVQUFVO2dCQUNiLE9BQU8sNEJBQTRCLENBQUM7WUFDdEMsS0FBSyxXQUFXO2dCQUNkLE9BQU8sV0FBVyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDO1lBQzVDO2dCQUNFLE9BQU8sbUJBQW1CLENBQUM7UUFDL0IsQ0FBQztJQUNILENBQUM7K0dBdkdVLHVCQUF1QjttSEFBdkIsdUJBQXVCLGNBRFYsTUFBTTs7NEZBQ25CLHVCQUF1QjtrQkFEbkMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVWlWYWxpZGF0aW9uUnVsZSB9IGZyb20gJy4uL3R5cGVzL3ZhbGlkYXRpb24udHlwZXMnO1xyXG5cclxuLyoqIE9wemlvbmkgcGVyIGxhIHZpc2liaWxpdMOgIGRlZ2xpIGVycm9yaSBkaSB1biBjYW1wby4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaUZpZWxkRXJyb3JEaXNwbGF5T3B0aW9ucyB7XHJcbiAgLyoqIFRyYXR0YSBpbCBjYW1wbyBjb21lIHByZXZhbG9yaXp6YXRvIChtb3N0cmEgZXJyb3JpIGFuY2hlIHNlbnphIHRvdWNoZWQpLiAqL1xyXG4gIHRyZWF0QXNQcmV2YWxvcml6ZWQ/OiBib29sZWFuO1xyXG59XHJcblxyXG4vKipcclxuICogU2Vydml6aW8gY29uZGl2aXNvIHBlciBtZXNzYWdnaSBkaSBlcnJvcmUsIHZpc2liaWxpdMOgIGVycm9yaSBlIGNvbnRlZ2dpbyBjYXJhdHRlcmlcclxuICogZGVpIGNhbXBpIGZvcm0tYnVpbGRlciBlIGRlaSBjb21wb25lbnRpIGF0b21pY2kgc3RhbmRhbG9uZS5cclxuICovXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBVaUZvcm1GaWVsZEVycm9yU2VydmljZSB7XHJcbiAgLyoqXHJcbiAgICogUmVzdGl0dWlzY2UgaSBtZXNzYWdnaSBkaSBlcnJvcmUgdXNlci1mYWNpbmcgcGVyIHVuIGNvbnRyb2xsby5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBjb250cm9sIENvbnRyb2xsbyBBbmd1bGFyIGRlbCBjYW1wb1xyXG4gICAqIEBwYXJhbSBydWxlcyBSZWdvbGUgZGkgdmFsaWRhemlvbmUgZGljaGlhcmF0aXZlIChtZXNzYWdnaSBjdXN0b20gZGFsbG8gc2NoZW1hKVxyXG4gICAqL1xyXG4gIGdldEZpZWxkRXJyb3JzKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCB8IG51bGwsIHJ1bGVzOiBVaVZhbGlkYXRpb25SdWxlW10gPSBbXSk6IHN0cmluZ1tdIHtcclxuICAgIGlmICghY29udHJvbD8uZXJyb3JzKSByZXR1cm4gW107XHJcblxyXG4gICAgY29uc3QgbWVzc2FnZXM6IHN0cmluZ1tdID0gW107XHJcbiAgICBmb3IgKGNvbnN0IFtlcnJvcktleSwgZXJyb3JWYWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoY29udHJvbC5lcnJvcnMpKSB7XHJcbiAgICAgIGNvbnN0IHJ1bGUgPSBydWxlcy5maW5kKFxyXG4gICAgICAgIChyKSA9PlxyXG4gICAgICAgICAgdGhpcy5ub3JtYWxpemVWYWxpZGF0aW9uS2V5KHIudHlwZSkgPT09IGVycm9yS2V5IHx8XHJcbiAgICAgICAgICAoci50eXBlID09PSAnY3Jvc3NGaWVsZCcgJiYgZXJyb3JLZXkgPT09ICdjcm9zc0ZpZWxkJyksXHJcbiAgICAgICk7XHJcbiAgICAgIGlmIChydWxlPy5tZXNzYWdlKSB7XHJcbiAgICAgICAgbWVzc2FnZXMucHVzaChydWxlLm1lc3NhZ2UpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIG1lc3NhZ2VzLnB1c2godGhpcy5nZXREZWZhdWx0RXJyb3JNZXNzYWdlKGVycm9yS2V5LCBlcnJvclZhbHVlKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBtZXNzYWdlcztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBzZSBtb3N0cmFyZSBnbGkgZXJyb3JpIHBlciB1biBjb250cm9sbG8gKGludmFsaWQgKyB0b3VjaGVkL2RpcnR5L3ByZXZhbG9yaXp6YXRvKS5cclxuICAgKi9cclxuICBzaG91bGRTaG93RmllbGRFcnJvcnMoXHJcbiAgICBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsLFxyXG4gICAgb3B0aW9uczogVWlGaWVsZEVycm9yRGlzcGxheU9wdGlvbnMgPSB7fSxcclxuICApOiBib29sZWFuIHtcclxuICAgIGlmICghY29udHJvbCkgcmV0dXJuIGZhbHNlO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgY29udHJvbC5pbnZhbGlkICYmXHJcbiAgICAgIChjb250cm9sLmRpcnR5IHx8IGNvbnRyb2wudG91Y2hlZCB8fCBvcHRpb25zLnRyZWF0QXNQcmV2YWxvcml6ZWQgPT09IHRydWUpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29udGVnZ2lvIGNhcmF0dGVyaSBjb3JyZW50ZS9tYXNzaW1vIHBlciBjYW1waSB0ZXh0L3RleHRhcmVhIGNvbiBtYXhMZW5ndGguXHJcbiAgICovXHJcbiAgZ2V0Q2hhckNvdW50KFxyXG4gICAgY29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgbnVsbCxcclxuICAgIG1heExlbmd0aD86IG51bWJlcixcclxuICApOiB7IGN1cnJlbnQ6IG51bWJlcjsgbWF4OiBudW1iZXIgfSB8IG51bGwge1xyXG4gICAgaWYgKG1heExlbmd0aCA9PSBudWxsIHx8IG1heExlbmd0aCA8PSAwKSByZXR1cm4gbnVsbDtcclxuICAgIGNvbnN0IGN1cnJlbnQgPSBTdHJpbmcoY29udHJvbD8udmFsdWUgPz8gJycpLmxlbmd0aDtcclxuICAgIHJldHVybiB7IGN1cnJlbnQsIG1heDogbWF4TGVuZ3RoIH07XHJcbiAgfVxyXG5cclxuICAvKiogRXN0cmFlIG1heExlbmd0aCBkYWxsZSByZWdvbGUgc2NoZW1hLiAqL1xyXG4gIHJlc29sdmVNYXhMZW5ndGgocnVsZXM6IFVpVmFsaWRhdGlvblJ1bGVbXSA9IFtdKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcclxuICAgIGNvbnN0IHJ1bGUgPSBydWxlcy5maW5kKChyKSA9PiByLnR5cGUgPT09ICdtYXhMZW5ndGgnKTtcclxuICAgIHJldHVybiBydWxlPy52YWx1ZSAhPSBudWxsID8gTnVtYmVyKHJ1bGUudmFsdWUpIDogdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBub3JtYWxpemVWYWxpZGF0aW9uS2V5KHNjaGVtYVR5cGU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBrZXlNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XHJcbiAgICAgIG1pbkxlbmd0aDogJ21pbmxlbmd0aCcsXHJcbiAgICAgIG1heExlbmd0aDogJ21heGxlbmd0aCcsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIGtleU1hcFtzY2hlbWFUeXBlXSB8fCBzY2hlbWFUeXBlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXREZWZhdWx0RXJyb3JNZXNzYWdlKGVycm9yS2V5OiBzdHJpbmcsIGVycm9yVmFsdWU6IHVua25vd24pOiBzdHJpbmcge1xyXG4gICAgaWYgKHR5cGVvZiBlcnJvclZhbHVlID09PSAnc3RyaW5nJykge1xyXG4gICAgICByZXR1cm4gZXJyb3JWYWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBldiA9IGVycm9yVmFsdWUgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBudWxsIHwgdW5kZWZpbmVkO1xyXG5cclxuICAgIHN3aXRjaCAoZXJyb3JLZXkpIHtcclxuICAgICAgY2FzZSAncmVxdWlyZWQnOlxyXG4gICAgICAgIHJldHVybiAnQ2FtcG8gb2JibGlnYXRvcmlvJztcclxuICAgICAgY2FzZSAnZW1haWwnOlxyXG4gICAgICAgIHJldHVybiAnRm9ybWF0byBlbWFpbCBub24gdmFsaWRvJztcclxuICAgICAgY2FzZSAnbWluJzpcclxuICAgICAgICByZXR1cm4gYFZhbG9yZSBtaW5pbW86ICR7ZXY/LlsnbWluJ119YDtcclxuICAgICAgY2FzZSAnbWF4JzpcclxuICAgICAgICByZXR1cm4gYFZhbG9yZSBtYXNzaW1vOiAke2V2Py5bJ21heCddfWA7XHJcbiAgICAgIGNhc2UgJ21pbmxlbmd0aCc6XHJcbiAgICAgICAgcmV0dXJuIGBMdW5naGV6emEgbWluaW1hOiAke2V2Py5bJ3JlcXVpcmVkTGVuZ3RoJ119IGNhcmF0dGVyaWA7XHJcbiAgICAgIGNhc2UgJ21heGxlbmd0aCc6XHJcbiAgICAgICAgcmV0dXJuIGBMdW5naGV6emEgbWFzc2ltYTogJHtldj8uWydyZXF1aXJlZExlbmd0aCddfSBjYXJhdHRlcmlgO1xyXG4gICAgICBjYXNlICdwYXR0ZXJuJzpcclxuICAgICAgICByZXR1cm4gJ0Zvcm1hdG8gbm9uIHZhbGlkbyc7XHJcbiAgICAgIGNhc2UgJ2Nyb3NzRmllbGQnOlxyXG4gICAgICAgIHJldHVybiAnVmFsb3JlIG5vbiBjb2VyZW50ZSBjb24gaWwgY2FtcG8gY29ycmVsYXRvJztcclxuICAgICAgY2FzZSAnZGF0ZS1taW4nOlxyXG4gICAgICAgIHJldHVybiAoZXY/LlsnbWVzc2FnZSddIGFzIHN0cmluZykgfHwgJ0RhdGEgdHJvcHBvIHJlbW90YSc7XHJcbiAgICAgIGNhc2UgJ2RhdGUtbWF4JzpcclxuICAgICAgICByZXR1cm4gKGV2Py5bJ21lc3NhZ2UnXSBhcyBzdHJpbmcpIHx8ICdEYXRhIHRyb3BwbyBhdmFuemF0YSc7XHJcbiAgICAgIGNhc2UgJ2ZpbGVTaXplJzpcclxuICAgICAgICByZXR1cm4gYERpbWVuc2lvbmUgbWFzc2ltYTogJHtldj8uWydtYXhTaXplRm9ybWF0dGVkJ119YDtcclxuICAgICAgY2FzZSAnZmlsZVR5cGUnOlxyXG4gICAgICAgIHJldHVybiAnRm9ybWF0byBmaWxlIG5vbiBhY2NldHRhdG8nO1xyXG4gICAgICBjYXNlICdmaWxlQ291bnQnOlxyXG4gICAgICAgIHJldHVybiBgTWFzc2ltbyAke2V2Py5bJ21heENvdW50J119IGZpbGVgO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAnVmFsb3JlIG5vbiB2YWxpZG8nO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as nazioniData from '../../../sources/nazioni.opt.json';
|
|
3
2
|
import * as locationData from '../../../sources/location-data.opt.json';
|
|
3
|
+
import * as nazioniData from '../../../sources/nazioni.opt.json';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
/**
|
|
6
6
|
* Servizio per la gestione dei dati geografici italiani
|
|
@@ -74,11 +74,12 @@ export class UiLocationService {
|
|
|
74
74
|
return this.nazioniCache.get(id) ?? null;
|
|
75
75
|
case 'provincia':
|
|
76
76
|
return this.provinceCache.get(id) ?? null;
|
|
77
|
-
case 'comune':
|
|
77
|
+
case 'comune': {
|
|
78
78
|
if (!provinciaId)
|
|
79
79
|
return this.comuniCache.get(id) ?? null;
|
|
80
80
|
const comuni = await this.getComuniByProvincia(provinciaId);
|
|
81
81
|
return comuni.find((c) => c.codiceComunePk === id) ?? null;
|
|
82
|
+
}
|
|
82
83
|
default:
|
|
83
84
|
return null;
|
|
84
85
|
}
|
|
@@ -137,4 +138,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
137
138
|
type: Injectable,
|
|
138
139
|
args: [{ providedIn: 'root' }]
|
|
139
140
|
}], ctorParameters: () => [] });
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLXVpLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS1idWlsZGVyL3NlcnZpY2VzL2xvY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEtBQUssV0FBVyxNQUFNLG1DQUFtQyxDQUFDO0FBQ2pFLE9BQU8sS0FBSyxZQUFZLE1BQU0seUNBQXlDLENBQUM7O0FBMER4RTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFFSCxNQUFNLE9BQU8saUJBQWlCO0lBTzVCO1FBSmlCLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQXFCLENBQUM7UUFDNUMsa0JBQWEsR0FBRyxJQUFJLEdBQUcsRUFBdUIsQ0FBQztRQUMvQyxnQkFBVyxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFDO1FBR3pELElBQUksQ0FBQyxVQUFVLEdBQUcsV0FBaUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsV0FBVyxHQUFHLFlBQW1CLENBQUM7UUFDdkMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGtFQUFrRTtJQUVsRSxvREFBb0Q7SUFDcEQsS0FBSyxDQUFDLFVBQVU7UUFDZCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFRCxnRUFBZ0U7SUFDaEUsS0FBSyxDQUFDLFdBQVc7UUFDZixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENB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bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBuYXppb25pRGF0YSBmcm9tICcuLi8uLi8uLi9zb3VyY2VzL25hemlvbmkub3B0Lmpzb24nO1xyXG5pbXBvcnQgKiBhcyBsb2NhdGlvbkRhdGEgZnJvbSAnLi4vLi4vLi4vc291cmNlcy9sb2NhdGlvbi1kYXRhLm9wdC5qc29uJztcclxuXHJcbi8vIOKUgOKUgOKUgCBJbnRlcmZhY2NlIEpTT04gb3R0aW1penphdGUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4vKiogVm9jZSBuYXppb25lIG5lbCBKU09OIG90dGltaXp6YXRvLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIE1pbmlmaWVkTmF6aW9uZU9wdGlvbiB7XHJcbiAgLyoqIENvZGljZSBuYXppb25lIChlcy4gYCdJVEEnYCkuICovXHJcbiAgeDogc3RyaW5nO1xyXG4gIC8qKiBEZXNjcml6aW9uZSAoZXMuIGAnSXRhbGlhJ2ApLiAqL1xyXG4gIGQ6IHN0cmluZztcclxufVxyXG5cclxuLyoqIFZvY2UgcHJvdmluY2lhL2NvbXVuZSBuZWwgSlNPTiBvdHRpbWl6emF0by4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBNaW5pZmllZFNlbGVjdE9wdGlvbiB7XHJcbiAgLyoqIENvZGljZSAocHJvdmluY2lhIG8gY29tdW5lKS4gKi9cclxuICB4OiBzdHJpbmc7XHJcbiAgLyoqIERlc2NyaXppb25lLiAqL1xyXG4gIGQ6IHN0cmluZztcclxuICAvKiogQ0FQIHNpbmdvbG8gbyBtdWx0aXBsaS4gKi9cclxuICBjPzogc3RyaW5nIHwgc3RyaW5nW107XHJcbn1cclxuXHJcbmludGVyZmFjZSBNaW5pZmllZExvY2F0aW9uTWFwIHtcclxuICBwcm92aW5jZTogTWluaWZpZWRTZWxlY3RPcHRpb25bXTtcclxuICBjb211bmlQZXJQcm92aW5jaWE6IFJlY29yZDxzdHJpbmcsIE1pbmlmaWVkU2VsZWN0T3B0aW9uW10+O1xyXG59XHJcblxyXG5pbnRlcmZhY2UgTWluaWZpZWROYXppb25pTWFwIHtcclxuICBuYXppb25pOiBNaW5pZmllZE5hemlvbmVPcHRpb25bXTtcclxufVxyXG5cclxuLy8g4pSA4pSA4pSAIEludGVyZmFjY2UgcHViYmxpY2hlIChmb3JtYXRvIGxlZ2FjeSBjb21wYXRpYmlsZSkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4vKiogTmF6aW9uZS4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaU5hemlvbmUge1xyXG4gIGNvZFN0YXRvUGs6IHN0cmluZztcclxuICBjb2RpY2VDYXRhc3RhbGU6IHN0cmluZztcclxuICBkZXNjcml6aW9uZTogc3RyaW5nO1xyXG59XHJcblxyXG4vKiogUHJvdmluY2lhLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpUHJvdmluY2lhIHtcclxuICBjb2RpY2VQcm92aW5jaWFQazogc3RyaW5nO1xyXG4gIG5vbWVQcm92aW5jaWE6IHN0cmluZztcclxuICBzaWdsYVByb3ZpbmNpYTogc3RyaW5nO1xyXG4gIHZpc2liaWxlOiBib29sZWFuO1xyXG59XHJcblxyXG4vKiogQ29tdW5lLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpQ29tdW5lIHtcclxuICBjb2RpY2VDYXRhc3RhbGU6IHN0cmluZztcclxuICBjb2RpY2VDb211bmVQazogc3RyaW5nO1xyXG4gIGNvbXVuZVNvcHByZXNzbzogYm9vbGVhbjtcclxuICBub21lQ29tdW5lOiBzdHJpbmc7XHJcbiAgcHJvdjogVWlQcm92aW5jaWE7XHJcbiAgdmlzaWJpbGU6IGJvb2xlYW47XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZXJ2aXppbyBwZXIgbGEgZ2VzdGlvbmUgZGVpIGRhdGkgZ2VvZ3JhZmljaSBpdGFsaWFuaVxyXG4gKiBkYSBmaWxlIEpTT04gc3RhdGljaSBvdHRpbWl6emF0aS5cclxuICpcclxuICogRWxpbWluYSBsYSBuZWNlc3NpdGEgZGkgY2hpYW1hdGUgYmFja2VuZCBwZXIgbmF6aW9uaSxcclxuICogcHJvdmluY2UsIGNvbXVuaSBlIENBUC4gSSBkYXRpIHZlbmdvbm8gY2FyaWNhdGkgaW4gbWVtb3JpYVxyXG4gKiBhbCBwcmltbyBhY2Nlc3NvIGUgcG9pIHNlcnZpdGkgZGFsbGEgY2FjaGUuXHJcbiAqXHJcbiAqIEBwcm92aWRlZEluICdyb290J1xyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiBgYGB0eXBlc2NyaXB0XHJcbiAqIGNvbnN0IG5hemlvbmkgPSBhd2FpdCB0aGlzLmxvY2F0aW9uU2VydmljZS5nZXROYXppb25pKCk7XHJcbiAqIGNvbnN0IHByb3ZpbmNlID0gYXdhaXQgdGhpcy5sb2NhdGlvblNlcnZpY2UuZ2V0UHJvdmluY2UoKTtcclxuICogY29uc3QgY29tdW5pID0gYXdhaXQgdGhpcy5sb2NhdGlvblNlcnZpY2UuZ2V0Q29tdW5pQnlQcm92aW5jaWEoJzAxNScpO1xyXG4gKiBjb25zdCBjYXBzID0gYXdhaXQgdGhpcy5sb2NhdGlvblNlcnZpY2UuZ2V0Q2FwTGlzdCgnMDE1MTQ2Jyk7XHJcbiAqIGBgYFxyXG4gKi9cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFVpTG9jYXRpb25TZXJ2aWNlIHtcclxuICBwcml2YXRlIHJlYWRvbmx5IG5hemlvbmlNYXA6IE1pbmlmaWVkTmF6aW9uaU1hcDtcclxuICBwcml2YXRlIHJlYWRvbmx5IGxvY2F0aW9uTWFwOiBNaW5pZmllZExvY2F0aW9uTWFwO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgbmF6aW9uaUNhY2hlID0gbmV3IE1hcDxzdHJpbmcsIFVpTmF6aW9uZT4oKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IHByb3ZpbmNlQ2FjaGUgPSBuZXcgTWFwPHN0cmluZywgVWlQcm92aW5jaWE+KCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBjb211bmlDYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBVaUNvbXVuZT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLm5hemlvbmlNYXAgPSBuYXppb25pRGF0YSBhcyBNaW5pZmllZE5hemlvbmlNYXA7XHJcbiAgICB0aGlzLmxvY2F0aW9uTWFwID0gbG9jYXRpb25EYXRhIGFzIGFueTtcclxuICAgIHRoaXMuaW5pdGlhbGl6ZUNhY2hlcygpO1xyXG4gIH1cclxuXHJcbiAgLy8g4pSA4pSA4pSAIEFQSSBwdWJibGljYSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbiAgLyoqIEVsZW5jbyBjb21wbGV0byBkZWxsZSBuYXppb25pIChJdGFsaWEgcHJpbWEpLiAqL1xyXG4gIGFzeW5jIGdldE5hemlvbmkoKTogUHJvbWlzZTx7IGRhdGE6IFVpTmF6aW9uZVtdIH0+IHtcclxuICAgIGNvbnN0IG5hemlvbmkgPSBBcnJheS5mcm9tKHRoaXMubmF6aW9uaUNhY2hlLnZhbHVlcygpKTtcclxuICAgIHJldHVybiB7IGRhdGE6IHRoaXMuc29ydE5hemlvbmlJdGFsaWFGaXJzdChuYXppb25pKSB9O1xyXG4gIH1cclxuXHJcbiAgLyoqIEVsZW5jbyBjb21wbGV0byBkZWxsZSBwcm92aW5jZSwgb3JkaW5hdGUgYWxmYWJldGljYW1lbnRlLiAqL1xyXG4gIGFzeW5jIGdldFByb3ZpbmNlKCk6IFByb21pc2U8eyBjb250ZW50OiBVaVByb3ZpbmNpYVtdIH0+IHtcclxuICAgIGNvbnN0IHByb3ZpbmNlID0gQXJyYXkuZnJvbSh0aGlzLnByb3ZpbmNlQ2FjaGUudmFsdWVzKCkpLnNvcnQoKGEsIGIpID0+XHJcbiAgICAgIGEubm9tZVByb3ZpbmNpYS5sb2NhbGVDb21wYXJlKGIubm9tZVByb3ZpbmNpYSwgJ2l0JyksXHJcbiAgICApO1xyXG4gICAgcmV0dXJuIHsgY29udGVudDogcHJvdmluY2UgfTtcclxuICB9XHJcblxyXG4gIC8qKiBFbGVuY28gZGVpIGNvbXVuaSBwZXIgdW5hIHNwZWNpZmljYSBwcm92aW5jaWEuICovXHJcbiAgYXN5bmMgZ2V0Q29tdW5pQnlQcm92aW5jaWEocHJvdmluY2lhSWQ6IHN0cmluZyk6IFByb21pc2U8VWlDb211bmVbXT4ge1xyXG4gICAgY29uc3QgY29tdW5pTWluID0gdGhpcy5sb2NhdGlvbk1hcC5jb211bmlQZXJQcm92aW5jaWFbcHJvdmluY2lhSWRdIHx8IFtdO1xyXG4gICAgY29uc3QgcHJvdmluY2lhID0gdGhpcy5wcm92aW5jZUNhY2hlLmdldChwcm92aW5jaWFJZCk7XHJcbiAgICBpZiAoIXByb3ZpbmNpYSkgcmV0dXJuIFtdO1xyXG5cclxuICAgIHJldHVybiBjb211bmlNaW5cclxuICAgICAgLm1hcCgoYykgPT4gKHtcclxuICAgICAgICBjb2RpY2VDYXRhc3RhbGU6IGMueCxcclxuICAgICAgICBjb2RpY2VDb211bmVQazogYy54LFxyXG4gICAgICAgIGNvbXVuZVNvcHByZXNzbzogZmFsc2UsXHJcbiAgICAgICAgbm9tZUNvbXVuZTogYy5kLFxyXG4gICAgICAgIHByb3Y6IHByb3ZpbmNpYSxcclxuICAgICAgICB2aXNpYmlsZTogdHJ1ZSxcclxuICAgICAgfSkpXHJcbiAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm5vbWVDb211bmUubG9jYWxlQ29tcGFyZShiLm5vbWVDb211bmUsICdpdCcpKTtcclxuICB9XHJcblxyXG4gIC8qKiBFbGVuY28gZGVpIENBUCBwZXIgdW4gY29tdW5lLiAqL1xyXG4gIGFzeW5jIGdldENhcExpc3QoY29tdW5lSWQ6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nW10+IHtcclxuICAgIGZvciAoY29uc3QgY29tdW5pIG9mIE9iamVjdC52YWx1ZXModGhpcy5sb2NhdGlvbk1hcC5jb211bmlQZXJQcm92aW5jaWEpKSB7XHJcbiAgICAgIGNvbnN0IGNvbXVuZSA9IGNvbXVuaS5maW5kKChjKSA9PiBjLnggPT09IGNvbXVuZUlkKTtcclxuICAgICAgaWYgKGNvbXVuZT8uYykge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KGNvbXVuZS5jKSA/IGNvbXVuZS5jIDogW2NvbXVuZS5jXTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIFtdO1xyXG4gIH1cclxuXHJcbiAgLyoqIERhdGkgY29tcGxldGkgZGkgdW5hIGxvY2F0aW9uIChuYXppb25lLCBwcm92aW5jaWEgbyBjb211bmUpLiAqL1xyXG4gIGFzeW5jIGdldExvY2F0aW9uRnVsbERhdGEoXHJcbiAgICB0eXBlOiAnbmF6aW9uZScgfCAncHJvdmluY2lhJyB8ICdjb211bmUnLFxyXG4gICAgaWQ6IHN0cmluZyxcclxuICAgIHByb3ZpbmNpYUlkPzogc3RyaW5nLFxyXG4gICk6IFByb21pc2U8VWlOYXppb25lIHwgVWlQcm92aW5jaWEgfCBVaUNvbXVuZSB8IG51bGw+IHtcclxuICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICBjYXNlICduYXppb25lJzpcclxuICAgICAgICByZXR1cm4gdGhpcy5uYXppb25pQ2FjaGUuZ2V0KGlkKSA/PyBudWxsO1xyXG4gICAgICBjYXNlICdwcm92aW5jaWEnOlxyXG4gICAgICAgIHJldHVybiB0aGlzLnByb3ZpbmNlQ2FjaGUuZ2V0KGlkKSA/PyBudWxsO1xyXG4gICAgICBjYXNlICdjb211bmUnOlxyXG4gICAgICAgIGlmICghcHJvdmluY2lhSWQpIHJldHVybiB0aGlzLmNvbXVuaUNhY2hlLmdldChpZCkgPz8gbnVsbDtcclxuICAgICAgICBjb25zdCBjb211bmkgPSBhd2FpdCB0aGlzLmdldENvbXVuaUJ5UHJvdmluY2lhKHByb3ZpbmNpYUlkKTtcclxuICAgICAgICByZXR1cm4gY29tdW5pLmZpbmQoKGMpID0+IGMuY29kaWNlQ29tdW5lUGsgPT09IGlkKSA/PyBudWxsO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8g4pSA4pSA4pSAIEluaXppYWxpenphemlvbmUgY2FjaGUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUNhY2hlcygpOiB2b2lkIHtcclxuICAgIC8vIE5hemlvbmlcclxuICAgIGZvciAoY29uc3QgbiBvZiB0aGlzLm5hemlvbmlNYXAubmF6aW9uaSkge1xyXG4gICAgICB0aGlzLm5hemlvbmlDYWNoZS5zZXQobi54LCB7XHJcbiAgICAgICAgY29kU3RhdG9Qazogbi54LFxyXG4gICAgICAgIGNvZGljZUNhdGFzdGFsZTogbi54LFxyXG4gICAgICAgIGRlc2NyaXppb25lOiBuLmQsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFByb3ZpbmNlXHJcbiAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5sb2NhdGlvbk1hcC5wcm92aW5jZSkge1xyXG4gICAgICB0aGlzLnByb3ZpbmNlQ2FjaGUuc2V0KHAueCwge1xyXG4gICAgICAgIGNvZGljZVByb3ZpbmNpYVBrOiBwLngsXHJcbiAgICAgICAgbm9tZVByb3ZpbmNpYTogcC5kLFxyXG4gICAgICAgIHNpZ2xhUHJvdmluY2lhOiBwLngsXHJcbiAgICAgICAgdmlzaWJpbGU6IHRydWUsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIENvbXVuaSAoY29uIHJpZmVyaW1lbnRvIGFsbGEgcHJvdmluY2lhKVxyXG4gICAgZm9yIChjb25zdCBbcHJvdmluY2lhSWQsIGNvbXVuaV0gb2YgT2JqZWN0LmVudHJpZXModGhpcy5sb2NhdGlvbk1hcC5jb211bmlQZXJQcm92aW5jaWEpKSB7XHJcbiAgICAgIGNvbnN0IHByb3ZpbmNpYSA9IHRoaXMucHJvdmluY2VDYWNoZS5nZXQocHJvdmluY2lhSWQpO1xyXG4gICAgICBpZiAoIXByb3ZpbmNpYSkgY29udGludWU7XHJcbiAgICAgIGZvciAoY29uc3QgYyBvZiBjb211bmkpIHtcclxuICAgICAgICB0aGlzLmNvbXVuaUNhY2hlLnNldChjLngsIHtcclxuICAgICAgICAgIGNvZGljZUNhdGFzdGFsZTogYy54LFxyXG4gICAgICAgICAgY29kaWNlQ29tdW5lUGs6IGMueCxcclxuICAgICAgICAgIGNvbXVuZVNvcHByZXNzbzogZmFsc2UsXHJcbiAgICAgICAgICBub21lQ29tdW5lOiBjLmQsXHJcbiAgICAgICAgICBwcm92OiBwcm92aW5jaWEsXHJcbiAgICAgICAgICB2aXNpYmlsZTogdHJ1ZSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzb3J0TmF6aW9uaUl0YWxpYUZpcnN0KG5hemlvbmk6IFVpTmF6aW9uZVtdKTogVWlOYXppb25lW10ge1xyXG4gICAgcmV0dXJuIG5hemlvbmkuc29ydCgoYSwgYikgPT4ge1xyXG4gICAgICBjb25zdCBhSXRhbGlhID0gYS5kZXNjcml6aW9uZT8udG9Mb3dlckNhc2UoKS5pbmNsdWRlcygnaXRhbGlhJykgfHwgYS5jb2RTdGF0b1BrID09PSAnSVRBJztcclxuICAgICAgY29uc3QgYkl0YWxpYSA9IGIuZGVzY3JpemlvbmU/LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2l0YWxpYScpIHx8IGIuY29kU3RhdG9QayA9PT0gJ0lUQSc7XHJcbiAgICAgIGlmIChhSXRhbGlhICYmICFiSXRhbGlhKSByZXR1cm4gLTE7XHJcbiAgICAgIGlmICghYUl0YWxpYSAmJiBiSXRhbGlhKSByZXR1cm4gMTtcclxuICAgICAgcmV0dXJuIChhLmRlc2NyaXppb25lIHx8ICcnKS5sb2NhbGVDb21wYXJlKGIuZGVzY3JpemlvbmUgfHwgJycsICdpdCcsIHsgc2Vuc2l0aXZpdHk6ICdiYXNlJyB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLXVpLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS1idWlsZGVyL3NlcnZpY2VzL2xvY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEtBQUssWUFBWSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hFLE9BQU8sS0FBSyxXQUFXLE1BQU0sbUNBQW1DLENBQUM7O0FBMERqRTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFFSCxNQUFNLE9BQU8saUJBQWlCO0lBTzVCO1FBSmlCLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQXFCLENBQUM7UUFDNUMsa0JBQWEsR0FBRyxJQUFJLEdBQUcsRUFBdUIsQ0FBQztRQUMvQyxnQkFBVyxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFDO1FBR3pELElBQUksQ0FBQyxVQUFVLEdBQUcsV0FBaUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsV0FBVyxHQUFHLFlBQW1CLENBQUM7UUFDdkMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGtFQUFrRTtJQUVsRSxvREFBb0Q7SUFDcEQsS0FBSyxDQUFDLFVBQVU7UUFDZCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFRCxnRUFBZ0U7SUFDaEUsS0FBSyxDQUFDLFdBQVc7UUFDZixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENB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IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgbG9jYXRpb25EYXRhIGZyb20gJy4uLy4uLy4uL3NvdXJjZXMvbG9jYXRpb24tZGF0YS5vcHQuanNvbic7XHJcbmltcG9ydCAqIGFzIG5hemlvbmlEYXRhIGZyb20gJy4uLy4uLy4uL3NvdXJjZXMvbmF6aW9uaS5vcHQuanNvbic7XHJcblxyXG4vLyDilIDilIDilIAgSW50ZXJmYWNjZSBKU09OIG90dGltaXp6YXRlIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuLyoqIFZvY2UgbmF6aW9uZSBuZWwgSlNPTiBvdHRpbWl6emF0by4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBNaW5pZmllZE5hemlvbmVPcHRpb24ge1xyXG4gIC8qKiBDb2RpY2UgbmF6aW9uZSAoZXMuIGAnSVRBJ2ApLiAqL1xyXG4gIHg6IHN0cmluZztcclxuICAvKiogRGVzY3JpemlvbmUgKGVzLiBgJ0l0YWxpYSdgKS4gKi9cclxuICBkOiBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKiBWb2NlIHByb3ZpbmNpYS9jb211bmUgbmVsIEpTT04gb3R0aW1penphdG8uICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgTWluaWZpZWRTZWxlY3RPcHRpb24ge1xyXG4gIC8qKiBDb2RpY2UgKHByb3ZpbmNpYSBvIGNvbXVuZSkuICovXHJcbiAgeDogc3RyaW5nO1xyXG4gIC8qKiBEZXNjcml6aW9uZS4gKi9cclxuICBkOiBzdHJpbmc7XHJcbiAgLyoqIENBUCBzaW5nb2xvIG8gbXVsdGlwbGkuICovXHJcbiAgYz86IHN0cmluZyB8IHN0cmluZ1tdO1xyXG59XHJcblxyXG5pbnRlcmZhY2UgTWluaWZpZWRMb2NhdGlvbk1hcCB7XHJcbiAgcHJvdmluY2U6IE1pbmlmaWVkU2VsZWN0T3B0aW9uW107XHJcbiAgY29tdW5pUGVyUHJvdmluY2lhOiBSZWNvcmQ8c3RyaW5nLCBNaW5pZmllZFNlbGVjdE9wdGlvbltdPjtcclxufVxyXG5cclxuaW50ZXJmYWNlIE1pbmlmaWVkTmF6aW9uaU1hcCB7XHJcbiAgbmF6aW9uaTogTWluaWZpZWROYXppb25lT3B0aW9uW107XHJcbn1cclxuXHJcbi8vIOKUgOKUgOKUgCBJbnRlcmZhY2NlIHB1YmJsaWNoZSAoZm9ybWF0byBsZWdhY3kgY29tcGF0aWJpbGUpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuLyoqIE5hemlvbmUuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlOYXppb25lIHtcclxuICBjb2RTdGF0b1BrOiBzdHJpbmc7XHJcbiAgY29kaWNlQ2F0YXN0YWxlOiBzdHJpbmc7XHJcbiAgZGVzY3JpemlvbmU6IHN0cmluZztcclxufVxyXG5cclxuLyoqIFByb3ZpbmNpYS4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaVByb3ZpbmNpYSB7XHJcbiAgY29kaWNlUHJvdmluY2lhUGs6IHN0cmluZztcclxuICBub21lUHJvdmluY2lhOiBzdHJpbmc7XHJcbiAgc2lnbGFQcm92aW5jaWE6IHN0cmluZztcclxuICB2aXNpYmlsZTogYm9vbGVhbjtcclxufVxyXG5cclxuLyoqIENvbXVuZS4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaUNvbXVuZSB7XHJcbiAgY29kaWNlQ2F0YXN0YWxlOiBzdHJpbmc7XHJcbiAgY29kaWNlQ29tdW5lUGs6IHN0cmluZztcclxuICBjb211bmVTb3BwcmVzc286IGJvb2xlYW47XHJcbiAgbm9tZUNvbXVuZTogc3RyaW5nO1xyXG4gIHByb3Y6IFVpUHJvdmluY2lhO1xyXG4gIHZpc2liaWxlOiBib29sZWFuO1xyXG59XHJcblxyXG4vKipcclxuICogU2Vydml6aW8gcGVyIGxhIGdlc3Rpb25lIGRlaSBkYXRpIGdlb2dyYWZpY2kgaXRhbGlhbmlcclxuICogZGEgZmlsZSBKU09OIHN0YXRpY2kgb3R0aW1penphdGkuXHJcbiAqXHJcbiAqIEVsaW1pbmEgbGEgbmVjZXNzaXRhIGRpIGNoaWFtYXRlIGJhY2tlbmQgcGVyIG5hemlvbmksXHJcbiAqIHByb3ZpbmNlLCBjb211bmkgZSBDQVAuIEkgZGF0aSB2ZW5nb25vIGNhcmljYXRpIGluIG1lbW9yaWFcclxuICogYWwgcHJpbW8gYWNjZXNzbyBlIHBvaSBzZXJ2aXRpIGRhbGxhIGNhY2hlLlxyXG4gKlxyXG4gKiBAcHJvdmlkZWRJbiAncm9vdCdcclxuICpcclxuICogQGV4YW1wbGVcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBjb25zdCBuYXppb25pID0gYXdhaXQgdGhpcy5sb2NhdGlvblNlcnZpY2UuZ2V0TmF6aW9uaSgpO1xyXG4gKiBjb25zdCBwcm92aW5jZSA9IGF3YWl0IHRoaXMubG9jYXRpb25TZXJ2aWNlLmdldFByb3ZpbmNlKCk7XHJcbiAqIGNvbnN0IGNvbXVuaSA9IGF3YWl0IHRoaXMubG9jYXRpb25TZXJ2aWNlLmdldENvbXVuaUJ5UHJvdmluY2lhKCcwMTUnKTtcclxuICogY29uc3QgY2FwcyA9IGF3YWl0IHRoaXMubG9jYXRpb25TZXJ2aWNlLmdldENhcExpc3QoJzAxNTE0NicpO1xyXG4gKiBgYGBcclxuICovXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBVaUxvY2F0aW9uU2VydmljZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBuYXppb25pTWFwOiBNaW5pZmllZE5hemlvbmlNYXA7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvbk1hcDogTWluaWZpZWRMb2NhdGlvbk1hcDtcclxuICBwcml2YXRlIHJlYWRvbmx5IG5hemlvbmlDYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBVaU5hemlvbmU+KCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBwcm92aW5jZUNhY2hlID0gbmV3IE1hcDxzdHJpbmcsIFVpUHJvdmluY2lhPigpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgY29tdW5pQ2FjaGUgPSBuZXcgTWFwPHN0cmluZywgVWlDb211bmU+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5uYXppb25pTWFwID0gbmF6aW9uaURhdGEgYXMgTWluaWZpZWROYXppb25pTWFwO1xyXG4gICAgdGhpcy5sb2NhdGlvbk1hcCA9IGxvY2F0aW9uRGF0YSBhcyBhbnk7XHJcbiAgICB0aGlzLmluaXRpYWxpemVDYWNoZXMoKTtcclxuICB9XHJcblxyXG4gIC8vIOKUgOKUgOKUgCBBUEkgcHViYmxpY2Eg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4gIC8qKiBFbGVuY28gY29tcGxldG8gZGVsbGUgbmF6aW9uaSAoSXRhbGlhIHByaW1hKS4gKi9cclxuICBhc3luYyBnZXROYXppb25pKCk6IFByb21pc2U8eyBkYXRhOiBVaU5hemlvbmVbXSB9PiB7XHJcbiAgICBjb25zdCBuYXppb25pID0gQXJyYXkuZnJvbSh0aGlzLm5hemlvbmlDYWNoZS52YWx1ZXMoKSk7XHJcbiAgICByZXR1cm4geyBkYXRhOiB0aGlzLnNvcnROYXppb25pSXRhbGlhRmlyc3QobmF6aW9uaSkgfTtcclxuICB9XHJcblxyXG4gIC8qKiBFbGVuY28gY29tcGxldG8gZGVsbGUgcHJvdmluY2UsIG9yZGluYXRlIGFsZmFiZXRpY2FtZW50ZS4gKi9cclxuICBhc3luYyBnZXRQcm92aW5jZSgpOiBQcm9taXNlPHsgY29udGVudDogVWlQcm92aW5jaWFbXSB9PiB7XHJcbiAgICBjb25zdCBwcm92aW5jZSA9IEFycmF5LmZyb20odGhpcy5wcm92aW5jZUNhY2hlLnZhbHVlcygpKS5zb3J0KChhLCBiKSA9PlxyXG4gICAgICBhLm5vbWVQcm92aW5jaWEubG9jYWxlQ29tcGFyZShiLm5vbWVQcm92aW5jaWEsICdpdCcpLFxyXG4gICAgKTtcclxuICAgIHJldHVybiB7IGNvbnRlbnQ6IHByb3ZpbmNlIH07XHJcbiAgfVxyXG5cclxuICAvKiogRWxlbmNvIGRlaSBjb211bmkgcGVyIHVuYSBzcGVjaWZpY2EgcHJvdmluY2lhLiAqL1xyXG4gIGFzeW5jIGdldENvbXVuaUJ5UHJvdmluY2lhKHByb3ZpbmNpYUlkOiBzdHJpbmcpOiBQcm9taXNlPFVpQ29tdW5lW10+IHtcclxuICAgIGNvbnN0IGNvbXVuaU1pbiA9IHRoaXMubG9jYXRpb25NYXAuY29tdW5pUGVyUHJvdmluY2lhW3Byb3ZpbmNpYUlkXSB8fCBbXTtcclxuICAgIGNvbnN0IHByb3ZpbmNpYSA9IHRoaXMucHJvdmluY2VDYWNoZS5nZXQocHJvdmluY2lhSWQpO1xyXG4gICAgaWYgKCFwcm92aW5jaWEpIHJldHVybiBbXTtcclxuXHJcbiAgICByZXR1cm4gY29tdW5pTWluXHJcbiAgICAgIC5tYXAoKGMpID0+ICh7XHJcbiAgICAgICAgY29kaWNlQ2F0YXN0YWxlOiBjLngsXHJcbiAgICAgICAgY29kaWNlQ29tdW5lUGs6IGMueCxcclxuICAgICAgICBjb211bmVTb3BwcmVzc286IGZhbHNlLFxyXG4gICAgICAgIG5vbWVDb211bmU6IGMuZCxcclxuICAgICAgICBwcm92OiBwcm92aW5jaWEsXHJcbiAgICAgICAgdmlzaWJpbGU6IHRydWUsXHJcbiAgICAgIH0pKVxyXG4gICAgICAuc29ydCgoYSwgYikgPT4gYS5ub21lQ29tdW5lLmxvY2FsZUNvbXBhcmUoYi5ub21lQ29tdW5lLCAnaXQnKSk7XHJcbiAgfVxyXG5cclxuICAvKiogRWxlbmNvIGRlaSBDQVAgcGVyIHVuIGNvbXVuZS4gKi9cclxuICBhc3luYyBnZXRDYXBMaXN0KGNvbXVuZUlkOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZ1tdPiB7XHJcbiAgICBmb3IgKGNvbnN0IGNvbXVuaSBvZiBPYmplY3QudmFsdWVzKHRoaXMubG9jYXRpb25NYXAuY29tdW5pUGVyUHJvdmluY2lhKSkge1xyXG4gICAgICBjb25zdCBjb211bmUgPSBjb211bmkuZmluZCgoYykgPT4gYy54ID09PSBjb211bmVJZCk7XHJcbiAgICAgIGlmIChjb211bmU/LmMpIHtcclxuICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShjb211bmUuYykgPyBjb211bmUuYyA6IFtjb211bmUuY107XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBbXTtcclxuICB9XHJcblxyXG4gIC8qKiBEYXRpIGNvbXBsZXRpIGRpIHVuYSBsb2NhdGlvbiAobmF6aW9uZSwgcHJvdmluY2lhIG8gY29tdW5lKS4gKi9cclxuICBhc3luYyBnZXRMb2NhdGlvbkZ1bGxEYXRhKFxyXG4gICAgdHlwZTogJ25hemlvbmUnIHwgJ3Byb3ZpbmNpYScgfCAnY29tdW5lJyxcclxuICAgIGlkOiBzdHJpbmcsXHJcbiAgICBwcm92aW5jaWFJZD86IHN0cmluZyxcclxuICApOiBQcm9taXNlPFVpTmF6aW9uZSB8IFVpUHJvdmluY2lhIHwgVWlDb211bmUgfCBudWxsPiB7XHJcbiAgICBzd2l0Y2ggKHR5cGUpIHtcclxuICAgICAgY2FzZSAnbmF6aW9uZSc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubmF6aW9uaUNhY2hlLmdldChpZCkgPz8gbnVsbDtcclxuICAgICAgY2FzZSAncHJvdmluY2lhJzpcclxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aW5jZUNhY2hlLmdldChpZCkgPz8gbnVsbDtcclxuICAgICAgY2FzZSAnY29tdW5lJzoge1xyXG4gICAgICAgIGlmICghcHJvdmluY2lhSWQpIHJldHVybiB0aGlzLmNvbXVuaUNhY2hlLmdldChpZCkgPz8gbnVsbDtcclxuICAgICAgICBjb25zdCBjb211bmkgPSBhd2FpdCB0aGlzLmdldENvbXVuaUJ5UHJvdmluY2lhKHByb3ZpbmNpYUlkKTtcclxuICAgICAgICByZXR1cm4gY29tdW5pLmZpbmQoKGMpID0+IGMuY29kaWNlQ29tdW5lUGsgPT09IGlkKSA/PyBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyDilIDilIDilIAgSW5pemlhbGl6emF6aW9uZSBjYWNoZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbiAgcHJpdmF0ZSBpbml0aWFsaXplQ2FjaGVzKCk6IHZvaWQge1xyXG4gICAgLy8gTmF6aW9uaVxyXG4gICAgZm9yIChjb25zdCBuIG9mIHRoaXMubmF6aW9uaU1hcC5uYXppb25pKSB7XHJcbiAgICAgIHRoaXMubmF6aW9uaUNhY2hlLnNldChuLngsIHtcclxuICAgICAgICBjb2RTdGF0b1BrOiBuLngsXHJcbiAgICAgICAgY29kaWNlQ2F0YXN0YWxlOiBuLngsXHJcbiAgICAgICAgZGVzY3JpemlvbmU6IG4uZCxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUHJvdmluY2VcclxuICAgIGZvciAoY29uc3QgcCBvZiB0aGlzLmxvY2F0aW9uTWFwLnByb3ZpbmNlKSB7XHJcbiAgICAgIHRoaXMucHJvdmluY2VDYWNoZS5zZXQocC54LCB7XHJcbiAgICAgICAgY29kaWNlUHJvdmluY2lhUGs6IHAueCxcclxuICAgICAgICBub21lUHJvdmluY2lhOiBwLmQsXHJcbiAgICAgICAgc2lnbGFQcm92aW5jaWE6IHAueCxcclxuICAgICAgICB2aXNpYmlsZTogdHJ1ZSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ29tdW5pIChjb24gcmlmZXJpbWVudG8gYWxsYSBwcm92aW5jaWEpXHJcbiAgICBmb3IgKGNvbnN0IFtwcm92aW5jaWFJZCwgY29tdW5pXSBvZiBPYmplY3QuZW50cmllcyh0aGlzLmxvY2F0aW9uTWFwLmNvbXVuaVBlclByb3ZpbmNpYSkpIHtcclxuICAgICAgY29uc3QgcHJvdmluY2lhID0gdGhpcy5wcm92aW5jZUNhY2hlLmdldChwcm92aW5jaWFJZCk7XHJcbiAgICAgIGlmICghcHJvdmluY2lhKSBjb250aW51ZTtcclxuICAgICAgZm9yIChjb25zdCBjIG9mIGNvbXVuaSkge1xyXG4gICAgICAgIHRoaXMuY29tdW5pQ2FjaGUuc2V0KGMueCwge1xyXG4gICAgICAgICAgY29kaWNlQ2F0YXN0YWxlOiBjLngsXHJcbiAgICAgICAgICBjb2RpY2VDb211bmVQazogYy54LFxyXG4gICAgICAgICAgY29tdW5lU29wcHJlc3NvOiBmYWxzZSxcclxuICAgICAgICAgIG5vbWVDb211bmU6IGMuZCxcclxuICAgICAgICAgIHByb3Y6IHByb3ZpbmNpYSxcclxuICAgICAgICAgIHZpc2liaWxlOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNvcnROYXppb25pSXRhbGlhRmlyc3QobmF6aW9uaTogVWlOYXppb25lW10pOiBVaU5hemlvbmVbXSB7XHJcbiAgICByZXR1cm4gbmF6aW9uaS5zb3J0KChhLCBiKSA9PiB7XHJcbiAgICAgIGNvbnN0IGFJdGFsaWEgPSBhLmRlc2NyaXppb25lPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdpdGFsaWEnKSB8fCBhLmNvZFN0YXRvUGsgPT09ICdJVEEnO1xyXG4gICAgICBjb25zdCBiSXRhbGlhID0gYi5kZXNjcml6aW9uZT8udG9Mb3dlckNhc2UoKS5pbmNsdWRlcygnaXRhbGlhJykgfHwgYi5jb2RTdGF0b1BrID09PSAnSVRBJztcclxuICAgICAgaWYgKGFJdGFsaWEgJiYgIWJJdGFsaWEpIHJldHVybiAtMTtcclxuICAgICAgaWYgKCFhSXRhbGlhICYmIGJJdGFsaWEpIHJldHVybiAxO1xyXG4gICAgICByZXR1cm4gKGEuZGVzY3JpemlvbmUgfHwgJycpLmxvY2FsZUNvbXBhcmUoYi5kZXNjcml6aW9uZSB8fCAnJywgJ2l0JywgeyBzZW5zaXRpdml0eTogJ2Jhc2UnIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { HttpClient, HttpParams } from '@angular/common/http';
|
|
2
|
+
import { Injectable, inject } from '@angular/core';
|
|
3
|
+
import { map } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
const DEFAULT_BASE = 'https://nominatim.openstreetmap.org';
|
|
6
|
+
/**
|
|
7
|
+
* Integrazione con l'API pubblica Nominatim (OpenStreetMap) per la ricerca indirizzi.
|
|
8
|
+
* Mappa i risultati sul tipo {@link UiGeocodedLocationType}.
|
|
9
|
+
*
|
|
10
|
+
* In browser è consigliato usare un proxy same-origin per CORS e User-Agent;
|
|
11
|
+
* vedi {@link UiLocationGeocodedFieldConfig.nominatimBaseUrl}.
|
|
12
|
+
*
|
|
13
|
+
* @providedIn root
|
|
14
|
+
*/
|
|
15
|
+
export class UiNominatimGeocodingService {
|
|
16
|
+
constructor() {
|
|
17
|
+
this.http = inject(HttpClient);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Cerca indirizzi in base alla query testuale.
|
|
21
|
+
*
|
|
22
|
+
* @param query - Testo libero inserito dall'utente
|
|
23
|
+
* @param config - Opzioni di ricerca e base URL
|
|
24
|
+
*/
|
|
25
|
+
search(query, config = {}) {
|
|
26
|
+
const trimmed = query.trim();
|
|
27
|
+
const base = (config.nominatimBaseUrl ?? DEFAULT_BASE).replace(/\/$/, '');
|
|
28
|
+
const limit = config.limit ?? 5;
|
|
29
|
+
let params = new HttpParams()
|
|
30
|
+
.set('q', trimmed)
|
|
31
|
+
.set('format', 'json')
|
|
32
|
+
.set('addressdetails', '1')
|
|
33
|
+
.set('limit', String(limit));
|
|
34
|
+
if (config.biasCountry) {
|
|
35
|
+
params = params.set('countrycodes', config.biasCountry.toLowerCase());
|
|
36
|
+
}
|
|
37
|
+
if (config.biasProximity) {
|
|
38
|
+
const { lat, lng } = config.biasProximity;
|
|
39
|
+
const pad = 0.05;
|
|
40
|
+
const left = lng - pad;
|
|
41
|
+
const right = lng + pad;
|
|
42
|
+
const top = lat + pad;
|
|
43
|
+
const bottom = lat - pad;
|
|
44
|
+
params = params.set('viewbox', `${left},${top},${right},${bottom}`).set('bounded', '1');
|
|
45
|
+
}
|
|
46
|
+
const url = `${base}/search`;
|
|
47
|
+
return this.http.get(url, { params }).pipe(map((items) => items.map((item) => this.mapItem(item))));
|
|
48
|
+
}
|
|
49
|
+
/** Converte un risultato Nominatim in {@link UiGeocodedLocationType}. */
|
|
50
|
+
mapItem(item) {
|
|
51
|
+
const addr = item.address ?? {};
|
|
52
|
+
const lat = parseFloat(item.lat);
|
|
53
|
+
const lon = parseFloat(item.lon);
|
|
54
|
+
const bb = item.boundingbox;
|
|
55
|
+
let boundingBox;
|
|
56
|
+
if (bb && bb.length >= 4) {
|
|
57
|
+
const south = parseFloat(bb[0]);
|
|
58
|
+
const north = parseFloat(bb[1]);
|
|
59
|
+
const west = parseFloat(bb[2]);
|
|
60
|
+
const east = parseFloat(bb[3]);
|
|
61
|
+
if (!Number.isNaN(south + north + west + east)) {
|
|
62
|
+
boundingBox = { south, north, west, east };
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
const city = addr['city'] ||
|
|
66
|
+
addr['town'] ||
|
|
67
|
+
addr['village'] ||
|
|
68
|
+
addr['municipality'] ||
|
|
69
|
+
addr['hamlet'] ||
|
|
70
|
+
addr['suburb'];
|
|
71
|
+
const confidence = typeof item.importance === 'number' ? Math.min(1, Math.max(0, item.importance / 0.75)) : undefined;
|
|
72
|
+
const ccRaw = addr['country_code'];
|
|
73
|
+
const countryCode = typeof ccRaw === 'string' ? ccRaw.toUpperCase() : undefined;
|
|
74
|
+
const isItalian = countryCode === 'IT';
|
|
75
|
+
const italian = isItalian
|
|
76
|
+
? {
|
|
77
|
+
comune: city,
|
|
78
|
+
provincia: addr['county'] || addr['state_district'] || addr['province'],
|
|
79
|
+
regione: addr['state'],
|
|
80
|
+
}
|
|
81
|
+
: undefined;
|
|
82
|
+
const foreign = !isItalian
|
|
83
|
+
? {
|
|
84
|
+
locality: city,
|
|
85
|
+
adminArea: addr['state'] || addr['state_district'] || addr['county'],
|
|
86
|
+
countryCode,
|
|
87
|
+
}
|
|
88
|
+
: undefined;
|
|
89
|
+
return {
|
|
90
|
+
label: item.display_name,
|
|
91
|
+
latitude: lat,
|
|
92
|
+
longitude: lon,
|
|
93
|
+
formattedAddress: item.display_name,
|
|
94
|
+
territory: isItalian ? 'italian' : 'foreign',
|
|
95
|
+
italian,
|
|
96
|
+
foreign,
|
|
97
|
+
street: addr['road'] || addr['pedestrian'] || addr['path'],
|
|
98
|
+
streetNumber: addr['house_number'],
|
|
99
|
+
postalCode: addr['postcode'],
|
|
100
|
+
city,
|
|
101
|
+
municipality: addr['municipality'],
|
|
102
|
+
province: addr['state_district'] || addr['county'],
|
|
103
|
+
region: addr['state'],
|
|
104
|
+
country: addr['country'],
|
|
105
|
+
countryCode,
|
|
106
|
+
placeId: String(item.place_id),
|
|
107
|
+
confidence,
|
|
108
|
+
boundingBox,
|
|
109
|
+
source: 'nominatim',
|
|
110
|
+
raw: item,
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiNominatimGeocodingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
114
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiNominatimGeocodingService, providedIn: 'root' }); }
|
|
115
|
+
}
|
|
116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiNominatimGeocodingService, decorators: [{
|
|
117
|
+
type: Injectable,
|
|
118
|
+
args: [{ providedIn: 'root' }]
|
|
119
|
+
}] });
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9taW5hdGltLWdlb2NvZGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctdWktc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWJ1aWxkZXIvc2VydmljZXMvbm9taW5hdGltLWdlb2NvZGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFtQnZDLE1BQU0sWUFBWSxHQUFHLHFDQUFxQyxDQUFDO0FBRTNEOzs7Ozs7OztHQVFHO0FBRUgsTUFBTSxPQUFPLDJCQUEyQjtJQUR4QztRQUVtQixTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBK0c1QztJQTdHQzs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxLQUFhLEVBQUUsU0FBd0MsRUFBRTtRQUM5RCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDN0IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLElBQUksWUFBWSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMxRSxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQztRQUVoQyxJQUFJLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRTthQUMxQixHQUFHLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQzthQUNqQixHQUFHLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQzthQUNyQixHQUFHLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDO2FBQzFCLEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFFL0IsSUFBSSxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBRUQsSUFBSSxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekIsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDO1lBQzFDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQztZQUNqQixNQUFNLElBQUksR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQ3ZCLE1BQU0sS0FBSyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUM7WUFDeEIsTUFBTSxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQztZQUN0QixNQUFNLE1BQU0sR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQ3pCLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLElBQUksSUFBSSxHQUFHLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMxRixDQUFDO1FBRUQsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLFNBQVMsQ0FBQztRQUU3QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUF3QixHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0gsQ0FBQztJQUVELHlFQUF5RTtJQUN6RSxPQUFPLENBQUMsSUFBeUI7UUFDL0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDaEMsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFFNUIsSUFBSSxXQUFrRCxDQUFDO1FBQ3ZELElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDekIsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoQyxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0IsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQy9DLFdBQVcsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQzdDLENBQUM7UUFDSCxDQUFDO1FBRUQsTUFBTSxJQUFJLEdBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUNaLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDWixJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ2YsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDO1lBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sVUFBVSxHQUNkLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRXJHLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNuQyxNQUFNLFdBQVcsR0FBRyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ2hGLE1BQU0sU0FBUyxHQUFHLFdBQVcsS0FBSyxJQUFJLENBQUM7UUFFdkMsTUFBTSxPQUFPLEdBQXlDLFNBQVM7WUFDN0QsQ0FBQyxDQUFDO2dCQUNFLE1BQU0sRUFBRSxJQUFJO2dCQUNaLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQztnQkFDdkUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDdkI7WUFDSCxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWQsTUFBTSxPQUFPLEdBQXlDLENBQUMsU0FBUztZQUM5RCxDQUFDLENBQUM7Z0JBQ0UsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUNwRSxXQUFXO2FBQ1o7WUFDSCxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWQsT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWTtZQUN4QixRQUFRLEVBQUUsR0FBRztZQUNiLFNBQVMsRUFBRSxHQUFHO1lBQ2QsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDbkMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQzVDLE9BQU87WUFDUCxPQUFPO1lBQ1AsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUMxRCxZQUFZLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUNsQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUM1QixJQUFJO1lBQ0osWUFBWSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUM7WUFDbEMsUUFBUSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDbEQsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDckIsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDeEIsV0FBVztZQUNYLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM5QixVQUFVO1lBQ1YsV0FBVztZQUNYLE1BQU0sRUFBRSxXQUFXO1lBQ25CLEdBQUcsRUFBRSxJQUFJO1NBQ1YsQ0FBQztJQUNKLENBQUM7K0dBL0dVLDJCQUEyQjttSEFBM0IsMkJBQTJCLGNBRGQsTUFBTTs7NEZBQ25CLDJCQUEyQjtrQkFEdkMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgbWFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB0eXBlIHtcclxuICBVaUdlb2NvZGVkRm9yZWlnbkRldGFpbHMsXHJcbiAgVWlHZW9jb2RlZEl0YWxpYW5EZXRhaWxzLFxyXG4gIFVpR2VvY29kZWRMb2NhdGlvblR5cGUsXHJcbiAgVWlMb2NhdGlvbkdlb2NvZGVkRmllbGRDb25maWcsXHJcbn0gZnJvbSAnLi4vdHlwZXMvZ2VvY29kZWQtbG9jYXRpb24udHlwZXMnO1xyXG5cclxuLyoqIFJpc3Bvc3RhIGVsZW1lbnRhcmUgZGVsbCdBUEkgc2VhcmNoIGRpIE5vbWluYXRpbSAoZm9ybWF0PWpzb24pLiAqL1xyXG5pbnRlcmZhY2UgTm9taW5hdGltU2VhcmNoSXRlbSB7XHJcbiAgcGxhY2VfaWQ6IG51bWJlcjtcclxuICBsYXQ6IHN0cmluZztcclxuICBsb246IHN0cmluZztcclxuICBkaXNwbGF5X25hbWU6IHN0cmluZztcclxuICBpbXBvcnRhbmNlPzogbnVtYmVyO1xyXG4gIGJvdW5kaW5nYm94PzogW3N0cmluZywgc3RyaW5nLCBzdHJpbmcsIHN0cmluZ107XHJcbiAgYWRkcmVzcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcbn1cclxuXHJcbmNvbnN0IERFRkFVTFRfQkFTRSA9ICdodHRwczovL25vbWluYXRpbS5vcGVuc3RyZWV0bWFwLm9yZyc7XHJcblxyXG4vKipcclxuICogSW50ZWdyYXppb25lIGNvbiBsJ0FQSSBwdWJibGljYSBOb21pbmF0aW0gKE9wZW5TdHJlZXRNYXApIHBlciBsYSByaWNlcmNhIGluZGlyaXp6aS5cclxuICogTWFwcGEgaSByaXN1bHRhdGkgc3VsIHRpcG8ge0BsaW5rIFVpR2VvY29kZWRMb2NhdGlvblR5cGV9LlxyXG4gKlxyXG4gKiBJbiBicm93c2VyIMOoIGNvbnNpZ2xpYXRvIHVzYXJlIHVuIHByb3h5IHNhbWUtb3JpZ2luIHBlciBDT1JTIGUgVXNlci1BZ2VudDtcclxuICogdmVkaSB7QGxpbmsgVWlMb2NhdGlvbkdlb2NvZGVkRmllbGRDb25maWcubm9taW5hdGltQmFzZVVybH0uXHJcbiAqXHJcbiAqIEBwcm92aWRlZEluIHJvb3RcclxuICovXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBVaU5vbWluYXRpbUdlb2NvZGluZ1NlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2VyY2EgaW5kaXJpenppIGluIGJhc2UgYWxsYSBxdWVyeSB0ZXN0dWFsZS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBxdWVyeSAtIFRlc3RvIGxpYmVybyBpbnNlcml0byBkYWxsJ3V0ZW50ZVxyXG4gICAqIEBwYXJhbSBjb25maWcgLSBPcHppb25pIGRpIHJpY2VyY2EgZSBiYXNlIFVSTFxyXG4gICAqL1xyXG4gIHNlYXJjaChxdWVyeTogc3RyaW5nLCBjb25maWc6IFVpTG9jYXRpb25HZW9jb2RlZEZpZWxkQ29uZmlnID0ge30pOiBPYnNlcnZhYmxlPFVpR2VvY29kZWRMb2NhdGlvblR5cGVbXT4ge1xyXG4gICAgY29uc3QgdHJpbW1lZCA9IHF1ZXJ5LnRyaW0oKTtcclxuICAgIGNvbnN0IGJhc2UgPSAoY29uZmlnLm5vbWluYXRpbUJhc2VVcmwgPz8gREVGQVVMVF9CQVNFKS5yZXBsYWNlKC9cXC8kLywgJycpO1xyXG4gICAgY29uc3QgbGltaXQgPSBjb25maWcubGltaXQgPz8gNTtcclxuXHJcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxyXG4gICAgICAuc2V0KCdxJywgdHJpbW1lZClcclxuICAgICAgLnNldCgnZm9ybWF0JywgJ2pzb24nKVxyXG4gICAgICAuc2V0KCdhZGRyZXNzZGV0YWlscycsICcxJylcclxuICAgICAgLnNldCgnbGltaXQnLCBTdHJpbmcobGltaXQpKTtcclxuXHJcbiAgICBpZiAoY29uZmlnLmJpYXNDb3VudHJ5KSB7XHJcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2NvdW50cnljb2RlcycsIGNvbmZpZy5iaWFzQ291bnRyeS50b0xvd2VyQ2FzZSgpKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY29uZmlnLmJpYXNQcm94aW1pdHkpIHtcclxuICAgICAgY29uc3QgeyBsYXQsIGxuZyB9ID0gY29uZmlnLmJpYXNQcm94aW1pdHk7XHJcbiAgICAgIGNvbnN0IHBhZCA9IDAuMDU7XHJcbiAgICAgIGNvbnN0IGxlZnQgPSBsbmcgLSBwYWQ7XHJcbiAgICAgIGNvbnN0IHJpZ2h0ID0gbG5nICsgcGFkO1xyXG4gICAgICBjb25zdCB0b3AgPSBsYXQgKyBwYWQ7XHJcbiAgICAgIGNvbnN0IGJvdHRvbSA9IGxhdCAtIHBhZDtcclxuICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgndmlld2JveCcsIGAke2xlZnR9LCR7dG9wfSwke3JpZ2h0fSwke2JvdHRvbX1gKS5zZXQoJ2JvdW5kZWQnLCAnMScpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHVybCA9IGAke2Jhc2V9L3NlYXJjaGA7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8Tm9taW5hdGltU2VhcmNoSXRlbVtdPih1cmwsIHsgcGFyYW1zIH0pLnBpcGUobWFwKChpdGVtcykgPT4gaXRlbXMubWFwKChpdGVtKSA9PiB0aGlzLm1hcEl0ZW0oaXRlbSkpKSk7XHJcbiAgfVxyXG5cclxuICAvKiogQ29udmVydGUgdW4gcmlzdWx0YXRvIE5vbWluYXRpbSBpbiB7QGxpbmsgVWlHZW9jb2RlZExvY2F0aW9uVHlwZX0uICovXHJcbiAgbWFwSXRlbShpdGVtOiBOb21pbmF0aW1TZWFyY2hJdGVtKTogVWlHZW9jb2RlZExvY2F0aW9uVHlwZSB7XHJcbiAgICBjb25zdCBhZGRyID0gaXRlbS5hZGRyZXNzID8/IHt9O1xyXG4gICAgY29uc3QgbGF0ID0gcGFyc2VGbG9hdChpdGVtLmxhdCk7XHJcbiAgICBjb25zdCBsb24gPSBwYXJzZUZsb2F0KGl0ZW0ubG9uKTtcclxuICAgIGNvbnN0IGJiID0gaXRlbS5ib3VuZGluZ2JveDtcclxuXHJcbiAgICBsZXQgYm91bmRpbmdCb3g6IFVpR2VvY29kZWRMb2NhdGlvblR5cGVbJ2JvdW5kaW5nQm94J107XHJcbiAgICBpZiAoYmIgJiYgYmIubGVuZ3RoID49IDQpIHtcclxuICAgICAgY29uc3Qgc291dGggPSBwYXJzZUZsb2F0KGJiWzBdKTtcclxuICAgICAgY29uc3Qgbm9ydGggPSBwYXJzZUZsb2F0KGJiWzFdKTtcclxuICAgICAgY29uc3Qgd2VzdCA9IHBhcnNlRmxvYXQoYmJbMl0pO1xyXG4gICAgICBjb25zdCBlYXN0ID0gcGFyc2VGbG9hdChiYlszXSk7XHJcbiAgICAgIGlmICghTnVtYmVyLmlzTmFOKHNvdXRoICsgbm9ydGggKyB3ZXN0ICsgZWFzdCkpIHtcclxuICAgICAgICBib3VuZGluZ0JveCA9IHsgc291dGgsIG5vcnRoLCB3ZXN0LCBlYXN0IH07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBjaXR5ID1cclxuICAgICAgYWRkclsnY2l0eSddIHx8XHJcbiAgICAgIGFkZHJbJ3Rvd24nXSB8fFxyXG4gICAgICBhZGRyWyd2aWxsYWdlJ10gfHxcclxuICAgICAgYWRkclsnbXVuaWNpcGFsaXR5J10gfHxcclxuICAgICAgYWRkclsnaGFtbGV0J10gfHxcclxuICAgICAgYWRkclsnc3VidXJiJ107XHJcblxyXG4gICAgY29uc3QgY29uZmlkZW5jZSA9XHJcbiAgICAgIHR5cGVvZiBpdGVtLmltcG9ydGFuY2UgPT09ICdudW1iZXInID8gTWF0aC5taW4oMSwgTWF0aC5tYXgoMCwgaXRlbS5pbXBvcnRhbmNlIC8gMC43NSkpIDogdW5kZWZpbmVkO1xyXG5cclxuICAgIGNvbnN0IGNjUmF3ID0gYWRkclsnY291bnRyeV9jb2RlJ107XHJcbiAgICBjb25zdCBjb3VudHJ5Q29kZSA9IHR5cGVvZiBjY1JhdyA9PT0gJ3N0cmluZycgPyBjY1Jhdy50b1VwcGVyQ2FzZSgpIDogdW5kZWZpbmVkO1xyXG4gICAgY29uc3QgaXNJdGFsaWFuID0gY291bnRyeUNvZGUgPT09ICdJVCc7XHJcblxyXG4gICAgY29uc3QgaXRhbGlhbjogVWlHZW9jb2RlZEl0YWxpYW5EZXRhaWxzIHwgdW5kZWZpbmVkID0gaXNJdGFsaWFuXHJcbiAgICAgID8ge1xyXG4gICAgICAgICAgY29tdW5lOiBjaXR5LFxyXG4gICAgICAgICAgcHJvdmluY2lhOiBhZGRyWydjb3VudHknXSB8fCBhZGRyWydzdGF0ZV9kaXN0cmljdCddIHx8IGFkZHJbJ3Byb3ZpbmNlJ10sXHJcbiAgICAgICAgICByZWdpb25lOiBhZGRyWydzdGF0ZSddLFxyXG4gICAgICAgIH1cclxuICAgICAgOiB1bmRlZmluZWQ7XHJcblxyXG4gICAgY29uc3QgZm9yZWlnbjogVWlHZW9jb2RlZEZvcmVpZ25EZXRhaWxzIHwgdW5kZWZpbmVkID0gIWlzSXRhbGlhblxyXG4gICAgICA/IHtcclxuICAgICAgICAgIGxvY2FsaXR5OiBjaXR5LFxyXG4gICAgICAgICAgYWRtaW5BcmVhOiBhZGRyWydzdGF0ZSddIHx8IGFkZHJbJ3N0YXRlX2Rpc3RyaWN0J10gfHwgYWRkclsnY291bnR5J10sXHJcbiAgICAgICAgICBjb3VudHJ5Q29kZSxcclxuICAgICAgICB9XHJcbiAgICAgIDogdW5kZWZpbmVkO1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIGxhYmVsOiBpdGVtLmRpc3BsYXlfbmFtZSxcclxuICAgICAgbGF0aXR1ZGU6IGxhdCxcclxuICAgICAgbG9uZ2l0dWRlOiBsb24sXHJcbiAgICAgIGZvcm1hdHRlZEFkZHJlc3M6IGl0ZW0uZGlzcGxheV9uYW1lLFxyXG4gICAgICB0ZXJyaXRvcnk6IGlzSXRhbGlhbiA/ICdpdGFsaWFuJyA6ICdmb3JlaWduJyxcclxuICAgICAgaXRhbGlhbixcclxuICAgICAgZm9yZWlnbixcclxuICAgICAgc3RyZWV0OiBhZGRyWydyb2FkJ10gfHwgYWRkclsncGVkZXN0cmlhbiddIHx8IGFkZHJbJ3BhdGgnXSxcclxuICAgICAgc3RyZWV0TnVtYmVyOiBhZGRyWydob3VzZV9udW1iZXInXSxcclxuICAgICAgcG9zdGFsQ29kZTogYWRkclsncG9zdGNvZGUnXSxcclxuICAgICAgY2l0eSxcclxuICAgICAgbXVuaWNpcGFsaXR5OiBhZGRyWydtdW5pY2lwYWxpdHknXSxcclxuICAgICAgcHJvdmluY2U6IGFkZHJbJ3N0YXRlX2Rpc3RyaWN0J10gfHwgYWRkclsnY291bnR5J10sXHJcbiAgICAgIHJlZ2lvbjogYWRkclsnc3RhdGUnXSxcclxuICAgICAgY291bnRyeTogYWRkclsnY291bnRyeSddLFxyXG4gICAgICBjb3VudHJ5Q29kZSxcclxuICAgICAgcGxhY2VJZDogU3RyaW5nKGl0ZW0ucGxhY2VfaWQpLFxyXG4gICAgICBjb25maWRlbmNlLFxyXG4gICAgICBib3VuZGluZ0JveCxcclxuICAgICAgc291cmNlOiAnbm9taW5hdGltJyxcclxuICAgICAgcmF3OiBpdGVtLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|