@seniorsistemas/angular-components 18.1.2 → 19.0.0
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/bignumber-input/lib/bignumber-input/bignumber-input.directive.d.ts +1 -1
- package/common/deprecated-selector/README.md +74 -0
- package/common/deprecated-selector/deprecated-selector.directive.d.ts +15 -0
- package/common/deprecated-selector/index.d.ts +5 -0
- package/common/deprecated-selector/public-api.d.ts +7 -0
- package/content-generator/index.d.ts +5 -0
- package/{text-area-ia/lib/text-area-ia/text-area-ia.component.d.ts → content-generator/lib/content-generator/content-generator.component.d.ts} +8 -4
- package/content-generator/lib/content-generator/content-generator.module.d.ts +16 -0
- package/content-generator/public-api.d.ts +2 -0
- package/custom-fields/lib/custom-fields/custom-fields.component.d.ts +9 -8
- package/custom-fields/lib/custom-fields/custom-fields.service.d.ts +4 -3
- package/custom-fields/lib/custom-fields/models/custom-field-type.d.ts +33 -0
- package/custom-fields/lib/custom-fields/models/index.d.ts +1 -0
- package/custom-fields/public-api.d.ts +2 -1
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/field-label/field-label.component.d.ts +3 -3
- package/dynamic-form/dynamic-form/components/grid/row/row.component.d.ts +19 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/lookup.component.d.ts +20 -35
- package/dynamic-form/dynamic-form/components/structure/base-structure-component.d.ts +10 -0
- package/dynamic-form/dynamic-form/components/structure/fieldset/fieldset.component.d.ts +12 -0
- package/dynamic-form/dynamic-form/components/structure/section/section.component.d.ts +14 -0
- package/dynamic-form/dynamic-form/configurations/registry.d.ts +8 -0
- package/dynamic-form/dynamic-form/configurations/structure/fieldset.d.ts +11 -0
- package/dynamic-form/dynamic-form/configurations/structure/row.d.ts +46 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/configurations/structure/section.d.ts +9 -8
- package/dynamic-form/dynamic-form/configurations/structure/structure.d.ts +11 -0
- package/dynamic-form/dynamic-form/dynamic-form.component.d.ts +30 -0
- package/dynamic-form/dynamic-form/dynamic-form.d.ts +35 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/dynamic-form.directive.d.ts +7 -13
- package/dynamic-form/dynamic-form/dynamic-form.module.d.ts +10 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/addon-config.d.ts +2 -1
- package/dynamic-form/dynamic-form/form-field/configurations/field-size.d.ts +14 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.d.ts +21 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.d.ts +28 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.d.ts +28 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.d.ts +21 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.d.ts +12 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.d.ts +16 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.d.ts +32 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.d.ts +11 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.d.ts +18 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/content-generator-field.d.ts +28 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/country-phone-picker-field.d.ts +6 -7
- package/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.d.ts +15 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/field.d.ts +16 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +56 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/number-field.d.ts +9 -22
- package/dynamic-form/dynamic-form/form-field/configurations/fields/password-field.d.ts +30 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.d.ts +24 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/radio-button-field.d.ts +7 -9
- package/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.d.ts +32 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.d.ts +24 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.d.ts +16 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.d.ts +18 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.d.ts +37 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/autocomplete/autocomplete-field.component.d.ts +9 -6
- package/dynamic-form/dynamic-form/form-field/fields/base-field-component.d.ts +7 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/bignumber/bignumber-field.component.d.ts +9 -8
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/boolean/boolean-radio-field/boolean-field.component.d.ts +4 -4
- package/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.d.ts +10 -0
- package/dynamic-form/dynamic-form/form-field/fields/button-field/button-field.component.d.ts +11 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/calendar/calendar-field.component.d.ts +10 -10
- package/dynamic-form/dynamic-form/form-field/fields/checkbox/checkbox-field.component.d.ts +10 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/chips/chips-field.component.d.ts +5 -5
- package/dynamic-form/dynamic-form/form-field/fields/content-generator/content-generator-field.component.d.ts +10 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/country-phone-picker/country-phone-picker-field.component.d.ts +4 -4
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/currency/currency-field.component.d.ts +10 -6
- package/dynamic-form/{lib/dynamic-form/form-field/fields/file-upload/file-upload-field.component.d.ts → dynamic-form/form-field/fields/file-picker/file-picker-field.component.d.ts} +7 -6
- package/dynamic-form/dynamic-form/form-field/fields/lookup/lookup-field.component.d.ts +18 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/number/number-field.component.d.ts +8 -9
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/password/password-field.component.d.ts +8 -6
- package/dynamic-form/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.d.ts +10 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/radio-button/radio-button-field.component.d.ts +5 -5
- package/dynamic-form/dynamic-form/form-field/fields/select/select-field.component.d.ts +12 -0
- package/dynamic-form/dynamic-form/form-field/fields/slider/slider-field.component.d.ts +23 -0
- package/dynamic-form/dynamic-form/form-field/fields/star-rating/star-rating-field.component.d.ts +11 -0
- package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/text/text-field.component.d.ts +8 -8
- package/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.d.ts +18 -0
- package/dynamic-form/dynamic-form/services/form-field-utils.service.d.ts +15 -0
- package/dynamic-form/public-api.d.ts +35 -43
- package/esm2022/autocomplete/lib/autocomplete/autocomplete.component.mjs +3 -3
- package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.directive.mjs +8 -6
- package/esm2022/common/deprecated-selector/deprecated-selector.directive.mjs +28 -0
- package/esm2022/common/deprecated-selector/public-api.mjs +8 -0
- package/esm2022/common/deprecated-selector/seniorsistemas-angular-components-common-deprecated-selector.mjs +5 -0
- package/esm2022/common/lib/svg-factory/components/iassist-icon/iassist-icon.component.mjs +3 -3
- package/esm2022/content-generator/lib/content-generator/content-generator.component.mjs +170 -0
- package/esm2022/content-generator/lib/content-generator/content-generator.module.mjs +54 -0
- package/esm2022/content-generator/lib/services/IAssist/iassist.service.mjs +77 -0
- package/esm2022/content-generator/lib/services/IAssist/models/iassist-input-data.mjs +3 -0
- package/esm2022/content-generator/lib/services/IAssist/models/iassist-response.mjs +3 -0
- package/esm2022/content-generator/public-api.mjs +3 -0
- package/esm2022/content-generator/seniorsistemas-angular-components-content-generator.mjs +5 -0
- package/esm2022/control-errors/lib/control-errors/control-errors.component.mjs +2 -2
- package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +68 -69
- package/esm2022/custom-fields/lib/custom-fields/custom-fields.service.mjs +5 -5
- package/esm2022/custom-fields/lib/custom-fields/models/custom-field-type.mjs +26 -1
- package/esm2022/custom-fields/lib/custom-fields/models/index.mjs +2 -0
- package/esm2022/custom-fields/public-api.mjs +3 -2
- package/esm2022/dynamic-form/dynamic-form/components/field-label/field-label.component.mjs +21 -0
- package/esm2022/dynamic-form/dynamic-form/components/grid/row/row.component.mjs +41 -0
- package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +689 -0
- package/esm2022/dynamic-form/dynamic-form/components/lookup/types/default-filter.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/components/lookup/types/label-options.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/components/structure/base-structure-component.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/components/structure/fieldset/fieldset.component.mjs +18 -0
- package/esm2022/dynamic-form/dynamic-form/components/structure/section/section.component.mjs +23 -0
- package/esm2022/dynamic-form/dynamic-form/configurations/registry.mjs +12 -0
- package/esm2022/dynamic-form/dynamic-form/configurations/structure/fieldset.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/configurations/structure/row.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/configurations/structure/section.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/configurations/structure/structure.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/dynamic-form.component.mjs +48 -0
- package/esm2022/dynamic-form/dynamic-form/dynamic-form.directive.mjs +76 -0
- package/esm2022/dynamic-form/dynamic-form/dynamic-form.mjs +77 -0
- package/esm2022/dynamic-form/dynamic-form/dynamic-form.module.mjs +20 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/addon-config.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/field-size.mjs +34 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/content-generator-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/field.mjs +3 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/password-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +9 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +42 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/base-field-component.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +135 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +22 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +20 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/button-field/button-field.component.mjs +28 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +135 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/checkbox/checkbox-field.component.mjs +17 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/chips/chips-field.component.mjs +55 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/content-generator/content-generator-field.component.mjs +18 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +25 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.mjs +100 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/file-picker/file-picker-field.component.mjs +47 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/lookup/lookup-field.component.mjs +41 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +129 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs +85 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.mjs +18 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +57 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/select/select-field.component.mjs +20 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/slider/slider-field.component.mjs +115 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/star-rating/star-rating-field.component.mjs +22 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.mjs +93 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +36 -0
- package/esm2022/dynamic-form/dynamic-form/services/form-field-utils.service.mjs +39 -0
- package/esm2022/dynamic-form/public-api.mjs +62 -44
- package/esm2022/dynamic-form/seniorsistemas-angular-components-dynamic-form.mjs +1 -1
- package/esm2022/file-picker/lib/file-picker/file-picker.component.mjs +318 -0
- package/esm2022/{file-upload/lib/file-upload/file-upload.module.mjs → file-picker/lib/file-picker/file-picker.module.mjs} +11 -11
- package/esm2022/{file-upload/lib/file-upload/file-upload.service.mjs → file-picker/lib/file-picker/file-picker.service.mjs} +5 -5
- package/esm2022/{file-upload/lib/file-upload → file-picker/lib/file-picker}/models/file-dto.mjs +1 -1
- package/esm2022/{file-upload/lib/file-upload/models/file-upload-permissions.mjs → file-picker/lib/file-picker/models/file-picker-permissions.mjs} +1 -1
- package/esm2022/{file-upload/lib/file-upload → file-picker/lib/file-picker}/models/list-blob-metadata.mjs +1 -1
- package/esm2022/{file-upload/lib/file-upload → file-picker/lib/file-picker}/models/uploadError.mjs +1 -1
- package/esm2022/{file-upload/lib/file-upload → file-picker/lib/file-picker}/models/validate-errors.mjs +1 -1
- package/esm2022/file-picker/public-api.mjs +4 -0
- package/esm2022/{slide-panel/seniorsistemas-angular-components-slide-panel.mjs → file-picker/seniorsistemas-angular-components-file-picker.mjs} +1 -1
- package/esm2022/file-upload/public-api.mjs +14 -3
- package/esm2022/ia-insight/public-api.mjs +23 -4
- package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-content-generator/inline-edit-content-generator.component.mjs +32 -0
- package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-lookup/inline-edit-lookup.component.mjs +3 -5
- package/esm2022/inline-edit/lib/inline-edit/components/index.mjs +2 -2
- package/esm2022/inline-edit/lib/inline-edit/fields/index.mjs +2 -2
- package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-content-generator-field.mjs +7 -0
- package/esm2022/inline-edit/lib/inline-edit/inline-edit.component.mjs +4 -4
- package/esm2022/inline-edit/lib/inline-edit/inline-edit.module.mjs +8 -8
- package/esm2022/inline-edit/public-api.mjs +2 -2
- package/esm2022/insights/lib/insights/components/insights-card/components/index.mjs +2 -0
- package/esm2022/insights/lib/insights/components/insights-card/components/insights-card-loader/insights-card-loader.component.mjs +13 -0
- package/esm2022/insights/lib/insights/components/insights-card/insights-card.component.mjs +94 -0
- package/esm2022/insights/lib/insights/components/insights-sidebar/insights-sidebar.component.mjs +59 -0
- package/esm2022/insights/lib/insights/insights.component.mjs +89 -0
- package/esm2022/insights/lib/insights/insights.module.mjs +47 -0
- package/esm2022/insights/lib/insights/models/index.mjs +2 -0
- package/esm2022/insights/lib/insights/models/insights-item.mjs +2 -0
- package/esm2022/insights/lib/insights/models/insights-template-types.mjs +2 -0
- package/esm2022/insights/public-api.mjs +4 -0
- package/esm2022/insights/seniorsistemas-angular-components-insights.mjs +5 -0
- package/esm2022/optional-fields/editor/editor-field/editor-field.component.mjs +18 -0
- package/esm2022/optional-fields/editor/editor-field.mjs +17 -0
- package/esm2022/optional-fields/editor/public-api.mjs +2 -0
- package/esm2022/optional-fields/editor/seniorsistemas-angular-components-optional-fields-editor.mjs +5 -0
- package/esm2022/product-header/public-api.mjs +23 -3
- package/esm2022/select/lib/select/select.component.mjs +3 -3
- package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.mjs +158 -0
- package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.module.mjs +20 -0
- package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.service.mjs +26 -0
- package/esm2022/slide-in-bar/public-api.mjs +4 -0
- package/esm2022/slide-in-bar/seniorsistemas-angular-components-slide-in-bar.mjs +5 -0
- package/esm2022/stepper/lib/stepper/models/index.mjs +2 -0
- package/esm2022/stepper/lib/stepper/models/step-selection-event.mjs +2 -0
- package/esm2022/stepper/lib/stepper/models/step-state.mjs +7 -0
- package/esm2022/stepper/lib/stepper/models/step.mjs +2 -0
- package/esm2022/stepper/lib/stepper/stepper.component.mjs +138 -0
- package/esm2022/stepper/lib/stepper/stepper.module.mjs +19 -0
- package/esm2022/stepper/public-api.mjs +4 -0
- package/esm2022/stepper/seniorsistemas-angular-components-stepper.mjs +5 -0
- package/esm2022/table/lib/table/table-column/models/dynamic-editable-grid.interface.mjs +1 -1
- package/esm2022/text-area-ia/public-api.mjs +23 -3
- package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.mjs +3 -3
- package/esm2022/topbar/lib/topbar/topbar.component.mjs +65 -0
- package/esm2022/topbar/lib/topbar/topbar.module.mjs +20 -0
- package/esm2022/topbar/public-api.mjs +3 -0
- package/esm2022/topbar/seniorsistemas-angular-components-topbar.mjs +5 -0
- package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs +7 -5
- package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-common-deprecated-selector.mjs +42 -0
- package/fesm2022/seniorsistemas-angular-components-common-deprecated-selector.mjs.map +1 -0
- package/fesm2022/seniorsistemas-angular-components-common.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-common.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +299 -0
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -0
- package/fesm2022/seniorsistemas-angular-components-control-errors.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-control-errors.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +95 -71
- package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +882 -2554
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +361 -0
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -0
- package/fesm2022/seniorsistemas-angular-components-file-upload.mjs +14 -330
- package/fesm2022/seniorsistemas-angular-components-file-upload.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-ia-insight.mjs +23 -260
- package/fesm2022/seniorsistemas-angular-components-ia-insight.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +20 -21
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-insights.mjs +287 -0
- package/fesm2022/seniorsistemas-angular-components-insights.mjs.map +1 -0
- package/fesm2022/seniorsistemas-angular-components-optional-fields-editor.mjs +39 -0
- package/fesm2022/seniorsistemas-angular-components-optional-fields-editor.mjs.map +1 -0
- package/fesm2022/seniorsistemas-angular-components-product-header.mjs +23 -61
- package/fesm2022/seniorsistemas-angular-components-product-header.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-select.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs +202 -0
- package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs.map +1 -0
- package/fesm2022/seniorsistemas-angular-components-stepper.mjs +166 -0
- package/fesm2022/seniorsistemas-angular-components-stepper.mjs.map +1 -0
- package/fesm2022/seniorsistemas-angular-components-text-area-ia.mjs +23 -268
- package/fesm2022/seniorsistemas-angular-components-text-area-ia.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-topbar.mjs +88 -0
- package/fesm2022/seniorsistemas-angular-components-topbar.mjs.map +1 -0
- package/{slide-panel → file-picker}/index.d.ts +1 -1
- package/file-picker/lib/file-picker/file-picker.component.d.ts +81 -0
- package/{file-upload/lib/file-upload/file-upload.module.d.ts → file-picker/lib/file-picker/file-picker.module.d.ts} +5 -5
- package/{file-upload/lib/file-upload/file-upload.service.d.ts → file-picker/lib/file-picker/file-picker.service.d.ts} +3 -3
- package/file-picker/lib/file-picker/models/file-picker-permissions.d.ts +2 -0
- package/file-picker/public-api.d.ts +7 -0
- package/file-upload/README.md +45 -0
- package/file-upload/public-api.d.ts +25 -6
- package/ia-insight/public-api.d.ts +32 -3
- package/inline-edit/lib/inline-edit/components/fields/inline-edit-content-generator/inline-edit-content-generator.component.d.ts +13 -0
- package/inline-edit/lib/inline-edit/components/index.d.ts +1 -1
- package/inline-edit/lib/inline-edit/fields/index.d.ts +2 -2
- package/inline-edit/lib/inline-edit/fields/inline-edit-content-generator-field.d.ts +6 -0
- package/inline-edit/lib/inline-edit/inline-edit.module.d.ts +3 -3
- package/inline-edit/public-api.d.ts +2 -2
- package/insights/index.d.ts +5 -0
- package/insights/lib/insights/components/insights-card/components/index.d.ts +1 -0
- package/insights/lib/insights/components/insights-card/components/insights-card-loader/insights-card-loader.component.d.ts +5 -0
- package/{ia-insight/lib/ia-insight/components/ia-insight-card/ia-insight-card.component.d.ts → insights/lib/insights/components/insights-card/insights-card.component.d.ts} +5 -5
- package/insights/lib/insights/components/insights-sidebar/insights-sidebar.component.d.ts +21 -0
- package/insights/lib/insights/insights.component.d.ts +30 -0
- package/insights/lib/insights/insights.module.d.ts +17 -0
- package/insights/lib/insights/models/index.d.ts +2 -0
- package/{ia-insight/lib/ia-insight/models/ia-insight-item.d.ts → insights/lib/insights/models/insights-item.d.ts} +1 -1
- package/insights/lib/insights/models/insights-template-types.d.ts +1 -0
- package/insights/public-api.d.ts +3 -0
- package/optional-fields/editor/editor-field/editor-field.component.d.ts +10 -0
- package/optional-fields/editor/editor-field.d.ts +17 -0
- package/optional-fields/editor/index.d.ts +5 -0
- package/optional-fields/editor/public-api.d.ts +1 -0
- package/package.json +62 -25
- package/product-header/public-api.d.ts +21 -2
- package/slide-in-bar/index.d.ts +5 -0
- package/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.d.ts +33 -0
- package/slide-in-bar/lib/slide-in-bar/slide-in-bar.module.d.ts +8 -0
- package/{slide-panel/lib/slide-panel/slide-panel.service.d.ts → slide-in-bar/lib/slide-in-bar/slide-in-bar.service.d.ts} +3 -3
- package/slide-in-bar/public-api.d.ts +3 -0
- package/stepper/index.d.ts +5 -0
- package/stepper/lib/stepper/models/index.d.ts +3 -0
- package/stepper/lib/stepper/models/step-selection-event.d.ts +6 -0
- package/stepper/lib/stepper/models/step-state.d.ts +5 -0
- package/stepper/lib/stepper/models/step.d.ts +11 -0
- package/stepper/lib/stepper/stepper.component.d.ts +20 -0
- package/stepper/lib/stepper/stepper.module.d.ts +9 -0
- package/stepper/public-api.d.ts +3 -0
- package/styles.css +9 -1
- package/table/lib/table/table-column/models/dynamic-editable-grid.interface.d.ts +2 -2
- package/text-area-ia/public-api.d.ts +21 -2
- package/{steps → topbar}/index.d.ts +1 -1
- package/topbar/lib/topbar/topbar.component.d.ts +16 -0
- package/topbar/lib/topbar/topbar.module.d.ts +10 -0
- package/topbar/public-api.d.ts +2 -0
- package/dynamic-form/lib/dynamic-form/components/grid/row/row.component.d.ts +0 -15
- package/dynamic-form/lib/dynamic-form/components/structure/base-structure-component.d.ts +0 -8
- package/dynamic-form/lib/dynamic-form/components/structure/fieldset/fieldset.component.d.ts +0 -12
- package/dynamic-form/lib/dynamic-form/components/structure/section/section.component.d.ts +0 -14
- package/dynamic-form/lib/dynamic-form/configurations/dynamic-config.d.ts +0 -3
- package/dynamic-form/lib/dynamic-form/configurations/dynamic-type.d.ts +0 -24
- package/dynamic-form/lib/dynamic-form/configurations/grid/grid.d.ts +0 -14
- package/dynamic-form/lib/dynamic-form/configurations/grid/row.d.ts +0 -8
- package/dynamic-form/lib/dynamic-form/configurations/grid-type.d.ts +0 -3
- package/dynamic-form/lib/dynamic-form/configurations/structure/fieldset.d.ts +0 -10
- package/dynamic-form/lib/dynamic-form/configurations/structure/structure.d.ts +0 -14
- package/dynamic-form/lib/dynamic-form/configurations/structure-type.d.ts +0 -4
- package/dynamic-form/lib/dynamic-form/dynamic-form.component.d.ts +0 -19
- package/dynamic-form/lib/dynamic-form/dynamic-form.d.ts +0 -57
- package/dynamic-form/lib/dynamic-form/dynamic-form.module.d.ts +0 -83
- package/dynamic-form/lib/dynamic-form/form-field/configurations/field-size.d.ts +0 -7
- package/dynamic-form/lib/dynamic-form/form-field/configurations/field-type.d.ts +0 -32
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/autocomplete-field.d.ts +0 -30
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/bignumber-field.d.ts +0 -38
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/blob-field.d.ts +0 -43
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-field.d.ts +0 -29
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-switch-field.d.ts +0 -11
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/button-field.d.ts +0 -34
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/calendar-field.d.ts +0 -45
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/checkbox-field.d.ts +0 -9
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/chips-field.d.ts +0 -24
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/currency-field.d.ts +0 -9
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/decimal-field.d.ts +0 -14
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/editor-field.d.ts +0 -18
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/field.d.ts +0 -96
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +0 -97
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/password-field.d.ts +0 -45
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/profile-picture.d.ts +0 -35
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/select-field.d.ts +0 -41
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/slider-field.d.ts +0 -32
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/star-rating-field.d.ts +0 -17
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-field.d.ts +0 -24
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-ia-field.d.ts +0 -26
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-field.d.ts +0 -41
- package/dynamic-form/lib/dynamic-form/form-field/fields/base-field-component.d.ts +0 -32
- package/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.d.ts +0 -10
- package/dynamic-form/lib/dynamic-form/form-field/fields/button-field/button-field.component.d.ts +0 -10
- package/dynamic-form/lib/dynamic-form/form-field/fields/checkbox/checkbox-field.component.d.ts +0 -10
- package/dynamic-form/lib/dynamic-form/form-field/fields/editor/editor-field.component.d.ts +0 -10
- package/dynamic-form/lib/dynamic-form/form-field/fields/lookup/lookup-field.component.d.ts +0 -9
- package/dynamic-form/lib/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.d.ts +0 -9
- package/dynamic-form/lib/dynamic-form/form-field/fields/select/select-field.component.d.ts +0 -10
- package/dynamic-form/lib/dynamic-form/form-field/fields/slider/slider-field.component.d.ts +0 -25
- package/dynamic-form/lib/dynamic-form/form-field/fields/star-rating/star-rating-field.component.d.ts +0 -10
- package/dynamic-form/lib/dynamic-form/form-field/fields/text-area/text-area-field.component.d.ts +0 -14
- package/dynamic-form/lib/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.d.ts +0 -9
- package/dynamic-form/lib/dynamic-form/form-field/form-field.d.ts +0 -192
- package/dynamic-form/lib/dynamic-form/services/dynamic-form-cache.d.ts +0 -12
- package/esm2022/dynamic-form/lib/dynamic-form/components/field-label/field-label.component.mjs +0 -20
- package/esm2022/dynamic-form/lib/dynamic-form/components/grid/row/row.component.mjs +0 -41
- package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/lookup.component.mjs +0 -643
- package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/types/default-filter.mjs +0 -2
- package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/types/label-options.mjs +0 -2
- package/esm2022/dynamic-form/lib/dynamic-form/components/structure/base-structure-component.mjs +0 -2
- package/esm2022/dynamic-form/lib/dynamic-form/components/structure/fieldset/fieldset.component.mjs +0 -27
- package/esm2022/dynamic-form/lib/dynamic-form/components/structure/section/section.component.mjs +0 -33
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/dynamic-config.mjs +0 -71
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/dynamic-type.mjs +0 -26
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid/grid.mjs +0 -14
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid/row.mjs +0 -10
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid-type.mjs +0 -5
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/fieldset.mjs +0 -10
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/section.mjs +0 -31
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/structure.mjs +0 -9
- package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure-type.mjs +0 -6
- package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.component.mjs +0 -41
- package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.directive.mjs +0 -107
- package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.mjs +0 -189
- package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.module.mjs +0 -293
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/addon-config.mjs +0 -2
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/field-size.mjs +0 -13
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/field-type.mjs +0 -34
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +0 -24
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +0 -37
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/blob-field.mjs +0 -31
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-field.mjs +0 -30
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +0 -15
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/button-field.mjs +0 -47
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/calendar-field.mjs +0 -56
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +0 -9
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/chips-field.mjs +0 -25
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +0 -15
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/currency-field.mjs +0 -14
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/decimal-field.mjs +0 -16
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/editor-field.mjs +0 -15
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/field.mjs +0 -64
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.mjs +0 -66
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/number-field.mjs +0 -38
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/password-field.mjs +0 -33
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/profile-picture.mjs +0 -35
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +0 -27
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/select-field.mjs +0 -43
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/slider-field.mjs +0 -30
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +0 -17
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-field.mjs +0 -30
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-ia-field.mjs +0 -32
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-field.mjs +0 -38
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +0 -37
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/base-field-component.mjs +0 -22
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +0 -124
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +0 -27
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +0 -23
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/button-field/button-field.component.mjs +0 -31
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +0 -118
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/checkbox/checkbox-field.component.mjs +0 -21
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/chips/chips-field.component.mjs +0 -59
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +0 -29
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/currency/currency-field.component.mjs +0 -100
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/editor/editor-field.component.mjs +0 -23
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/file-upload/file-upload-field.component.mjs +0 -56
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/lookup/lookup-field.component.mjs +0 -23
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/number/number-field.component.mjs +0 -121
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/password/password-field.component.mjs +0 -75
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.mjs +0 -22
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +0 -52
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/select/select-field.component.mjs +0 -24
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/slider/slider-field.component.mjs +0 -103
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/star-rating/star-rating-field.component.mjs +0 -25
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text/text-field.component.mjs +0 -88
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +0 -29
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.mjs +0 -22
- package/esm2022/dynamic-form/lib/dynamic-form/form-field/form-field.mjs +0 -243
- package/esm2022/dynamic-form/lib/dynamic-form/services/dynamic-form-cache.mjs +0 -150
- package/esm2022/file-upload/lib/file-upload/file-upload.component.mjs +0 -293
- package/esm2022/ia-insight/lib/ia-insight/components/ia-insight-card/components/ia-insight-card-loader/ia-insight-card-loader.component.mjs +0 -13
- package/esm2022/ia-insight/lib/ia-insight/components/ia-insight-card/ia-insight-card.component.mjs +0 -94
- package/esm2022/ia-insight/lib/ia-insight/components/ia-insight-sidebar/ia-insight-sidebar.component.mjs +0 -59
- package/esm2022/ia-insight/lib/ia-insight/ia-insight.component.mjs +0 -68
- package/esm2022/ia-insight/lib/ia-insight/ia-insight.module.mjs +0 -47
- package/esm2022/ia-insight/lib/ia-insight/models/ia-insight-item.mjs +0 -2
- package/esm2022/ia-insight/lib/ia-insight/models/ia-insight-template-types.mjs +0 -2
- package/esm2022/ia-insight/lib/ia-insight/models/index.mjs +0 -2
- package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-text-area-ia/inline-edit-text-area-ia.component.mjs +0 -32
- package/esm2022/inline-edit/lib/inline-edit/fields/inline-edit-text-area-ia-field.mjs +0 -7
- package/esm2022/product-header/lib/product-header/product-header.component.mjs +0 -44
- package/esm2022/product-header/lib/product-header/product-header.module.mjs +0 -20
- package/esm2022/slide-panel/lib/slide-panel/slide-panel.component.mjs +0 -137
- package/esm2022/slide-panel/lib/slide-panel/slide-panel.module.mjs +0 -20
- package/esm2022/slide-panel/lib/slide-panel/slide-panel.service.mjs +0 -26
- package/esm2022/slide-panel/public-api.mjs +0 -4
- package/esm2022/steps/lib/steps/steps.component.mjs +0 -122
- package/esm2022/steps/lib/steps/steps.module.mjs +0 -19
- package/esm2022/steps/public-api.mjs +0 -3
- package/esm2022/steps/seniorsistemas-angular-components-steps.mjs +0 -5
- package/esm2022/text-area-ia/lib/services/IAssist/iassist.service.mjs +0 -77
- package/esm2022/text-area-ia/lib/services/IAssist/models/iassist-input-data.mjs +0 -3
- package/esm2022/text-area-ia/lib/services/IAssist/models/iassist-response.mjs +0 -3
- package/esm2022/text-area-ia/lib/text-area-ia/text-area-ia.component.mjs +0 -150
- package/esm2022/text-area-ia/lib/text-area-ia/text-area-ia.module.mjs +0 -50
- package/fesm2022/seniorsistemas-angular-components-slide-panel.mjs +0 -182
- package/fesm2022/seniorsistemas-angular-components-slide-panel.mjs.map +0 -1
- package/fesm2022/seniorsistemas-angular-components-steps.mjs +0 -145
- package/fesm2022/seniorsistemas-angular-components-steps.mjs.map +0 -1
- package/file-upload/lib/file-upload/file-upload.component.d.ts +0 -80
- package/file-upload/lib/file-upload/models/file-upload-permissions.d.ts +0 -2
- package/ia-insight/lib/ia-insight/components/ia-insight-card/components/ia-insight-card-loader/ia-insight-card-loader.component.d.ts +0 -5
- package/ia-insight/lib/ia-insight/components/ia-insight-sidebar/ia-insight-sidebar.component.d.ts +0 -21
- package/ia-insight/lib/ia-insight/ia-insight.component.d.ts +0 -29
- package/ia-insight/lib/ia-insight/ia-insight.module.d.ts +0 -17
- package/ia-insight/lib/ia-insight/models/ia-insight-template-types.d.ts +0 -1
- package/ia-insight/lib/ia-insight/models/index.d.ts +0 -2
- package/inline-edit/lib/inline-edit/components/fields/inline-edit-text-area-ia/inline-edit-text-area-ia.component.d.ts +0 -13
- package/inline-edit/lib/inline-edit/fields/inline-edit-text-area-ia-field.d.ts +0 -6
- package/product-header/lib/product-header/product-header.component.d.ts +0 -15
- package/product-header/lib/product-header/product-header.module.d.ts +0 -10
- package/slide-panel/lib/slide-panel/slide-panel.component.d.ts +0 -32
- package/slide-panel/lib/slide-panel/slide-panel.module.d.ts +0 -8
- package/slide-panel/public-api.d.ts +0 -3
- package/steps/lib/steps/steps.component.d.ts +0 -36
- package/steps/lib/steps/steps.module.d.ts +0 -9
- package/steps/public-api.d.ts +0 -2
- package/text-area-ia/lib/text-area-ia/text-area-ia.module.d.ts +0 -15
- /package/{text-area-ia → content-generator}/lib/services/IAssist/iassist.service.d.ts +0 -0
- /package/{text-area-ia → content-generator}/lib/services/IAssist/models/iassist-input-data.d.ts +0 -0
- /package/{text-area-ia → content-generator}/lib/services/IAssist/models/iassist-response.d.ts +0 -0
- /package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/types/default-filter.d.ts +0 -0
- /package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/types/label-options.d.ts +0 -0
- /package/{file-upload/lib/file-upload → file-picker/lib/file-picker}/models/file-dto.d.ts +0 -0
- /package/{file-upload/lib/file-upload → file-picker/lib/file-picker}/models/list-blob-metadata.d.ts +0 -0
- /package/{file-upload/lib/file-upload → file-picker/lib/file-picker}/models/uploadError.d.ts +0 -0
- /package/{file-upload/lib/file-upload → file-picker/lib/file-picker}/models/validate-errors.d.ts +0 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Component, HostListener, input } from '@angular/core';
|
|
2
|
+
import { FilePickerModule } from '@seniorsistemas/angular-components/file-picker';
|
|
3
|
+
import { FieldLabelComponent } from '../../../components/field-label/field-label.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@seniorsistemas/angular-components/file-picker";
|
|
6
|
+
export class FileUploadFieldComponent {
|
|
7
|
+
changeDetectorRef;
|
|
8
|
+
elementRef;
|
|
9
|
+
field = input.required();
|
|
10
|
+
formControl = input.required();
|
|
11
|
+
inputRef = null;
|
|
12
|
+
constructor(changeDetectorRef, elementRef) {
|
|
13
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
14
|
+
this.elementRef = elementRef;
|
|
15
|
+
}
|
|
16
|
+
onClick() {
|
|
17
|
+
this.dispatchFocusInputRef();
|
|
18
|
+
}
|
|
19
|
+
ngAfterViewInit() {
|
|
20
|
+
this.setInputRef();
|
|
21
|
+
this.changeDetectorRef.detectChanges();
|
|
22
|
+
}
|
|
23
|
+
onDocumentClick(event) {
|
|
24
|
+
if (!this.elementRef.nativeElement.contains(event.target)) {
|
|
25
|
+
this.inputRef?.dispatchEvent(new Event('blur'));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
setInputRef() {
|
|
29
|
+
this.inputRef = this.elementRef.nativeElement.querySelector('input');
|
|
30
|
+
}
|
|
31
|
+
dispatchFocusInputRef() {
|
|
32
|
+
this.inputRef?.dispatchEvent(new Event('focus'));
|
|
33
|
+
}
|
|
34
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FileUploadFieldComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FileUploadFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, host: { listeners: { "click": "onClick()", "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<s-file-picker\n [id]=\"_field.id || _field.name\"\n [accept]=\"_field.accept\"\n [files]=\"_field.files\"\n [multiple]=\"_field.multiple\"\n [chooseLabel]=\"_field.chooseLabel\"\n [removeLabel]=\"_field.removeLabel\"\n [cancelLabel]=\"_field.cancelLabel\"\n [successTooltip]=\"_field.successTooltip\"\n (uploadHandler)=\"_field.onUploadFile($event, _field)\"\n (removeFile)=\"_field.onRemoveFile($event.file, _field)\"\n (cancelUpload)=\"_field.onCancelUpload($event, _field)\"\n (downloadFile)=\"_field.onDownloadFile($event, _field)\"\n [formControl]=\"formControl()\"\n [showFileUploadDate]=\"_field.showFileUploadDate\"\n>\n</s-file-picker>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: FilePickerModule }, { kind: "component", type: i1.FilePickerComponent, selector: "s-file-picker, s-file-upload", inputs: ["id", "chooseLabel", "removeLabel", "cancelLabel", "successTooltip", "multiple", "accept", "supportedExtensions", "ariaLabelFileName", "maxFileSize", "maxCombinedFileSize", "fileLimit", "ariaLabelProgress", "ariaLabelSuccess", "ariaLabelError", "ariaLabelRemove", "formControl", "disabled", "showFileUploadDate", "permissions", "files"], outputs: ["uploadHandler", "removeFile", "cancelUpload", "downloadFile", "validateErrors"] }] });
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FileUploadFieldComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ standalone: true, imports: [FieldLabelComponent, FilePickerModule], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<s-file-picker\n [id]=\"_field.id || _field.name\"\n [accept]=\"_field.accept\"\n [files]=\"_field.files\"\n [multiple]=\"_field.multiple\"\n [chooseLabel]=\"_field.chooseLabel\"\n [removeLabel]=\"_field.removeLabel\"\n [cancelLabel]=\"_field.cancelLabel\"\n [successTooltip]=\"_field.successTooltip\"\n (uploadHandler)=\"_field.onUploadFile($event, _field)\"\n (removeFile)=\"_field.onRemoveFile($event.file, _field)\"\n (cancelUpload)=\"_field.onCancelUpload($event, _field)\"\n (downloadFile)=\"_field.onDownloadFile($event, _field)\"\n [formControl]=\"formControl()\"\n [showFileUploadDate]=\"_field.showFileUploadDate\"\n>\n</s-file-picker>\n\n" }]
|
|
40
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { onClick: [{
|
|
41
|
+
type: HostListener,
|
|
42
|
+
args: ['click']
|
|
43
|
+
}], onDocumentClick: [{
|
|
44
|
+
type: HostListener,
|
|
45
|
+
args: ['document:click', ['$event']]
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1waWNrZXItZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9mb3JtLWZpZWxkL2ZpZWxkcy9maWxlLXBpY2tlci9maWxlLXBpY2tlci1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL2ZpbGUtcGlja2VyL2ZpbGUtcGlja2VyLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0MsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHN0csT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdURBQXVELENBQUM7OztBQVE1RixNQUFNLE9BQU8sd0JBQXdCO0lBT1o7SUFDQTtJQVByQixLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBbUIsQ0FBQztJQUMxQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBZSxDQUFDO0lBRXJDLFFBQVEsR0FBNEIsSUFBSSxDQUFDO0lBRWhELFlBQ3FCLGlCQUFvQyxFQUNwQyxVQUFzQjtRQUR0QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGVBQVUsR0FBVixVQUFVLENBQVk7SUFDeEMsQ0FBQztJQUdHLE9BQU87UUFDVixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sZUFBZTtRQUNsQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFHRCxlQUFlLENBQUMsS0FBaUI7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN4RCxJQUFJLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3BELENBQUM7SUFDTCxDQUFDO0lBRU8sV0FBVztRQUNmLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBcUIsQ0FBQztJQUM3RixDQUFDO0lBRU8scUJBQXFCO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEVBQUUsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQzt3R0FsQ1Esd0JBQXdCOzRGQUF4Qix3QkFBd0IsZ2JDWnJDLHExQkEwQkEsNENEakJjLG1CQUFtQixpR0FBRSxnQkFBZ0I7OzRGQUd0Qyx3QkFBd0I7a0JBTHBDLFNBQVM7aUNBQ00sSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLENBQUM7K0dBZXpDLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPO2dCQVdyQixlQUFlO3NCQURkLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgRmlsZVBpY2tlck1vZHVsZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvZmlsZS1waWNrZXInO1xuaW1wb3J0IHsgRmllbGRMYWJlbENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZmllbGQtbGFiZWwvZmllbGQtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJsb2JGaWVsZENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9ibG9iLWZpZWxkJztcbmltcG9ydCB7IEJhc2VGaWVsZENvbXBvbmVudENvbmZpZyB9IGZyb20gJy4uL2Jhc2UtZmllbGQtY29tcG9uZW50JztcbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0ZpZWxkTGFiZWxDb21wb25lbnQsIEZpbGVQaWNrZXJNb2R1bGVdLFxuICAgIHRlbXBsYXRlVXJsOiAnZmlsZS1waWNrZXItZmllbGQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBCYXNlRmllbGRDb21wb25lbnRDb25maWcsIEFmdGVyVmlld0luaXQge1xuICAgIGZpZWxkID0gaW5wdXQucmVxdWlyZWQ8QmxvYkZpZWxkQ29uZmlnPigpO1xuICAgIGZvcm1Db250cm9sID0gaW5wdXQucmVxdWlyZWQ8Rm9ybUNvbnRyb2w+KCk7XG5cbiAgICBwdWJsaWMgaW5wdXRSZWY6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICkge31cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNwYXRjaEZvY3VzSW5wdXRSZWYoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldElucHV0UmVmKCk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcbiAgICBvbkRvY3VtZW50Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpKSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0UmVmPy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnYmx1cicpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2V0SW5wdXRSZWYoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRSZWYgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dCcpIGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkaXNwYXRjaEZvY3VzSW5wdXRSZWYoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRSZWY/LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdmb2N1cycpKTtcbiAgICB9XG59XG5cbiIsIkBsZXQgX2ZpZWxkID0gZmllbGQoKTtcbkBpZiAoaW5wdXRSZWYpIHtcbiAgICA8cy1maWVsZC1sYWJlbFxuICAgICAgICBbZmllbGRdPVwiX2ZpZWxkXCJcbiAgICAgICAgW2ZpZWxkQ29udGFpbmVyUmVmXT1cImlucHV0UmVmXCJcbiAgICA+PC9zLWZpZWxkLWxhYmVsPlxufVxuXG48cy1maWxlLXBpY2tlclxuICAgIFtpZF09XCJfZmllbGQuaWQgfHwgX2ZpZWxkLm5hbWVcIlxuICAgIFthY2NlcHRdPVwiX2ZpZWxkLmFjY2VwdFwiXG4gICAgW2ZpbGVzXT1cIl9maWVsZC5maWxlc1wiXG4gICAgW211bHRpcGxlXT1cIl9maWVsZC5tdWx0aXBsZVwiXG4gICAgW2Nob29zZUxhYmVsXT1cIl9maWVsZC5jaG9vc2VMYWJlbFwiXG4gICAgW3JlbW92ZUxhYmVsXT1cIl9maWVsZC5yZW1vdmVMYWJlbFwiXG4gICAgW2NhbmNlbExhYmVsXT1cIl9maWVsZC5jYW5jZWxMYWJlbFwiXG4gICAgW3N1Y2Nlc3NUb29sdGlwXT1cIl9maWVsZC5zdWNjZXNzVG9vbHRpcFwiXG4gICAgKHVwbG9hZEhhbmRsZXIpPVwiX2ZpZWxkLm9uVXBsb2FkRmlsZSgkZXZlbnQsIF9maWVsZClcIlxuICAgIChyZW1vdmVGaWxlKT1cIl9maWVsZC5vblJlbW92ZUZpbGUoJGV2ZW50LmZpbGUsIF9maWVsZClcIlxuICAgIChjYW5jZWxVcGxvYWQpPVwiX2ZpZWxkLm9uQ2FuY2VsVXBsb2FkKCRldmVudCwgX2ZpZWxkKVwiXG4gICAgKGRvd25sb2FkRmlsZSk9XCJfZmllbGQub25Eb3dubG9hZEZpbGUoJGV2ZW50LCBfZmllbGQpXCJcbiAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2woKVwiXG4gICAgW3Nob3dGaWxlVXBsb2FkRGF0ZV09XCJfZmllbGQuc2hvd0ZpbGVVcGxvYWREYXRlXCJcbj5cbjwvcy1maWxlLXBpY2tlcj5cblxuIl19
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Component, DestroyRef, inject, input } from '@angular/core';
|
|
2
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
|
+
import { delay } from 'rxjs';
|
|
4
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
5
|
+
import { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';
|
|
6
|
+
import { LookupComponent } from '../../../components/lookup/lookup.component';
|
|
7
|
+
import { FieldLabelComponent } from '../../../components/field-label/field-label.component';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/forms";
|
|
10
|
+
export class LookupFieldComponent {
|
|
11
|
+
_destroyRef = inject(DestroyRef);
|
|
12
|
+
gridData = [];
|
|
13
|
+
searchTotalRecords = 0;
|
|
14
|
+
lookupSuggestions = [];
|
|
15
|
+
searchTotalRecordsLabel = '';
|
|
16
|
+
field = input.required();
|
|
17
|
+
formControl = input.required();
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
this.setLookupData();
|
|
20
|
+
}
|
|
21
|
+
setLookupData() {
|
|
22
|
+
const field = this.field();
|
|
23
|
+
field.suggestionsObservable
|
|
24
|
+
.pipe(takeUntilDestroyed(this._destroyRef))
|
|
25
|
+
.subscribe((suggestions) => (this.lookupSuggestions = suggestions));
|
|
26
|
+
field.searchObservable
|
|
27
|
+
.pipe(takeUntilDestroyed(this._destroyRef), delay(0))
|
|
28
|
+
.subscribe(({ totalRecords, gridData, searchTotalRecordsLabel }) => {
|
|
29
|
+
this.gridData = gridData;
|
|
30
|
+
this.searchTotalRecords = totalRecords;
|
|
31
|
+
this.searchTotalRecordsLabel = searchTotalRecordsLabel;
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LookupFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: LookupFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<div\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n>\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple ?? false\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"lookupSuggestions\"\n [dataKey]=\"_field.dataKey\"\n [placeholder]=\"_field.placeholder\"\n [showSearch]=\"_field.showSearch ?? true\"\n [searchFields]=\"_field.searchFields\"\n [searchGridFields]=\"_field.searchGridFields\"\n [searchGridData]=\"gridData\"\n (onLookupRequest)=\"_field.onLookupRequest($event)\"\n (onSearchRequest)=\"_field.onSearchRequest($event)\"\n [lookupDisplayField]=\"_field.lookupDisplayField\"\n [searchTotalRecords]=\"searchTotalRecords\"\n [labelOptions]=\"{\n recordsLabel: _field.recordsLabel,\n recordLabel: _field.recordLabel,\n emptyFieldLabel: _field.emptyFieldLabel,\n selectLabel: _field.selectLabel,\n cancelLabel: _field.cancelLabel,\n clearLabel: _field.clearLabel,\n filterLabel: _field.filterLabel,\n filterTitle: _field.filterTitle,\n searchTotalRecordsLabel: searchTotalRecordsLabel,\n searchEmptyTitle: _field.searchEmptyTitle,\n searchTitle: _field.searchTitle,\n }\"\n (onSelect)=\"_field.onSelect?.($event)\"\n (onUnselect)=\"_field.onUnselect?.($event)\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupAppendTo]=\"_field.appendTo\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n [defaultFilter]=\"_field.defaultFilter ?? []\"\n [autocompleteForceSelection]=\"_field.autocompleteForceSelection ?? true\"\n [showAddOption]=\"_field.showAddOption ?? false\"\n [showEditOption]=\"_field.showEditOption ?? false\"\n [showRemoveOption]=\"_field.showRemoveOption ?? false\"\n [sortableColumnsDisabled]=\"_field.sortableColumnsDisabled ?? []\"\n (onAdd)=\"_field.onAdd ? _field.onAdd() : null\"\n (onEdit)=\"_field.onEdit ? _field.onEdit($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onClearButtonClick)=\"_field.onClearButtonClick ? _field.onClearButtonClick() : null\"\n >\n </s-lookup>\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "component", type: LookupComponent, selector: "s-lookup", inputs: ["formControlName", "id", "autocompleteForceSelection", "multiple", "dataKey", "disabled", "showSearch", "lookupSuggestions", "lookupDisplayField", "lookupDisplayFieldTooltip", "lookupEmptyMessage", "lookupAppendTo", "searchEmptyDescription", "searchGridData", "searchTotalRecords", "searchFields", "searchGridFields", "multiSortMeta", "placeholder", "sortableColumnsDisabled", "lookupRowProps", "defaultFilter", "showAddOption", "showEditOption", "showRemoveOption", "dialogFullScreen", "labelOptions"], outputs: ["onLookupRequest", "onSearchRequest", "onFocus", "onBlur", "onKeyUp", "onSelect", "onUnselect", "onClear", "onAdd", "onEdit", "onRemove", "onClearButtonClick"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LookupFieldComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ standalone: true, imports: [FieldLabelComponent, TooltipDirective, LookupComponent, ReactiveFormsModule], template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<div\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n>\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple ?? false\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"lookupSuggestions\"\n [dataKey]=\"_field.dataKey\"\n [placeholder]=\"_field.placeholder\"\n [showSearch]=\"_field.showSearch ?? true\"\n [searchFields]=\"_field.searchFields\"\n [searchGridFields]=\"_field.searchGridFields\"\n [searchGridData]=\"gridData\"\n (onLookupRequest)=\"_field.onLookupRequest($event)\"\n (onSearchRequest)=\"_field.onSearchRequest($event)\"\n [lookupDisplayField]=\"_field.lookupDisplayField\"\n [searchTotalRecords]=\"searchTotalRecords\"\n [labelOptions]=\"{\n recordsLabel: _field.recordsLabel,\n recordLabel: _field.recordLabel,\n emptyFieldLabel: _field.emptyFieldLabel,\n selectLabel: _field.selectLabel,\n cancelLabel: _field.cancelLabel,\n clearLabel: _field.clearLabel,\n filterLabel: _field.filterLabel,\n filterTitle: _field.filterTitle,\n searchTotalRecordsLabel: searchTotalRecordsLabel,\n searchEmptyTitle: _field.searchEmptyTitle,\n searchTitle: _field.searchTitle,\n }\"\n (onSelect)=\"_field.onSelect?.($event)\"\n (onUnselect)=\"_field.onUnselect?.($event)\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupAppendTo]=\"_field.appendTo\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n [defaultFilter]=\"_field.defaultFilter ?? []\"\n [autocompleteForceSelection]=\"_field.autocompleteForceSelection ?? true\"\n [showAddOption]=\"_field.showAddOption ?? false\"\n [showEditOption]=\"_field.showEditOption ?? false\"\n [showRemoveOption]=\"_field.showRemoveOption ?? false\"\n [sortableColumnsDisabled]=\"_field.sortableColumnsDisabled ?? []\"\n (onAdd)=\"_field.onAdd ? _field.onAdd() : null\"\n (onEdit)=\"_field.onEdit ? _field.onEdit($event) : null\"\n (onRemove)=\"_field.onRemove ? _field.onRemove($event) : null\"\n (onClearButtonClick)=\"_field.onClearButtonClick ? _field.onClearButtonClick() : null\"\n >\n </s-lookup>\n</div>\n\n" }]
|
|
40
|
+
}] });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZm9ybS1maWVsZC9maWVsZHMvbG9va3VwL2xvb2t1cC1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL2xvb2t1cC9sb29rdXAtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQWUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7O0FBUTVGLE1BQU0sT0FBTyxvQkFBb0I7SUFDWixXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3hDLFFBQVEsR0FBVSxFQUFFLENBQUM7SUFDckIsa0JBQWtCLEdBQVcsQ0FBQyxDQUFDO0lBQy9CLGlCQUFpQixHQUFVLEVBQUUsQ0FBQztJQUM5Qix1QkFBdUIsR0FBVyxFQUFFLENBQUM7SUFFL0MsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7SUFDNUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQWUsQ0FBQztJQUU1QyxRQUFRO1FBQ0osSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxhQUFhO1FBQ2pCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixLQUFLLENBQUMscUJBQXFCO2FBQ3RCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDMUMsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLEtBQUssQ0FBQyxnQkFBZ0I7YUFDakIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDcEQsU0FBUyxDQUFDLENBQUMsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLHVCQUF1QixFQUFFLEVBQUUsRUFBRTtZQUMvRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUN6QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyx1QkFBdUIsR0FBRyx1QkFBaUMsQ0FBQztRQUNyRSxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7d0dBMUJRLG9CQUFvQjs0RkFBcEIsb0JBQW9CLG9WQ2pCakMsay9FQXdEQSw0Q0QxQ2MsbUJBQW1CLGtHQUFFLGdCQUFnQiw0TkFBRSxlQUFlLGd1QkFBRSxtQkFBbUI7OzRGQUc1RSxvQkFBb0I7a0JBTGhDLFNBQVM7aUNBQ00sSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBEZXN0cm95UmVmLCBpbmplY3QsIGlucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBkZWxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy90b29sdGlwJztcbmltcG9ydCB7IExvb2t1cEZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMvZmllbGRzL2xvb2t1cC1maWVsZCc7XG5pbXBvcnQgeyBMb29rdXBDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2xvb2t1cC9sb29rdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkTGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2ZpZWxkLWxhYmVsL2ZpZWxkLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXNlRmllbGRDb21wb25lbnRDb25maWcgfSBmcm9tICcuLi9iYXNlLWZpZWxkLWNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0ZpZWxkTGFiZWxDb21wb25lbnQsIFRvb2x0aXBEaXJlY3RpdmUsIExvb2t1cENvbXBvbmVudCwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gICAgdGVtcGxhdGVVcmw6ICdsb29rdXAtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBMb29rdXBGaWVsZENvbXBvbmVudCBpbXBsZW1lbnRzIEJhc2VGaWVsZENvbXBvbmVudENvbmZpZywgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByb3RlY3RlZCBncmlkRGF0YTogYW55W10gPSBbXTtcbiAgICBwcm90ZWN0ZWQgc2VhcmNoVG90YWxSZWNvcmRzOiBudW1iZXIgPSAwO1xuICAgIHByb3RlY3RlZCBsb29rdXBTdWdnZXN0aW9uczogYW55W10gPSBbXTtcbiAgICBwcm90ZWN0ZWQgc2VhcmNoVG90YWxSZWNvcmRzTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgZmllbGQgPSBpbnB1dC5yZXF1aXJlZDxMb29rdXBGaWVsZENvbmZpZz4oKTtcbiAgICBmb3JtQ29udHJvbCA9IGlucHV0LnJlcXVpcmVkPEZvcm1Db250cm9sPigpO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0TG9va3VwRGF0YSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0TG9va3VwRGF0YSgpIHtcbiAgICAgICAgY29uc3QgZmllbGQgPSB0aGlzLmZpZWxkKCk7XG4gICAgICAgIGZpZWxkLnN1Z2dlc3Rpb25zT2JzZXJ2YWJsZVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoc3VnZ2VzdGlvbnMpID0+ICh0aGlzLmxvb2t1cFN1Z2dlc3Rpb25zID0gc3VnZ2VzdGlvbnMpKTtcbiAgICAgICAgZmllbGQuc2VhcmNoT2JzZXJ2YWJsZVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpLCBkZWxheSgwKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHsgdG90YWxSZWNvcmRzLCBncmlkRGF0YSwgc2VhcmNoVG90YWxSZWNvcmRzTGFiZWwgfSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZERhdGEgPSBncmlkRGF0YTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlYXJjaFRvdGFsUmVjb3JkcyA9IHRvdGFsUmVjb3JkcztcbiAgICAgICAgICAgICAgICB0aGlzLnNlYXJjaFRvdGFsUmVjb3Jkc0xhYmVsID0gc2VhcmNoVG90YWxSZWNvcmRzTGFiZWwgYXMgc3RyaW5nO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuXG4iLCJAbGV0IF9maWVsZCA9IGZpZWxkKCk7XG48cy1maWVsZC1sYWJlbCBbZmllbGRdPVwiX2ZpZWxkXCI+PC9zLWZpZWxkLWxhYmVsPlxuXG48ZGl2XG4gICAgW3NUb29sdGlwXT1cIl9maWVsZC50b29sdGlwXCJcbiAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgIFtzaG93RGVsYXldPVwiNTAwXCJcbj5cbiAgICA8cy1sb29rdXBcbiAgICAgICAgW2lkXT1cIl9maWVsZC5pZCB8fCBfZmllbGQubmFtZVwiXG4gICAgICAgIFttdWx0aXBsZV09XCJfZmllbGQubXVsdGlwbGUgPz8gZmFsc2VcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2woKVwiXG4gICAgICAgIFtsb29rdXBTdWdnZXN0aW9uc109XCJsb29rdXBTdWdnZXN0aW9uc1wiXG4gICAgICAgIFtkYXRhS2V5XT1cIl9maWVsZC5kYXRhS2V5XCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIl9maWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgIFtzaG93U2VhcmNoXT1cIl9maWVsZC5zaG93U2VhcmNoID8/IHRydWVcIlxuICAgICAgICBbc2VhcmNoRmllbGRzXT1cIl9maWVsZC5zZWFyY2hGaWVsZHNcIlxuICAgICAgICBbc2VhcmNoR3JpZEZpZWxkc109XCJfZmllbGQuc2VhcmNoR3JpZEZpZWxkc1wiXG4gICAgICAgIFtzZWFyY2hHcmlkRGF0YV09XCJncmlkRGF0YVwiXG4gICAgICAgIChvbkxvb2t1cFJlcXVlc3QpPVwiX2ZpZWxkLm9uTG9va3VwUmVxdWVzdCgkZXZlbnQpXCJcbiAgICAgICAgKG9uU2VhcmNoUmVxdWVzdCk9XCJfZmllbGQub25TZWFyY2hSZXF1ZXN0KCRldmVudClcIlxuICAgICAgICBbbG9va3VwRGlzcGxheUZpZWxkXT1cIl9maWVsZC5sb29rdXBEaXNwbGF5RmllbGRcIlxuICAgICAgICBbc2VhcmNoVG90YWxSZWNvcmRzXT1cInNlYXJjaFRvdGFsUmVjb3Jkc1wiXG4gICAgICAgIFtsYWJlbE9wdGlvbnNdPVwie1xuICAgICAgICAgICAgcmVjb3Jkc0xhYmVsOiBfZmllbGQucmVjb3Jkc0xhYmVsLFxuICAgICAgICAgICAgcmVjb3JkTGFiZWw6IF9maWVsZC5yZWNvcmRMYWJlbCxcbiAgICAgICAgICAgIGVtcHR5RmllbGRMYWJlbDogX2ZpZWxkLmVtcHR5RmllbGRMYWJlbCxcbiAgICAgICAgICAgIHNlbGVjdExhYmVsOiBfZmllbGQuc2VsZWN0TGFiZWwsXG4gICAgICAgICAgICBjYW5jZWxMYWJlbDogX2ZpZWxkLmNhbmNlbExhYmVsLFxuICAgICAgICAgICAgY2xlYXJMYWJlbDogX2ZpZWxkLmNsZWFyTGFiZWwsXG4gICAgICAgICAgICBmaWx0ZXJMYWJlbDogX2ZpZWxkLmZpbHRlckxhYmVsLFxuICAgICAgICAgICAgZmlsdGVyVGl0bGU6IF9maWVsZC5maWx0ZXJUaXRsZSxcbiAgICAgICAgICAgIHNlYXJjaFRvdGFsUmVjb3Jkc0xhYmVsOiBzZWFyY2hUb3RhbFJlY29yZHNMYWJlbCxcbiAgICAgICAgICAgIHNlYXJjaEVtcHR5VGl0bGU6IF9maWVsZC5zZWFyY2hFbXB0eVRpdGxlLFxuICAgICAgICAgICAgc2VhcmNoVGl0bGU6IF9maWVsZC5zZWFyY2hUaXRsZSxcbiAgICAgICAgfVwiXG4gICAgICAgIChvblNlbGVjdCk9XCJfZmllbGQub25TZWxlY3Q/LigkZXZlbnQpXCJcbiAgICAgICAgKG9uVW5zZWxlY3QpPVwiX2ZpZWxkLm9uVW5zZWxlY3Q/LigkZXZlbnQpXCJcbiAgICAgICAgKG9uQ2xlYXIpPVwiX2ZpZWxkLm9uQ2xlYXIgPyBfZmllbGQub25DbGVhcigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIChvbkJsdXIpPVwiX2ZpZWxkLm9uQmx1ciA/IF9maWVsZC5vbkJsdXIoJGV2ZW50KSA6IG51bGxcIlxuICAgICAgICBbbG9va3VwQXBwZW5kVG9dPVwiX2ZpZWxkLmFwcGVuZFRvXCJcbiAgICAgICAgW2xvb2t1cEVtcHR5TWVzc2FnZV09XCJfZmllbGQuZW1wdHlNZXNzYWdlXCJcbiAgICAgICAgW2RlZmF1bHRGaWx0ZXJdPVwiX2ZpZWxkLmRlZmF1bHRGaWx0ZXIgPz8gW11cIlxuICAgICAgICBbYXV0b2NvbXBsZXRlRm9yY2VTZWxlY3Rpb25dPVwiX2ZpZWxkLmF1dG9jb21wbGV0ZUZvcmNlU2VsZWN0aW9uID8/IHRydWVcIlxuICAgICAgICBbc2hvd0FkZE9wdGlvbl09XCJfZmllbGQuc2hvd0FkZE9wdGlvbiA/PyBmYWxzZVwiXG4gICAgICAgIFtzaG93RWRpdE9wdGlvbl09XCJfZmllbGQuc2hvd0VkaXRPcHRpb24gPz8gZmFsc2VcIlxuICAgICAgICBbc2hvd1JlbW92ZU9wdGlvbl09XCJfZmllbGQuc2hvd1JlbW92ZU9wdGlvbiA/PyBmYWxzZVwiXG4gICAgICAgIFtzb3J0YWJsZUNvbHVtbnNEaXNhYmxlZF09XCJfZmllbGQuc29ydGFibGVDb2x1bW5zRGlzYWJsZWQgPz8gW11cIlxuICAgICAgICAob25BZGQpPVwiX2ZpZWxkLm9uQWRkID8gX2ZpZWxkLm9uQWRkKCkgOiBudWxsXCJcbiAgICAgICAgKG9uRWRpdCk9XCJfZmllbGQub25FZGl0ID8gX2ZpZWxkLm9uRWRpdCgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIChvblJlbW92ZSk9XCJfZmllbGQub25SZW1vdmUgPyBfZmllbGQub25SZW1vdmUoJGV2ZW50KSA6IG51bGxcIlxuICAgICAgICAob25DbGVhckJ1dHRvbkNsaWNrKT1cIl9maWVsZC5vbkNsZWFyQnV0dG9uQ2xpY2sgPyBfZmllbGQub25DbGVhckJ1dHRvbkNsaWNrKCkgOiBudWxsXCJcbiAgICA+XG4gICAgPC9zLWxvb2t1cD5cbjwvZGl2PlxuXG4iXX0=
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/* eslint-disable @angular-eslint/no-output-on-prefix */
|
|
2
|
+
import { NgClass, NgTemplateOutlet } from '@angular/common';
|
|
3
|
+
import { Component, EventEmitter, inject, input, Output, ViewEncapsulation, } from '@angular/core';
|
|
4
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
5
|
+
import { ButtonComponent } from '@seniorsistemas/angular-components/button';
|
|
6
|
+
import { LocalizedNumberInputModule } from '@seniorsistemas/angular-components/localized-number-input';
|
|
7
|
+
import { NumberAlignmentOption, NumberInputModule } from '@seniorsistemas/angular-components/number-input';
|
|
8
|
+
import { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';
|
|
9
|
+
import { InputMaskModule } from 'primeng/inputmask';
|
|
10
|
+
import { InputTextModule } from 'primeng/inputtext';
|
|
11
|
+
import { Subject } from 'rxjs';
|
|
12
|
+
import { first, takeUntil } from 'rxjs/operators';
|
|
13
|
+
import { FieldLabelComponent } from '../../../components/field-label/field-label.component';
|
|
14
|
+
import { FormFieldUtilsService } from '../../../services/form-field-utils.service';
|
|
15
|
+
import * as i0 from "@angular/core";
|
|
16
|
+
import * as i1 from "@seniorsistemas/angular-components/locale";
|
|
17
|
+
import * as i2 from "primeng/inputmask";
|
|
18
|
+
import * as i3 from "@angular/forms";
|
|
19
|
+
import * as i4 from "@seniorsistemas/angular-components/localized-number-input";
|
|
20
|
+
import * as i5 from "@seniorsistemas/angular-components/number-input";
|
|
21
|
+
import * as i6 from "primeng/inputtext";
|
|
22
|
+
export class NumberFieldComponent {
|
|
23
|
+
localeService;
|
|
24
|
+
elementRef;
|
|
25
|
+
changeDetectorRef;
|
|
26
|
+
field = input.required();
|
|
27
|
+
formControl = input.required();
|
|
28
|
+
fieldUtils = inject(FormFieldUtilsService);
|
|
29
|
+
onInput = new EventEmitter();
|
|
30
|
+
onFocus = new EventEmitter();
|
|
31
|
+
onComplete = new EventEmitter();
|
|
32
|
+
inputRef = null;
|
|
33
|
+
ngUnsubscribe = new Subject();
|
|
34
|
+
constructor(localeService, elementRef, changeDetectorRef) {
|
|
35
|
+
this.localeService = localeService;
|
|
36
|
+
this.elementRef = elementRef;
|
|
37
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
38
|
+
}
|
|
39
|
+
ngOnInit() {
|
|
40
|
+
this.onLocaleService();
|
|
41
|
+
this.onFocus.pipe(takeUntil(this.ngUnsubscribe)).subscribe((event) => {
|
|
42
|
+
if (this.field().onFocus) {
|
|
43
|
+
this.field().onFocus?.(event);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
this.onInput.pipe(takeUntil(this.ngUnsubscribe)).subscribe((event) => {
|
|
47
|
+
if (this.field().onInput) {
|
|
48
|
+
this.field().onInput?.(event);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
this.onComplete.pipe(takeUntil(this.ngUnsubscribe)).subscribe((event) => {
|
|
52
|
+
if (this.field().onComplete) {
|
|
53
|
+
this.field().onComplete?.(event);
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
ngAfterViewInit() {
|
|
58
|
+
this.setInputRef();
|
|
59
|
+
this.changeDetectorRef.detectChanges();
|
|
60
|
+
}
|
|
61
|
+
ngOnDestroy() {
|
|
62
|
+
this.ngUnsubscribe.next();
|
|
63
|
+
this.ngUnsubscribe.complete();
|
|
64
|
+
}
|
|
65
|
+
get numberAlignmentOption() {
|
|
66
|
+
return NumberAlignmentOption;
|
|
67
|
+
}
|
|
68
|
+
onLocaleService() {
|
|
69
|
+
const field = this.field();
|
|
70
|
+
this.localeService
|
|
71
|
+
.getLocale()
|
|
72
|
+
.pipe(first())
|
|
73
|
+
.subscribe({
|
|
74
|
+
next: () => {
|
|
75
|
+
if (!field.numberLocaleOptions?.decimalSeparator) {
|
|
76
|
+
field.numberLocaleOptions = {
|
|
77
|
+
...field.numberLocaleOptions,
|
|
78
|
+
decimalSeparator: this.localeService.getDecimalSeparator() ?? '',
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
if (!field.numberLocaleOptions?.thousandsSeparator) {
|
|
82
|
+
field.numberLocaleOptions = {
|
|
83
|
+
...field.numberLocaleOptions,
|
|
84
|
+
thousandsSeparator: this.localeService.getGroupingSeparator() ?? '',
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
if (!field.numberLocaleOptions?.currencySymbol) {
|
|
88
|
+
field.numberLocaleOptions = {
|
|
89
|
+
...field.numberLocaleOptions,
|
|
90
|
+
currencySymbol: 'R$',
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
error: () => (field.numberLocaleOptions = field.numberLocaleOptions ?? {
|
|
95
|
+
thousandsSeparator: '.',
|
|
96
|
+
decimalSeparator: ',',
|
|
97
|
+
currencySymbol: 'R$',
|
|
98
|
+
}),
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
setInputRef() {
|
|
102
|
+
const input = this.elementRef.nativeElement.querySelector('input');
|
|
103
|
+
this.inputRef = input;
|
|
104
|
+
}
|
|
105
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberFieldComponent, deps: [{ token: i1.LocaleService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
106
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: NumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef.nativeElement\"\n />\n}\n\n@let hasMask = !!_field.mask;\n@if (hasMask) {\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"_field.mask ? fieldUtils.getFieldPropertyMask(_field.mask) : null\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n >\n </p-inputMask>\n} @else if (!hasMask) {\n <div class=\"ui-inputgroup\">\n @if (_field.leftAddon) {\n @if (_field.leftAddon.callback) {\n <span class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"_field.leftAddon.label\"\n [iconClass]=\"_field.leftAddon.icon\"\n [priority]=\"_field.leftAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.leftAddon)\"\n (clicked)=\"_field.leftAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.leftAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.leftAddon.label) {\n <span>{{ _field.leftAddon.label }}</span>\n } @else if (!_field.leftAddon.label) {\n <span [ngClass]=\"_field.leftAddon.icon\"></span>\n }\n </span>\n }\n }\n\n @if (\n _field.type === 'legacyNumber' && _field.localizedNumber && _field.alignTo === numberAlignmentOption.LEFT\n ) {\n <ng-container *ngTemplateOutlet=\"localizedNumber\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n }\n\n @if (_field.rightAddon) {\n @if (_field.rightAddon.callback) {\n <span class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"_field.rightAddon.label\"\n [iconClass]=\"_field.rightAddon.icon\"\n [priority]=\"_field.rightAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.rightAddon)\"\n (clicked)=\"_field.rightAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.rightAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.rightAddon.label) {\n {{ _field.rightAddon.label }}\n } @else if (!_field.rightAddon.label) {\n <span [ngClass]=\"_field.rightAddon.icon\"></span>\n }\n </span>\n }\n }\n </div>\n}\n\n<ng-template #input>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator\"\n [alignTo]=\"_field.alignTo ?? numberAlignmentOption.LEFT\"\n ;\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n<ng-template #localizedNumber>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sLocalizedNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:highlight(#c13018)}.addon-button{border:1px solid #c1c1cc}.addon-button s-button button,.addon-button s-button .s-button-with-text{height:100%;min-width:40px}.addon-button--left{border-radius:5px 0 0 5px;border-right:none}.addon-button--left s-button button{border-bottom-right-radius:0;border-top-right-radius:0}.addon-button--right{border-left:none;border-radius:0 5px 5px 0}.addon-button--right s-button button{border-bottom-left-radius:0;border-top-left-radius:0}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i2.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor"], outputs: ["clicked"] }, { kind: "ngmodule", type: LocalizedNumberInputModule }, { kind: "directive", type: i4.LocalizedNumberInputDirective, selector: "input[sLocalizedNumberInput]", inputs: ["decimalSeparator", "thousandsSeparator", "precision"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: NumberInputModule }, { kind: "directive", type: i5.NumberInputDirective, selector: "input[sNumberInput]", inputs: ["precision", "scale", "decimalSeparator", "thousandsSeparator", "alignTo", "allowNegative", "placeholder"], outputs: ["pasteRejected"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i6.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
107
|
+
}
|
|
108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberFieldComponent, decorators: [{
|
|
109
|
+
type: Component,
|
|
110
|
+
args: [{ standalone: true, imports: [
|
|
111
|
+
FieldLabelComponent,
|
|
112
|
+
InputMaskModule,
|
|
113
|
+
TooltipDirective,
|
|
114
|
+
ReactiveFormsModule,
|
|
115
|
+
ButtonComponent,
|
|
116
|
+
LocalizedNumberInputModule,
|
|
117
|
+
NgClass,
|
|
118
|
+
NumberInputModule,
|
|
119
|
+
NgTemplateOutlet,
|
|
120
|
+
InputTextModule,
|
|
121
|
+
], encapsulation: ViewEncapsulation.None, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef.nativeElement\"\n />\n}\n\n@let hasMask = !!_field.mask;\n@if (hasMask) {\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"_field.mask ? fieldUtils.getFieldPropertyMask(_field.mask) : null\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n >\n </p-inputMask>\n} @else if (!hasMask) {\n <div class=\"ui-inputgroup\">\n @if (_field.leftAddon) {\n @if (_field.leftAddon.callback) {\n <span class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"_field.leftAddon.label\"\n [iconClass]=\"_field.leftAddon.icon\"\n [priority]=\"_field.leftAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.leftAddon)\"\n (clicked)=\"_field.leftAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.leftAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.leftAddon.label) {\n <span>{{ _field.leftAddon.label }}</span>\n } @else if (!_field.leftAddon.label) {\n <span [ngClass]=\"_field.leftAddon.icon\"></span>\n }\n </span>\n }\n }\n\n @if (\n _field.type === 'legacyNumber' && _field.localizedNumber && _field.alignTo === numberAlignmentOption.LEFT\n ) {\n <ng-container *ngTemplateOutlet=\"localizedNumber\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"input\"></ng-container>\n }\n\n @if (_field.rightAddon) {\n @if (_field.rightAddon.callback) {\n <span class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"_field.rightAddon.label\"\n [iconClass]=\"_field.rightAddon.icon\"\n [priority]=\"_field.rightAddon.priority\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(_field.rightAddon)\"\n (clicked)=\"_field.rightAddon.callback()\"\n >\n </s-button>\n </span>\n }\n @if (!_field.rightAddon.callback) {\n <span class=\"ui-inputgroup-addon\">\n @if (_field.rightAddon.label) {\n {{ _field.rightAddon.label }}\n } @else if (!_field.rightAddon.label) {\n <span [ngClass]=\"_field.rightAddon.icon\"></span>\n }\n </span>\n }\n }\n </div>\n}\n\n<ng-template #input>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator\"\n [alignTo]=\"_field.alignTo ?? numberAlignmentOption.LEFT\"\n ;\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n<ng-template #localizedNumber>\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sLocalizedNumberInput\n [precision]=\"fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:highlight(#c13018)}.addon-button{border:1px solid #c1c1cc}.addon-button s-button button,.addon-button s-button .s-button-with-text{height:100%;min-width:40px}.addon-button--left{border-radius:5px 0 0 5px;border-right:none}.addon-button--left s-button button{border-bottom-right-radius:0;border-top-right-radius:0}.addon-button--right{border-left:none;border-radius:0 5px 5px 0}.addon-button--right s-button button{border-bottom-left-radius:0;border-top-left-radius:0}\n"] }]
|
|
122
|
+
}], ctorParameters: () => [{ type: i1.LocaleService }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { onInput: [{
|
|
123
|
+
type: Output
|
|
124
|
+
}], onFocus: [{
|
|
125
|
+
type: Output
|
|
126
|
+
}], onComplete: [{
|
|
127
|
+
type: Output
|
|
128
|
+
}] } });
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZm9ybS1maWVsZC9maWVsZHMvbnVtYmVyL251bWJlci1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL251bWJlci9udW1iZXItZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBQ3hELE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBR0gsU0FBUyxFQUVULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUdMLE1BQU0sRUFDTixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFlLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRTVFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7Ozs7OztBQXNCbkYsTUFBTSxPQUFPLG9CQUFvQjtJQWtCUjtJQUNBO0lBQ0E7SUFuQnJCLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFxQixDQUFDO0lBQzVDLFdBQVcsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFlLENBQUM7SUFFNUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBR3BDLE9BQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUVoRCxPQUFPLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFaEQsVUFBVSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRW5ELFFBQVEsR0FBc0IsSUFBSSxDQUFDO0lBRWxDLGFBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRTVDLFlBQ3FCLGFBQTRCLEVBQzVCLFVBQXNCLEVBQ3RCLGlCQUFvQztRQUZwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFDdEQsQ0FBQztJQUVHLFFBQVE7UUFDWCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtZQUM3RSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2xDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUN0RSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2xDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUN6RSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDMUIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxlQUFlO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQVcscUJBQXFCO1FBQzVCLE9BQU8scUJBQXFCLENBQUM7SUFDakMsQ0FBQztJQUVPLGVBQWU7UUFDbkIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhO2FBQ2IsU0FBUyxFQUFFO2FBQ1gsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2IsU0FBUyxDQUFDO1lBQ1AsSUFBSSxFQUFFLEdBQUcsRUFBRTtnQkFDUCxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLENBQUM7b0JBQy9DLEtBQUssQ0FBQyxtQkFBbUIsR0FBRzt3QkFDeEIsR0FBRyxLQUFLLENBQUMsbUJBQW1CO3dCQUM1QixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLElBQUksRUFBRTtxQkFDbkUsQ0FBQztnQkFDTixDQUFDO2dCQUVELElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztvQkFDakQsS0FBSyxDQUFDLG1CQUFtQixHQUFHO3dCQUN4QixHQUFHLEtBQUssQ0FBQyxtQkFBbUI7d0JBQzVCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxFQUFFO3FCQUN0RSxDQUFDO2dCQUNOLENBQUM7Z0JBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxjQUFjLEVBQUUsQ0FBQztvQkFDN0MsS0FBSyxDQUFDLG1CQUFtQixHQUFHO3dCQUN4QixHQUFHLEtBQUssQ0FBQyxtQkFBbUI7d0JBQzVCLGNBQWMsRUFBRSxJQUFJO3FCQUN2QixDQUFDO2dCQUNOLENBQUM7WUFDTCxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUNSLENBQUMsS0FBSyxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxtQkFBbUIsSUFBSTtnQkFDdEQsa0JBQWtCLEVBQUUsR0FBRztnQkFDdkIsZ0JBQWdCLEVBQUUsR0FBRztnQkFDckIsY0FBYyxFQUFFLElBQUk7YUFDdkIsQ0FBQztTQUNULENBQUMsQ0FBQztJQUNYLENBQUM7SUFFTyxXQUFXO1FBQ2YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7d0dBbkdRLG9CQUFvQjs0RkFBcEIsb0JBQW9CLG1hQ2hEakMsd3pLQXlJQSx5cEJEeEdRLG1CQUFtQixpR0FDbkIsZUFBZSxzaUJBQ2YsZ0JBQWdCLDJOQUNoQixtQkFBbUIsMGtCQUNuQixlQUFlLHFUQUNmLDBCQUEwQix5TUFDMUIsT0FBTyxtRkFDUCxpQkFBaUIsdVFBQ2pCLGdCQUFnQixtSkFDaEIsZUFBZTs7NEZBTVYsb0JBQW9CO2tCQWxCaEMsU0FBUztpQ0FDTSxJQUFJLFdBQ1A7d0JBQ0wsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLDBCQUEwQjt3QkFDMUIsT0FBTzt3QkFDUCxpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIsZUFBZTtxQkFDbEIsaUJBR2MsaUJBQWlCLENBQUMsSUFBSTsySUFTOUIsT0FBTztzQkFEYixNQUFNO2dCQUdBLE9BQU87c0JBRGIsTUFBTTtnQkFHQSxVQUFVO3NCQURoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXggKi9cbmltcG9ydCB7IE5nQ2xhc3MsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgaW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBMb2NhbGVTZXJ2aWNlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9sb2NhbGUnO1xuaW1wb3J0IHsgTG9jYWxpemVkTnVtYmVySW5wdXRNb2R1bGUgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2xvY2FsaXplZC1udW1iZXItaW5wdXQnO1xuaW1wb3J0IHsgTnVtYmVyQWxpZ25tZW50T3B0aW9uLCBOdW1iZXJJbnB1dE1vZHVsZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvbnVtYmVyLWlucHV0JztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3Rvb2x0aXAnO1xuaW1wb3J0IHsgSW5wdXRNYXNrTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dG1hc2snO1xuaW1wb3J0IHsgSW5wdXRUZXh0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dHRleHQnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlyc3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEZpZWxkTGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2ZpZWxkLWxhYmVsL2ZpZWxkLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtRmllbGRVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLWZpZWxkLXV0aWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTnVtYmVyRmllbGRDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9ucy9maWVsZHMvbnVtYmVyLWZpZWxkJztcbmltcG9ydCB7IEJhc2VGaWVsZENvbXBvbmVudENvbmZpZyB9IGZyb20gJy4uL2Jhc2UtZmllbGQtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEZpZWxkTGFiZWxDb21wb25lbnQsXG4gICAgICAgIElucHV0TWFza01vZHVsZSxcbiAgICAgICAgVG9vbHRpcERpcmVjdGl2ZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBMb2NhbGl6ZWROdW1iZXJJbnB1dE1vZHVsZSxcbiAgICAgICAgTmdDbGFzcyxcbiAgICAgICAgTnVtYmVySW5wdXRNb2R1bGUsXG4gICAgICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgICAgIElucHV0VGV4dE1vZHVsZSxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnbnVtYmVyLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9udW1iZXItZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBOdW1iZXJGaWVsZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBCYXNlRmllbGRDb21wb25lbnRDb25maWcsIEFmdGVyVmlld0luaXQge1xuICAgIGZpZWxkID0gaW5wdXQucmVxdWlyZWQ8TnVtYmVyRmllbGRDb25maWc+KCk7XG4gICAgZm9ybUNvbnRyb2wgPSBpbnB1dC5yZXF1aXJlZDxGb3JtQ29udHJvbD4oKTtcblxuICAgIGZpZWxkVXRpbHMgPSBpbmplY3QoRm9ybUZpZWxkVXRpbHNTZXJ2aWNlKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBvbklucHV0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgb25Gb2N1czogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIG9uQ29tcGxldGU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHVibGljIGlucHV0UmVmOiBFbGVtZW50UmVmIHwgbnVsbCA9IG51bGw7XG5cbiAgICBwcml2YXRlIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMub25Mb2NhbGVTZXJ2aWNlKCk7XG5cbiAgICAgICAgdGhpcy5vbkZvY3VzLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoZXZlbnQ6IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkKCkub25Gb2N1cykge1xuICAgICAgICAgICAgICAgIHRoaXMuZmllbGQoKS5vbkZvY3VzPy4oZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLm9uSW5wdXQucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5maWVsZCgpLm9uSW5wdXQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkKCkub25JbnB1dD8uKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5vbkNvbXBsZXRlLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQoKS5vbkNvbXBsZXRlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWVsZCgpLm9uQ29tcGxldGU/LihldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0SW5wdXRSZWYoKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG51bWJlckFsaWdubWVudE9wdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIE51bWJlckFsaWdubWVudE9wdGlvbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uTG9jYWxlU2VydmljZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmllbGQgPSB0aGlzLmZpZWxkKCk7XG4gICAgICAgIHRoaXMubG9jYWxlU2VydmljZVxuICAgICAgICAgICAgLmdldExvY2FsZSgpXG4gICAgICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnM/LmRlY2ltYWxTZXBhcmF0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uZmllbGQubnVtYmVyTG9jYWxlT3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNpbWFsU2VwYXJhdG9yOiB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0RGVjaW1hbFNlcGFyYXRvcigpID8/ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmICghZmllbGQubnVtYmVyTG9jYWxlT3B0aW9ucz8udGhvdXNhbmRzU2VwYXJhdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5udW1iZXJMb2NhbGVPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLmZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhvdXNhbmRzU2VwYXJhdG9yOiB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0R3JvdXBpbmdTZXBhcmF0b3IoKSA/PyAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpZiAoIWZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnM/LmN1cnJlbmN5U3ltYm9sKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5udW1iZXJMb2NhbGVPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLmZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVuY3lTeW1ib2w6ICdSJCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogKCkgPT5cbiAgICAgICAgICAgICAgICAgICAgKGZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnMgPSBmaWVsZC5udW1iZXJMb2NhbGVPcHRpb25zID8/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRob3VzYW5kc1NlcGFyYXRvcjogJy4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVjaW1hbFNlcGFyYXRvcjogJywnLFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVuY3lTeW1ib2w6ICdSJCcsXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRJbnB1dFJlZigpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5wdXQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dCcpO1xuICAgICAgICB0aGlzLmlucHV0UmVmID0gaW5wdXQ7XG4gICAgfVxufVxuXG4iLCJAbGV0IF9maWVsZCA9IGZpZWxkKCk7XG5AaWYgKGlucHV0UmVmKSB7XG4gICAgPHMtZmllbGQtbGFiZWxcbiAgICAgICAgW2ZpZWxkXT1cIl9maWVsZFwiXG4gICAgICAgIFtmaWVsZENvbnRhaW5lclJlZl09XCJpbnB1dFJlZi5uYXRpdmVFbGVtZW50XCJcbiAgICAvPlxufVxuXG5AbGV0IGhhc01hc2sgPSAhIV9maWVsZC5tYXNrO1xuQGlmIChoYXNNYXNrKSB7XG4gICAgPHAtaW5wdXRNYXNrXG4gICAgICAgICNpbnB1dFJlZlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFtpbnB1dElkXT1cIl9maWVsZC5pZCB8fCBfZmllbGQubmFtZVwiXG4gICAgICAgIFtuYW1lXT1cIl9maWVsZC5uYW1lXCJcbiAgICAgICAgW21hc2tdPVwiX2ZpZWxkLm1hc2sgPyBmaWVsZFV0aWxzLmdldEZpZWxkUHJvcGVydHlNYXNrKF9maWVsZC5tYXNrKSA6IG51bGxcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiX2ZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgc2xvdENoYXI9XCJfXCJcbiAgICAgICAgW3NUb29sdGlwXT1cIl9maWVsZC50b29sdGlwXCJcbiAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgW3Nob3dEZWxheV09XCI1MDBcIlxuICAgICAgICBzdHlsZUNsYXNzPVwibW91c2V0cmFwXCJcbiAgICAgICAgKG9uQmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIChvbkZvY3VzKT1cIm9uRm9jdXMubmV4dCgkZXZlbnQpXCJcbiAgICAgICAgKG9uQ29tcGxldGUpPVwib25Db21wbGV0ZS5uZXh0KCRldmVudClcIlxuICAgICAgICAob25JbnB1dCk9XCJvbklucHV0Lm5leHQoJGV2ZW50KVwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbCgpXCJcbiAgICA+XG4gICAgPC9wLWlucHV0TWFzaz5cbn0gQGVsc2UgaWYgKCFoYXNNYXNrKSB7XG4gICAgPGRpdiBjbGFzcz1cInVpLWlucHV0Z3JvdXBcIj5cbiAgICAgICAgQGlmIChfZmllbGQubGVmdEFkZG9uKSB7XG4gICAgICAgICAgICBAaWYgKF9maWVsZC5sZWZ0QWRkb24uY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFkZG9uLWJ1dHRvbiBhZGRvbi1idXR0b24tLWxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHMtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiX2ZpZWxkLmxlZnRBZGRvbi5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkNsYXNzXT1cIl9maWVsZC5sZWZ0QWRkb24uaWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcHJpb3JpdHldPVwiX2ZpZWxkLmxlZnRBZGRvbi5wcmlvcml0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGRVdGlscy5maWVsZFByb3BlcnR5SXNEaXNhYmxlZChfZmllbGQubGVmdEFkZG9uKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJfZmllbGQubGVmdEFkZG9uLmNhbGxiYWNrKClcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvcy1idXR0b24+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmICghX2ZpZWxkLmxlZnRBZGRvbi5jYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidWktaW5wdXRncm91cC1hZGRvblwiPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKF9maWVsZC5sZWZ0QWRkb24ubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IF9maWVsZC5sZWZ0QWRkb24ubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH0gQGVsc2UgaWYgKCFfZmllbGQubGVmdEFkZG9uLmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbbmdDbGFzc109XCJfZmllbGQubGVmdEFkZG9uLmljb25cIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgX2ZpZWxkLnR5cGUgPT09ICdsZWdhY3lOdW1iZXInICYmIF9maWVsZC5sb2NhbGl6ZWROdW1iZXIgJiYgX2ZpZWxkLmFsaWduVG8gPT09IG51bWJlckFsaWdubWVudE9wdGlvbi5MRUZUXG4gICAgICAgICkge1xuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxvY2FsaXplZE51bWJlclwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpbnB1dFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChfZmllbGQucmlnaHRBZGRvbikge1xuICAgICAgICAgICAgQGlmIChfZmllbGQucmlnaHRBZGRvbi5jYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWRkb24tYnV0dG9uIGFkZG9uLWJ1dHRvbi0tcmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHMtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiX2ZpZWxkLnJpZ2h0QWRkb24ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25DbGFzc109XCJfZmllbGQucmlnaHRBZGRvbi5pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwcmlvcml0eV09XCJfZmllbGQucmlnaHRBZGRvbi5wcmlvcml0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGRVdGlscy5maWVsZFByb3BlcnR5SXNEaXNhYmxlZChfZmllbGQucmlnaHRBZGRvbilcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwiX2ZpZWxkLnJpZ2h0QWRkb24uY2FsbGJhY2soKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9zLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKCFfZmllbGQucmlnaHRBZGRvbi5jYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidWktaW5wdXRncm91cC1hZGRvblwiPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKF9maWVsZC5yaWdodEFkZG9uLmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBfZmllbGQucmlnaHRBZGRvbi5sYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIGlmICghX2ZpZWxkLnJpZ2h0QWRkb24ubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cIl9maWVsZC5yaWdodEFkZG9uLmljb25cIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn1cblxuPG5nLXRlbXBsYXRlICNpbnB1dD5cbiAgICA8aW5wdXRcbiAgICAgICAgI2lucHV0UmVmXG4gICAgICAgIFtpZF09XCJfZmllbGQuaWQgfHwgX2ZpZWxkLm5hbWVcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFtuYW1lXT1cIl9maWVsZC5uYW1lXCJcbiAgICAgICAgc051bWJlcklucHV0XG4gICAgICAgIFtwcmVjaXNpb25dPVwiZmllbGRVdGlscy5pc0Z1bmN0aW9uKF9maWVsZC5wcmVjaXNpb24pID8gZmllbGRVdGlscy50cmlnZ2VyKF9maWVsZC5wcmVjaXNpb24pIDogX2ZpZWxkLnByZWNpc2lvblwiXG4gICAgICAgIFtzY2FsZV09XCJmaWVsZFV0aWxzLmlzRnVuY3Rpb24oX2ZpZWxkLnNjYWxlKSA/IGZpZWxkVXRpbHMudHJpZ2dlcihfZmllbGQuc2NhbGUpIDogX2ZpZWxkLnNjYWxlXCJcbiAgICAgICAgW2RlY2ltYWxTZXBhcmF0b3JdPVwiX2ZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnM/LmRlY2ltYWxTZXBhcmF0b3JcIlxuICAgICAgICBbdGhvdXNhbmRzU2VwYXJhdG9yXT1cIl9maWVsZC5udW1iZXJMb2NhbGVPcHRpb25zPy50aG91c2FuZHNTZXBhcmF0b3JcIlxuICAgICAgICBbYWxpZ25Ub109XCJfZmllbGQuYWxpZ25UbyA/PyBudW1iZXJBbGlnbm1lbnRPcHRpb24uTEVGVFwiXG4gICAgICAgIDtcbiAgICAgICAgW3NUb29sdGlwXT1cIl9maWVsZC50b29sdGlwXCJcbiAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIl9maWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgIFtzaG93RGVsYXldPVwiNTAwXCJcbiAgICAgICAgcElucHV0VGV4dFxuICAgICAgICBbYXV0b2NvbXBsZXRlXT1cIl9maWVsZC5icm93c2VyQXV0b2NvbXBsZXRlID8gJ29uJyA6ICdvZmYnXCJcbiAgICAgICAgW25nQ2xhc3NdPVwiJ21vdXNldHJhcCdcIlxuICAgICAgICAoYmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIChmb2N1cyk9XCJvbkZvY3VzLm5leHQoJGV2ZW50KVwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbCgpXCJcbiAgICAvPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjbG9jYWxpemVkTnVtYmVyPlxuICAgIDxpbnB1dFxuICAgICAgICAjaW5wdXRSZWZcbiAgICAgICAgW2lkXT1cIl9maWVsZC5pZCB8fCBfZmllbGQubmFtZVwiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgW25hbWVdPVwiX2ZpZWxkLm5hbWVcIlxuICAgICAgICBzTG9jYWxpemVkTnVtYmVySW5wdXRcbiAgICAgICAgW3ByZWNpc2lvbl09XCJmaWVsZFV0aWxzLmlzRnVuY3Rpb24oX2ZpZWxkLnByZWNpc2lvbikgPyBmaWVsZFV0aWxzLnRyaWdnZXIoX2ZpZWxkLnByZWNpc2lvbikgOiBfZmllbGQucHJlY2lzaW9uXCJcbiAgICAgICAgW2RlY2ltYWxTZXBhcmF0b3JdPVwiX2ZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnM/LmRlY2ltYWxTZXBhcmF0b3JcIlxuICAgICAgICBbdGhvdXNhbmRzU2VwYXJhdG9yXT1cIl9maWVsZC5udW1iZXJMb2NhbGVPcHRpb25zPy50aG91c2FuZHNTZXBhcmF0b3JcIlxuICAgICAgICBbc1Rvb2x0aXBdPVwiX2ZpZWxkLnRvb2x0aXBcIlxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiX2ZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgW3Nob3dEZWxheV09XCI1MDBcIlxuICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgIFthdXRvY29tcGxldGVdPVwiX2ZpZWxkLmJyb3dzZXJBdXRvY29tcGxldGUgPyAnb24nIDogJ29mZidcIlxuICAgICAgICBbbmdDbGFzc109XCInbW91c2V0cmFwJ1wiXG4gICAgICAgIChibHVyKT1cIl9maWVsZC5vbkJsdXIgPyBfZmllbGQub25CbHVyKCRldmVudCkgOiBudWxsXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMubmV4dCgkZXZlbnQpXCJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sKClcIlxuICAgIC8+XG48L25nLXRlbXBsYXRlPlxuXG4iXX0=
|
package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/* eslint-disable @angular-eslint/no-output-on-prefix */
|
|
2
|
+
import { Component, EventEmitter, inject, input, Output, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { Subject } from 'rxjs';
|
|
5
|
+
import { takeUntil } from 'rxjs/operators';
|
|
6
|
+
import { FormFieldUtilsService } from '../../../services/form-field-utils.service';
|
|
7
|
+
import { FieldLabelComponent } from '../../../components/field-label/field-label.component';
|
|
8
|
+
import { NgClass, NgStyle } from '@angular/common';
|
|
9
|
+
import { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';
|
|
10
|
+
import { PasswordStrengthModule } from '@seniorsistemas/angular-components/password-strength';
|
|
11
|
+
import { ButtonComponent } from '@seniorsistemas/angular-components/button';
|
|
12
|
+
import { InputTextModule } from 'primeng/inputtext';
|
|
13
|
+
import * as i0 from "@angular/core";
|
|
14
|
+
import * as i1 from "@angular/forms";
|
|
15
|
+
import * as i2 from "@seniorsistemas/angular-components/password-strength";
|
|
16
|
+
import * as i3 from "primeng/inputtext";
|
|
17
|
+
export class PasswordFieldComponent {
|
|
18
|
+
changeDetectorRef;
|
|
19
|
+
field = input.required();
|
|
20
|
+
formControl = input.required();
|
|
21
|
+
onInput = new EventEmitter();
|
|
22
|
+
onFocus = new EventEmitter();
|
|
23
|
+
onComplete = new EventEmitter();
|
|
24
|
+
inputRef = null;
|
|
25
|
+
ngUnsubscribe = new Subject();
|
|
26
|
+
passwordVisible = false;
|
|
27
|
+
formUtils = inject(FormFieldUtilsService);
|
|
28
|
+
constructor(changeDetectorRef) {
|
|
29
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
30
|
+
}
|
|
31
|
+
ngOnInit() {
|
|
32
|
+
this.formUtils.switchEmptyStringToNull(this.formControl(), this.ngUnsubscribe);
|
|
33
|
+
const field = this.field();
|
|
34
|
+
this.onFocus.pipe(takeUntil(this.ngUnsubscribe)).subscribe((event) => {
|
|
35
|
+
if (field.onFocus) {
|
|
36
|
+
field.onFocus(event);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
this.onInput.pipe(takeUntil(this.ngUnsubscribe)).subscribe((event) => {
|
|
40
|
+
if (field.onInput) {
|
|
41
|
+
field.onInput(event);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
this.onComplete.pipe(takeUntil(this.ngUnsubscribe)).subscribe((event) => {
|
|
45
|
+
if (field.onComplete) {
|
|
46
|
+
field.onComplete(event);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
ngOnDestroy() {
|
|
51
|
+
this.ngUnsubscribe.next();
|
|
52
|
+
this.ngUnsubscribe.complete();
|
|
53
|
+
}
|
|
54
|
+
onChangeVisible() {
|
|
55
|
+
this.passwordVisible = !this.passwordVisible;
|
|
56
|
+
}
|
|
57
|
+
ngAfterViewInit() {
|
|
58
|
+
this.changeDetectorRef.detectChanges();
|
|
59
|
+
}
|
|
60
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PasswordFieldComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
61
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PasswordFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div\n class=\"password-field\"\n [ngClass]=\"{ 'password-field--toggle': _field.showToggle }\"\n>\n <input\n #inputRef\n [type]=\"passwordVisible ? 'text' : 'password'\"\n [id]=\"_field.id || _field.name\"\n class=\"password-input\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [sPasswordStrength]=\"_field.passwordStrength ? _field.passwordStrength : false\"\n [passwordStrengthDescription]=\"\n _field.passwordStrengthOptions?.description ? _field.passwordStrengthOptions!.description : ''\n \"\n [passwordStrengthWeakTitle]=\"\n _field.passwordStrengthOptions?.weakTitle ? _field.passwordStrengthOptions?.weakTitle : ''\n \"\n [passwordStrengthMediumTitle]=\"\n _field.passwordStrengthOptions?.mediumTitle ? _field.passwordStrengthOptions?.mediumTitle : ''\n \"\n [passwordStrengthStrongTitle]=\"\n _field.passwordStrengthOptions?.strongTitle ? _field.passwordStrengthOptions?.strongTitle : ''\n \"\n [passwordStrengthValidation]=\"_field.passwordStrengthOptions?.validation\"\n />\n @if (_field.showToggle) {\n <span class=\"toggle-button\">\n <s-button\n [iconClass]=\"passwordVisible ? 'fas fa-eye-slash' : 'fas fa-eye'\"\n priority=\"default\"\n (clicked)=\"onChangeVisible()\"\n >\n </s-button>\n </span>\n }\n</div>\n\n", styles: ["s-text-field.ng-dirty.ng-invalid .password-input{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .password-input:hover{border-color:highlight(#c13018)}.password-field{display:flex}.password-field--toggle .password-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.password-field--toggle .toggle-button s-button button{border-bottom-left-radius:0;border-top-left-radius:0}.password-field:has(.password-input.ng-invalid.ng-dirty) s-button button{border:1px solid #c13018}.password-field:has(.password-input:focus) s-button button{border:1px solid #428bca}.password-field:has(.password-input:focus):has(button) .password-input{border-right:none}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: PasswordStrengthModule }, { kind: "directive", type: i2.PasswordStrengthDirective, selector: "[sPasswordStrength]", inputs: ["sPasswordStrength", "passwordStrengthValidation", "passwordStrengthPosition", "passwordStrengthWeakTitle", "passwordStrengthMediumTitle", "passwordStrengthStrongTitle", "passwordStrengthDescription"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor"], outputs: ["clicked"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i3.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
62
|
+
}
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PasswordFieldComponent, decorators: [{
|
|
64
|
+
type: Component,
|
|
65
|
+
args: [{ encapsulation: ViewEncapsulation.None, standalone: true, imports: [
|
|
66
|
+
FieldLabelComponent,
|
|
67
|
+
NgClass,
|
|
68
|
+
TooltipDirective,
|
|
69
|
+
ReactiveFormsModule,
|
|
70
|
+
NgStyle,
|
|
71
|
+
PasswordStrengthModule,
|
|
72
|
+
ButtonComponent,
|
|
73
|
+
InputTextModule,
|
|
74
|
+
], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div\n class=\"password-field\"\n [ngClass]=\"{ 'password-field--toggle': _field.showToggle }\"\n>\n <input\n #inputRef\n [type]=\"passwordVisible ? 'text' : 'password'\"\n [id]=\"_field.id || _field.name\"\n class=\"password-input\"\n [name]=\"_field.name\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder ?? ''\"\n [showDelay]=\"500\"\n [maxLength]=\"_field.maxLength ?? 9999999\"\n pInputText\n [ngClass]=\"'mousetrap'\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [ngStyle]=\"_field.style\"\n [sPasswordStrength]=\"_field.passwordStrength ? _field.passwordStrength : false\"\n [passwordStrengthDescription]=\"\n _field.passwordStrengthOptions?.description ? _field.passwordStrengthOptions!.description : ''\n \"\n [passwordStrengthWeakTitle]=\"\n _field.passwordStrengthOptions?.weakTitle ? _field.passwordStrengthOptions?.weakTitle : ''\n \"\n [passwordStrengthMediumTitle]=\"\n _field.passwordStrengthOptions?.mediumTitle ? _field.passwordStrengthOptions?.mediumTitle : ''\n \"\n [passwordStrengthStrongTitle]=\"\n _field.passwordStrengthOptions?.strongTitle ? _field.passwordStrengthOptions?.strongTitle : ''\n \"\n [passwordStrengthValidation]=\"_field.passwordStrengthOptions?.validation\"\n />\n @if (_field.showToggle) {\n <span class=\"toggle-button\">\n <s-button\n [iconClass]=\"passwordVisible ? 'fas fa-eye-slash' : 'fas fa-eye'\"\n priority=\"default\"\n (clicked)=\"onChangeVisible()\"\n >\n </s-button>\n </span>\n }\n</div>\n\n", styles: ["s-text-field.ng-dirty.ng-invalid .password-input{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .password-input:hover{border-color:highlight(#c13018)}.password-field{display:flex}.password-field--toggle .password-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.password-field--toggle .toggle-button s-button button{border-bottom-left-radius:0;border-top-left-radius:0}.password-field:has(.password-input.ng-invalid.ng-dirty) s-button button{border:1px solid #c13018}.password-field:has(.password-input:focus) s-button button{border:1px solid #428bca}.password-field:has(.password-input:focus):has(button) .password-input{border-right:none}\n"] }]
|
|
75
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { onInput: [{
|
|
76
|
+
type: Output
|
|
77
|
+
}], onFocus: [{
|
|
78
|
+
type: Output
|
|
79
|
+
}], onComplete: [{
|
|
80
|
+
type: Output
|
|
81
|
+
}], inputRef: [{
|
|
82
|
+
type: ViewChild,
|
|
83
|
+
args: ['inputRef']
|
|
84
|
+
}] } });
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQtZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9mb3JtLWZpZWxkL2ZpZWxkcy9wYXNzd29yZC9wYXNzd29yZC1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL3Bhc3N3b3JkL3Bhc3N3b3JkLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdEQUF3RDtBQUN4RCxPQUFPLEVBR0gsU0FBUyxFQUVULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBZSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBR25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFrQnBELE1BQU0sT0FBTyxzQkFBc0I7SUFvQkY7SUFuQjdCLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF1QixDQUFDO0lBQzlDLFdBQVcsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFlLENBQUM7SUFHckMsT0FBTyxHQUF3QixJQUFJLFlBQVksRUFBUyxDQUFDO0lBR3pELE9BQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUdoRCxVQUFVLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFbkMsUUFBUSxHQUFzQixJQUFJLENBQUM7SUFFbEQsYUFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFDckMsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUVkLFNBQVMsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUUzRCxZQUE2QixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUFHLENBQUM7SUFFOUQsUUFBUTtRQUNYLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMvRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtZQUM3RSxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDaEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakUsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2hCLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekIsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ3pFLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQixLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFTSxlQUFlO1FBQ2xCLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ2pELENBQUM7SUFFTSxlQUFlO1FBQ2xCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQyxDQUFDO3dHQXJEUSxzQkFBc0I7NEZBQXRCLHNCQUFzQix5Z0JDOUNuQyx1a0VBeURBLGt1QkRyQlEsbUJBQW1CLGtHQUNuQixPQUFPLG9GQUNQLGdCQUFnQiwyTkFDaEIsbUJBQW1CLDBrQkFDbkIsT0FBTywwRUFDUCxzQkFBc0IsOFVBQ3RCLGVBQWUscVRBQ2YsZUFBZTs7NEZBR1Ysc0JBQXNCO2tCQWhCbEMsU0FBUztvQ0FHUyxpQkFBaUIsQ0FBQyxJQUFJLGNBQ3pCLElBQUksV0FDUDt3QkFDTCxtQkFBbUI7d0JBQ25CLE9BQU87d0JBQ1AsZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLE9BQU87d0JBQ1Asc0JBQXNCO3dCQUN0QixlQUFlO3dCQUNmLGVBQWU7cUJBQ2xCO3NGQU9NLE9BQU87c0JBRGIsTUFBTTtnQkFJQSxPQUFPO3NCQURiLE1BQU07Z0JBSUEsVUFBVTtzQkFEaEIsTUFBTTtnQkFHZ0IsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXggKi9cbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBGb3JtRmllbGRVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLWZpZWxkLXV0aWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFzc3dvcmRGaWVsZENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9wYXNzd29yZC1maWVsZCc7XG5pbXBvcnQgeyBCYXNlRmllbGRDb21wb25lbnRDb25maWcgfSBmcm9tICcuLi9iYXNlLWZpZWxkLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9maWVsZC1sYWJlbC9maWVsZC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdDbGFzcywgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy90b29sdGlwJztcbmltcG9ydCB7IFBhc3N3b3JkU3RyZW5ndGhNb2R1bGUgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3Bhc3N3b3JkLXN0cmVuZ3RoJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IElucHV0VGV4dE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXR0ZXh0JztcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICcuL3Bhc3N3b3JkLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wYXNzd29yZC1maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEZpZWxkTGFiZWxDb21wb25lbnQsXG4gICAgICAgIE5nQ2xhc3MsXG4gICAgICAgIFRvb2x0aXBEaXJlY3RpdmUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIE5nU3R5bGUsXG4gICAgICAgIFBhc3N3b3JkU3RyZW5ndGhNb2R1bGUsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFBhc3N3b3JkRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgQmFzZUZpZWxkQ29tcG9uZW50Q29uZmlnIHtcbiAgICBmaWVsZCA9IGlucHV0LnJlcXVpcmVkPFBhc3N3b3JkRmllbGRDb25maWc+KCk7XG4gICAgZm9ybUNvbnRyb2wgPSBpbnB1dC5yZXF1aXJlZDxGb3JtQ29udHJvbD4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBvbklucHV0OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBvbkNvbXBsZXRlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0UmVmJykgaW5wdXRSZWY6IEVsZW1lbnRSZWYgfCBudWxsID0gbnVsbDtcblxuICAgIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgcHVibGljIHBhc3N3b3JkVmlzaWJsZSA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb3JtVXRpbHMgPSBpbmplY3QoRm9ybUZpZWxkVXRpbHNTZXJ2aWNlKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm1VdGlscy5zd2l0Y2hFbXB0eVN0cmluZ1RvTnVsbCh0aGlzLmZvcm1Db250cm9sKCksIHRoaXMubmdVbnN1YnNjcmliZSk7XG4gICAgICAgIGNvbnN0IGZpZWxkID0gdGhpcy5maWVsZCgpO1xuICAgICAgICB0aGlzLm9uRm9jdXMucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChldmVudDogRm9jdXNFdmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGZpZWxkLm9uRm9jdXMpIHtcbiAgICAgICAgICAgICAgICBmaWVsZC5vbkZvY3VzKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMub25JbnB1dC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICBpZiAoZmllbGQub25JbnB1dCkge1xuICAgICAgICAgICAgICAgIGZpZWxkLm9uSW5wdXQoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5vbkNvbXBsZXRlLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgaWYgKGZpZWxkLm9uQ29tcGxldGUpIHtcbiAgICAgICAgICAgICAgICBmaWVsZC5vbkNvbXBsZXRlKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25DaGFuZ2VWaXNpYmxlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhc3N3b3JkVmlzaWJsZSA9ICF0aGlzLnBhc3N3b3JkVmlzaWJsZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG59XG5cbiIsIkBsZXQgX2ZpZWxkID0gZmllbGQoKTtcbkBpZiAoaW5wdXRSZWYpIHtcbiAgICA8cy1maWVsZC1sYWJlbFxuICAgICAgICBbZmllbGRdPVwiX2ZpZWxkXCJcbiAgICAgICAgW2ZpZWxkQ29udGFpbmVyUmVmXT1cImlucHV0UmVmXCJcbiAgICA+PC9zLWZpZWxkLWxhYmVsPlxufVxuXG48ZGl2XG4gICAgY2xhc3M9XCJwYXNzd29yZC1maWVsZFwiXG4gICAgW25nQ2xhc3NdPVwieyAncGFzc3dvcmQtZmllbGQtLXRvZ2dsZSc6IF9maWVsZC5zaG93VG9nZ2xlIH1cIlxuPlxuICAgIDxpbnB1dFxuICAgICAgICAjaW5wdXRSZWZcbiAgICAgICAgW3R5cGVdPVwicGFzc3dvcmRWaXNpYmxlID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1wiXG4gICAgICAgIFtpZF09XCJfZmllbGQuaWQgfHwgX2ZpZWxkLm5hbWVcIlxuICAgICAgICBjbGFzcz1cInBhc3N3b3JkLWlucHV0XCJcbiAgICAgICAgW25hbWVdPVwiX2ZpZWxkLm5hbWVcIlxuICAgICAgICBbc1Rvb2x0aXBdPVwiX2ZpZWxkLnRvb2x0aXBcIlxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiX2ZpZWxkLnBsYWNlaG9sZGVyID8/ICcnXCJcbiAgICAgICAgW3Nob3dEZWxheV09XCI1MDBcIlxuICAgICAgICBbbWF4TGVuZ3RoXT1cIl9maWVsZC5tYXhMZW5ndGggPz8gOTk5OTk5OVwiXG4gICAgICAgIHBJbnB1dFRleHRcbiAgICAgICAgW25nQ2xhc3NdPVwiJ21vdXNldHJhcCdcIlxuICAgICAgICAoYmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIChmb2N1cyk9XCJvbkZvY3VzLm5leHQoJGV2ZW50KVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0Lm5leHQoJGV2ZW50KVwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbCgpXCJcbiAgICAgICAgW25nU3R5bGVdPVwiX2ZpZWxkLnN0eWxlXCJcbiAgICAgICAgW3NQYXNzd29yZFN0cmVuZ3RoXT1cIl9maWVsZC5wYXNzd29yZFN0cmVuZ3RoID8gX2ZpZWxkLnBhc3N3b3JkU3RyZW5ndGggOiBmYWxzZVwiXG4gICAgICAgIFtwYXNzd29yZFN0cmVuZ3RoRGVzY3JpcHRpb25dPVwiXG4gICAgICAgICAgICBfZmllbGQucGFzc3dvcmRTdHJlbmd0aE9wdGlvbnM/LmRlc2NyaXB0aW9uID8gX2ZpZWxkLnBhc3N3b3JkU3RyZW5ndGhPcHRpb25zIS5kZXNjcmlwdGlvbiA6ICcnXG4gICAgICAgIFwiXG4gICAgICAgIFtwYXNzd29yZFN0cmVuZ3RoV2Vha1RpdGxlXT1cIlxuICAgICAgICAgICAgX2ZpZWxkLnBhc3N3b3JkU3RyZW5ndGhPcHRpb25zPy53ZWFrVGl0bGUgPyBfZmllbGQucGFzc3dvcmRTdHJlbmd0aE9wdGlvbnM/LndlYWtUaXRsZSA6ICcnXG4gICAgICAgIFwiXG4gICAgICAgIFtwYXNzd29yZFN0cmVuZ3RoTWVkaXVtVGl0bGVdPVwiXG4gICAgICAgICAgICBfZmllbGQucGFzc3dvcmRTdHJlbmd0aE9wdGlvbnM/Lm1lZGl1bVRpdGxlID8gX2ZpZWxkLnBhc3N3b3JkU3RyZW5ndGhPcHRpb25zPy5tZWRpdW1UaXRsZSA6ICcnXG4gICAgICAgIFwiXG4gICAgICAgIFtwYXNzd29yZFN0cmVuZ3RoU3Ryb25nVGl0bGVdPVwiXG4gICAgICAgICAgICBfZmllbGQucGFzc3dvcmRTdHJlbmd0aE9wdGlvbnM/LnN0cm9uZ1RpdGxlID8gX2ZpZWxkLnBhc3N3b3JkU3RyZW5ndGhPcHRpb25zPy5zdHJvbmdUaXRsZSA6ICcnXG4gICAgICAgIFwiXG4gICAgICAgIFtwYXNzd29yZFN0cmVuZ3RoVmFsaWRhdGlvbl09XCJfZmllbGQucGFzc3dvcmRTdHJlbmd0aE9wdGlvbnM/LnZhbGlkYXRpb25cIlxuICAgIC8+XG4gICAgQGlmIChfZmllbGQuc2hvd1RvZ2dsZSkge1xuICAgICAgICA8c3BhbiBjbGFzcz1cInRvZ2dsZS1idXR0b25cIj5cbiAgICAgICAgICAgIDxzLWJ1dHRvblxuICAgICAgICAgICAgICAgIFtpY29uQ2xhc3NdPVwicGFzc3dvcmRWaXNpYmxlID8gJ2ZhcyBmYS1leWUtc2xhc2gnIDogJ2ZhcyBmYS1leWUnXCJcbiAgICAgICAgICAgICAgICBwcmlvcml0eT1cImRlZmF1bHRcIlxuICAgICAgICAgICAgICAgIChjbGlja2VkKT1cIm9uQ2hhbmdlVmlzaWJsZSgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvcy1idXR0b24+XG4gICAgICAgIDwvc3Bhbj5cbiAgICB9XG48L2Rpdj5cblxuIl19
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Component, input } from '@angular/core';
|
|
2
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
|
+
import { FieldLabelComponent } from '../../../components/field-label/field-label.component';
|
|
4
|
+
import { ProfilePicturePickerModule } from '@seniorsistemas/angular-components/profile-picture-picker';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@seniorsistemas/angular-components/profile-picture-picker";
|
|
7
|
+
import * as i2 from "@angular/forms";
|
|
8
|
+
export class ProfilePictureFieldComponent {
|
|
9
|
+
field = input.required();
|
|
10
|
+
formControl = input.required();
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProfilePictureFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: ProfilePictureFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<s-profile-picture-picker\n [formControl]=\"formControl()\"\n [simpleTitle]=\"_field.simpleTitle\"\n [actionTitle]=\"_field.actionTitle\"\n [subtitle]=\"_field.subtitle\"\n [aspectRatio]=\"_field.aspectRatio\"\n [cropperLabelsConfig]=\"_field.cropperLabelsConfig\"\n [removeButtonLabel]=\"_field.removeButtonLabel\"\n [changeButtonLabel]=\"_field.changeButtonLabel\"\n [confirmationTexts]=\"_field.confirmationTexts\"\n [maxFileSize]=\"_field.maxFileSize\"\n [accept]=\"_field.accept\"\n [supportedExtensions]=\"_field.supportedExtensions ?? []\"\n (changedImage)=\"_field.onChangeImage ? _field.onChangeImage($event) : null\"\n (removedImage)=\"_field.onRemovedImage ? _field.onRemovedImage() : null\"\n (invalidFile)=\"_field.onInvalidFile ? _field.onInvalidFile($event) : null\"\n>\n</s-profile-picture-picker>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ProfilePicturePickerModule }, { kind: "component", type: i1.ProfilePicturePickerComponent, selector: "s-profile-picture-picker", inputs: ["simpleTitle", "actionTitle", "subtitle", "aspectRatio", "cropperLabelsConfig", "removeButtonLabel", "changeButtonLabel", "confirmationTexts", "maxFileSize", "accept", "supportedExtensions", "image"], outputs: ["changedImage", "imageChange", "removedImage", "invalidFile"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProfilePictureFieldComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ standalone: true, imports: [FieldLabelComponent, ProfilePicturePickerModule, ReactiveFormsModule], template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n<s-profile-picture-picker\n [formControl]=\"formControl()\"\n [simpleTitle]=\"_field.simpleTitle\"\n [actionTitle]=\"_field.actionTitle\"\n [subtitle]=\"_field.subtitle\"\n [aspectRatio]=\"_field.aspectRatio\"\n [cropperLabelsConfig]=\"_field.cropperLabelsConfig\"\n [removeButtonLabel]=\"_field.removeButtonLabel\"\n [changeButtonLabel]=\"_field.changeButtonLabel\"\n [confirmationTexts]=\"_field.confirmationTexts\"\n [maxFileSize]=\"_field.maxFileSize\"\n [accept]=\"_field.accept\"\n [supportedExtensions]=\"_field.supportedExtensions ?? []\"\n (changedImage)=\"_field.onChangeImage ? _field.onChangeImage($event) : null\"\n (removedImage)=\"_field.onRemovedImage ? _field.onRemovedImage() : null\"\n (invalidFile)=\"_field.onInvalidFile ? _field.onInvalidFile($event) : null\"\n>\n</s-profile-picture-picker>\n\n" }]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS1waWN0dXJlLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZm9ybS1maWVsZC9maWVsZHMvcHJvZmlsZS1waWN0dXJlL3Byb2ZpbGUtcGljdHVyZS1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL3Byb2ZpbGUtcGljdHVyZS9wcm9maWxlLXBpY3R1cmUtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFlLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDNUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMkRBQTJELENBQUM7Ozs7QUFNdkcsTUFBTSxPQUFPLDRCQUE0QjtJQUNyQyxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBd0IsQ0FBQztJQUMvQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBZSxDQUFDO3dHQUZuQyw0QkFBNEI7NEZBQTVCLDRCQUE0QixvVkNYekMsODZCQXNCQSw0Q0RiYyxtQkFBbUIsaUdBQUUsMEJBQTBCLDhaQUFFLG1CQUFtQjs7NEZBRXJFLDRCQUE0QjtrQkFMeEMsU0FBUztpQ0FFTSxJQUFJLFdBQ1AsQ0FBQyxtQkFBbUIsRUFBRSwwQkFBMEIsRUFBRSxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUHJvZmlsZVBpY3R1cmVDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9ucy9maWVsZHMvcHJvZmlsZS1waWN0dXJlJztcbmltcG9ydCB7IEJhc2VGaWVsZENvbXBvbmVudENvbmZpZyB9IGZyb20gJy4uL2Jhc2UtZmllbGQtY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkTGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2ZpZWxkLWxhYmVsL2ZpZWxkLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9maWxlUGljdHVyZVBpY2tlck1vZHVsZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvcHJvZmlsZS1waWN0dXJlLXBpY2tlcic7XG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJvZmlsZS1waWN0dXJlLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtGaWVsZExhYmVsQ29tcG9uZW50LCBQcm9maWxlUGljdHVyZVBpY2tlck1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFByb2ZpbGVQaWN0dXJlRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBCYXNlRmllbGRDb21wb25lbnRDb25maWcge1xuICAgIGZpZWxkID0gaW5wdXQucmVxdWlyZWQ8UHJvZmlsZVBpY3R1cmVDb25maWc+KCk7XG4gICAgZm9ybUNvbnRyb2wgPSBpbnB1dC5yZXF1aXJlZDxGb3JtQ29udHJvbD4oKTtcbn1cblxuIiwiQGxldCBfZmllbGQgPSBmaWVsZCgpO1xuPHMtZmllbGQtbGFiZWwgW2ZpZWxkXT1cIl9maWVsZFwiPjwvcy1maWVsZC1sYWJlbD5cblxuPHMtcHJvZmlsZS1waWN0dXJlLXBpY2tlclxuICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbCgpXCJcbiAgICBbc2ltcGxlVGl0bGVdPVwiX2ZpZWxkLnNpbXBsZVRpdGxlXCJcbiAgICBbYWN0aW9uVGl0bGVdPVwiX2ZpZWxkLmFjdGlvblRpdGxlXCJcbiAgICBbc3VidGl0bGVdPVwiX2ZpZWxkLnN1YnRpdGxlXCJcbiAgICBbYXNwZWN0UmF0aW9dPVwiX2ZpZWxkLmFzcGVjdFJhdGlvXCJcbiAgICBbY3JvcHBlckxhYmVsc0NvbmZpZ109XCJfZmllbGQuY3JvcHBlckxhYmVsc0NvbmZpZ1wiXG4gICAgW3JlbW92ZUJ1dHRvbkxhYmVsXT1cIl9maWVsZC5yZW1vdmVCdXR0b25MYWJlbFwiXG4gICAgW2NoYW5nZUJ1dHRvbkxhYmVsXT1cIl9maWVsZC5jaGFuZ2VCdXR0b25MYWJlbFwiXG4gICAgW2NvbmZpcm1hdGlvblRleHRzXT1cIl9maWVsZC5jb25maXJtYXRpb25UZXh0c1wiXG4gICAgW21heEZpbGVTaXplXT1cIl9maWVsZC5tYXhGaWxlU2l6ZVwiXG4gICAgW2FjY2VwdF09XCJfZmllbGQuYWNjZXB0XCJcbiAgICBbc3VwcG9ydGVkRXh0ZW5zaW9uc109XCJfZmllbGQuc3VwcG9ydGVkRXh0ZW5zaW9ucyA/PyBbXVwiXG4gICAgKGNoYW5nZWRJbWFnZSk9XCJfZmllbGQub25DaGFuZ2VJbWFnZSA/IF9maWVsZC5vbkNoYW5nZUltYWdlKCRldmVudCkgOiBudWxsXCJcbiAgICAocmVtb3ZlZEltYWdlKT1cIl9maWVsZC5vblJlbW92ZWRJbWFnZSA/IF9maWVsZC5vblJlbW92ZWRJbWFnZSgpIDogbnVsbFwiXG4gICAgKGludmFsaWRGaWxlKT1cIl9maWVsZC5vbkludmFsaWRGaWxlID8gX2ZpZWxkLm9uSW52YWxpZEZpbGUoJGV2ZW50KSA6IG51bGxcIlxuPlxuPC9zLXByb2ZpbGUtcGljdHVyZS1waWNrZXI+XG5cbiJdfQ==
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/* eslint-disable @angular-eslint/no-output-on-prefix */
|
|
2
|
+
import { Component, EventEmitter, input, Output, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { Subject } from 'rxjs';
|
|
5
|
+
import { takeUntil } from 'rxjs/operators';
|
|
6
|
+
import { FieldLabelComponent } from '../../../components/field-label/field-label.component';
|
|
7
|
+
import { ButtonComponent } from '@seniorsistemas/angular-components/button';
|
|
8
|
+
import { RadioButtonComponent } from '@seniorsistemas/angular-components/radio-button';
|
|
9
|
+
import { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';
|
|
10
|
+
import { NgTemplateOutlet } from '@angular/common';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@angular/forms";
|
|
13
|
+
export class RadioButtonFieldComponent {
|
|
14
|
+
field = input.required();
|
|
15
|
+
formControl = input.required();
|
|
16
|
+
onClick = new EventEmitter();
|
|
17
|
+
onFocus = new EventEmitter();
|
|
18
|
+
_ngUnsubscribe = new Subject();
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
const field = this.field();
|
|
21
|
+
this.onFocus.pipe(takeUntil(this._ngUnsubscribe)).subscribe((event) => {
|
|
22
|
+
if (field.onFocus) {
|
|
23
|
+
field.onFocus(event);
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
this.onClick.pipe(takeUntil(this._ngUnsubscribe)).subscribe((event) => {
|
|
27
|
+
if (field.onClick) {
|
|
28
|
+
field.onClick(event);
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
ngOnDestroy() {
|
|
33
|
+
this._ngUnsubscribe.next();
|
|
34
|
+
this._ngUnsubscribe.complete();
|
|
35
|
+
}
|
|
36
|
+
onClear() {
|
|
37
|
+
this.formControl().reset();
|
|
38
|
+
}
|
|
39
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RadioButtonFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
40
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RadioButtonFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus" }, ngImport: i0, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n@if (_field.verticalAlignment) {\n <div class=\"ui-g\">\n @for (option of _field.options; let i = $index; track i) {\n <div class=\"ui-g-12\">\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{ option: option, index: i }\"\n >\n </ng-container>\n </div>\n }\n @if (_field.showClear && _field.required && !_field.required() && !formControl().disabled) {\n <s-button\n [label]=\"_field.clearLabel || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n </div>\n} @else {\n <div class=\"ui-g horizontal-radio-buttons-container\">\n @for (option of _field.options; let i = $index; track i) {\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{ option: option, index: i }\"\n >\n </ng-container>\n }\n </div>\n @if (_field.showClear && _field.required && !_field.required() && !formControl().disabled) {\n <s-button\n class=\"horizontal-clear-option\"\n [label]=\"_field.clearLabel || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n}\n\n<ng-template\n #radioButton\n let-option=\"option\"\n let-i=\"index\"\n>\n @let inputId = (_field.id || _field.name) + '-' + i;\n <s-radiobutton\n class=\"radio-button-item\"\n [name]=\"_field.name\"\n [value]=\"option.value\"\n [formControl]=\"formControl()\"\n [inputId]=\"inputId\"\n [sTooltip]=\"_field.tooltip\"\n [label]=\"option.label\"\n (focusedInput)=\"onFocus.next($event)\"\n (inputFocusLost)=\"_field.onBlur ? _field.onBlur($event) : null\"\n />\n</ng-template>\n\n", styles: ["s-button.horizontal-clear-option button{width:min-content!important}.horizontal-radio-buttons-container{gap:20px 40px;.radio-button-item{margin:0}}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor"], outputs: ["clicked"] }, { kind: "component", type: RadioButtonComponent, selector: "s-radiobutton", inputs: ["buttonDisabled", "label", "name", "value", "inputId"], outputs: ["buttonDisabledChange", "valueChange", "focusedInput", "inputFocusLost"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
41
|
+
}
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RadioButtonFieldComponent, decorators: [{
|
|
43
|
+
type: Component,
|
|
44
|
+
args: [{ standalone: true, imports: [
|
|
45
|
+
FieldLabelComponent,
|
|
46
|
+
ButtonComponent,
|
|
47
|
+
RadioButtonComponent,
|
|
48
|
+
ReactiveFormsModule,
|
|
49
|
+
TooltipDirective,
|
|
50
|
+
NgTemplateOutlet,
|
|
51
|
+
], encapsulation: ViewEncapsulation.None, template: "@let _field = field();\n<s-field-label [field]=\"_field\"></s-field-label>\n\n@if (_field.verticalAlignment) {\n <div class=\"ui-g\">\n @for (option of _field.options; let i = $index; track i) {\n <div class=\"ui-g-12\">\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{ option: option, index: i }\"\n >\n </ng-container>\n </div>\n }\n @if (_field.showClear && _field.required && !_field.required() && !formControl().disabled) {\n <s-button\n [label]=\"_field.clearLabel || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n </div>\n} @else {\n <div class=\"ui-g horizontal-radio-buttons-container\">\n @for (option of _field.options; let i = $index; track i) {\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{ option: option, index: i }\"\n >\n </ng-container>\n }\n </div>\n @if (_field.showClear && _field.required && !_field.required() && !formControl().disabled) {\n <s-button\n class=\"horizontal-clear-option\"\n [label]=\"_field.clearLabel || 'Clear selection'\"\n (clicked)=\"onClear()\"\n priority=\"link\"\n >\n </s-button>\n }\n}\n\n<ng-template\n #radioButton\n let-option=\"option\"\n let-i=\"index\"\n>\n @let inputId = (_field.id || _field.name) + '-' + i;\n <s-radiobutton\n class=\"radio-button-item\"\n [name]=\"_field.name\"\n [value]=\"option.value\"\n [formControl]=\"formControl()\"\n [inputId]=\"inputId\"\n [sTooltip]=\"_field.tooltip\"\n [label]=\"option.label\"\n (focusedInput)=\"onFocus.next($event)\"\n (inputFocusLost)=\"_field.onBlur ? _field.onBlur($event) : null\"\n />\n</ng-template>\n\n", styles: ["s-button.horizontal-clear-option button{width:min-content!important}.horizontal-radio-buttons-container{gap:20px 40px;.radio-button-item{margin:0}}\n"] }]
|
|
52
|
+
}], propDecorators: { onClick: [{
|
|
53
|
+
type: Output
|
|
54
|
+
}], onFocus: [{
|
|
55
|
+
type: Output
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZm9ybS1maWVsZC9maWVsZHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24tZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBQ3hELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdHLE9BQU8sRUFBZSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSTNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUN2RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBMkJuRCxNQUFNLE9BQU8seUJBQXlCO0lBQ2xDLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUEwQixDQUFDO0lBQ2pELFdBQVcsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFlLENBQUM7SUFHckMsT0FBTyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBR2hELE9BQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUUvQyxjQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUV0QyxRQUFRO1FBQ1gsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFpQixFQUFFLEVBQUU7WUFDOUUsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2hCLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekIsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ3ZFLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNoQixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTSxPQUFPO1FBQ1YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQy9CLENBQUM7d0dBakNRLHlCQUF5Qjs0RkFBekIseUJBQXlCLHlZQ3hDdEMsd2lFQStEQSwrTUQ5Q1EsbUJBQW1CLGtHQUNuQixlQUFlLHNUQUNmLG9CQUFvQiw4TUFDcEIsbUJBQW1CLDBUQUNuQixnQkFBZ0IsNE5BQ2hCLGdCQUFnQjs7NEZBa0JYLHlCQUF5QjtrQkExQnJDLFNBQVM7aUNBQ00sSUFBSSxXQUNQO3dCQUNMLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7cUJBQ25CLGlCQWVjLGlCQUFpQixDQUFDLElBQUk7OEJBTzlCLE9BQU87c0JBRGIsTUFBTTtnQkFJQSxPQUFPO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeCAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGlucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgUmFkaW9CdXR0b25GaWVsZENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9yYWRpby1idXR0b24tZmllbGQnO1xuaW1wb3J0IHsgQmFzZUZpZWxkQ29tcG9uZW50Q29uZmlnIH0gZnJvbSAnLi4vYmFzZS1maWVsZC1jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRMYWJlbENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZmllbGQtbGFiZWwvZmllbGQtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IFJhZGlvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9yYWRpby1idXR0b24nO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBGaWVsZExhYmVsQ29tcG9uZW50LFxuICAgICAgICBCdXR0b25Db21wb25lbnQsXG4gICAgICAgIFJhZGlvQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBUb29sdGlwRGlyZWN0aXZlLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICdyYWRpby1idXR0b24tZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlczogW1xuICAgICAgICBgXG4gICAgICAgICAgICBzLWJ1dHRvbi5ob3Jpem9udGFsLWNsZWFyLW9wdGlvbiBidXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBtaW4tY29udGVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmhvcml6b250YWwtcmFkaW8tYnV0dG9ucy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGdhcDogMjBweCA0MHB4O1xuICAgICAgICAgICAgICAgIC5yYWRpby1idXR0b24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIGAsXG4gICAgXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBSYWRpb0J1dHRvbkZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEJhc2VGaWVsZENvbXBvbmVudENvbmZpZyB7XG4gICAgZmllbGQgPSBpbnB1dC5yZXF1aXJlZDxSYWRpb0J1dHRvbkZpZWxkQ29uZmlnPigpO1xuICAgIGZvcm1Db250cm9sID0gaW5wdXQucmVxdWlyZWQ8Rm9ybUNvbnRyb2w+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgb25DbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgb25Gb2N1czogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBwcml2YXRlIF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmllbGQgPSB0aGlzLmZpZWxkKCk7XG4gICAgICAgIHRoaXMub25Gb2N1cy5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChldmVudDogRm9jdXNFdmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGZpZWxkLm9uRm9jdXMpIHtcbiAgICAgICAgICAgICAgICBmaWVsZC5vbkZvY3VzKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMub25DbGljay5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAoZmllbGQub25DbGljaykge1xuICAgICAgICAgICAgICAgIGZpZWxkLm9uQ2xpY2soZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQ2xlYXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZm9ybUNvbnRyb2woKS5yZXNldCgpO1xuICAgIH1cbn1cblxuIiwiQGxldCBfZmllbGQgPSBmaWVsZCgpO1xuPHMtZmllbGQtbGFiZWwgW2ZpZWxkXT1cIl9maWVsZFwiPjwvcy1maWVsZC1sYWJlbD5cblxuQGlmIChfZmllbGQudmVydGljYWxBbGlnbm1lbnQpIHtcbiAgICA8ZGl2IGNsYXNzPVwidWktZ1wiPlxuICAgICAgICBAZm9yIChvcHRpb24gb2YgX2ZpZWxkLm9wdGlvbnM7IGxldCBpID0gJGluZGV4OyB0cmFjayBpKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidWktZy0xMlwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwicmFkaW9CdXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBvcHRpb246IG9wdGlvbiwgaW5kZXg6IGkgfVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChfZmllbGQuc2hvd0NsZWFyICYmIF9maWVsZC5yZXF1aXJlZCAmJiAhX2ZpZWxkLnJlcXVpcmVkKCkgJiYgIWZvcm1Db250cm9sKCkuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIDxzLWJ1dHRvblxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCJfZmllbGQuY2xlYXJMYWJlbCB8fCAnQ2xlYXIgc2VsZWN0aW9uJ1wiXG4gICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwib25DbGVhcigpXCJcbiAgICAgICAgICAgICAgICBwcmlvcml0eT1cImxpbmtcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9zLWJ1dHRvbj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxufSBAZWxzZSB7XG4gICAgPGRpdiBjbGFzcz1cInVpLWcgaG9yaXpvbnRhbC1yYWRpby1idXR0b25zLWNvbnRhaW5lclwiPlxuICAgICAgICBAZm9yIChvcHRpb24gb2YgX2ZpZWxkLm9wdGlvbnM7IGxldCBpID0gJGluZGV4OyB0cmFjayBpKSB7XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwicmFkaW9CdXR0b25cIlxuICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IG9wdGlvbjogb3B0aW9uLCBpbmRleDogaSB9XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG4gICAgQGlmIChfZmllbGQuc2hvd0NsZWFyICYmIF9maWVsZC5yZXF1aXJlZCAmJiAhX2ZpZWxkLnJlcXVpcmVkKCkgJiYgIWZvcm1Db250cm9sKCkuZGlzYWJsZWQpIHtcbiAgICAgICAgPHMtYnV0dG9uXG4gICAgICAgICAgICBjbGFzcz1cImhvcml6b250YWwtY2xlYXItb3B0aW9uXCJcbiAgICAgICAgICAgIFtsYWJlbF09XCJfZmllbGQuY2xlYXJMYWJlbCB8fCAnQ2xlYXIgc2VsZWN0aW9uJ1wiXG4gICAgICAgICAgICAoY2xpY2tlZCk9XCJvbkNsZWFyKClcIlxuICAgICAgICAgICAgcHJpb3JpdHk9XCJsaW5rXCJcbiAgICAgICAgPlxuICAgICAgICA8L3MtYnV0dG9uPlxuICAgIH1cbn1cblxuPG5nLXRlbXBsYXRlXG4gICAgI3JhZGlvQnV0dG9uXG4gICAgbGV0LW9wdGlvbj1cIm9wdGlvblwiXG4gICAgbGV0LWk9XCJpbmRleFwiXG4+XG4gICAgQGxldCBpbnB1dElkID0gKF9maWVsZC5pZCB8fCBfZmllbGQubmFtZSkgKyAnLScgKyBpO1xuICAgIDxzLXJhZGlvYnV0dG9uXG4gICAgICAgIGNsYXNzPVwicmFkaW8tYnV0dG9uLWl0ZW1cIlxuICAgICAgICBbbmFtZV09XCJfZmllbGQubmFtZVwiXG4gICAgICAgIFt2YWx1ZV09XCJvcHRpb24udmFsdWVcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2woKVwiXG4gICAgICAgIFtpbnB1dElkXT1cImlucHV0SWRcIlxuICAgICAgICBbc1Rvb2x0aXBdPVwiX2ZpZWxkLnRvb2x0aXBcIlxuICAgICAgICBbbGFiZWxdPVwib3B0aW9uLmxhYmVsXCJcbiAgICAgICAgKGZvY3VzZWRJbnB1dCk9XCJvbkZvY3VzLm5leHQoJGV2ZW50KVwiXG4gICAgICAgIChpbnB1dEZvY3VzTG9zdCk9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgLz5cbjwvbmctdGVtcGxhdGU+XG5cbiJdfQ==
|