@acorex/components 6.5.70 → 6.5.90
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/README.md +7 -3
- package/esm2022/acorex-components.mjs +5 -0
- package/esm2022/index.mjs +158 -0
- package/esm2022/lib/accordion/accordion.component.mjs +45 -0
- package/esm2022/lib/accordion/accordion.module.mjs +20 -0
- package/esm2022/lib/base/base-page.class.mjs +95 -0
- package/esm2022/lib/base/components.class.mjs +17 -0
- package/esm2022/lib/base/element.class.mjs +301 -0
- package/esm2022/lib/base/events.class.mjs +17 -0
- package/esm2022/lib/button/button.component.mjs +74 -0
- package/esm2022/lib/button/button.module.mjs +21 -0
- package/esm2022/lib/calendar/calendar-box/calendar-box.component.mjs +426 -0
- package/esm2022/lib/calendar/calendar-box/calendar-box.module.mjs +22 -0
- package/esm2022/lib/calendar/scheduler/scheduler-views.property.mjs +59 -0
- package/esm2022/lib/calendar/scheduler/scheduler.class.mjs +16 -0
- package/esm2022/lib/calendar/scheduler/scheduler.component.mjs +226 -0
- package/esm2022/lib/calendar/scheduler/scheduler.module.mjs +68 -0
- package/esm2022/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.mjs +136 -0
- package/esm2022/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.mjs +37 -0
- package/esm2022/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.mjs +49 -0
- package/esm2022/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.mjs +102 -0
- package/esm2022/lib/calendar/scheduler/views/month/scheduler-month-view.component.mjs +214 -0
- package/esm2022/lib/calendar/scheduler/views/scheduler-view.component.mjs +99 -0
- package/esm2022/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.mjs +85 -0
- package/esm2022/lib/checkbox/checkbox.component.mjs +102 -0
- package/esm2022/lib/checkbox/checkbox.module.mjs +20 -0
- package/esm2022/lib/color-picker/color-box/color-box.component.mjs +423 -0
- package/esm2022/lib/color-picker/color-picker.component.mjs +89 -0
- package/esm2022/lib/color-picker/color-picker.module.mjs +24 -0
- package/esm2022/lib/context-menu/context-menu.component.mjs +68 -0
- package/esm2022/lib/context-menu/context-menu.directive.mjs +146 -0
- package/esm2022/lib/context-menu/context-menu.module.mjs +20 -0
- package/esm2022/lib/data-filter/columns/filter-column-date.component.mjs +140 -0
- package/esm2022/lib/data-filter/columns/filter-column-number.component.mjs +119 -0
- package/esm2022/lib/data-filter/columns/filter-column-selection.component.mjs +75 -0
- package/esm2022/lib/data-filter/columns/filter-column-string.component.mjs +119 -0
- package/esm2022/lib/data-filter/filter-panel/filter-panel.component.mjs +267 -0
- package/esm2022/lib/data-filter/filter.class.mjs +46 -0
- package/esm2022/lib/data-filter/filter.module.mjs +88 -0
- package/esm2022/lib/data-filter/toolbar/filter-toolbar.component.mjs +168 -0
- package/esm2022/lib/data-list/core/data-list.component.mjs +37 -0
- package/esm2022/lib/data-list/list/list.component.mjs +134 -0
- package/esm2022/lib/data-list/list/list.module.mjs +22 -0
- package/esm2022/lib/data-list/list/toolbar-list-view.component.mjs +84 -0
- package/esm2022/lib/data-source/datasource.component.mjs +47 -0
- package/esm2022/lib/data-source/datasource.module.mjs +18 -0
- package/esm2022/lib/data-source/read-param.mjs +7 -0
- package/esm2022/lib/date-picker/date-picker.component.mjs +718 -0
- package/esm2022/lib/date-picker/date-picker.module.mjs +49 -0
- package/esm2022/lib/dialog/dialog.component.mjs +26 -0
- package/esm2022/lib/dialog/dialog.module.mjs +21 -0
- package/esm2022/lib/dialog/dialog.service.mjs +160 -0
- package/esm2022/lib/drawer/content.component.mjs +18 -0
- package/esm2022/lib/drawer/drawer-container.component.mjs +38 -0
- package/esm2022/lib/drawer/drawer.component.mjs +146 -0
- package/esm2022/lib/drawer/drawer.module.mjs +23 -0
- package/esm2022/lib/dropdown/dropdown.component.mjs +186 -0
- package/esm2022/lib/dropdown/dropdown.module.mjs +26 -0
- package/esm2022/lib/fieldset/fieldset.component.mjs +57 -0
- package/esm2022/lib/fieldset/fieldset.module.mjs +19 -0
- package/esm2022/lib/form-group/form-group.component.mjs +37 -0
- package/esm2022/lib/form-group/form-group.module.mjs +21 -0
- package/esm2022/lib/label/label.component.mjs +19 -0
- package/esm2022/lib/label/label.module.mjs +21 -0
- package/esm2022/lib/loading/loading-indicator.component.mjs +18 -0
- package/esm2022/lib/loading/loading-panel.component.mjs +45 -0
- package/esm2022/lib/loading/loading.module.mjs +21 -0
- package/esm2022/lib/loading/loading.service.mjs +47 -0
- package/esm2022/lib/menu/menu-item.component.mjs +50 -0
- package/esm2022/lib/menu/menu.component.mjs +98 -0
- package/esm2022/lib/menu/menu.module.mjs +22 -0
- package/esm2022/lib/menu/menu2.component.mjs +100 -0
- package/esm2022/lib/number-box/number-box.component.mjs +628 -0
- package/esm2022/lib/number-box/number-box.module.mjs +21 -0
- package/esm2022/lib/page/content.component.mjs +27 -0
- package/esm2022/lib/page/footer.component.mjs +19 -0
- package/esm2022/lib/page/page.component.mjs +57 -0
- package/esm2022/lib/page/page.module.mjs +22 -0
- package/esm2022/lib/panel-box/panel-box.component.mjs +87 -0
- package/esm2022/lib/panel-box/panel-box.module.mjs +19 -0
- package/esm2022/lib/password-box/password-box.component.mjs +32 -0
- package/esm2022/lib/password-box/password-box.module.mjs +23 -0
- package/esm2022/lib/popover/custom-cdk-overlay.service.mjs +50 -0
- package/esm2022/lib/popover/overlay.service.mjs +94 -0
- package/esm2022/lib/popover/popover.component.mjs +145 -0
- package/esm2022/lib/popover/popover.module.mjs +19 -0
- package/esm2022/lib/popup/popup.component.mjs +159 -0
- package/esm2022/lib/popup/popup.module.mjs +25 -0
- package/esm2022/lib/popup/popup.service.mjs +94 -0
- package/esm2022/lib/progress-bar/progress-bar.component.mjs +16 -0
- package/esm2022/lib/progress-bar/progress-bar.module.mjs +19 -0
- package/esm2022/lib/property-editor/editors/check-editor/check-editor.mjs +65 -0
- package/esm2022/lib/property-editor/editors/check-editor/check.module.mjs +22 -0
- package/esm2022/lib/property-editor/editors/color-editor/color.editor.mjs +41 -0
- package/esm2022/lib/property-editor/editors/color-editor/color.module.mjs +24 -0
- package/esm2022/lib/property-editor/editors/column-editor/column.editor.mjs +118 -0
- package/esm2022/lib/property-editor/editors/column-editor/column.module.mjs +32 -0
- package/esm2022/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.mjs +216 -0
- package/esm2022/lib/property-editor/editors/conditional-color-editor/conditional-color.module.mjs +76 -0
- package/esm2022/lib/property-editor/editors/date-editor/date.editor.mjs +87 -0
- package/esm2022/lib/property-editor/editors/date-editor/date.module.mjs +24 -0
- package/esm2022/lib/property-editor/editors/number-editor/number.editor.mjs +66 -0
- package/esm2022/lib/property-editor/editors/number-editor/number.module.mjs +24 -0
- package/esm2022/lib/property-editor/editors/range-editor/range.editor.mjs +145 -0
- package/esm2022/lib/property-editor/editors/range-editor/range.module.mjs +59 -0
- package/esm2022/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.mjs +76 -0
- package/esm2022/lib/property-editor/editors/selectbox-editor/selectbox.editor.mjs +75 -0
- package/esm2022/lib/property-editor/editors/selectbox-editor/selectbox.module.mjs +25 -0
- package/esm2022/lib/property-editor/editors/selection-editor/selection-editor.mjs +73 -0
- package/esm2022/lib/property-editor/editors/selection-editor/selection.module.mjs +22 -0
- package/esm2022/lib/property-editor/editors/switch-editor/number.editor.mjs +30 -0
- package/esm2022/lib/property-editor/editors/switch-editor/number.module.mjs +25 -0
- package/esm2022/lib/property-editor/editors/text-editor/text.editor.mjs +36 -0
- package/esm2022/lib/property-editor/editors/text-editor/text.module.mjs +24 -0
- package/esm2022/lib/property-editor/editors/textarea-editor/textarea.editor.mjs +35 -0
- package/esm2022/lib/property-editor/editors/textarea-editor/textarea.module.mjs +24 -0
- package/esm2022/lib/property-editor/editors/time-editor/time.editor.mjs +47 -0
- package/esm2022/lib/property-editor/editors/time-editor/time.module.mjs +24 -0
- package/esm2022/lib/property-editor/property-editor-renderer.directive.mjs +167 -0
- package/esm2022/lib/property-editor/property-editor.class.mjs +108 -0
- package/esm2022/lib/property-editor/property-editor.module.mjs +194 -0
- package/esm2022/lib/query-builder/query-builder-group.component.mjs +129 -0
- package/esm2022/lib/query-builder/query-builder-popup/query-builder-popup.component.mjs +177 -0
- package/esm2022/lib/query-builder/query-builder-rule.component.mjs +428 -0
- package/esm2022/lib/query-builder/query-builder.class.mjs +42 -0
- package/esm2022/lib/query-builder/query-builder.component.mjs +92 -0
- package/esm2022/lib/query-builder/query-builder.module.mjs +62 -0
- package/esm2022/lib/query-builder/query-builder.service.mjs +199 -0
- package/esm2022/lib/search-bar/search-bar.component.mjs +293 -0
- package/esm2022/lib/search-bar/search-bar.module.mjs +61 -0
- package/esm2022/lib/searchbox/searchbox.component.mjs +82 -0
- package/esm2022/lib/searchbox/searchbox.module.mjs +24 -0
- package/esm2022/lib/selectbox/selectbox.component.mjs +1025 -0
- package/esm2022/lib/selectbox/selectbox.module.mjs +44 -0
- package/esm2022/lib/selectbox/selectbox2.component.mjs +617 -0
- package/esm2022/lib/selection-list/selection-list.component.mjs +113 -0
- package/esm2022/lib/selection-list/selection-list.module.mjs +21 -0
- package/esm2022/lib/switch/switch.component.mjs +55 -0
- package/esm2022/lib/switch/switch.module.mjs +20 -0
- package/esm2022/lib/tab-page/tab-page-Renderer.component.mjs +75 -0
- package/esm2022/lib/tab-page/tab-page-host.component.mjs +124 -0
- package/esm2022/lib/tab-page/tab-page.module.mjs +21 -0
- package/esm2022/lib/tab-page/tab-page.service.mjs +158 -0
- package/esm2022/lib/tab-strip/tab-strip.component.mjs +38 -0
- package/esm2022/lib/tab-strip/tab-strip.module.mjs +19 -0
- package/esm2022/lib/tab-view/dynamic-tabs.directive.mjs +25 -0
- package/esm2022/lib/tab-view/tab-view.component.mjs +110 -0
- package/esm2022/lib/tab-view/tab-view.module.mjs +21 -0
- package/esm2022/lib/tab-view/tab.component.mjs +33 -0
- package/esm2022/lib/textarea/textarea.component.mjs +27 -0
- package/esm2022/lib/textarea/textarea.module.mjs +21 -0
- package/esm2022/lib/textbox/textbox.component.mjs +42 -0
- package/esm2022/lib/textbox/textbox.module.mjs +36 -0
- package/esm2022/lib/time-picker/time-picker.component.mjs +1104 -0
- package/esm2022/lib/time-picker/time-picker.module.mjs +34 -0
- package/esm2022/lib/toast/toast-message/toast-message.component.mjs +76 -0
- package/esm2022/lib/toast/toast-wrapper/toast-wrapper.component.mjs +13 -0
- package/esm2022/lib/toast/toast.module.mjs +21 -0
- package/esm2022/lib/toast/toast.service.mjs +45 -0
- package/esm2022/lib/toolbar/group-button/toolbar-group-button.component.mjs +77 -0
- package/esm2022/lib/toolbar/menu/toolbar-menu.component.mjs +62 -0
- package/esm2022/lib/toolbar/search/toolbar-search.component.mjs +56 -0
- package/esm2022/lib/toolbar/title/toolbar-title.component.mjs +37 -0
- package/esm2022/lib/toolbar/toolbar-item.mjs +4 -0
- package/esm2022/lib/toolbar/toolbar.component.mjs +13 -0
- package/esm2022/lib/toolbar/toolbar.module.mjs +40 -0
- package/esm2022/lib/tooltip/tooltip.directive.mjs +104 -0
- package/esm2022/lib/tooltip/tooltip.module.mjs +19 -0
- package/esm2022/lib/tree-side-menu/tree-side-menu.component.mjs +697 -0
- package/esm2022/lib/tree-side-menu/tree-side-menu.module.mjs +33 -0
- package/esm2022/lib/tree-view/tree-view.component.mjs +854 -0
- package/esm2022/lib/tree-view/tree-view.module.mjs +22 -0
- package/esm2022/lib/upload-file/upload-file.component.mjs +218 -0
- package/esm2022/lib/upload-file/upload-file.events.mjs +2 -0
- package/esm2022/lib/upload-file/upload-file.module.mjs +24 -0
- package/esm2022/lib/validation/validation-form.component.mjs +68 -0
- package/esm2022/lib/validation/validation-rule.widget.mjs +114 -0
- package/esm2022/lib/validation/validation.class.mjs +2 -0
- package/esm2022/lib/validation/validation.component.mjs +89 -0
- package/esm2022/lib/validation/validation.module.mjs +34 -0
- package/{fesm2020 → fesm2022}/acorex-components.mjs +3987 -3087
- package/fesm2022/acorex-components.mjs.map +1 -0
- package/lib/accordion/accordion.component.d.ts +1 -1
- package/lib/base/base-page.class.d.ts +2 -2
- package/lib/base/element.class.d.ts +6 -6
- package/lib/button/button.component.d.ts +1 -1
- package/lib/calendar/calendar-box/calendar-box.component.d.ts +6 -6
- package/lib/calendar/scheduler/scheduler-views.property.d.ts +2 -2
- package/lib/calendar/scheduler/scheduler.class.d.ts +1 -1
- package/lib/calendar/scheduler/scheduler.component.d.ts +1 -1
- package/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.d.ts +1 -1
- package/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.d.ts +1 -1
- package/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.d.ts +1 -1
- package/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.d.ts +1 -1
- package/lib/calendar/scheduler/views/month/scheduler-month-view.component.d.ts +1 -1
- package/lib/calendar/scheduler/views/scheduler-view.component.d.ts +1 -1
- package/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.d.ts +1 -1
- package/lib/checkbox/checkbox.component.d.ts +1 -1
- package/lib/color-picker/color-box/color-box.component.d.ts +1 -1
- package/lib/color-picker/color-picker.component.d.ts +1 -1
- package/lib/context-menu/context-menu.component.d.ts +1 -1
- package/lib/context-menu/context-menu.directive.d.ts +3 -3
- package/lib/data-filter/columns/filter-column-date.component.d.ts +1 -1
- package/lib/data-filter/columns/filter-column-number.component.d.ts +1 -1
- package/lib/data-filter/columns/filter-column-selection.component.d.ts +1 -1
- package/lib/data-filter/columns/filter-column-string.component.d.ts +1 -1
- package/lib/data-filter/filter-panel/filter-panel.component.d.ts +1 -1
- package/lib/data-filter/filter.class.d.ts +1 -1
- package/lib/data-filter/toolbar/filter-toolbar.component.d.ts +1 -1
- package/lib/data-list/core/data-list.component.d.ts +1 -1
- package/lib/data-list/list/list.component.d.ts +1 -1
- package/lib/data-list/list/toolbar-list-view.component.d.ts +2 -2
- package/lib/data-source/datasource.component.d.ts +1 -1
- package/lib/date-picker/date-picker.component.d.ts +1 -1
- package/lib/date-picker/date-picker.module.d.ts +2 -2
- package/lib/dialog/dialog.component.d.ts +1 -1
- package/lib/drawer/content.component.d.ts +1 -1
- package/lib/drawer/drawer-container.component.d.ts +1 -1
- package/lib/drawer/drawer.component.d.ts +3 -3
- package/lib/dropdown/dropdown.component.d.ts +1 -1
- package/lib/fieldset/fieldset.component.d.ts +1 -1
- package/lib/form-group/form-group.component.d.ts +1 -1
- package/lib/label/label.component.d.ts +1 -1
- package/lib/loading/loading-indicator.component.d.ts +1 -1
- package/lib/loading/loading-panel.component.d.ts +1 -1
- package/lib/menu/menu-item.component.d.ts +1 -1
- package/lib/menu/menu.component.d.ts +1 -1
- package/lib/menu/menu2.component.d.ts +1 -1
- package/lib/number-box/number-box.component.d.ts +1 -1
- package/lib/page/content.component.d.ts +1 -1
- package/lib/page/footer.component.d.ts +1 -1
- package/lib/page/page.component.d.ts +1 -1
- package/lib/panel-box/panel-box.component.d.ts +1 -1
- package/lib/password-box/password-box.component.d.ts +1 -1
- package/lib/popover/popover.component.d.ts +1 -1
- package/lib/popup/popup.component.d.ts +1 -1
- package/lib/progress-bar/progress-bar.component.d.ts +1 -1
- package/lib/property-editor/editors/check-editor/check-editor.d.ts +1 -1
- package/lib/property-editor/editors/color-editor/color.editor.d.ts +1 -1
- package/lib/property-editor/editors/column-editor/column.editor.d.ts +1 -1
- package/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.d.ts +1 -1
- package/lib/property-editor/editors/date-editor/date.editor.d.ts +1 -1
- package/lib/property-editor/editors/number-editor/number.editor.d.ts +1 -1
- package/lib/property-editor/editors/range-editor/range.editor.d.ts +1 -1
- package/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.d.ts +1 -1
- package/lib/property-editor/editors/selectbox-editor/selectbox.editor.d.ts +1 -1
- package/lib/property-editor/editors/selection-editor/selection-editor.d.ts +1 -1
- package/lib/property-editor/editors/switch-editor/number.editor.d.ts +1 -1
- package/lib/property-editor/editors/text-editor/text.editor.d.ts +1 -1
- package/lib/property-editor/editors/textarea-editor/textarea.editor.d.ts +1 -1
- package/lib/property-editor/editors/time-editor/time.editor.d.ts +1 -1
- package/lib/property-editor/property-editor-renderer.directive.d.ts +1 -1
- package/lib/property-editor/property-editor.class.d.ts +3 -3
- package/lib/query-builder/query-builder-group.component.d.ts +1 -1
- package/lib/query-builder/query-builder-popup/query-builder-popup.component.d.ts +1 -1
- package/lib/query-builder/query-builder-rule.component.d.ts +3 -3
- package/lib/query-builder/query-builder.class.d.ts +4 -4
- package/lib/query-builder/query-builder.component.d.ts +1 -1
- package/lib/search-bar/search-bar.component.d.ts +1 -1
- package/lib/searchbox/searchbox.component.d.ts +1 -1
- package/lib/selectbox/selectbox.component.d.ts +1 -1
- package/lib/selectbox/selectbox2.component.d.ts +1 -1
- package/lib/selection-list/selection-list.component.d.ts +2 -2
- package/lib/switch/switch.component.d.ts +1 -1
- package/lib/tab-page/tab-page-Renderer.component.d.ts +1 -1
- package/lib/tab-page/tab-page-host.component.d.ts +1 -1
- package/lib/tab-strip/tab-strip.component.d.ts +1 -1
- package/lib/tab-view/dynamic-tabs.directive.d.ts +1 -1
- package/lib/tab-view/tab-view.component.d.ts +1 -1
- package/lib/tab-view/tab.component.d.ts +1 -1
- package/lib/textarea/textarea.component.d.ts +1 -1
- package/lib/textbox/textbox.component.d.ts +1 -1
- package/lib/textbox/textbox.module.d.ts +2 -2
- package/lib/time-picker/time-picker.component.d.ts +1 -1
- package/lib/time-picker/time-picker.module.d.ts +2 -2
- package/lib/toast/toast-message/toast-message.component.d.ts +1 -1
- package/lib/toast/toast-wrapper/toast-wrapper.component.d.ts +1 -1
- package/lib/toolbar/group-button/toolbar-group-button.component.d.ts +1 -1
- package/lib/toolbar/menu/toolbar-menu.component.d.ts +1 -1
- package/lib/toolbar/search/toolbar-search.component.d.ts +1 -1
- package/lib/toolbar/title/toolbar-title.component.d.ts +1 -1
- package/lib/toolbar/toolbar.component.d.ts +1 -1
- package/lib/tooltip/tooltip.directive.d.ts +1 -1
- package/lib/tree-side-menu/tree-side-menu.component.d.ts +1 -1
- package/lib/tree-view/tree-view.component.d.ts +1 -1
- package/lib/upload-file/upload-file.component.d.ts +1 -1
- package/lib/validation/validation-form.component.d.ts +1 -1
- package/lib/validation/validation-rule.widget.d.ts +1 -1
- package/lib/validation/validation.class.d.ts +1 -1
- package/lib/validation/validation.component.d.ts +1 -1
- package/package.json +15 -20
- package/acorex-components.d.ts +0 -5
- package/esm2020/acorex-components.mjs +0 -5
- package/esm2020/lib/accordion/accordion.component.mjs +0 -44
- package/esm2020/lib/accordion/accordion.module.mjs +0 -20
- package/esm2020/lib/base/base-page.class.mjs +0 -94
- package/esm2020/lib/base/components.class.mjs +0 -17
- package/esm2020/lib/base/element.class.mjs +0 -294
- package/esm2020/lib/base/events.class.mjs +0 -11
- package/esm2020/lib/button/button.component.mjs +0 -71
- package/esm2020/lib/button/button.module.mjs +0 -21
- package/esm2020/lib/calendar/calendar-box/calendar-box.component.mjs +0 -413
- package/esm2020/lib/calendar/calendar-box/calendar-box.module.mjs +0 -22
- package/esm2020/lib/calendar/scheduler/scheduler-views.property.mjs +0 -54
- package/esm2020/lib/calendar/scheduler/scheduler.class.mjs +0 -18
- package/esm2020/lib/calendar/scheduler/scheduler.component.mjs +0 -213
- package/esm2020/lib/calendar/scheduler/scheduler.module.mjs +0 -68
- package/esm2020/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.mjs +0 -132
- package/esm2020/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.mjs +0 -37
- package/esm2020/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.mjs +0 -47
- package/esm2020/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.mjs +0 -95
- package/esm2020/lib/calendar/scheduler/views/month/scheduler-month-view.component.mjs +0 -204
- package/esm2020/lib/calendar/scheduler/views/scheduler-view.component.mjs +0 -99
- package/esm2020/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.mjs +0 -77
- package/esm2020/lib/checkbox/checkbox.component.mjs +0 -98
- package/esm2020/lib/checkbox/checkbox.module.mjs +0 -20
- package/esm2020/lib/color-picker/color-box/color-box.component.mjs +0 -422
- package/esm2020/lib/color-picker/color-picker.component.mjs +0 -82
- package/esm2020/lib/color-picker/color-picker.module.mjs +0 -24
- package/esm2020/lib/context-menu/context-menu.component.mjs +0 -65
- package/esm2020/lib/context-menu/context-menu.directive.mjs +0 -135
- package/esm2020/lib/context-menu/context-menu.module.mjs +0 -20
- package/esm2020/lib/data-filter/columns/filter-column-date.component.mjs +0 -138
- package/esm2020/lib/data-filter/columns/filter-column-number.component.mjs +0 -117
- package/esm2020/lib/data-filter/columns/filter-column-selection.component.mjs +0 -74
- package/esm2020/lib/data-filter/columns/filter-column-string.component.mjs +0 -117
- package/esm2020/lib/data-filter/filter-panel/filter-panel.component.mjs +0 -258
- package/esm2020/lib/data-filter/filter.class.mjs +0 -44
- package/esm2020/lib/data-filter/filter.module.mjs +0 -90
- package/esm2020/lib/data-filter/toolbar/filter-toolbar.component.mjs +0 -166
- package/esm2020/lib/data-list/core/data-list.component.mjs +0 -40
- package/esm2020/lib/data-list/list/list.component.mjs +0 -124
- package/esm2020/lib/data-list/list/list.module.mjs +0 -22
- package/esm2020/lib/data-list/list/toolbar-list-view.component.mjs +0 -85
- package/esm2020/lib/data-source/datasource.component.mjs +0 -47
- package/esm2020/lib/data-source/datasource.module.mjs +0 -18
- package/esm2020/lib/data-source/read-param.mjs +0 -5
- package/esm2020/lib/date-picker/date-picker.component.mjs +0 -702
- package/esm2020/lib/date-picker/date-picker.module.mjs +0 -25
- package/esm2020/lib/dialog/dialog.component.mjs +0 -24
- package/esm2020/lib/dialog/dialog.module.mjs +0 -21
- package/esm2020/lib/dialog/dialog.service.mjs +0 -150
- package/esm2020/lib/drawer/content.component.mjs +0 -18
- package/esm2020/lib/drawer/drawer-container.component.mjs +0 -36
- package/esm2020/lib/drawer/drawer.component.mjs +0 -142
- package/esm2020/lib/drawer/drawer.module.mjs +0 -23
- package/esm2020/lib/dropdown/dropdown.component.mjs +0 -176
- package/esm2020/lib/dropdown/dropdown.module.mjs +0 -26
- package/esm2020/lib/fieldset/fieldset.component.mjs +0 -59
- package/esm2020/lib/fieldset/fieldset.module.mjs +0 -19
- package/esm2020/lib/form-group/form-group.component.mjs +0 -34
- package/esm2020/lib/form-group/form-group.module.mjs +0 -21
- package/esm2020/lib/label/label.component.mjs +0 -19
- package/esm2020/lib/label/label.module.mjs +0 -21
- package/esm2020/lib/loading/loading-indicator.component.mjs +0 -17
- package/esm2020/lib/loading/loading-panel.component.mjs +0 -44
- package/esm2020/lib/loading/loading.module.mjs +0 -21
- package/esm2020/lib/loading/loading.service.mjs +0 -45
- package/esm2020/lib/menu/menu-item.component.mjs +0 -47
- package/esm2020/lib/menu/menu.component.mjs +0 -86
- package/esm2020/lib/menu/menu.module.mjs +0 -22
- package/esm2020/lib/menu/menu2.component.mjs +0 -96
- package/esm2020/lib/number-box/number-box.component.mjs +0 -622
- package/esm2020/lib/number-box/number-box.module.mjs +0 -21
- package/esm2020/lib/page/content.component.mjs +0 -32
- package/esm2020/lib/page/footer.component.mjs +0 -19
- package/esm2020/lib/page/page.component.mjs +0 -53
- package/esm2020/lib/page/page.module.mjs +0 -22
- package/esm2020/lib/panel-box/panel-box.component.mjs +0 -88
- package/esm2020/lib/panel-box/panel-box.module.mjs +0 -19
- package/esm2020/lib/password-box/password-box.component.mjs +0 -31
- package/esm2020/lib/password-box/password-box.module.mjs +0 -23
- package/esm2020/lib/popover/custom-cdk-overlay.service.mjs +0 -48
- package/esm2020/lib/popover/overlay.service.mjs +0 -91
- package/esm2020/lib/popover/popover.component.mjs +0 -133
- package/esm2020/lib/popover/popover.module.mjs +0 -19
- package/esm2020/lib/popup/popup.component.mjs +0 -147
- package/esm2020/lib/popup/popup.module.mjs +0 -25
- package/esm2020/lib/popup/popup.service.mjs +0 -93
- package/esm2020/lib/progress-bar/progress-bar.component.mjs +0 -19
- package/esm2020/lib/progress-bar/progress-bar.module.mjs +0 -19
- package/esm2020/lib/property-editor/editors/check-editor/check-editor.mjs +0 -61
- package/esm2020/lib/property-editor/editors/check-editor/check.module.mjs +0 -22
- package/esm2020/lib/property-editor/editors/color-editor/color.editor.mjs +0 -38
- package/esm2020/lib/property-editor/editors/color-editor/color.module.mjs +0 -24
- package/esm2020/lib/property-editor/editors/column-editor/column.editor.mjs +0 -115
- package/esm2020/lib/property-editor/editors/column-editor/column.module.mjs +0 -32
- package/esm2020/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.mjs +0 -211
- package/esm2020/lib/property-editor/editors/conditional-color-editor/conditional-color.module.mjs +0 -78
- package/esm2020/lib/property-editor/editors/date-editor/date.editor.mjs +0 -51
- package/esm2020/lib/property-editor/editors/date-editor/date.module.mjs +0 -24
- package/esm2020/lib/property-editor/editors/number-editor/number.editor.mjs +0 -63
- package/esm2020/lib/property-editor/editors/number-editor/number.module.mjs +0 -24
- package/esm2020/lib/property-editor/editors/range-editor/range.editor.mjs +0 -140
- package/esm2020/lib/property-editor/editors/range-editor/range.module.mjs +0 -61
- package/esm2020/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.mjs +0 -72
- package/esm2020/lib/property-editor/editors/selectbox-editor/selectbox.editor.mjs +0 -71
- package/esm2020/lib/property-editor/editors/selectbox-editor/selectbox.module.mjs +0 -25
- package/esm2020/lib/property-editor/editors/selection-editor/selection-editor.mjs +0 -69
- package/esm2020/lib/property-editor/editors/selection-editor/selection.module.mjs +0 -22
- package/esm2020/lib/property-editor/editors/switch-editor/number.editor.mjs +0 -29
- package/esm2020/lib/property-editor/editors/switch-editor/number.module.mjs +0 -25
- package/esm2020/lib/property-editor/editors/text-editor/text.editor.mjs +0 -32
- package/esm2020/lib/property-editor/editors/text-editor/text.module.mjs +0 -24
- package/esm2020/lib/property-editor/editors/textarea-editor/textarea.editor.mjs +0 -32
- package/esm2020/lib/property-editor/editors/textarea-editor/textarea.module.mjs +0 -24
- package/esm2020/lib/property-editor/editors/time-editor/time.editor.mjs +0 -43
- package/esm2020/lib/property-editor/editors/time-editor/time.module.mjs +0 -24
- package/esm2020/lib/property-editor/property-editor-renderer.directive.mjs +0 -157
- package/esm2020/lib/property-editor/property-editor.class.mjs +0 -102
- package/esm2020/lib/property-editor/property-editor.module.mjs +0 -196
- package/esm2020/lib/query-builder/query-builder-group.component.mjs +0 -124
- package/esm2020/lib/query-builder/query-builder-popup/query-builder-popup.component.mjs +0 -172
- package/esm2020/lib/query-builder/query-builder-rule.component.mjs +0 -399
- package/esm2020/lib/query-builder/query-builder.class.mjs +0 -20
- package/esm2020/lib/query-builder/query-builder.component.mjs +0 -87
- package/esm2020/lib/query-builder/query-builder.module.mjs +0 -62
- package/esm2020/lib/query-builder/query-builder.service.mjs +0 -197
- package/esm2020/lib/search-bar/search-bar.component.mjs +0 -286
- package/esm2020/lib/search-bar/search-bar.module.mjs +0 -63
- package/esm2020/lib/searchbox/searchbox.component.mjs +0 -79
- package/esm2020/lib/searchbox/searchbox.module.mjs +0 -24
- package/esm2020/lib/selectbox/selectbox.component.mjs +0 -961
- package/esm2020/lib/selectbox/selectbox.module.mjs +0 -44
- package/esm2020/lib/selectbox/selectbox2.component.mjs +0 -574
- package/esm2020/lib/selection-list/selection-list.component.mjs +0 -108
- package/esm2020/lib/selection-list/selection-list.module.mjs +0 -21
- package/esm2020/lib/switch/switch.component.mjs +0 -51
- package/esm2020/lib/switch/switch.module.mjs +0 -20
- package/esm2020/lib/tab-page/tab-page-Renderer.component.mjs +0 -71
- package/esm2020/lib/tab-page/tab-page-host.component.mjs +0 -114
- package/esm2020/lib/tab-page/tab-page.module.mjs +0 -21
- package/esm2020/lib/tab-page/tab-page.service.mjs +0 -160
- package/esm2020/lib/tab-strip/tab-strip.component.mjs +0 -36
- package/esm2020/lib/tab-strip/tab-strip.module.mjs +0 -19
- package/esm2020/lib/tab-view/dynamic-tabs.directive.mjs +0 -24
- package/esm2020/lib/tab-view/tab-view.component.mjs +0 -105
- package/esm2020/lib/tab-view/tab-view.module.mjs +0 -21
- package/esm2020/lib/tab-view/tab.component.mjs +0 -30
- package/esm2020/lib/textarea/textarea.component.mjs +0 -26
- package/esm2020/lib/textarea/textarea.module.mjs +0 -21
- package/esm2020/lib/textbox/textbox.component.mjs +0 -39
- package/esm2020/lib/textbox/textbox.module.mjs +0 -24
- package/esm2020/lib/time-picker/time-picker.component.mjs +0 -943
- package/esm2020/lib/time-picker/time-picker.module.mjs +0 -22
- package/esm2020/lib/toast/toast-message/toast-message.component.mjs +0 -74
- package/esm2020/lib/toast/toast-wrapper/toast-wrapper.component.mjs +0 -13
- package/esm2020/lib/toast/toast.module.mjs +0 -21
- package/esm2020/lib/toast/toast.service.mjs +0 -44
- package/esm2020/lib/toolbar/group-button/toolbar-group-button.component.mjs +0 -78
- package/esm2020/lib/toolbar/menu/toolbar-menu.component.mjs +0 -57
- package/esm2020/lib/toolbar/search/toolbar-search.component.mjs +0 -54
- package/esm2020/lib/toolbar/title/toolbar-title.component.mjs +0 -47
- package/esm2020/lib/toolbar/toolbar-item.mjs +0 -6
- package/esm2020/lib/toolbar/toolbar.component.mjs +0 -13
- package/esm2020/lib/toolbar/toolbar.module.mjs +0 -40
- package/esm2020/lib/tooltip/tooltip.directive.mjs +0 -100
- package/esm2020/lib/tooltip/tooltip.module.mjs +0 -19
- package/esm2020/lib/tree-side-menu/tree-side-menu.component.mjs +0 -646
- package/esm2020/lib/tree-side-menu/tree-side-menu.module.mjs +0 -35
- package/esm2020/lib/tree-view/tree-view.component.mjs +0 -775
- package/esm2020/lib/tree-view/tree-view.module.mjs +0 -22
- package/esm2020/lib/upload-file/upload-file.component.mjs +0 -208
- package/esm2020/lib/upload-file/upload-file.events.mjs +0 -2
- package/esm2020/lib/upload-file/upload-file.module.mjs +0 -24
- package/esm2020/lib/validation/validation-form.component.mjs +0 -65
- package/esm2020/lib/validation/validation-rule.widget.mjs +0 -111
- package/esm2020/lib/validation/validation.class.mjs +0 -2
- package/esm2020/lib/validation/validation.component.mjs +0 -89
- package/esm2020/lib/validation/validation.module.mjs +0 -34
- package/esm2020/public-api.mjs +0 -158
- package/fesm2015/acorex-components.mjs +0 -16012
- package/fesm2015/acorex-components.mjs.map +0 -1
- package/fesm2020/acorex-components.mjs.map +0 -1
- /package/{public-api.d.ts → index.d.ts} +0 -0
@@ -0,0 +1,30 @@
|
|
1
|
+
import { Component, ChangeDetectorRef } from '@angular/core';
|
2
|
+
import { AXProperyEditorComponent } from '../../property-editor.class';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "../../../switch/switch.component";
|
5
|
+
export class AXSwitchPropertyEditorComponent extends AXProperyEditorComponent {
|
6
|
+
cdr;
|
7
|
+
constructor(cdr) {
|
8
|
+
super(cdr);
|
9
|
+
this.cdr = cdr;
|
10
|
+
}
|
11
|
+
handleValueChange(e) {
|
12
|
+
super.handleValueChange(e.value);
|
13
|
+
}
|
14
|
+
ngAfterViewInit() {
|
15
|
+
this.onRenderCompleted.emit();
|
16
|
+
}
|
17
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXSwitchPropertyEditorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
18
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: AXSwitchPropertyEditorComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
19
|
+
<ax-switch (onValueChanged)="handleValueChange($event)" [value]="value"></ax-switch>
|
20
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.AXSwitchComponent, selector: "ax-switch", inputs: ["tabIndex", "value", "readonly", "disabled", "size"], outputs: ["onValueChanged", "valueChange"] }] });
|
21
|
+
}
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXSwitchPropertyEditorComponent, decorators: [{
|
23
|
+
type: Component,
|
24
|
+
args: [{
|
25
|
+
template: `
|
26
|
+
<ax-switch (onValueChanged)="handleValueChange($event)" [value]="value"></ax-switch>
|
27
|
+
`,
|
28
|
+
}]
|
29
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmVkaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3Byb3BlcnR5LWVkaXRvci9lZGl0b3JzL3N3aXRjaC1lZGl0b3IvbnVtYmVyLmVkaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7QUFPdkUsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLHdCQUFpQztJQUk1RDtJQUF0QixZQUFzQixHQUFzQjtRQUN4QyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFETyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUU1QyxDQUFDO0lBR0QsaUJBQWlCLENBQUMsQ0FBTTtRQUNwQixLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xDLENBQUM7dUdBZlEsK0JBQStCOzJGQUEvQiwrQkFBK0IsMkVBSjlCOztLQUVUOzsyRkFFUSwrQkFBK0I7a0JBTDNDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFOztLQUVUO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIENoYW5nZURldGVjdG9yUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhQcm9wZXJ5RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcHJvcGVydHktZWRpdG9yLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8YXgtc3dpdGNoIChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQpXCIgW3ZhbHVlXT1cInZhbHVlXCI+PC9heC1zd2l0Y2g+XHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhTd2l0Y2hQcm9wZXJ0eUVkaXRvckNvbXBvbmVudCBleHRlbmRzIEFYUHJvcGVyeUVkaXRvckNvbXBvbmVudDxib29sZWFuPiAge1xyXG5cclxuXHJcblxyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgICAgICBzdXBlcihjZHIpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBoYW5kbGVWYWx1ZUNoYW5nZShlOiBhbnkpIHtcclxuICAgICAgICBzdXBlci5oYW5kbGVWYWx1ZUNoYW5nZShlLnZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICAgICAgdGhpcy5vblJlbmRlckNvbXBsZXRlZC5lbWl0KCk7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ==
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { FormsModule } from '@angular/forms';
|
4
|
+
import { AXNumberBoxModule } from '../../../number-box/number-box.module';
|
5
|
+
import { AXValidationModule } from '../../../validation/validation.module';
|
6
|
+
import { AXSwitchPropertyEditorComponent } from './number.editor';
|
7
|
+
import { AXSwitchModule } from '../../../switch/switch.module';
|
8
|
+
import * as i0 from "@angular/core";
|
9
|
+
export class AXSwitchPropertyEditorModule {
|
10
|
+
constructor() {
|
11
|
+
}
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXSwitchPropertyEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
13
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: AXSwitchPropertyEditorModule, declarations: [AXSwitchPropertyEditorComponent], imports: [CommonModule, FormsModule, AXNumberBoxModule, AXValidationModule, AXSwitchModule], exports: [AXSwitchPropertyEditorComponent] });
|
14
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXSwitchPropertyEditorModule, imports: [CommonModule, FormsModule, AXNumberBoxModule, AXValidationModule, AXSwitchModule] });
|
15
|
+
}
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXSwitchPropertyEditorModule, decorators: [{
|
17
|
+
type: NgModule,
|
18
|
+
args: [{
|
19
|
+
declarations: [AXSwitchPropertyEditorComponent],
|
20
|
+
imports: [CommonModule, FormsModule, AXNumberBoxModule, AXValidationModule, AXSwitchModule],
|
21
|
+
exports: [AXSwitchPropertyEditorComponent],
|
22
|
+
providers: []
|
23
|
+
}]
|
24
|
+
}], ctorParameters: function () { return []; } });
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3Byb3BlcnR5LWVkaXRvci9lZGl0b3JzL3N3aXRjaC1lZGl0b3IvbnVtYmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQVcvRCxNQUFNLE9BQU8sNEJBQTRCO0lBQ3JDO0lBQ0EsQ0FBQzt1R0FGUSw0QkFBNEI7d0dBQTVCLDRCQUE0QixpQkFMdEIsK0JBQStCLGFBQ3BDLFlBQVksRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxhQUNoRiwrQkFBK0I7d0dBR2hDLDRCQUE0QixZQUozQixZQUFZLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLGNBQWM7OzJGQUlqRiw0QkFBNEI7a0JBTnhDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsK0JBQStCLENBQUM7b0JBQy9DLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxDQUFDO29CQUMzRixPQUFPLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztvQkFDMUMsU0FBUyxFQUFFLEVBQUU7aUJBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEFYTnVtYmVyQm94TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vbnVtYmVyLWJveC9udW1iZXItYm94Lm1vZHVsZSc7XHJcbmltcG9ydCB7IEFYVmFsaWRhdGlvbk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL3ZhbGlkYXRpb24vdmFsaWRhdGlvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFN3aXRjaFByb3BlcnR5RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9udW1iZXIuZWRpdG9yJztcclxuaW1wb3J0IHsgQVhTd2l0Y2hNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9zd2l0Y2gvc3dpdGNoLm1vZHVsZSc7XHJcblxyXG5cclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbQVhTd2l0Y2hQcm9wZXJ0eUVkaXRvckNvbXBvbmVudF0sXHJcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgQVhOdW1iZXJCb3hNb2R1bGUsIEFYVmFsaWRhdGlvbk1vZHVsZSwgQVhTd2l0Y2hNb2R1bGVdLFxyXG4gICAgZXhwb3J0czogW0FYU3dpdGNoUHJvcGVydHlFZGl0b3JDb21wb25lbnRdLFxyXG4gICAgcHJvdmlkZXJzOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhTd2l0Y2hQcm9wZXJ0eUVkaXRvck1vZHVsZSB7XHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIH1cclxufSJdfQ==
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import { Component, ChangeDetectorRef, ViewChild } from '@angular/core';
|
2
|
+
import { AXTextBoxComponent } from '../../../textbox/textbox.component';
|
3
|
+
import { AXProperyEditorComponent } from '../../property-editor.class';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "../../../textbox/textbox.component";
|
6
|
+
import * as i2 from "../../../validation/validation.component";
|
7
|
+
export class AXTextPropertyEditorComponent extends AXProperyEditorComponent {
|
8
|
+
cdr;
|
9
|
+
textBox;
|
10
|
+
validation;
|
11
|
+
clearButton = false;
|
12
|
+
mask;
|
13
|
+
maskGuid = false;
|
14
|
+
showMask = true;
|
15
|
+
constructor(cdr) {
|
16
|
+
super(cdr);
|
17
|
+
this.cdr = cdr;
|
18
|
+
}
|
19
|
+
handleValueChange(e) {
|
20
|
+
super.handleValueChange(e.value);
|
21
|
+
}
|
22
|
+
ngAfterViewInit() {
|
23
|
+
this.registerForValidationForm(this.textBox);
|
24
|
+
this.onRenderCompleted.emit();
|
25
|
+
}
|
26
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextPropertyEditorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
27
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: AXTextPropertyEditorComponent, selector: "ng-component", viewQueries: [{ propertyName: "textBox", first: true, predicate: AXTextBoxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ax-text-box (onValueChanged)=\"handleValueChange($event)\" [value]=\"value\" [readonly]=\"readonly\"\r\n [allowClear]=\"clearButton\" [mask]=\"mask\" [maskGuid]=\"maskGuid\" [showMask]=\"showMask\">\r\n <ax-validation [rules]=\"validation?.rules\">\r\n </ax-validation>\r\n</ax-text-box>", dependencies: [{ kind: "component", type: i1.AXTextBoxComponent, selector: "ax-text-box", inputs: ["mask", "type", "showMask", "maxLength", "maskGuid", "maskPlaceholder", "maskKeepCharPositions"] }, { kind: "component", type: i2.AXValidationComponent, selector: "ax-validation", inputs: ["rules", "validateOn"], outputs: ["rulesChange", "showMessage"] }] });
|
28
|
+
}
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextPropertyEditorComponent, decorators: [{
|
30
|
+
type: Component,
|
31
|
+
args: [{ template: "<ax-text-box (onValueChanged)=\"handleValueChange($event)\" [value]=\"value\" [readonly]=\"readonly\"\r\n [allowClear]=\"clearButton\" [mask]=\"mask\" [maskGuid]=\"maskGuid\" [showMask]=\"showMask\">\r\n <ax-validation [rules]=\"validation?.rules\">\r\n </ax-validation>\r\n</ax-text-box>" }]
|
32
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { textBox: [{
|
33
|
+
type: ViewChild,
|
34
|
+
args: [AXTextBoxComponent]
|
35
|
+
}] } });
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5lZGl0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wcm9wZXJ0eS1lZGl0b3IvZWRpdG9ycy90ZXh0LWVkaXRvci90ZXh0LmVkaXRvci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3Byb3BlcnR5LWVkaXRvci9lZGl0b3JzL3RleHQtZWRpdG9yL3RleHQuZWRpdG9yLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFeEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUFLdkUsTUFBTSxPQUFPLDZCQUE4QixTQUFRLHdCQUFnQztJQVUzRDtJQVJkLE9BQU8sQ0FBcUI7SUFFcEMsVUFBVSxDQUFlO0lBQ3pCLFdBQVcsR0FBWSxLQUFLLENBQUM7SUFDN0IsSUFBSSxDQUFNO0lBQ1YsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixRQUFRLEdBQVksSUFBSSxDQUFDO0lBRXpCLFlBQXNCLEdBQXNCO1FBQzFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQURTLFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBRTVDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxDQUFNO1FBQ3RCLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQyxDQUFDO3VHQXJCVSw2QkFBNkI7MkZBQTdCLDZCQUE2Qiw2RkFDN0Isa0JBQWtCLHVFQ1QvQiwyU0FJYzs7MkZESUQsNkJBQTZCO2tCQUh6QyxTQUFTOzt3R0FLQSxPQUFPO3NCQURkLFNBQVM7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3RvclJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYVGV4dEJveENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBWFZhbGlkYXRpb24gfSBmcm9tICcuLi8uLi8uLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhQcm9wZXJ5RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcHJvcGVydHktZWRpdG9yLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LmVkaXRvci5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhUZXh0UHJvcGVydHlFZGl0b3JDb21wb25lbnQgZXh0ZW5kcyBBWFByb3BlcnlFZGl0b3JDb21wb25lbnQ8c3RyaW5nPiB7XHJcbiAgQFZpZXdDaGlsZChBWFRleHRCb3hDb21wb25lbnQpXHJcbiAgcHJpdmF0ZSB0ZXh0Qm94OiBBWFRleHRCb3hDb21wb25lbnQ7XHJcblxyXG4gIHZhbGlkYXRpb246IEFYVmFsaWRhdGlvbjtcclxuICBjbGVhckJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG1hc2s6IGFueTtcclxuICBtYXNrR3VpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNob3dNYXNrOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgIHN1cGVyKGNkcik7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVWYWx1ZUNoYW5nZShlOiBhbnkpIHtcclxuICAgIHN1cGVyLmhhbmRsZVZhbHVlQ2hhbmdlKGUudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5yZWdpc3RlckZvclZhbGlkYXRpb25Gb3JtKHRoaXMudGV4dEJveCk7XHJcbiAgICB0aGlzLm9uUmVuZGVyQ29tcGxldGVkLmVtaXQoKTtcclxuICB9XHJcbn1cclxuIiwiPGF4LXRleHQtYm94IChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQpXCIgW3ZhbHVlXT1cInZhbHVlXCIgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgIFthbGxvd0NsZWFyXT1cImNsZWFyQnV0dG9uXCIgW21hc2tdPVwibWFza1wiIFttYXNrR3VpZF09XCJtYXNrR3VpZFwiIFtzaG93TWFza109XCJzaG93TWFza1wiPlxyXG4gICAgPGF4LXZhbGlkYXRpb24gW3J1bGVzXT1cInZhbGlkYXRpb24/LnJ1bGVzXCI+XHJcbiAgICA8L2F4LXZhbGlkYXRpb24+XHJcbjwvYXgtdGV4dC1ib3g+Il19
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { AXTextPropertyEditorComponent } from './text.editor';
|
4
|
+
import { FormsModule } from '@angular/forms';
|
5
|
+
import { AXTextBoxModule } from '../../../textbox/textbox.module';
|
6
|
+
import { AXValidationModule } from '../../../validation/validation.module';
|
7
|
+
import * as i0 from "@angular/core";
|
8
|
+
export class AXTextPropertyEditorModule {
|
9
|
+
constructor() {
|
10
|
+
}
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextPropertyEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
12
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: AXTextPropertyEditorModule, declarations: [AXTextPropertyEditorComponent], imports: [CommonModule, FormsModule, AXTextBoxModule, AXValidationModule], exports: [AXTextPropertyEditorComponent] });
|
13
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextPropertyEditorModule, imports: [CommonModule, FormsModule, AXTextBoxModule, AXValidationModule] });
|
14
|
+
}
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextPropertyEditorModule, decorators: [{
|
16
|
+
type: NgModule,
|
17
|
+
args: [{
|
18
|
+
declarations: [AXTextPropertyEditorComponent],
|
19
|
+
imports: [CommonModule, FormsModule, AXTextBoxModule, AXValidationModule],
|
20
|
+
exports: [AXTextPropertyEditorComponent],
|
21
|
+
providers: []
|
22
|
+
}]
|
23
|
+
}], ctorParameters: function () { return []; } });
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wcm9wZXJ0eS1lZGl0b3IvZWRpdG9ycy90ZXh0LWVkaXRvci90ZXh0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFXM0UsTUFBTSxPQUFPLDBCQUEwQjtJQUNuQztJQUNBLENBQUM7dUdBRlEsMEJBQTBCO3dHQUExQiwwQkFBMEIsaUJBTHBCLDZCQUE2QixhQUNsQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsYUFDOUQsNkJBQTZCO3dHQUc5QiwwQkFBMEIsWUFKekIsWUFBWSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsa0JBQWtCOzsyRkFJL0QsMEJBQTBCO2tCQU50QyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLDZCQUE2QixDQUFDO29CQUM3QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQztvQkFDekUsT0FBTyxFQUFFLENBQUMsNkJBQTZCLENBQUM7b0JBQ3hDLFNBQVMsRUFBRSxFQUFFO2lCQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEFYVGV4dFByb3BlcnR5RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi90ZXh0LmVkaXRvcic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBWFRleHRCb3hNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi90ZXh0Ym94L3RleHRib3gubW9kdWxlJztcclxuaW1wb3J0IHsgQVhWYWxpZGF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLm1vZHVsZSc7XHJcblxyXG5cclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbQVhUZXh0UHJvcGVydHlFZGl0b3JDb21wb25lbnRdLFxyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIEFYVGV4dEJveE1vZHVsZSwgQVhWYWxpZGF0aW9uTW9kdWxlXSxcclxuICAgIGV4cG9ydHM6IFtBWFRleHRQcm9wZXJ0eUVkaXRvckNvbXBvbmVudF0sXHJcbiAgICBwcm92aWRlcnM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFRleHRQcm9wZXJ0eUVkaXRvck1vZHVsZSB7XHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIH1cclxufSJdfQ==
|
@@ -0,0 +1,35 @@
|
|
1
|
+
import { Component, ChangeDetectorRef, ViewChild } from '@angular/core';
|
2
|
+
import { AXTextBoxComponent } from '../../../textbox/textbox.component';
|
3
|
+
import { AXProperyEditorComponent } from '../../property-editor.class';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "../../../textarea/textarea.component";
|
6
|
+
import * as i2 from "../../../validation/validation.component";
|
7
|
+
export class AXTextareaPropertyEditorComponent extends AXProperyEditorComponent {
|
8
|
+
cdr;
|
9
|
+
textBox;
|
10
|
+
validation;
|
11
|
+
clearButton = false;
|
12
|
+
placeholder = null;
|
13
|
+
rows = 3;
|
14
|
+
constructor(cdr) {
|
15
|
+
super(cdr);
|
16
|
+
this.cdr = cdr;
|
17
|
+
}
|
18
|
+
handleValueChange(e) {
|
19
|
+
super.handleValueChange(e.value);
|
20
|
+
}
|
21
|
+
ngAfterViewInit() {
|
22
|
+
this.registerForValidationForm(this.textBox);
|
23
|
+
this.onRenderCompleted.emit();
|
24
|
+
}
|
25
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextareaPropertyEditorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
26
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: AXTextareaPropertyEditorComponent, selector: "ng-component", viewQueries: [{ propertyName: "textBox", first: true, predicate: AXTextBoxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ax-text-area (onValueChanged)=\"handleValueChange($event)\" [value]=\"value\" \r\n [readonly]=\"readonly\" \r\n [allowClear]=\"clearButton\"\r\n [placeholder]=\"placeholder\"\r\n [rows]=\"rows\"\r\n >\r\n <ax-validation [rules]=\"validation?.rules\">\r\n </ax-validation>\r\n</ax-text-area>\r\n", dependencies: [{ kind: "component", type: i1.AXTextAreaComponent, selector: "ax-text-area", inputs: ["rows", "cols", "maxLength"] }, { kind: "component", type: i2.AXValidationComponent, selector: "ax-validation", inputs: ["rules", "validateOn"], outputs: ["rulesChange", "showMessage"] }] });
|
27
|
+
}
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextareaPropertyEditorComponent, decorators: [{
|
29
|
+
type: Component,
|
30
|
+
args: [{ template: "<ax-text-area (onValueChanged)=\"handleValueChange($event)\" [value]=\"value\" \r\n [readonly]=\"readonly\" \r\n [allowClear]=\"clearButton\"\r\n [placeholder]=\"placeholder\"\r\n [rows]=\"rows\"\r\n >\r\n <ax-validation [rules]=\"validation?.rules\">\r\n </ax-validation>\r\n</ax-text-area>\r\n" }]
|
31
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { textBox: [{
|
32
|
+
type: ViewChild,
|
33
|
+
args: [AXTextBoxComponent]
|
34
|
+
}] } });
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuZWRpdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvcHJvcGVydHktZWRpdG9yL2VkaXRvcnMvdGV4dGFyZWEtZWRpdG9yL3RleHRhcmVhLmVkaXRvci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3Byb3BlcnR5LWVkaXRvci9lZGl0b3JzL3RleHRhcmVhLWVkaXRvci90ZXh0YXJlYS5lZGl0b3IuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFHLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV4RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQUt2RSxNQUFNLE9BQU8saUNBQWtDLFNBQVEsd0JBQWdDO0lBYTdEO0lBVGQsT0FBTyxDQUFxQjtJQUdwQyxVQUFVLENBQWU7SUFDekIsV0FBVyxHQUFZLEtBQUssQ0FBQztJQUM3QixXQUFXLEdBQVcsSUFBSSxDQUFDO0lBQzNCLElBQUksR0FBVyxDQUFDLENBQUM7SUFHakIsWUFBc0IsR0FBc0I7UUFDeEMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRE8sUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFFNUMsQ0FBQztJQUdELGlCQUFpQixDQUFDLENBQU07UUFDcEIsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBR0QsZUFBZTtRQUNYLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xDLENBQUM7dUdBMUJRLGlDQUFpQzsyRkFBakMsaUNBQWlDLDZGQUcvQixrQkFBa0IsdUVDWGpDLGtWQVNBOzsyRkREYSxpQ0FBaUM7a0JBSDdDLFNBQVM7O3dHQU9FLE9BQU87c0JBRGQsU0FBUzt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsICBDaGFuZ2VEZXRlY3RvclJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYVGV4dEJveENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBWFZhbGlkYXRpb24gfSBmcm9tICcuLi8uLi8uLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhQcm9wZXJ5RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcHJvcGVydHktZWRpdG9yLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHRhcmVhLmVkaXRvci5odG1sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYVGV4dGFyZWFQcm9wZXJ0eUVkaXRvckNvbXBvbmVudCBleHRlbmRzIEFYUHJvcGVyeUVkaXRvckNvbXBvbmVudDxzdHJpbmc+ICB7XHJcblxyXG5cclxuICAgIEBWaWV3Q2hpbGQoQVhUZXh0Qm94Q29tcG9uZW50KVxyXG4gICAgcHJpdmF0ZSB0ZXh0Qm94OiBBWFRleHRCb3hDb21wb25lbnQ7XHJcblxyXG5cclxuICAgIHZhbGlkYXRpb246IEFYVmFsaWRhdGlvbjtcclxuICAgIGNsZWFyQnV0dG9uOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwbGFjZWhvbGRlcjogc3RyaW5nID0gbnVsbDtcclxuICAgIHJvd3M6IG51bWJlciA9IDM7XHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgICAgICAgc3VwZXIoY2RyKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgaGFuZGxlVmFsdWVDaGFuZ2UoZTogYW55KSB7XHJcbiAgICAgICAgc3VwZXIuaGFuZGxlVmFsdWVDaGFuZ2UoZS52YWx1ZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICB0aGlzLnJlZ2lzdGVyRm9yVmFsaWRhdGlvbkZvcm0odGhpcy50ZXh0Qm94KTtcclxuICAgICAgICB0aGlzLm9uUmVuZGVyQ29tcGxldGVkLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbn1cclxuIiwiPGF4LXRleHQtYXJlYSAob25WYWx1ZUNoYW5nZWQpPVwiaGFuZGxlVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIFt2YWx1ZV09XCJ2YWx1ZVwiIFxyXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiIFxyXG4gICAgICAgIFthbGxvd0NsZWFyXT1cImNsZWFyQnV0dG9uXCJcclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgIFtyb3dzXT1cInJvd3NcIlxyXG4gICAgICAgID5cclxuICAgIDxheC12YWxpZGF0aW9uIFtydWxlc109XCJ2YWxpZGF0aW9uPy5ydWxlc1wiPlxyXG4gICAgPC9heC12YWxpZGF0aW9uPlxyXG48L2F4LXRleHQtYXJlYT5cclxuIl19
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { AXTextareaPropertyEditorComponent } from './textarea.editor';
|
4
|
+
import { FormsModule } from '@angular/forms';
|
5
|
+
import { AXTextAreaModule } from '../../../textarea/textarea.module';
|
6
|
+
import { AXValidationModule } from '../../../validation/validation.module';
|
7
|
+
import * as i0 from "@angular/core";
|
8
|
+
export class AXTextareaPropertyEditorModule {
|
9
|
+
constructor() {
|
10
|
+
}
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextareaPropertyEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
12
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: AXTextareaPropertyEditorModule, declarations: [AXTextareaPropertyEditorComponent], imports: [CommonModule, FormsModule, AXTextAreaModule, AXValidationModule], exports: [AXTextareaPropertyEditorComponent] });
|
13
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextareaPropertyEditorModule, imports: [CommonModule, FormsModule, AXTextAreaModule, AXValidationModule] });
|
14
|
+
}
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTextareaPropertyEditorModule, decorators: [{
|
16
|
+
type: NgModule,
|
17
|
+
args: [{
|
18
|
+
declarations: [AXTextareaPropertyEditorComponent],
|
19
|
+
imports: [CommonModule, FormsModule, AXTextAreaModule, AXValidationModule],
|
20
|
+
exports: [AXTextareaPropertyEditorComponent],
|
21
|
+
providers: []
|
22
|
+
}]
|
23
|
+
}], ctorParameters: function () { return []; } });
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvcHJvcGVydHktZWRpdG9yL2VkaXRvcnMvdGV4dGFyZWEtZWRpdG9yL3RleHRhcmVhLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBVzNFLE1BQU0sT0FBTyw4QkFBOEI7SUFDdkM7SUFDQSxDQUFDO3VHQUZRLDhCQUE4Qjt3R0FBOUIsOEJBQThCLGlCQUx4QixpQ0FBaUMsYUFDdEMsWUFBWSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsYUFDL0QsaUNBQWlDO3dHQUdsQyw4QkFBOEIsWUFKN0IsWUFBWSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0I7OzJGQUloRSw4QkFBOEI7a0JBTjFDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsaUNBQWlDLENBQUM7b0JBQ2pELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLENBQUM7b0JBQzFFLE9BQU8sRUFBRSxDQUFDLGlDQUFpQyxDQUFDO29CQUM1QyxTQUFTLEVBQUUsRUFBRTtpQkFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBBWFRleHRhcmVhUHJvcGVydHlFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL3RleHRhcmVhLmVkaXRvcic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBWFRleHRBcmVhTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vdGV4dGFyZWEvdGV4dGFyZWEubW9kdWxlJztcclxuaW1wb3J0IHsgQVhWYWxpZGF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLm1vZHVsZSc7XHJcblxyXG5cclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbQVhUZXh0YXJlYVByb3BlcnR5RWRpdG9yQ29tcG9uZW50XSxcclxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBBWFRleHRBcmVhTW9kdWxlLCBBWFZhbGlkYXRpb25Nb2R1bGVdLFxyXG4gICAgZXhwb3J0czogW0FYVGV4dGFyZWFQcm9wZXJ0eUVkaXRvckNvbXBvbmVudF0sXHJcbiAgICBwcm92aWRlcnM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFRleHRhcmVhUHJvcGVydHlFZGl0b3JNb2R1bGUge1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB9XHJcbn1cclxuIl19
|
@@ -0,0 +1,47 @@
|
|
1
|
+
import { Component, ChangeDetectorRef, ViewChild } from '@angular/core';
|
2
|
+
import { AXDatePickerComponent } from '../../../date-picker/date-picker.component';
|
3
|
+
import { AXProperyEditorComponent } from '../../property-editor.class';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "../../../time-picker/time-picker.component";
|
6
|
+
import * as i2 from "../../../validation/validation.component";
|
7
|
+
export class AXTimePropertyEditorComponent extends AXProperyEditorComponent {
|
8
|
+
cdr;
|
9
|
+
timeType;
|
10
|
+
validation;
|
11
|
+
showCurentTime = false;
|
12
|
+
clearButton = false;
|
13
|
+
time;
|
14
|
+
constructor(cdr) {
|
15
|
+
super(cdr);
|
16
|
+
this.cdr = cdr;
|
17
|
+
}
|
18
|
+
handleValueChange(e) {
|
19
|
+
super.handleValueChange(e.value?.time);
|
20
|
+
}
|
21
|
+
ngAfterViewInit() {
|
22
|
+
this.registerForValidationForm(this.time);
|
23
|
+
this.onRenderCompleted.emit();
|
24
|
+
}
|
25
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTimePropertyEditorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
26
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: AXTimePropertyEditorComponent, selector: "ng-component", viewQueries: [{ propertyName: "time", first: true, predicate: AXDatePickerComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
27
|
+
<ax-time-picker [showCurentTime]="showCurentTime" [timeType]="timeType" [allowClear]="clearButton" (onValueChanged)="handleValueChange($event)">
|
28
|
+
<ax-validation [rules]="validation?.rules">
|
29
|
+
</ax-validation>
|
30
|
+
</ax-time-picker>
|
31
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.AXTimePickerComponent, selector: "ax-time-picker", inputs: ["timeType", "showCurentTime"], outputs: ["onValueChanged"] }, { kind: "component", type: i2.AXValidationComponent, selector: "ax-validation", inputs: ["rules", "validateOn"], outputs: ["rulesChange", "showMessage"] }] });
|
32
|
+
}
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTimePropertyEditorComponent, decorators: [{
|
34
|
+
type: Component,
|
35
|
+
args: [{
|
36
|
+
template: `
|
37
|
+
<ax-time-picker [showCurentTime]="showCurentTime" [timeType]="timeType" [allowClear]="clearButton" (onValueChanged)="handleValueChange($event)">
|
38
|
+
<ax-validation [rules]="validation?.rules">
|
39
|
+
</ax-validation>
|
40
|
+
</ax-time-picker>
|
41
|
+
`,
|
42
|
+
}]
|
43
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { time: [{
|
44
|
+
type: ViewChild,
|
45
|
+
args: [AXDatePickerComponent]
|
46
|
+
}] } });
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5lZGl0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wcm9wZXJ0eS1lZGl0b3IvZWRpdG9ycy90aW1lLWVkaXRvci90aW1lLmVkaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVuRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQVV2RSxNQUFNLE9BQU8sNkJBQThCLFNBQVEsd0JBQWdDO0lBV3pEO0lBUnRCLFFBQVEsQ0FBTTtJQUNkLFVBQVUsQ0FBZTtJQUN6QixjQUFjLEdBQVksS0FBSyxDQUFDO0lBQ2hDLFdBQVcsR0FBWSxLQUFLLENBQUM7SUFHckIsSUFBSSxDQUF3QjtJQUVwQyxZQUFzQixHQUFzQjtRQUN4QyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFETyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUU1QyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsQ0FBTTtRQUNwQixLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xDLENBQUM7dUdBdEJRLDZCQUE2QjsyRkFBN0IsNkJBQTZCLDBGQVEzQixxQkFBcUIsdUVBZnRCOzs7OztVQUtKOzsyRkFFRyw2QkFBNkI7a0JBUnpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFOzs7OztVQUtKO2lCQUNUO3dHQVVXLElBQUk7c0JBRFgsU0FBUzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWERhdGVQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBWFZhbGlkYXRpb24gfSBmcm9tICcuLi8uLi8uLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhQcm9wZXJ5RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcHJvcGVydHktZWRpdG9yLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgIDxheC10aW1lLXBpY2tlciBbc2hvd0N1cmVudFRpbWVdPVwic2hvd0N1cmVudFRpbWVcIiBbdGltZVR5cGVdPVwidGltZVR5cGVcIiBbYWxsb3dDbGVhcl09XCJjbGVhckJ1dHRvblwiIChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQpXCI+XHJcbiAgICAgICAgPGF4LXZhbGlkYXRpb24gW3J1bGVzXT1cInZhbGlkYXRpb24/LnJ1bGVzXCI+XHJcbiAgICAgICAgPC9heC12YWxpZGF0aW9uPlxyXG4gICAgPC9heC10aW1lLXBpY2tlcj5cclxuICAgICAgICAgYCxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYVGltZVByb3BlcnR5RWRpdG9yQ29tcG9uZW50IGV4dGVuZHMgQVhQcm9wZXJ5RWRpdG9yQ29tcG9uZW50PFN0cmluZz4gIHtcclxuXHJcblxyXG4gICAgdGltZVR5cGU6IGFueTtcclxuICAgIHZhbGlkYXRpb246IEFYVmFsaWRhdGlvbjtcclxuICAgIHNob3dDdXJlbnRUaW1lOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBjbGVhckJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoQVhEYXRlUGlja2VyQ29tcG9uZW50KVxyXG4gICAgcHJpdmF0ZSB0aW1lOiBBWERhdGVQaWNrZXJDb21wb25lbnQ7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgICAgICBzdXBlcihjZHIpO1xyXG4gICAgfVxyXG5cclxuICAgIGhhbmRsZVZhbHVlQ2hhbmdlKGU6IGFueSkge1xyXG4gICAgICAgIHN1cGVyLmhhbmRsZVZhbHVlQ2hhbmdlKGUudmFsdWU/LnRpbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICB0aGlzLnJlZ2lzdGVyRm9yVmFsaWRhdGlvbkZvcm0odGhpcy50aW1lKTtcclxuICAgICAgICB0aGlzLm9uUmVuZGVyQ29tcGxldGVkLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbn1cclxuIl19
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { FormsModule } from '@angular/forms';
|
4
|
+
import { AXValidationModule } from '../../../validation/validation.module';
|
5
|
+
import { AXTimePickerModule } from '../../../time-picker/time-picker.module';
|
6
|
+
import { AXTimePropertyEditorComponent } from './time.editor';
|
7
|
+
import * as i0 from "@angular/core";
|
8
|
+
export class AXTimePropertyEditorModule {
|
9
|
+
constructor() {
|
10
|
+
}
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTimePropertyEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
12
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: AXTimePropertyEditorModule, declarations: [AXTimePropertyEditorComponent], imports: [CommonModule, FormsModule, AXTimePickerModule, AXValidationModule], exports: [AXTimePropertyEditorComponent] });
|
13
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTimePropertyEditorModule, imports: [CommonModule, FormsModule, AXTimePickerModule, AXValidationModule] });
|
14
|
+
}
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXTimePropertyEditorModule, decorators: [{
|
16
|
+
type: NgModule,
|
17
|
+
args: [{
|
18
|
+
declarations: [AXTimePropertyEditorComponent],
|
19
|
+
imports: [CommonModule, FormsModule, AXTimePickerModule, AXValidationModule],
|
20
|
+
exports: [AXTimePropertyEditorComponent],
|
21
|
+
providers: []
|
22
|
+
}]
|
23
|
+
}], ctorParameters: function () { return []; } });
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wcm9wZXJ0eS1lZGl0b3IvZWRpdG9ycy90aW1lLWVkaXRvci90aW1lLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVc5RCxNQUFNLE9BQU8sMEJBQTBCO0lBQ25DO0lBQ0EsQ0FBQzt1R0FGUSwwQkFBMEI7d0dBQTFCLDBCQUEwQixpQkFMcEIsNkJBQTZCLGFBQ2xDLFlBQVksRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLGFBQ2pFLDZCQUE2Qjt3R0FHOUIsMEJBQTBCLFlBSnpCLFlBQVksRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCOzsyRkFJbEUsMEJBQTBCO2tCQU50QyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLDZCQUE2QixDQUFDO29CQUM3QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDO29CQUM1RSxPQUFPLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDeEMsU0FBUyxFQUFFLEVBQUU7aUJBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEFYVmFsaWRhdGlvbk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL3ZhbGlkYXRpb24vdmFsaWRhdGlvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFRpbWVQaWNrZXJNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi90aW1lLXBpY2tlci90aW1lLXBpY2tlci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFRpbWVQcm9wZXJ0eUVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vdGltZS5lZGl0b3InO1xyXG5cclxuXHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGRlY2xhcmF0aW9uczogW0FYVGltZVByb3BlcnR5RWRpdG9yQ29tcG9uZW50XSxcclxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBBWFRpbWVQaWNrZXJNb2R1bGUsIEFYVmFsaWRhdGlvbk1vZHVsZV0sXHJcbiAgICBleHBvcnRzOiBbQVhUaW1lUHJvcGVydHlFZGl0b3JDb21wb25lbnRdLFxyXG4gICAgcHJvdmlkZXJzOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhUaW1lUHJvcGVydHlFZGl0b3JNb2R1bGUge1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB9XHJcbn0iXX0=
|
@@ -0,0 +1,167 @@
|
|
1
|
+
import { Directive, ViewContainerRef, ComponentFactoryResolver, Input, Output, EventEmitter } from '@angular/core';
|
2
|
+
import { AXEventService, AXObjectUtil, AXRenderService, setPropByPath } from '@acorex/core';
|
3
|
+
import { AXValidationFormComponent } from '../validation/validation-form.component';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "@acorex/core";
|
6
|
+
export class AXPropertyEditorRendererDirective {
|
7
|
+
target;
|
8
|
+
componentFactoryResolver;
|
9
|
+
renderService;
|
10
|
+
eventService;
|
11
|
+
instance;
|
12
|
+
property;
|
13
|
+
validationForm;
|
14
|
+
_context = {};
|
15
|
+
get context() {
|
16
|
+
return this._context;
|
17
|
+
}
|
18
|
+
set context(v) {
|
19
|
+
this._context = v;
|
20
|
+
}
|
21
|
+
host;
|
22
|
+
groupId;
|
23
|
+
onValueChange = new EventEmitter();
|
24
|
+
subscription;
|
25
|
+
constructor(target, componentFactoryResolver, renderService, eventService) {
|
26
|
+
this.target = target;
|
27
|
+
this.componentFactoryResolver = componentFactoryResolver;
|
28
|
+
this.renderService = renderService;
|
29
|
+
this.eventService = eventService;
|
30
|
+
}
|
31
|
+
clear() {
|
32
|
+
if (this.instance?.value) {
|
33
|
+
this.instance.value = null;
|
34
|
+
}
|
35
|
+
}
|
36
|
+
disabeld(disableValue) {
|
37
|
+
this.instance.disabled = disableValue;
|
38
|
+
}
|
39
|
+
ngOnInit() {
|
40
|
+
this.createComponent();
|
41
|
+
}
|
42
|
+
createComponent() {
|
43
|
+
this.renderService.findLoadedComponentByRoute(this.property.property.editorClass).then((c) => {
|
44
|
+
if (c) {
|
45
|
+
const factory = this.componentFactoryResolver.resolveComponentFactory(c.component);
|
46
|
+
const cmpRef = this.target.createComponent(factory);
|
47
|
+
this.instance = cmpRef.instance;
|
48
|
+
this.subscription = this.instance.valueChange.subscribe((value) => {
|
49
|
+
this.property.value = value;
|
50
|
+
this.onValueChange.emit(this.property);
|
51
|
+
if (this.property?.property?.name) {
|
52
|
+
setTimeout(() => {
|
53
|
+
this.eventService.broadcast(`props-${this.groupId}-${this.property.property.name}`, this.property);
|
54
|
+
}, 0);
|
55
|
+
}
|
56
|
+
});
|
57
|
+
this.watchChanges();
|
58
|
+
this.assignProps();
|
59
|
+
this.instance.value = this.property.value;
|
60
|
+
// this.instance.onRenderCompleted.subscribe(() => {
|
61
|
+
// });
|
62
|
+
if (this.validationForm) {
|
63
|
+
this.instance.validatableComponentRegistered.subscribe((v) => {
|
64
|
+
this.validationForm.addWidget(v);
|
65
|
+
});
|
66
|
+
}
|
67
|
+
}
|
68
|
+
});
|
69
|
+
}
|
70
|
+
watchChanges() {
|
71
|
+
const varsRegx = /((\$\{[a-zA-Z_0-9]+\})+)/gm;
|
72
|
+
const varNameRegx = /[a-zA-Z_0-9]+/gm;
|
73
|
+
const options = this.property.property.editorOptions;
|
74
|
+
if (!options) {
|
75
|
+
return;
|
76
|
+
}
|
77
|
+
for (const p in options) {
|
78
|
+
if (options.hasOwnProperty(p)) {
|
79
|
+
const opt = options[p];
|
80
|
+
const vars = typeof opt === 'string' ? opt?.match(varsRegx) : [];
|
81
|
+
// bind the props
|
82
|
+
if (vars?.length) {
|
83
|
+
vars.forEach((v) => {
|
84
|
+
const path = v.match(varNameRegx)?.length ? v.match(varNameRegx)[0] : null;
|
85
|
+
if (path) {
|
86
|
+
this.eventService.on(`props-${this.groupId}-${path}`, (e) => {
|
87
|
+
let execCode = opt.slice();
|
88
|
+
const params = {};
|
89
|
+
vars.forEach((vv) => {
|
90
|
+
const p2 = vv.match(varNameRegx)?.length ? vv.match(varNameRegx)[0] : null;
|
91
|
+
params[p2] = AXObjectUtil.deepCopy(this.context[p2]) || null;
|
92
|
+
execCode = execCode.replace(vv, `__params__.${p2}`);
|
93
|
+
});
|
94
|
+
const func = new Function('__params__', `try { return ${execCode}} catch(e){ return null; }`);
|
95
|
+
const val = func(params);
|
96
|
+
const keys = p.split('.');
|
97
|
+
const prop = Object.assign({}, this.instance[keys[0]]);
|
98
|
+
if (keys.length > 1) {
|
99
|
+
this.instance[keys[0]] = setPropByPath(prop, p, val);
|
100
|
+
}
|
101
|
+
else {
|
102
|
+
setPropByPath(this.instance, p, val);
|
103
|
+
}
|
104
|
+
});
|
105
|
+
}
|
106
|
+
});
|
107
|
+
}
|
108
|
+
// else {
|
109
|
+
// this.assignProps();
|
110
|
+
// }
|
111
|
+
}
|
112
|
+
}
|
113
|
+
}
|
114
|
+
assignProps() {
|
115
|
+
const options = this.property.property.editorOptions;
|
116
|
+
if (!options) {
|
117
|
+
return;
|
118
|
+
}
|
119
|
+
const varsRegx = /((\$\{[a-zA-Z_0-9]+\})+)/gm;
|
120
|
+
for (const p in options) {
|
121
|
+
if (options.hasOwnProperty(p)) {
|
122
|
+
const opt = options[p];
|
123
|
+
const vars = typeof opt === 'string' ? opt?.match(varsRegx) : [];
|
124
|
+
if (vars?.length) {
|
125
|
+
continue;
|
126
|
+
}
|
127
|
+
else {
|
128
|
+
const val = typeof opt === 'function' ? opt({ data: this.context, host: this.host }, this.property) : opt;
|
129
|
+
if (val instanceof Promise) {
|
130
|
+
val.then((v) => {
|
131
|
+
setPropByPath(this.instance, p, val);
|
132
|
+
});
|
133
|
+
}
|
134
|
+
else {
|
135
|
+
setPropByPath(this.instance, p, val);
|
136
|
+
}
|
137
|
+
}
|
138
|
+
}
|
139
|
+
}
|
140
|
+
}
|
141
|
+
ngOnDestroy() {
|
142
|
+
if (this.subscription) {
|
143
|
+
this.subscription.unsubscribe();
|
144
|
+
}
|
145
|
+
}
|
146
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXPropertyEditorRendererDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }, { token: i1.AXRenderService }, { token: i1.AXEventService }], target: i0.ɵɵFactoryTarget.Directive });
|
147
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: AXPropertyEditorRendererDirective, selector: "[ax-property-editor-renderer]", inputs: { property: "property", validationForm: "validationForm", context: "context", host: "host", groupId: "groupId" }, outputs: { onValueChange: "onValueChange" }, ngImport: i0 });
|
148
|
+
}
|
149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXPropertyEditorRendererDirective, decorators: [{
|
150
|
+
type: Directive,
|
151
|
+
args: [{
|
152
|
+
selector: '[ax-property-editor-renderer]'
|
153
|
+
}]
|
154
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }, { type: i1.AXRenderService }, { type: i1.AXEventService }]; }, propDecorators: { property: [{
|
155
|
+
type: Input
|
156
|
+
}], validationForm: [{
|
157
|
+
type: Input
|
158
|
+
}], context: [{
|
159
|
+
type: Input
|
160
|
+
}], host: [{
|
161
|
+
type: Input
|
162
|
+
}], groupId: [{
|
163
|
+
type: Input
|
164
|
+
}], onValueChange: [{
|
165
|
+
type: Output
|
166
|
+
}] } });
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZWRpdG9yLXJlbmRlcmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3Byb3BlcnR5LWVkaXRvci9wcm9wZXJ0eS1lZGl0b3ItcmVuZGVyZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsd0JBQXdCLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQW1DLE1BQU0sZUFBZSxDQUFDO0FBRXBKLE9BQU8sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBaUIsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTNHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7QUFLcEYsTUFBTSxPQUFPLGlDQUFpQztJQThCbEM7SUFDQTtJQUNBO0lBQ0E7SUFoQ0YsUUFBUSxDQUFnQztJQUdoRCxRQUFRLENBQW1CO0lBRzNCLGNBQWMsQ0FBNEI7SUFFbEMsUUFBUSxHQUFRLEVBQUUsQ0FBQztJQUMzQixJQUNXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxJQUFXLE9BQU8sQ0FBQyxDQUFNO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFHRCxJQUFJLENBQU07SUFHVixPQUFPLENBQU07SUFHYixhQUFhLEdBQWtELElBQUksWUFBWSxFQUFtQyxDQUFDO0lBRTNHLFlBQVksQ0FBZTtJQUVuQyxZQUNVLE1BQXdCLEVBQ3hCLHdCQUFrRCxFQUNsRCxhQUE4QixFQUM5QixZQUE0QjtRQUg1QixXQUFNLEdBQU4sTUFBTSxDQUFrQjtRQUN4Qiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtR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QUROLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgS2V5VmFsdWVEaWZmZXIsIEtleVZhbHVlRGlmZmVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWFByb3BlcnlFZGl0b3JDb21wb25lbnQsIEFYUHJvcGVyeUVkaXRvclZhbHVlQ2hhbmdlRXZlbnQsIEFYUHJvcGVydHlDb25maWcgfSBmcm9tICcuL3Byb3BlcnR5LWVkaXRvci5jbGFzcyc7XHJcbmltcG9ydCB7IEFYRXZlbnRTZXJ2aWNlLCBBWE9iamVjdFV0aWwsIEFYUmVuZGVyU2VydmljZSwgZ2V0UHJvcEJ5UGF0aCwgc2V0UHJvcEJ5UGF0aCB9IGZyb20gJ0BhY29yZXgvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBWFZhbGlkYXRpb25Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLWZvcm0uY29tcG9uZW50JztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2F4LXByb3BlcnR5LWVkaXRvci1yZW5kZXJlcl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFByb3BlcnR5RWRpdG9yUmVuZGVyZXJEaXJlY3RpdmUge1xyXG4gIHByaXZhdGUgaW5zdGFuY2U6IEFYUHJvcGVyeUVkaXRvckNvbXBvbmVudDxhbnk+O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHByb3BlcnR5OiBBWFByb3BlcnR5Q29uZmlnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHZhbGlkYXRpb25Gb3JtOiBBWFZhbGlkYXRpb25Gb3JtQ29tcG9uZW50O1xyXG5cclxuICBwcml2YXRlIF9jb250ZXh0OiBhbnkgPSB7fTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBnZXQgY29udGV4dCgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbnRleHQ7XHJcbiAgfVxyXG4gIHB1YmxpYyBzZXQgY29udGV4dCh2OiBhbnkpIHtcclxuICAgIHRoaXMuX2NvbnRleHQgPSB2O1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBob3N0OiBhbnk7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ3JvdXBJZDogYW55O1xyXG5cclxuICBAT3V0cHV0KClcclxuICBvblZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhQcm9wZXJ5RWRpdG9yVmFsdWVDaGFuZ2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYUHJvcGVyeUVkaXRvclZhbHVlQ2hhbmdlRXZlbnQ+KCk7XHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSB0YXJnZXQ6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgcHJpdmF0ZSByZW5kZXJTZXJ2aWNlOiBBWFJlbmRlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZTogQVhFdmVudFNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBjbGVhcigpIHtcclxuICAgIGlmICh0aGlzLmluc3RhbmNlPy52YWx1ZSkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnZhbHVlID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRpc2FiZWxkKGRpc2FibGVWYWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5pbnN0YW5jZS5kaXNhYmxlZCA9IGRpc2FibGVWYWx1ZVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNyZWF0ZUNvbXBvbmVudCgpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlQ29tcG9uZW50KCkge1xyXG4gICAgdGhpcy5yZW5kZXJTZXJ2aWNlLmZpbmRMb2FkZWRDb21wb25lbnRCeVJvdXRlKHRoaXMucHJvcGVydHkucHJvcGVydHkuZWRpdG9yQ2xhc3MpLnRoZW4oKGMpID0+IHtcclxuICAgICAgaWYgKGMpIHtcclxuICAgICAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoYy5jb21wb25lbnQpO1xyXG4gICAgICAgIGNvbnN0IGNtcFJlZiA9IHRoaXMudGFyZ2V0LmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcclxuICAgICAgICB0aGlzLmluc3RhbmNlID0gY21wUmVmLmluc3RhbmNlIGFzIEFYUHJvcGVyeUVkaXRvckNvbXBvbmVudDxhbnk+O1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5pbnN0YW5jZS52YWx1ZUNoYW5nZS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnByb3BlcnR5LnZhbHVlID0gdmFsdWU7XHJcbiAgICAgICAgICB0aGlzLm9uVmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnByb3BlcnR5KTtcclxuICAgICAgICAgIGlmICh0aGlzLnByb3BlcnR5Py5wcm9wZXJ0eT8ubmFtZSkge1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmV2ZW50U2VydmljZS5icm9hZGNhc3QoYHByb3BzLSR7dGhpcy5ncm91cElkfS0ke3RoaXMucHJvcGVydHkucHJvcGVydHkubmFtZX1gLCB0aGlzLnByb3BlcnR5KTtcclxuICAgICAgICAgICAgfSwgMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSkgYXMgYW55O1xyXG4gICAgICAgIHRoaXMud2F0Y2hDaGFuZ2VzKCk7XHJcbiAgICAgICAgdGhpcy5hc3NpZ25Qcm9wcygpO1xyXG4gICAgICAgIHRoaXMuaW5zdGFuY2UudmFsdWUgPSB0aGlzLnByb3BlcnR5LnZhbHVlO1xyXG5cclxuICAgICAgICAvLyB0aGlzLmluc3RhbmNlLm9uUmVuZGVyQ29tcGxldGVkLnN1YnNjcmliZSgoKSA9PiB7XHJcblxyXG4gICAgICAgIC8vIH0pO1xyXG5cclxuICAgICAgICBpZiAodGhpcy52YWxpZGF0aW9uRm9ybSkge1xyXG4gICAgICAgICAgdGhpcy5pbnN0YW5jZS52YWxpZGF0YWJsZUNvbXBvbmVudFJlZ2lzdGVyZWQuc3Vic2NyaWJlKCh2KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkZvcm0uYWRkV2lkZ2V0KHYpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgd2F0Y2hDaGFuZ2VzKCkge1xyXG4gICAgY29uc3QgdmFyc1JlZ3ggPSAvKChcXCRcXHtbYS16QS1aXzAtOV0rXFx9KSspL2dtO1xyXG4gICAgY29uc3QgdmFyTmFtZVJlZ3ggPSAvW2EtekEtWl8wLTldKy9nbTtcclxuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLnByb3BlcnR5LnByb3BlcnR5LmVkaXRvck9wdGlvbnM7XHJcbiAgICBpZiAoIW9wdGlvbnMpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgZm9yIChjb25zdCBwIGluIG9wdGlvbnMpIHtcclxuICAgICAgaWYgKG9wdGlvbnMuaGFzT3duUHJvcGVydHkocCkpIHtcclxuICAgICAgICBjb25zdCBvcHQgPSBvcHRpb25zW3BdO1xyXG4gICAgICAgIGNvbnN0IHZhcnMgPSB0eXBlb2Ygb3B0ID09PSAnc3RyaW5nJyA/IG9wdD8ubWF0Y2godmFyc1JlZ3gpIDogW107XHJcbiAgICAgICAgLy8gYmluZCB0aGUgcHJvcHNcclxuICAgICAgICBpZiAodmFycz8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICB2YXJzLmZvckVhY2goKHYpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgcGF0aCA9IHYubWF0Y2godmFyTmFtZVJlZ3gpPy5sZW5ndGggPyB2Lm1hdGNoKHZhck5hbWVSZWd4KVswXSA6IG51bGw7XHJcbiAgICAgICAgICAgIGlmIChwYXRoKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5ldmVudFNlcnZpY2Uub24oYHByb3BzLSR7dGhpcy5ncm91cElkfS0ke3BhdGh9YCwgKGU6IEFYUHJvcGVydHlDb25maWcpID0+IHtcclxuICAgICAgICAgICAgICAgIGxldCBleGVjQ29kZSA9IG9wdC5zbGljZSgpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcGFyYW1zID0ge307XHJcbiAgICAgICAgICAgICAgICB2YXJzLmZvckVhY2goKHZ2KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHAyID0gdnYubWF0Y2godmFyTmFtZVJlZ3gpPy5sZW5ndGggPyB2di5tYXRjaCh2YXJOYW1lUmVneClbMF0gOiBudWxsO1xyXG4gICAgICAgICAgICAgICAgICBwYXJhbXNbcDJdID0gQVhPYmplY3RVdGlsLmRlZXBDb3B5KHRoaXMuY29udGV4dFtwMl0pIHx8IG51bGw7XHJcbiAgICAgICAgICAgICAgICAgIGV4ZWNDb2RlID0gZXhlY0NvZGUucmVwbGFjZSh2diwgYF9fcGFyYW1zX18uJHtwMn1gKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IGZ1bmMgPSBuZXcgRnVuY3Rpb24oJ19fcGFyYW1zX18nLCBgdHJ5IHsgcmV0dXJuICR7ZXhlY0NvZGV9fSBjYXRjaChlKXsgIHJldHVybiBudWxsOyAgfWApO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdmFsID0gZnVuYyhwYXJhbXMpO1xyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IGtleXMgPSBwLnNwbGl0KCcuJyk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBwcm9wID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5pbnN0YW5jZVtrZXlzWzBdXSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoa2V5cy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuaW5zdGFuY2Vba2V5c1swXV0gPSBzZXRQcm9wQnlQYXRoKHByb3AsIHAsIHZhbCk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICBzZXRQcm9wQnlQYXRoKHRoaXMuaW5zdGFuY2UsIHAsIHZhbCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBlbHNlIHtcclxuICAgICAgICAvLyAgICB0aGlzLmFzc2lnblByb3BzKCk7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzc2lnblByb3BzKCkge1xyXG4gICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMucHJvcGVydHkucHJvcGVydHkuZWRpdG9yT3B0aW9ucztcclxuICAgIGlmICghb3B0aW9ucykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCB2YXJzUmVneCA9IC8oKFxcJFxce1thLXpBLVpfMC05XStcXH0pKykvZ207XHJcbiAgICBmb3IgKGNvbnN0IHAgaW4gb3B0aW9ucykge1xyXG4gICAgICBpZiAob3B0aW9ucy5oYXNPd25Qcm9wZXJ0eShwKSkge1xyXG4gICAgICAgIGNvbnN0IG9wdCA9IG9wdGlvbnNbcF07XHJcbiAgICAgICAgY29uc3QgdmFycyA9IHR5cGVvZiBvcHQgPT09ICdzdHJpbmcnID8gb3B0Py5tYXRjaCh2YXJzUmVneCkgOiBbXTtcclxuICAgICAgICBpZiAodmFycz8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgdmFsID0gdHlwZW9mIG9wdCA9PT0gJ2Z1bmN0aW9uJyA/IG9wdCh7IGRhdGE6IHRoaXMuY29udGV4dCwgaG9zdDogdGhpcy5ob3N0IH0sIHRoaXMucHJvcGVydHkpIDogb3B0O1xyXG4gICAgICAgICAgaWYgKHZhbCBpbnN0YW5jZW9mIFByb21pc2UpIHtcclxuICAgICAgICAgICAgdmFsLnRoZW4oKHYpID0+IHtcclxuICAgICAgICAgICAgICBzZXRQcm9wQnlQYXRoKHRoaXMuaW5zdGFuY2UsIHAsIHZhbCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgc2V0UHJvcEJ5UGF0aCh0aGlzLmluc3RhbmNlLCBwLCB2YWwpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
@@ -0,0 +1,108 @@
|
|
1
|
+
import { Input, Output, EventEmitter, ChangeDetectorRef, Directive } from '@angular/core';
|
2
|
+
import { Subject } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export class AXProperyEditorComponent {
|
5
|
+
cdr;
|
6
|
+
readonly = false;
|
7
|
+
disabled = false;
|
8
|
+
_initiated = false;
|
9
|
+
_valueBound = false;
|
10
|
+
get initiated() {
|
11
|
+
return this._initiated && this._valueBound;
|
12
|
+
}
|
13
|
+
validatableComponentRegistered = new Subject();
|
14
|
+
registerForValidationForm(component) {
|
15
|
+
this.validatableComponentRegistered.next(component);
|
16
|
+
}
|
17
|
+
valueChange = new EventEmitter();
|
18
|
+
onRenderCompleted = new EventEmitter();
|
19
|
+
_value;
|
20
|
+
get value() {
|
21
|
+
return this._value;
|
22
|
+
}
|
23
|
+
set value(v) {
|
24
|
+
if (v !== this._value) {
|
25
|
+
this._value = v;
|
26
|
+
this.valueChange.emit(v);
|
27
|
+
this.cdr.detectChanges();
|
28
|
+
//TODO: find better solution
|
29
|
+
setTimeout(() => {
|
30
|
+
this._valueBound = true;
|
31
|
+
}, 100);
|
32
|
+
}
|
33
|
+
}
|
34
|
+
constructor(cdr) {
|
35
|
+
this.cdr = cdr;
|
36
|
+
this.onRenderCompleted.subscribe(() => {
|
37
|
+
this._initiated = true;
|
38
|
+
});
|
39
|
+
}
|
40
|
+
uid;
|
41
|
+
handleValueChange(v) {
|
42
|
+
this.value = v;
|
43
|
+
}
|
44
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXProperyEditorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
45
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: AXProperyEditorComponent, inputs: { value: "value" }, outputs: { valueChange: "valueChange", onRenderCompleted: "onRenderCompleted" }, ngImport: i0 });
|
46
|
+
}
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXProperyEditorComponent, decorators: [{
|
48
|
+
type: Directive
|
49
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { valueChange: [{
|
50
|
+
type: Output
|
51
|
+
}], onRenderCompleted: [{
|
52
|
+
type: Output
|
53
|
+
}], value: [{
|
54
|
+
type: Input
|
55
|
+
}] } });
|
56
|
+
export class AXPropertyDecorator {
|
57
|
+
cls;
|
58
|
+
property;
|
59
|
+
options;
|
60
|
+
constructor(cls, property, options) {
|
61
|
+
this.cls = cls;
|
62
|
+
this.property = property;
|
63
|
+
this.options = options;
|
64
|
+
}
|
65
|
+
}
|
66
|
+
// @dynamic
|
67
|
+
export class AXPropertyDecorators {
|
68
|
+
static REGISTRY = new Array();
|
69
|
+
static register(cls, property, options) {
|
70
|
+
const item = AXPropertyDecorators.REGISTRY.find((c) => c.cls === cls && c.property === property);
|
71
|
+
if (item) {
|
72
|
+
item.options = options;
|
73
|
+
}
|
74
|
+
else {
|
75
|
+
AXPropertyDecorators.REGISTRY.push(new AXPropertyDecorator(cls, property, options));
|
76
|
+
}
|
77
|
+
}
|
78
|
+
static has(cls, property) {
|
79
|
+
return AXPropertyDecorators.REGISTRY.some((c) => c.cls === cls && c.property === property);
|
80
|
+
}
|
81
|
+
static get(cls, property) {
|
82
|
+
return AXPropertyDecorators.REGISTRY.find((c) => c.cls === cls && c.property === property);
|
83
|
+
}
|
84
|
+
static isValid(property) {
|
85
|
+
if (property) {
|
86
|
+
return AXPropertyDecorators.REGISTRY.some((c) => c.property === property);
|
87
|
+
}
|
88
|
+
return false;
|
89
|
+
}
|
90
|
+
static getProperties(target) {
|
91
|
+
const list = [];
|
92
|
+
const p = Array();
|
93
|
+
let superClass = Object.getPrototypeOf(target);
|
94
|
+
while (superClass.constructor.name !== 'Object') {
|
95
|
+
p.push(superClass.constructor);
|
96
|
+
superClass = Object.getPrototypeOf(superClass);
|
97
|
+
}
|
98
|
+
list.push(...AXPropertyDecorators.REGISTRY.filter((c) => p.includes(c.cls.constructor)));
|
99
|
+
return list;
|
100
|
+
}
|
101
|
+
}
|
102
|
+
export function propertyEditor(options) {
|
103
|
+
return (target, key) => {
|
104
|
+
options.name = key;
|
105
|
+
AXPropertyDecorators.register(target, key, options);
|
106
|
+
};
|
107
|
+
}
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZWRpdG9yLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvcHJvcGVydHktZWRpdG9yL3Byb3BlcnR5LWVkaXRvci5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBaUUvQixNQUFNLE9BQWdCLHdCQUF3QjtJQXlDdEI7SUF4Q3RCLFFBQVEsR0FBWSxLQUFLLENBQUM7SUFDMUIsUUFBUSxHQUFHLEtBQUssQ0FBQTtJQUVSLFVBQVUsR0FBWSxLQUFLLENBQUM7SUFDNUIsV0FBVyxHQUFZLEtBQUssQ0FBQztJQUVyQyxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDN0MsQ0FBQztJQUVELDhCQUE4QixHQUFvQyxJQUFJLE9BQU8sRUFBMEIsQ0FBQztJQUV4Ryx5QkFBeUIsQ0FBQyxTQUFrQztRQUMxRCxJQUFJLENBQUMsOEJBQThCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFHRCxXQUFXLEdBQW9CLElBQUksWUFBWSxFQUFLLENBQUM7SUFHckQsaUJBQWlCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFFekQsTUFBTSxDQUFJO0lBQ2xCLElBQ1csS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxLQUFLLENBQUMsQ0FBSTtRQUNuQixJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lB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LEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQVc7UUFDOUIsTUFBTSxJQUFJLEdBQTBCLEVBQUUsQ0FBQztRQUN2QyxNQUFNLENBQUMsR0FBVSxLQUFLLEVBQU8sQ0FBQztRQUM5QixJQUFJLFVBQVUsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQy9DLE9BQU8sVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQy9DLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQy9CLFVBQVUsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ2hEO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOztBQUdILE1BQU0sVUFBVSxjQUFjLENBQUMsT0FBNEI7SUFDekQsT0FBTyxDQUFDLE1BQVcsRUFBRSxHQUFXLEVBQUUsRUFBRTtRQUNqQyxPQUFlLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztRQUM1QixvQkFBb0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN0RCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQVhWYWxpZGF0YWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UvZWxlbWVudC5jbGFzcyc7XHJcblxyXG5leHBvcnQgdHlwZSBBWERhdGFUeXBlID0gJ3N0cmluZycgfCAnbnVtYmVyJyB8ICdkYXRlJyB8ICdib29sZWFuJyB8ICdvYmplY3QnO1xyXG5leHBvcnQgdHlwZSBBWENvbnRyb2xUeXBlID0gJ3RleHRib3gnIHwgJ251bWJlcmJveCcgfCAnZGF0ZVBpY2tlcicgfCAnc3dpdGNoJyB8ICdjdXN0b20nO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBWFByb3BlcnR5RGVmIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBoaW50Pzogc3RyaW5nO1xyXG4gIGRlZmF1bHRWYWx1ZT86IGFueTtcclxuICBlZGl0b3JDbGFzczogYW55O1xyXG4gIGVkaXRvck9wdGlvbnM/OiBhbnk7XHJcbiAgdmlzaWJsZT86IGJvb2xlYW4gfCAoKCkgPT4gYm9vbGVhbik7XHJcbiAgb3JkZXI/OiBudW1iZXI7XHJcbiAgcm93PzogbnVtYmVyO1xyXG4gIGNvbD86IG51bWJlciB8IEFYUHJvcGVydHlDb2xEZWY7XHJcbiAgZmlsdGVyT3B0aW9ucz86IEZpbHRlck1vZGVsO1xyXG4gIHVuaXF1ZU51bWJlcj86IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJNb2RlbCB7XHJcbiAgb3BlcmF0b3I/OiBhbnk7XHJcbiAgZmlsdGVycz86IEZpbHRlcnNNb2RlbFtdO1xyXG4gIHRydW5jYXRlRGF0ZT86IGJvb2xlYW47XHJcbiAgam9pblR5cGU/OiBzdHJpbmc7XHJcbiAgaWdub3JlQ2FzZT86IGJvb2xlYW47XHJcbiAgbG9naWM/OiAnYW5kJyB8ICdvcic7XHJcbiAgYWR2YW5jZT86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyc01vZGVsIHtcclxuICBuYW1lPzogc3RyaW5nO1xyXG4gIHZhbHVlPzogc3RyaW5nO1xyXG4gIGZpZWxkPzogc3RyaW5nO1xyXG4gIGZpbHRlck9wdGlvbnM6IEZpbHRlck1vZGVsO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQVhQcm9wZXJ0eUNvbERlZiB7XHJcbiAgbGc/OiBudW1iZXI7XHJcbiAgbWQ/OiBudW1iZXI7XHJcbiAgc20/OiBudW1iZXI7XHJcbiAgeHM/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQVhQcm9wZXJ0eUVkaXRvckRlZiB7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBoaW50Pzogc3RyaW5nO1xyXG4gIGRlZmF1bHRWYWx1ZT86IGFueTtcclxuICBlZGl0b3JDbGFzczogYW55O1xyXG4gIGVkaXRvck9wdGlvbnM/OiBhbnk7XHJcbiAgdmlzaWJsZT86IGJvb2xlYW4gfCAoKCkgPT4gYm9vbGVhbik7XHJcbiAgb3JkZXI/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQVhQcm9wZXJ0eUNvbmZpZyB7XHJcbiAgcHJvcGVydHk6IEFYUHJvcGVydHlEZWY7XHJcbiAgdmFsdWU6IGFueTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBWFByb3BlcnlFZGl0b3JWYWx1ZUNoYW5nZUV2ZW50IHtcclxuICBwcm9wZXJ0eTogQVhQcm9wZXJ0eURlZjtcclxuICB2YWx1ZTogYW55O1xyXG59XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYUHJvcGVyeUVkaXRvckNvbXBvbmVudDxUPiB7XHJcbiAgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkaXNhYmxlZCA9IGZhbHNlXHJcblxyXG4gIHByaXZhdGUgX2luaXRpYXRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX3ZhbHVlQm91bmQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIGdldCBpbml0aWF0ZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5faW5pdGlhdGVkICYmIHRoaXMuX3ZhbHVlQm91bmQ7XHJcbiAgfVxyXG5cclxuICB2YWxpZGF0YWJsZUNvbXBvbmVudFJlZ2lzdGVyZWQ6IFN1YmplY3Q8QVhWYWxpZGF0YWJsZUNvbXBvbmVudD4gPSBuZXcgU3ViamVjdDxBWFZhbGlkYXRhYmxlQ29tcG9uZW50PigpO1xyXG5cclxuICByZWdpc3RlckZvclZhbGlkYXRpb25Gb3JtKGNvbXBvbmVudD86IEFYVmFsaWRhdGFibGVDb21wb25lbnQpIHtcclxuICAgIHRoaXMudmFsaWRhdGFibGVDb21wb25lbnRSZWdpc3RlcmVkLm5leHQoY29tcG9uZW50KTtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8VD4gPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIG9uUmVuZGVyQ29tcGxldGVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIHByaXZhdGUgX3ZhbHVlOiBUO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGdldCB2YWx1ZSgpOiBUIHtcclxuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXQgdmFsdWUodjogVCkge1xyXG4gICAgaWYgKHYgIT09IHRoaXMuX3ZhbHVlKSB7XHJcbiAgICAgIHRoaXMuX3ZhbHVlID0gdjtcclxuICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHYpO1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIC8vVE9ETzogZmluZCBiZXR0ZXIgc29sdXRpb25cclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fdmFsdWVCb3VuZCA9IHRydWU7XHJcbiAgICAgIH0sIDEwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgdGhpcy5vblJlbmRlckNvbXBsZXRlZC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9pbml0aWF0ZWQgPSB0cnVlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB1aWQ6IHN0cmluZztcclxuXHJcbiAgaGFuZGxlVmFsdWVDaGFuZ2UodjogVCkge1xyXG4gICAgdGhpcy52YWx1ZSA9IHY7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQVhQcm9wZXJ0eURlY29yYXRvciB7XHJcbiAgY2xzOiBhbnk7XHJcbiAgcHJvcGVydHk6IHN0cmluZztcclxuICBvcHRpb25zOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGNsczogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBvcHRpb25zOiBhbnkpIHtcclxuICAgIHRoaXMuY2xzID0gY2xzO1xyXG4gICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xyXG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcclxuICB9XHJcbn1cclxuXHJcbi8vIEBkeW5hbWljXHJcbmV4cG9ydCBjbGFzcyBBWFByb3BlcnR5RGVjb3JhdG9ycyB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgUkVHSVNUUlkgPSBuZXcgQXJyYXk8QVhQcm9wZXJ0eURlY29yYXRvcj4oKTtcclxuXHJcbiAgc3RhdGljIHJlZ2lzdGVyKGNsczogc3RyaW5nLCBwcm9wZXJ0eTogc3RyaW5nLCBvcHRpb25zPzogYW55KSB7XHJcbiAgICBjb25zdCBpdGVtID0gQVhQcm9wZXJ0eURlY29yYXRvcnMuUkVHSVNUUlkuZmluZCgoYykgPT4gYy5jbHMgPT09IGNscyAmJiBjLnByb3BlcnR5ID09PSBwcm9wZXJ0eSk7XHJcbiAgICBpZiAoaXRlbSkge1xyXG4gICAgICBpdGVtLm9wdGlvbnMgPSBvcHRpb25zO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgQVhQcm9wZXJ0eURlY29yYXRvcnMuUkVHSVNUUlkucHVzaChuZXcgQVhQcm9wZXJ0eURlY29yYXRvcihjbHMsIHByb3BlcnR5LCBvcHRpb25zKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaGFzKGNsczogc3RyaW5nLCBwcm9wZXJ0eTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gQVhQcm9wZXJ0eURlY29yYXRvcnMuUkVHSVNUUlkuc29tZSgoYykgPT4gYy5jbHMgPT09IGNscyAmJiBjLnByb3BlcnR5ID09PSBwcm9wZXJ0eSk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0KGNsczogc3RyaW5nLCBwcm9wZXJ0eTogc3RyaW5nKTogQVhQcm9wZXJ0eURlY29yYXRvciB7XHJcbiAgICByZXR1cm4gQVhQcm9wZXJ0eURlY29yYXRvcnMuUkVHSVNUUlkuZmluZCgoYykgPT4gYy5jbHMgPT09IGNscyAmJiBjLnByb3BlcnR5ID09PSBwcm9wZXJ0eSk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaXNWYWxpZChwcm9wZXJ0eTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBpZiAocHJvcGVydHkpIHtcclxuICAgICAgcmV0dXJuIEFYUHJvcGVydHlEZWNvcmF0b3JzLlJFR0lTVFJZLnNvbWUoKGMpID0+IGMucHJvcGVydHkgPT09IHByb3BlcnR5KTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBnZXRQcm9wZXJ0aWVzKHRhcmdldDogYW55KTogQVhQcm9wZXJ0eURlY29yYXRvcltdIHtcclxuICAgIGNvbnN0IGxpc3Q6IEFYUHJvcGVydHlEZWNvcmF0b3JbXSA9IFtdO1xyXG4gICAgY29uc3QgcDogYW55W10gPSBBcnJheTxhbnk+KCk7XHJcbiAgICBsZXQgc3VwZXJDbGFzcyA9IE9iamVjdC5nZXRQcm90b3R5cGVPZih0YXJnZXQpO1xyXG4gICAgd2hpbGUgKHN1cGVyQ2xhc3MuY29uc3RydWN0b3IubmFtZSAhPT0gJ09iamVjdCcpIHtcclxuICAgICAgcC5wdXNoKHN1cGVyQ2xhc3MuY29uc3RydWN0b3IpO1xyXG4gICAgICBzdXBlckNsYXNzID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKHN1cGVyQ2xhc3MpO1xyXG4gICAgfVxyXG4gICAgbGlzdC5wdXNoKC4uLkFYUHJvcGVydHlEZWNvcmF0b3JzLlJFR0lTVFJZLmZpbHRlcigoYykgPT4gcC5pbmNsdWRlcyhjLmNscy5jb25zdHJ1Y3RvcikpKTtcclxuICAgIHJldHVybiBsaXN0O1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3BlcnR5RWRpdG9yKG9wdGlvbnM6IEFYUHJvcGVydHlFZGl0b3JEZWYpIHtcclxuICByZXR1cm4gKHRhcmdldDogYW55LCBrZXk6IHN0cmluZykgPT4ge1xyXG4gICAgKG9wdGlvbnMgYXMgYW55KS5uYW1lID0ga2V5O1xyXG4gICAgQVhQcm9wZXJ0eURlY29yYXRvcnMucmVnaXN0ZXIodGFyZ2V0LCBrZXksIG9wdGlvbnMpO1xyXG4gIH07XHJcbn1cclxuIl19
|