@trudb/tru-common-lib 0.0.726 → 0.0.730
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/{esm2020 → esm2022}/lib/assets/tru-icon-module.mjs +32 -32
- package/{esm2020 → esm2022}/lib/assets/tru-search-icon-module.mjs +36 -36
- package/{esm2020 → esm2022}/lib/base-classes/tru-component-config-base.mjs +3 -3
- package/{esm2020 → esm2022}/lib/base-classes/tru-control-component-config-base.mjs +3 -3
- package/{esm2020 → esm2022}/lib/base-classes/tru-edit-control-base.mjs +17 -17
- package/esm2022/lib/base-classes/tru-edit-control-config-base.mjs +6 -0
- package/{esm2020 → esm2022}/lib/base-classes/tru-edit-parent-control-config-base.mjs +3 -3
- package/{esm2020 → esm2022}/lib/base-classes/tru-edit-pkey-control-config-base.mjs +3 -3
- package/esm2022/lib/base-classes/tru-entity-base.mjs +14 -0
- package/esm2022/lib/base-classes/tru-list-control-config-base.mjs +6 -0
- package/{esm2020 → esm2022}/lib/base-classes/tru-property-config-base.mjs +14 -15
- package/{esm2020 → esm2022}/lib/base-classes/tru-search-config-base.mjs +3 -3
- package/esm2022/lib/base-classes/tru-search-control-base.mjs +45 -0
- package/esm2022/lib/base-classes/tru-search-control-config-base.mjs +5 -0
- package/esm2022/lib/base-classes/tru-search-control-range-base.mjs +45 -0
- package/esm2022/lib/base-classes/tru-table-config-base.mjs +12 -0
- package/{esm2020 → esm2022}/lib/base-views/detail/tru-detail-view-base-module.mjs +19 -19
- package/esm2022/lib/base-views/detail/tru-detail-view-base.mjs +83 -0
- package/esm2022/lib/base-views/search/services/tru-search-view-control-event-handler.mjs +25 -0
- package/esm2022/lib/base-views/search/services/tru-search-view-event-handler.mjs +25 -0
- package/{esm2020 → esm2022}/lib/base-views/search/tru-search-view-base-module.mjs +19 -19
- package/esm2022/lib/base-views/search/tru-search-view-base.mjs +68 -0
- package/{esm2020 → esm2022}/lib/base-views/search-result/tru-search-result-view-base-module.mjs +19 -19
- package/esm2022/lib/base-views/search-result/tru-search-result-view-base.mjs +54 -0
- package/{esm2020 → esm2022}/lib/classes/tru-choice.mjs +2 -2
- package/esm2022/lib/classes/tru-context-filter-choice.mjs +11 -0
- package/esm2022/lib/classes/tru-context-filter.mjs +16 -0
- package/esm2022/lib/classes/tru-data-change-parser.mjs +287 -0
- package/esm2022/lib/classes/tru-data-change.mjs +5 -0
- package/{esm2020 → esm2022}/lib/classes/tru-formula-eval.mjs +156 -156
- package/esm2022/lib/classes/tru-merge-data-set.mjs +11 -0
- package/esm2022/lib/classes/tru-merge-data.mjs +20 -0
- package/{esm2020 → esm2022}/lib/classes/tru-name-value.mjs +2 -2
- package/esm2022/lib/classes/tru-predicate.mjs +47 -0
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-cloud-file.mjs +4 -4
- package/esm2022/lib/classes/tru-property-config-date.mjs +7 -0
- package/esm2022/lib/classes/tru-property-config-decimal.mjs +9 -0
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-file.mjs +6 -8
- package/esm2022/lib/classes/tru-property-config-foreign-key.mjs +8 -0
- package/esm2022/lib/classes/tru-property-config-integer.mjs +7 -0
- package/esm2022/lib/classes/tru-property-config-password.mjs +6 -0
- package/esm2022/lib/classes/tru-property-config-percentage.mjs +7 -0
- package/esm2022/lib/classes/tru-property-config-scientific.mjs +7 -0
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-text-choices.mjs +6 -8
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-text.mjs +8 -10
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-usa-address.mjs +6 -8
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-zip-code.mjs +6 -8
- package/esm2022/lib/classes/tru-query-predicate-manager.mjs +49 -0
- package/{esm2020 → esm2022}/lib/components/confirm-dialog/tru-confirm-dialog-module.mjs +20 -20
- package/esm2022/lib/components/confirm-dialog/tru-confirm-dialog.mjs +59 -0
- package/{esm2020 → esm2022}/lib/components/data-grid/classes/tru-data-grid-config.mjs +1 -1
- package/{esm2020 → esm2022}/lib/components/data-grid/enums/tru-data-grid-types.mjs +6 -6
- package/esm2022/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.mjs +40 -0
- package/esm2022/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.mjs +27 -0
- package/esm2022/lib/components/data-grid/tru-data-grid-module.mjs +67 -0
- package/esm2022/lib/components/data-grid/tru-data-grid.mjs +382 -0
- package/{esm2020 → esm2022}/lib/components/desktop/classes/tru-desktop-title.mjs +2 -2
- package/esm2022/lib/components/desktop/classes/tru-desktop-view-config.mjs +21 -0
- package/{esm2020 → esm2022}/lib/components/desktop/directives/resizable/tru-desktop-resizable-module.mjs +19 -19
- package/esm2022/lib/components/desktop/directives/resizable/tru-desktop-resizable.mjs +122 -0
- package/{esm2020 → esm2022}/lib/components/desktop/menubar/tru-desktop-menubar-module.mjs +56 -56
- package/esm2022/lib/components/desktop/menubar/tru-desktop-menubar.mjs +36 -0
- package/esm2022/lib/components/desktop/services/tru-desktop-manager.mjs +86 -0
- package/esm2022/lib/components/desktop/services/tru-desktop-service.mjs +108 -0
- package/esm2022/lib/components/desktop/services/tru-window-action-event-handler.mjs +25 -0
- package/esm2022/lib/components/desktop/services/tru-window-event-args.mjs +24 -0
- package/esm2022/lib/components/desktop/services/tru-window-event-handler.mjs +42 -0
- package/{esm2020 → esm2022}/lib/components/desktop/statusbar/tru-desktop-statusbar-module.mjs +19 -19
- package/esm2022/lib/components/desktop/statusbar/tru-desktop-statusbar.mjs +20 -0
- package/{esm2020 → esm2022}/lib/components/desktop/taskbar/tru-desktop-taskbar-module.mjs +21 -21
- package/esm2022/lib/components/desktop/taskbar/tru-desktop-taskbar.mjs +41 -0
- package/{esm2020 → esm2022}/lib/components/desktop/tru-desktop-module.mjs +72 -72
- package/esm2022/lib/components/desktop/tru-desktop.mjs +737 -0
- package/{esm2020 → esm2022}/lib/components/desktop/view/tru-desktop-view-module.mjs +19 -19
- package/esm2022/lib/components/desktop/view/tru-desktop-view.mjs +29 -0
- package/{esm2020 → esm2022}/lib/components/desktop/viewport/tru-desktop-viewport-module.mjs +20 -20
- package/esm2022/lib/components/desktop/viewport/tru-desktop-viewport.mjs +117 -0
- package/{esm2020 → esm2022}/lib/components/desktop/window/tru-desktop-window-module.mjs +58 -58
- package/esm2022/lib/components/desktop/window/tru-desktop-window.mjs +467 -0
- package/{esm2020 → esm2022}/lib/components/export-dialog/tru-export-dialog-module.mjs +20 -20
- package/esm2022/lib/components/export-dialog/tru-export-dialog.mjs +61 -0
- package/{esm2020 → esm2022}/lib/components/layout/column/tru-column-module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/layout/column/tru-column.mjs +12 -12
- package/{esm2020 → esm2022}/lib/components/layout/form/tru-form-module.mjs +19 -19
- package/esm2022/lib/components/layout/form/tru-form.mjs +35 -0
- package/{esm2020 → esm2022}/lib/components/layout/group-box/tru-group-box-module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/layout/group-box/tru-group-box.mjs +12 -12
- package/{esm2020 → esm2022}/lib/components/layout/row/tru-row-module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/layout/row/tru-row.mjs +12 -12
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-config.mjs +7 -7
- package/esm2022/lib/components/login/classes/tru-auth-jwt-strategy.mjs +63 -0
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-login-request.mjs +5 -3
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-logout-request.mjs +4 -3
- package/esm2022/lib/components/login/classes/tru-auth-session-strategy.mjs +21 -0
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-strategy-provider.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-token.mjs +11 -8
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-user-request.mjs +4 -3
- package/esm2022/lib/components/login/services/tru-auth-cache.mjs +20 -0
- package/esm2022/lib/components/login/services/tru-auth-interceptor.mjs +46 -0
- package/esm2022/lib/components/login/services/tru-auth.mjs +87 -0
- package/esm2022/lib/components/login/tru-login-module.mjs +46 -0
- package/esm2022/lib/components/login/tru-login.mjs +59 -0
- package/{esm2020 → esm2022}/lib/components/password-dialog/tru-password-dialog-module.mjs +20 -20
- package/esm2022/lib/components/password-dialog/tru-password-dialog.mjs +59 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/button/tru-toolbar-button-module.mjs +32 -32
- package/esm2022/lib/components/toolbar/button/tru-toolbar-button.mjs +40 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/classes/tru-toolbar-dropdown-option.mjs +1 -1
- package/{esm2020 → esm2022}/lib/components/toolbar/context-filter/tru-toolbar-context-filter-module.mjs +44 -44
- package/esm2022/lib/components/toolbar/context-filter/tru-toolbar-context-filter.mjs +26 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/dropdown/tru-toolbar-dropdown-module.mjs +36 -36
- package/esm2022/lib/components/toolbar/dropdown/tru-toolbar-dropdown.mjs +45 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button-module.mjs +19 -19
- package/esm2022/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.mjs +17 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item-module.mjs +19 -19
- package/esm2022/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.mjs +26 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/menu/tru-toolbar-menu-module.mjs +32 -32
- package/esm2022/lib/components/toolbar/menu/tru-toolbar-menu.mjs +33 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/separator/tru-toolbar-separator-module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/toolbar/separator/tru-toolbar-separator.mjs +12 -12
- package/{esm2020 → esm2022}/lib/components/toolbar/text/tru-toolbar-text-module.mjs +32 -32
- package/esm2022/lib/components/toolbar/text/tru-toolbar-text.mjs +27 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/tru-toolbar-module.mjs +73 -73
- package/{esm2020 → esm2022}/lib/components/toolbar/tru-toolbar.mjs +20 -21
- package/{esm2020 → esm2022}/lib/components/toolbar/user-profile/tru-toolbar-user-profile-module.mjs +36 -36
- package/esm2022/lib/components/toolbar/user-profile/tru-toolbar-user-profile.mjs +38 -0
- package/esm2022/lib/components/validation-dialog/tru-validation-dialog-config.mjs +25 -0
- package/{esm2020 → esm2022}/lib/components/validation-dialog/tru-validation-dialog-module.mjs +19 -19
- package/esm2022/lib/components/validation-dialog/tru-validation-dialog.mjs +83 -0
- package/{esm2020 → esm2022}/lib/directives/breeze-validator/tru-breeze-validator-module.mjs +19 -19
- package/esm2022/lib/directives/breeze-validator/tru-breeze-validator.mjs +107 -0
- package/{esm2020 → esm2022}/lib/directives/search-panel-position-manager/tru-search-panel-position-manager-module.mjs +19 -19
- package/esm2022/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.mjs +155 -0
- package/{esm2020 → esm2022}/lib/directives/select-panel/tru-mat-select-panel-module.mjs +19 -19
- package/esm2022/lib/directives/select-panel/tru-mat-select-panel.mjs +69 -0
- package/{esm2020 → esm2022}/lib/interfaces/tru-value.mjs +1 -1
- package/{esm2020 → esm2022}/lib/material.module.mjs +192 -192
- package/esm2022/lib/services/tru-app-environment.mjs +113 -0
- package/esm2022/lib/services/tru-breeze-context-factory.mjs +84 -0
- package/esm2022/lib/services/tru-breeze-metadata-provider.mjs +21 -0
- package/esm2022/lib/services/tru-component-lookup.mjs +23 -0
- package/esm2022/lib/services/tru-connection-hub.mjs +52 -0
- package/esm2022/lib/services/tru-context-filters.mjs +28 -0
- package/esm2022/lib/services/tru-data-context.mjs +263 -0
- package/esm2022/lib/services/tru-entity-accessor.mjs +292 -0
- package/esm2022/lib/services/tru-model-property-lookup.mjs +21 -0
- package/{esm2020 → esm2022}/lib/services/tru-predicate-map.mjs +11 -11
- package/esm2022/lib/services/tru-search-result-view-manager.mjs +18 -0
- package/esm2022/lib/services/tru-sort.mjs +113 -0
- package/esm2022/lib/services/tru-table-registry.mjs +15 -0
- package/esm2022/lib/services/tru-text-manager.mjs +148 -0
- package/esm2022/lib/services/tru-ui-notification.mjs +107 -0
- package/esm2022/lib/services/tru-user.mjs +62 -0
- package/esm2022/lib/services/tru-util.mjs +76 -0
- package/{esm2020 → esm2022}/lib/tru-common-module.mjs +16 -16
- package/{esm2020 → esm2022}/public-api.mjs +144 -144
- package/{esm2020 → esm2022}/trudb-tru-common-lib.mjs +4 -4
- package/fesm2022/trudb-tru-common-lib.mjs +6937 -0
- package/fesm2022/trudb-tru-common-lib.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/assets/tru-icon-module.d.ts +11 -11
- package/lib/assets/tru-search-icon-module.d.ts +11 -11
- package/lib/base-classes/tru-component-config-base.d.ts +3 -3
- package/lib/base-classes/tru-control-component-config-base.d.ts +20 -20
- package/lib/base-classes/tru-edit-control-base.d.ts +10 -10
- package/lib/base-classes/tru-edit-control-config-base.d.ts +21 -21
- package/lib/base-classes/tru-edit-parent-control-config-base.d.ts +9 -9
- package/lib/base-classes/tru-edit-pkey-control-config-base.d.ts +11 -11
- package/lib/base-classes/tru-entity-base.d.ts +14 -14
- package/lib/base-classes/tru-list-control-config-base.d.ts +21 -21
- package/lib/base-classes/tru-property-config-base.d.ts +13 -13
- package/lib/base-classes/tru-search-config-base.d.ts +9 -9
- package/lib/base-classes/tru-search-control-base.d.ts +21 -21
- package/lib/base-classes/tru-search-control-config-base.d.ts +13 -13
- package/lib/base-classes/tru-search-control-range-base.d.ts +25 -25
- package/lib/base-classes/tru-table-config-base.d.ts +11 -11
- package/lib/base-views/detail/tru-detail-view-base-module.d.ts +9 -9
- package/lib/base-views/detail/tru-detail-view-base.d.ts +32 -32
- package/lib/base-views/search/services/tru-search-view-control-event-handler.d.ts +12 -12
- package/lib/base-views/search/services/tru-search-view-event-handler.d.ts +11 -11
- package/lib/base-views/search/tru-search-view-base-module.d.ts +9 -9
- package/lib/base-views/search/tru-search-view-base.d.ts +36 -36
- package/lib/base-views/search-result/tru-search-result-view-base-module.d.ts +9 -9
- package/lib/base-views/search-result/tru-search-result-view-base.d.ts +25 -25
- package/lib/classes/tru-choice.d.ts +8 -8
- package/lib/classes/tru-context-filter-choice.d.ts +6 -6
- package/lib/classes/tru-context-filter.d.ts +10 -10
- package/lib/classes/tru-data-change-parser.d.ts +33 -33
- package/lib/classes/tru-data-change.d.ts +4 -4
- package/lib/classes/tru-formula-eval.d.ts +31 -31
- package/lib/classes/tru-merge-data-set.d.ts +7 -7
- package/lib/classes/tru-merge-data.d.ts +9 -9
- package/lib/classes/tru-name-value.d.ts +9 -9
- package/lib/classes/tru-predicate.d.ts +8 -8
- package/lib/classes/tru-property-config-cloud-file.d.ts +4 -4
- package/lib/classes/tru-property-config-date.d.ts +6 -6
- package/lib/classes/tru-property-config-decimal.d.ts +8 -8
- package/lib/classes/tru-property-config-file.d.ts +5 -5
- package/lib/classes/tru-property-config-foreign-key.d.ts +7 -7
- package/lib/classes/tru-property-config-integer.d.ts +6 -6
- package/lib/classes/tru-property-config-password.d.ts +5 -5
- package/lib/classes/tru-property-config-percentage.d.ts +6 -6
- package/lib/classes/tru-property-config-scientific.d.ts +6 -6
- package/lib/classes/tru-property-config-text-choices.d.ts +5 -5
- package/lib/classes/tru-property-config-text.d.ts +7 -7
- package/lib/classes/tru-property-config-usa-address.d.ts +5 -5
- package/lib/classes/tru-property-config-zip-code.d.ts +5 -5
- package/lib/classes/tru-query-predicate-manager.d.ts +26 -26
- package/lib/components/confirm-dialog/tru-confirm-dialog-module.d.ts +10 -10
- package/lib/components/confirm-dialog/tru-confirm-dialog.d.ts +28 -28
- package/lib/components/data-grid/classes/tru-data-grid-config.d.ts +7 -7
- package/lib/components/data-grid/enums/tru-data-grid-types.d.ts +5 -5
- package/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.d.ts +13 -13
- package/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.d.ts +13 -13
- package/lib/components/data-grid/tru-data-grid-module.d.ts +15 -15
- package/lib/components/data-grid/tru-data-grid.d.ts +67 -67
- package/lib/components/desktop/classes/tru-desktop-title.d.ts +4 -4
- package/lib/components/desktop/classes/tru-desktop-view-config.d.ts +16 -16
- package/lib/components/desktop/directives/resizable/tru-desktop-resizable-module.d.ts +9 -9
- package/lib/components/desktop/directives/resizable/tru-desktop-resizable.d.ts +32 -32
- package/lib/components/desktop/menubar/tru-desktop-menubar-module.d.ts +17 -17
- package/lib/components/desktop/menubar/tru-desktop-menubar.d.ts +15 -15
- package/lib/components/desktop/services/tru-desktop-manager.d.ts +33 -33
- package/lib/components/desktop/services/tru-desktop-service.d.ts +95 -95
- package/lib/components/desktop/services/tru-window-action-event-handler.d.ts +12 -12
- package/lib/components/desktop/services/tru-window-event-args.d.ts +17 -17
- package/lib/components/desktop/services/tru-window-event-handler.d.ts +20 -20
- package/lib/components/desktop/statusbar/tru-desktop-statusbar-module.d.ts +9 -9
- package/lib/components/desktop/statusbar/tru-desktop-statusbar.d.ts +10 -10
- package/lib/components/desktop/taskbar/tru-desktop-taskbar-module.d.ts +11 -11
- package/lib/components/desktop/taskbar/tru-desktop-taskbar.d.ts +15 -15
- package/lib/components/desktop/tru-desktop-module.d.ts +20 -20
- package/lib/components/desktop/tru-desktop.d.ts +337 -337
- package/lib/components/desktop/view/tru-desktop-view-module.d.ts +9 -9
- package/lib/components/desktop/view/tru-desktop-view.d.ts +14 -14
- package/lib/components/desktop/viewport/tru-desktop-viewport-module.d.ts +10 -10
- package/lib/components/desktop/viewport/tru-desktop-viewport.d.ts +48 -48
- package/lib/components/desktop/window/tru-desktop-window-module.d.ts +17 -17
- package/lib/components/desktop/window/tru-desktop-window.d.ts +189 -189
- package/lib/components/export-dialog/tru-export-dialog-module.d.ts +10 -10
- package/lib/components/export-dialog/tru-export-dialog.d.ts +26 -26
- package/lib/components/layout/column/tru-column-module.d.ts +9 -9
- package/lib/components/layout/column/tru-column.d.ts +6 -6
- package/lib/components/layout/form/tru-form-module.d.ts +9 -9
- package/lib/components/layout/form/tru-form.d.ts +10 -10
- package/lib/components/layout/group-box/tru-group-box-module.d.ts +9 -9
- package/lib/components/layout/group-box/tru-group-box.d.ts +6 -6
- package/lib/components/layout/row/tru-row-module.d.ts +9 -9
- package/lib/components/layout/row/tru-row.d.ts +6 -6
- package/lib/components/login/classes/tru-auth-config.d.ts +16 -16
- package/lib/components/login/classes/tru-auth-jwt-strategy.d.ts +15 -15
- package/lib/components/login/classes/tru-auth-login-request.d.ts +4 -4
- package/lib/components/login/classes/tru-auth-logout-request.d.ts +3 -3
- package/lib/components/login/classes/tru-auth-session-strategy.d.ts +13 -13
- package/lib/components/login/classes/tru-auth-strategy-provider.d.ts +9 -9
- package/lib/components/login/classes/tru-auth-token.d.ts +6 -6
- package/lib/components/login/classes/tru-auth-user-request.d.ts +3 -3
- package/lib/components/login/services/tru-auth-cache.d.ts +11 -11
- package/lib/components/login/services/tru-auth-interceptor.d.ts +16 -16
- package/lib/components/login/services/tru-auth.d.ts +29 -29
- package/lib/components/login/tru-login-module.d.ts +11 -11
- package/lib/components/login/tru-login.d.ts +21 -21
- package/lib/components/password-dialog/tru-password-dialog-module.d.ts +10 -10
- package/lib/components/password-dialog/tru-password-dialog.d.ts +27 -24
- package/lib/components/toolbar/button/tru-toolbar-button-module.d.ts +11 -11
- package/lib/components/toolbar/button/tru-toolbar-button.d.ts +16 -16
- package/lib/components/toolbar/classes/tru-toolbar-dropdown-option.d.ts +4 -4
- package/lib/components/toolbar/context-filter/tru-toolbar-context-filter-module.d.ts +14 -14
- package/lib/components/toolbar/context-filter/tru-toolbar-context-filter.d.ts +13 -13
- package/lib/components/toolbar/dropdown/tru-toolbar-dropdown-module.d.ts +12 -12
- package/lib/components/toolbar/dropdown/tru-toolbar-dropdown.d.ts +18 -18
- package/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button-module.d.ts +9 -9
- package/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.d.ts +7 -7
- package/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item-module.d.ts +9 -9
- package/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.d.ts +8 -8
- package/lib/components/toolbar/menu/tru-toolbar-menu-module.d.ts +11 -11
- package/lib/components/toolbar/menu/tru-toolbar-menu.d.ts +10 -10
- package/lib/components/toolbar/separator/tru-toolbar-separator-module.d.ts +9 -9
- package/lib/components/toolbar/separator/tru-toolbar-separator.d.ts +6 -6
- package/lib/components/toolbar/text/tru-toolbar-text-module.d.ts +11 -11
- package/lib/components/toolbar/text/tru-toolbar-text.d.ts +12 -12
- package/lib/components/toolbar/tru-toolbar-module.d.ts +16 -16
- package/lib/components/toolbar/tru-toolbar.d.ts +9 -9
- package/lib/components/toolbar/user-profile/tru-toolbar-user-profile-module.d.ts +12 -12
- package/lib/components/toolbar/user-profile/tru-toolbar-user-profile.d.ts +17 -17
- package/lib/components/validation-dialog/tru-validation-dialog-config.d.ts +13 -13
- package/lib/components/validation-dialog/tru-validation-dialog-module.d.ts +9 -9
- package/lib/components/validation-dialog/tru-validation-dialog.d.ts +20 -20
- package/lib/directives/breeze-validator/tru-breeze-validator-module.d.ts +9 -9
- package/lib/directives/breeze-validator/tru-breeze-validator.d.ts +27 -27
- package/lib/directives/search-panel-position-manager/tru-search-panel-position-manager-module.d.ts +9 -9
- package/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.d.ts +40 -40
- package/lib/directives/select-panel/tru-mat-select-panel-module.d.ts +9 -9
- package/lib/directives/select-panel/tru-mat-select-panel.d.ts +17 -17
- package/lib/interfaces/tru-value.d.ts +6 -6
- package/lib/material.module.d.ts +50 -50
- package/lib/services/tru-app-environment.d.ts +57 -57
- package/lib/services/tru-breeze-context-factory.d.ts +32 -32
- package/lib/services/tru-breeze-metadata-provider.d.ts +9 -9
- package/lib/services/tru-component-lookup.d.ts +9 -9
- package/lib/services/tru-connection-hub.d.ts +18 -18
- package/lib/services/tru-context-filters.d.ts +10 -10
- package/lib/services/tru-data-context.d.ts +42 -42
- package/lib/services/tru-entity-accessor.d.ts +46 -46
- package/lib/services/tru-model-property-lookup.d.ts +10 -10
- package/lib/services/tru-predicate-map.d.ts +6 -6
- package/lib/services/tru-search-result-view-manager.d.ts +10 -10
- package/lib/services/tru-sort.d.ts +56 -56
- package/lib/services/tru-table-registry.d.ts +8 -8
- package/lib/services/tru-text-manager.d.ts +68 -68
- package/lib/services/tru-ui-notification.d.ts +36 -36
- package/lib/services/tru-user.d.ts +29 -29
- package/lib/services/tru-util.d.ts +14 -14
- package/lib/tru-common-module.d.ts +6 -6
- package/package.json +5 -11
- package/public-api.d.ts +117 -117
- package/esm2020/lib/base-classes/tru-edit-control-config-base.mjs +0 -4
- package/esm2020/lib/base-classes/tru-entity-base.mjs +0 -13
- package/esm2020/lib/base-classes/tru-list-control-config-base.mjs +0 -4
- package/esm2020/lib/base-classes/tru-search-control-base.mjs +0 -47
- package/esm2020/lib/base-classes/tru-search-control-config-base.mjs +0 -4
- package/esm2020/lib/base-classes/tru-search-control-range-base.mjs +0 -47
- package/esm2020/lib/base-classes/tru-table-config-base.mjs +0 -13
- package/esm2020/lib/base-views/detail/tru-detail-view-base.mjs +0 -76
- package/esm2020/lib/base-views/search/services/tru-search-view-control-event-handler.mjs +0 -27
- package/esm2020/lib/base-views/search/services/tru-search-view-event-handler.mjs +0 -27
- package/esm2020/lib/base-views/search/tru-search-view-base.mjs +0 -63
- package/esm2020/lib/base-views/search-result/tru-search-result-view-base.mjs +0 -51
- package/esm2020/lib/classes/tru-context-filter-choice.mjs +0 -8
- package/esm2020/lib/classes/tru-context-filter.mjs +0 -16
- package/esm2020/lib/classes/tru-data-change-parser.mjs +0 -277
- package/esm2020/lib/classes/tru-data-change.mjs +0 -7
- package/esm2020/lib/classes/tru-merge-data-set.mjs +0 -12
- package/esm2020/lib/classes/tru-merge-data.mjs +0 -17
- package/esm2020/lib/classes/tru-predicate.mjs +0 -47
- package/esm2020/lib/classes/tru-property-config-date.mjs +0 -9
- package/esm2020/lib/classes/tru-property-config-decimal.mjs +0 -11
- package/esm2020/lib/classes/tru-property-config-foreign-key.mjs +0 -10
- package/esm2020/lib/classes/tru-property-config-integer.mjs +0 -9
- package/esm2020/lib/classes/tru-property-config-password.mjs +0 -8
- package/esm2020/lib/classes/tru-property-config-percentage.mjs +0 -9
- package/esm2020/lib/classes/tru-property-config-scientific.mjs +0 -9
- package/esm2020/lib/classes/tru-query-predicate-manager.mjs +0 -49
- package/esm2020/lib/components/confirm-dialog/tru-confirm-dialog.mjs +0 -45
- package/esm2020/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.mjs +0 -39
- package/esm2020/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.mjs +0 -26
- package/esm2020/lib/components/data-grid/tru-data-grid-module.mjs +0 -67
- package/esm2020/lib/components/data-grid/tru-data-grid.mjs +0 -370
- package/esm2020/lib/components/desktop/classes/tru-desktop-view-config.mjs +0 -21
- package/esm2020/lib/components/desktop/directives/resizable/tru-desktop-resizable.mjs +0 -109
- package/esm2020/lib/components/desktop/menubar/tru-desktop-menubar.mjs +0 -34
- package/esm2020/lib/components/desktop/services/tru-desktop-manager.mjs +0 -84
- package/esm2020/lib/components/desktop/services/tru-desktop-service.mjs +0 -116
- package/esm2020/lib/components/desktop/services/tru-window-action-event-handler.mjs +0 -27
- package/esm2020/lib/components/desktop/services/tru-window-event-args.mjs +0 -26
- package/esm2020/lib/components/desktop/services/tru-window-event-handler.mjs +0 -44
- package/esm2020/lib/components/desktop/statusbar/tru-desktop-statusbar.mjs +0 -18
- package/esm2020/lib/components/desktop/taskbar/tru-desktop-taskbar.mjs +0 -40
- package/esm2020/lib/components/desktop/tru-desktop.mjs +0 -731
- package/esm2020/lib/components/desktop/view/tru-desktop-view.mjs +0 -25
- package/esm2020/lib/components/desktop/viewport/tru-desktop-viewport.mjs +0 -113
- package/esm2020/lib/components/desktop/window/tru-desktop-window.mjs +0 -457
- package/esm2020/lib/components/export-dialog/tru-export-dialog.mjs +0 -57
- package/esm2020/lib/components/layout/form/tru-form.mjs +0 -34
- package/esm2020/lib/components/login/classes/tru-auth-jwt-strategy.mjs +0 -65
- package/esm2020/lib/components/login/classes/tru-auth-session-strategy.mjs +0 -19
- package/esm2020/lib/components/login/services/tru-auth-cache.mjs +0 -22
- package/esm2020/lib/components/login/services/tru-auth-interceptor.mjs +0 -43
- package/esm2020/lib/components/login/services/tru-auth.mjs +0 -81
- package/esm2020/lib/components/login/tru-login-module.mjs +0 -46
- package/esm2020/lib/components/login/tru-login.mjs +0 -58
- package/esm2020/lib/components/password-dialog/tru-password-dialog.mjs +0 -48
- package/esm2020/lib/components/toolbar/button/tru-toolbar-button.mjs +0 -41
- package/esm2020/lib/components/toolbar/context-filter/tru-toolbar-context-filter.mjs +0 -24
- package/esm2020/lib/components/toolbar/dropdown/tru-toolbar-dropdown.mjs +0 -43
- package/esm2020/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.mjs +0 -16
- package/esm2020/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.mjs +0 -26
- package/esm2020/lib/components/toolbar/menu/tru-toolbar-menu.mjs +0 -33
- package/esm2020/lib/components/toolbar/text/tru-toolbar-text.mjs +0 -28
- package/esm2020/lib/components/toolbar/user-profile/tru-toolbar-user-profile.mjs +0 -35
- package/esm2020/lib/components/validation-dialog/tru-validation-dialog-config.mjs +0 -21
- package/esm2020/lib/components/validation-dialog/tru-validation-dialog.mjs +0 -79
- package/esm2020/lib/directives/breeze-validator/tru-breeze-validator.mjs +0 -100
- package/esm2020/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.mjs +0 -151
- package/esm2020/lib/directives/select-panel/tru-mat-select-panel.mjs +0 -66
- package/esm2020/lib/services/tru-app-environment.mjs +0 -94
- package/esm2020/lib/services/tru-breeze-context-factory.mjs +0 -79
- package/esm2020/lib/services/tru-breeze-metadata-provider.mjs +0 -22
- package/esm2020/lib/services/tru-component-lookup.mjs +0 -25
- package/esm2020/lib/services/tru-connection-hub.mjs +0 -48
- package/esm2020/lib/services/tru-context-filters.mjs +0 -29
- package/esm2020/lib/services/tru-data-context.mjs +0 -258
- package/esm2020/lib/services/tru-entity-accessor.mjs +0 -287
- package/esm2020/lib/services/tru-model-property-lookup.mjs +0 -22
- package/esm2020/lib/services/tru-search-result-view-manager.mjs +0 -17
- package/esm2020/lib/services/tru-sort.mjs +0 -114
- package/esm2020/lib/services/tru-table-registry.mjs +0 -16
- package/esm2020/lib/services/tru-text-manager.mjs +0 -134
- package/esm2020/lib/services/tru-ui-notification.mjs +0 -103
- package/esm2020/lib/services/tru-user.mjs +0 -63
- package/esm2020/lib/services/tru-util.mjs +0 -77
- package/fesm2015/trudb-tru-common-lib.mjs +0 -6803
- package/fesm2015/trudb-tru-common-lib.mjs.map +0 -1
- package/fesm2020/trudb-tru-common-lib.mjs +0 -6780
- package/fesm2020/trudb-tru-common-lib.mjs.map +0 -1
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class TruDesktopResizable {
|
|
4
|
+
elementRef;
|
|
5
|
+
window;
|
|
6
|
+
maximized;
|
|
7
|
+
direction;
|
|
8
|
+
constructor(elementRef) {
|
|
9
|
+
this.elementRef = elementRef;
|
|
10
|
+
}
|
|
11
|
+
currentHeight;
|
|
12
|
+
currentWidth;
|
|
13
|
+
currentTop;
|
|
14
|
+
currentLeft;
|
|
15
|
+
currentRight;
|
|
16
|
+
currentBottom;
|
|
17
|
+
currentMinHeight;
|
|
18
|
+
currentMinWidth;
|
|
19
|
+
mouseOffsetX = 0;
|
|
20
|
+
mouseOffsetY = 0;
|
|
21
|
+
lastMouseX = 0;
|
|
22
|
+
lastMouseY = 0;
|
|
23
|
+
originalHeight = 0;
|
|
24
|
+
originalWidth = 0;
|
|
25
|
+
viewport;
|
|
26
|
+
mouseDown = (event) => {
|
|
27
|
+
if (this.maximized)
|
|
28
|
+
return;
|
|
29
|
+
event.preventDefault();
|
|
30
|
+
this.mouseOffsetY = event.clientY;
|
|
31
|
+
this.mouseOffsetX = event.clientX;
|
|
32
|
+
this.originalHeight = parseInt(this.window.height, 10);
|
|
33
|
+
this.originalWidth = parseInt(this.window.width, 10);
|
|
34
|
+
this.viewport = this.getViewport();
|
|
35
|
+
document.addEventListener('mousemove', this.mouseMove);
|
|
36
|
+
document.addEventListener('mouseup', this.mouseUp);
|
|
37
|
+
};
|
|
38
|
+
mouseMove = (event) => {
|
|
39
|
+
var mouseY = event.pageY - this.mouseOffsetY;
|
|
40
|
+
var mouseX = event.pageX - this.mouseOffsetX;
|
|
41
|
+
var diffY = mouseY - this.lastMouseY;
|
|
42
|
+
var diffX = mouseX - this.lastMouseX;
|
|
43
|
+
this.lastMouseY = mouseY;
|
|
44
|
+
this.lastMouseX = mouseX;
|
|
45
|
+
this.currentHeight = parseInt(this.window.height, 10);
|
|
46
|
+
this.currentWidth = parseInt(this.window.width, 10);
|
|
47
|
+
this.currentTop = parseInt(this.window.top, 10);
|
|
48
|
+
this.currentLeft = parseInt(this.window.left, 10);
|
|
49
|
+
this.currentRight = parseInt(this.window.right, 10);
|
|
50
|
+
this.currentBottom = parseInt(this.window.bottom, 10);
|
|
51
|
+
this.currentMinHeight = parseInt(this.window.minHeight, 10);
|
|
52
|
+
this.currentMinWidth = parseInt(this.window.minWidth, 10);
|
|
53
|
+
if (this.direction.indexOf("w") > -1) {
|
|
54
|
+
if (this.currentWidth - diffX < this.currentMinWidth)
|
|
55
|
+
this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.currentWidth - this.currentMinWidth));
|
|
56
|
+
//Contain resizing to the west
|
|
57
|
+
if (this.currentLeft + diffX < 0)
|
|
58
|
+
this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = 0 - this.currentLeft));
|
|
59
|
+
this.window.left = (this.currentLeft + diffX) + 'px';
|
|
60
|
+
this.window.width = (this.currentWidth - diffX) + 'px';
|
|
61
|
+
}
|
|
62
|
+
if (this.direction.indexOf("n") > -1) {
|
|
63
|
+
if (this.currentHeight - diffY < this.currentMinHeight)
|
|
64
|
+
this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.currentHeight - this.currentMinHeight));
|
|
65
|
+
//Contain resizing to the north
|
|
66
|
+
if (this.currentTop + diffY < 0)
|
|
67
|
+
this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = 0 - this.currentTop));
|
|
68
|
+
this.window.top = (this.currentTop + diffY) + 'px';
|
|
69
|
+
this.window.height = (this.currentHeight - diffY) + 'px';
|
|
70
|
+
}
|
|
71
|
+
if (this.direction.indexOf("e") > -1) {
|
|
72
|
+
if (this.currentWidth + diffX < this.currentMinWidth)
|
|
73
|
+
this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.currentMinWidth - this.currentWidth));
|
|
74
|
+
//Contain resizing to the east
|
|
75
|
+
if ((this.currentLeft + this.currentWidth) + diffX > this.viewport.offsetWidth)
|
|
76
|
+
this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.viewport.offsetWidth - (this.currentLeft + this.currentWidth)));
|
|
77
|
+
this.window.width = (this.currentWidth + diffX) + 'px';
|
|
78
|
+
}
|
|
79
|
+
if (this.direction.indexOf("s") > -1) {
|
|
80
|
+
if (this.currentHeight + diffY < this.currentMinHeight)
|
|
81
|
+
this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.currentMinHeight - this.currentHeight));
|
|
82
|
+
//Contain resizing to the south
|
|
83
|
+
if ((this.currentTop + this.currentHeight) + diffY > this.viewport.offsetHeight)
|
|
84
|
+
this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.viewport.offsetHeight - (this.currentTop + this.currentHeight)));
|
|
85
|
+
this.window.height = (this.currentHeight + diffY) + 'px';
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
mouseUp = (event) => {
|
|
89
|
+
this.mouseOffsetX = 0;
|
|
90
|
+
this.mouseOffsetY = 0;
|
|
91
|
+
this.lastMouseX = 0;
|
|
92
|
+
this.lastMouseY = 0;
|
|
93
|
+
document.removeEventListener('mousemove', this.mouseMove);
|
|
94
|
+
document.removeEventListener('mouseup', this.mouseUp);
|
|
95
|
+
};
|
|
96
|
+
getViewport = function () {
|
|
97
|
+
return document.querySelectorAll('.desktop-viewport-container')[0];
|
|
98
|
+
};
|
|
99
|
+
ngOnInit() {
|
|
100
|
+
this.elementRef.nativeElement.addEventListener('mousedown', this.mouseDown);
|
|
101
|
+
}
|
|
102
|
+
ngOnDestroy() {
|
|
103
|
+
this.elementRef.nativeElement.removeEventListener('mousedown', this.mouseDown);
|
|
104
|
+
document.removeEventListener('mousemove', this.mouseMove);
|
|
105
|
+
document.removeEventListener('mouseup', this.mouseUp);
|
|
106
|
+
}
|
|
107
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopResizable, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
108
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: TruDesktopResizable, selector: "[tru-desktop-resizable]", inputs: { window: "window", maximized: "maximized", direction: "direction" }, ngImport: i0 });
|
|
109
|
+
}
|
|
110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopResizable, decorators: [{
|
|
111
|
+
type: Directive,
|
|
112
|
+
args: [{
|
|
113
|
+
selector: '[tru-desktop-resizable]',
|
|
114
|
+
}]
|
|
115
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { window: [{
|
|
116
|
+
type: Input
|
|
117
|
+
}], maximized: [{
|
|
118
|
+
type: Input
|
|
119
|
+
}], direction: [{
|
|
120
|
+
type: Input
|
|
121
|
+
}] } });
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtcmVzaXphYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3AvZGlyZWN0aXZlcy9yZXNpemFibGUvdHJ1LWRlc2t0b3AtcmVzaXphYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFjLE1BQU0sZUFBZSxDQUFDOztBQUtyRSxNQUFNLE9BQU8sbUJBQW1CO0lBS1Y7SUFKWCxNQUFNLENBQU07SUFDWixTQUFTLENBQU07SUFDZixTQUFTLENBQU07SUFFeEIsWUFBb0IsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFJLENBQUM7SUFFL0MsYUFBYSxDQUFNO0lBQ25CLFlBQVksQ0FBTTtJQUNsQixVQUFVLENBQU07SUFDaEIsV0FBVyxDQUFNO0lBQ2pCLFlBQVksQ0FBTTtJQUNsQixhQUFhLENBQU07SUFDbkIsZ0JBQWdCLENBQU07SUFDdEIsZUFBZSxDQUFNO0lBQ3JCLFlBQVksR0FBRyxDQUFDLENBQUM7SUFDakIsWUFBWSxHQUFHLENBQUMsQ0FBQztJQUNqQixVQUFVLEdBQUcsQ0FBQyxDQUFDO0lBQ2YsVUFBVSxHQUFHLENBQUMsQ0FBQztJQUNmLGNBQWMsR0FBRyxDQUFDLENBQUM7SUFDbkIsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUNsQixRQUFRLENBQU07SUFFZCxTQUFTLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtRQUN6QixJQUFJLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUMzQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUNsQyxJ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LENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RCxDQUFDO3VHQWpIVSxtQkFBbUI7MkZBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUseUJBQXlCO2lCQUNwQzsrRUFFVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIElucHV0LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t0cnUtZGVza3RvcC1yZXNpemFibGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgVHJ1RGVza3RvcFJlc2l6YWJsZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHdpbmRvdzogYW55O1xuICBASW5wdXQoKSBtYXhpbWl6ZWQ6IGFueTtcbiAgQElucHV0KCkgZGlyZWN0aW9uOiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7IH1cblxuICBjdXJyZW50SGVpZ2h0OiBhbnk7XG4gIGN1cnJlbnRXaWR0aDogYW55O1xuICBjdXJyZW50VG9wOiBhbnk7XG4gIGN1cnJlbnRMZWZ0OiBhbnk7XG4gIGN1cnJlbnRSaWdodDogYW55O1xuICBjdXJyZW50Qm90dG9tOiBhbnk7XG4gIGN1cnJlbnRNaW5IZWlnaHQ6IGFueTtcbiAgY3VycmVudE1pbldpZHRoOiBhbnk7XG4gIG1vdXNlT2Zmc2V0WCA9IDA7XG4gIG1vdXNlT2Zmc2V0WSA9IDA7XG4gIGxhc3RNb3VzZVggPSAwO1xuICBsYXN0TW91c2VZID0gMDtcbiAgb3JpZ2luYWxIZWlnaHQgPSAwO1xuICBvcmlnaW5hbFdpZHRoID0gMDtcbiAgdmlld3BvcnQ6IGFueTtcblxuICBtb3VzZURvd24gPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgIGlmICh0aGlzLm1heGltaXplZCkgcmV0dXJuO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5tb3VzZU9mZnNldFkgPSBldmVudC5jbGllbnRZO1xuICAgIHRoaXMubW91c2VPZmZzZXRYID0gZXZlbnQuY2xpZW50WDtcbiAgICB0aGlzLm9yaWdpbmFsSGVpZ2h0ID0gcGFyc2VJbnQodGhpcy53aW5kb3cuaGVpZ2h0LCAxMCk7XG4gICAgdGhpcy5vcmlnaW5hbFdpZHRoID0gcGFyc2VJbnQodGhpcy53aW5kb3cud2lkdGgsIDEwKTtcbiAgICB0aGlzLnZpZXdwb3J0ID0gdGhpcy5nZXRWaWV3cG9ydCgpO1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMubW91c2VNb3ZlKTtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5tb3VzZVVwKTtcbiAgfTtcblxuICBtb3VzZU1vdmUgPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgIHZhciBtb3VzZVkgPSBldmVudC5wYWdlWSAtIHRoaXMubW91c2VPZmZzZXRZO1xuICAgIHZhciBtb3VzZVggPSBldmVudC5wYWdlWCAtIHRoaXMubW91c2VPZmZzZXRYO1xuICAgIHZhciBkaWZmWSA9IG1vdXNlWSAtIHRoaXMubGFzdE1vdXNlWTtcbiAgICB2YXIgZGlmZlggPSBtb3VzZVggLSB0aGlzLmxhc3RNb3VzZVg7XG4gICAgdGhpcy5sYXN0TW91c2VZID0gbW91c2VZO1xuICAgIHRoaXMubGFzdE1vdXNlWCA9IG1vdXNlWDtcblxuICAgIHRoaXMuY3VycmVudEhlaWdodCA9IHBhcnNlSW50KHRoaXMud2luZG93LmhlaWdodCwgMTApO1xuICAgIHRoaXMuY3VycmVudFdpZHRoID0gcGFyc2VJbnQodGhpcy53aW5kb3cud2lkdGgsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRUb3AgPSBwYXJzZUludCh0aGlzLndpbmRvdy50b3AsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRMZWZ0ID0gcGFyc2VJbnQodGhpcy53aW5kb3cubGVmdCwgMTApO1xuICAgIHRoaXMuY3VycmVudFJpZ2h0ID0gcGFyc2VJbnQodGhpcy53aW5kb3cucmlnaHQsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRCb3R0b20gPSBwYXJzZUludCh0aGlzLndpbmRvdy5ib3R0b20sIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRNaW5IZWlnaHQgPSBwYXJzZUludCh0aGlzLndpbmRvdy5taW5IZWlnaHQsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRNaW5XaWR0aCA9IHBhcnNlSW50KHRoaXMud2luZG93Lm1pbldpZHRoLCAxMCk7XG5cbiAgICBpZiAodGhpcy5kaXJlY3Rpb24uaW5kZXhPZihcIndcIikgPiAtMSkge1xuICAgICAgaWYgKHRoaXMuY3VycmVudFdpZHRoIC0gZGlmZlggPCB0aGlzLmN1cnJlbnRNaW5XaWR0aCkgdGhpcy5tb3VzZU9mZnNldFggPSB0aGlzLm1vdXNlT2Zmc2V0WCAtIChkaWZmWCAtIChkaWZmWCA9IHRoaXMuY3VycmVudFdpZHRoIC0gdGhpcy5jdXJyZW50TWluV2lkdGgpKTtcblxuICAgICAgLy9Db250YWluIHJlc2l6aW5nIHRvIHRoZSB3ZXN0XG4gICAgICBpZiAodGhpcy5jdXJyZW50TGVmdCArIGRpZmZYIDwgMClcbiAgICAgICAgdGhpcy5tb3VzZU9mZnNldFggPSB0aGlzLm1vdXNlT2Zmc2V0WCAtIChkaWZmWCAtIChkaWZmWCA9IDAgLSB0aGlzLmN1cnJlbnRMZWZ0KSk7XG5cbiAgICAgIHRoaXMud2luZG93LmxlZnQgPSAodGhpcy5jdXJyZW50TGVmdCArIGRpZmZYKSArICdweCc7XG4gICAgICB0aGlzLndpbmRvdy53aWR0aCA9ICh0aGlzLmN1cnJlbnRXaWR0aCAtIGRpZmZYKSArICdweCc7XG4gICAgfVxuICAgIGlmICh0aGlzLmRpcmVjdGlvbi5pbmRleE9mKFwiblwiKSA+IC0xKSB7XG4gICAgICBpZiAodGhpcy5jdXJyZW50SGVpZ2h0IC0gZGlmZlkgPCB0aGlzLmN1cnJlbnRNaW5IZWlnaHQpIHRoaXMubW91c2VPZmZzZXRZID0gdGhpcy5tb3VzZU9mZnNldFkgLSAoZGlmZlkgLSAoZGlmZlkgPSB0aGlzLmN1cnJlbnRIZWlnaHQgLSB0aGlzLmN1cnJlbnRNaW5IZWlnaHQpKTtcblxuICAgICAgLy9Db250YWluIHJlc2l6aW5nIHRvIHRoZSBub3J0aFxuICAgICAgaWYgKHRoaXMuY3VycmVudFRvcCArIGRpZmZZIDwgMCkgdGhpcy5tb3VzZU9mZnNldFkgPSB0aGlzLm1vdXNlT2Zmc2V0WSAtIChkaWZmWSAtIChkaWZmWSA9IDAgLSB0aGlzLmN1cnJlbnRUb3ApKTtcblxuICAgICAgdGhpcy53aW5kb3cudG9wID0gKHRoaXMuY3VycmVudFRvcCArIGRpZmZZKSArICdweCc7XG4gICAgICB0aGlzLndpbmRvdy5oZWlnaHQgPSAodGhpcy5jdXJyZW50SGVpZ2h0IC0gZGlmZlkpICsgJ3B4JztcbiAgICB9XG4gICAgaWYgKHRoaXMuZGlyZWN0aW9uLmluZGV4T2YoXCJlXCIpID4gLTEpIHtcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRXaWR0aCArIGRpZmZYIDwgdGhpcy5jdXJyZW50TWluV2lkdGgpIHRoaXMubW91c2VPZmZzZXRYID0gdGhpcy5tb3VzZU9mZnNldFggLSAoZGlmZlggLSAoZGlmZlggPSB0aGlzLmN1cnJlbnRNaW5XaWR0aCAtIHRoaXMuY3VycmVudFdpZHRoKSk7XG5cbiAgICAgIC8vQ29udGFpbiByZXNpemluZyB0byB0aGUgZWFzdFxuICAgICAgaWYgKCh0aGlzLmN1cnJlbnRMZWZ0ICsgdGhpcy5jdXJyZW50V2lkdGgpICsgZGlmZlggPiB0aGlzLnZpZXdwb3J0Lm9mZnNldFdpZHRoKVxuICAgICAgICB0aGlzLm1vdXNlT2Zmc2V0WCA9IHRoaXMubW91c2VPZmZzZXRYIC0gKGRpZmZYIC0gKGRpZmZYID0gdGhpcy52aWV3cG9ydC5vZmZzZXRXaWR0aCAtICh0aGlzLmN1cnJlbnRMZWZ0ICsgdGhpcy5jdXJyZW50V2lkdGgpKSk7XG5cbiAgICAgIHRoaXMud2luZG93LndpZHRoID0gKHRoaXMuY3VycmVudFdpZHRoICsgZGlmZlgpICsgJ3B4JztcbiAgICB9XG4gICAgaWYgKHRoaXMuZGlyZWN0aW9uLmluZGV4T2YoXCJzXCIpID4gLTEpIHtcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRIZWlnaHQgKyBkaWZmWSA8IHRoaXMuY3VycmVudE1pbkhlaWdodCkgdGhpcy5tb3VzZU9mZnNldFkgPSB0aGlzLm1vdXNlT2Zmc2V0WSAtIChkaWZmWSAtIChkaWZmWSA9IHRoaXMuY3VycmVudE1pbkhlaWdodCAtIHRoaXMuY3VycmVudEhlaWdodCkpO1xuXG4gICAgICAvL0NvbnRhaW4gcmVzaXppbmcgdG8gdGhlIHNvdXRoXG4gICAgICBpZiAoKHRoaXMuY3VycmVudFRvcCArIHRoaXMuY3VycmVudEhlaWdodCkgKyBkaWZmWSA+IHRoaXMudmlld3BvcnQub2Zmc2V0SGVpZ2h0KVxuICAgICAgICB0aGlzLm1vdXNlT2Zmc2V0WSA9IHRoaXMubW91c2VPZmZzZXRZIC0gKGRpZmZZIC0gKGRpZmZZID0gdGhpcy52aWV3cG9ydC5vZmZzZXRIZWlnaHQgLSAodGhpcy5jdXJyZW50VG9wICsgdGhpcy5jdXJyZW50SGVpZ2h0KSkpO1xuXG4gICAgICB0aGlzLndpbmRvdy5oZWlnaHQgPSAodGhpcy5jdXJyZW50SGVpZ2h0ICsgZGlmZlkpICsgJ3B4JztcbiAgICB9XG4gIH1cblxuICBtb3VzZVVwID0gKGV2ZW50OiBhbnkpID0+IHtcbiAgICB0aGlzLm1vdXNlT2Zmc2V0WCA9IDA7XG4gICAgdGhpcy5tb3VzZU9mZnNldFkgPSAwO1xuICAgIHRoaXMubGFzdE1vdXNlWCA9IDA7XG4gICAgdGhpcy5sYXN0TW91c2VZID0gMDtcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm1vdXNlTW92ZSk7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMubW91c2VVcCk7XG4gIH07XG5cbiAgZ2V0Vmlld3BvcnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5kZXNrdG9wLXZpZXdwb3J0LWNvbnRhaW5lcicpWzBdO1xuICB9O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMubW91c2VEb3duKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMubW91c2VEb3duKTtcblxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMubW91c2VNb3ZlKTtcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5tb3VzZVVwKTtcbiAgfVxufVxuIl19
|
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
import { NgModule } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { FormsModule } from "@angular/forms";
|
|
4
|
-
import { MatMenuModule } from "@angular/material/menu";
|
|
5
|
-
import { MatButtonModule } from "@angular/material/button";
|
|
6
|
-
import { MatIconModule } from "@angular/material/icon";
|
|
7
|
-
import { TruDesktopMenubar } from "./tru-desktop-menubar";
|
|
8
|
-
import { TruToolbarModule } from "../../toolbar/tru-toolbar-module";
|
|
9
|
-
import { TruToolbarMenuModule } from "../../toolbar/menu/tru-toolbar-menu-module";
|
|
10
|
-
import { TruToolbarDropdownModule } from "../../toolbar/dropdown/tru-toolbar-dropdown-module";
|
|
11
|
-
import { TruToolbarSeparatorModule } from "../../toolbar/separator/tru-toolbar-separator-module";
|
|
12
|
-
import { TruToolbarContextFilterModule } from "../../toolbar/context-filter/tru-toolbar-context-filter-module";
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
export class TruDesktopMenubarModule {
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
-
type: NgModule,
|
|
39
|
-
args: [{
|
|
40
|
-
declarations: [TruDesktopMenubar],
|
|
41
|
-
imports: [
|
|
42
|
-
CommonModule,
|
|
43
|
-
FormsModule,
|
|
44
|
-
MatMenuModule,
|
|
45
|
-
MatButtonModule,
|
|
46
|
-
MatIconModule,
|
|
47
|
-
TruToolbarModule,
|
|
48
|
-
TruToolbarMenuModule,
|
|
49
|
-
TruToolbarDropdownModule,
|
|
50
|
-
TruToolbarSeparatorModule,
|
|
51
|
-
TruToolbarContextFilterModule
|
|
52
|
-
],
|
|
53
|
-
exports: [TruDesktopMenubar]
|
|
54
|
-
}]
|
|
55
|
-
}] });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import { FormsModule } from "@angular/forms";
|
|
4
|
+
import { MatMenuModule } from "@angular/material/menu";
|
|
5
|
+
import { MatButtonModule } from "@angular/material/button";
|
|
6
|
+
import { MatIconModule } from "@angular/material/icon";
|
|
7
|
+
import { TruDesktopMenubar } from "./tru-desktop-menubar";
|
|
8
|
+
import { TruToolbarModule } from "../../toolbar/tru-toolbar-module";
|
|
9
|
+
import { TruToolbarMenuModule } from "../../toolbar/menu/tru-toolbar-menu-module";
|
|
10
|
+
import { TruToolbarDropdownModule } from "../../toolbar/dropdown/tru-toolbar-dropdown-module";
|
|
11
|
+
import { TruToolbarSeparatorModule } from "../../toolbar/separator/tru-toolbar-separator-module";
|
|
12
|
+
import { TruToolbarContextFilterModule } from "../../toolbar/context-filter/tru-toolbar-context-filter-module";
|
|
13
|
+
import * as i0 from "@angular/core";
|
|
14
|
+
export class TruDesktopMenubarModule {
|
|
15
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
16
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubarModule, declarations: [TruDesktopMenubar], imports: [CommonModule,
|
|
17
|
+
FormsModule,
|
|
18
|
+
MatMenuModule,
|
|
19
|
+
MatButtonModule,
|
|
20
|
+
MatIconModule,
|
|
21
|
+
TruToolbarModule,
|
|
22
|
+
TruToolbarMenuModule,
|
|
23
|
+
TruToolbarDropdownModule,
|
|
24
|
+
TruToolbarSeparatorModule,
|
|
25
|
+
TruToolbarContextFilterModule], exports: [TruDesktopMenubar] });
|
|
26
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubarModule, imports: [CommonModule,
|
|
27
|
+
FormsModule,
|
|
28
|
+
MatMenuModule,
|
|
29
|
+
MatButtonModule,
|
|
30
|
+
MatIconModule,
|
|
31
|
+
TruToolbarModule,
|
|
32
|
+
TruToolbarMenuModule,
|
|
33
|
+
TruToolbarDropdownModule,
|
|
34
|
+
TruToolbarSeparatorModule,
|
|
35
|
+
TruToolbarContextFilterModule] });
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubarModule, decorators: [{
|
|
38
|
+
type: NgModule,
|
|
39
|
+
args: [{
|
|
40
|
+
declarations: [TruDesktopMenubar],
|
|
41
|
+
imports: [
|
|
42
|
+
CommonModule,
|
|
43
|
+
FormsModule,
|
|
44
|
+
MatMenuModule,
|
|
45
|
+
MatButtonModule,
|
|
46
|
+
MatIconModule,
|
|
47
|
+
TruToolbarModule,
|
|
48
|
+
TruToolbarMenuModule,
|
|
49
|
+
TruToolbarDropdownModule,
|
|
50
|
+
TruToolbarSeparatorModule,
|
|
51
|
+
TruToolbarContextFilterModule
|
|
52
|
+
],
|
|
53
|
+
exports: [TruDesktopMenubar]
|
|
54
|
+
}]
|
|
55
|
+
}] });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWVudWJhci1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC9tZW51YmFyL3RydS1kZXNrdG9wLW1lbnViYXItbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUM5RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7QUFrQi9HLE1BQU0sT0FBTyx1QkFBdUI7dUdBQXZCLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLGlCQWZuQixpQkFBaUIsYUFFOUIsWUFBWTtZQUNaLFdBQVc7WUFDWCxhQUFhO1lBQ2IsZUFBZTtZQUNmLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsb0JBQW9CO1lBQ3BCLHdCQUF3QjtZQUN4Qix5QkFBeUI7WUFDekIsNkJBQTZCLGFBRXJCLGlCQUFpQjt3R0FFaEIsdUJBQXVCLFlBYmhDLFlBQVk7WUFDWixXQUFXO1lBQ1gsYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQix3QkFBd0I7WUFDeEIseUJBQXlCO1lBQ3pCLDZCQUE2Qjs7MkZBSXBCLHVCQUF1QjtrQkFoQm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQ2pDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLHdCQUF3Qjt3QkFDeEIseUJBQXlCO3dCQUN6Qiw2QkFBNkI7cUJBQzlCO29CQUNELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL21lbnVcIjtcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2J1dHRvblwiO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcclxuXHJcbmltcG9ydCB7IFRydURlc2t0b3BNZW51YmFyIH0gZnJvbSBcIi4vdHJ1LWRlc2t0b3AtbWVudWJhclwiO1xyXG5pbXBvcnQgeyBUcnVUb29sYmFyTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvdHJ1LXRvb2xiYXItbW9kdWxlXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJNZW51TW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvbWVudS90cnUtdG9vbGJhci1tZW51LW1vZHVsZVwiO1xyXG5pbXBvcnQgeyBUcnVUb29sYmFyRHJvcGRvd25Nb2R1bGUgfSBmcm9tIFwiLi4vLi4vdG9vbGJhci9kcm9wZG93bi90cnUtdG9vbGJhci1kcm9wZG93bi1tb2R1bGVcIjtcclxuaW1wb3J0IHsgVHJ1VG9vbGJhclNlcGFyYXRvck1vZHVsZSB9IGZyb20gXCIuLi8uLi90b29sYmFyL3NlcGFyYXRvci90cnUtdG9vbGJhci1zZXBhcmF0b3ItbW9kdWxlXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJDb250ZXh0RmlsdGVyTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvY29udGV4dC1maWx0ZXIvdHJ1LXRvb2xiYXItY29udGV4dC1maWx0ZXItbW9kdWxlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1RydURlc2t0b3BNZW51YmFyXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdE1lbnVNb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhck1vZHVsZSxcclxuICAgIFRydVRvb2xiYXJNZW51TW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhckRyb3Bkb3duTW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhclNlcGFyYXRvck1vZHVsZSxcclxuICAgIFRydVRvb2xiYXJDb250ZXh0RmlsdGVyTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbVHJ1RGVza3RvcE1lbnViYXJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wTWVudWJhck1vZHVsZSB7IH1cclxuIl19
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../../services/tru-context-filters";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
import * as i3 from "../../toolbar/tru-toolbar";
|
|
6
|
+
import * as i4 from "../../toolbar/menu/tru-toolbar-menu";
|
|
7
|
+
import * as i5 from "../../toolbar/separator/tru-toolbar-separator";
|
|
8
|
+
import * as i6 from "../../toolbar/context-filter/tru-toolbar-context-filter";
|
|
9
|
+
import * as i7 from "../../toolbar/user-profile/tru-toolbar-user-profile";
|
|
10
|
+
export class TruDesktopMenubar {
|
|
11
|
+
contextFilters;
|
|
12
|
+
desktopCtrl;
|
|
13
|
+
constructor(contextFilters) {
|
|
14
|
+
this.contextFilters = contextFilters;
|
|
15
|
+
}
|
|
16
|
+
options = null;
|
|
17
|
+
configs = null;
|
|
18
|
+
filters = [];
|
|
19
|
+
openWindow = (event, windowOverrides) => {
|
|
20
|
+
this.desktopCtrl.openWindow(windowOverrides);
|
|
21
|
+
};
|
|
22
|
+
ngOnInit() {
|
|
23
|
+
this.options = this.desktopCtrl.getOptions();
|
|
24
|
+
this.configs = this.options.menubarConfig;
|
|
25
|
+
this.filters = this.contextFilters.filters;
|
|
26
|
+
}
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubar, deps: [{ token: i1.TruContextFilters }], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: TruDesktopMenubar, selector: "tru-desktop-menubar", inputs: { desktopCtrl: "desktopCtrl" }, ngImport: i0, template: "<div class=\"desktop-main-menu\">\r\n <tru-toolbar>\r\n <tru-toolbar-menu *ngFor=\"let config of configs\" [config]=\"config\"></tru-toolbar-menu>\r\n <tru-toolbar-separator *ngIf=\"filters.length\"></tru-toolbar-separator>\r\n <tru-toolbar-context-filter></tru-toolbar-context-filter>\r\n </tru-toolbar>\r\n <tru-toolbar>\r\n <tru-toolbar-user-profile></tru-toolbar-user-profile>\r\n </tru-toolbar>\r\n</div>\r\n", styles: [".desktop-main-menu tru-toolbar{display:inline-block}tru-toolbar:nth-of-type(2){float:right}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TruToolbar, selector: "tru-toolbar", inputs: ["config"] }, { kind: "component", type: i4.TruToolbarMenu, selector: "tru-toolbar-menu", inputs: ["config"] }, { kind: "component", type: i5.TruToolbarSeparator, selector: "tru-toolbar-separator" }, { kind: "component", type: i6.TruToolbarContextFilter, selector: "tru-toolbar-context-filter" }, { kind: "component", type: i7.TruToolbarUserProfile, selector: "tru-toolbar-user-profile" }], encapsulation: i0.ViewEncapsulation.None });
|
|
29
|
+
}
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubar, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{ selector: 'tru-desktop-menubar', encapsulation: ViewEncapsulation.None, template: "<div class=\"desktop-main-menu\">\r\n <tru-toolbar>\r\n <tru-toolbar-menu *ngFor=\"let config of configs\" [config]=\"config\"></tru-toolbar-menu>\r\n <tru-toolbar-separator *ngIf=\"filters.length\"></tru-toolbar-separator>\r\n <tru-toolbar-context-filter></tru-toolbar-context-filter>\r\n </tru-toolbar>\r\n <tru-toolbar>\r\n <tru-toolbar-user-profile></tru-toolbar-user-profile>\r\n </tru-toolbar>\r\n</div>\r\n", styles: [".desktop-main-menu tru-toolbar{display:inline-block}tru-toolbar:nth-of-type(2){float:right}\n"] }]
|
|
33
|
+
}], ctorParameters: () => [{ type: i1.TruContextFilters }], propDecorators: { desktopCtrl: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}] } });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWVudWJhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL21lbnViYXIvdHJ1LWRlc2t0b3AtbWVudWJhci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL21lbnViYXIvdHJ1LWRlc2t0b3AtbWVudWJhci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFTNUUsTUFBTSxPQUFPLGlCQUFpQjtJQUdSO0lBRlgsV0FBVyxDQUFNO0lBRTFCLFlBQW9CLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtJQUFJLENBQUM7SUFFMUQsT0FBTyxHQUFlLElBQUksQ0FBQztJQUMzQixPQUFPLEdBQWUsSUFBSSxDQUFDO0lBQzNCLE9BQU8sR0FBZSxFQUFFLENBQUM7SUFFekIsVUFBVSxHQUFHLENBQUMsS0FBVSxFQUFFLGVBQW9CLEVBQUUsRUFBRTtRQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQUM7SUFFRixRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzdDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztJQUM3QyxDQUFDO3VHQWpCVSxpQkFBaUI7MkZBQWpCLGlCQUFpQixtR0NUOUIsK2FBVUE7OzJGRERhLGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDRSxxQkFBcUIsaUJBR2hCLGlCQUFpQixDQUFDLElBQUk7c0ZBRzVCLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRydUNvbnRleHRGaWx0ZXJzIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdHJ1LWNvbnRleHQtZmlsdGVycyc7XHJcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndHJ1LWRlc2t0b3AtbWVudWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90cnUtZGVza3RvcC1tZW51YmFyLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90cnUtZGVza3RvcC1tZW51YmFyLmNzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFRydURlc2t0b3BNZW51YmFyIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZGVza3RvcEN0cmw6IGFueTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRleHRGaWx0ZXJzOiBUcnVDb250ZXh0RmlsdGVycykgeyB9XG5cbiAgb3B0aW9uczogYW55IHwgbnVsbCA9IG51bGw7XG4gIGNvbmZpZ3M6IGFueSB8IG51bGwgPSBudWxsO1xuICBmaWx0ZXJzOiBBcnJheTxhbnk+ID0gW107XG5cbiAgb3BlbldpbmRvdyA9IChldmVudDogYW55LCB3aW5kb3dPdmVycmlkZXM6IGFueSkgPT4ge1xuICAgIHRoaXMuZGVza3RvcEN0cmwub3BlbldpbmRvdyh3aW5kb3dPdmVycmlkZXMpO1xuICB9O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuZGVza3RvcEN0cmwuZ2V0T3B0aW9ucygpO1xuICAgIHRoaXMuY29uZmlncyA9IHRoaXMub3B0aW9ucy5tZW51YmFyQ29uZmlnO1xuICAgIHRoaXMuZmlsdGVycyA9IHRoaXMuY29udGV4dEZpbHRlcnMuZmlsdGVycztcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImRlc2t0b3AtbWFpbi1tZW51XCI+XHJcbiAgPHRydS10b29sYmFyPlxyXG4gICAgPHRydS10b29sYmFyLW1lbnUgKm5nRm9yPVwibGV0IGNvbmZpZyBvZiBjb25maWdzXCIgW2NvbmZpZ109XCJjb25maWdcIj48L3RydS10b29sYmFyLW1lbnU+XHJcbiAgICA8dHJ1LXRvb2xiYXItc2VwYXJhdG9yICpuZ0lmPVwiZmlsdGVycy5sZW5ndGhcIj48L3RydS10b29sYmFyLXNlcGFyYXRvcj5cclxuICAgIDx0cnUtdG9vbGJhci1jb250ZXh0LWZpbHRlcj48L3RydS10b29sYmFyLWNvbnRleHQtZmlsdGVyPlxyXG4gIDwvdHJ1LXRvb2xiYXI+XHJcbiAgPHRydS10b29sYmFyPlxyXG4gICAgPHRydS10b29sYmFyLXVzZXItcHJvZmlsZT48L3RydS10b29sYmFyLXVzZXItcHJvZmlsZT5cclxuICA8L3RydS10b29sYmFyPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { TruWindowEventArgs } from './tru-window-event-args';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../../services/tru-context-filters";
|
|
5
|
+
import * as i2 from "./tru-window-event-handler";
|
|
6
|
+
export class TruDesktopManager {
|
|
7
|
+
contextFilters;
|
|
8
|
+
windowEventHandler;
|
|
9
|
+
constructor(contextFilters, windowEventHandler) {
|
|
10
|
+
this.contextFilters = contextFilters;
|
|
11
|
+
this.windowEventHandler = windowEventHandler;
|
|
12
|
+
}
|
|
13
|
+
getWindowEvent = (tableName, tablePluralName, tablePluralLabel, componentName, entities = [], openAsDetaiView = false) => {
|
|
14
|
+
var windowEvent = new TruWindowEventArgs();
|
|
15
|
+
windowEvent.tableName = tableName;
|
|
16
|
+
windowEvent.tablePluralName = tablePluralName;
|
|
17
|
+
windowEvent.tablePluralLabel = tablePluralLabel;
|
|
18
|
+
windowEvent.contextFilters = this.contextFilters.filters;
|
|
19
|
+
windowEvent.views = [
|
|
20
|
+
{
|
|
21
|
+
active: true,
|
|
22
|
+
entities: entities,
|
|
23
|
+
entityIndex: 0,
|
|
24
|
+
isDirty: false,
|
|
25
|
+
isEditing: false,
|
|
26
|
+
isInvalid: false,
|
|
27
|
+
openAsDetaiView: openAsDetaiView,
|
|
28
|
+
componentName: componentName
|
|
29
|
+
}
|
|
30
|
+
];
|
|
31
|
+
return windowEvent;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Opens a window for a directive.
|
|
35
|
+
* @param {string} directiveName - name of the view directive.
|
|
36
|
+
* @param {object} data - values to pass to the view.
|
|
37
|
+
* @param {optional bool} showIfExists - if true and a view already exists for the
|
|
38
|
+
* directive, then shows its window instead of creating a new one.
|
|
39
|
+
*/
|
|
40
|
+
addWindow = (tableName, tablePluralName, tablePluralLabel, componentName, entities = [], openAsDetaiView = false, showNavigation = true, showIfExists) => {
|
|
41
|
+
this.windowEventHandler.open(this.getWindowEvent(tableName, tablePluralName, tablePluralLabel, componentName, entities, openAsDetaiView));
|
|
42
|
+
};
|
|
43
|
+
windowTitlesByBaseText = {};
|
|
44
|
+
/**
|
|
45
|
+
* Returns a unique string for the base name of a window. At first, returns the input.
|
|
46
|
+
* For second call with same base name, returns the name plus ' - 2' and so on. When
|
|
47
|
+
* all of the titles for the base name are released, then the next title will have no
|
|
48
|
+
* suffix.
|
|
49
|
+
* @param {string} text - base name of a window.
|
|
50
|
+
* @returns {object} - text: the unique text and release(): releases the name for
|
|
51
|
+
* future windows.
|
|
52
|
+
*/
|
|
53
|
+
getUniqueTitle = (text) => {
|
|
54
|
+
var baseText = text;
|
|
55
|
+
var titles = this.windowTitlesByBaseText[baseText];
|
|
56
|
+
if (!titles) {
|
|
57
|
+
this.windowTitlesByBaseText[baseText] = titles = {
|
|
58
|
+
dispensedCount: 1,
|
|
59
|
+
activeCount: 1
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
++titles.activeCount;
|
|
64
|
+
text += ' - ' + (++titles.dispensedCount);
|
|
65
|
+
}
|
|
66
|
+
return {
|
|
67
|
+
text: text,
|
|
68
|
+
release: () => {
|
|
69
|
+
if (titles.activeCount === 1)
|
|
70
|
+
delete this.windowTitlesByBaseText[baseText];
|
|
71
|
+
else {
|
|
72
|
+
--titles.activeCount;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopManager, deps: [{ token: i1.TruContextFilters }, { token: i2.TruWindowEventHandler }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
78
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopManager, providedIn: 'root' });
|
|
79
|
+
}
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopManager, decorators: [{
|
|
81
|
+
type: Injectable,
|
|
82
|
+
args: [{
|
|
83
|
+
providedIn: 'root',
|
|
84
|
+
}]
|
|
85
|
+
}], ctorParameters: () => [{ type: i1.TruContextFilters }, { type: i2.TruWindowEventHandler }] });
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3NlcnZpY2VzL3RydS1kZXNrdG9wLW1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQVE3RCxNQUFNLE9BQU8saUJBQWlCO0lBR2xCO0lBQ0E7SUFGVixZQUNVLGNBQWlDLEVBQ2pDLGtCQUF5QztRQUR6QyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF1QjtJQUFJLENBQUM7SUFFeEQsY0FBYyxHQUFHLENBQ2YsU0FBaUIsRUFDakIsZUFBdUIsRUFDdkIsZ0JBQXdCLEVBQ3hCLGFBQXFCLEVBQ3JCLFdBQWlDLEVBQUUsRUFDbkMsa0JBQTJCLEtBQUssRUFBc0IsRUFBRTtRQUV4RCxJQUFJLFdBQVcsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDM0MsV0FBVyxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDbEMsV0FBVyxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7UUFDOUMsV0FBVyxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDO1FBQ2hELFdBQVcsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUM7UUFDekQsV0FBVyxDQUFDLEtBQUssR0FBRztZQUNsQjtnQkFDRSxNQUFNLEVBQUUsSUFBSTtnQkFDWixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsV0FBVyxFQUFFLENBQUM7Z0JBQ2QsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsU0FBUyxFQUFFLEtBQUs7Z0JBQ2hCLFNBQVMsRUFBRSxLQUFLO2dCQUNoQixlQUFlLEVBQUUsZUFBZTtnQkFDaEMsYUFBYSxFQUFFLGFBQWE7YUFDN0I7U0FDRixDQUFDO1FBQ0YsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQyxDQUFBO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsU0FBUyxHQUFHLENBQ1YsU0FBaUIsRUFDakIsZUFBdUIsRUFDdkIsZ0JBQXdCLEVBQ3hCLGFBQXFCLEVBQ3JCLFdBQWlDLEVBQUUsRUFDbkMsa0JBQTJCLEtBQUssRUFDaEMsaUJBQTBCLElBQUksRUFDOUIsWUFBc0IsRUFBRSxFQUFFO1FBQzFCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUM1SSxDQUFDLENBQUE7SUFFRCxzQkFBc0IsR0FBUSxFQUFFLENBQUM7SUFFakM7Ozs7Ozs7O09BUUc7SUFDSCxjQUFjLEdBQUcsQ0FBQyxJQUFZLEVBQW1CLEVBQUU7UUFDakQsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1gsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxHQUFHLE1BQU0sR0FBRztnQkFDL0MsY0FBYyxFQUFFLENBQUM7Z0JBQ2pCLFdBQVcsRUFBRSxDQUFDO2FBQ2YsQ0FBQztTQUNIO2FBQU07WUFDTCxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUM7WUFDckIsSUFBSSxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQzNDO1FBQ0QsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJO1lBQ1YsT0FBTyxFQUFFLEdBQUcsRUFBRTtnQkFDWixJQUFJLE1BQU0sQ0FBQyxXQUFXLEtBQUssQ0FBQztvQkFDMUIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7cUJBQzFDO29CQUNILEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQztpQkFDdEI7WUFDSCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQTt1R0F0RlUsaUJBQWlCOzJHQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7MkZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBUcnVXaW5kb3dFdmVudEhhbmRsZXIgfSBmcm9tICcuL3RydS13aW5kb3ctZXZlbnQtaGFuZGxlcic7XHJcbmltcG9ydCB7IFRydVdpbmRvd0V2ZW50QXJncyB9IGZyb20gJy4vdHJ1LXdpbmRvdy1ldmVudC1hcmdzJztcclxuaW1wb3J0IHsgVHJ1Q29udGV4dEZpbHRlcnMgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvdHJ1LWNvbnRleHQtZmlsdGVyc1wiO1xyXG5pbXBvcnQgeyBUcnVFbnRpdHlCYXNlIH0gZnJvbSBcIi4uLy4uLy4uL2Jhc2UtY2xhc3Nlcy90cnUtZW50aXR5LWJhc2VcIjtcclxuaW1wb3J0IHsgVHJ1RGVza3RvcFRpdGxlIH0gZnJvbSBcIi4uL2NsYXNzZXMvdHJ1LWRlc2t0b3AtdGl0bGVcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wTWFuYWdlciB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjb250ZXh0RmlsdGVyczogVHJ1Q29udGV4dEZpbHRlcnMsXHJcbiAgICBwcml2YXRlIHdpbmRvd0V2ZW50SGFuZGxlcjogVHJ1V2luZG93RXZlbnRIYW5kbGVyKSB7IH1cclxuXHJcbiAgZ2V0V2luZG93RXZlbnQgPSAoXHJcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcclxuICAgIHRhYmxlUGx1cmFsTmFtZTogc3RyaW5nLFxyXG4gICAgdGFibGVQbHVyYWxMYWJlbDogc3RyaW5nLFxyXG4gICAgY29tcG9uZW50TmFtZTogc3RyaW5nLFxyXG4gICAgZW50aXRpZXM6IEFycmF5PFRydUVudGl0eUJhc2U+ID0gW10sXHJcbiAgICBvcGVuQXNEZXRhaVZpZXc6IGJvb2xlYW4gPSBmYWxzZSk6IFRydVdpbmRvd0V2ZW50QXJncyA9PiB7XHJcblxyXG4gICAgdmFyIHdpbmRvd0V2ZW50ID0gbmV3IFRydVdpbmRvd0V2ZW50QXJncygpO1xyXG4gICAgd2luZG93RXZlbnQudGFibGVOYW1lID0gdGFibGVOYW1lO1xyXG4gICAgd2luZG93RXZlbnQudGFibGVQbHVyYWxOYW1lID0gdGFibGVQbHVyYWxOYW1lO1xyXG4gICAgd2luZG93RXZlbnQudGFibGVQbHVyYWxMYWJlbCA9IHRhYmxlUGx1cmFsTGFiZWw7XHJcbiAgICB3aW5kb3dFdmVudC5jb250ZXh0RmlsdGVycyA9IHRoaXMuY29udGV4dEZpbHRlcnMuZmlsdGVycztcclxuICAgIHdpbmRvd0V2ZW50LnZpZXdzID0gW1xyXG4gICAgICB7XHJcbiAgICAgICAgYWN0aXZlOiB0cnVlLFxyXG4gICAgICAgIGVudGl0aWVzOiBlbnRpdGllcyxcclxuICAgICAgICBlbnRpdHlJbmRleDogMCxcclxuICAgICAgICBpc0RpcnR5OiBmYWxzZSxcclxuICAgICAgICBpc0VkaXRpbmc6IGZhbHNlLFxyXG4gICAgICAgIGlzSW52YWxpZDogZmFsc2UsXHJcbiAgICAgICAgb3BlbkFzRGV0YWlWaWV3OiBvcGVuQXNEZXRhaVZpZXcsXHJcbiAgICAgICAgY29tcG9uZW50TmFtZTogY29tcG9uZW50TmFtZVxyXG4gICAgICB9XHJcbiAgICBdO1xyXG4gICAgcmV0dXJuIHdpbmRvd0V2ZW50O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbnMgYSB3aW5kb3cgZm9yIGEgZGlyZWN0aXZlLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkaXJlY3RpdmVOYW1lIC0gbmFtZSBvZiB0aGUgdmlldyBkaXJlY3RpdmUuXHJcbiAgICogQHBhcmFtIHtvYmplY3R9IGRhdGEgLSB2YWx1ZXMgdG8gcGFzcyB0byB0aGUgdmlldy5cclxuICAgKiBAcGFyYW0ge29wdGlvbmFsIGJvb2x9IHNob3dJZkV4aXN0cyAtIGlmIHRydWUgYW5kIGEgdmlldyBhbHJlYWR5IGV4aXN0cyBmb3IgdGhlIFxyXG4gICAqIGRpcmVjdGl2ZSwgdGhlbiBzaG93cyBpdHMgd2luZG93IGluc3RlYWQgb2YgY3JlYXRpbmcgYSBuZXcgb25lLlxyXG4gICAqL1xyXG4gIGFkZFdpbmRvdyA9IChcclxuICAgIHRhYmxlTmFtZTogc3RyaW5nLFxyXG4gICAgdGFibGVQbHVyYWxOYW1lOiBzdHJpbmcsXHJcbiAgICB0YWJsZVBsdXJhbExhYmVsOiBzdHJpbmcsXHJcbiAgICBjb21wb25lbnROYW1lOiBzdHJpbmcsXHJcbiAgICBlbnRpdGllczogQXJyYXk8VHJ1RW50aXR5QmFzZT4gPSBbXSxcclxuICAgIG9wZW5Bc0RldGFpVmlldzogYm9vbGVhbiA9IGZhbHNlLFxyXG4gICAgc2hvd05hdmlnYXRpb246IGJvb2xlYW4gPSB0cnVlLFxyXG4gICAgc2hvd0lmRXhpc3RzPzogYm9vbGVhbikgPT4ge1xyXG4gICAgdGhpcy53aW5kb3dFdmVudEhhbmRsZXIub3Blbih0aGlzLmdldFdpbmRvd0V2ZW50KHRhYmxlTmFtZSwgdGFibGVQbHVyYWxOYW1lLCB0YWJsZVBsdXJhbExhYmVsLCBjb21wb25lbnROYW1lLCBlbnRpdGllcywgb3BlbkFzRGV0YWlWaWV3KSk7XHJcbiAgfVxyXG5cclxuICB3aW5kb3dUaXRsZXNCeUJhc2VUZXh0OiBhbnkgPSB7fTtcclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyBhIHVuaXF1ZSBzdHJpbmcgZm9yIHRoZSBiYXNlIG5hbWUgb2YgYSB3aW5kb3cuICBBdCBmaXJzdCwgcmV0dXJucyB0aGUgaW5wdXQuXHJcbiAgICogRm9yIHNlY29uZCBjYWxsIHdpdGggc2FtZSBiYXNlIG5hbWUsIHJldHVybnMgdGhlIG5hbWUgcGx1cyAnIC0gMicgYW5kIHNvIG9uLiAgV2hlblxyXG4gICAqIGFsbCBvZiB0aGUgdGl0bGVzIGZvciB0aGUgYmFzZSBuYW1lIGFyZSByZWxlYXNlZCwgdGhlbiB0aGUgbmV4dCB0aXRsZSB3aWxsIGhhdmUgbm9cclxuICAgKiBzdWZmaXguXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRleHQgLSBiYXNlIG5hbWUgb2YgYSB3aW5kb3cuXHJcbiAgICogQHJldHVybnMge29iamVjdH0gLSB0ZXh0OiB0aGUgdW5pcXVlIHRleHQgYW5kIHJlbGVhc2UoKTogcmVsZWFzZXMgdGhlIG5hbWUgZm9yXHJcbiAgICogIGZ1dHVyZSB3aW5kb3dzLlxyXG4gICAqL1xyXG4gIGdldFVuaXF1ZVRpdGxlID0gKHRleHQ6IHN0cmluZyk6IFRydURlc2t0b3BUaXRsZSA9PiB7XHJcbiAgICB2YXIgYmFzZVRleHQgPSB0ZXh0O1xyXG4gICAgdmFyIHRpdGxlcyA9IHRoaXMud2luZG93VGl0bGVzQnlCYXNlVGV4dFtiYXNlVGV4dF07XHJcbiAgICBpZiAoIXRpdGxlcykge1xyXG4gICAgICB0aGlzLndpbmRvd1RpdGxlc0J5QmFzZVRleHRbYmFzZVRleHRdID0gdGl0bGVzID0ge1xyXG4gICAgICAgIGRpc3BlbnNlZENvdW50OiAxLFxyXG4gICAgICAgIGFjdGl2ZUNvdW50OiAxXHJcbiAgICAgIH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICArK3RpdGxlcy5hY3RpdmVDb3VudDtcclxuICAgICAgdGV4dCArPSAnIC0gJyArICgrK3RpdGxlcy5kaXNwZW5zZWRDb3VudCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB0ZXh0OiB0ZXh0LFxyXG4gICAgICByZWxlYXNlOiAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRpdGxlcy5hY3RpdmVDb3VudCA9PT0gMSlcclxuICAgICAgICAgIGRlbGV0ZSB0aGlzLndpbmRvd1RpdGxlc0J5QmFzZVRleHRbYmFzZVRleHRdO1xyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgLS10aXRsZXMuYWN0aXZlQ291bnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { TruDesktopViewConfig } from '../classes/tru-desktop-view-config';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class TruDesktopService {
|
|
5
|
+
/**
|
|
6
|
+
* @tru.doc function
|
|
7
|
+
* @name DesktopService.createDesktop
|
|
8
|
+
* @module tru.desktop
|
|
9
|
+
*
|
|
10
|
+
* @description
|
|
11
|
+
* Creates a new desktop instance.
|
|
12
|
+
*
|
|
13
|
+
* @returns {object} Desktop
|
|
14
|
+
*/
|
|
15
|
+
createDesktop = function () {
|
|
16
|
+
var desktop = new Desktop();
|
|
17
|
+
return desktop;
|
|
18
|
+
};
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopService });
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopService, decorators: [{
|
|
23
|
+
type: Injectable
|
|
24
|
+
}] });
|
|
25
|
+
/**
|
|
26
|
+
* @tru.desktop.doc class
|
|
27
|
+
* @name DesktopService.Desktop
|
|
28
|
+
* @module tru.desktop
|
|
29
|
+
*
|
|
30
|
+
* @description Desktop defines a logical desktop. Any non-dom properties and elements needed by the desktop should
|
|
31
|
+
* be defined in this class
|
|
32
|
+
*
|
|
33
|
+
*/
|
|
34
|
+
export class Desktop {
|
|
35
|
+
options = new DesktopOptions();
|
|
36
|
+
windowConfig = new WindowConfig();
|
|
37
|
+
viewConfig = new TruDesktopViewConfig();
|
|
38
|
+
}
|
|
39
|
+
;
|
|
40
|
+
/**
|
|
41
|
+
* @tru.desktop.doc class
|
|
42
|
+
* @name DesktopService.DesktopOptions
|
|
43
|
+
* @module tru.desktop
|
|
44
|
+
*
|
|
45
|
+
* @description Default DesktopOptions class. DesktopOptions are defined by the application developer and overlaid
|
|
46
|
+
* over this object.
|
|
47
|
+
*
|
|
48
|
+
*/
|
|
49
|
+
export class DesktopOptions {
|
|
50
|
+
allowDirtyClose = false;
|
|
51
|
+
allowInvalidClose = false;
|
|
52
|
+
cancelEditingOnNavigation = false;
|
|
53
|
+
canCloseFn = undefined;
|
|
54
|
+
canNavigateFn = undefined;
|
|
55
|
+
displayViewportDimensions = false;
|
|
56
|
+
enableAnimation = true;
|
|
57
|
+
enableWindowCascading = true;
|
|
58
|
+
logoUrl = undefined;
|
|
59
|
+
menubarHeight = 32;
|
|
60
|
+
menubarConfig = undefined;
|
|
61
|
+
showLaunchMenu = false;
|
|
62
|
+
}
|
|
63
|
+
;
|
|
64
|
+
/**
|
|
65
|
+
* @tru.desktop.doc class
|
|
66
|
+
* @name DesktopService.WindowConfig
|
|
67
|
+
* @module tru.desktop
|
|
68
|
+
*
|
|
69
|
+
* @description
|
|
70
|
+
* Default configuration object for a window. windowConfig properties can be defined by the application developer and overlaid
|
|
71
|
+
* over this object.
|
|
72
|
+
*
|
|
73
|
+
*/
|
|
74
|
+
export class WindowConfig {
|
|
75
|
+
tableName = '';
|
|
76
|
+
tablePluralName = '';
|
|
77
|
+
tablePluralLabel = '';
|
|
78
|
+
active = true;
|
|
79
|
+
bottom = 'auto';
|
|
80
|
+
globals = undefined;
|
|
81
|
+
height = '400px';
|
|
82
|
+
isDirty = false;
|
|
83
|
+
isInvalid = false;
|
|
84
|
+
left = 0;
|
|
85
|
+
maximized = undefined;
|
|
86
|
+
minHeight = '200px';
|
|
87
|
+
minimized = false;
|
|
88
|
+
minWidth = '200px';
|
|
89
|
+
outOfBounds = false;
|
|
90
|
+
savedPosition = {};
|
|
91
|
+
right = 'auto';
|
|
92
|
+
scope = undefined;
|
|
93
|
+
title = '';
|
|
94
|
+
top = 0;
|
|
95
|
+
width = '400px';
|
|
96
|
+
views = Array();
|
|
97
|
+
zIndex = -1;
|
|
98
|
+
isReadOnly = false;
|
|
99
|
+
unsubscribes = [];
|
|
100
|
+
wasReadOnly = false;
|
|
101
|
+
contextFilters = [];
|
|
102
|
+
destroy = () => {
|
|
103
|
+
while (this.unsubscribes.length)
|
|
104
|
+
this?.unsubscribes?.shift()?.call();
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
;
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3Atc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3NlcnZpY2VzL3RydS1kZXNrdG9wLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFHMUUsTUFBTSxPQUFPLGlCQUFpQjtJQUM1Qjs7Ozs7Ozs7O09BU0c7SUFDSSxhQUFhLEdBQUc7UUFDckIsSUFBSSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM1QixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDLENBQUE7dUdBZFUsaUJBQWlCOzJHQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVU7O0FBbUJYOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxPQUFPLE9BQU87SUFDbEIsT0FBTyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7SUFDL0IsWUFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDbEMsVUFBVSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztDQUN6QztBQUFBLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sT0FBTyxjQUFjO0lBQ3pCLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQzFCLHlCQUF5QixHQUFHLEtBQUssQ0FBQztJQUNsQyxVQUFVLEdBQUcsU0FBUyxDQUFDO0lBQ3ZCLGFBQWEsR0FBRyxTQUFTLENBQUM7SUFDMUIseUJBQXlCLEdBQUcsS0FBSyxDQUFDO0lBQ2xDLGVBQWUsR0FBRyxJQUFJLENBQUM7SUFDdkIscUJBQXFCLEdBQUcsSUFBSSxDQUFDO0lBQzdCLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDcEIsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUNuQixhQUFhLEdBQUcsU0FBUyxDQUFDO0lBQzFCLGNBQWMsR0FBRyxLQUFLLENBQUM7Q0FDeEI7QUFBQSxDQUFDO0FBR0Y7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxPQUFPLFlBQVk7SUFDdkIsU0FBUyxHQUFXLEVBQUUsQ0FBQztJQUN2QixlQUFlLEdBQVcsRUFBRSxDQUFDO0lBQzdCLGdCQUFnQixHQUFXLEVBQUUsQ0FBQztJQUU5QixNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ2QsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUNoQixPQUFPLEdBQUcsU0FBUyxDQUFDO0lBQ3BCLE1BQU0sR0FBRyxPQUFPLENBQUM7SUFDakIsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUNoQixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLElBQUksR0FBRyxDQUFDLENBQUM7SUFDVCxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQ3RCLFNBQVMsR0FBRyxPQUFPLENBQUM7SUFDcEIsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixRQUFRLEdBQUcsT0FBTyxDQUFDO0lBQ25CLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDcEIsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUNuQixLQUFLLEdBQUcsTUFBTSxDQUFDO0lBQ2YsS0FBSyxHQUFHLFNBQVMsQ0FBQztJQUNsQixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ1gsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUNSLEtBQUssR0FBRyxPQUFPLENBQUM7SUFDaEIsS0FBSyxHQUFHLEtBQUssRUFBd0IsQ0FBQztJQUN0QyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDWixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ25CLFlBQVksR0FBZSxFQUFFLENBQUM7SUFDOUIsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNwQixjQUFjLEdBQTRCLEVBQUUsQ0FBQztJQUU3QyxPQUFPLEdBQUcsR0FBRyxFQUFFO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU07WUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3ZFLENBQUMsQ0FBQTtDQUNGO0FBQUEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRydUNvbnRleHRGaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL3RydS1jb250ZXh0LWZpbHRlcic7XHJcbmltcG9ydCB7IFRydURlc2t0b3BWaWV3Q29uZmlnIH0gZnJvbSAnLi4vY2xhc3Nlcy90cnUtZGVza3RvcC12aWV3LWNvbmZpZyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wU2VydmljZSB7XHJcbiAgLyoqXHJcbiAgICogQHRydS5kb2MgZnVuY3Rpb25cclxuICAgKiBAbmFtZSBEZXNrdG9wU2VydmljZS5jcmVhdGVEZXNrdG9wXHJcbiAgICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gICAqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICogQ3JlYXRlcyBhIG5ldyBkZXNrdG9wIGluc3RhbmNlLlxyXG4gICAqXHJcbiAgICogQHJldHVybnMge29iamVjdH0gRGVza3RvcFxyXG4gICAqL1xyXG4gIHB1YmxpYyBjcmVhdGVEZXNrdG9wID0gZnVuY3Rpb24gKCkge1xyXG4gICAgdmFyIGRlc2t0b3AgPSBuZXcgRGVza3RvcCgpO1xyXG4gICAgcmV0dXJuIGRlc2t0b3A7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEB0cnUuZGVza3RvcC5kb2MgY2xhc3NcclxuICogQG5hbWUgRGVza3RvcFNlcnZpY2UuRGVza3RvcFxyXG4gKiBAbW9kdWxlIHRydS5kZXNrdG9wXHJcbiAqXHJcbiAqIEBkZXNjcmlwdGlvbiBEZXNrdG9wIGRlZmluZXMgYSBsb2dpY2FsIGRlc2t0b3AuICBBbnkgbm9uLWRvbSBwcm9wZXJ0aWVzIGFuZCBlbGVtZW50cyBuZWVkZWQgYnkgdGhlIGRlc2t0b3Agc2hvdWxkXHJcbiAqIGJlIGRlZmluZWQgaW4gdGhpcyBjbGFzc1xyXG4gKlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIERlc2t0b3Age1xyXG4gIG9wdGlvbnMgPSBuZXcgRGVza3RvcE9wdGlvbnMoKTtcclxuICB3aW5kb3dDb25maWcgPSBuZXcgV2luZG93Q29uZmlnKCk7XHJcbiAgdmlld0NvbmZpZyA9IG5ldyBUcnVEZXNrdG9wVmlld0NvbmZpZygpO1xyXG59O1xyXG5cclxuLyoqXHJcbiAqIEB0cnUuZGVza3RvcC5kb2MgY2xhc3NcclxuICogQG5hbWUgRGVza3RvcFNlcnZpY2UuRGVza3RvcE9wdGlvbnNcclxuICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb24gRGVmYXVsdCBEZXNrdG9wT3B0aW9ucyBjbGFzcy4gIERlc2t0b3BPcHRpb25zIGFyZSBkZWZpbmVkIGJ5IHRoZSBhcHBsaWNhdGlvbiBkZXZlbG9wZXIgYW5kIG92ZXJsYWlkXHJcbiAqIG92ZXIgdGhpcyBvYmplY3QuXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRGVza3RvcE9wdGlvbnMge1xyXG4gIGFsbG93RGlydHlDbG9zZSA9IGZhbHNlO1xyXG4gIGFsbG93SW52YWxpZENsb3NlID0gZmFsc2U7XHJcbiAgY2FuY2VsRWRpdGluZ09uTmF2aWdhdGlvbiA9IGZhbHNlO1xyXG4gIGNhbkNsb3NlRm4gPSB1bmRlZmluZWQ7XHJcbiAgY2FuTmF2aWdhdGVGbiA9IHVuZGVmaW5lZDtcclxuICBkaXNwbGF5Vmlld3BvcnREaW1lbnNpb25zID0gZmFsc2U7XHJcbiAgZW5hYmxlQW5pbWF0aW9uID0gdHJ1ZTtcclxuICBlbmFibGVXaW5kb3dDYXNjYWRpbmcgPSB0cnVlO1xyXG4gIGxvZ29VcmwgPSB1bmRlZmluZWQ7XHJcbiAgbWVudWJhckhlaWdodCA9IDMyO1xyXG4gIG1lbnViYXJDb25maWcgPSB1bmRlZmluZWQ7XHJcbiAgc2hvd0xhdW5jaE1lbnUgPSBmYWxzZTtcclxufTtcclxuXHJcblxyXG4vKipcclxuICogQHRydS5kZXNrdG9wLmRvYyBjbGFzc1xyXG4gKiBAbmFtZSBEZXNrdG9wU2VydmljZS5XaW5kb3dDb25maWdcclxuICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogRGVmYXVsdCBjb25maWd1cmF0aW9uIG9iamVjdCBmb3IgYSB3aW5kb3cuIHdpbmRvd0NvbmZpZyBwcm9wZXJ0aWVzIGNhbiBiZSBkZWZpbmVkIGJ5IHRoZSBhcHBsaWNhdGlvbiBkZXZlbG9wZXIgYW5kIG92ZXJsYWlkXHJcbiAqIG92ZXIgdGhpcyBvYmplY3QuXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgV2luZG93Q29uZmlnIHtcclxuICB0YWJsZU5hbWU6IHN0cmluZyA9ICcnO1xyXG4gIHRhYmxlUGx1cmFsTmFtZTogc3RyaW5nID0gJyc7XHJcbiAgdGFibGVQbHVyYWxMYWJlbDogc3RyaW5nID0gJyc7XHJcblxyXG4gIGFjdGl2ZSA9IHRydWU7XHJcbiAgYm90dG9tID0gJ2F1dG8nO1xyXG4gIGdsb2JhbHMgPSB1bmRlZmluZWQ7XHJcbiAgaGVpZ2h0ID0gJzQwMHB4JztcclxuICBpc0RpcnR5ID0gZmFsc2U7XHJcbiAgaXNJbnZhbGlkID0gZmFsc2U7XHJcbiAgbGVmdCA9IDA7XHJcbiAgbWF4aW1pemVkID0gdW5kZWZpbmVkO1xyXG4gIG1pbkhlaWdodCA9ICcyMDBweCc7XHJcbiAgbWluaW1pemVkID0gZmFsc2U7XHJcbiAgbWluV2lkdGggPSAnMjAwcHgnO1xyXG4gIG91dE9mQm91bmRzID0gZmFsc2U7XHJcbiAgc2F2ZWRQb3NpdGlvbiA9IHt9O1xyXG4gIHJpZ2h0ID0gJ2F1dG8nO1xyXG4gIHNjb3BlID0gdW5kZWZpbmVkO1xyXG4gIHRpdGxlID0gJyc7XHJcbiAgdG9wID0gMDtcclxuICB3aWR0aCA9ICc0MDBweCc7XHJcbiAgdmlld3MgPSBBcnJheTxUcnVEZXNrdG9wVmlld0NvbmZpZz4oKTtcclxuICB6SW5kZXggPSAtMTtcclxuICBpc1JlYWRPbmx5ID0gZmFsc2U7XHJcbiAgdW5zdWJzY3JpYmVzOiBBcnJheTxhbnk+ID0gW107XHJcbiAgd2FzUmVhZE9ubHkgPSBmYWxzZTtcclxuICBjb250ZXh0RmlsdGVyczogQXJyYXk8VHJ1Q29udGV4dEZpbHRlcj4gPSBbXTtcclxuXHJcbiAgZGVzdHJveSA9ICgpID0+IHtcclxuICAgIHdoaWxlICh0aGlzLnVuc3Vic2NyaWJlcy5sZW5ndGgpIHRoaXM/LnVuc3Vic2NyaWJlcz8uc2hpZnQoKT8uY2FsbCgpO1xyXG4gIH1cclxufTtcclxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class TruWindowActionEventHandler {
|
|
5
|
+
save$ = new Subject();
|
|
6
|
+
revert$ = new Subject();
|
|
7
|
+
onSave = () => {
|
|
8
|
+
return this.save$;
|
|
9
|
+
};
|
|
10
|
+
onRevert = () => {
|
|
11
|
+
return this.revert$;
|
|
12
|
+
};
|
|
13
|
+
save = () => {
|
|
14
|
+
this.save$.next(null);
|
|
15
|
+
};
|
|
16
|
+
revert = () => {
|
|
17
|
+
this.revert$.next(null);
|
|
18
|
+
};
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowActionEventHandler, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowActionEventHandler });
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowActionEventHandler, decorators: [{
|
|
23
|
+
type: Injectable
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXdpbmRvdy1hY3Rpb24tZXZlbnQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3NlcnZpY2VzL3RydS13aW5kb3ctYWN0aW9uLWV2ZW50LWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUcvQixNQUFNLE9BQU8sMkJBQTJCO0lBRTlCLEtBQUssR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUNyQyxPQUFPLEdBQWtCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFL0MsTUFBTSxHQUFHLEdBQUcsRUFBRTtRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDLENBQUE7SUFFRCxRQUFRLEdBQUcsR0FBRyxFQUFFO1FBQ2QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUMsQ0FBQTtJQUVELElBQUksR0FBRyxHQUFHLEVBQUU7UUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDLENBQUE7SUFFRCxNQUFNLEdBQUcsR0FBRyxFQUFFO1FBQ1osSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQyxDQUFBO3VHQW5CVSwyQkFBMkI7MkdBQTNCLDJCQUEyQjs7MkZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgVHJ1V2luZG93QWN0aW9uRXZlbnRIYW5kbGVyIHtcclxuXHJcbiAgcHJpdmF0ZSBzYXZlJDogU3ViamVjdDxudWxsPiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgcHJpdmF0ZSByZXZlcnQkOiBTdWJqZWN0PG51bGw+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgb25TYXZlID0gKCkgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2F2ZSQ7XHJcbiAgfVxyXG5cclxuICBvblJldmVydCA9ICgpID0+IHtcclxuICAgIHJldHVybiB0aGlzLnJldmVydCQ7XHJcbiAgfVxyXG5cclxuICBzYXZlID0gKCkgPT4ge1xyXG4gICAgdGhpcy5zYXZlJC5uZXh0KG51bGwpO1xyXG4gIH1cclxuXHJcbiAgcmV2ZXJ0ID0gKCkgPT4ge1xyXG4gICAgdGhpcy5yZXZlcnQkLm5leHQobnVsbCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class TruWindowEventArgs {
|
|
4
|
+
title = '';
|
|
5
|
+
tableName = '';
|
|
6
|
+
tablePluralName = '';
|
|
7
|
+
tablePluralLabel = '';
|
|
8
|
+
context = {};
|
|
9
|
+
contentBottom = '23px';
|
|
10
|
+
statusbarDirective = 'tru-statusbar';
|
|
11
|
+
height = '450px';
|
|
12
|
+
width = '900px';
|
|
13
|
+
views = [{}];
|
|
14
|
+
contextFilters = [];
|
|
15
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowEventArgs, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
16
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowEventArgs, providedIn: 'root' });
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowEventArgs, decorators: [{
|
|
19
|
+
type: Injectable,
|
|
20
|
+
args: [{
|
|
21
|
+
providedIn: 'root'
|
|
22
|
+
}]
|
|
23
|
+
}] });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXdpbmRvdy1ldmVudC1hcmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3Avc2VydmljZXMvdHJ1LXdpbmRvdy1ldmVudC1hcmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTNDLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsS0FBSyxHQUFXLEVBQUUsQ0FBQztJQUNuQixTQUFTLEdBQVcsRUFBRSxDQUFDO0lBQ3ZCLGVBQWUsR0FBVyxFQUFFLENBQUM7SUFDN0IsZ0JBQWdCLEdBQVcsRUFBRSxDQUFDO0lBQzlCLE9BQU8sR0FBUSxFQUFFLENBQUM7SUFDbEIsYUFBYSxHQUFXLE1BQU0sQ0FBQTtJQUM5QixrQkFBa0IsR0FBVyxlQUFlLENBQUM7SUFDN0MsTUFBTSxHQUFXLE9BQU8sQ0FBQztJQUN6QixLQUFLLEdBQVcsT0FBTyxDQUFDO0lBQ3hCLEtBQUssR0FBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM1QixjQUFjLEdBQTRCLEVBQUUsQ0FBQzt1R0FYbEMsa0JBQWtCOzJHQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJ1Q29udGV4dEZpbHRlciB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvdHJ1LWNvbnRleHQtZmlsdGVyJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRydVdpbmRvd0V2ZW50QXJncyB7XHJcbiAgdGl0bGU6IHN0cmluZyA9ICcnO1xyXG4gIHRhYmxlTmFtZTogc3RyaW5nID0gJyc7XHJcbiAgdGFibGVQbHVyYWxOYW1lOiBzdHJpbmcgPSAnJztcclxuICB0YWJsZVBsdXJhbExhYmVsOiBzdHJpbmcgPSAnJztcclxuICBjb250ZXh0OiBhbnkgPSB7fTtcclxuICBjb250ZW50Qm90dG9tOiBzdHJpbmcgPSAnMjNweCdcclxuICBzdGF0dXNiYXJEaXJlY3RpdmU6IHN0cmluZyA9ICd0cnUtc3RhdHVzYmFyJztcclxuICBoZWlnaHQ6IHN0cmluZyA9ICc0NTBweCc7XHJcbiAgd2lkdGg6IHN0cmluZyA9ICc5MDBweCc7XHJcbiAgdmlld3M6IEFycmF5PG9iamVjdD4gPSBbe31dO1xyXG4gIGNvbnRleHRGaWx0ZXJzOiBBcnJheTxUcnVDb250ZXh0RmlsdGVyPiA9IFtdO1xyXG59XHJcbiJdfQ==
|