@f1falcha/stimulus 1.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/accordion/accordion-config.scss +18 -0
- package/accordion/accordion-item/accordion-item.component.d.ts +11 -0
- package/accordion/accordion-item-body/accordion-item-body.component.d.ts +10 -0
- package/accordion/accordion-item-header/accordion-item-header.component.d.ts +15 -0
- package/accordion/accordion.d.ts +12 -0
- package/accordion/accordion.icon.d.ts +3 -0
- package/accordion/accordion.scss +41 -0
- package/account-card/account-card-config.scss +36 -0
- package/account-card/account-card-header/account-card-header-config.scss +9 -0
- package/account-card/account-card-header/account-card-header.component.d.ts +12 -0
- package/account-card/account-card-header/account-card-header.scss +11 -0
- package/account-card/account-card.component.d.ts +16 -0
- package/account-card/account-card.scss +19 -0
- package/alert/alert-animation.d.ts +6 -0
- package/alert/alert-config.d.ts +26 -0
- package/alert/alert-config.scss +43 -0
- package/alert/alert-icon.d.ts +3 -0
- package/alert/alert-ref.d.ts +11 -0
- package/alert/alert.d.ts +23 -0
- package/alert/alert.scss +91 -0
- package/alert/alert.service.d.ts +31 -0
- package/avatar/avatar-config.scss +12 -0
- package/avatar/avatar.d.ts +21 -0
- package/avatar/avatar.scss +2 -0
- package/badge/badge-config.scss +68 -0
- package/badge/badge.d.ts +17 -0
- package/badge/badge.scss +21 -0
- package/bank-logo.provider.d.ts +7 -0
- package/bordered-section/bordered-section-config.scss +24 -0
- package/bordered-section/bordered-section.d.ts +15 -0
- package/bordered-section/bordered-section.scss +22 -0
- package/box-shadow/box-shadow-config.scss +18 -0
- package/button/button-config.scss +342 -0
- package/button/button.d.ts +10 -0
- package/button/button.scss +62 -0
- package/button-group/button-group-config.scss +12 -0
- package/button-group/button-group-header/button-group-header-config.scss +9 -0
- package/button-group/button-group-header/button-group-header.d.ts +8 -0
- package/button-group/button-group-header/button-group-header.scss +5 -0
- package/button-group/button-group.d.ts +11 -0
- package/button-group/buttton-group.scss +19 -0
- package/button-spinner/button-spinner-config.scss +15 -0
- package/button-spinner/button-spinner.scss +30 -0
- package/card/card-config.scss +15 -0
- package/card/card.component.d.ts +8 -0
- package/card/card.scss +14 -0
- package/chart/chart-config.scss +21 -0
- package/chart/chart.component.d.ts +21 -0
- package/chart/chart.component.scss +34 -0
- package/checkbox/checkbox-config.scss +62 -0
- package/checkbox/checkbox.scss +45 -0
- package/checkbox-dropdown/checkbox-dropdown.component.d.ts +139 -0
- package/checkbox-dropdown/checkbox-dropdown.component.scss +11 -0
- package/checkbox-dropdown/checkbox-dropdown.icon.d.ts +3 -0
- package/clipboard/clipboard-config.scss +23 -0
- package/clipboard/clipboard.component.d.ts +15 -0
- package/clipboard/clipboard.component.scss +37 -0
- package/clipboard/clipboard.icon.d.ts +3 -0
- package/color/cherry.scss +19 -0
- package/color/chilli.scss +19 -0
- package/color/comet.scss +19 -0
- package/color/cotton-candy.scss +19 -0
- package/color/default.scss +154 -0
- package/color/emerald.scss +19 -0
- package/color/goblin.scss +19 -0
- package/color/jacaranda.scss +19 -0
- package/color/mars.scss +19 -0
- package/color/orchid.scss +19 -0
- package/color/spaceship.scss +19 -0
- package/color/summer.scss +19 -0
- package/color/tiger-lily.scss +19 -0
- package/color-wrapper/color-wrapper-config.scss +37 -0
- package/color-wrapper/color-wrapper.d.ts +17 -0
- package/color-wrapper/color-wrapper.scss +23 -0
- package/column-seperator/column-separator-config.scss +16 -0
- package/column-seperator/column-separator.d.ts +14 -0
- package/column-seperator/column-separator.scss +25 -0
- package/column-text/column-text.config.scss +12 -0
- package/column-text/column-text.d.ts +11 -0
- package/column-text/column-text.scss +22 -0
- package/container/container-config.scss +12 -0
- package/container/container.component.d.ts +12 -0
- package/container/container.scss +19 -0
- package/custom-datepicker/custom-datepicker-config.scss +50 -0
- package/custom-datepicker/custom-datepicker.component.d.ts +80 -0
- package/custom-datepicker/custom-datepicker.component.scss +127 -0
- package/custom-datepicker/custom-datepicker.model.d.ts +18 -0
- package/custom-datepicker/datepicker.icon.d.ts +3 -0
- package/custom-datepicker/timepicker/timepicker.component.d.ts +37 -0
- package/custom-datepicker/timepicker/timepicker.component.scss +79 -0
- package/data-list/data-list.config.scss +35 -0
- package/data-list/data-list.d.ts +13 -0
- package/data-list/data-list.scss +67 -0
- package/date-range-picker/date-range-picker.d.ts +40 -0
- package/datepicker/datepicker.config.scss +0 -0
- package/datepicker/datepicker.d.ts +45 -0
- package/datepicker/datepicker.scss +0 -0
- package/datepicker-icon/datepicker-icon-config.scss +10 -0
- package/datepicker-icon/datepicker-icon.d.ts +6 -0
- package/datepicker-icon/datepicker-icon.scss +7 -0
- package/datepicker.provider.d.ts +2 -0
- package/detail-panel/detail-panel-config.scss +16 -0
- package/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column-config.scss +11 -0
- package/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column.d.ts +6 -0
- package/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column.scss +15 -0
- package/detail-panel/detail-panel-row/detail-panel-row.d.ts +6 -0
- package/detail-panel/detail-panel-row/detail-panel-row.scss +5 -0
- package/detail-panel/detail-panel-title/detail-panel-title-config.scss +14 -0
- package/detail-panel/detail-panel-title/detail-panel-title.d.ts +7 -0
- package/detail-panel/detail-panel-title/detail-panel-title.scss +16 -0
- package/detail-panel/detail-panel.d.ts +11 -0
- package/detail-panel/detail-panel.scss +50 -0
- package/dialog/dialog-body/dialog-body.component.d.ts +6 -0
- package/dialog/dialog-config.scss +24 -0
- package/dialog/dialog-container/dialog-container-config.scss +9 -0
- package/dialog/dialog-container/dialog-container.component.d.ts +6 -0
- package/dialog/dialog-container/dialog-container.scss +6 -0
- package/dialog/dialog-footer/dialog-footer.component.d.ts +6 -0
- package/dialog/dialog-footer/dialog-footer.scss +6 -0
- package/dialog/dialog-header/dialog-header-config.scss +14 -0
- package/dialog/dialog-header/dialog-header.component.d.ts +10 -0
- package/dialog/dialog-header/dialog-header.scss +16 -0
- package/dialog/dialog-icon.d.ts +3 -0
- package/dialog/dialog.component.d.ts +12 -0
- package/dialog/dialog.scss +27 -0
- package/dialog.provider.d.ts +3 -0
- package/dialog.ref.d.ts +4 -0
- package/dialog.service.d.ts +7 -0
- package/dropdown/context-menu-config.scss +23 -0
- package/dropdown/context-menu-content/context-menu-content.d.ts +9 -0
- package/dropdown/context-menu-item.d.ts +10 -0
- package/dropdown/context-menu-list/context-menu-list.d.ts +9 -0
- package/dropdown/context-menu.d.ts +19 -0
- package/dropdown/context-menu.scss +41 -0
- package/error-page-container/error-content/error-content-config.scss +29 -0
- package/error-page-container/error-content/error-content.d.ts +24 -0
- package/error-page-container/error-content/error-content.scss +58 -0
- package/error-page-container/error-page-container.d.ts +6 -0
- package/error-page-container/error-page-container.scss +15 -0
- package/esm2022/accordion/accordion-item/accordion-item.component.mjs +23 -0
- package/esm2022/accordion/accordion-item-body/accordion-item-body.component.mjs +18 -0
- package/esm2022/accordion/accordion-item-header/accordion-item-header.component.mjs +41 -0
- package/esm2022/accordion/accordion.icon.mjs +25 -0
- package/esm2022/accordion/accordion.mjs +14 -0
- package/esm2022/account-card/account-card-header/account-card-header.component.mjs +30 -0
- package/esm2022/account-card/account-card.component.mjs +64 -0
- package/esm2022/alert/alert-animation.mjs +9 -0
- package/esm2022/alert/alert-config.mjs +13 -0
- package/esm2022/alert/alert-icon.mjs +33 -0
- package/esm2022/alert/alert-ref.mjs +23 -0
- package/esm2022/alert/alert.mjs +50 -0
- package/esm2022/alert/alert.service.mjs +112 -0
- package/esm2022/avatar/avatar.mjs +91 -0
- package/esm2022/badge/badge.mjs +77 -0
- package/esm2022/bank-logo.provider.mjs +12 -0
- package/esm2022/bordered-section/bordered-section.mjs +70 -0
- package/esm2022/button/button.mjs +26 -0
- package/esm2022/button-group/button-group-header/button-group-header.mjs +24 -0
- package/esm2022/button-group/button-group.mjs +41 -0
- package/esm2022/card/card.component.mjs +28 -0
- package/esm2022/chart/chart.component.mjs +70 -0
- package/esm2022/checkbox-dropdown/checkbox-dropdown.component.mjs +232 -0
- package/esm2022/checkbox-dropdown/checkbox-dropdown.icon.mjs +14 -0
- package/esm2022/clipboard/clipboard.component.mjs +36 -0
- package/esm2022/clipboard/clipboard.icon.mjs +6 -0
- package/esm2022/color-wrapper/color-wrapper.mjs +82 -0
- package/esm2022/column-seperator/column-separator.mjs +62 -0
- package/esm2022/column-text/column-text.mjs +38 -0
- package/esm2022/container/container.component.mjs +46 -0
- package/esm2022/custom-datepicker/custom-datepicker.component.mjs +364 -0
- package/esm2022/custom-datepicker/custom-datepicker.model.mjs +12 -0
- package/esm2022/custom-datepicker/datepicker.icon.mjs +7 -0
- package/esm2022/custom-datepicker/timepicker/timepicker.component.mjs +195 -0
- package/esm2022/data-list/data-list.mjs +46 -0
- package/esm2022/date-range-picker/date-range-picker.mjs +207 -0
- package/esm2022/datepicker/datepicker.mjs +153 -0
- package/esm2022/datepicker-icon/datepicker-icon.mjs +18 -0
- package/esm2022/datepicker.provider.mjs +6 -0
- package/esm2022/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column.mjs +15 -0
- package/esm2022/detail-panel/detail-panel-row/detail-panel-row.mjs +15 -0
- package/esm2022/detail-panel/detail-panel-title/detail-panel-title.mjs +19 -0
- package/esm2022/detail-panel/detail-panel.mjs +36 -0
- package/esm2022/dialog/dialog-body/dialog-body.component.mjs +16 -0
- package/esm2022/dialog/dialog-container/dialog-container.component.mjs +16 -0
- package/esm2022/dialog/dialog-footer/dialog-footer.component.mjs +16 -0
- package/esm2022/dialog/dialog-header/dialog-header.component.mjs +25 -0
- package/esm2022/dialog/dialog-icon.mjs +8 -0
- package/esm2022/dialog/dialog.component.mjs +36 -0
- package/esm2022/dialog.provider.mjs +5 -0
- package/esm2022/dialog.ref.mjs +4 -0
- package/esm2022/dialog.service.mjs +15 -0
- package/esm2022/dropdown/context-menu-content/context-menu-content.mjs +18 -0
- package/esm2022/dropdown/context-menu-item.mjs +28 -0
- package/esm2022/dropdown/context-menu-list/context-menu-list.mjs +18 -0
- package/esm2022/dropdown/context-menu.mjs +61 -0
- package/esm2022/error-page-container/error-content/error-content.mjs +49 -0
- package/esm2022/error-page-container/error-page-container.mjs +18 -0
- package/esm2022/extract-inital/extract-initial.mjs +21 -0
- package/esm2022/f1softinternational-stimulus.mjs +5 -0
- package/esm2022/file-uploader/file-uploader-icon.mjs +13 -0
- package/esm2022/file-uploader/file-uploader.mjs +274 -0
- package/esm2022/file-uploader/file-uploader.ref.mjs +3 -0
- package/esm2022/file-uploader/file-uploader.service.mjs +26 -0
- package/esm2022/filter/filter.mjs +173 -0
- package/esm2022/form/form-control/form-control-action.mjs +18 -0
- package/esm2022/form/form-control/form-control-icon.mjs +18 -0
- package/esm2022/form/form-control/form-field.mjs +86 -0
- package/esm2022/form/form-control-wrapper/form-control-wrapper.component.mjs +22 -0
- package/esm2022/form/form-error-messages.mjs +43 -0
- package/esm2022/form/form-message/form-message.mjs +30 -0
- package/esm2022/form/select-input-field/select-input-field.mjs +14 -0
- package/esm2022/form/validate-and-submit.mjs +54 -0
- package/esm2022/full-container/full-container.component.mjs +30 -0
- package/esm2022/grid/grid-item.component.mjs +24 -0
- package/esm2022/grid/grid.component.mjs +56 -0
- package/esm2022/grid-row/grid-row.mjs +18 -0
- package/esm2022/icon/icons.mjs +619 -0
- package/esm2022/image-card/illustration.pipe.mjs +57 -0
- package/esm2022/image-card/image-card.component.mjs +22 -0
- package/esm2022/image-panel/image-panel.component.mjs +88 -0
- package/esm2022/info-column/info-column.mjs +18 -0
- package/esm2022/info-slider/info-slider.component.mjs +50 -0
- package/esm2022/inline-alert/inline-alert.mjs +51 -0
- package/esm2022/inline-group/inline-group.component.mjs +32 -0
- package/esm2022/input/input.mjs +25 -0
- package/esm2022/label/label.mjs +18 -0
- package/esm2022/layout/layout.component.mjs +23 -0
- package/esm2022/link/link.mjs +79 -0
- package/esm2022/media-preview/media-preview-icon.mjs +41 -0
- package/esm2022/media-preview/media-preview-modal/media-preview-modal.mjs +128 -0
- package/esm2022/media-preview/media-preview.mjs +131 -0
- package/esm2022/media-preview/media_preview.service.mjs +31 -0
- package/esm2022/menu/menu-icon.mjs +29 -0
- package/esm2022/menu/menu.component.mjs +151 -0
- package/esm2022/nebular-icon.mjs +179 -0
- package/esm2022/otp-input/otp-input.component.mjs +106 -0
- package/esm2022/otp-input/otp-input.icon.mjs +13 -0
- package/esm2022/page-container/page-container-info/page-container-info.component.mjs +28 -0
- package/esm2022/page-container/page-container.component.mjs +63 -0
- package/esm2022/page-header/page-header.component.mjs +47 -0
- package/esm2022/page-header/page-header.icons.mjs +8 -0
- package/esm2022/page-header/page-sub-heading/page-sub-heading.component.mjs +12 -0
- package/esm2022/page-loader/page-loader.component.mjs +47 -0
- package/esm2022/pagination/pagination.icon.mjs +11 -0
- package/esm2022/pagination/pagination.mjs +170 -0
- package/esm2022/popover-content/popover-content-item/popover-content-item.component.mjs +15 -0
- package/esm2022/popover-content/popover-content.component.mjs +23 -0
- package/esm2022/preview-box/preview-box.component.mjs +73 -0
- package/esm2022/progress-bar/progress-bar.component.mjs +31 -0
- package/esm2022/progress-chart/progress-chart.component.mjs +87 -0
- package/esm2022/public-api.mjs +141 -0
- package/esm2022/radio-card-group/radio-card/radio-card.component.mjs +86 -0
- package/esm2022/radio-card-group/radio-card-group.component.mjs +61 -0
- package/esm2022/regex-checker/regex-checker-icon.mjs +18 -0
- package/esm2022/regex-checker/regex-checker.mjs +77 -0
- package/esm2022/regex-checker/regex-validity-icon.pipe.mjs +25 -0
- package/esm2022/ribbon/ribbon-icon.mjs +8 -0
- package/esm2022/ribbon/ribbon.mjs +37 -0
- package/esm2022/round-checkbox/round-checkbox.component.mjs +43 -0
- package/esm2022/row/column/column.component.mjs +19 -0
- package/esm2022/row/row.component.mjs +32 -0
- package/esm2022/scrollable-content/scrollable-content.component.mjs +22 -0
- package/esm2022/section-header/section-header.component.mjs +29 -0
- package/esm2022/section-row/section-row.mjs +35 -0
- package/esm2022/section-separator/section-separator.mjs +69 -0
- package/esm2022/section-shell/section-shell.component.mjs +45 -0
- package/esm2022/select/select.component.mjs +137 -0
- package/esm2022/select-card/select-card-icon.mjs +24 -0
- package/esm2022/select-card/select-card.component.mjs +117 -0
- package/esm2022/select-country/select-country.component.mjs +86 -0
- package/esm2022/shell/checker-sidebar/checker-sidebar.component.mjs +19 -0
- package/esm2022/shell/maker-sidebar/maker-sidebar.component.mjs +19 -0
- package/esm2022/shell/nebular-icons.mjs +180 -0
- package/esm2022/shell/shell-icons.mjs +474 -0
- package/esm2022/shell/shell-sidebar/shell-sidebar.component.mjs +38 -0
- package/esm2022/shell/shell.component.mjs +77 -0
- package/esm2022/side-drawer/side-drawer.mjs +15 -0
- package/esm2022/side-drawer/side-drawer.service.mjs +71 -0
- package/esm2022/size/component-size.mjs +2 -0
- package/esm2022/spinner/spinner.mjs +32 -0
- package/esm2022/stepper/step/step.mjs +20 -0
- package/esm2022/stepper/step/step.pipe.mjs +21 -0
- package/esm2022/stepper/step-header/step-header.mjs +29 -0
- package/esm2022/stepper/stepper-button/stepper-next.mjs +21 -0
- package/esm2022/stepper/stepper-button/stepper-previous.mjs +21 -0
- package/esm2022/stepper/stepper.mjs +56 -0
- package/esm2022/stimulus.module.mjs +891 -0
- package/esm2022/table/table-column/scl-table-column.mjs +54 -0
- package/esm2022/table/table-icon.mjs +13 -0
- package/esm2022/table/table-text/scl-table-text.mjs +51 -0
- package/esm2022/table/table.config.mjs +15 -0
- package/esm2022/table/table.mjs +186 -0
- package/esm2022/table-action-control/table-action-control.component.mjs +20 -0
- package/esm2022/tabset/tab/tab.component.mjs +29 -0
- package/esm2022/tabset/tab-directive/tabset.directive.mjs +22 -0
- package/esm2022/tabset/tabset.component.mjs +40 -0
- package/esm2022/taglist/tag/tag.component.mjs +51 -0
- package/esm2022/taglist/tag/tag.directive.mjs +30 -0
- package/esm2022/taglist/taglist.component.mjs +39 -0
- package/esm2022/text-decoration/text-decoration.component.mjs +26 -0
- package/esm2022/text-editor/text-editor.mjs +263 -0
- package/esm2022/theme.provider.mjs +9 -0
- package/esm2022/timeline/timeline.component.mjs +66 -0
- package/esm2022/timepicker/timepicker.component.mjs +377 -0
- package/esm2022/timepicker/timepicker.icon.mjs +7 -0
- package/esm2022/timepicker/timepicker.model.mjs +6 -0
- package/esm2022/toggle/toggle-description/toggle-description.mjs +18 -0
- package/esm2022/toggle/toggle.mjs +75 -0
- package/esm2022/toggle-password/toggle-password.component.mjs +54 -0
- package/esm2022/toggle-password/toggle-password.directive.mjs +26 -0
- package/esm2022/toggle-password/toggle-password.icon.mjs +13 -0
- package/esm2022/treeview/treeview-header/treeview-header.mjs +26 -0
- package/esm2022/treeview/treeview.icon.mjs +53 -0
- package/esm2022/treeview/treeview.mjs +319 -0
- package/esm2022/truncate/truncate.component.mjs +53 -0
- package/esm2022/typography/typography.mjs +168 -0
- package/extract-inital/extract-initial.d.ts +8 -0
- package/f1softinternational-stimulus-1.0.0.tgz +0 -0
- package/fesm2022/f1softinternational-stimulus.mjs +10275 -0
- package/file-uploader/file-upload-config.scss +48 -0
- package/file-uploader/file-upload.scss +77 -0
- package/file-uploader/file-uploader-icon.d.ts +3 -0
- package/file-uploader/file-uploader.d.ts +84 -0
- package/file-uploader/file-uploader.ref.d.ts +6 -0
- package/file-uploader/file-uploader.service.d.ts +11 -0
- package/filter/filter.d.ts +48 -0
- package/flag/_flags.scss +9 -0
- package/form/form-config.scss +14 -0
- package/form/form-control/form-control-action.d.ts +6 -0
- package/form/form-control/form-control-config.scss +9 -0
- package/form/form-control/form-control-icon.d.ts +6 -0
- package/form/form-control/form-control.scss +17 -0
- package/form/form-control/form-field.d.ts +26 -0
- package/form/form-control-wrapper/form-control-wrapper-config.scss +11 -0
- package/form/form-control-wrapper/form-control-wrapper.component.d.ts +8 -0
- package/form/form-control-wrapper/form-control-wrapper.scss +17 -0
- package/form/form-error-messages.d.ts +8 -0
- package/form/form-message/form-message-config.scss +7 -0
- package/form/form-message/form-message.d.ts +15 -0
- package/form/form-message/form-message.scss +6 -0
- package/form/form.scss +22 -0
- package/form/select-input-field/select-input-field-config.scss +13 -0
- package/form/select-input-field/select-input-field.d.ts +6 -0
- package/form/select-input-field/select-input-field.scss +43 -0
- package/form/validate-and-submit.d.ts +14 -0
- package/full-container/full-container-config.scss +16 -0
- package/full-container/full-container.component.d.ts +11 -0
- package/full-container/full-container.component.scss +54 -0
- package/grid/grid-config.scss +14 -0
- package/grid/grid-item.component.d.ts +8 -0
- package/grid/grid.component.d.ts +10 -0
- package/grid/grid.component.scss +26 -0
- package/grid-row/grid-row.config.scss +9 -0
- package/grid-row/grid-row.d.ts +6 -0
- package/grid-row/grid-row.scss +7 -0
- package/icon/icon.config.scss +9 -0
- package/icon/icon.scss +9 -0
- package/icon/icons.d.ts +3 -0
- package/image-card/illustration.pipe.d.ts +8 -0
- package/image-card/image-card-config.scss +29 -0
- package/image-card/image-card.component.d.ts +8 -0
- package/image-card/image-card.scss +37 -0
- package/image-panel/image-panel-config.scss +30 -0
- package/image-panel/image-panel.component.d.ts +26 -0
- package/image-panel/image-panel.component.scss +80 -0
- package/index.d.ts +6 -0
- package/info-column/info-column-config.scss +14 -0
- package/info-column/info-column.d.ts +7 -0
- package/info-column/info-column.scss +17 -0
- package/info-slider/info-slider-config.scss +10 -0
- package/info-slider/info-slider.component.d.ts +16 -0
- package/info-slider/info-slider.component.scss +21 -0
- package/inline-alert/inline-alert-config.scss +12 -0
- package/inline-alert/inline-alert.d.ts +20 -0
- package/inline-alert/inline-alert.scss +16 -0
- package/inline-group/inline-group.component.d.ts +10 -0
- package/inline-group/inline-group.component.scss +15 -0
- package/input/input-config.scss +57 -0
- package/input/input.d.ts +10 -0
- package/input/input.scss +68 -0
- package/label/label-config.scss +13 -0
- package/label/label.d.ts +6 -0
- package/label/label.scss +10 -0
- package/layout/layout.component.d.ts +9 -0
- package/link/link-config.scss +89 -0
- package/link/link.d.ts +19 -0
- package/link/link.scss +157 -0
- package/media-preview/media-preview-config.scss +15 -0
- package/media-preview/media-preview-icon.d.ts +3 -0
- package/media-preview/media-preview-modal/media-preview-modal.d.ts +31 -0
- package/media-preview/media-preview-modal/media-preview-modal.scss +148 -0
- package/media-preview/media-preview-modal/media-previw-modal-config.scss +44 -0
- package/media-preview/media-preview.d.ts +48 -0
- package/media-preview/media-preview.scss +59 -0
- package/media-preview/media_preview.service.d.ts +16 -0
- package/menu/menu-config.scss +33 -0
- package/menu/menu-icon.d.ts +3 -0
- package/menu/menu.component.d.ts +47 -0
- package/menu/menu.component.scss +80 -0
- package/nebular-icon.d.ts +3 -0
- package/otp-input/otp-input-config.scss +22 -0
- package/otp-input/otp-input.component.d.ts +33 -0
- package/otp-input/otp-input.component.scss +52 -0
- package/otp-input/otp-input.icon.d.ts +3 -0
- package/package.json +57 -0
- package/page-container/page-container-config.scss +9 -0
- package/page-container/page-container-info/page-container-info-config.scss +9 -0
- package/page-container/page-container-info/page-container-info.component.d.ts +10 -0
- package/page-container/page-container-info/page-container-info.scss +6 -0
- package/page-container/page-container.component.d.ts +14 -0
- package/page-container/page-container.component.scss +11 -0
- package/page-header/page-header-config.scss +28 -0
- package/page-header/page-header.component.d.ts +18 -0
- package/page-header/page-header.component.scss +37 -0
- package/page-header/page-header.icons.d.ts +3 -0
- package/page-header/page-sub-heading/page-sub-heading.component.d.ts +6 -0
- package/page-loader/page-loader-config.scss +23 -0
- package/page-loader/page-loader.component.d.ts +13 -0
- package/page-loader/page-loader.component.scss +44 -0
- package/pagination/pagination-config.scss +24 -0
- package/pagination/pagination.d.ts +47 -0
- package/pagination/pagination.icon.d.ts +3 -0
- package/pagination/pagination.scss +67 -0
- package/popover-content/popover-content-item/popover-content-item-config.scss +22 -0
- package/popover-content/popover-content-item/popover-content-item.component.d.ts +6 -0
- package/popover-content/popover-content-item/popover-content-item.scss +36 -0
- package/popover-content/popover-content.component.d.ts +14 -0
- package/preview-box/preview-box-config.scss +52 -0
- package/preview-box/preview-box.component.d.ts +31 -0
- package/preview-box/preview-box.component.scss +101 -0
- package/progress-bar/progress-bar-config.scss +14 -0
- package/progress-bar/progress-bar.component.d.ts +10 -0
- package/progress-bar/progress-bar.component.scss +13 -0
- package/progress-chart/progress-chart-config.scss +15 -0
- package/progress-chart/progress-chart.component.d.ts +21 -0
- package/progress-chart/progress-chart.component.scss +41 -0
- package/public-api.d.ts +135 -0
- package/radio-button/radio-button-config.scss +47 -0
- package/radio-button/radio-button.scss +89 -0
- package/radio-card-group/radio-card/radio-card-config.scss +31 -0
- package/radio-card-group/radio-card/radio-card.component.d.ts +30 -0
- package/radio-card-group/radio-card/radio-card.component.scss +88 -0
- package/radio-card-group/radio-card-group-config.scss +9 -0
- package/radio-card-group/radio-card-group.component.d.ts +20 -0
- package/radio-card-group/radio-card-group.scss +7 -0
- package/regex-checker/regex-checker-config.scss +24 -0
- package/regex-checker/regex-checker-icon.d.ts +3 -0
- package/regex-checker/regex-checker.d.ts +29 -0
- package/regex-checker/regex-checker.scss +38 -0
- package/regex-checker/regex-validity-icon.pipe.d.ts +8 -0
- package/ribbon/ribbon-config.scss +21 -0
- package/ribbon/ribbon-icon.d.ts +3 -0
- package/ribbon/ribbon.d.ts +14 -0
- package/ribbon/ribbon.scss +29 -0
- package/round-checkbox/round-checkbox-config.scss +15 -0
- package/round-checkbox/round-checkbox.component.d.ts +16 -0
- package/round-checkbox/round-checkbox.component.scss +23 -0
- package/row/column/column.component.d.ts +9 -0
- package/row/row-config.scss +10 -0
- package/row/row.component.d.ts +9 -0
- package/row/row.scss +22 -0
- package/scrollable-content/scrollable-content-config.scss +11 -0
- package/scrollable-content/scrollable-content.component.d.ts +8 -0
- package/scrollable-content/scrollable-content.component.scss +28 -0
- package/section-header/section-header-config.scss +18 -0
- package/section-header/section-header.component.d.ts +9 -0
- package/section-header/section-header.component.scss +32 -0
- package/section-row/section-row-config.scss +9 -0
- package/section-row/section-row.d.ts +9 -0
- package/section-row/section-row.scss +23 -0
- package/section-separator/section-separator-config.scss +19 -0
- package/section-separator/section-separator.d.ts +15 -0
- package/section-separator/section-separator.scss +28 -0
- package/section-shell/section-shell-config.scss +23 -0
- package/section-shell/section-shell.component.d.ts +12 -0
- package/section-shell/section-shell.component.scss +30 -0
- package/select/select-config.scss +78 -0
- package/select/select.component.d.ts +44 -0
- package/select/select.scss +174 -0
- package/select-card/select-card-config.scss +32 -0
- package/select-card/select-card-icon.d.ts +3 -0
- package/select-card/select-card.component.d.ts +38 -0
- package/select-card/select-card.component.scss +66 -0
- package/select-country/select-country-config.scss +10 -0
- package/select-country/select-country.component.d.ts +33 -0
- package/select-country/select-country.component.scss +34 -0
- package/shell/checker-sidebar/checker-sidebar-config.scss +21 -0
- package/shell/checker-sidebar/checker-sidebar.component.d.ts +8 -0
- package/shell/checker-sidebar/checker-sidebar.component.scss +34 -0
- package/shell/maker-sidebar/maker-sidebar-config.scss +21 -0
- package/shell/maker-sidebar/maker-sidebar.component.d.ts +8 -0
- package/shell/maker-sidebar/maker-sidebar.component.scss +34 -0
- package/shell/nebular-icons.d.ts +3 -0
- package/shell/shell-config.component.scss +25 -0
- package/shell/shell-icons.d.ts +3 -0
- package/shell/shell-sidebar/shell-sidebar-config.scss +43 -0
- package/shell/shell-sidebar/shell-sidebar.component.d.ts +14 -0
- package/shell/shell-sidebar/shell-sidebar.component.scss +106 -0
- package/shell/shell-sidebar-menu/shell-sidebar-menu-config.scss +56 -0
- package/shell/shell-sidebar-menu/shell-sidebar-menu.scss +76 -0
- package/shell/shell.component.d.ts +21 -0
- package/shell/shell.component.scss +55 -0
- package/side-drawer/side-drawer-config.scss +20 -0
- package/side-drawer/side-drawer.d.ts +8 -0
- package/side-drawer/side-drawer.scss +52 -0
- package/side-drawer/side-drawer.service.d.ts +20 -0
- package/size/component-size.d.ts +2 -0
- package/spinner/spinner.d.ts +11 -0
- package/stepper/step/step.d.ts +8 -0
- package/stepper/step/step.pipe.d.ts +8 -0
- package/stepper/step-header/step-header.d.ts +12 -0
- package/stepper/stepper-button/stepper-next.d.ts +7 -0
- package/stepper/stepper-button/stepper-previous.d.ts +7 -0
- package/stepper/stepper.config.scss +37 -0
- package/stepper/stepper.d.ts +19 -0
- package/stepper/stepper.scss +149 -0
- package/stimulus-config.scss +98 -0
- package/stimulus.module.d.ts +136 -0
- package/stimulus.scss +107 -0
- package/table/table-column/scl-table-column.d.ts +26 -0
- package/table/table-config.scss +63 -0
- package/table/table-icon.d.ts +3 -0
- package/table/table-text/scl-table-text.d.ts +13 -0
- package/table/table.config.d.ts +19 -0
- package/table/table.d.ts +58 -0
- package/table/table.scss +232 -0
- package/table-action-control/table-action-control-config.scss +12 -0
- package/table-action-control/table-action-control.component.d.ts +8 -0
- package/table-action-control/table-action-control.component.scss +14 -0
- package/tabset/route-tab/route-tab-config.scss +30 -0
- package/tabset/route-tab/route-tab.scss +44 -0
- package/tabset/tab/tab.component.d.ts +9 -0
- package/tabset/tab-directive/tabset-config.scss +49 -0
- package/tabset/tab-directive/tabset.directive.d.ts +7 -0
- package/tabset/tab-directive/tabset.scss +154 -0
- package/tabset/tabset.component.d.ts +14 -0
- package/tabset/tabset.component.scss +79 -0
- package/taglist/tag/tag-config.scss +30 -0
- package/taglist/tag/tag.component.d.ts +17 -0
- package/taglist/tag/tag.directive.d.ts +16 -0
- package/taglist/tag/tag.scss +43 -0
- package/taglist/taglist.component.d.ts +12 -0
- package/text-decoration/text-decoration.component.d.ts +9 -0
- package/text-decoration/text-decoration.scss +7 -0
- package/text-editor/text-editor.config.scss +23 -0
- package/text-editor/text-editor.d.ts +60 -0
- package/text-editor/text-editor.scss +74 -0
- package/theme.provider.d.ts +2 -0
- package/timeline/timeline-config.scss +49 -0
- package/timeline/timeline.component.d.ts +26 -0
- package/timeline/timeline.component.scss +126 -0
- package/timepicker/timepicker-config.scss +41 -0
- package/timepicker/timepicker.component.d.ts +74 -0
- package/timepicker/timepicker.component.scss +111 -0
- package/timepicker/timepicker.icon.d.ts +3 -0
- package/timepicker/timepicker.model.d.ts +13 -0
- package/toggle/toggle-config.scss +51 -0
- package/toggle/toggle-description/toggle-description.d.ts +6 -0
- package/toggle/toggle.d.ts +19 -0
- package/toggle/toggle.scss +31 -0
- package/toggle-password/toggle-password-config.scss +12 -0
- package/toggle-password/toggle-password.component.d.ts +21 -0
- package/toggle-password/toggle-password.directive.d.ts +13 -0
- package/toggle-password/toggle-password.icon.d.ts +3 -0
- package/toggle-password/toggle-password.scss +16 -0
- package/treeview/treeview-config.scss +86 -0
- package/treeview/treeview-header/treeview-header.d.ts +12 -0
- package/treeview/treeview.d.ts +66 -0
- package/treeview/treeview.icon.d.ts +3 -0
- package/treeview/treeview.scss +278 -0
- package/truncate/truncate.component.d.ts +16 -0
- package/truncate/truncate.scss +18 -0
- package/typography/font.scss +28 -0
- package/typography/typography-config.scss +73 -0
- package/typography/typography.d.ts +37 -0
- package/typography/typography.scss +47 -0
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { FormControl, ReactiveFormsModule, Validators } from '@angular/forms';
|
|
4
|
+
import { NbButtonModule, NbDatepickerModule, NbIconModule, NbInputModule } from '@nebular/theme';
|
|
5
|
+
import { NgSelectModule } from '@ng-select/ng-select';
|
|
6
|
+
import { SclButtonGroup } from '../button-group/button-group';
|
|
7
|
+
import { SclDateTimepickerComponent } from '../custom-datepicker/custom-datepicker.component';
|
|
8
|
+
import { SclFormField } from '../form/form-control/form-field';
|
|
9
|
+
import { SclFormMessage } from '../form/form-message/form-message';
|
|
10
|
+
import { SclSelectInputField } from '../form/select-input-field/select-input-field';
|
|
11
|
+
import { SclValidateAndSubmit } from '../form/validate-and-submit';
|
|
12
|
+
import { SclLabel } from '../label/label';
|
|
13
|
+
import { SclColumn } from '../row/column/column.component';
|
|
14
|
+
import { SclRow } from '../row/row.component';
|
|
15
|
+
import * as i0 from "@angular/core";
|
|
16
|
+
import * as i1 from "@angular/forms";
|
|
17
|
+
import * as i2 from "../alert/alert.service";
|
|
18
|
+
import * as i3 from "@nebular/theme";
|
|
19
|
+
import * as i4 from "@angular/common";
|
|
20
|
+
import * as i5 from "@ng-select/ng-select";
|
|
21
|
+
export const SclIcons = {
|
|
22
|
+
calender: `
|
|
23
|
+
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
24
|
+
<path d="M17.75 3A3.25 3.25 0 0 1 21 6.25v11.5A3.25 3.25 0 0 1 17.75 21H6.25A3.25 3.25 0 0 1 3 17.75V6.25A3.25 3.25 0 0 1 6.25 3h11.5zm1.75 5.5h-15v9.25c0 .966.784 1.75 1.75 1.75h11.5a1.75 1.75 0 0 0 1.75-1.75V8.5zm-11.75 6a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm4.25 0a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm-4.25-4a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm4.25 0a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm4.25 0a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm1.5-6H6.25A1.75 1.75 0 0 0 4.5 6.25V7h15v-.75a1.75 1.75 0 0 0-1.75-1.75z" fill="currentColor"/>
|
|
25
|
+
</svg>
|
|
26
|
+
`,
|
|
27
|
+
};
|
|
28
|
+
class SclFilter {
|
|
29
|
+
get formFields() {
|
|
30
|
+
return this._formFields;
|
|
31
|
+
}
|
|
32
|
+
set formFields(value) {
|
|
33
|
+
if (value) {
|
|
34
|
+
this._formFields = value;
|
|
35
|
+
this.initializeFormControls();
|
|
36
|
+
this.filterForm = this.formBuilder.group(this.formControls);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
set emitFormDataOnReset(emitValue) {
|
|
40
|
+
this.emitValue = emitValue;
|
|
41
|
+
}
|
|
42
|
+
constructor(formBuilder, alertService, iconLibraries) {
|
|
43
|
+
this.formBuilder = formBuilder;
|
|
44
|
+
this.alertService = alertService;
|
|
45
|
+
this.iconLibraries = iconLibraries;
|
|
46
|
+
this._formFields = [];
|
|
47
|
+
this.onFilter = new EventEmitter();
|
|
48
|
+
this.isLoading = false;
|
|
49
|
+
this.emitValue = true;
|
|
50
|
+
this.formControls = {};
|
|
51
|
+
this.iconLibraries.registerSvgPack('scl-icon', SclIcons);
|
|
52
|
+
this.filterForm = this.formBuilder.group(this.formControls);
|
|
53
|
+
}
|
|
54
|
+
initializeFormControls() {
|
|
55
|
+
this.formControls = {};
|
|
56
|
+
this._formFields.forEach(field => {
|
|
57
|
+
// Handle dropdown-text type
|
|
58
|
+
if (field.type === 'dropdown-text' && field.dropdownFormControlName) {
|
|
59
|
+
this.formControls[field.dropdownFormControlName] = new FormControl('', Validators.required);
|
|
60
|
+
if (field.dropdownFormControlValue !== undefined) {
|
|
61
|
+
this.formControls[field.dropdownFormControlName].patchValue(field.dropdownFormControlValue);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// Handle main form control
|
|
65
|
+
if (field.formControlName) {
|
|
66
|
+
this.formControls[field.formControlName] = new FormControl(null);
|
|
67
|
+
if (field.isRequired) {
|
|
68
|
+
this.formControls[field.formControlName].addValidators([Validators.required]);
|
|
69
|
+
this.formControls[field.formControlName].updateValueAndValidity();
|
|
70
|
+
}
|
|
71
|
+
if (field.value !== undefined) {
|
|
72
|
+
this.formControls[field.formControlName].patchValue(field.value);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
transformValue(value) {
|
|
78
|
+
if (typeof value !== 'string') {
|
|
79
|
+
return value;
|
|
80
|
+
}
|
|
81
|
+
return value.trim().replace(/\s+/g, ' ');
|
|
82
|
+
}
|
|
83
|
+
search(isValid) {
|
|
84
|
+
if (!isValid) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
const formValue = Object.keys(this.filterForm.value).reduce((acc, key) => {
|
|
88
|
+
const value = this.filterForm.value[key];
|
|
89
|
+
acc[key] = this.transformValue(value);
|
|
90
|
+
return acc;
|
|
91
|
+
}, {});
|
|
92
|
+
// if (!this.hasFormValues()) return;
|
|
93
|
+
const { fromDate, toDate } = formValue;
|
|
94
|
+
if (fromDate && toDate && toDate < fromDate) {
|
|
95
|
+
this.alertService.danger({
|
|
96
|
+
heading: 'Records cannot be filtered',
|
|
97
|
+
description: 'To Date cannot be less than From Date',
|
|
98
|
+
});
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
this.onFilter.emit(formValue);
|
|
102
|
+
}
|
|
103
|
+
reset() {
|
|
104
|
+
// if (!this.hasFormValues()) return;
|
|
105
|
+
this.filterForm.reset();
|
|
106
|
+
if (this.emitValue) {
|
|
107
|
+
this.onFilter.emit(this.filterForm.value);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
ngOnChanges(changes) {
|
|
111
|
+
if (changes['formFields']?.currentValue) {
|
|
112
|
+
this.setFormFields(changes['formFields'].currentValue);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
setFormFields(currentFormValue) {
|
|
116
|
+
if (this.filterForm.controls) {
|
|
117
|
+
currentFormValue.forEach(currentFormValue => {
|
|
118
|
+
if (currentFormValue.value && this.filterForm.contains(currentFormValue.formControlName)) {
|
|
119
|
+
this.filterForm.controls[currentFormValue.formControlName].patchValue(currentFormValue.value);
|
|
120
|
+
}
|
|
121
|
+
if (currentFormValue.dropdownFormControlName && currentFormValue.dropdownFormControlName !== (null && undefined)) {
|
|
122
|
+
if (currentFormValue.dropdownFormControlValue && currentFormValue.dropdownFormControlValue !== (null && undefined)) {
|
|
123
|
+
if (this.filterForm.contains(currentFormValue.dropdownFormControlName)) {
|
|
124
|
+
this.filterForm.controls[currentFormValue.dropdownFormControlName].patchValue(currentFormValue.dropdownFormControlValue);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
hasFormValues() {
|
|
132
|
+
return Object.values(this.filterForm.value).some(value => value !== null && value !== undefined && value !== '');
|
|
133
|
+
}
|
|
134
|
+
onSelect(field, event) {
|
|
135
|
+
if (field.onChange) {
|
|
136
|
+
field.onChange(event);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFilter, deps: [{ token: i1.FormBuilder }, { token: i2.SclAlertService }, { token: i3.NbIconLibraries }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
140
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclFilter, isStandalone: true, selector: "scl-filter", inputs: { formFields: "formFields", isLoading: "isLoading", emitFormDataOnReset: "emitFormDataOnReset" }, outputs: { onFilter: "onFilter" }, providers: [], usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"filterForm\" (validateAndSubmit)=\"search($event)\">\n <scl-row [columns]=\"4\">\n <scl-column *ngFor=\"let field of formFields\">\n <ng-container *ngIf=\"field.type === 'text'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <input\n [type]=\"field.type\"\n fullWidth\n [formControlName]=\"field.formControlName\"\n [placeholder]=\"field.placeholder\"\n [id]=\"field.formControlName\"\n nbInput />\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'select' || field.type === 'dropdown'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <ng-select\n [items]=\"field.options ?? null\"\n bindValue=\"value\"\n bindLabel=\"label\"\n [formControlName]=\"field.formControlName\"\n [id]=\"field.formControlName\"\n class=\"select\"\n appendTo=\"body\"\n name=\"field.formControlName\"\n [clearable]=\"true\"\n [placeholder]=\"field.placeholder\"\n (change)=\"onSelect(field, $event)\">\n </ng-select>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'checkbox'\">\n <scl-form-field errorMessage>\n <div *ngFor=\"let option of field.options\" class=\"checkbox-option\">\n <label>\n <input type=\"checkbox\" [formControlName]=\"field.formControlName\" [value]=\"option.value\" />\n {{ option.label }}\n </label>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'radio'\">\n <scl-form-field errorMessage>\n <div *ngFor=\"let option of field.options\" class=\"radio-option\">\n <label>\n <input type=\"radio\" [formControlName]=\"field.formControlName\" [value]=\"option.value\" />\n {{ option.label }}\n </label>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'dropdown-text'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <div class=\"dropdown-text-field\">\n <scl-select-input-field>\n <ng-select\n fullWidth\n [items]=\"field.options ?? null\"\n bindValue=\"value\"\n bindLabel=\"label\"\n [formControlName]=\"field.dropdownFormControlName ?? null\"\n [placeholder]=\"field.placeholder\"\n [id]=\"field.dropdownFormControlName\"\n class=\"select\"\n appendTo=\"body\"></ng-select>\n <input [formControlName]=\"field.formControlName\" nbInput />\n </scl-select-input-field>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'date'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <scl-datetime-picker\n [formControlName]=\"field.formControlName\"\n [attr.name]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [min]=\"field?.minDate\"\n [id]=\"field.formControlName\"\n [max]=\"field?.maxDate\">\n </scl-datetime-picker>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'date-time'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <scl-datetime-picker\n dateTimePicker\n [formControlName]=\"field.formControlName\"\n [attr.name]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [min]=\"field?.minDate\"\n [id]=\"field.formControlName\"\n [max]=\"field?.maxDate\">\n </scl-datetime-picker>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n </scl-column>\n </scl-row>\n\n <scl-button-group>\n <button type=\"submit\" nbButton status=\"primary\">Filter</button>\n <button type=\"button\" nbButton outline (click)=\"reset()\">Reset</button>\n </scl-button-group>\n</form>\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { 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.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i5.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "component", type: SclButtonGroup, selector: "scl-button-group", inputs: ["wrap", "alignment"] }, { kind: "component", type: SclFormMessage, selector: "scl-form-message", inputs: ["type"] }, { kind: "component", type: SclFormField, selector: "scl-form-field", inputs: ["messageBuilder"] }, { kind: "component", type: SclColumn, selector: "scl-column" }, { kind: "component", type: SclRow, selector: "scl-row", inputs: ["columns"] }, { kind: "ngmodule", type: NbInputModule }, { kind: "directive", type: i3.NbInputDirective, selector: "input[nbInput],textarea[nbInput]", inputs: ["fieldSize", "status", "shape", "fullWidth"] }, { kind: "ngmodule", type: NbButtonModule }, { kind: "component", type: i3.NbButtonComponent, selector: "button[nbButton],a[nbButton],input[type=\"button\"][nbButton],input[type=\"submit\"][nbButton]", inputs: ["hero"] }, { kind: "directive", type: SclLabel, selector: "[sclLabel]" }, { kind: "ngmodule", type: NbDatepickerModule }, { kind: "component", type: SclSelectInputField, selector: "scl-select-input-field" }, { kind: "ngmodule", type: NbIconModule }, { kind: "directive", type: SclValidateAndSubmit, selector: "form[formGroup][validateAndSubmit]", outputs: ["validateAndSubmit"] }, { kind: "component", type: SclDateTimepickerComponent, selector: "scl-datetime-picker", inputs: ["placeholder", "format", "min", "max", "dateTimePicker", "showPresets", "readonly"], outputs: ["dateChange"] }] }); }
|
|
141
|
+
}
|
|
142
|
+
export { SclFilter };
|
|
143
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFilter, decorators: [{
|
|
144
|
+
type: Component,
|
|
145
|
+
args: [{ selector: 'scl-filter', standalone: true, imports: [
|
|
146
|
+
ReactiveFormsModule,
|
|
147
|
+
CommonModule,
|
|
148
|
+
NgSelectModule,
|
|
149
|
+
SclButtonGroup,
|
|
150
|
+
SclFormMessage,
|
|
151
|
+
SclFormField,
|
|
152
|
+
SclColumn,
|
|
153
|
+
SclRow,
|
|
154
|
+
NbInputModule,
|
|
155
|
+
NbButtonModule,
|
|
156
|
+
SclLabel,
|
|
157
|
+
NbDatepickerModule,
|
|
158
|
+
SclSelectInputField,
|
|
159
|
+
NbIconModule,
|
|
160
|
+
SclFormField,
|
|
161
|
+
SclValidateAndSubmit,
|
|
162
|
+
SclDateTimepickerComponent,
|
|
163
|
+
], providers: [], template: "<form [formGroup]=\"filterForm\" (validateAndSubmit)=\"search($event)\">\n <scl-row [columns]=\"4\">\n <scl-column *ngFor=\"let field of formFields\">\n <ng-container *ngIf=\"field.type === 'text'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <input\n [type]=\"field.type\"\n fullWidth\n [formControlName]=\"field.formControlName\"\n [placeholder]=\"field.placeholder\"\n [id]=\"field.formControlName\"\n nbInput />\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'select' || field.type === 'dropdown'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <ng-select\n [items]=\"field.options ?? null\"\n bindValue=\"value\"\n bindLabel=\"label\"\n [formControlName]=\"field.formControlName\"\n [id]=\"field.formControlName\"\n class=\"select\"\n appendTo=\"body\"\n name=\"field.formControlName\"\n [clearable]=\"true\"\n [placeholder]=\"field.placeholder\"\n (change)=\"onSelect(field, $event)\">\n </ng-select>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'checkbox'\">\n <scl-form-field errorMessage>\n <div *ngFor=\"let option of field.options\" class=\"checkbox-option\">\n <label>\n <input type=\"checkbox\" [formControlName]=\"field.formControlName\" [value]=\"option.value\" />\n {{ option.label }}\n </label>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'radio'\">\n <scl-form-field errorMessage>\n <div *ngFor=\"let option of field.options\" class=\"radio-option\">\n <label>\n <input type=\"radio\" [formControlName]=\"field.formControlName\" [value]=\"option.value\" />\n {{ option.label }}\n </label>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'dropdown-text'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <div class=\"dropdown-text-field\">\n <scl-select-input-field>\n <ng-select\n fullWidth\n [items]=\"field.options ?? null\"\n bindValue=\"value\"\n bindLabel=\"label\"\n [formControlName]=\"field.dropdownFormControlName ?? null\"\n [placeholder]=\"field.placeholder\"\n [id]=\"field.dropdownFormControlName\"\n class=\"select\"\n appendTo=\"body\"></ng-select>\n <input [formControlName]=\"field.formControlName\" nbInput />\n </scl-select-input-field>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'date'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <scl-datetime-picker\n [formControlName]=\"field.formControlName\"\n [attr.name]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [min]=\"field?.minDate\"\n [id]=\"field.formControlName\"\n [max]=\"field?.maxDate\">\n </scl-datetime-picker>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'date-time'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <scl-datetime-picker\n dateTimePicker\n [formControlName]=\"field.formControlName\"\n [attr.name]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [min]=\"field?.minDate\"\n [id]=\"field.formControlName\"\n [max]=\"field?.maxDate\">\n </scl-datetime-picker>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n </scl-column>\n </scl-row>\n\n <scl-button-group>\n <button type=\"submit\" nbButton status=\"primary\">Filter</button>\n <button type=\"button\" nbButton outline (click)=\"reset()\">Reset</button>\n </scl-button-group>\n</form>\n" }]
|
|
164
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.SclAlertService }, { type: i3.NbIconLibraries }]; }, propDecorators: { onFilter: [{
|
|
165
|
+
type: Output
|
|
166
|
+
}], formFields: [{
|
|
167
|
+
type: Input
|
|
168
|
+
}], isLoading: [{
|
|
169
|
+
type: Input
|
|
170
|
+
}], emitFormDataOnReset: [{
|
|
171
|
+
type: Input
|
|
172
|
+
}] } });
|
|
173
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2ZpbHRlci9maWx0ZXIudHMiLCIuLi8uLi8uLi8uLi9zcmMvcGFja2FnZXMvZmlsdGVyL2ZpbHRlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQWUsV0FBVyxFQUFhLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RHLE9BQU8sRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQW1CLFlBQVksRUFBVyxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDcEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7QUFpQjlDLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FB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TyxtQkFBbUI7c0JBQS9CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmJCdXR0b25Nb2R1bGUsIE5iRGF0ZXBpY2tlck1vZHVsZSwgTmJJY29uTGlicmFyaWVzLCBOYkljb25Nb2R1bGUsIE5iSWNvbnMsIE5iSW5wdXRNb2R1bGUgfSBmcm9tICdAbmVidWxhci90aGVtZSc7XG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcbmltcG9ydCB7IFNjbEFsZXJ0U2VydmljZSB9IGZyb20gJy4uL2FsZXJ0L2FsZXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU2NsQnV0dG9uR3JvdXAgfSBmcm9tICcuLi9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwJztcbmltcG9ydCB7IFNjbERhdGVUaW1lcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vY3VzdG9tLWRhdGVwaWNrZXIvY3VzdG9tLWRhdGVwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNjbEZvcm1GaWVsZCB9IGZyb20gJy4uL2Zvcm0vZm9ybS1jb250cm9sL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgU2NsRm9ybU1lc3NhZ2UgfSBmcm9tICcuLi9mb3JtL2Zvcm0tbWVzc2FnZS9mb3JtLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2NsU2VsZWN0SW5wdXRGaWVsZCB9IGZyb20gJy4uL2Zvcm0vc2VsZWN0LWlucHV0LWZpZWxkL3NlbGVjdC1pbnB1dC1maWVsZCc7XG5pbXBvcnQgeyBTY2xWYWxpZGF0ZUFuZFN1Ym1pdCB9IGZyb20gJy4uL2Zvcm0vdmFsaWRhdGUtYW5kLXN1Ym1pdCc7XG5pbXBvcnQgeyBTY2xMYWJlbCB9IGZyb20gJy4uL2xhYmVsL2xhYmVsJztcbmltcG9ydCB7IFNjbENvbHVtbiB9IGZyb20gJy4uL3Jvdy9jb2x1bW4vY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY2xSb3cgfSBmcm9tICcuLi9yb3cvcm93LmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyRm9ybUdyb3VwIHtcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgZm9ybUNvbnRyb2xOYW1lOiBzdHJpbmc7XG4gICAgdHlwZTogc3RyaW5nO1xuICAgIG9wdGlvbnM/OiBhbnlbXTtcbiAgICBkcm9wZG93bkZvcm1Db250cm9sTmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IGFueTtcbiAgICBkcm9wZG93bkZvcm1Db250cm9sVmFsdWU/OiBhbnk7XG4gICAgaXNSZXF1aXJlZD86IGJvb2xlYW47XG4gICAgbWluRGF0ZT86IERhdGU7XG4gICAgbWF4RGF0ZT86IERhdGU7XG4gICAgb25DaGFuZ2U/OiAodmFsdWU6IGFueSkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGNvbnN0IFNjbEljb25zOiBOYkljb25zID0ge1xuICAgIGNhbGVuZGVyOiBgXG4gICAgICAgIDxzdmcgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgICAgPHBhdGggZD1cIk0xNy43NSAzQTMuMjUgMy4yNSAwIDAgMSAyMSA2LjI1djExLjVBMy4yNSAzLjI1IDAgMCAxIDE3Ljc1IDIxSDYuMjVBMy4yNSAzLjI1IDAgMCAxIDMgMTcuNzVWNi4yNUEzLjI1IDMuMjUgMCAwIDEgNi4yNSAzaDExLjV6bTEuNzUgNS41aC0xNXY5LjI1YzAgLjk2Ni43ODQgMS43NSAxLjc1IDEuNzVoMTEuNWExLjc1IDEuNzUgMCAwIDAgMS43NS0xLjc1VjguNXptLTExLjc1IDZhMS4yNSAxLjI1IDAgMSAxIDAgMi41IDEuMjUgMS4yNSAwIDAgMSAwLTIuNXptNC4yNSAwYTEuMjUgMS4yNSAwIDEgMSAwIDIuNSAxLjI1IDEuMjUgMCAwIDEgMC0yLjV6bS00LjI1LTRhMS4yNSAxLjI1IDAgMSAxIDAgMi41IDEuMjUgMS4yNSAwIDAgMSAwLTIuNXptNC4yNSAwYTEuMjUgMS4yNSAwIDEgMSAwIDIuNSAxLjI1IDEuMjUgMCAwIDEgMC0yLjV6bTQuMjUgMGExLjI1IDEuMjUgMCAxIDEgMCAyLjUgMS4yNSAxLjI1IDAgMCAxIDAtMi41em0xLjUtNkg2LjI1QTEuNzUgMS43NSAwIDAgMCA0LjUgNi4yNVY3aDE1di0uNzVhMS43NSAxLjc1IDAgMCAwLTEuNzUtMS43NXpcIiBmaWxsPVwiY3VycmVudENvbG9yXCIvPlxuICAgICAgICA8L3N2Zz5cbiAgICBgLFxufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzY2wtZmlsdGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIE5nU2VsZWN0TW9kdWxlLFxuICAgICAgICBTY2xCdXR0b25Hcm91cCxcbiAgICAgICAgU2NsRm9ybU1lc3NhZ2UsXG4gICAgICAgIFNjbEZvcm1GaWVsZCxcbiAgICAgICAgU2NsQ29sdW1uLFxuICAgICAgICBTY2xSb3csXG4gICAgICAgIE5iSW5wdXRNb2R1bGUsXG4gICAgICAgIE5iQnV0dG9uTW9kdWxlLFxuICAgICAgICBTY2xMYWJlbCxcbiAgICAgICAgTmJEYXRlcGlja2VyTW9kdWxlLFxuICAgICAgICBTY2xTZWxlY3RJbnB1dEZpZWxkLFxuICAgICAgICBOYkljb25Nb2R1bGUsXG4gICAgICAgIFNjbEZvcm1GaWVsZCxcbiAgICAgICAgU2NsVmFsaWRhdGVBbmRTdWJtaXQsXG4gICAgICAgIFNjbERhdGVUaW1lcGlja2VyQ29tcG9uZW50LFxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2NsRmlsdGVyIHtcbiAgICBwcml2YXRlIF9mb3JtRmllbGRzOiBGaWx0ZXJGb3JtR3JvdXBbXSA9IFtdO1xuXG4gICAgQE91dHB1dCgpIG9uRmlsdGVyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBASW5wdXQoKSBnZXQgZm9ybUZpZWxkcygpOiBGaWx0ZXJGb3JtR3JvdXBbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb3JtRmllbGRzO1xuICAgIH1cbiAgICBzZXQgZm9ybUZpZWxkcyh2YWx1ZTogRmlsdGVyRm9ybUdyb3VwW10pIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl9mb3JtRmllbGRzID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLmluaXRpYWxpemVGb3JtQ29udHJvbHMoKTtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAodGhpcy5mb3JtQ29udHJvbHMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KCkgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2V0IGVtaXRGb3JtRGF0YU9uUmVzZXQoZW1pdFZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuZW1pdFZhbHVlID0gZW1pdFZhbHVlO1xuICAgIH1cblxuICAgIGVtaXRWYWx1ZSA9IHRydWU7XG4gICAgZmlsdGVyRm9ybSE6IEZvcm1Hcm91cDtcbiAgICBmb3JtQ29udHJvbHM6IHsgW2tleTogc3RyaW5nXTogRm9ybUNvbnRyb2wgfSA9IHt9O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogU2NsQWxlcnRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGljb25MaWJyYXJpZXM6IE5iSWNvbkxpYnJhcmllc1xuICAgICkge1xuICAgICAgICB0aGlzLmljb25MaWJyYXJpZXMucmVnaXN0ZXJTdmdQYWNrKCdzY2wtaWNvbicsIFNjbEljb25zKTtcbiAgICAgICAgdGhpcy5maWx0ZXJGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh0aGlzLmZvcm1Db250cm9scyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0aWFsaXplRm9ybUNvbnRyb2xzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm1Db250cm9scyA9IHt9O1xuICAgICAgICB0aGlzLl9mb3JtRmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xuICAgICAgICAgICAgLy8gSGFuZGxlIGRyb3Bkb3duLXRleHQgdHlwZVxuICAgICAgICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdkcm9wZG93bi10ZXh0JyAmJiBmaWVsZC5kcm9wZG93bkZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2xzW2ZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lXSA9IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgICAgICAgICAgICAgaWYgKGZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2xzW2ZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lXS5wYXRjaFZhbHVlKGZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gSGFuZGxlIG1haW4gZm9ybSBjb250cm9sXG4gICAgICAgICAgICBpZiAoZmllbGQuZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtQ29udHJvbHNbZmllbGQuZm9ybUNvbnRyb2xOYW1lXSA9IG5ldyBGb3JtQ29udHJvbChudWxsKTtcbiAgICAgICAgICAgICAgICBpZiAoZmllbGQuaXNSZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Db250cm9sc1tmaWVsZC5mb3JtQ29udHJvbE5hbWVdLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtQ29udHJvbHNbZmllbGQuZm9ybUNvbnRyb2xOYW1lXS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChmaWVsZC52YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2xzW2ZpZWxkLmZvcm1Db250cm9sTmFtZV0ucGF0Y2hWYWx1ZShmaWVsZC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWUudHJpbSgpLnJlcGxhY2UoL1xccysvZywgJyAnKTtcbiAgICB9XG5cbiAgICBzZWFyY2goaXNWYWxpZDogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICghaXNWYWxpZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IE9iamVjdC5rZXlzKHRoaXMuZmlsdGVyRm9ybS52YWx1ZSkucmVkdWNlKChhY2MsIGtleSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmZpbHRlckZvcm0udmFsdWVba2V5XTtcbiAgICAgICAgICAgIGFjY1trZXldID0gdGhpcy50cmFuc2Zvcm1WYWx1ZSh2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCB7fSBhcyBhbnkpO1xuICAgICAgICAvLyBpZiAoIXRoaXMuaGFzRm9ybVZhbHVlcygpKSByZXR1cm47XG4gICAgICAgIGNvbnN0IHsgZnJvbURhdGUsIHRvRGF0ZSB9ID0gZm9ybVZhbHVlO1xuICAgICAgICBpZiAoZnJvbURhdGUgJiYgdG9EYXRlICYmIHRvRGF0ZSA8IGZyb21EYXRlKSB7XG4gICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5kYW5nZXIoe1xuICAgICAgICAgICAgICAgIGhlYWRpbmc6ICdSZWNvcmRzIGNhbm5vdCBiZSBmaWx0ZXJlZCcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdUbyBEYXRlIGNhbm5vdCBiZSBsZXNzIHRoYW4gRnJvbSBEYXRlJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMub25GaWx0ZXIuZW1pdChmb3JtVmFsdWUpO1xuICAgIH1cblxuICAgIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICAvLyBpZiAoIXRoaXMuaGFzRm9ybVZhbHVlcygpKSByZXR1cm47XG4gICAgICAgIHRoaXMuZmlsdGVyRm9ybS5yZXNldCgpO1xuICAgICAgICBpZiAodGhpcy5lbWl0VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMub25GaWx0ZXIuZW1pdCh0aGlzLmZpbHRlckZvcm0udmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAoY2hhbmdlc1snZm9ybUZpZWxkcyddPy5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0Rm9ybUZpZWxkcyhjaGFuZ2VzWydmb3JtRmllbGRzJ10uY3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldEZvcm1GaWVsZHMoY3VycmVudEZvcm1WYWx1ZTogRmlsdGVyRm9ybUdyb3VwW10pIHtcbiAgICAgICAgaWYgKHRoaXMuZmlsdGVyRm9ybS5jb250cm9scykge1xuICAgICAgICAgICAgY3VycmVudEZvcm1WYWx1ZS5mb3JFYWNoKGN1cnJlbnRGb3JtVmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50Rm9ybVZhbHVlLnZhbHVlICYmIHRoaXMuZmlsdGVyRm9ybS5jb250YWlucyhjdXJyZW50Rm9ybVZhbHVlLmZvcm1Db250cm9sTmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWx0ZXJGb3JtLmNvbnRyb2xzW2N1cnJlbnRGb3JtVmFsdWUuZm9ybUNvbnRyb2xOYW1lXS5wYXRjaFZhbHVlKGN1cnJlbnRGb3JtVmFsdWUudmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoY3VycmVudEZvcm1WYWx1ZS5kcm9wZG93bkZvcm1Db250cm9sTmFtZSAmJiBjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lICE9PSAobnVsbCAmJiB1bmRlZmluZWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xWYWx1ZSAmJiBjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xWYWx1ZSAhPT0gKG51bGwgJiYgdW5kZWZpbmVkKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZmlsdGVyRm9ybS5jb250YWlucyhjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyRm9ybS5jb250cm9sc1tjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lXS5wYXRjaFZhbHVlKGN1cnJlbnRGb3JtVmFsdWUuZHJvcGRvd25Gb3JtQ29udHJvbFZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNGb3JtVmFsdWVzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyh0aGlzLmZpbHRlckZvcm0udmFsdWUpLnNvbWUodmFsdWUgPT4gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gJycpO1xuICAgIH1cblxuICAgIG9uU2VsZWN0KGZpZWxkOiBGaWx0ZXJGb3JtR3JvdXAsIGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKGZpZWxkLm9uQ2hhbmdlKSB7XG4gICAgICAgICAgICBmaWVsZC5vbkNoYW5nZShldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZpbHRlckZvcm1cIiAodmFsaWRhdGVBbmRTdWJtaXQpPVwic2VhcmNoKCRldmVudClcIj5cbiAgICA8c2NsLXJvdyBbY29sdW1uc109XCI0XCI+XG4gICAgICAgIDxzY2wtY29sdW1uICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmb3JtRmllbGRzXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ3RleHQnXCI+XG4gICAgICAgICAgICAgICAgPHNjbC1mb3JtLWZpZWxkIGVycm9yTWVzc2FnZT5cbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIFtmb3JdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCIgc2NsTGFiZWw+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cImZpZWxkLnR5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBuYklucHV0IC8+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1tZXNzYWdlPjwvc2NsLWZvcm0tbWVzc2FnZT5cbiAgICAgICAgICAgICAgICA8L3NjbC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnc2VsZWN0JyB8fCBmaWVsZC50eXBlID09PSAnZHJvcGRvd24nXCI+XG4gICAgICAgICAgICAgICAgPHNjbC1mb3JtLWZpZWxkIGVycm9yTWVzc2FnZT5cbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIFtmb3JdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCIgc2NsTGFiZWw+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8bmctc2VsZWN0XG4gICAgICAgICAgICAgICAgICAgICAgICBbaXRlbXNdPVwiZmllbGQub3B0aW9ucyA/PyBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRMYWJlbD1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYXBwZW5kVG89XCJib2R5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsZWFyYWJsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uU2VsZWN0KGZpZWxkLCAkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICA8c2NsLWZvcm0tbWVzc2FnZT48L3NjbC1mb3JtLW1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgPC9zY2wtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ2NoZWNrYm94J1wiPlxuICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1maWVsZCBlcnJvck1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWVsZC5vcHRpb25zXCIgY2xhc3M9XCJjaGVja2JveC1vcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIiBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBvcHRpb24ubGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8c2NsLWZvcm0tbWVzc2FnZT48L3NjbC1mb3JtLW1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgPC9zY2wtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ3JhZGlvJ1wiPlxuICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1maWVsZCBlcnJvck1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWVsZC5vcHRpb25zXCIgY2xhc3M9XCJyYWRpby1vcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInJhZGlvXCIgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIiBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBvcHRpb24ubGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8c2NsLWZvcm0tbWVzc2FnZT48L3NjbC1mb3JtLW1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgPC9zY2wtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ2Ryb3Bkb3duLXRleHQnXCI+XG4gICAgICAgICAgICAgICAgPHNjbC1mb3JtLWZpZWxkIGVycm9yTWVzc2FnZT5cbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIFtmb3JdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCIgc2NsTGFiZWw+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tdGV4dC1maWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNjbC1zZWxlY3QtaW5wdXQtZmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cImZpZWxkLm9wdGlvbnMgPz8gbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmluZExhYmVsPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lID8/IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiZmllbGQuZHJvcGRvd25Gb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNlbGVjdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVuZFRvPVwiYm9keVwiPjwvbmctc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiIG5iSW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NsLXNlbGVjdC1pbnB1dC1maWVsZD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1tZXNzYWdlPjwvc2NsLWZvcm0tbWVzc2FnZT5cbiAgICAgICAgICAgICAgICA8L3NjbC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnZGF0ZSdcIj5cbiAgICAgICAgICAgICAgICA8c2NsLWZvcm0tZmllbGQgZXJyb3JNZXNzYWdlPlxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgW2Zvcl09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIiBzY2xMYWJlbD57eyBmaWVsZC5sYWJlbCB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZGF0ZXRpbWUtcGlja2VyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5uYW1lXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbWluXT1cImZpZWxkPy5taW5EYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJmaWVsZD8ubWF4RGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8L3NjbC1kYXRldGltZS1waWNrZXI+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1tZXNzYWdlPjwvc2NsLWZvcm0tbWVzc2FnZT5cbiAgICAgICAgICAgICAgICA8L3NjbC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnZGF0ZS10aW1lJ1wiPlxuICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1maWVsZCBlcnJvck1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBbZm9yXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiIHNjbExhYmVsPnt7IGZpZWxkLmxhYmVsIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgPHNjbC1kYXRldGltZS1waWNrZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGVUaW1lUGlja2VyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5uYW1lXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbWluXT1cImZpZWxkPy5taW5EYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJmaWVsZD8ubWF4RGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8L3NjbC1kYXRldGltZS1waWNrZXI+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1tZXNzYWdlPjwvc2NsLWZvcm0tbWVzc2FnZT5cbiAgICAgICAgICAgICAgICA8L3NjbC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvc2NsLWNvbHVtbj5cbiAgICA8L3NjbC1yb3c+XG5cbiAgICA8c2NsLWJ1dHRvbi1ncm91cD5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmJCdXR0b24gc3RhdHVzPVwicHJpbWFyeVwiPkZpbHRlcjwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBuYkJ1dHRvbiBvdXRsaW5lIChjbGljayk9XCJyZXNldCgpXCI+UmVzZXQ8L2J1dHRvbj5cbiAgICA8L3NjbC1idXR0b24tZ3JvdXA+XG48L2Zvcm0+XG4iXX0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class SclFormControlAction {
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlAction, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: SclFormControlAction, isStandalone: true, selector: "[formControlAction]", host: { classAttribute: "scl-form-control-action" }, ngImport: i0 }); }
|
|
6
|
+
}
|
|
7
|
+
export { SclFormControlAction };
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlAction, decorators: [{
|
|
9
|
+
type: Directive,
|
|
10
|
+
args: [{
|
|
11
|
+
selector: '[formControlAction]',
|
|
12
|
+
standalone: true,
|
|
13
|
+
host: {
|
|
14
|
+
class: 'scl-form-control-action'
|
|
15
|
+
}
|
|
16
|
+
}]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL2Zvcm0tY29udHJvbC9mb3JtLWNvbnRyb2wtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDLE1BT2Esb0JBQW9COzhHQUFwQixvQkFBb0I7a0dBQXBCLG9CQUFvQjs7U0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBUGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDSCxLQUFLLEVBQUUseUJBQXlCO3FCQUNsQztpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xBY3Rpb25dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgICBjbGFzczogJ3NjbC1mb3JtLWNvbnRyb2wtYWN0aW9uJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIFNjbEZvcm1Db250cm9sQWN0aW9uIHtcblxufSJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class SclFormControlIcon {
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: SclFormControlIcon, isStandalone: true, selector: "[formControlIcon]", host: { classAttribute: "scl-form-control-icon" }, ngImport: i0 }); }
|
|
6
|
+
}
|
|
7
|
+
export { SclFormControlIcon };
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlIcon, decorators: [{
|
|
9
|
+
type: Directive,
|
|
10
|
+
args: [{
|
|
11
|
+
selector: '[formControlIcon]',
|
|
12
|
+
standalone: true,
|
|
13
|
+
host: {
|
|
14
|
+
class: 'scl-form-control-icon'
|
|
15
|
+
}
|
|
16
|
+
}]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLWljb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcGFja2FnZXMvZm9ybS9mb3JtLWNvbnRyb2wvZm9ybS1jb250cm9sLWljb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFMUMsTUFPYSxrQkFBa0I7OEdBQWxCLGtCQUFrQjtrR0FBbEIsa0JBQWtCOztTQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFQOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNILEtBQUssRUFBRSx1QkFBdUI7cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tmb3JtQ29udHJvbEljb25dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgICBjbGFzczogJ3NjbC1mb3JtLWNvbnRyb2wtaWNvbidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBTY2xGb3JtQ29udHJvbEljb24ge1xuXG59Il19
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Component, ContentChild, ContentChildren, ElementRef, Inject, Input, Optional } from '@angular/core';
|
|
2
|
+
import { NgControl } from '@angular/forms';
|
|
3
|
+
import { SCL_FORM_ERROR_MESSAGE } from '../form-error-messages';
|
|
4
|
+
import { SclFormMessage } from '../form-message/form-message';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/cdk/a11y";
|
|
7
|
+
import * as i2 from "@angular/forms";
|
|
8
|
+
class SclFormField {
|
|
9
|
+
constructor(focusMonitor, parentFormGroup, parentForm, errorMessageMapper) {
|
|
10
|
+
this.focusMonitor = focusMonitor;
|
|
11
|
+
this.parentFormGroup = parentFormGroup;
|
|
12
|
+
this.parentForm = parentForm;
|
|
13
|
+
this.errorMessageMapper = errorMessageMapper;
|
|
14
|
+
}
|
|
15
|
+
ngAfterContentInit() {
|
|
16
|
+
this.controlEls.forEach((controlEl, index) => {
|
|
17
|
+
const control = this.controls.toArray()[index];
|
|
18
|
+
const name = controlEl.nativeElement.getAttribute('name') || control.name;
|
|
19
|
+
const form = this.parentFormGroup || this.parentForm;
|
|
20
|
+
this.setControl(control.control);
|
|
21
|
+
if (form) {
|
|
22
|
+
this.formSubmitSubscription = form.ngSubmit.subscribe(() => {
|
|
23
|
+
this.setMessage(name, control.errors);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
this.setMessage(name, control.errors);
|
|
27
|
+
control.statusChanges?.subscribe(() => {
|
|
28
|
+
this.setMessage(name, control.errors);
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
setMessage(name, errors) {
|
|
33
|
+
if (this.formMessage) {
|
|
34
|
+
this.formMessage.message = errors
|
|
35
|
+
? Object.keys(errors)
|
|
36
|
+
.map(error => {
|
|
37
|
+
if (this.messageBuilder?.[error]) {
|
|
38
|
+
return this.messageBuilder[error](name, errors) || '';
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
return this.errorMessageMapper?.[error]?.(name, errors) || '';
|
|
42
|
+
}
|
|
43
|
+
})
|
|
44
|
+
.join(' ')
|
|
45
|
+
: '';
|
|
46
|
+
this.formMessage.type = errors && Object.keys(errors).length ? 'danger' : 'basic';
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
setControl(control) {
|
|
50
|
+
if (!this.formMessage)
|
|
51
|
+
return;
|
|
52
|
+
this.formMessage.control = control;
|
|
53
|
+
}
|
|
54
|
+
ngOnDestroy() {
|
|
55
|
+
this.focusMonitorSubscription?.unsubscribe();
|
|
56
|
+
this.formSubmitSubscription?.unsubscribe();
|
|
57
|
+
}
|
|
58
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormField, deps: [{ token: i1.FocusMonitor }, { token: i2.FormGroupDirective, optional: true }, { token: i2.NgForm, optional: true }, { token: SCL_FORM_ERROR_MESSAGE }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
59
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclFormField, isStandalone: true, selector: "scl-form-field", inputs: { messageBuilder: "messageBuilder" }, host: { classAttribute: "scl-form-field" }, queries: [{ propertyName: "formMessage", first: true, predicate: SclFormMessage, descendants: true }, { propertyName: "controls", predicate: NgControl, descendants: true }, { propertyName: "controlEls", predicate: NgControl, descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-content select=\"[sclLabel]\"></ng-content>\n<div class=\"scl-form-control-wrapper\">\n <ng-content select=\"[formControlName], [formControl], [ngModel]\"></ng-content>\n <ng-content select=\"[formControlAction]\"></ng-content>\n <ng-content select=\"[formControlIcon]\"></ng-content>\n</div>\n<ng-content></ng-content>\n" }); }
|
|
60
|
+
}
|
|
61
|
+
export { SclFormField };
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormField, decorators: [{
|
|
63
|
+
type: Component,
|
|
64
|
+
args: [{ selector: 'scl-form-field', standalone: true, host: {
|
|
65
|
+
class: 'scl-form-field',
|
|
66
|
+
}, template: "<ng-content select=\"[sclLabel]\"></ng-content>\n<div class=\"scl-form-control-wrapper\">\n <ng-content select=\"[formControlName], [formControl], [ngModel]\"></ng-content>\n <ng-content select=\"[formControlAction]\"></ng-content>\n <ng-content select=\"[formControlIcon]\"></ng-content>\n</div>\n<ng-content></ng-content>\n" }]
|
|
67
|
+
}], ctorParameters: function () { return [{ type: i1.FocusMonitor }, { type: i2.FormGroupDirective, decorators: [{
|
|
68
|
+
type: Optional
|
|
69
|
+
}] }, { type: i2.NgForm, decorators: [{
|
|
70
|
+
type: Optional
|
|
71
|
+
}] }, { type: undefined, decorators: [{
|
|
72
|
+
type: Inject,
|
|
73
|
+
args: [SCL_FORM_ERROR_MESSAGE]
|
|
74
|
+
}] }]; }, propDecorators: { messageBuilder: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}], controls: [{
|
|
77
|
+
type: ContentChildren,
|
|
78
|
+
args: [NgControl, { descendants: true }]
|
|
79
|
+
}], controlEls: [{
|
|
80
|
+
type: ContentChildren,
|
|
81
|
+
args: [NgControl, { read: ElementRef, descendants: true }]
|
|
82
|
+
}], formMessage: [{
|
|
83
|
+
type: ContentChild,
|
|
84
|
+
args: [SclFormMessage]
|
|
85
|
+
}] } });
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL2Zvcm0tY29udHJvbC9mb3JtLWZpZWxkLnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vZm9ybS1jb250cm9sL2Zvcm0tZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUMzSSxPQUFPLEVBQXVDLFNBQVMsRUFBNEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRyxPQUFPLEVBQUUsc0JBQXNCLEVBQXdCLE1BQU0sd0JBQXdCLENBQUM7QUFDdEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7O0FBRTlELE1BUWEsWUFBWTtJQWdCckIsWUFDWSxZQUEwQixFQUNkLGVBQW1DLEVBQ25DLFVBQWtCLEVBQ0Usa0JBQXdDO1FBSHhFLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ2Qsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBQ25DLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDRSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQXNCO0lBQ2pGLENBQUM7SUFFSixrQkFBa0I7UUFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQXFCLEVBQUUsS0FBYSxFQUFFLEVBQUU7WUFDN0QsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQyxNQUFNLElBQUksR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQzFFLE1BQU0sSUFBSSxHQUFHLElB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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgQ29udGVudENoaWxkcmVuLCBFbGVtZW50UmVmLCBJbmplY3QsIElucHV0LCBPcHRpb25hbCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Hcm91cERpcmVjdGl2ZSwgTmdDb250cm9sLCBOZ0Zvcm0sIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNDTF9GT1JNX0VSUk9SX01FU1NBR0UsIFNjbEZvcm1FcnJvck1lc3NhZ2VzIH0gZnJvbSAnLi4vZm9ybS1lcnJvci1tZXNzYWdlcyc7XG5pbXBvcnQgeyBTY2xGb3JtTWVzc2FnZSB9IGZyb20gJy4uL2Zvcm0tbWVzc2FnZS9mb3JtLW1lc3NhZ2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjbC1mb3JtLWZpZWxkJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb3JtLWZpZWxkLmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdzY2wtZm9ybS1maWVsZCcsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgU2NsRm9ybUZpZWxkIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgQElucHV0KClcbiAgICBtZXNzYWdlQnVpbGRlcj86IFNjbEZvcm1FcnJvck1lc3NhZ2VzO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihOZ0NvbnRyb2wsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBjb250cm9scyE6IFF1ZXJ5TGlzdDxOZ0NvbnRyb2w+O1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihOZ0NvbnRyb2wsIHsgcmVhZDogRWxlbWVudFJlZiwgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBjb250cm9sRWxzITogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuXG4gICAgQENvbnRlbnRDaGlsZChTY2xGb3JtTWVzc2FnZSlcbiAgICBmb3JtTWVzc2FnZT86IFNjbEZvcm1NZXNzYWdlO1xuXG4gICAgcHJpdmF0ZSBmb3JtU3VibWl0U3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcGFyZW50Rm9ybUdyb3VwOiBGb3JtR3JvdXBEaXJlY3RpdmUsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcGFyZW50Rm9ybTogTmdGb3JtLFxuICAgICAgICBASW5qZWN0KFNDTF9GT1JNX0VSUk9SX01FU1NBR0UpIHByaXZhdGUgZXJyb3JNZXNzYWdlTWFwcGVyOiBTY2xGb3JtRXJyb3JNZXNzYWdlc1xuICAgICkge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgdGhpcy5jb250cm9sRWxzLmZvckVhY2goKGNvbnRyb2xFbDogRWxlbWVudFJlZiwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuY29udHJvbHMudG9BcnJheSgpW2luZGV4XTtcbiAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBjb250cm9sRWwubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ25hbWUnKSB8fCBjb250cm9sLm5hbWU7XG4gICAgICAgICAgICBjb25zdCBmb3JtID0gdGhpcy5wYXJlbnRGb3JtR3JvdXAgfHwgdGhpcy5wYXJlbnRGb3JtO1xuICAgICAgICAgICAgdGhpcy5zZXRDb250cm9sKGNvbnRyb2wuY29udHJvbCk7XG5cbiAgICAgICAgICAgIGlmIChmb3JtKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtU3VibWl0U3Vic2NyaXB0aW9uID0gZm9ybS5uZ1N1Ym1pdC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldE1lc3NhZ2UobmFtZSwgY29udHJvbC5lcnJvcnMpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5zZXRNZXNzYWdlKG5hbWUsIGNvbnRyb2wuZXJyb3JzKTtcbiAgICAgICAgICAgIGNvbnRyb2wuc3RhdHVzQ2hhbmdlcz8uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldE1lc3NhZ2UobmFtZSwgY29udHJvbC5lcnJvcnMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0TWVzc2FnZShuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybU1lc3NhZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybU1lc3NhZ2UubWVzc2FnZSA9IGVycm9yc1xuICAgICAgICAgICAgICAgID8gT2JqZWN0LmtleXMoZXJyb3JzKVxuICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5tZXNzYWdlQnVpbGRlcj8uW2Vycm9yXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubWVzc2FnZUJ1aWxkZXJbZXJyb3JdKG5hbWUsIGVycm9ycykgfHwgJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2VNYXBwZXI/LltlcnJvcl0/LihuYW1lLCBlcnJvcnMpIHx8ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAuam9pbignICcpXG4gICAgICAgICAgICAgICAgOiAnJztcbiAgICAgICAgICAgIHRoaXMuZm9ybU1lc3NhZ2UudHlwZSA9IGVycm9ycyAmJiBPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA/ICdkYW5nZXInIDogJ2Jhc2ljJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2V0Q29udHJvbChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsKSB7XG4gICAgICAgIGlmICghdGhpcy5mb3JtTWVzc2FnZSkgcmV0dXJuO1xuICAgICAgICB0aGlzLmZvcm1NZXNzYWdlLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5mb3JtU3VibWl0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cIltzY2xMYWJlbF1cIj48L25nLWNvbnRlbnQ+XG48ZGl2IGNsYXNzPVwic2NsLWZvcm0tY29udHJvbC13cmFwcGVyXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Zvcm1Db250cm9sTmFtZV0sIFtmb3JtQ29udHJvbF0sIFtuZ01vZGVsXVwiPjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZm9ybUNvbnRyb2xBY3Rpb25dXCI+PC9uZy1jb250ZW50PlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmb3JtQ29udHJvbEljb25dXCI+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, Input } from '@angular/core';
|
|
3
|
+
import { NbIconModule } from '@nebular/theme';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@nebular/theme";
|
|
7
|
+
class SclFormControlWrapperComponent {
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclFormControlWrapperComponent, isStandalone: true, selector: "scl-form-control-wrapper", inputs: { icon: "icon", packName: "packName" }, host: { classAttribute: "scl-form-control" }, ngImport: i0, template: "<section class=\"scl-form-control__wrapper\">\n <ng-content></ng-content>\n\n <div class=\"scl-form-control__icon\" *ngIf=\"icon\">\n <nb-icon [icon]=\"icon\" [pack]=\"packName\"></nb-icon>\n </div>\n</section>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NbIconModule }, { kind: "component", type: i2.NbIconComponent, selector: "nb-icon", inputs: ["icon", "pack", "options", "status", "config"] }] }); }
|
|
10
|
+
}
|
|
11
|
+
export { SclFormControlWrapperComponent };
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlWrapperComponent, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{ selector: 'scl-form-control-wrapper', standalone: true, host: {
|
|
15
|
+
class: 'scl-form-control',
|
|
16
|
+
}, imports: [CommonModule, NbIconModule], template: "<section class=\"scl-form-control__wrapper\">\n <ng-content></ng-content>\n\n <div class=\"scl-form-control__icon\" *ngIf=\"icon\">\n <nb-icon [icon]=\"icon\" [pack]=\"packName\"></nb-icon>\n </div>\n</section>\n" }]
|
|
17
|
+
}], propDecorators: { icon: [{
|
|
18
|
+
type: Input
|
|
19
|
+
}], packName: [{
|
|
20
|
+
type: Input
|
|
21
|
+
}] } });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vZm9ybS1jb250cm9sLXdyYXBwZXIvZm9ybS1jb250cm9sLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vZm9ybS1jb250cm9sLXdyYXBwZXIvZm9ybS1jb250cm9sLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUU5QyxNQVNhLDhCQUE4Qjs4R0FBOUIsOEJBQThCO2tHQUE5Qiw4QkFBOEIsa0xDYjNDLHNPQU9BLDJDREljLFlBQVksa0lBQUUsWUFBWTs7U0FFM0IsOEJBQThCOzJGQUE5Qiw4QkFBOEI7a0JBVDFDLFNBQVM7K0JBQ0ksMEJBQTBCLGNBRXhCLElBQUksUUFDVjt3QkFDRixLQUFLLEVBQUUsa0JBQWtCO3FCQUM1QixXQUNRLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQzs4QkFHNUIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmJJY29uTW9kdWxlIH0gZnJvbSAnQG5lYnVsYXIvdGhlbWUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjbC1mb3JtLWNvbnRyb2wtd3JhcHBlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tY29udHJvbC13cmFwcGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdzY2wtZm9ybS1jb250cm9sJyxcbiAgICB9LFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE5iSWNvbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNjbEZvcm1Db250cm9sV3JhcHBlckNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgaWNvbiE6IHN0cmluZztcbiAgICBASW5wdXQoKSBwYWNrTmFtZSE6IHN0cmluZztcbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwic2NsLWZvcm0tY29udHJvbF9fd3JhcHBlclwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblxuICAgIDxkaXYgY2xhc3M9XCJzY2wtZm9ybS1jb250cm9sX19pY29uXCIgKm5nSWY9XCJpY29uXCI+XG4gICAgICAgIDxuYi1pY29uIFtpY29uXT1cImljb25cIiBbcGFja109XCJwYWNrTmFtZVwiPjwvbmItaWNvbj5cbiAgICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { InjectionToken, makeEnvironmentProviders } from '@angular/core';
|
|
2
|
+
import moment from 'moment';
|
|
3
|
+
const formatDate = (date, format) => moment(date).format(format);
|
|
4
|
+
const SCL_DEFAULT_FORM_ERROR_MESSAGES = {
|
|
5
|
+
required: (name) => `${name} is mandatory.`,
|
|
6
|
+
min: (name, errors) => `${name} must be at least ${errors['min'].min}.`,
|
|
7
|
+
max: (name, errors) => `${name} must be at most ${errors['max'].max}.`,
|
|
8
|
+
minlength: (name, errors) => `${name} must be at least ${errors['minlength'].requiredLength} characters.`,
|
|
9
|
+
maxlength: (name, errors) => `${name} must be at most ${errors['maxlength'].requiredLength} characters.`,
|
|
10
|
+
pattern: (name) => `${name} must be valid.`,
|
|
11
|
+
dateParseError: (name) => `${name} should be in YYYY-MM-DD format`,
|
|
12
|
+
datePickerMax: (name, errors) => `${name} is greater than ${moment(errors['datePickerMax']).format('MMM DD, yyyy')}.`,
|
|
13
|
+
datePickerMin: (name, errors) => `${name} is less than ${moment(errors['datePickerMin']).format('MMM DD, yyyy')}.`,
|
|
14
|
+
nbDatepickerMax: (name, errors) => `${name} is greater than ${moment(errors['nbDatepickerMax']['max']).format('MMM DD, yyyy')}.`,
|
|
15
|
+
nbDatepickerMin: (name, errors) => `${name} is less than ${moment(errors['nbDatepickerMin']['min']).format('MMM DD, yyyy')}.`,
|
|
16
|
+
notUnique: (name) => `${name} already exists`,
|
|
17
|
+
nbDatepickerParse: (name) => `Select an end date to complete the range.`,
|
|
18
|
+
invalidDateFormat: (name, error) => `${name} should be of format ${error['invalidDateFormat']}`,
|
|
19
|
+
minDate: (name, error) => `Select ${name} starting from ${formatDate(error['minDate'].date, error['minDate'].format)}`,
|
|
20
|
+
maxDate: (name, error) => `Select ${name} no later than ${formatDate(error['maxDate'].date, error['maxDate'].format)}`,
|
|
21
|
+
minDateTime: (name, error) => `Select ${name} starting from ${formatDate(error['minDateTime'].date, error['minDateTime'].format)}`,
|
|
22
|
+
maxDateTime: (name, error) => `Select ${name} no later than ${formatDate(error['maxDateTime'].date, error['maxDateTime'].format)}`,
|
|
23
|
+
minTime: (name, error) => `Select ${name} greater than ${moment(error['minTime']).format('HH:mm:ss')}`,
|
|
24
|
+
maxTime: (name, error) => `Select ${name} no later than ${moment(error['maxTime']).format('HH:mm:ss')}`,
|
|
25
|
+
duplicate: (name) => `${name} already exists.`,
|
|
26
|
+
fromDateNotAfterPrevious: (name, errors) => `${name} must be after ${moment(errors['fromDateNotAfterPrevious'].previousToDate).format('MMM DD, YYYY hh:mm A')}.`,
|
|
27
|
+
};
|
|
28
|
+
export const SCL_FORM_ERROR_MESSAGE = new InjectionToken('A map for validation message and its corresponding messages', {
|
|
29
|
+
providedIn: 'root',
|
|
30
|
+
factory: () => SCL_DEFAULT_FORM_ERROR_MESSAGES,
|
|
31
|
+
});
|
|
32
|
+
export function provideFormErrorMessages(formErrorMessages) {
|
|
33
|
+
return makeEnvironmentProviders([
|
|
34
|
+
{
|
|
35
|
+
provide: SCL_FORM_ERROR_MESSAGE,
|
|
36
|
+
useValue: {
|
|
37
|
+
...SCL_DEFAULT_FORM_ERROR_MESSAGES,
|
|
38
|
+
...formErrorMessages,
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
]);
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvci1tZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL2Zvcm0tZXJyb3ItbWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3QixjQUFjLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0YsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBTTVCLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBUyxFQUFFLE1BQWMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUU5RSxNQUFNLCtCQUErQixHQUF5QjtJQUMxRCxRQUFRLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxnQkFBZ0I7SUFDbkQsR0FBRyxFQUFFLENBQUMsSUFBWSxFQUFFLE1BQXdCLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxxQkFBcUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsR0FBRztJQUNqRyxHQUFHLEVBQUUsQ0FBQyxJQUFZLEVBQUUsTUFBd0IsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLG9CQUFvQixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHO0lBQ2hHLFNBQVMsRUFBRSxDQUFDLElBQVksRUFBRSxNQUF3QixFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUkscUJBQXFCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxjQUFjLGNBQWM7SUFDbkksU0FBUyxFQUFFLENBQUMsSUFBWSxFQUFFLE1BQXdCLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxvQkFBb0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGNBQWMsY0FBYztJQUNsSSxPQUFPLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxpQkFBaUI7SUFD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QVksRUFBRSxNQUF3QixFQUFFLEVBQUUsQ0FDakUsR0FBRyxJQUFJLGtCQUFrQixNQUFNLENBQUMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLEdBQUc7Q0FDM0gsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLElBQUksY0FBYyxDQUF1Qiw2REFBNkQsRUFBRTtJQUMxSSxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsK0JBQStCO0NBQ2pELENBQUMsQ0FBQztBQUVILE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxpQkFBd0M7SUFDN0UsT0FBTyx3QkFBd0IsQ0FBQztRQUM1QjtZQUNJLE9BQU8sRUFBRSxzQkFBc0I7WUFDL0IsUUFBUSxFQUFFO2dCQUNOLEdBQUcsK0JBQStCO2dCQUNsQyxHQUFHLGlCQUFpQjthQUN2QjtTQUNKO0tBQ0osQ0FBQyxDQUFDO0FBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudmlyb25tZW50UHJvdmlkZXJzLCBJbmplY3Rpb25Ub2tlbiwgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNjbEZvcm1FcnJvck1lc3NhZ2VzIHtcbiAgICBba2V5OiBzdHJpbmddOiAobmFtZTogc3RyaW5nLCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMpID0+IHN0cmluZztcbn1cblxuY29uc3QgZm9ybWF0RGF0ZSA9IChkYXRlOiBhbnksIGZvcm1hdDogc3RyaW5nKSA9PiBtb21lbnQoZGF0ZSkuZm9ybWF0KGZvcm1hdCk7XG5cbmNvbnN0IFNDTF9ERUZBVUxUX0ZPUk1fRVJST1JfTUVTU0FHRVM6IFNjbEZvcm1FcnJvck1lc3NhZ2VzID0ge1xuICAgIHJlcXVpcmVkOiAobmFtZTogc3RyaW5nKSA9PiBgJHtuYW1lfSBpcyBtYW5kYXRvcnkuYCxcbiAgICBtaW46IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT4gYCR7bmFtZX0gbXVzdCBiZSBhdCBsZWFzdCAke2Vycm9yc1snbWluJ10ubWlufS5gLFxuICAgIG1heDogKG5hbWU6IHN0cmluZywgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzKSA9PiBgJHtuYW1lfSBtdXN0IGJlIGF0IG1vc3QgJHtlcnJvcnNbJ21heCddLm1heH0uYCxcbiAgICBtaW5sZW5ndGg6IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT4gYCR7bmFtZX0gbXVzdCBiZSBhdCBsZWFzdCAke2Vycm9yc1snbWlubGVuZ3RoJ10ucmVxdWlyZWRMZW5ndGh9IGNoYXJhY3RlcnMuYCxcbiAgICBtYXhsZW5ndGg6IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT4gYCR7bmFtZX0gbXVzdCBiZSBhdCBtb3N0ICR7ZXJyb3JzWydtYXhsZW5ndGgnXS5yZXF1aXJlZExlbmd0aH0gY2hhcmFjdGVycy5gLFxuICAgIHBhdHRlcm46IChuYW1lOiBzdHJpbmcpID0+IGAke25hbWV9IG11c3QgYmUgdmFsaWQuYCxcbiAgICBkYXRlUGFyc2VFcnJvcjogKG5hbWU6IHN0cmluZykgPT4gYCR7bmFtZX0gc2hvdWxkIGJlIGluIFlZWVktTU0tREQgZm9ybWF0YCxcbiAgICBkYXRlUGlja2VyTWF4OiAobmFtZTogc3RyaW5nLCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMpID0+IGAke25hbWV9IGlzIGdyZWF0ZXIgdGhhbiAke21vbWVudChlcnJvcnNbJ2RhdGVQaWNrZXJNYXgnXSkuZm9ybWF0KCdNTU0gREQsIHl5eXknKX0uYCxcbiAgICBkYXRlUGlja2VyTWluOiAobmFtZTogc3RyaW5nLCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMpID0+IGAke25hbWV9IGlzIGxlc3MgdGhhbiAke21vbWVudChlcnJvcnNbJ2RhdGVQaWNrZXJNaW4nXSkuZm9ybWF0KCdNTU0gREQsIHl5eXknKX0uYCxcbiAgICBuYkRhdGVwaWNrZXJNYXg6IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT4gYCR7bmFtZX0gaXMgZ3JlYXRlciB0aGFuICR7bW9tZW50KGVycm9yc1snbmJEYXRlcGlja2VyTWF4J11bJ21heCddKS5mb3JtYXQoJ01NTSBERCwgeXl5eScpfS5gLFxuICAgIG5iRGF0ZXBpY2tlck1pbjogKG5hbWU6IHN0cmluZywgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzKSA9PiBgJHtuYW1lfSBpcyBsZXNzIHRoYW4gJHttb21lbnQoZXJyb3JzWyduYkRhdGVwaWNrZXJNaW4nXVsnbWluJ10pLmZvcm1hdCgnTU1NIERELCB5eXl5Jyl9LmAsXG4gICAgbm90VW5pcXVlOiAobmFtZTogc3RyaW5nKSA9PiBgJHtuYW1lfSBhbHJlYWR5IGV4aXN0c2AsXG4gICAgbmJEYXRlcGlja2VyUGFyc2U6IChuYW1lOiBzdHJpbmcpID0+IGBTZWxlY3QgYW4gZW5kIGRhdGUgdG8gY29tcGxldGUgdGhlIHJhbmdlLmAsXG4gICAgaW52YWxpZERhdGVGb3JtYXQ6IChuYW1lOiBzdHJpbmcsIGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzKSA9PiBgJHtuYW1lfSBzaG91bGQgYmUgb2YgZm9ybWF0ICR7ZXJyb3JbJ2ludmFsaWREYXRlRm9ybWF0J119YCxcbiAgICBtaW5EYXRlOiAobmFtZTogc3RyaW5nLCBlcnJvcjogVmFsaWRhdGlvbkVycm9ycykgPT4gYFNlbGVjdCAke25hbWV9IHN0YXJ0aW5nIGZyb20gJHtmb3JtYXREYXRlKGVycm9yWydtaW5EYXRlJ10uZGF0ZSwgZXJyb3JbJ21pbkRhdGUnXS5mb3JtYXQpfWAsXG4gICAgbWF4RGF0ZTogKG5hbWU6IHN0cmluZywgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMpID0+IGBTZWxlY3QgJHtuYW1lfSBubyBsYXRlciB0aGFuICR7Zm9ybWF0RGF0ZShlcnJvclsnbWF4RGF0ZSddLmRhdGUsIGVycm9yWydtYXhEYXRlJ10uZm9ybWF0KX1gLFxuICAgIG1pbkRhdGVUaW1lOiAobmFtZTogc3RyaW5nLCBlcnJvcjogVmFsaWRhdGlvbkVycm9ycykgPT5cbiAgICAgICAgYFNlbGVjdCAke25hbWV9IHN0YXJ0aW5nIGZyb20gJHtmb3JtYXREYXRlKGVycm9yWydtaW5EYXRlVGltZSddLmRhdGUsIGVycm9yWydtaW5EYXRlVGltZSddLmZvcm1hdCl9YCxcbiAgICBtYXhEYXRlVGltZTogKG5hbWU6IHN0cmluZywgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMpID0+XG4gICAgICAgIGBTZWxlY3QgJHtuYW1lfSBubyBsYXRlciB0aGFuICR7Zm9ybWF0RGF0ZShlcnJvclsnbWF4RGF0ZVRpbWUnXS5kYXRlLCBlcnJvclsnbWF4RGF0ZVRpbWUnXS5mb3JtYXQpfWAsXG4gICAgbWluVGltZTogKG5hbWU6IHN0cmluZywgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMpID0+IGBTZWxlY3QgJHtuYW1lfSBncmVhdGVyIHRoYW4gJHttb21lbnQoZXJyb3JbJ21pblRpbWUnXSkuZm9ybWF0KCdISDptbTpzcycpfWAsXG4gICAgbWF4VGltZTogKG5hbWU6IHN0cmluZywgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMpID0+IGBTZWxlY3QgJHtuYW1lfSBubyBsYXRlciB0aGFuICR7bW9tZW50KGVycm9yWydtYXhUaW1lJ10pLmZvcm1hdCgnSEg6bW06c3MnKX1gLFxuICAgIGR1cGxpY2F0ZTogKG5hbWU6IHN0cmluZykgPT4gYCR7bmFtZX0gYWxyZWFkeSBleGlzdHMuYCxcbiAgICBmcm9tRGF0ZU5vdEFmdGVyUHJldmlvdXM6IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT5cbiAgICAgICAgYCR7bmFtZX0gbXVzdCBiZSBhZnRlciAke21vbWVudChlcnJvcnNbJ2Zyb21EYXRlTm90QWZ0ZXJQcmV2aW91cyddLnByZXZpb3VzVG9EYXRlKS5mb3JtYXQoJ01NTSBERCwgWVlZWSBoaDptbSBBJyl9LmAsXG59O1xuXG5leHBvcnQgY29uc3QgU0NMX0ZPUk1fRVJST1JfTUVTU0FHRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTY2xGb3JtRXJyb3JNZXNzYWdlcz4oJ0EgbWFwIGZvciB2YWxpZGF0aW9uIG1lc3NhZ2UgYW5kIGl0cyBjb3JyZXNwb25kaW5nIG1lc3NhZ2VzJywge1xuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICBmYWN0b3J5OiAoKSA9PiBTQ0xfREVGQVVMVF9GT1JNX0VSUk9SX01FU1NBR0VTLFxufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRm9ybUVycm9yTWVzc2FnZXMoZm9ybUVycm9yTWVzc2FnZXM/OiBTY2xGb3JtRXJyb3JNZXNzYWdlcyk6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcbiAgICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogU0NMX0ZPUk1fRVJST1JfTUVTU0FHRSxcbiAgICAgICAgICAgIHVzZVZhbHVlOiB7XG4gICAgICAgICAgICAgICAgLi4uU0NMX0RFRkFVTFRfRk9STV9FUlJPUl9NRVNTQUdFUyxcbiAgICAgICAgICAgICAgICAuLi5mb3JtRXJyb3JNZXNzYWdlcyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgXSk7XG59XG4iXX0=
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Input, Component } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
class SclFormMessage {
|
|
6
|
+
constructor(renderer, elRef) {
|
|
7
|
+
this.renderer = renderer;
|
|
8
|
+
this.elRef = elRef;
|
|
9
|
+
this.type = 'basic';
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormMessage, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclFormMessage, isStandalone: true, selector: "scl-form-message", inputs: { type: "type" }, host: { properties: { "class.status-basic": "type === \"basic\"", "class.status-primary": "type === \"primary\"", "class.status-success": "type === \"success\"", "class.status-warning": "type === \"warning\"", "class.status-danger": "type === \"danger\"", "class.status-info": "type === \"info\"", "class.status-control": "type === \"control\"" }, classAttribute: "caption scl-caption" }, ngImport: i0, template: "<ng-container *ngIf=\"control?.invalid && (control?.dirty || control?.touched); else ngContent\"> {{message}} </ng-container>\n<ng-template #ngContent>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
13
|
+
}
|
|
14
|
+
export { SclFormMessage };
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormMessage, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{ selector: 'scl-form-message', host: {
|
|
18
|
+
class: 'caption scl-caption',
|
|
19
|
+
'[class.status-basic]': 'type === "basic"',
|
|
20
|
+
'[class.status-primary]': 'type === "primary"',
|
|
21
|
+
'[class.status-success]': 'type === "success"',
|
|
22
|
+
'[class.status-warning]': 'type === "warning"',
|
|
23
|
+
'[class.status-danger]': 'type === "danger"',
|
|
24
|
+
'[class.status-info]': 'type === "info"',
|
|
25
|
+
'[class.status-control]': 'type === "control"',
|
|
26
|
+
}, standalone: true, imports: [CommonModule], template: "<ng-container *ngIf=\"control?.invalid && (control?.dirty || control?.touched); else ngContent\"> {{message}} </ng-container>\n<ng-template #ngContent>\n <ng-content></ng-content>\n</ng-template>\n" }]
|
|
27
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { type: [{
|
|
28
|
+
type: Input
|
|
29
|
+
}] } });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1tZXNzYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vZm9ybS1tZXNzYWdlL2Zvcm0tbWVzc2FnZS50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL2Zvcm0tbWVzc2FnZS9mb3JtLW1lc3NhZ2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFvQyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFJbkYsTUFnQmEsY0FBYztJQVF2QixZQUNZLFFBQW1CLEVBQ25CLEtBQWlCO1FBRGpCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQVI3QixTQUFJLEdBQXNCLE9BQU8sQ0FBQztJQVMvQixDQUFDOzhHQVhLLGNBQWM7a0dBQWQsY0FBYywyZUNyQjNCLDBNQUlBLDJDRGVjLFlBQVk7O1NBRWIsY0FBYzsyRkFBZCxjQUFjO2tCQWhCMUIsU0FBUzsrQkFDSSxrQkFBa0IsUUFFdEI7d0JBQ0YsS0FBSyxFQUFFLHFCQUFxQjt3QkFDNUIsc0JBQXNCLEVBQUUsa0JBQWtCO3dCQUMxQyx3QkFBd0IsRUFBRSxvQkFBb0I7d0JBQzlDLHdCQUF3QixFQUFFLG9CQUFvQjt3QkFDOUMsd0JBQXdCLEVBQUUsb0JBQW9CO3dCQUM5Qyx1QkFBdUIsRUFBRSxtQkFBbUI7d0JBQzVDLHFCQUFxQixFQUFFLGlCQUFpQjt3QkFDeEMsd0JBQXdCLEVBQUUsb0JBQW9CO3FCQUNqRCxjQUNXLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQzt5SEFJdkIsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgUmVuZGVyZXIyLCBJbnB1dCwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOYkNvbXBvbmVudFN0YXR1cyB9IGZyb20gJ0BuZWJ1bGFyL3RoZW1lJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzY2wtZm9ybS1tZXNzYWdlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1tZXNzYWdlLmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdjYXB0aW9uIHNjbC1jYXB0aW9uJyxcbiAgICAgICAgJ1tjbGFzcy5zdGF0dXMtYmFzaWNdJzogJ3R5cGUgPT09IFwiYmFzaWNcIicsXG4gICAgICAgICdbY2xhc3Muc3RhdHVzLXByaW1hcnldJzogJ3R5cGUgPT09IFwicHJpbWFyeVwiJyxcbiAgICAgICAgJ1tjbGFzcy5zdGF0dXMtc3VjY2Vzc10nOiAndHlwZSA9PT0gXCJzdWNjZXNzXCInLFxuICAgICAgICAnW2NsYXNzLnN0YXR1cy13YXJuaW5nXSc6ICd0eXBlID09PSBcIndhcm5pbmdcIicsXG4gICAgICAgICdbY2xhc3Muc3RhdHVzLWRhbmdlcl0nOiAndHlwZSA9PT0gXCJkYW5nZXJcIicsXG4gICAgICAgICdbY2xhc3Muc3RhdHVzLWluZm9dJzogJ3R5cGUgPT09IFwiaW5mb1wiJyxcbiAgICAgICAgJ1tjbGFzcy5zdGF0dXMtY29udHJvbF0nOiAndHlwZSA9PT0gXCJjb250cm9sXCInLFxuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2NsRm9ybU1lc3NhZ2Uge1xuICAgIEBJbnB1dCgpXG4gICAgdHlwZTogTmJDb21wb25lbnRTdGF0dXMgPSAnYmFzaWMnO1xuXG4gICAgbWVzc2FnZT86IHN0cmluZztcblxuICAgIGNvbnRyb2w/OiBBYnN0cmFjdENvbnRyb2wgfCBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgcHJpdmF0ZSBlbFJlZjogRWxlbWVudFJlZlxuICAgICkge31cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJjb250cm9sPy5pbnZhbGlkICYmIChjb250cm9sPy5kaXJ0eSB8fCBjb250cm9sPy50b3VjaGVkKTsgZWxzZSBuZ0NvbnRlbnRcIj4ge3ttZXNzYWdlfX0gPC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGUgI25nQ29udGVudD5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class SclSelectInputField {
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclSelectInputField, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclSelectInputField, isStandalone: true, selector: "scl-select-input-field", host: { classAttribute: "scl-select-input-field" }, ngImport: i0, template: "<ng-content select=\"ng-select, scl-select-country\"></ng-content>\n<ng-content select=\"input\"></ng-content>\n" }); }
|
|
6
|
+
}
|
|
7
|
+
export { SclSelectInputField };
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclSelectInputField, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{ selector: 'scl-select-input-field', standalone: true, host: {
|
|
11
|
+
class: "scl-select-input-field"
|
|
12
|
+
}, template: "<ng-content select=\"ng-select, scl-select-country\"></ng-content>\n<ng-content select=\"input\"></ng-content>\n" }]
|
|
13
|
+
}] });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWlucHV0LWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vc2VsZWN0LWlucHV0LWZpZWxkL3NlbGVjdC1pbnB1dC1maWVsZC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL3NlbGVjdC1pbnB1dC1maWVsZC9zZWxlY3QtaW5wdXQtZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUxQyxNQVNhLG1CQUFtQjs4R0FBbkIsbUJBQW1CO2tHQUFuQixtQkFBbUIsc0lDWGhDLGtIQUVBOztTRFNhLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQVQvQixTQUFTOytCQUNFLHdCQUF3QixjQUN2QixJQUFJLFFBR1I7d0JBQ0wsS0FBSyxFQUFFLHdCQUF3QjtxQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2NsLXNlbGVjdC1pbnB1dC1maWVsZCcsXG4gIHN0YW5kYWxvbmU6dHJ1ZSxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC1pbnB1dC1maWVsZC5odG1sJyxcblxuICBob3N0IDoge1xuICAgIGNsYXNzOiBcInNjbC1zZWxlY3QtaW5wdXQtZmllbGRcIlxuICB9XG59KVxuZXhwb3J0IGNsYXNzIFNjbFNlbGVjdElucHV0RmllbGQge1xuXG59IiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwibmctc2VsZWN0LCBzY2wtc2VsZWN0LWNvdW50cnlcIj48L25nLWNvbnRlbnQ+XG48bmctY29udGVudCBzZWxlY3Q9XCJpbnB1dFwiPjwvbmctY29udGVudD5cbiJdfQ==
|