@acorex/components 6.5.26 → 6.5.28
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/karma.conf.js +32 -0
- package/ng-package.json +10 -0
- package/package.json +12 -32
- package/src/lib/accordion/accordion.component.ts +43 -0
- package/src/lib/accordion/accordion.module.ts +11 -0
- package/src/lib/accordion/api.ts +2 -0
- package/src/lib/base/base-page.class.ts +116 -0
- package/src/lib/base/components.class.ts +9 -0
- package/src/lib/base/element.class.ts +344 -0
- package/src/lib/base/events.class.ts +32 -0
- package/src/lib/button/button.component.html +17 -0
- package/src/lib/button/button.component.ts +72 -0
- package/src/lib/button/button.module.ts +14 -0
- package/src/lib/calendar/calendar-box/calendar-box.component.html +68 -0
- package/src/lib/calendar/calendar-box/calendar-box.component.ts +461 -0
- package/src/lib/calendar/calendar-box/calendar-box.module.ts +16 -0
- package/src/lib/calendar/scheduler/scheduler-views.property.ts +38 -0
- package/{lib/calendar/scheduler/scheduler.class.d.ts → src/lib/calendar/scheduler/scheduler.class.ts} +20 -6
- package/src/lib/calendar/scheduler/scheduler.component.html +9 -0
- package/src/lib/calendar/scheduler/scheduler.component.scss +181 -0
- package/src/lib/calendar/scheduler/scheduler.component.ts +249 -0
- package/src/lib/calendar/scheduler/scheduler.module.ts +45 -0
- package/src/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.ts +133 -0
- package/src/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.ts +33 -0
- package/src/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.html +43 -0
- package/src/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.scss +66 -0
- package/src/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.ts +50 -0
- package/src/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.html +45 -0
- package/src/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.scss +19 -0
- package/src/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.ts +103 -0
- package/src/lib/calendar/scheduler/views/month/scheduler-month-view.component.html +39 -0
- package/src/lib/calendar/scheduler/views/month/scheduler-month-view.component.scss +55 -0
- package/src/lib/calendar/scheduler/views/month/scheduler-month-view.component.ts +233 -0
- package/src/lib/calendar/scheduler/views/scheduler-view.component.ts +124 -0
- package/src/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.html +50 -0
- package/src/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.scss +4 -0
- package/src/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.ts +92 -0
- package/src/lib/checkbox/checkbox.component.html +22 -0
- package/src/lib/checkbox/checkbox.component.ts +107 -0
- package/src/lib/checkbox/checkbox.module.ts +11 -0
- package/src/lib/color-picker/color-box/color-box.component.html +37 -0
- package/src/lib/color-picker/color-box/color-box.component.scss +60 -0
- package/src/lib/color-picker/color-box/color-box.component.ts +438 -0
- package/src/lib/color-picker/color-picker.component.html +31 -0
- package/src/lib/color-picker/color-picker.component.ts +87 -0
- package/src/lib/color-picker/color-picker.module.ts +16 -0
- package/src/lib/context-menu/context-menu.component.html +42 -0
- package/src/lib/context-menu/context-menu.component.ts +78 -0
- package/src/lib/context-menu/context-menu.directive.ts +159 -0
- package/src/lib/context-menu/context-menu.module.ts +15 -0
- package/src/lib/data-filter/columns/filter-column-date.component.ts +123 -0
- package/src/lib/data-filter/columns/filter-column-number.component.ts +100 -0
- package/src/lib/data-filter/columns/filter-column-selection.component.ts +69 -0
- package/src/lib/data-filter/columns/filter-column-string.component.ts +100 -0
- package/src/lib/data-filter/filter-panel/filter-panel.component.html +120 -0
- package/src/lib/data-filter/filter-panel/filter-panel.component.scss +143 -0
- package/src/lib/data-filter/filter-panel/filter-panel.component.ts +266 -0
- package/src/lib/data-filter/filter.class.ts +73 -0
- package/src/lib/data-filter/filter.module.ts +52 -0
- package/src/lib/data-filter/toolbar/filter-toolbar.component.html +5 -0
- package/src/lib/data-filter/toolbar/filter-toolbar.component.scss +17 -0
- package/src/lib/data-filter/toolbar/filter-toolbar.component.ts +179 -0
- package/src/lib/data-list/core/data-list.component.ts +62 -0
- package/src/lib/data-list/list/list.component.html +32 -0
- package/src/lib/data-list/list/list.component.scss +64 -0
- package/src/lib/data-list/list/list.component.ts +149 -0
- package/src/lib/data-list/list/list.module.ts +14 -0
- package/src/lib/data-list/list/toolbar-list-view.component.ts +63 -0
- package/src/lib/data-source/datasource.component.ts +50 -0
- package/src/lib/data-source/datasource.module.ts +11 -0
- package/{lib/data-source/read-param.d.ts → src/lib/data-source/read-param.ts} +13 -3
- package/src/lib/date-picker/date-picker.component.html +30 -0
- package/src/lib/date-picker/date-picker.component.scss +5 -0
- package/src/lib/date-picker/date-picker.component.ts +720 -0
- package/src/lib/date-picker/date-picker.module.ts +17 -0
- package/src/lib/dialog/dialog.component.html +5 -0
- package/src/lib/dialog/dialog.component.scss +32 -0
- package/src/lib/dialog/dialog.component.ts +32 -0
- package/src/lib/dialog/dialog.module.ts +13 -0
- package/src/lib/dialog/dialog.service.ts +178 -0
- package/src/lib/drawer/content.component.ts +18 -0
- package/src/lib/drawer/drawer-container.component.ts +37 -0
- package/src/lib/drawer/drawer.component.ts +151 -0
- package/src/lib/drawer/drawer.module.ts +16 -0
- package/src/lib/dropdown/dropdown.component.html +26 -0
- package/src/lib/dropdown/dropdown.component.scss +8 -0
- package/src/lib/dropdown/dropdown.component.ts +197 -0
- package/src/lib/dropdown/dropdown.module.ts +19 -0
- package/src/lib/fieldset/fieldset.component.html +6 -0
- package/src/lib/fieldset/fieldset.component.ts +49 -0
- package/src/lib/fieldset/fieldset.module.ts +11 -0
- package/src/lib/form-group/form-group.component.html +15 -0
- package/src/lib/form-group/form-group.component.ts +39 -0
- package/src/lib/form-group/form-group.module.ts +14 -0
- package/src/lib/label/label.component.html +5 -0
- package/src/lib/label/label.component.ts +18 -0
- package/src/lib/label/label.module.ts +14 -0
- package/src/lib/loading/loading-indicator.component.html +27 -0
- package/src/lib/loading/loading-indicator.component.ts +16 -0
- package/src/lib/loading/loading-panel.component.ts +37 -0
- package/src/lib/loading/loading.module.ts +13 -0
- package/src/lib/loading/loading.service.ts +44 -0
- package/src/lib/menu/menu-item.component.ts +41 -0
- package/src/lib/menu/menu.component.html +74 -0
- package/src/lib/menu/menu.component.ts +111 -0
- package/src/lib/menu/menu.module.ts +13 -0
- package/src/lib/menu/menu2.component.scss +59 -0
- package/src/lib/menu/menu2.component.ts +98 -0
- package/src/lib/number-box/number-box.component.html +32 -0
- package/src/lib/number-box/number-box.component.ts +641 -0
- package/src/lib/number-box/number-box.module.ts +13 -0
- package/src/lib/page/content.component.ts +18 -0
- package/src/lib/page/footer.component.ts +13 -0
- package/src/lib/page/page.component.ts +43 -0
- package/src/lib/page/page.module.ts +14 -0
- package/src/lib/panel-box/panel-box.component.html +19 -0
- package/src/lib/panel-box/panel-box.component.scss +25 -0
- package/src/lib/panel-box/panel-box.component.ts +87 -0
- package/src/lib/panel-box/panel-box.module.ts +10 -0
- package/src/lib/password-box/password-box.component.html +22 -0
- package/src/lib/password-box/password-box.component.ts +30 -0
- package/src/lib/password-box/password-box.module.ts +16 -0
- package/src/lib/popover/custom-cdk-overlay.service.ts +82 -0
- package/src/lib/popover/overlay.service.ts +102 -0
- package/src/lib/popover/popover.component.html +5 -0
- package/src/lib/popover/popover.component.scss +9 -0
- package/src/lib/popover/popover.component.ts +130 -0
- package/src/lib/popover/popover.module.ts +11 -0
- package/src/lib/popup/popup.component.html +33 -0
- package/src/lib/popup/popup.component.scss +167 -0
- package/src/lib/popup/popup.component.ts +184 -0
- package/src/lib/popup/popup.module.ts +16 -0
- package/src/lib/popup/popup.service.ts +103 -0
- package/src/lib/progress-bar/progress-bar.component.html +5 -0
- package/src/lib/progress-bar/progress-bar.component.ts +10 -0
- package/src/lib/progress-bar/progress-bar.module.ts +11 -0
- package/src/lib/property-editor/editors/check-editor/check-editor.ts +44 -0
- package/src/lib/property-editor/editors/check-editor/check.module.ts +14 -0
- package/src/lib/property-editor/editors/color-editor/color.editor.ts +30 -0
- package/src/lib/property-editor/editors/color-editor/color.module.ts +20 -0
- package/src/lib/property-editor/editors/column-editor/column.editor.html +75 -0
- package/src/lib/property-editor/editors/column-editor/column.editor.scss +193 -0
- package/src/lib/property-editor/editors/column-editor/column.editor.ts +124 -0
- package/src/lib/property-editor/editors/column-editor/column.module.ts +28 -0
- package/src/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.html +80 -0
- package/src/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.scss +71 -0
- package/src/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.ts +232 -0
- package/src/lib/property-editor/editors/conditional-color-editor/conditional-color.module.ts +52 -0
- package/src/lib/property-editor/editors/date-editor/date.editor.ts +49 -0
- package/src/lib/property-editor/editors/date-editor/date.module.ts +20 -0
- package/src/lib/property-editor/editors/number-editor/number.editor.ts +46 -0
- package/src/lib/property-editor/editors/number-editor/number.module.ts +20 -0
- package/src/lib/property-editor/editors/range-editor/range.editor.html +67 -0
- package/src/lib/property-editor/editors/range-editor/range.editor.scss +68 -0
- package/src/lib/property-editor/editors/range-editor/range.editor.ts +153 -0
- package/src/lib/property-editor/editors/range-editor/range.module.ts +37 -0
- package/src/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.html +8 -0
- package/src/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.ts +70 -0
- package/src/lib/property-editor/editors/selectbox-editor/selectbox.editor.html +8 -0
- package/src/lib/property-editor/editors/selectbox-editor/selectbox.editor.ts +77 -0
- package/src/lib/property-editor/editors/selectbox-editor/selectbox.module.ts +18 -0
- package/src/lib/property-editor/editors/selection-editor/selection-editor.ts +52 -0
- package/src/lib/property-editor/editors/selection-editor/selection.module.ts +14 -0
- package/src/lib/property-editor/editors/switch-editor/number.editor.ts +26 -0
- package/src/lib/property-editor/editors/switch-editor/number.module.ts +21 -0
- package/src/lib/property-editor/editors/text-editor/text.editor.html +5 -0
- package/src/lib/property-editor/editors/text-editor/text.editor.ts +31 -0
- package/src/lib/property-editor/editors/text-editor/text.module.ts +20 -0
- package/src/lib/property-editor/editors/textarea-editor/textarea.editor.html +9 -0
- package/src/lib/property-editor/editors/textarea-editor/textarea.editor.ts +37 -0
- package/src/lib/property-editor/editors/textarea-editor/textarea.module.ts +20 -0
- package/src/lib/property-editor/editors/time-editor/time.editor.ts +38 -0
- package/src/lib/property-editor/editors/time-editor/time.module.ts +20 -0
- package/src/lib/property-editor/property-editor-renderer.directive.ts +165 -0
- package/src/lib/property-editor/property-editor.class.ts +178 -0
- package/src/lib/property-editor/property-editor.module.ts +115 -0
- package/src/lib/query-builder/query-builder-group.component.html +68 -0
- package/src/lib/query-builder/query-builder-group.component.ts +122 -0
- package/src/lib/query-builder/query-builder-popup/query-builder-popup.component.html +82 -0
- package/src/lib/query-builder/query-builder-popup/query-builder-popup.component.ts +178 -0
- package/src/lib/query-builder/query-builder-rule.component.html +135 -0
- package/src/lib/query-builder/query-builder-rule.component.ts +390 -0
- package/src/lib/query-builder/query-builder.class.ts +53 -0
- package/src/lib/query-builder/query-builder.component.html +3 -0
- package/src/lib/query-builder/query-builder.component.scss +286 -0
- package/src/lib/query-builder/query-builder.component.ts +220 -0
- package/src/lib/query-builder/query-builder.module.ts +44 -0
- package/src/lib/query-builder/query-builder.service.ts +188 -0
- package/src/lib/search-bar/search-bar.component.html +30 -0
- package/src/lib/search-bar/search-bar.component.scss +114 -0
- package/src/lib/search-bar/search-bar.component.ts +287 -0
- package/src/lib/search-bar/search-bar.module.ts +33 -0
- package/src/lib/searchbox/searchbox.component.html +25 -0
- package/src/lib/searchbox/searchbox.component.ts +85 -0
- package/src/lib/searchbox/searchbox.module.ts +17 -0
- package/src/lib/selectbox/selectbox.component.html +100 -0
- package/src/lib/selectbox/selectbox.component.ts +984 -0
- package/src/lib/selectbox/selectbox.module.ts +31 -0
- package/src/lib/selectbox/selectbox2.component.html +78 -0
- package/src/lib/selectbox/selectbox2.component.ts +603 -0
- package/src/lib/selection-list/selection-list.component.html +21 -0
- package/src/lib/selection-list/selection-list.component.ts +115 -0
- package/src/lib/selection-list/selection-list.module.ts +13 -0
- package/src/lib/switch/switch.component.html +4 -0
- package/src/lib/switch/switch.component.scss +65 -0
- package/src/lib/switch/switch.component.ts +57 -0
- package/src/lib/switch/switch.module.ts +14 -0
- package/src/lib/tab-page/tab-page-Renderer.component.ts +70 -0
- package/src/lib/tab-page/tab-page-host.component.ts +110 -0
- package/src/lib/tab-page/tab-page.module.ts +13 -0
- package/src/lib/tab-page/tab-page.service.ts +176 -0
- package/src/lib/tab-strip/tab-strip.component.html +6 -0
- package/src/lib/tab-strip/tab-strip.component.ts +47 -0
- package/src/lib/tab-strip/tab-strip.module.ts +11 -0
- package/src/lib/tab-view/dynamic-tabs.directive.ts +17 -0
- package/src/lib/tab-view/tab-view.component.html +33 -0
- package/src/lib/tab-view/tab-view.component.scss +0 -0
- package/src/lib/tab-view/tab-view.component.ts +129 -0
- package/src/lib/tab-view/tab-view.module.ts +12 -0
- package/src/lib/tab-view/tab.component.html +8 -0
- package/src/lib/tab-view/tab.component.ts +15 -0
- package/src/lib/textarea/textarea.component.html +13 -0
- package/src/lib/textarea/textarea.component.ts +24 -0
- package/src/lib/textarea/textarea.module.ts +14 -0
- package/src/lib/textbox/textbox.component.html +22 -0
- package/src/lib/textbox/textbox.component.ts +38 -0
- package/src/lib/textbox/textbox.module.ts +16 -0
- package/src/lib/time-picker/time-picker.component.html +21 -0
- package/src/lib/time-picker/time-picker.component.ts +1003 -0
- package/src/lib/time-picker/time-picker.module.ts +15 -0
- package/src/lib/toast/toast-message/toast-message.component.html +17 -0
- package/src/lib/toast/toast-message/toast-message.component.scss +75 -0
- package/src/lib/toast/toast-message/toast-message.component.ts +64 -0
- package/src/lib/toast/toast-wrapper/toast-wrapper.component.scss +15 -0
- package/src/lib/toast/toast-wrapper/toast-wrapper.component.ts +13 -0
- package/src/lib/toast/toast.module.ts +12 -0
- package/src/lib/toast/toast.service.ts +64 -0
- package/src/lib/toolbar/group-button/toolbar-group-button.component.ts +54 -0
- package/src/lib/toolbar/menu/toolbar-menu.component.html +4 -0
- package/src/lib/toolbar/menu/toolbar-menu.component.ts +81 -0
- package/src/lib/toolbar/search/toolbar-search.component.html +4 -0
- package/src/lib/toolbar/search/toolbar-search.component.scss +24 -0
- package/src/lib/toolbar/search/toolbar-search.component.ts +61 -0
- package/src/lib/toolbar/title/toolbar-title.component.ts +35 -0
- package/src/lib/toolbar/toolbar-item.ts +4 -0
- package/src/lib/toolbar/toolbar.component.html +4 -0
- package/src/lib/toolbar/toolbar.component.scss +9 -0
- package/src/lib/toolbar/toolbar.component.ts +16 -0
- package/src/lib/toolbar/toolbar.module.ts +25 -0
- package/src/lib/tooltip/tooltip.directive.ts +101 -0
- package/src/lib/tooltip/tooltip.module.ts +11 -0
- package/src/lib/tree-side-menu/tree-side-menu.component.html +43 -0
- package/src/lib/tree-side-menu/tree-side-menu.component.ts +698 -0
- package/src/lib/tree-side-menu/tree-side-menu.module.ts +19 -0
- package/src/lib/tree-view/tree-view.component.html +46 -0
- package/src/lib/tree-view/tree-view.component.ts +835 -0
- package/src/lib/tree-view/tree-view.module.ts +16 -0
- package/src/lib/upload-file/upload-file.component.html +16 -0
- package/src/lib/upload-file/upload-file.component.ts +230 -0
- package/src/lib/upload-file/upload-file.events.ts +11 -0
- package/src/lib/upload-file/upload-file.module.ts +16 -0
- package/src/lib/validation/validation-form.component.ts +78 -0
- package/src/lib/validation/validation-rule.widget.ts +112 -0
- package/src/lib/validation/validation.class.ts +22 -0
- package/src/lib/validation/validation.component.ts +92 -0
- package/src/lib/validation/validation.module.ts +28 -0
- package/{public-api.d.ts → src/public-api.ts} +61 -2
- package/src/test.ts +28 -0
- package/tsconfig.lib.json +25 -0
- package/tsconfig.lib.prod.json +6 -0
- package/tsconfig.spec.json +17 -0
- package/tslint.json +17 -0
- 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 -90
- package/esm2020/lib/popover/popover.component.mjs +0 -127
- 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 -154
- package/esm2020/lib/property-editor/property-editor.class.mjs +0 -101
- 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 -171
- package/esm2020/lib/query-builder/query-builder-rule.component.mjs +0 -395
- package/esm2020/lib/query-builder/query-builder.class.mjs +0 -20
- package/esm2020/lib/query-builder/query-builder.component.mjs +0 -82
- 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 -283
- 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 -116
- package/esm2020/lib/tab-page/tab-page.module.mjs +0 -21
- package/esm2020/lib/tab-page/tab-page.service.mjs +0 -156
- 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 -15988
- package/fesm2015/acorex-components.mjs.map +0 -1
- package/fesm2020/acorex-components.mjs +0 -15923
- package/fesm2020/acorex-components.mjs.map +0 -1
- package/lib/accordion/accordion.component.d.ts +0 -13
- package/lib/accordion/accordion.module.d.ts +0 -9
- package/lib/base/base-page.class.d.ts +0 -46
- package/lib/base/components.class.d.ts +0 -10
- package/lib/base/element.class.d.ts +0 -106
- package/lib/base/events.class.d.ts +0 -18
- package/lib/button/button.component.d.ts +0 -21
- package/lib/button/button.module.d.ts +0 -8
- package/lib/calendar/calendar-box/calendar-box.component.d.ts +0 -81
- package/lib/calendar/calendar-box/calendar-box.module.d.ts +0 -11
- package/lib/calendar/scheduler/scheduler-views.property.d.ts +0 -19
- package/lib/calendar/scheduler/scheduler.component.d.ts +0 -39
- package/lib/calendar/scheduler/scheduler.module.d.ts +0 -21
- package/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.d.ts +0 -25
- package/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.d.ts +0 -14
- package/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.d.ts +0 -16
- package/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.d.ts +0 -26
- package/lib/calendar/scheduler/views/month/scheduler-month-view.component.d.ts +0 -37
- package/lib/calendar/scheduler/views/scheduler-view.component.d.ts +0 -28
- package/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.d.ts +0 -24
- package/lib/checkbox/checkbox.component.d.ts +0 -30
- package/lib/checkbox/checkbox.module.d.ts +0 -9
- package/lib/color-picker/color-box/color-box.component.d.ts +0 -25
- package/lib/color-picker/color-picker.component.d.ts +0 -30
- package/lib/color-picker/color-picker.module.d.ts +0 -13
- package/lib/context-menu/context-menu.component.d.ts +0 -22
- package/lib/context-menu/context-menu.directive.d.ts +0 -38
- package/lib/context-menu/context-menu.module.d.ts +0 -9
- package/lib/data-filter/columns/filter-column-date.component.d.ts +0 -22
- package/lib/data-filter/columns/filter-column-number.component.d.ts +0 -15
- package/lib/data-filter/columns/filter-column-selection.component.d.ts +0 -18
- package/lib/data-filter/columns/filter-column-string.component.d.ts +0 -15
- package/lib/data-filter/filter-panel/filter-panel.component.d.ts +0 -45
- package/lib/data-filter/filter.class.d.ts +0 -40
- package/lib/data-filter/filter.module.d.ts +0 -24
- package/lib/data-filter/toolbar/filter-toolbar.component.d.ts +0 -25
- package/lib/data-list/core/data-list.component.d.ts +0 -15
- package/lib/data-list/list/list.component.d.ts +0 -40
- package/lib/data-list/list/list.module.d.ts +0 -11
- package/lib/data-list/list/toolbar-list-view.component.d.ts +0 -17
- package/lib/data-source/datasource.component.d.ts +0 -16
- package/lib/data-source/datasource.module.d.ts +0 -7
- package/lib/date-picker/date-picker.component.d.ts +0 -81
- package/lib/date-picker/date-picker.module.d.ts +0 -14
- package/lib/dialog/dialog.component.d.ts +0 -14
- package/lib/dialog/dialog.module.d.ts +0 -10
- package/lib/dialog/dialog.service.d.ts +0 -36
- package/lib/drawer/content.component.d.ts +0 -7
- package/lib/drawer/drawer-container.component.d.ts +0 -10
- package/lib/drawer/drawer.component.d.ts +0 -34
- package/lib/drawer/drawer.module.d.ts +0 -10
- package/lib/dropdown/dropdown.component.d.ts +0 -38
- package/lib/dropdown/dropdown.module.d.ts +0 -13
- package/lib/fieldset/fieldset.component.d.ts +0 -11
- package/lib/fieldset/fieldset.module.d.ts +0 -8
- package/lib/form-group/form-group.component.d.ts +0 -14
- package/lib/form-group/form-group.module.d.ts +0 -8
- package/lib/label/label.component.d.ts +0 -9
- package/lib/label/label.module.d.ts +0 -8
- package/lib/loading/loading-indicator.component.d.ts +0 -9
- package/lib/loading/loading-panel.component.d.ts +0 -13
- package/lib/loading/loading.module.d.ts +0 -10
- package/lib/loading/loading.service.d.ts +0 -13
- package/lib/menu/menu-item.component.d.ts +0 -18
- package/lib/menu/menu.component.d.ts +0 -35
- package/lib/menu/menu.module.d.ts +0 -11
- package/lib/menu/menu2.component.d.ts +0 -21
- package/lib/number-box/number-box.component.d.ts +0 -52
- package/lib/number-box/number-box.module.d.ts +0 -10
- package/lib/page/content.component.d.ts +0 -8
- package/lib/page/footer.component.d.ts +0 -5
- package/lib/page/page.component.d.ts +0 -16
- package/lib/page/page.module.d.ts +0 -11
- package/lib/panel-box/panel-box.component.d.ts +0 -19
- package/lib/panel-box/panel-box.module.d.ts +0 -8
- package/lib/password-box/password-box.component.d.ts +0 -12
- package/lib/password-box/password-box.module.d.ts +0 -10
- package/lib/popover/custom-cdk-overlay.service.d.ts +0 -19
- package/lib/popover/overlay.service.d.ts +0 -31
- package/lib/popover/popover.component.d.ts +0 -34
- package/lib/popover/popover.module.d.ts +0 -8
- package/lib/popup/popup.component.d.ts +0 -40
- package/lib/popup/popup.module.d.ts +0 -13
- package/lib/popup/popup.service.d.ts +0 -22
- package/lib/progress-bar/progress-bar.component.d.ts +0 -7
- package/lib/progress-bar/progress-bar.module.d.ts +0 -8
- package/lib/property-editor/editors/check-editor/check-editor.d.ts +0 -19
- package/lib/property-editor/editors/check-editor/check.module.d.ts +0 -11
- package/lib/property-editor/editors/color-editor/color.editor.d.ts +0 -13
- package/lib/property-editor/editors/color-editor/color.module.d.ts +0 -12
- package/lib/property-editor/editors/column-editor/column.editor.d.ts +0 -34
- package/lib/property-editor/editors/column-editor/column.module.d.ts +0 -20
- package/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.d.ts +0 -44
- package/lib/property-editor/editors/conditional-color-editor/conditional-color.module.d.ts +0 -19
- package/lib/property-editor/editors/date-editor/date.editor.d.ts +0 -28
- package/lib/property-editor/editors/date-editor/date.module.d.ts +0 -12
- package/lib/property-editor/editors/number-editor/number.editor.d.ts +0 -20
- package/lib/property-editor/editors/number-editor/number.module.d.ts +0 -12
- package/lib/property-editor/editors/range-editor/range.editor.d.ts +0 -29
- package/lib/property-editor/editors/range-editor/range.module.d.ts +0 -18
- package/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.d.ts +0 -29
- package/lib/property-editor/editors/selectbox-editor/selectbox.editor.d.ts +0 -28
- package/lib/property-editor/editors/selectbox-editor/selectbox.module.d.ts +0 -14
- package/lib/property-editor/editors/selection-editor/selection-editor.d.ts +0 -25
- package/lib/property-editor/editors/selection-editor/selection.module.d.ts +0 -11
- package/lib/property-editor/editors/switch-editor/number.editor.d.ts +0 -11
- package/lib/property-editor/editors/switch-editor/number.module.d.ts +0 -13
- package/lib/property-editor/editors/text-editor/text.editor.d.ts +0 -18
- package/lib/property-editor/editors/text-editor/text.module.d.ts +0 -12
- package/lib/property-editor/editors/textarea-editor/textarea.editor.d.ts +0 -17
- package/lib/property-editor/editors/textarea-editor/textarea.module.d.ts +0 -12
- package/lib/property-editor/editors/time-editor/time.editor.d.ts +0 -17
- package/lib/property-editor/editors/time-editor/time.module.d.ts +0 -12
- package/lib/property-editor/property-editor-renderer.directive.d.ts +0 -30
- package/lib/property-editor/property-editor.class.d.ts +0 -92
- package/lib/property-editor/property-editor.module.d.ts +0 -21
- package/lib/query-builder/query-builder-group.component.d.ts +0 -33
- package/lib/query-builder/query-builder-popup/query-builder-popup.component.d.ts +0 -35
- package/lib/query-builder/query-builder-rule.component.d.ts +0 -45
- package/lib/query-builder/query-builder.class.d.ts +0 -45
- package/lib/query-builder/query-builder.component.d.ts +0 -27
- package/lib/query-builder/query-builder.module.d.ts +0 -23
- package/lib/query-builder/query-builder.service.d.ts +0 -18
- package/lib/search-bar/search-bar.component.d.ts +0 -61
- package/lib/search-bar/search-bar.module.d.ts +0 -18
- package/lib/searchbox/searchbox.component.d.ts +0 -22
- package/lib/searchbox/searchbox.module.d.ts +0 -13
- package/lib/selectbox/selectbox.component.d.ts +0 -118
- package/lib/selectbox/selectbox.module.d.ts +0 -15
- package/lib/selectbox/selectbox2.component.d.ts +0 -103
- package/lib/selection-list/selection-list.component.d.ts +0 -32
- package/lib/selection-list/selection-list.module.d.ts +0 -10
- package/lib/switch/switch.component.d.ts +0 -20
- package/lib/switch/switch.module.d.ts +0 -9
- package/lib/tab-page/tab-page-Renderer.component.d.ts +0 -16
- package/lib/tab-page/tab-page-host.component.d.ts +0 -25
- package/lib/tab-page/tab-page.module.d.ts +0 -10
- package/lib/tab-page/tab-page.service.d.ts +0 -30
- package/lib/tab-strip/tab-strip.component.d.ts +0 -28
- package/lib/tab-strip/tab-strip.module.d.ts +0 -8
- package/lib/tab-view/dynamic-tabs.directive.d.ts +0 -16
- package/lib/tab-view/tab-view.component.d.ts +0 -26
- package/lib/tab-view/tab-view.module.d.ts +0 -10
- package/lib/tab-view/tab.component.d.ts +0 -12
- package/lib/textarea/textarea.component.d.ts +0 -12
- package/lib/textarea/textarea.module.d.ts +0 -8
- package/lib/textbox/textbox.component.d.ts +0 -16
- package/lib/textbox/textbox.module.d.ts +0 -11
- package/lib/time-picker/time-picker.component.d.ts +0 -52
- package/lib/time-picker/time-picker.module.d.ts +0 -11
- package/lib/toast/toast-message/toast-message.component.d.ts +0 -18
- package/lib/toast/toast-wrapper/toast-wrapper.component.d.ts +0 -8
- package/lib/toast/toast.module.d.ts +0 -9
- package/lib/toast/toast.service.d.ts +0 -18
- package/lib/toolbar/group-button/toolbar-group-button.component.d.ts +0 -12
- package/lib/toolbar/menu/toolbar-menu.component.d.ts +0 -24
- package/lib/toolbar/search/toolbar-search.component.d.ts +0 -16
- package/lib/toolbar/title/toolbar-title.component.d.ts +0 -9
- package/lib/toolbar/toolbar-item.d.ts +0 -3
- package/lib/toolbar/toolbar.component.d.ts +0 -8
- package/lib/toolbar/toolbar.module.d.ts +0 -14
- package/lib/tooltip/tooltip.directive.d.ts +0 -21
- package/lib/tooltip/tooltip.module.d.ts +0 -8
- package/lib/tree-side-menu/tree-side-menu.component.d.ts +0 -111
- package/lib/tree-side-menu/tree-side-menu.module.d.ts +0 -11
- package/lib/tree-view/tree-view.component.d.ts +0 -121
- package/lib/tree-view/tree-view.module.d.ts +0 -11
- package/lib/upload-file/upload-file.component.d.ts +0 -42
- package/lib/upload-file/upload-file.events.d.ts +0 -10
- package/lib/upload-file/upload-file.module.d.ts +0 -13
- package/lib/validation/validation-form.component.d.ts +0 -19
- package/lib/validation/validation-rule.widget.d.ts +0 -23
- package/lib/validation/validation.class.d.ts +0 -16
- package/lib/validation/validation.component.d.ts +0 -25
- package/lib/validation/validation.module.d.ts +0 -11
@@ -0,0 +1,698 @@
|
|
1
|
+
import { Component, ViewEncapsulation, Input, ContentChild, Output, EventEmitter, ViewChild, ElementRef, TemplateRef } from '@angular/core';
|
2
|
+
import { AXDataSourceComponent } from '../data-source/datasource.component';
|
3
|
+
import { AXDataEvent, AXHtmlEvent, AXValueEvent } from '../base/events.class';
|
4
|
+
import { AXBaseComponent } from '../base/element.class';
|
5
|
+
import { AXContextMenuItemClickEvent, AXContextMenuPromiseFunction, AXContextMenuFunction } from '../context-menu/context-menu.directive';
|
6
|
+
import { AXMenuItem } from '@acorex/core';
|
7
|
+
|
8
|
+
export class AXTreeSideMenuNode {
|
9
|
+
children: AXTreeSideMenuNode[];
|
10
|
+
itemData: AXTreeSideMenuItemData = new AXTreeSideMenuItemData();
|
11
|
+
parent: AXTreeSideMenuNode;
|
12
|
+
}
|
13
|
+
|
14
|
+
export class AXTreeSideMenuItemData {
|
15
|
+
selected: boolean;
|
16
|
+
key: string;
|
17
|
+
disabled: boolean;
|
18
|
+
open: boolean;
|
19
|
+
hasChild: boolean;
|
20
|
+
item: any;
|
21
|
+
}
|
22
|
+
|
23
|
+
export class AXTreeSideMenuItemMovedEvent {
|
24
|
+
source: AXTreeSideMenuNode;
|
25
|
+
target: AXTreeSideMenuNode;
|
26
|
+
resolve: (value: boolean) => void;
|
27
|
+
}
|
28
|
+
|
29
|
+
export class AXTreeSideMenuSelectionChangedEvent extends AXValueEvent<AXTreeSideMenuNode> {
|
30
|
+
component: AXTreeSideMenuComponent;
|
31
|
+
}
|
32
|
+
|
33
|
+
export class AXTreeSideMenuItemClick extends AXHtmlEvent<MouseEvent> {
|
34
|
+
component: AXTreeSideMenuComponent;
|
35
|
+
item: any;
|
36
|
+
flag: boolean;
|
37
|
+
cancel?: boolean;
|
38
|
+
}
|
39
|
+
|
40
|
+
@Component({
|
41
|
+
selector: 'ax-tree-side-menu',
|
42
|
+
templateUrl: './tree-side-menu.component.html',
|
43
|
+
encapsulation: ViewEncapsulation.None
|
44
|
+
})
|
45
|
+
export class AXTreeSideMenuComponent extends AXBaseComponent {
|
46
|
+
@ContentChild(TemplateRef, { static: true })
|
47
|
+
nodeTemplate: TemplateRef<any>;
|
48
|
+
|
49
|
+
@ContentChild(AXDataSourceComponent, { static: true })
|
50
|
+
private _contentDataSource: AXDataSourceComponent;
|
51
|
+
|
52
|
+
@Input()
|
53
|
+
cssClass: 'single' | 'multiple' = 'single';
|
54
|
+
|
55
|
+
@Input()
|
56
|
+
selectionMode: 'single' | 'multiple' = 'single';
|
57
|
+
|
58
|
+
@Input()
|
59
|
+
selectionLevel: 'all' | 'nodes' | 'parents' = 'all';
|
60
|
+
|
61
|
+
@Input()
|
62
|
+
selectedFieldName: string = null;
|
63
|
+
|
64
|
+
@Input()
|
65
|
+
selectNodesRecursive: boolean = true;
|
66
|
+
|
67
|
+
@Input()
|
68
|
+
seletedKeyFields: any[] = [];
|
69
|
+
|
70
|
+
@Input()
|
71
|
+
keyField: string = 'id';
|
72
|
+
|
73
|
+
@Input()
|
74
|
+
textField: string = 'title';
|
75
|
+
|
76
|
+
@Input()
|
77
|
+
hasChildField: string = 'child';
|
78
|
+
|
79
|
+
@Input()
|
80
|
+
bordered: boolean = false;
|
81
|
+
|
82
|
+
@Input()
|
83
|
+
lazyLoading: boolean = true;
|
84
|
+
|
85
|
+
@Input()
|
86
|
+
allowDrag: boolean = false;
|
87
|
+
|
88
|
+
@Input()
|
89
|
+
size: 'md' | 'sm' = 'md';
|
90
|
+
|
91
|
+
@Input()
|
92
|
+
iconStart: boolean = true;
|
93
|
+
|
94
|
+
@Input()
|
95
|
+
closeIconName: string = 'fal fa-plus';
|
96
|
+
|
97
|
+
@Input()
|
98
|
+
openIconName: string = 'fal fa-minus';
|
99
|
+
|
100
|
+
@Output()
|
101
|
+
selectionChanged: EventEmitter<AXTreeSideMenuSelectionChangedEvent> = new EventEmitter<AXTreeSideMenuSelectionChangedEvent>();
|
102
|
+
|
103
|
+
@Output()
|
104
|
+
onItemOpening: EventEmitter<any> = new EventEmitter<any>();
|
105
|
+
|
106
|
+
@Output()
|
107
|
+
onItemClick: EventEmitter<AXTreeSideMenuItemClick> = new EventEmitter<AXTreeSideMenuItemClick>();
|
108
|
+
|
109
|
+
@Output()
|
110
|
+
onItemClosing: EventEmitter<any> = new EventEmitter<any>();
|
111
|
+
|
112
|
+
@Output()
|
113
|
+
onItemDrag: EventEmitter<any> = new EventEmitter<any>();
|
114
|
+
|
115
|
+
@Output()
|
116
|
+
onItemMoved: EventEmitter<AXTreeSideMenuItemMovedEvent> = new EventEmitter<AXTreeSideMenuItemMovedEvent>();
|
117
|
+
|
118
|
+
@Output()
|
119
|
+
onContextMenuItemClick: EventEmitter<AXContextMenuItemClickEvent> = new EventEmitter<AXContextMenuItemClickEvent>();
|
120
|
+
|
121
|
+
showSelectBox: boolean = false;
|
122
|
+
loading: boolean = false;
|
123
|
+
list: any[] = [];
|
124
|
+
itemRow: any;
|
125
|
+
selectedItems: any[] = [];
|
126
|
+
selectedParents: any[] = [];
|
127
|
+
loadAllChildren: boolean = false;
|
128
|
+
listLoad: any[] = [];
|
129
|
+
itemDrop: any;
|
130
|
+
itemDrag: any;
|
131
|
+
validDrop: boolean = true;
|
132
|
+
lockedDrag: boolean = false;
|
133
|
+
childField: string = 'childeren';
|
134
|
+
showContextMenu: boolean = false;
|
135
|
+
@Input()
|
136
|
+
contextMenuItems: AXMenuItem[] | AXContextMenuPromiseFunction | AXContextMenuFunction;
|
137
|
+
|
138
|
+
constructor(private ref: ElementRef) {
|
139
|
+
super();
|
140
|
+
}
|
141
|
+
|
142
|
+
handleOnContextMenuItem(e: AXContextMenuItemClickEvent) {
|
143
|
+
this.onContextMenuItemClick.emit(e);
|
144
|
+
}
|
145
|
+
|
146
|
+
refresh() {
|
147
|
+
this.list = [];
|
148
|
+
this._contentDataSource.fetch(null);
|
149
|
+
}
|
150
|
+
|
151
|
+
internalSelectItem(item, userChange: boolean = true) {
|
152
|
+
if (item[this.hasChildField] === false || this.selectionMode === 'single') {
|
153
|
+
item.select = !item.select;
|
154
|
+
if (item.parentNode && this.selectionMode !== 'single') {
|
155
|
+
this.changeParentSelect(item.parentNode);
|
156
|
+
}
|
157
|
+
if (item.select === true) {
|
158
|
+
if (this.selectionMode === 'single') {
|
159
|
+
this.selectedItems.forEach((e) => {
|
160
|
+
e.select = false;
|
161
|
+
});
|
162
|
+
this.selectedItems = [];
|
163
|
+
this.selectedItems.push(item);
|
164
|
+
} else {
|
165
|
+
this.selectedItems.push(item);
|
166
|
+
}
|
167
|
+
} else {
|
168
|
+
this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] !== item[this.keyField]);
|
169
|
+
}
|
170
|
+
} else {
|
171
|
+
item.select = !item.select;
|
172
|
+
|
173
|
+
if (item.parentNode && this.selectionMode === 'multiple') {
|
174
|
+
this.changeParentSelect(item.parentNode);
|
175
|
+
}
|
176
|
+
if (this.selectionMode === 'multiple') {
|
177
|
+
this.changeChildSelect(item, item.select);
|
178
|
+
}
|
179
|
+
|
180
|
+
if (item.select == true) {
|
181
|
+
if (this.selectionMode === 'multiple') {
|
182
|
+
this.selectedParents.push(item);
|
183
|
+
} else {
|
184
|
+
this.selectedParents.forEach((e) => {
|
185
|
+
e.select = false;
|
186
|
+
});
|
187
|
+
this.selectedParents = [];
|
188
|
+
this.selectedParents.push(item);
|
189
|
+
}
|
190
|
+
} else {
|
191
|
+
this.selectedParents = this.selectedParents.filter((c) => c[this.keyField] !== item[this.keyField]);
|
192
|
+
}
|
193
|
+
}
|
194
|
+
if (userChange) {
|
195
|
+
this.selectionChanged.emit({
|
196
|
+
component: this,
|
197
|
+
value: this.makeNode(item),
|
198
|
+
htmlElement: this.ref.nativeElement
|
199
|
+
});
|
200
|
+
}
|
201
|
+
}
|
202
|
+
|
203
|
+
private makeNode(item, addChildren: boolean = true) {
|
204
|
+
const node: AXTreeSideMenuNode = new AXTreeSideMenuNode();
|
205
|
+
if (addChildren) {
|
206
|
+
node.children = item[this.childField] === undefined ? [] : item[this.childField]?.map((m) => this.makeNode(m));
|
207
|
+
}
|
208
|
+
node.itemData.disabled = item.disabled === true ? item.disabled : false;
|
209
|
+
node.itemData.open = item.open === true ? item.open : false;
|
210
|
+
node.itemData.key = item[this.keyField];
|
211
|
+
|
212
|
+
const c = [];
|
213
|
+
let i = 0;
|
214
|
+
for (var k in item) {
|
215
|
+
i = i + 1;
|
216
|
+
if (
|
217
|
+
k != 'select' &&
|
218
|
+
k != 'hasChild' &&
|
219
|
+
k != 'loading' &&
|
220
|
+
k != 'requestId' &&
|
221
|
+
k != 'disabled' &&
|
222
|
+
k != 'open' &&
|
223
|
+
k != 'parentNode' &&
|
224
|
+
k != 'toggle' &&
|
225
|
+
k != 'loaded' &&
|
226
|
+
k != 'indeterminate' &&
|
227
|
+
k != this.childField
|
228
|
+
) {
|
229
|
+
//c.push({ k: item[k] });
|
230
|
+
c[k] = item[k];
|
231
|
+
}
|
232
|
+
}
|
233
|
+
node.itemData.item = c; //TO DO
|
234
|
+
node.itemData.selected = item.select === true ? item.select : false;
|
235
|
+
node.itemData.hasChild = item[this.hasChildField];
|
236
|
+
node.parent = item.parentNode === undefined ? null : this.makeNode(item.parentNode, false);
|
237
|
+
return node;
|
238
|
+
}
|
239
|
+
|
240
|
+
private changeChildSelect(item, s) {
|
241
|
+
if (this.selectNodesRecursive) {
|
242
|
+
item.select = s;
|
243
|
+
if (item[this.hasChildField] === true && item[this.childField] && item[this.childField].length > 0) {
|
244
|
+
item[this.childField].forEach((elm) => {
|
245
|
+
if (elm[this.hasChildField] === true) {
|
246
|
+
elm.select = s;
|
247
|
+
|
248
|
+
if (s === true && this.selectionMode !== 'single') {
|
249
|
+
this.selectedParents = this.selectedParents.filter((c) => c[this.keyField] !== elm[this.keyField]);
|
250
|
+
this.selectedParents.push(elm);
|
251
|
+
}
|
252
|
+
if (s === false && this.selectionMode !== 'single') {
|
253
|
+
this.selectedParents = this.selectedParents.filter((c) => c[this.keyField] !== elm[this.keyField]);
|
254
|
+
}
|
255
|
+
|
256
|
+
this.changeChildSelect(elm, s);
|
257
|
+
} else {
|
258
|
+
elm.select = s;
|
259
|
+
if (s === true && this.selectionMode !== 'single') {
|
260
|
+
this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] !== elm[this.keyField]);
|
261
|
+
this.selectedItems.push(elm);
|
262
|
+
}
|
263
|
+
if (s === false && this.selectionMode !== 'single') {
|
264
|
+
this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] !== elm[this.keyField]);
|
265
|
+
}
|
266
|
+
}
|
267
|
+
});
|
268
|
+
} else {
|
269
|
+
item.select = s;
|
270
|
+
}
|
271
|
+
}
|
272
|
+
}
|
273
|
+
|
274
|
+
private changeParentSelect(item) {
|
275
|
+
if (this.selectNodesRecursive) {
|
276
|
+
let allselect = true;
|
277
|
+
let alldeselect = true;
|
278
|
+
let oneselect = false;
|
279
|
+
let isindeterminate = false;
|
280
|
+
|
281
|
+
if (item[this.childField]) {
|
282
|
+
for (let index = 0; index < item[this.childField].length; index++) {
|
283
|
+
if (item[this.childField][index].select === true) {
|
284
|
+
alldeselect = false;
|
285
|
+
oneselect = true;
|
286
|
+
}
|
287
|
+
if (item[this.childField][index].select === false || item[this.childField][index].select === undefined) {
|
288
|
+
allselect = false;
|
289
|
+
}
|
290
|
+
if (item[this.childField][index].select === null) {
|
291
|
+
isindeterminate = true;
|
292
|
+
alldeselect = false;
|
293
|
+
oneselect = true;
|
294
|
+
allselect = false;
|
295
|
+
}
|
296
|
+
}
|
297
|
+
}
|
298
|
+
|
299
|
+
if (oneselect || (isindeterminate && !allselect)) {
|
300
|
+
item.select = null;
|
301
|
+
}
|
302
|
+
if (allselect === true) {
|
303
|
+
item.select = true;
|
304
|
+
}
|
305
|
+
if (alldeselect === true) {
|
306
|
+
item.select = false;
|
307
|
+
}
|
308
|
+
if (item.parentNode && item.parentNode[this.childField] && item.parentNode[this.childField].length > 0) {
|
309
|
+
this.changeParentSelect(item.parentNode);
|
310
|
+
}
|
311
|
+
}
|
312
|
+
}
|
313
|
+
|
314
|
+
ngOnInit(): void {
|
315
|
+
this.onItemClick.subscribe((data: AXTreeSideMenuItemClick) => {
|
316
|
+
if (!data.cancel) {
|
317
|
+
this.toggleNode(data.item, data.flag);
|
318
|
+
}
|
319
|
+
});
|
320
|
+
}
|
321
|
+
|
322
|
+
itemdbClick(e: MouseEvent, item) {
|
323
|
+
if (this.selectionMode == 'single') {
|
324
|
+
this.handleOnNodeClick(e, item, true);
|
325
|
+
}
|
326
|
+
}
|
327
|
+
|
328
|
+
handleOnNodeClick(e: MouseEvent, item, flag = false) {
|
329
|
+
this.onItemClick.emit({
|
330
|
+
component: this,
|
331
|
+
htmlEvent: e,
|
332
|
+
item,
|
333
|
+
flag
|
334
|
+
});
|
335
|
+
e.stopPropagation();
|
336
|
+
e.preventDefault();
|
337
|
+
}
|
338
|
+
|
339
|
+
toggleNode(item, flag = false) {
|
340
|
+
//item[this.hasChildField] === false &&
|
341
|
+
if (this.selectionMode === 'single' && !flag) {
|
342
|
+
if (this.selectionLevel == 'nodes' && item.hasChild == true) {
|
343
|
+
} else {
|
344
|
+
this.internalSelectItem(item);
|
345
|
+
}
|
346
|
+
} else {
|
347
|
+
if (item[this.hasChildField] == true) {
|
348
|
+
item.toggle = !item.toggle;
|
349
|
+
}
|
350
|
+
|
351
|
+
if (this.selectionMode === 'single') {
|
352
|
+
if (this.selectionLevel == 'nodes' && item.hasChild == true) {
|
353
|
+
} else {
|
354
|
+
this.internalSelectItem(item);
|
355
|
+
}
|
356
|
+
}
|
357
|
+
|
358
|
+
if (item[this.hasChildField] === true && item.loaded !== true && this.lazyLoading) {
|
359
|
+
this.itemRow = item;
|
360
|
+
const uid = Math.floor(Math.random() * 100000000);
|
361
|
+
item.requestId = uid;
|
362
|
+
this.listLoad.push(item);
|
363
|
+
this._contentDataSource.fetch(item);
|
364
|
+
this.showLoading(this.itemRow);
|
365
|
+
}
|
366
|
+
if (item.toggle && item[this.hasChildField] === true) {
|
367
|
+
item.open = true;
|
368
|
+
this.onItemOpening.emit(this.makeNode(item));
|
369
|
+
} else if (!item.toggle && item[this.hasChildField] === true) {
|
370
|
+
item.open = false;
|
371
|
+
this.onItemClosing.emit(this.makeNode(item));
|
372
|
+
}
|
373
|
+
}
|
374
|
+
}
|
375
|
+
|
376
|
+
ngAfterContentInit(): void {
|
377
|
+
this._contentDataSource.fetch(null);
|
378
|
+
this._contentDataSource.onDataReceived.subscribe((_data) => {
|
379
|
+
if (this.list.length === 0) {
|
380
|
+
this.hideLoading(null);
|
381
|
+
this.list = _data.data.result;
|
382
|
+
|
383
|
+
this.list.forEach((el) => {
|
384
|
+
el.select = false;
|
385
|
+
|
386
|
+
if (this.selectionLevel == 'nodes' && el[this.hasChildField] == true) {
|
387
|
+
el.disabledCheckBox = true;
|
388
|
+
}
|
389
|
+
|
390
|
+
if (this.selectionLevel == 'parents' && el[this.hasChildField] == false) {
|
391
|
+
el.disabledCheckBox = true;
|
392
|
+
}
|
393
|
+
|
394
|
+
if (this.seletedKeyFields.length > 0) {
|
395
|
+
this.seletedKeyFields.forEach((n: any) => {
|
396
|
+
if (n.includes(el[this.keyField])) {
|
397
|
+
if (el[this.hasChildField] == true) {
|
398
|
+
// if (this.selectNodesRecursive) {
|
399
|
+
this.open(el);
|
400
|
+
// }
|
401
|
+
} else {
|
402
|
+
this.selectItem(el);
|
403
|
+
}
|
404
|
+
}
|
405
|
+
});
|
406
|
+
} else if (this.selectedFieldName != null) {
|
407
|
+
if (el[this.hasChildField] == true && el[this.selectedFieldName] == true) {
|
408
|
+
// if (this.selectNodesRecursive) {
|
409
|
+
this.open(el);
|
410
|
+
// }
|
411
|
+
} else if (el[this.selectedFieldName] == true) {
|
412
|
+
this.selectItem(el);
|
413
|
+
}
|
414
|
+
}
|
415
|
+
});
|
416
|
+
} else {
|
417
|
+
this.itemRow = this.listLoad.filter((c) => c.requestId === _data.data.requestId)[0];
|
418
|
+
this.listLoad = this.listLoad.filter((c) => c.requestId !== _data.data.requestId);
|
419
|
+
if (this.itemRow !== undefined) {
|
420
|
+
this.hideLoading(this.itemRow);
|
421
|
+
const result = _data.data.result;
|
422
|
+
|
423
|
+
if (this.list.length !== 0) {
|
424
|
+
if (this.itemRow[this.childField] && this.itemRow[this.childField].length > 0) {
|
425
|
+
result.forEach((el) => {
|
426
|
+
this.itemRow[this.childField][this.itemRow[this.childField].length] = el;
|
427
|
+
});
|
428
|
+
} else {
|
429
|
+
this.itemRow[this.childField] = result;
|
430
|
+
}
|
431
|
+
|
432
|
+
for (let i = 0; i < result.length; i++) {
|
433
|
+
if (this.selectionLevel == 'nodes' && result[i][this.hasChildField] == true) {
|
434
|
+
result[i].disabledCheckBox = true;
|
435
|
+
}
|
436
|
+
|
437
|
+
if (this.selectionLevel == 'parents' && result[i][this.hasChildField] == false) {
|
438
|
+
result[i].disabledCheckBox = true;
|
439
|
+
}
|
440
|
+
if (this.selectionMode !== 'single' && this.selectNodesRecursive) {
|
441
|
+
result[i].select = this.itemRow.select === (undefined || null) ? false : this.itemRow.select;
|
442
|
+
|
443
|
+
if (this.itemRow.select === true && this.selectionMode == 'multiple' && result[i][this.hasChildField] === false) {
|
444
|
+
this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] !== result[i][this.keyField]);
|
445
|
+
this.selectedItems.push(result[i]);
|
446
|
+
}
|
447
|
+
} else {
|
448
|
+
result[i].select = false;
|
449
|
+
}
|
450
|
+
result[i].parentNode = this.itemRow;
|
451
|
+
|
452
|
+
if (this.seletedKeyFields.length > 0) {
|
453
|
+
this.seletedKeyFields.forEach((n: any) => {
|
454
|
+
if (n.includes(result[i][this.keyField])) {
|
455
|
+
if (result[i][this.hasChildField] == true) {
|
456
|
+
// if (this.selectNodesRecursive) {
|
457
|
+
this.open(result[i]);
|
458
|
+
// }
|
459
|
+
} else {
|
460
|
+
this.selectItem(result[i]);
|
461
|
+
}
|
462
|
+
}
|
463
|
+
});
|
464
|
+
} else if (this.selectedFieldName != null) {
|
465
|
+
if (result[i][this.hasChildField] == true && result[i][this.selectedFieldName] == true) {
|
466
|
+
// if (this.selectNodesRecursive) {
|
467
|
+
this.open(result[i]);
|
468
|
+
// }
|
469
|
+
} else if (result[i][this.selectedFieldName] == true) {
|
470
|
+
this.selectItem(result[i]);
|
471
|
+
}
|
472
|
+
}
|
473
|
+
}
|
474
|
+
|
475
|
+
this.itemRow.loaded = true;
|
476
|
+
}
|
477
|
+
}
|
478
|
+
}
|
479
|
+
});
|
480
|
+
}
|
481
|
+
|
482
|
+
ngAfterViewInit(): void {
|
483
|
+
if (this.selectionMode !== 'single') {
|
484
|
+
this.showSelectBox = true;
|
485
|
+
}
|
486
|
+
this.showContextMenu = true;
|
487
|
+
}
|
488
|
+
|
489
|
+
// onItemClick(e, v) {
|
490
|
+
|
491
|
+
// }
|
492
|
+
|
493
|
+
onDragStart(e: Event, v) {
|
494
|
+
if (!this.lockedDrag) {
|
495
|
+
this.itemDrag = v;
|
496
|
+
this.onItemDrag.emit(v);
|
497
|
+
}
|
498
|
+
e.stopImmediatePropagation();
|
499
|
+
}
|
500
|
+
|
501
|
+
onDragEnd(e, v) {
|
502
|
+
if (!this.lockedDrag) {
|
503
|
+
this.itemDrop = v;
|
504
|
+
}
|
505
|
+
e.stopImmediatePropagation();
|
506
|
+
}
|
507
|
+
|
508
|
+
drop(e) {
|
509
|
+
// this.onItemDrop.emit(this.itemDrop);
|
510
|
+
if (!this.lockedDrag) {
|
511
|
+
this.validDrop = true;
|
512
|
+
this.sameChilde(this.itemDrag, this.itemDrop);
|
513
|
+
if (this.validDrop && this.itemDrag[this.keyField] !== this.itemDrop[this.keyField] && this.itemDrag.parentNode !== this.itemDrop) {
|
514
|
+
const movedEvent: AXTreeSideMenuItemMovedEvent = new AXTreeSideMenuItemMovedEvent();
|
515
|
+
movedEvent.source = this.makeNode(this.itemDrag);
|
516
|
+
movedEvent.target = this.makeNode(this.itemDrop);
|
517
|
+
this.lockedDrag = true;
|
518
|
+
this.showLoading(this.itemDrag);
|
519
|
+
this.showLoading(this.itemDrop);
|
520
|
+
movedEvent.resolve = (value: boolean) => {
|
521
|
+
this.hideLoading(this.itemDrag);
|
522
|
+
this.hideLoading(this.itemDrop);
|
523
|
+
if (value) {
|
524
|
+
this.dragDropItem(this.itemDrag, this.itemDrop);
|
525
|
+
} else {
|
526
|
+
this.lockedDrag = false;
|
527
|
+
}
|
528
|
+
};
|
529
|
+
this.onItemMoved.emit(movedEvent);
|
530
|
+
}
|
531
|
+
}
|
532
|
+
|
533
|
+
e.stopImmediatePropagation();
|
534
|
+
}
|
535
|
+
|
536
|
+
sameChilde(parent, child) {
|
537
|
+
if (parent[this.childField] && parent[this.childField].length > 0) {
|
538
|
+
for (let index = 0; index < parent[this.childField].length; index++) {
|
539
|
+
if (parent[this.childField][index][this.keyField] == child[this.keyField]) {
|
540
|
+
this.validDrop = false;
|
541
|
+
}
|
542
|
+
if (parent[this.childField][index][this.childField] && parent[this.childField][index][this.childField].length > 0) {
|
543
|
+
this.sameChilde(parent[this.childField][index], child);
|
544
|
+
}
|
545
|
+
}
|
546
|
+
} else if (parent[this.keyField] == child[this.keyField]) {
|
547
|
+
this.validDrop = false;
|
548
|
+
}
|
549
|
+
}
|
550
|
+
|
551
|
+
dragDropItem(itemChild, itemParent) {
|
552
|
+
if (this.selectionLevel == 'nodes') {
|
553
|
+
itemParent.disabledCheckBox = true;
|
554
|
+
}
|
555
|
+
|
556
|
+
if (itemChild.parentNode) {
|
557
|
+
itemChild.parentNode[this.childField] = itemChild.parentNode[this.childField].filter((c) => c[this.keyField] !== itemChild[this.keyField]);
|
558
|
+
} else {
|
559
|
+
this.list = this.list.filter((c) => c[this.keyField] !== itemChild[this.keyField]);
|
560
|
+
}
|
561
|
+
itemChild.parentNode = itemParent;
|
562
|
+
if (itemParent[this.childField] && itemParent[this.childField].length > 0) {
|
563
|
+
itemParent[this.childField][itemParent[this.childField].length] = itemChild;
|
564
|
+
} else {
|
565
|
+
itemParent[this.childField] = [];
|
566
|
+
itemParent[this.childField][0] = itemChild;
|
567
|
+
if (itemParent[this.hasChildField] === true) {
|
568
|
+
this.toggleNode(itemParent);
|
569
|
+
} else {
|
570
|
+
itemParent.toggle = !itemParent.toggle;
|
571
|
+
itemParent.loaded = true;
|
572
|
+
}
|
573
|
+
itemParent[this.hasChildField] = true;
|
574
|
+
}
|
575
|
+
if (itemChild.parentNode && this.selectionMode !== 'single') {
|
576
|
+
this.changeParentSelect(itemChild.parentNode);
|
577
|
+
}
|
578
|
+
this.lockedDrag = false;
|
579
|
+
}
|
580
|
+
|
581
|
+
private listChange(field, value) {
|
582
|
+
for (let index = 0; index < this.list.length; index++) {
|
583
|
+
this.changeChiled(this.list[index], field, value);
|
584
|
+
}
|
585
|
+
this.loadAllChildren = false;
|
586
|
+
}
|
587
|
+
|
588
|
+
private changeChiled(item, field, value) {
|
589
|
+
if (field === 'toggle' && (item.loaded === false || item.loaded === undefined)) {
|
590
|
+
if (this.loadAllChildren === true) {
|
591
|
+
this.toggleNode(item);
|
592
|
+
item[field] = value;
|
593
|
+
}
|
594
|
+
} else {
|
595
|
+
item[field] = value;
|
596
|
+
if (field === 'select' && item[this.hasChildField] === false && value === true) {
|
597
|
+
this.selectedItems.push(item);
|
598
|
+
}
|
599
|
+
}
|
600
|
+
if (field === 'select') {
|
601
|
+
item.indeterminate = false;
|
602
|
+
}
|
603
|
+
if (item[this.hasChildField] === true && item[this.childField] && item[this.childField].length > 0) {
|
604
|
+
item[this.childField].forEach((element) => {
|
605
|
+
this.changeChiled(element, field, value);
|
606
|
+
});
|
607
|
+
}
|
608
|
+
}
|
609
|
+
|
610
|
+
private showLoading(item): void {
|
611
|
+
item.loading = true;
|
612
|
+
}
|
613
|
+
|
614
|
+
private hideLoading(item): void {
|
615
|
+
if (item != null) {
|
616
|
+
item.loading = false;
|
617
|
+
}
|
618
|
+
}
|
619
|
+
|
620
|
+
public openAll(loadAll: boolean = false) {
|
621
|
+
// if (loadAll) {
|
622
|
+
// this.loadAllChildren = true;
|
623
|
+
// this.listChange('toggle', true);
|
624
|
+
//} else {
|
625
|
+
this.listChange('toggle', true);
|
626
|
+
// }
|
627
|
+
}
|
628
|
+
|
629
|
+
public selectItem(item) {
|
630
|
+
if (item['select'] != true) {
|
631
|
+
this.internalSelectItem(item, false);
|
632
|
+
}
|
633
|
+
}
|
634
|
+
|
635
|
+
public open(item) {
|
636
|
+
if (item['toggle'] !== true) {
|
637
|
+
this.toggleNode(item, true);
|
638
|
+
}
|
639
|
+
}
|
640
|
+
|
641
|
+
public scrolIntoView(item) {
|
642
|
+
let element = document.querySelector(`li[data-id='${item[this.keyField]}']`);
|
643
|
+
element.scrollIntoView();
|
644
|
+
}
|
645
|
+
|
646
|
+
public closeAll() {
|
647
|
+
this.listChange('toggle', false);
|
648
|
+
}
|
649
|
+
|
650
|
+
public selectAll() {
|
651
|
+
if (this.selectionMode !== 'single') {
|
652
|
+
this.listChange('select', true);
|
653
|
+
}
|
654
|
+
}
|
655
|
+
|
656
|
+
public unSelectAll() {
|
657
|
+
if (this.selectionMode !== 'single') {
|
658
|
+
this.listChange('select', false);
|
659
|
+
}
|
660
|
+
this.selectedItems = [];
|
661
|
+
}
|
662
|
+
|
663
|
+
public getSelectedNodes(): AXTreeSideMenuNode[] {
|
664
|
+
const selectItemsNode = [];
|
665
|
+
this.selectedItems.forEach((e) => {
|
666
|
+
selectItemsNode.push(this.makeNode(e));
|
667
|
+
});
|
668
|
+
return selectItemsNode;
|
669
|
+
}
|
670
|
+
|
671
|
+
public getSelectedParents(): AXTreeSideMenuNode[] {
|
672
|
+
const selectItemsParent = [];
|
673
|
+
this.selectedParents.forEach((e) => {
|
674
|
+
selectItemsParent.push(this.makeNode(e));
|
675
|
+
});
|
676
|
+
return selectItemsParent;
|
677
|
+
}
|
678
|
+
|
679
|
+
getParentsId(item) {
|
680
|
+
let keyFields = [];
|
681
|
+
keyFields.push(item[this.keyField]);
|
682
|
+
if (item.parentNode) {
|
683
|
+
keyFields.push(...this.getParentsId(item.parentNode));
|
684
|
+
}
|
685
|
+
return keyFields;
|
686
|
+
}
|
687
|
+
|
688
|
+
public getSelectedKeyFields() {
|
689
|
+
let keyFields = [];
|
690
|
+
this.selectedItems.forEach((elm) => {
|
691
|
+
var Ids = this.getParentsId(elm);
|
692
|
+
if (Ids) {
|
693
|
+
keyFields.push(Ids);
|
694
|
+
}
|
695
|
+
});
|
696
|
+
return keyFields;
|
697
|
+
}
|
698
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import { NgModule } from "@angular/core";
|
2
|
+
import { AXTreeSideMenuComponent } from "./tree-side-menu.component";
|
3
|
+
import { CommonModule } from "@angular/common";
|
4
|
+
import { AXDataSourceModule } from "../data-source/datasource.module";
|
5
|
+
import { AXCheckBoxModule } from "../checkbox/checkbox.module";
|
6
|
+
import { AXContextMenuModule } from "../context-menu/context-menu.module";
|
7
|
+
|
8
|
+
@NgModule({
|
9
|
+
declarations: [AXTreeSideMenuComponent],
|
10
|
+
imports: [
|
11
|
+
AXDataSourceModule,
|
12
|
+
CommonModule,
|
13
|
+
AXCheckBoxModule,
|
14
|
+
AXContextMenuModule,
|
15
|
+
],
|
16
|
+
exports: [AXTreeSideMenuComponent],
|
17
|
+
providers: [],
|
18
|
+
})
|
19
|
+
export class AXTreeSideMenuModule {}
|