@trudb/tru-common-lib 0.0.725 → 0.0.728
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 +53 -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 +6932 -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 +24 -23
- 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 -44
- 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 -6799
- package/fesm2015/trudb-tru-common-lib.mjs.map +0 -1
- package/fesm2020/trudb-tru-common-lib.mjs +0 -6776
- package/fesm2020/trudb-tru-common-lib.mjs.map +0 -1
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
export class TruAuthToken {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
export class TruAuthToken {
|
|
2
|
+
accessToken;
|
|
3
|
+
refreshToken;
|
|
4
|
+
userClaims;
|
|
5
|
+
constructor(accessToken, refreshToken, userClaims) {
|
|
6
|
+
this.accessToken = accessToken;
|
|
7
|
+
this.refreshToken = refreshToken;
|
|
8
|
+
this.userClaims = userClaims;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWF1dGgtdG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vY2xhc3Nlcy90cnUtYXV0aC10b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sWUFBWTtJQUVkO0lBQ0E7SUFDQTtJQUhULFlBQ1MsV0FBbUIsRUFDbkIsWUFBb0IsRUFDcEIsVUFBa0I7UUFGbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVE7UUFDbkIsaUJBQVksR0FBWixZQUFZLENBQVE7UUFDcEIsZUFBVSxHQUFWLFVBQVUsQ0FBUTtJQUFJLENBQUM7Q0FDakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVHJ1QXV0aFRva2VuIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBhY2Nlc3NUb2tlbjogc3RyaW5nLFxyXG4gICAgcHVibGljIHJlZnJlc2hUb2tlbjogc3RyaW5nLFxyXG4gICAgcHVibGljIHVzZXJDbGFpbXM6IHN0cmluZykgeyB9XHJcbn1cclxuIl19
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export class TruAuthUserRequest {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
export class TruAuthUserRequest {
|
|
2
|
+
username;
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWF1dGgtdXNlci1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2xvZ2luL2NsYXNzZXMvdHJ1LWF1dGgtdXNlci1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxrQkFBa0I7SUFDM0IsUUFBUSxDQUFVO0NBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFRydUF1dGhVc2VyUmVxdWVzdCB7XHJcbiAgICB1c2VybmFtZSE6IHN0cmluZztcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class TruAuthCache {
|
|
4
|
+
prunables = [];
|
|
5
|
+
registerPrunable(prunable) {
|
|
6
|
+
this.prunables.push(prunable);
|
|
7
|
+
}
|
|
8
|
+
pruneAll() {
|
|
9
|
+
this.prunables.forEach((p) => p.pruneCache());
|
|
10
|
+
}
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuthCache, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuthCache, providedIn: "root" });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuthCache, decorators: [{
|
|
15
|
+
type: Injectable,
|
|
16
|
+
args: [{
|
|
17
|
+
providedIn: "root",
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWF1dGgtY2FjaGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vc2VydmljZXMvdHJ1LWF1dGgtY2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLFlBQVk7SUFDdkIsU0FBUyxHQUFlLEVBQUUsQ0FBQztJQUUzQixnQkFBZ0IsQ0FBQyxRQUFrQjtRQUNqQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO3VHQVRVLFlBQVk7MkdBQVosWUFBWSxjQUZYLE1BQU07OzJGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVBdXRoQ2FjaGUge1xyXG4gIHBydW5hYmxlczogUHJ1bmFibGVbXSA9IFtdO1xyXG5cclxuICByZWdpc3RlclBydW5hYmxlKHBydW5hYmxlOiBQcnVuYWJsZSkge1xyXG4gICAgdGhpcy5wcnVuYWJsZXMucHVzaChwcnVuYWJsZSk7XHJcbiAgfVxyXG5cclxuICBwcnVuZUFsbCgpIHtcclxuICAgIHRoaXMucHJ1bmFibGVzLmZvckVhY2goKHApID0+IHAucHJ1bmVDYWNoZSgpKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUHJ1bmFibGUge1xyXG4gIHBydW5lQ2FjaGUoKTogdm9pZDtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Injectable, Inject } from "@angular/core";
|
|
2
|
+
import { throwError } from "rxjs";
|
|
3
|
+
import { catchError } from "rxjs/operators";
|
|
4
|
+
import { TRU_AUTH_STRATEGY } from "../classes/tru-auth-config";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "./tru-auth";
|
|
7
|
+
import * as i2 from "../../../services/tru-app-environment";
|
|
8
|
+
import * as i3 from "../classes/tru-auth-jwt-strategy";
|
|
9
|
+
export class TruAuthInterceptor {
|
|
10
|
+
auth;
|
|
11
|
+
appEnvironment;
|
|
12
|
+
jwt;
|
|
13
|
+
constructor(auth, appEnvironment, jwt) {
|
|
14
|
+
this.auth = auth;
|
|
15
|
+
this.appEnvironment = appEnvironment;
|
|
16
|
+
this.jwt = jwt;
|
|
17
|
+
}
|
|
18
|
+
intercept(request, next) {
|
|
19
|
+
if (this.appEnvironment.authType === 'jwt')
|
|
20
|
+
request = this.addToken(request, String(this.jwt.getToken()));
|
|
21
|
+
if (this.appEnvironment.authType === 'session')
|
|
22
|
+
request = request.clone({
|
|
23
|
+
withCredentials: true
|
|
24
|
+
});
|
|
25
|
+
return next.handle(request).pipe(catchError((error) => {
|
|
26
|
+
if (error.status === 401) {
|
|
27
|
+
this.auth.doLogoutAndRedirectToLogin();
|
|
28
|
+
}
|
|
29
|
+
return throwError(error);
|
|
30
|
+
}));
|
|
31
|
+
}
|
|
32
|
+
addToken(request, token) {
|
|
33
|
+
return request.clone({
|
|
34
|
+
setHeaders: { Authorization: `Bearer ${token}` },
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuthInterceptor, deps: [{ token: i1.TruAuth }, { token: i2.TruAppEnvironment }, { token: TRU_AUTH_STRATEGY }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
38
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuthInterceptor });
|
|
39
|
+
}
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuthInterceptor, decorators: [{
|
|
41
|
+
type: Injectable
|
|
42
|
+
}], ctorParameters: () => [{ type: i1.TruAuth }, { type: i2.TruAppEnvironment }, { type: i3.TruAuthJwtStrategy, decorators: [{
|
|
43
|
+
type: Inject,
|
|
44
|
+
args: [TRU_AUTH_STRATEGY]
|
|
45
|
+
}] }] });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWF1dGgtaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vc2VydmljZXMvdHJ1LWF1dGgtaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPbkQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJNUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7O0FBSS9ELE1BQU0sT0FBTyxrQkFBa0I7SUFFbkI7SUFDQTtJQUMyQjtJQUhyQyxZQUNVLElBQWEsRUFDYixjQUFpQyxFQUNOLEdBQXVCO1FBRmxELFNBQUksR0FBSixJQUFJLENBQVM7UUFDYixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDTixRQUFHLEdBQUgsR0FBRyxDQUFvQjtJQUN6RCxDQUFDO0lBRUosU0FBUyxDQUNQLE9BQXlCLEVBQ3pCLElBQWlCO1FBRWpCLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEtBQUssS0FBSztZQUN4QyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRWhFLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEtBQUssU0FBUztZQUM1QyxPQUFPLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDdEIsZUFBZSxFQUFFLElBQUk7YUFDdEIsQ0FBQyxDQUFDO1FBRUwsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDOUIsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbkIsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO2FBQ3hDO1lBQ0QsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFTyxRQUFRLENBQUMsT0FBeUIsRUFBRSxLQUFhO1FBQ3ZELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQztZQUNuQixVQUFVLEVBQUUsRUFBRSxhQUFhLEVBQUUsVUFBVSxLQUFLLEVBQUUsRUFBRTtTQUNqRCxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQWpDVSxrQkFBa0IsMEVBSW5CLGlCQUFpQjsyR0FKaEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVOzswQkFLTixNQUFNOzJCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7XHJcbiAgSHR0cFJlcXVlc3QsXHJcbiAgSHR0cEhhbmRsZXIsXHJcbiAgSHR0cEV2ZW50LFxyXG4gIEh0dHBJbnRlcmNlcHRvcixcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbmltcG9ydCB7IFRydUF1dGggfSBmcm9tIFwiLi90cnUtYXV0aFwiO1xyXG5pbXBvcnQgeyBUcnVBdXRoSnd0U3RyYXRlZ3kgfSBmcm9tIFwiLi4vY2xhc3Nlcy90cnUtYXV0aC1qd3Qtc3RyYXRlZ3lcIjtcclxuaW1wb3J0IHsgVFJVX0FVVEhfU1RSQVRFR1kgfSBmcm9tIFwiLi4vY2xhc3Nlcy90cnUtYXV0aC1jb25maWdcIjtcclxuaW1wb3J0IHsgVHJ1QXBwRW52aXJvbm1lbnQgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvdHJ1LWFwcC1lbnZpcm9ubWVudFwiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgVHJ1QXV0aEludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgYXV0aDogVHJ1QXV0aCxcclxuICAgIHByaXZhdGUgYXBwRW52aXJvbm1lbnQ6IFRydUFwcEVudmlyb25tZW50LFxyXG4gICAgQEluamVjdChUUlVfQVVUSF9TVFJBVEVHWSkgcHJpdmF0ZSBqd3Q6IFRydUF1dGhKd3RTdHJhdGVneVxyXG4gICkge31cclxuXHJcbiAgaW50ZXJjZXB0KFxyXG4gICAgcmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PixcclxuICAgIG5leHQ6IEh0dHBIYW5kbGVyXHJcbiAgKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xyXG4gICAgaWYgKHRoaXMuYXBwRW52aXJvbm1lbnQuYXV0aFR5cGUgPT09ICdqd3QnKVxyXG4gICAgICByZXF1ZXN0ID0gdGhpcy5hZGRUb2tlbihyZXF1ZXN0LCBTdHJpbmcodGhpcy5qd3QuZ2V0VG9rZW4oKSkpO1xyXG5cclxuICAgIGlmICh0aGlzLmFwcEVudmlyb25tZW50LmF1dGhUeXBlID09PSAnc2Vzc2lvbicpXHJcbiAgICAgIHJlcXVlc3QgPSByZXF1ZXN0LmNsb25lKHtcclxuICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWVcclxuICAgICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpLnBpcGUoXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XHJcbiAgICAgICAgICB0aGlzLmF1dGguZG9Mb2dvdXRBbmRSZWRpcmVjdFRvTG9naW4oKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkVG9rZW4ocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgdG9rZW46IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHJlcXVlc3QuY2xvbmUoe1xyXG4gICAgICBzZXRIZWFkZXJzOiB7IEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHt0b2tlbn1gIH0sXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { Injectable, Inject } from "@angular/core";
|
|
2
|
+
import { BehaviorSubject } from "rxjs";
|
|
3
|
+
import { TRU_AUTH_STRATEGY } from "../classes/tru-auth-config";
|
|
4
|
+
import { TRU_AUTH_CONFIG } from "../classes/tru-auth-config";
|
|
5
|
+
import { tap } from "rxjs/operators";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/router";
|
|
8
|
+
import * as i2 from "@angular/common/http";
|
|
9
|
+
import * as i3 from "./tru-auth-cache";
|
|
10
|
+
import * as i4 from "../../../services/tru-user";
|
|
11
|
+
import * as i5 from "../../../services/tru-app-environment";
|
|
12
|
+
export class TruAuth {
|
|
13
|
+
router;
|
|
14
|
+
http;
|
|
15
|
+
cache;
|
|
16
|
+
user;
|
|
17
|
+
appEnvironment;
|
|
18
|
+
auth;
|
|
19
|
+
loggedIn = new BehaviorSubject(false);
|
|
20
|
+
baseUrl = '';
|
|
21
|
+
constructor(router, http, cache, user, appEnvironment, auth) {
|
|
22
|
+
this.router = router;
|
|
23
|
+
this.http = http;
|
|
24
|
+
this.cache = cache;
|
|
25
|
+
this.user = user;
|
|
26
|
+
this.appEnvironment = appEnvironment;
|
|
27
|
+
this.auth = auth;
|
|
28
|
+
this.baseUrl = this.appEnvironment.appUri;
|
|
29
|
+
}
|
|
30
|
+
login(loginRequest) {
|
|
31
|
+
return this.http
|
|
32
|
+
.post(`${this.baseUrl}${TRU_AUTH_CONFIG.authUrl}/login`, loginRequest)
|
|
33
|
+
.pipe(tap((data) => {
|
|
34
|
+
this.auth.doLoginUser(data);
|
|
35
|
+
this.loggedIn.next(true);
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
setUser() {
|
|
39
|
+
this.auth.createUser(this.user);
|
|
40
|
+
}
|
|
41
|
+
logout() {
|
|
42
|
+
this.http
|
|
43
|
+
.post(`${this.baseUrl}${TRU_AUTH_CONFIG.authUrl}/logout`, null).subscribe(() => {
|
|
44
|
+
this.doLogoutAndRedirectToLogin();
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
userClaims() {
|
|
48
|
+
if (this.appEnvironment.authType === 'session') {
|
|
49
|
+
return this.http
|
|
50
|
+
.get(`${this.baseUrl}${TRU_AUTH_CONFIG.authUrl}/userClaims`)
|
|
51
|
+
.pipe(tap((userClaims) => {
|
|
52
|
+
this.user.create(userClaims);
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
return this.auth.createUser(this.user);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
get isLoggedIn() {
|
|
60
|
+
if (!this.loggedIn.value) {
|
|
61
|
+
this.loggedIn.next(this.auth.isLoggedIn());
|
|
62
|
+
}
|
|
63
|
+
return this.loggedIn.asObservable();
|
|
64
|
+
}
|
|
65
|
+
doLogoutAndRedirectToLogin() {
|
|
66
|
+
this.doLogoutUser();
|
|
67
|
+
this.loggedIn.next(false);
|
|
68
|
+
this.router.navigate([""]);
|
|
69
|
+
}
|
|
70
|
+
doLogoutUser() {
|
|
71
|
+
this.user.destroy();
|
|
72
|
+
this.cache.pruneAll();
|
|
73
|
+
this.auth.doLogoutUser();
|
|
74
|
+
}
|
|
75
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuth, deps: [{ token: i1.Router }, { token: i2.HttpClient }, { token: i3.TruAuthCache }, { token: i4.TruUser }, { token: i5.TruAppEnvironment }, { token: TRU_AUTH_STRATEGY }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
76
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuth, providedIn: "root" });
|
|
77
|
+
}
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruAuth, decorators: [{
|
|
79
|
+
type: Injectable,
|
|
80
|
+
args: [{
|
|
81
|
+
providedIn: "root",
|
|
82
|
+
}]
|
|
83
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.HttpClient }, { type: i3.TruAuthCache }, { type: i4.TruUser }, { type: i5.TruAppEnvironment }, { type: undefined, decorators: [{
|
|
84
|
+
type: Inject,
|
|
85
|
+
args: [TRU_AUTH_STRATEGY]
|
|
86
|
+
}] }] });
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWF1dGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vc2VydmljZXMvdHJ1LWF1dGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJbkQsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUduRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLEdBQUcsRUFBOEIsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQVVqRSxNQUFNLE9BQU8sT0FBTztJQUtSO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDMkI7SUFUN0IsUUFBUSxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQy9DLE9BQU8sR0FBVyxFQUFFLENBQUM7SUFFN0IsWUFDVSxNQUFjLEVBQ2QsSUFBZ0IsRUFDaEIsS0FBbUIsRUFDbkIsSUFBYSxFQUNiLGNBQWlDLEVBQ04sSUFBMEI7UUFMckQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsVUFBSyxHQUFMLEtBQUssQ0FBYztRQUNuQixTQUFJLEdBQUosSUFBSSxDQUFTO1FBQ2IsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ04sU0FBSSxHQUFKLElBQUksQ0FBc0I7UUFFN0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFlBQWlDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixJQUFJLENBQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLGVBQWUsQ0FBQyxPQUFPLFFBQVEsRUFBRSxZQUFZLENBQUM7YUFDMUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNWLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLElBQUk7YUFDTixJQUFJLENBQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLGVBQWUsQ0FBQyxPQUFPLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2xGLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxLQUFLLFNBQVMsRUFBRTtZQUM5QyxPQUFPLElBQUksQ0FBQyxJQUFJO2lCQUNiLEdBQUcsQ0FBTSxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsZUFBZSxDQUFDLE9BQU8sYUFBYSxDQUFDO2lCQUNoRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9CLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDUDthQUNJO1lBQ0gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztTQUM1QztRQUNELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsMEJBQTBCO1FBQ3hCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0IsQ0FBQzt1R0FqRVUsT0FBTyxzSkFVUixpQkFBaUI7MkdBVmhCLE9BQU8sY0FGTixNQUFNOzsyRkFFUCxPQUFPO2tCQUhuQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBV0ksTUFBTTsyQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHRocm93RXJyb3IgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBUcnVBdXRoTG9naW5SZXF1ZXN0IH0gZnJvbSBcIi4uL2NsYXNzZXMvdHJ1LWF1dGgtbG9naW4tcmVxdWVzdFwiO1xyXG5pbXBvcnQgeyBUcnVBdXRoQ2FjaGUgfSBmcm9tIFwiLi90cnUtYXV0aC1jYWNoZVwiO1xyXG5pbXBvcnQgeyBUUlVfQVVUSF9TVFJBVEVHWSB9IGZyb20gXCIuLi9jbGFzc2VzL3RydS1hdXRoLWNvbmZpZ1wiO1xyXG5pbXBvcnQgeyBUcnVBdXRoU3RyYXRlZ3kgfSBmcm9tIFwiLi4vY2xhc3Nlcy90cnUtYXV0aC1jb25maWdcIjtcclxuaW1wb3J0IHsgVFJVX0FVVEhfQ09ORklHIH0gZnJvbSBcIi4uL2NsYXNzZXMvdHJ1LWF1dGgtY29uZmlnXCI7XHJcbmltcG9ydCB7IHRhcCwgbWFwLCBjYXRjaEVycm9yLCBzd2l0Y2hNYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgSVRydVVzZXIsIFRydVVzZXIgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvdHJ1LXVzZXJcIjtcclxuaW1wb3J0IHsgVHJ1QXBwRW52aXJvbm1lbnQgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvdHJ1LWFwcC1lbnZpcm9ubWVudFwiO1xyXG5pbXBvcnQgeyBUcnVBdXRoVXNlclJlcXVlc3QgfSBmcm9tIFwiLi4vY2xhc3Nlcy90cnUtYXV0aC11c2VyLXJlcXVlc3RcIjtcclxuaW1wb3J0IHsgZmxhdE1hcCB9IGZyb20gXCJsb2Rhc2hcIjtcclxuaW1wb3J0IHsgVHJ1QXV0aExvZ291dFJlcXVlc3QgfSBmcm9tIFwiLi4vY2xhc3Nlcy90cnUtYXV0aC1sb2dvdXQtcmVxdWVzdFwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1QXV0aCB7XHJcbiAgcHJpdmF0ZSBsb2dnZWRJbiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIHByaXZhdGUgYmFzZVVybDogc3RyaW5nID0gJyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgY2FjaGU6IFRydUF1dGhDYWNoZSxcclxuICAgIHByaXZhdGUgdXNlcjogVHJ1VXNlcixcclxuICAgIHByaXZhdGUgYXBwRW52aXJvbm1lbnQ6IFRydUFwcEVudmlyb25tZW50LFxyXG4gICAgQEluamVjdChUUlVfQVVUSF9TVFJBVEVHWSkgcHJpdmF0ZSBhdXRoOiBUcnVBdXRoU3RyYXRlZ3k8YW55PlxyXG4gICkge1xyXG4gICAgdGhpcy5iYXNlVXJsID0gdGhpcy5hcHBFbnZpcm9ubWVudC5hcHBVcmk7XHJcbiAgfVxyXG5cclxuICBsb2dpbihsb2dpblJlcXVlc3Q6IFRydUF1dGhMb2dpblJlcXVlc3QpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdDxhbnk+KGAke3RoaXMuYmFzZVVybH0ke1RSVV9BVVRIX0NPTkZJRy5hdXRoVXJsfS9sb2dpbmAsIGxvZ2luUmVxdWVzdClcclxuICAgICAgLnBpcGUodGFwKChkYXRhKSA9PiB7IFxyXG4gICAgICAgICAgdGhpcy5hdXRoLmRvTG9naW5Vc2VyKGRhdGEpO1xyXG4gICAgICAgICAgdGhpcy5sb2dnZWRJbi5uZXh0KHRydWUpO1xyXG4gICAgICAgIH0pKTtcclxuICB9XHJcblxyXG4gIHNldFVzZXIoKSB7XHJcbiAgICB0aGlzLmF1dGguY3JlYXRlVXNlcih0aGlzLnVzZXIpO1xyXG4gIH1cclxuXHJcbiAgbG9nb3V0KCkge1xyXG4gICAgdGhpcy5odHRwXHJcbiAgICAgIC5wb3N0PGFueT4oYCR7dGhpcy5iYXNlVXJsfSR7VFJVX0FVVEhfQ09ORklHLmF1dGhVcmx9L2xvZ291dGAsIG51bGwpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5kb0xvZ291dEFuZFJlZGlyZWN0VG9Mb2dpbigpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHVzZXJDbGFpbXMoKSB7XHJcbiAgICBpZiAodGhpcy5hcHBFbnZpcm9ubWVudC5hdXRoVHlwZSA9PT0gJ3Nlc3Npb24nKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAuZ2V0PGFueT4oYCR7dGhpcy5iYXNlVXJsfSR7VFJVX0FVVEhfQ09ORklHLmF1dGhVcmx9L3VzZXJDbGFpbXNgKVxyXG4gICAgICAgIC5waXBlKHRhcCgodXNlckNsYWltcykgPT4ge1xyXG4gICAgICAgICAgdGhpcy51c2VyLmNyZWF0ZSh1c2VyQ2xhaW1zKTtcclxuICAgICAgICB9KSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYXV0aC5jcmVhdGVVc2VyKHRoaXMudXNlcik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgaXNMb2dnZWRJbigpIHtcclxuICAgIGlmICghdGhpcy5sb2dnZWRJbi52YWx1ZSkge1xyXG4gICAgICB0aGlzLmxvZ2dlZEluLm5leHQodGhpcy5hdXRoLmlzTG9nZ2VkSW4oKSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5sb2dnZWRJbi5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIGRvTG9nb3V0QW5kUmVkaXJlY3RUb0xvZ2luKCkge1xyXG4gICAgdGhpcy5kb0xvZ291dFVzZXIoKTtcclxuICAgIHRoaXMubG9nZ2VkSW4ubmV4dChmYWxzZSk7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCJcIl0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBkb0xvZ291dFVzZXIoKSB7XHJcbiAgICB0aGlzLnVzZXIuZGVzdHJveSgpO1xyXG4gICAgdGhpcy5jYWNoZS5wcnVuZUFsbCgpO1xyXG4gICAgdGhpcy5hdXRoLmRvTG9nb3V0VXNlcigpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { MaterialModule } from '../../material.module';
|
|
5
|
+
import { TruLogin } from './tru-login';
|
|
6
|
+
import { HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
7
|
+
import { TruAuthInterceptor } from './services/tru-auth-interceptor';
|
|
8
|
+
import { TruAuthStrategyProvider } from './classes/tru-auth-strategy-provider';
|
|
9
|
+
import { RouterModule } from '@angular/router';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/router";
|
|
12
|
+
const routes = [
|
|
13
|
+
{
|
|
14
|
+
path: 'login',
|
|
15
|
+
component: TruLogin
|
|
16
|
+
}
|
|
17
|
+
];
|
|
18
|
+
export class TruLoginModule {
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruLoginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
20
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: TruLoginModule, declarations: [TruLogin], imports: [CommonModule, MaterialModule, FormsModule, ReactiveFormsModule, i1.RouterModule], exports: [TruLogin] });
|
|
21
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruLoginModule, providers: [
|
|
22
|
+
{
|
|
23
|
+
provide: HTTP_INTERCEPTORS,
|
|
24
|
+
useClass: TruAuthInterceptor,
|
|
25
|
+
multi: true,
|
|
26
|
+
},
|
|
27
|
+
TruAuthStrategyProvider
|
|
28
|
+
], imports: [CommonModule, MaterialModule, FormsModule, ReactiveFormsModule, RouterModule.forChild(routes)] });
|
|
29
|
+
}
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruLoginModule, decorators: [{
|
|
31
|
+
type: NgModule,
|
|
32
|
+
args: [{
|
|
33
|
+
declarations: [TruLogin],
|
|
34
|
+
imports: [CommonModule, MaterialModule, FormsModule, ReactiveFormsModule, RouterModule.forChild(routes)],
|
|
35
|
+
exports: [TruLogin],
|
|
36
|
+
providers: [
|
|
37
|
+
{
|
|
38
|
+
provide: HTTP_INTERCEPTORS,
|
|
39
|
+
useClass: TruAuthInterceptor,
|
|
40
|
+
multi: true,
|
|
41
|
+
},
|
|
42
|
+
TruAuthStrategyProvider
|
|
43
|
+
],
|
|
44
|
+
}]
|
|
45
|
+
}] });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWxvZ2luLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9sb2dpbi90cnUtbG9naW4tbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsWUFBWSxFQUFVLE1BQU0saUJBQWlCLENBQUM7OztBQUV2RCxNQUFNLE1BQU0sR0FBVztJQUNyQjtRQUNFLElBQUksRUFBRSxPQUFPO1FBQ2IsU0FBUyxFQUFFLFFBQVE7S0FDcEI7Q0FDRixDQUFDO0FBZUYsTUFBTSxPQUFPLGNBQWM7dUdBQWQsY0FBYzt3R0FBZCxjQUFjLGlCQVpWLFFBQVEsYUFDYixZQUFZLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsOEJBQzlELFFBQVE7d0dBVVAsY0FBYyxhQVRkO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsS0FBSyxFQUFFLElBQUk7YUFDWjtZQUNELHVCQUF1QjtTQUN4QixZQVRTLFlBQVksRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDOzsyRkFXNUYsY0FBYztrQkFiMUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxRQUFRLENBQUM7b0JBQ3hCLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3hHLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztvQkFDbkIsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFFBQVEsRUFBRSxrQkFBa0I7NEJBQzVCLEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELHVCQUF1QjtxQkFDeEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuLi8uLi9tYXRlcmlhbC5tb2R1bGUnO1xyXG5cclxuaW1wb3J0IHsgVHJ1TG9naW4gfSBmcm9tICcuL3RydS1sb2dpbic7XHJcbmltcG9ydCB7IEhUVFBfSU5URVJDRVBUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBUcnVBdXRoSW50ZXJjZXB0b3IgfSBmcm9tICcuL3NlcnZpY2VzL3RydS1hdXRoLWludGVyY2VwdG9yJztcclxuaW1wb3J0IHsgVHJ1QXV0aFN0cmF0ZWd5UHJvdmlkZXIgfSBmcm9tICcuL2NsYXNzZXMvdHJ1LWF1dGgtc3RyYXRlZ3ktcHJvdmlkZXInO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUsIFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtcclxuICB7XHJcbiAgICBwYXRoOiAnbG9naW4nLFxyXG4gICAgY29tcG9uZW50OiBUcnVMb2dpblxyXG4gIH1cclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbVHJ1TG9naW5dLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdGVyaWFsTW9kdWxlLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxyXG4gIGV4cG9ydHM6IFtUcnVMb2dpbl0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxyXG4gICAgICB1c2VDbGFzczogVHJ1QXV0aEludGVyY2VwdG9yLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICBUcnVBdXRoU3RyYXRlZ3lQcm92aWRlclxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVMb2dpbk1vZHVsZSB7IH1cclxuIl19
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { FormGroup, FormControl, Validators } from '@angular/forms';
|
|
3
|
+
import { finalize } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "./services/tru-auth";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
7
|
+
import * as i3 from "@angular/material/button";
|
|
8
|
+
import * as i4 from "@angular/material/card";
|
|
9
|
+
import * as i5 from "@angular/material/input";
|
|
10
|
+
import * as i6 from "@angular/material/form-field";
|
|
11
|
+
import * as i7 from "@angular/forms";
|
|
12
|
+
export class TruLogin {
|
|
13
|
+
auth;
|
|
14
|
+
loginForm = new FormGroup({
|
|
15
|
+
username: new FormControl('', Validators.required),
|
|
16
|
+
password: new FormControl('', Validators.required)
|
|
17
|
+
});
|
|
18
|
+
loginError = "";
|
|
19
|
+
isLoggingIn = false;
|
|
20
|
+
constructor(auth) {
|
|
21
|
+
this.auth = auth;
|
|
22
|
+
}
|
|
23
|
+
get f() {
|
|
24
|
+
return this.loginForm.controls;
|
|
25
|
+
}
|
|
26
|
+
isDisabled = () => {
|
|
27
|
+
return !this.f.username.value || !this.f.password.value || this.isLoggingIn;
|
|
28
|
+
};
|
|
29
|
+
onSubmit() {
|
|
30
|
+
const loginRequest = {
|
|
31
|
+
username: this.f.username.value,
|
|
32
|
+
password: this.f.password.value
|
|
33
|
+
};
|
|
34
|
+
if (loginRequest.username && loginRequest.password) {
|
|
35
|
+
this.isLoggingIn = true;
|
|
36
|
+
this.auth
|
|
37
|
+
.login(loginRequest).pipe(finalize(() => {
|
|
38
|
+
this.isLoggingIn = false;
|
|
39
|
+
}))
|
|
40
|
+
.subscribe(() => {
|
|
41
|
+
this.isLoggingIn = false;
|
|
42
|
+
}, (error) => {
|
|
43
|
+
if (error.status === 401) {
|
|
44
|
+
this.loginError = "Incorrect username and/or password";
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
this.loginError = "Invalid Login - Error: " + error.status;
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruLogin, deps: [{ token: i1.TruAuth }], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: TruLogin, selector: "tru-login", ngImport: i0, template: "<div class=\"login-wrapper\">\r\n <form [formGroup]=\"loginForm\" (ngSubmit)=\"onSubmit()\">\r\n <mat-card class=\"animate-login\">\r\n <mat-card-header>\r\n <mat-card-title> loginFormTitle </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <mat-form-field>\r\n <mat-label>Username</mat-label>\r\n <input matInput formControlName=\"username\" placeholder=\"Username\">\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>Password</mat-label>\r\n <input matInput type=\"password\" formControlName=\"password\" placeholder=\"Password\">\r\n </mat-form-field>\r\n <div *ngIf=\"loginError\" class=\"animate-login-error animated rubberBand\">\r\n <p style=\"color: red; font-weight: bold;\"> {{ loginError }}</p>\r\n </div>\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"isDisabled()\">Login</button>\r\n </mat-card-actions>\r\n </mat-card>\r\n </form>\r\n</div>\r\n", styles: [".login-container{display:flex;justify-content:center;align-items:center;height:100vh;margin:0;padding:0}.login-input{margin-bottom:20px}.animate-login{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;margin-top:50px}.wrapper{display:flex;justify-content:center;align-items:center;height:100vh}mat-card{max-width:300px;width:100%;max-height:300px;padding:20px}.form-group{width:100%;max-width:400px;margin-bottom:20px}.login-wrapper{display:flex;justify-content:center;align-items:center;height:100vh}::ng-deep .login-wrapper .mat-mdc-text-field-wrapper{padding:0 16px!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i4.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i4.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i4.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i4.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i4.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
54
|
+
}
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruLogin, decorators: [{
|
|
56
|
+
type: Component,
|
|
57
|
+
args: [{ selector: 'tru-login', template: "<div class=\"login-wrapper\">\r\n <form [formGroup]=\"loginForm\" (ngSubmit)=\"onSubmit()\">\r\n <mat-card class=\"animate-login\">\r\n <mat-card-header>\r\n <mat-card-title> loginFormTitle </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <mat-form-field>\r\n <mat-label>Username</mat-label>\r\n <input matInput formControlName=\"username\" placeholder=\"Username\">\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>Password</mat-label>\r\n <input matInput type=\"password\" formControlName=\"password\" placeholder=\"Password\">\r\n </mat-form-field>\r\n <div *ngIf=\"loginError\" class=\"animate-login-error animated rubberBand\">\r\n <p style=\"color: red; font-weight: bold;\"> {{ loginError }}</p>\r\n </div>\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"isDisabled()\">Login</button>\r\n </mat-card-actions>\r\n </mat-card>\r\n </form>\r\n</div>\r\n", styles: [".login-container{display:flex;justify-content:center;align-items:center;height:100vh;margin:0;padding:0}.login-input{margin-bottom:20px}.animate-login{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;margin-top:50px}.wrapper{display:flex;justify-content:center;align-items:center;height:100vh}mat-card{max-width:300px;width:100%;max-height:300px;padding:20px}.form-group{width:100%;max-width:400px;margin-bottom:20px}.login-wrapper{display:flex;justify-content:center;align-items:center;height:100vh}::ng-deep .login-wrapper .mat-mdc-text-field-wrapper{padding:0 16px!important}\n"] }]
|
|
58
|
+
}], ctorParameters: () => [{ type: i1.TruAuth }] });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWxvZ2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2xvZ2luL3RydS1sb2dpbi50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9sb2dpbi90cnUtbG9naW4uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXBFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQU9oQyxNQUFNLE9BQU8sUUFBUTtJQVFDO0lBUHBCLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQztRQUN4QixRQUFRLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7UUFDbEQsUUFBUSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO0tBQ25ELENBQUMsQ0FBQztJQUNILFVBQVUsR0FBVyxFQUFFLENBQUM7SUFDeEIsV0FBVyxHQUFZLEtBQUssQ0FBQztJQUU3QixZQUFvQixJQUFhO1FBQWIsU0FBSSxHQUFKLElBQUksQ0FBUztJQUFJLENBQUM7SUFFdEMsSUFBSSxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUNqQyxDQUFDO0lBRUQsVUFBVSxHQUFHLEdBQVksRUFBRTtRQUN6QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDOUUsQ0FBQyxDQUFBO0lBRUQsUUFBUTtRQUNOLE1BQU0sWUFBWSxHQUF3QjtZQUN4QyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBTTtZQUNoQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBTTtTQUNqQyxDQUFDO1FBRUYsSUFBSSxZQUFZLENBQUMsUUFBUSxJQUFJLFlBQVksQ0FBQyxRQUFRLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLElBQUk7aUJBQ04sS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FDdkIsUUFBUSxDQUFDLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztZQUMzQixDQUFDLENBQUMsQ0FDSDtpQkFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQzNCLENBQUMsRUFDRSxDQUFDLEtBQXdCLEVBQUUsRUFBRTtnQkFDNUIsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtvQkFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxvQ0FBb0MsQ0FBQTtpQkFDdkQ7cUJBQ0k7b0JBQ0gsSUFBSSxDQUFDLFVBQVUsR0FBRyx5QkFBeUIsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO2lCQUM1RDtZQUNILENBQUMsQ0FDRixDQUFDO1NBQ0w7SUFDSCxDQUFDO3VHQTdDVSxRQUFROzJGQUFSLFFBQVEsaURDWnJCLDhrQ0F5QkE7OzJGRGJhLFFBQVE7a0JBTHBCLFNBQVM7K0JBQ0UsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBUcnVBdXRoIH0gZnJvbSAnLi9zZXJ2aWNlcy90cnUtYXV0aCc7XHJcbmltcG9ydCB7IFRydUF1dGhMb2dpblJlcXVlc3QgfSBmcm9tIFwiLi9jbGFzc2VzL3RydS1hdXRoLWxvZ2luLXJlcXVlc3RcIjtcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndHJ1LWxvZ2luJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHJ1LWxvZ2luLmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RydS1sb2dpbi5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1TG9naW4ge1xyXG4gIGxvZ2luRm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xyXG4gICAgdXNlcm5hbWU6IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICBwYXNzd29yZDogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLnJlcXVpcmVkKVxyXG4gIH0pO1xyXG4gIGxvZ2luRXJyb3I6IHN0cmluZyA9IFwiXCI7XHJcbiAgaXNMb2dnaW5nSW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGg6IFRydUF1dGgpIHsgfVxyXG5cclxuICBnZXQgZigpIHtcclxuICAgIHJldHVybiB0aGlzLmxvZ2luRm9ybS5jb250cm9scztcclxuICB9XHJcblxyXG4gIGlzRGlzYWJsZWQgPSAoKTogYm9vbGVhbiA9PiB7XHJcbiAgICByZXR1cm4gIXRoaXMuZi51c2VybmFtZS52YWx1ZSB8fCAhdGhpcy5mLnBhc3N3b3JkLnZhbHVlIHx8IHRoaXMuaXNMb2dnaW5nSW47XHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdCgpIHtcclxuICAgIGNvbnN0IGxvZ2luUmVxdWVzdDogVHJ1QXV0aExvZ2luUmVxdWVzdCA9IHtcclxuICAgICAgdXNlcm5hbWU6IHRoaXMuZi51c2VybmFtZS52YWx1ZSEsXHJcbiAgICAgIHBhc3N3b3JkOiB0aGlzLmYucGFzc3dvcmQudmFsdWUhXHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChsb2dpblJlcXVlc3QudXNlcm5hbWUgJiYgbG9naW5SZXF1ZXN0LnBhc3N3b3JkKSB7XHJcbiAgICAgIHRoaXMuaXNMb2dnaW5nSW4gPSB0cnVlO1xyXG4gICAgICB0aGlzLmF1dGhcclxuICAgICAgICAubG9naW4obG9naW5SZXF1ZXN0KS5waXBlKFxyXG4gICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmlzTG9nZ2luZ0luID0gZmFsc2U7IFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlzTG9nZ2luZ0luID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICAgLChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5sb2dpbkVycm9yID0gXCJJbmNvcnJlY3QgdXNlcm5hbWUgYW5kL29yIHBhc3N3b3JkXCJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLmxvZ2luRXJyb3IgPSBcIkludmFsaWQgTG9naW4gLSBFcnJvcjogXCIgKyBlcnJvci5zdGF0dXM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibG9naW4td3JhcHBlclwiPlxyXG4gIDxmb3JtIFtmb3JtR3JvdXBdPVwibG9naW5Gb3JtXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIj5cclxuICAgIDxtYXQtY2FyZCBjbGFzcz1cImFuaW1hdGUtbG9naW5cIj5cclxuICAgICAgPG1hdC1jYXJkLWhlYWRlcj5cclxuICAgICAgICA8bWF0LWNhcmQtdGl0bGU+IGxvZ2luRm9ybVRpdGxlIDwvbWF0LWNhcmQtdGl0bGU+XHJcbiAgICAgIDwvbWF0LWNhcmQtaGVhZGVyPlxyXG4gICAgICA8bWF0LWNhcmQtY29udGVudD5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPlVzZXJuYW1lPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIiBwbGFjZWhvbGRlcj1cIlVzZXJuYW1lXCI+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPlBhc3N3b3JkPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgdHlwZT1cInBhc3N3b3JkXCIgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIiBwbGFjZWhvbGRlcj1cIlBhc3N3b3JkXCI+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwibG9naW5FcnJvclwiIGNsYXNzPVwiYW5pbWF0ZS1sb2dpbi1lcnJvciBhbmltYXRlZCBydWJiZXJCYW5kXCI+XHJcbiAgICAgICAgICA8cCBzdHlsZT1cImNvbG9yOiByZWQ7IGZvbnQtd2VpZ2h0OiBib2xkO1wiPiB7eyBsb2dpbkVycm9yIH19PC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgIDxtYXQtY2FyZC1hY3Rpb25zPlxyXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgdHlwZT1cInN1Ym1pdFwiIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkKClcIj5Mb2dpbjwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1jYXJkLWFjdGlvbnM+XHJcbiAgICA8L21hdC1jYXJkPlxyXG4gIDwvZm9ybT5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { NgModule } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from "@angular/forms";
|
|
4
|
-
import { MaterialModule } from '../../material.module';
|
|
5
|
-
import { TruPasswordDialog } from "./tru-password-dialog";
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class TruPasswordDialogModule {
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
declarations: [TruPasswordDialog],
|
|
16
|
-
imports: [CommonModule, FormsModule, ReactiveFormsModule, MaterialModule],
|
|
17
|
-
exports: [TruPasswordDialog]
|
|
18
|
-
}]
|
|
19
|
-
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import { FormsModule, ReactiveFormsModule } from "@angular/forms";
|
|
4
|
+
import { MaterialModule } from '../../material.module';
|
|
5
|
+
import { TruPasswordDialog } from "./tru-password-dialog";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class TruPasswordDialogModule {
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruPasswordDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: TruPasswordDialogModule, declarations: [TruPasswordDialog], imports: [CommonModule, FormsModule, ReactiveFormsModule, MaterialModule], exports: [TruPasswordDialog] });
|
|
10
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruPasswordDialogModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, MaterialModule] });
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruPasswordDialogModule, decorators: [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
declarations: [TruPasswordDialog],
|
|
16
|
+
imports: [CommonModule, FormsModule, ReactiveFormsModule, MaterialModule],
|
|
17
|
+
exports: [TruPasswordDialog]
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXBhc3N3b3JkLWRpYWxvZy1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvcGFzc3dvcmQtZGlhbG9nL3RydS1wYXNzd29yZC1kaWFsb2ctbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBTzFELE1BQU0sT0FBTyx1QkFBdUI7dUdBQXZCLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLGlCQUpuQixpQkFBaUIsYUFDdEIsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxjQUFjLGFBQzlELGlCQUFpQjt3R0FFaEIsdUJBQXVCLFlBSHhCLFlBQVksRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsY0FBYzs7MkZBRzdELHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxjQUFjLENBQUM7b0JBQ3pFLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4uLy4uL21hdGVyaWFsLm1vZHVsZSc7XHJcblxyXG5pbXBvcnQgeyBUcnVQYXNzd29yZERpYWxvZyB9IGZyb20gXCIuL3RydS1wYXNzd29yZC1kaWFsb2dcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbVHJ1UGFzc3dvcmREaWFsb2ddLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBNYXRlcmlhbE1vZHVsZV0sXHJcbiAgZXhwb3J0czogW1RydVBhc3N3b3JkRGlhbG9nXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1UGFzc3dvcmREaWFsb2dNb2R1bGUgeyB9XHJcbiJdfQ==
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
2
|
+
import { Component, Inject } from '@angular/core';
|
|
3
|
+
import { FormControl } from '@angular/forms';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/material/dialog";
|
|
6
|
+
import * as i2 from "../../services/tru-user";
|
|
7
|
+
import * as i3 from "../../services/tru-app-environment";
|
|
8
|
+
import * as i4 from "@angular/forms";
|
|
9
|
+
import * as i5 from "@angular/material/button";
|
|
10
|
+
import * as i6 from "@angular/material/input";
|
|
11
|
+
import * as i7 from "@angular/material/form-field";
|
|
12
|
+
export class TruPasswordDialog {
|
|
13
|
+
dialogRef;
|
|
14
|
+
user;
|
|
15
|
+
appEnvironment;
|
|
16
|
+
data;
|
|
17
|
+
currentPasswordControl = new FormControl('', []);
|
|
18
|
+
newPasswordControl = new FormControl('', []);
|
|
19
|
+
confirmNewPasswordControl = new FormControl('', []);
|
|
20
|
+
message = null;
|
|
21
|
+
userEntity;
|
|
22
|
+
constructor(dialogRef, user, appEnvironment, data) {
|
|
23
|
+
this.dialogRef = dialogRef;
|
|
24
|
+
this.user = user;
|
|
25
|
+
this.appEnvironment = appEnvironment;
|
|
26
|
+
this.data = data;
|
|
27
|
+
}
|
|
28
|
+
ngOnInit() {
|
|
29
|
+
//this.userEntity = this.appEnvironment.globalDataContext?.entityAccess().searchUserByRefCacheOnly(this.user.activeUserRef);
|
|
30
|
+
}
|
|
31
|
+
canSubmit = () => {
|
|
32
|
+
return this.currentPasswordControl.value &&
|
|
33
|
+
this.newPasswordControl.value &&
|
|
34
|
+
this.confirmNewPasswordControl.value &&
|
|
35
|
+
(this.newPasswordControl.value === this.confirmNewPasswordControl.value);
|
|
36
|
+
};
|
|
37
|
+
onConfirm() {
|
|
38
|
+
this.dialogRef.close(true);
|
|
39
|
+
}
|
|
40
|
+
onDismiss() {
|
|
41
|
+
this.dialogRef.close(false);
|
|
42
|
+
}
|
|
43
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruPasswordDialog, deps: [{ token: i1.MatDialogRef }, { token: i2.TruUser }, { token: i3.TruAppEnvironment }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: TruPasswordDialog, selector: "tru-password-dialog", ngImport: i0, template: "<div mat-dialog-title class=\"mat-dialog-title\">\r\n Change Password\r\n</div>\r\n\r\n<div mat-dialog-content class=\"mat-dialog-content tru-control-container\">\r\n <p>{{message}}</p>\r\n <mat-label>Current Password</mat-label>\r\n <mat-form-field>\r\n <input #newInput\r\n matInput\r\n [formControl]=\"currentPasswordControl\"\r\n type=\"password\" />\r\n </mat-form-field>\r\n <mat-label>New Password</mat-label>\r\n <mat-form-field>\r\n <input #newInput\r\n matInput\r\n [formControl]=\"newPasswordControl\"\r\n type=\"password\" />\r\n </mat-form-field>\r\n <mat-label>Confirm New Password</mat-label>\r\n <mat-form-field>\r\n <input #confirmInput\r\n matInput\r\n [formControl]=\"confirmNewPasswordControl\"\r\n type=\"password\" />\r\n </mat-form-field>\r\n</div>\r\n\r\n<div mat-dialog-actions class=\"mat-dialog-actions\">\r\n <button mat-raised-button (click)=\"onDismiss()\">Cancel</button>\r\n <button [disabled]=\"canSubmit()\" mat-raised-button color=\"primary\" (click)=\"onConfirm()\">Submit</button>\r\n</div>\r\n", styles: [".tru-control-container{margin-bottom:10px;margin-right:10px}::ng-deep .tru-control-container .mat-mdc-form-field{display:inline!important}::ng-deep .tru-control-container .mat-mdc-form-field-infix{padding:0!important;min-height:unset!important}::ng-deep .tru-control-container mat-label{font-size:14px;font-weight:700}::ng-deep .tru-control-container input{font-size:12px;padding-left:5px}::ng-deep .tru-control-container mat-select{font-size:12px;padding-left:5px}::ng-deep .tru-control-container .mat-mdc-form-field-flex.invalid .mdc-notched-outline__leading{border-color:#bd362f}::ng-deep .tru-control-container .mat-mdc-form-field-flex.invalid .mdc-notched-outline__notch{border-color:#bd362f}::ng-deep .tru-control-container .mat-mdc-form-field-flex.invalid .mdc-notched-outline__trailing{border-color:#bd362f}::ng-deep .tru-control-container .mat-mdc-form-field-bottom-align:before{content:unset!important}::ng-deep .tru-control-container path{color:#a9a9a9}::ng-deep .tru-control-container .mat-mdc-form-field-flex.invalid+div:before{border-color:red}\n", "::ng-deep .mat-mdc-dialog-surface{padding:20px}.mat-mdc-dialog-title:before{content:unset!important;height:unset!important;padding:0 0 10px!important}.mdc-dialog__title{padding:20px 0 10px!important}.mdc-dialog__content{padding:10px 0 15px!important}.mat-mdc-dialog-content p{margin-bottom:0;font-size:14px;color:#545454}.mat-mdc-dialog-actions{padding:0!important}.mat-mdc-dialog-actions button{margin-right:10px}\n"], dependencies: [{ kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }] });
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruPasswordDialog, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{ selector: 'tru-password-dialog', template: "<div mat-dialog-title class=\"mat-dialog-title\">\r\n Change Password\r\n</div>\r\n\r\n<div mat-dialog-content class=\"mat-dialog-content tru-control-container\">\r\n <p>{{message}}</p>\r\n <mat-label>Current Password</mat-label>\r\n <mat-form-field>\r\n <input #newInput\r\n matInput\r\n [formControl]=\"currentPasswordControl\"\r\n type=\"password\" />\r\n </mat-form-field>\r\n <mat-label>New Password</mat-label>\r\n <mat-form-field>\r\n <input #newInput\r\n matInput\r\n [formControl]=\"newPasswordControl\"\r\n type=\"password\" />\r\n </mat-form-field>\r\n <mat-label>Confirm New Password</mat-label>\r\n <mat-form-field>\r\n <input #confirmInput\r\n matInput\r\n [formControl]=\"confirmNewPasswordControl\"\r\n type=\"password\" />\r\n </mat-form-field>\r\n</div>\r\n\r\n<div mat-dialog-actions class=\"mat-dialog-actions\">\r\n <button mat-raised-button (click)=\"onDismiss()\">Cancel</button>\r\n <button [disabled]=\"canSubmit()\" mat-raised-button color=\"primary\" (click)=\"onConfirm()\">Submit</button>\r\n</div>\r\n", styles: [".tru-control-container{margin-bottom:10px;margin-right:10px}::ng-deep .tru-control-container .mat-mdc-form-field{display:inline!important}::ng-deep .tru-control-container .mat-mdc-form-field-infix{padding:0!important;min-height:unset!important}::ng-deep .tru-control-container mat-label{font-size:14px;font-weight:700}::ng-deep .tru-control-container input{font-size:12px;padding-left:5px}::ng-deep .tru-control-container mat-select{font-size:12px;padding-left:5px}::ng-deep .tru-control-container .mat-mdc-form-field-flex.invalid .mdc-notched-outline__leading{border-color:#bd362f}::ng-deep .tru-control-container .mat-mdc-form-field-flex.invalid .mdc-notched-outline__notch{border-color:#bd362f}::ng-deep .tru-control-container .mat-mdc-form-field-flex.invalid .mdc-notched-outline__trailing{border-color:#bd362f}::ng-deep .tru-control-container .mat-mdc-form-field-bottom-align:before{content:unset!important}::ng-deep .tru-control-container path{color:#a9a9a9}::ng-deep .tru-control-container .mat-mdc-form-field-flex.invalid+div:before{border-color:red}\n", "::ng-deep .mat-mdc-dialog-surface{padding:20px}.mat-mdc-dialog-title:before{content:unset!important;height:unset!important;padding:0 0 10px!important}.mdc-dialog__title{padding:20px 0 10px!important}.mdc-dialog__content{padding:10px 0 15px!important}.mat-mdc-dialog-content p{margin-bottom:0;font-size:14px;color:#545454}.mat-mdc-dialog-actions{padding:0!important}.mat-mdc-dialog-actions button{margin-right:10px}\n"] }]
|
|
49
|
+
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: i2.TruUser }, { type: i3.TruAppEnvironment }, { type: TruPasswordDialog, decorators: [{
|
|
50
|
+
type: Inject,
|
|
51
|
+
args: [MAT_DIALOG_DATA]
|
|
52
|
+
}] }] });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXBhc3N3b3JkLWRpYWxvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9wYXNzd29yZC1kaWFsb2cvdHJ1LXBhc3N3b3JkLWRpYWxvZy50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9wYXNzd29yZC1kaWFsb2cvdHJ1LXBhc3N3b3JkLWRpYWxvZy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekUsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUFTN0MsTUFBTSxPQUFPLGlCQUFpQjtJQVNUO0lBQ1Q7SUFDQTtJQUN3QjtJQVhsQyxzQkFBc0IsR0FBZ0IsSUFBSSxXQUFXLENBQTRCLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6RixrQkFBa0IsR0FBZ0IsSUFBSSxXQUFXLENBQTRCLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyRix5QkFBeUIsR0FBZ0IsSUFBSSxXQUFXLENBQTRCLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUU1RixPQUFPLEdBQWtCLElBQUksQ0FBQztJQUV0QixVQUFVLENBQU07SUFFeEIsWUFBbUIsU0FBMEMsRUFDbkQsSUFBYSxFQUNiLGNBQWlDLEVBQ1QsSUFBdUI7UUFIdEMsY0FBUyxHQUFULFNBQVMsQ0FBaUM7UUFDbkQsU0FBSSxHQUFKLElBQUksQ0FBUztRQUNiLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNULFNBQUksR0FBSixJQUFJLENBQW1CO0lBQ3pELENBQUM7SUFFRCxRQUFRO1FBQ04sNEhBQTRIO0lBQzlILENBQUM7SUFFRCxTQUFTLEdBQUcsR0FBRyxFQUFFO1FBQ2YsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSztZQUN0QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSztZQUM3QixJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSztZQUNwQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdFLENBQUMsQ0FBQTtJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7dUdBaENVLGlCQUFpQixzR0FZbEIsZUFBZTsyRkFaZCxpQkFBaUIsMkRDWDlCLHluQ0FpQ0E7OzJGRHRCYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UscUJBQXFCOzswQkFnQjVCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVHJ1QXBwRW52aXJvbm1lbnQgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90cnUtYXBwLWVudmlyb25tZW50JztcclxuaW1wb3J0IHsgVHJ1VXNlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RydS11c2VyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndHJ1LXBhc3N3b3JkLWRpYWxvZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RydS1wYXNzd29yZC1kaWFsb2cuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4uLy4uL2Fzc2V0cy90cnUtc3R5bGUuY3NzJywgJy4vdHJ1LXBhc3N3b3JkLWRpYWxvZy5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1UGFzc3dvcmREaWFsb2cgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGN1cnJlbnRQYXNzd29yZENvbnRyb2w6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sPHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ+KCcnLCBbXSk7XHJcbiAgbmV3UGFzc3dvcmRDb250cm9sOiBGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkPignJywgW10pO1xyXG4gIGNvbmZpcm1OZXdQYXNzd29yZENvbnRyb2w6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sPHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ+KCcnLCBbXSk7XHJcblxyXG4gIG1lc3NhZ2U6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cclxuICBwcml2YXRlIHVzZXJFbnRpdHk6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFRydVBhc3N3b3JkRGlhbG9nPixcclxuICAgIHByaXZhdGUgdXNlcjogVHJ1VXNlcixcclxuICAgIHByaXZhdGUgYXBwRW52aXJvbm1lbnQ6IFRydUFwcEVudmlyb25tZW50LFxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBUcnVQYXNzd29yZERpYWxvZykge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICAvL3RoaXMudXNlckVudGl0eSA9IHRoaXMuYXBwRW52aXJvbm1lbnQuZ2xvYmFsRGF0YUNvbnRleHQ/LmVudGl0eUFjY2VzcygpLnNlYXJjaFVzZXJCeVJlZkNhY2hlT25seSh0aGlzLnVzZXIuYWN0aXZlVXNlclJlZik7XHJcbiAgfVxyXG5cclxuICBjYW5TdWJtaXQgPSAoKSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50UGFzc3dvcmRDb250cm9sLnZhbHVlICYmXHJcbiAgICAgIHRoaXMubmV3UGFzc3dvcmRDb250cm9sLnZhbHVlICYmXHJcbiAgICAgIHRoaXMuY29uZmlybU5ld1Bhc3N3b3JkQ29udHJvbC52YWx1ZSAmJlxyXG4gICAgICAodGhpcy5uZXdQYXNzd29yZENvbnRyb2wudmFsdWUgPT09IHRoaXMuY29uZmlybU5ld1Bhc3N3b3JkQ29udHJvbC52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvbkNvbmZpcm0oKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0cnVlKTtcclxuICB9XHJcblxyXG4gIG9uRGlzbWlzcygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKGZhbHNlKTtcclxuICB9XHJcbn1cclxuXHJcbiIsIjxkaXYgbWF0LWRpYWxvZy10aXRsZSBjbGFzcz1cIm1hdC1kaWFsb2ctdGl0bGVcIj5cclxuICBDaGFuZ2UgUGFzc3dvcmRcclxuPC9kaXY+XHJcblxyXG48ZGl2IG1hdC1kaWFsb2ctY29udGVudCBjbGFzcz1cIm1hdC1kaWFsb2ctY29udGVudCB0cnUtY29udHJvbC1jb250YWluZXJcIj5cclxuICA8cD57e21lc3NhZ2V9fTwvcD5cclxuICA8bWF0LWxhYmVsPkN1cnJlbnQgUGFzc3dvcmQ8L21hdC1sYWJlbD5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8aW5wdXQgI25ld0lucHV0XHJcbiAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY3VycmVudFBhc3N3b3JkQ29udHJvbFwiXHJcbiAgICAgICAgICAgdHlwZT1cInBhc3N3b3JkXCIgLz5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDxtYXQtbGFiZWw+TmV3IFBhc3N3b3JkPC9tYXQtbGFiZWw+XHJcbiAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgPGlucHV0ICNuZXdJbnB1dFxyXG4gICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cIm5ld1Bhc3N3b3JkQ29udHJvbFwiXHJcbiAgICAgICAgICAgdHlwZT1cInBhc3N3b3JkXCIgLz5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDxtYXQtbGFiZWw+Q29uZmlybSBOZXcgUGFzc3dvcmQ8L21hdC1sYWJlbD5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8aW5wdXQgI2NvbmZpcm1JbnB1dFxyXG4gICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImNvbmZpcm1OZXdQYXNzd29yZENvbnRyb2xcIlxyXG4gICAgICAgICAgIHR5cGU9XCJwYXNzd29yZFwiIC8+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuPC9kaXY+XHJcblxyXG48ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucyBjbGFzcz1cIm1hdC1kaWFsb2ctYWN0aW9uc1wiPlxyXG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cIm9uRGlzbWlzcygpXCI+Q2FuY2VsPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiY2FuU3VibWl0KClcIiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwib25Db25maXJtKClcIj5TdWJtaXQ8L2J1dHRvbj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { NgModule } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { FormsModule } from "@angular/forms";
|
|
4
|
-
import { MatButtonModule } from "@angular/material/button";
|
|
5
|
-
import { MatIconModule } from "@angular/material/icon";
|
|
6
|
-
import { TruToolbarButton } from "./tru-toolbar-button";
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class TruToolbarButtonModule {
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
20
|
-
type: NgModule,
|
|
21
|
-
args: [{
|
|
22
|
-
declarations: [TruToolbarButton],
|
|
23
|
-
imports: [
|
|
24
|
-
CommonModule,
|
|
25
|
-
FormsModule,
|
|
26
|
-
MatButtonModule,
|
|
27
|
-
MatIconModule
|
|
28
|
-
],
|
|
29
|
-
exports: [TruToolbarButton]
|
|
30
|
-
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# 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 { MatButtonModule } from "@angular/material/button";
|
|
5
|
+
import { MatIconModule } from "@angular/material/icon";
|
|
6
|
+
import { TruToolbarButton } from "./tru-toolbar-button";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class TruToolbarButtonModule {
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruToolbarButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: TruToolbarButtonModule, declarations: [TruToolbarButton], imports: [CommonModule,
|
|
11
|
+
FormsModule,
|
|
12
|
+
MatButtonModule,
|
|
13
|
+
MatIconModule], exports: [TruToolbarButton] });
|
|
14
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruToolbarButtonModule, imports: [CommonModule,
|
|
15
|
+
FormsModule,
|
|
16
|
+
MatButtonModule,
|
|
17
|
+
MatIconModule] });
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruToolbarButtonModule, decorators: [{
|
|
20
|
+
type: NgModule,
|
|
21
|
+
args: [{
|
|
22
|
+
declarations: [TruToolbarButton],
|
|
23
|
+
imports: [
|
|
24
|
+
CommonModule,
|
|
25
|
+
FormsModule,
|
|
26
|
+
MatButtonModule,
|
|
27
|
+
MatIconModule
|
|
28
|
+
],
|
|
29
|
+
exports: [TruToolbarButton]
|
|
30
|
+
}]
|
|
31
|
+
}] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXRvb2xiYXItYnV0dG9uLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy90b29sYmFyL2J1dHRvbi90cnUtdG9vbGJhci1idXR0b24tbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQVl4RCxNQUFNLE9BQU8sc0JBQXNCO3VHQUF0QixzQkFBc0I7d0dBQXRCLHNCQUFzQixpQkFUbEIsZ0JBQWdCLGFBRTdCLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLGFBQWEsYUFFTCxnQkFBZ0I7d0dBRWYsc0JBQXNCLFlBUC9CLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLGFBQWE7OzJGQUlKLHNCQUFzQjtrQkFWbEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLGFBQWE7cUJBQ2Q7b0JBQ0QsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b25cIjtcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9pY29uXCI7XHJcblxyXG5pbXBvcnQgeyBUcnVUb29sYmFyQnV0dG9uIH0gZnJvbSBcIi4vdHJ1LXRvb2xiYXItYnV0dG9uXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1RydVRvb2xiYXJCdXR0b25dLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1RydVRvb2xiYXJCdXR0b25dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVUb29sYmFyQnV0dG9uTW9kdWxlIHsgfVxyXG4iXX0=
|