@coolon/angular-ui-powerups 12.4.8 → 13.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/activities/activities.scss +1 -1
- package/assets/cards.scss +1 -1
- package/assets/form.scss +1 -1
- package/assets/interaction/editor/inline-string-editor.scss +1 -1
- package/assets/interaction.scss +1 -1
- package/assets/mixins.scss +2 -2
- package/assets/pills.scss +1 -1
- package/assets/styles.scss +1 -1
- package/{esm2015/lib/angular-ui-powerups.module.js → esm2020/lib/angular-ui-powerups.module.mjs} +5 -5
- package/esm2020/lib/components/busy-overlay/busy-overlay.component.mjs +32 -0
- package/{esm2015/lib/components/cards/abstract-card-container.component.js → esm2020/lib/components/cards/abstract-card-container.component.mjs} +4 -4
- package/esm2020/lib/components/cards/card-container/card-container.component.mjs +129 -0
- package/esm2020/lib/components/cards/card-stack/card-stack.component.mjs +81 -0
- package/esm2020/lib/components/commands/command/command.component.mjs +96 -0
- package/{esm2015/lib/components/commands/command-face/command-face.component.js → esm2020/lib/components/commands/command-face/command-face.component.mjs} +5 -10
- package/esm2020/lib/components/commands/command-face.mjs +112 -0
- package/{esm2015/lib/components/commands/flex.component.js → esm2020/lib/components/commands/flex.component.mjs} +4 -4
- package/esm2020/lib/components/commands/group/popup-menu/abstract-popup-menu.component.mjs +84 -0
- package/esm2020/lib/components/commands/group/popup-menu/more-menu.component.mjs +57 -0
- package/esm2020/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.mjs +101 -0
- package/esm2020/lib/components/commands/group/popup-menu/popup-menu.component.mjs +53 -0
- package/esm2020/lib/components/commands/group/tool-bar/tool-bar.component.mjs +31 -0
- package/{esm2015/lib/components/commands/separator.component.js → esm2020/lib/components/commands/separator.component.mjs} +5 -5
- package/{esm2015/lib/components/components.module.js → esm2020/lib/components/components.module.mjs} +6 -6
- package/{esm2015/lib/components/disposable-component.js → esm2020/lib/components/disposable-component.mjs} +4 -4
- package/{esm2015/lib/components/empty-state/empty-state.component.js → esm2020/lib/components/empty-state/empty-state.component.mjs} +6 -10
- package/{esm2015/lib/components/focus-container/focus-container.component.js → esm2020/lib/components/focus-container/focus-container.component.mjs} +6 -11
- package/{esm2015/lib/components/focusable.component.js → esm2020/lib/components/focusable.component.mjs} +6 -8
- package/{esm2015/lib/components/forms/abstract-input.component.js → esm2020/lib/components/forms/abstract-input.component.mjs} +4 -4
- package/{esm2015/lib/components/forms/abstract-list-input.component.js → esm2020/lib/components/forms/abstract-list-input.component.mjs} +4 -4
- package/{esm2015/lib/components/forms/abstract-value-input.component.js → esm2020/lib/components/forms/abstract-value-input.component.mjs} +4 -4
- package/esm2020/lib/components/forms/autocomplete-input/autocomplete-input.component.mjs +72 -0
- package/esm2020/lib/components/forms/checkbox-input/checkbox-input.component.mjs +29 -0
- package/esm2020/lib/components/forms/multiple-select-input/multiple-select-input.component.mjs +52 -0
- package/esm2020/lib/components/forms/number-input/number-input.component.mjs +33 -0
- package/esm2020/lib/components/forms/password-input/password-input.component.mjs +24 -0
- package/esm2020/lib/components/forms/select-input/select-input.component.mjs +57 -0
- package/esm2020/lib/components/forms/string-input/string-input.component.mjs +48 -0
- package/esm2020/lib/components/forms/text-input/text-input.component.mjs +30 -0
- package/esm2020/lib/components/icon/icon.component.mjs +52 -0
- package/esm2020/lib/components/labelled-value/labelled-value.component.mjs +20 -0
- package/esm2020/lib/components/loading-container/loading-container.component.mjs +50 -0
- package/esm2020/lib/components/noop/noop.component.mjs +13 -0
- package/{esm2015/lib/components/resize-aware.component.js → esm2020/lib/components/resize-aware.component.mjs} +4 -4
- package/esm2020/lib/components/scroll-container/scroll-container.component.mjs +15 -0
- package/esm2020/lib/components/section-header/section-header.component.mjs +36 -0
- package/{esm2015/lib/components/switch-case/switch-case.component.js → esm2020/lib/components/switch-case/switch-case.component.mjs} +11 -15
- package/esm2020/lib/components/tables/abstract-table-model.mjs +185 -0
- package/esm2020/lib/components/tables/abstract-table.component.mjs +168 -0
- package/{esm2015/lib/components/tables/column-list-model.js → esm2020/lib/components/tables/column-list-model.mjs} +2 -2
- package/{esm2015/lib/components/tables/table/cell-portal-ref.js → esm2020/lib/components/tables/table/cell-portal-ref.mjs} +2 -2
- package/esm2020/lib/components/tables/table/column-model.mjs +392 -0
- package/esm2020/lib/components/tables/table/column-template/column-template.directive.mjs +35 -0
- package/esm2020/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.mjs +22 -0
- package/esm2020/lib/components/tables/table/default-header-cell-renderer/default-header-cell-renderer.component.mjs +15 -0
- package/esm2020/lib/components/tables/table/edit-row-controls/edit-row-controls.component.mjs +55 -0
- package/esm2020/lib/components/tables/table/paginator/paginator.component.mjs +40 -0
- package/esm2020/lib/components/tables/table/select-cell-renderer/select-cell-renderer.component.mjs +26 -0
- package/esm2020/lib/components/tables/table/select-header-cell-renderer/select-header-cell-renderer.component.mjs +31 -0
- package/esm2020/lib/components/tables/table/table-cell-renderer/table-cell-renderer.component.mjs +93 -0
- package/esm2020/lib/components/tables/table/table-header-cell-renderer/table-header-cell-renderer.component.mjs +32 -0
- package/{esm2015/lib/components/tables/table/table-row-menu/table-row-menu.component.js → esm2020/lib/components/tables/table/table-row-menu/table-row-menu.component.mjs} +5 -5
- package/esm2020/lib/components/tables/table/table.component.mjs +95 -0
- package/esm2020/lib/components/tables/tree-table/decorated-tree-node.mjs +171 -0
- package/esm2020/lib/components/tables/tree-table/tree-inheritance-icon/tree-inheritance-icon.component.mjs +72 -0
- package/esm2020/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.mjs +91 -0
- package/{esm2015/lib/components/tables/tree-table/tree-label-column-model.js → esm2020/lib/components/tables/tree-table/tree-label-column-model.mjs} +2 -2
- package/esm2020/lib/components/tables/tree-table/tree-table-component.mjs +95 -0
- package/esm2020/lib/components/tables/tree-table/tree-table-model.mjs +94 -0
- package/{esm2015/lib/components/text/markdown/markdown.component.js → esm2020/lib/components/text/markdown/markdown.component.mjs} +6 -10
- package/{esm2015/lib/components/vertical-focus-container/vertical-focus-container.component.js → esm2020/lib/components/vertical-focus-container/vertical-focus-container.component.mjs} +6 -11
- package/{esm2015/lib/directives/command.directive.js → esm2020/lib/directives/command.directive.mjs} +4 -4
- package/{esm2015/lib/directives/directives.module.js → esm2020/lib/directives/directives.module.mjs} +5 -5
- package/{esm2015/lib/directives/focus-binding-factory.js → esm2020/lib/directives/focus-binding-factory.mjs} +4 -4
- package/{esm2015/lib/directives/focus-binding.directive.js → esm2020/lib/directives/focus-binding.directive.mjs} +4 -4
- package/{esm2015/lib/directives/highlight-text-model.directive.js → esm2020/lib/directives/highlight-text-model.directive.mjs} +4 -4
- package/{esm2015/lib/directives/highlight.pipe.js → esm2020/lib/directives/highlight.pipe.mjs} +7 -8
- package/esm2020/lib/interaction/activity.mjs +87 -0
- package/{esm2015/lib/interaction/alert.js → esm2020/lib/interaction/alert.mjs} +2 -2
- package/{esm2015/lib/interaction/components/abstract-confirm-dialog.component.js → esm2020/lib/interaction/components/abstract-confirm-dialog.component.mjs} +4 -4
- package/{esm2015/lib/interaction/components/abstract-dialog.component.js → esm2020/lib/interaction/components/abstract-dialog.component.mjs} +4 -4
- package/esm2020/lib/interaction/components/activity-actions/activity-actions.component.mjs +109 -0
- package/esm2020/lib/interaction/components/activity-body/activity-body.component.mjs +23 -0
- package/esm2020/lib/interaction/components/activity-container/activity-container.component.mjs +205 -0
- package/{esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js → esm2020/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.mjs} +5 -9
- package/esm2020/lib/interaction/components/activity-title/activity-title.component.mjs +41 -0
- package/{esm2015/lib/interaction/components/activity-triggers/abstract-activity-trigger.component.js → esm2020/lib/interaction/components/activity-triggers/abstract-activity-trigger.component.mjs} +5 -6
- package/esm2020/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.mjs +24 -0
- package/esm2020/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.mjs +22 -0
- package/esm2020/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.mjs +30 -0
- package/esm2020/lib/interaction/components/add-card-activity/add-card-activity.component.mjs +91 -0
- package/esm2020/lib/interaction/components/add-item-interaction-context/add-item-interaction-context.component.mjs +73 -0
- package/esm2020/lib/interaction/components/alert-dialog/alert-dialog.component.mjs +30 -0
- package/esm2020/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.mjs +30 -0
- package/esm2020/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.mjs +34 -0
- package/esm2020/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.mjs +29 -0
- package/esm2020/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.mjs +173 -0
- package/esm2020/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.mjs +91 -0
- package/esm2020/lib/interaction/components/input-activities/input-activity.mjs +103 -0
- package/{esm2015/lib/interaction/components/input-activities/select-input-activity.js → esm2020/lib/interaction/components/input-activities/select-input-activity.mjs} +6 -8
- package/{esm2015/lib/interaction/components/input-activities/string-input-activity.js → esm2020/lib/interaction/components/input-activities/string-input-activity.mjs} +4 -4
- package/{esm2015/lib/interaction/components/popup-interaction-context/popup-interaction-context.component.js → esm2020/lib/interaction/components/popup-interaction-context/popup-interaction-context.component.mjs} +5 -9
- package/{esm2015/lib/interaction/directives/interaction-context-trigger-for.directive.js → esm2020/lib/interaction/directives/interaction-context-trigger-for.directive.mjs} +5 -5
- package/{esm2015/lib/interaction/interaction.module.js → esm2020/lib/interaction/interaction.module.mjs} +5 -11
- package/{esm2015/lib/interaction/services/interaction.service.js → esm2020/lib/interaction/services/interaction.service.mjs} +4 -4
- package/esm2020/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.mjs +47 -0
- package/esm2020/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.mjs +61 -0
- package/{esm2015/lib/place/components/abstract-place-navigation.component.js → esm2020/lib/place/components/abstract-place-navigation.component.mjs} +4 -4
- package/esm2020/lib/place/components/list-place-nav/list-place-nav.component.mjs +23 -0
- package/esm2020/lib/place/components/not-authorised-notice/not-authorised-notice.component.mjs +13 -0
- package/esm2020/lib/place/components/place-outlet/place-outlet.component.mjs +256 -0
- package/esm2020/lib/place/components/side-place-navigation/side-place-navigation.component.mjs +93 -0
- package/esm2020/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.mjs +22 -0
- package/{esm2015/lib/place/guards/consolidated-param-map.js → esm2020/lib/place/guards/consolidated-param-map.mjs} +2 -2
- package/esm2020/lib/place/guards/noop-auth-guard.service.mjs +18 -0
- package/esm2020/lib/place/guards/place.guard.mjs +109 -0
- package/esm2020/lib/place/navigation/place-component-deactivation-handler.mjs +83 -0
- package/esm2020/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.mjs +43 -0
- package/esm2020/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-navigation-interaction-cancelation-type-determined.mjs +152 -0
- package/esm2020/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.mjs +62 -0
- package/{esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js → esm2020/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.mjs} +2 -2
- package/esm2020/lib/place/navigation/session/navigation-session.mjs +157 -0
- package/esm2020/lib/place/place-component.mjs +198 -0
- package/{esm2015/lib/place/place-definition.js → esm2020/lib/place/place-definition.mjs} +2 -2
- package/esm2020/lib/place/place-history.mjs +138 -0
- package/esm2020/lib/place/place-router.mjs +331 -0
- package/esm2020/lib/place/place.decorator.mjs +18 -0
- package/{esm2015/lib/place/place.module.js → esm2020/lib/place/place.module.mjs} +5 -6
- package/{esm2015/lib/place/route/formatter.js → esm2020/lib/place/route/formatter.mjs} +2 -2
- package/esm2020/lib/place/route/parameter-definition.mjs +123 -0
- package/esm2020/lib/place/route/visit-sanitiser.mjs +41 -0
- package/{esm2015/lib/place/url-service.js → esm2020/lib/place/url-service.mjs} +4 -4
- package/{esm2015/lib/place/url-snapshot.js → esm2020/lib/place/url-snapshot.mjs} +2 -2
- package/esm2020/lib/place/visit.mjs +69 -0
- package/{esm2015/lib/services/markdown/markdown.service.js → esm2020/lib/services/markdown/markdown.service.mjs} +5 -5
- package/esm2020/lib/services/markdown/pill-plugin.mjs +37 -0
- package/{esm2015/lib/services/visibility-service.js → esm2020/lib/services/visibility-service.mjs} +4 -4
- package/fesm2015/{coolon-angular-ui-powerups.js → coolon-angular-ui-powerups.mjs} +1202 -1417
- package/fesm2015/coolon-angular-ui-powerups.mjs.map +1 -0
- package/fesm2020/coolon-angular-ui-powerups.mjs +9891 -0
- package/fesm2020/coolon-angular-ui-powerups.mjs.map +1 -0
- package/package.json +39 -26
- package/schematics/activity/index.js +3 -3
- package/schematics/activity/index.js.map +1 -1
- package/schematics/aup-i18n/index.js +7 -7
- package/schematics/aup-i18n/index.js.map +1 -1
- package/schematics/bootstrap-app/index.js +9 -9
- package/schematics/bootstrap-app/index.js.map +1 -1
- package/schematics/bootstrap-app/templates/src/styles.scss.template +2 -2
- package/schematics/component/index.js +3 -3
- package/schematics/component/index.js.map +1 -1
- package/schematics/ng-add/index.js +2 -2
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/place-add/index.js +3 -3
- package/schematics/place-add/index.js.map +1 -1
- package/schematics/place-bootstrap/index.js +1 -1
- package/schematics/place-bootstrap/index.js.map +1 -1
- package/schematics/place-routes/place-builder.js +6 -6
- package/schematics/place-routes/place-builder.js.map +1 -1
- package/schematics/place-routes/place-class-scanner.js +4 -4
- package/schematics/place-routes/place-class-scanner.js.map +1 -1
- package/schematics/place-routes/place-def.js +4 -4
- package/schematics/place-routes/place-def.js.map +1 -1
- package/schematics/utils/decorators/decorated-class.js +1 -1
- package/schematics/utils/decorators/decorated-class.js.map +1 -1
- package/schematics/utils/import-def.js +3 -3
- package/schematics/utils/import-def.js.map +1 -1
- package/schematics/utils/method-scanner.js +5 -5
- package/schematics/utils/method-scanner.js.map +1 -1
- package/schematics/utils/path-helper.js +3 -3
- package/schematics/utils/path-helper.js.map +1 -1
- package/schematics/utils/source-file-scanner.js +6 -6
- package/schematics/utils/source-file-scanner.js.map +1 -1
- package/schematics/utils/source-file-utilities.js +2 -2
- package/schematics/utils/source-file-utilities.js.map +1 -1
- package/schematics/utils/template-utilities.js +4 -4
- package/schematics/utils/template-utilities.js.map +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.js +0 -11847
- package/bundles/coolon-angular-ui-powerups.umd.js.map +0 -1
- package/esm2015/lib/components/busy-overlay/busy-overlay.component.js +0 -36
- package/esm2015/lib/components/cards/card-container/card-container.component.js +0 -133
- package/esm2015/lib/components/cards/card-stack/card-stack.component.js +0 -85
- package/esm2015/lib/components/commands/command/command.component.js +0 -100
- package/esm2015/lib/components/commands/command-face.js +0 -112
- package/esm2015/lib/components/commands/group/popup-menu/abstract-popup-menu.component.js +0 -89
- package/esm2015/lib/components/commands/group/popup-menu/more-menu.component.js +0 -61
- package/esm2015/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.js +0 -104
- package/esm2015/lib/components/commands/group/popup-menu/popup-menu.component.js +0 -58
- package/esm2015/lib/components/commands/group/tool-bar/tool-bar.component.js +0 -36
- package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.js +0 -76
- package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.js +0 -33
- package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.js +0 -56
- package/esm2015/lib/components/forms/number-input/number-input.component.js +0 -37
- package/esm2015/lib/components/forms/password-input/password-input.component.js +0 -28
- package/esm2015/lib/components/forms/select-input/select-input.component.js +0 -61
- package/esm2015/lib/components/forms/string-input/string-input.component.js +0 -52
- package/esm2015/lib/components/forms/text-input/text-input.component.js +0 -34
- package/esm2015/lib/components/icon/icon.component.js +0 -56
- package/esm2015/lib/components/labelled-value/labelled-value.component.js +0 -24
- package/esm2015/lib/components/loading-container/loading-container.component.js +0 -54
- package/esm2015/lib/components/noop/noop.component.js +0 -17
- package/esm2015/lib/components/scroll-container/scroll-container.component.js +0 -19
- package/esm2015/lib/components/section-header/section-header.component.js +0 -40
- package/esm2015/lib/components/tables/abstract-table-model.js +0 -188
- package/esm2015/lib/components/tables/abstract-table.component.js +0 -170
- package/esm2015/lib/components/tables/table/column-model.js +0 -389
- package/esm2015/lib/components/tables/table/column-template/column-template.directive.js +0 -36
- package/esm2015/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.js +0 -26
- package/esm2015/lib/components/tables/table/default-header-cell-renderer/default-header-cell-renderer.component.js +0 -19
- package/esm2015/lib/components/tables/table/edit-row-controls/edit-row-controls.component.js +0 -60
- package/esm2015/lib/components/tables/table/paginator/paginator.component.js +0 -44
- package/esm2015/lib/components/tables/table/select-cell-renderer/select-cell-renderer.component.js +0 -32
- package/esm2015/lib/components/tables/table/select-header-cell-renderer/select-header-cell-renderer.component.js +0 -37
- package/esm2015/lib/components/tables/table/table-cell-renderer/table-cell-renderer.component.js +0 -98
- package/esm2015/lib/components/tables/table/table-header-cell-renderer/table-header-cell-renderer.component.js +0 -36
- package/esm2015/lib/components/tables/table/table.component.js +0 -100
- package/esm2015/lib/components/tables/tree-table/decorated-tree-node.js +0 -171
- package/esm2015/lib/components/tables/tree-table/tree-inheritance-icon/tree-inheritance-icon.component.js +0 -76
- package/esm2015/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.js +0 -96
- package/esm2015/lib/components/tables/tree-table/tree-table-component.js +0 -100
- package/esm2015/lib/components/tables/tree-table/tree-table-model.js +0 -94
- package/esm2015/lib/interaction/activity.js +0 -88
- package/esm2015/lib/interaction/components/activity-actions/activity-actions.component.js +0 -113
- package/esm2015/lib/interaction/components/activity-body/activity-body.component.js +0 -27
- package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +0 -214
- package/esm2015/lib/interaction/components/activity-title/activity-title.component.js +0 -45
- package/esm2015/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.js +0 -28
- package/esm2015/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.js +0 -26
- package/esm2015/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.js +0 -34
- package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.js +0 -95
- package/esm2015/lib/interaction/components/add-item-interaction-context/add-item-interaction-context.component.js +0 -77
- package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js +0 -34
- package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +0 -34
- package/esm2015/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.js +0 -39
- package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +0 -33
- package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.js +0 -176
- package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js +0 -96
- package/esm2015/lib/interaction/components/input-activities/input-activity.js +0 -107
- package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js +0 -41
- package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js +0 -58
- package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js +0 -27
- package/esm2015/lib/place/components/not-authorised-notice/not-authorised-notice.component.js +0 -17
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +0 -263
- package/esm2015/lib/place/components/side-place-navigation/side-place-navigation.component.js +0 -97
- package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +0 -26
- package/esm2015/lib/place/guards/noop-auth-guard.service.js +0 -21
- package/esm2015/lib/place/guards/place.guard.js +0 -116
- package/esm2015/lib/place/navigation/place-component-deactivation-handler.js +0 -88
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js +0 -46
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-navigation-interaction-cancelation-type-determined.js +0 -159
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js +0 -65
- package/esm2015/lib/place/navigation/session/navigation-session.js +0 -160
- package/esm2015/lib/place/place-component.js +0 -204
- package/esm2015/lib/place/place-history.js +0 -139
- package/esm2015/lib/place/place-router.js +0 -336
- package/esm2015/lib/place/place.decorator.js +0 -19
- package/esm2015/lib/place/route/parameter-definition.js +0 -128
- package/esm2015/lib/place/route/visit-sanitiser.js +0 -44
- package/esm2015/lib/place/visit.js +0 -69
- package/esm2015/lib/services/markdown/pill-plugin.js +0 -38
- package/fesm2015/coolon-angular-ui-powerups.js.map +0 -1
- /package/{esm2015/coolon-angular-ui-powerups.js → esm2020/coolon-angular-ui-powerups.mjs} +0 -0
- /package/{esm2015/index.js → esm2020/index.mjs} +0 -0
- /package/{esm2015/lib/animations/exports.js → esm2020/lib/animations/exports.mjs} +0 -0
- /package/{esm2015/lib/animations/slide-animations.js → esm2020/lib/animations/slide-animations.mjs} +0 -0
- /package/{esm2015/lib/components/alignment.js → esm2020/lib/components/alignment.mjs} +0 -0
- /package/{esm2015/lib/components/commands/group/command-container.js → esm2020/lib/components/commands/group/command-container.mjs} +0 -0
- /package/{esm2015/lib/components/commands/group/popup-aware.component.js → esm2020/lib/components/commands/group/popup-aware.component.mjs} +0 -0
- /package/{esm2015/lib/components/commands/group/popup-container.js → esm2020/lib/components/commands/group/popup-container.mjs} +0 -0
- /package/{esm2015/lib/components/exports.js → esm2020/lib/components/exports.mjs} +0 -0
- /package/{esm2015/lib/components/tables/edit-session.js → esm2020/lib/components/tables/edit-session.mjs} +0 -0
- /package/{esm2015/lib/components/tables/table/cell-editors.js → esm2020/lib/components/tables/table/cell-editors.mjs} +0 -0
- /package/{esm2015/lib/components/tables/table/cell-renderer.js → esm2020/lib/components/tables/table/cell-renderer.mjs} +0 -0
- /package/{esm2015/lib/components/tables/table/column-text-properties.js → esm2020/lib/components/tables/table/column-text-properties.mjs} +0 -0
- /package/{esm2015/lib/components/tables/table/mutable-cell-renderer.js → esm2020/lib/components/tables/table/mutable-cell-renderer.mjs} +0 -0
- /package/{esm2015/lib/components/tables/table/table-def.js → esm2020/lib/components/tables/table/table-def.mjs} +0 -0
- /package/{esm2015/lib/components/tables/table/table-model.js → esm2020/lib/components/tables/table/table-model.mjs} +0 -0
- /package/{esm2015/lib/components/tables/table/text-search-predicate.js → esm2020/lib/components/tables/table/text-search-predicate.mjs} +0 -0
- /package/{esm2015/lib/components/tables/tree-table/flattened-tree-list-model.js → esm2020/lib/components/tables/tree-table/flattened-tree-list-model.mjs} +0 -0
- /package/{esm2015/lib/components/tables/tree-table/tree-expansion-model.js → esm2020/lib/components/tables/tree-table/tree-expansion-model.mjs} +0 -0
- /package/{esm2015/lib/components/track-by.js → esm2020/lib/components/track-by.mjs} +0 -0
- /package/{esm2015/lib/components/types/bounds.class.js → esm2020/lib/components/types/bounds.class.mjs} +0 -0
- /package/{esm2015/lib/components/types/dimension.class.js → esm2020/lib/components/types/dimension.class.mjs} +0 -0
- /package/{esm2015/lib/components/types/point.class.js → esm2020/lib/components/types/point.class.mjs} +0 -0
- /package/{esm2015/lib/directives/exports.js → esm2020/lib/directives/exports.mjs} +0 -0
- /package/{esm2015/lib/directives/focus-binding.js → esm2020/lib/directives/focus-binding.mjs} +0 -0
- /package/{esm2015/lib/interaction/abstract-interaction-context.js → esm2020/lib/interaction/abstract-interaction-context.mjs} +0 -0
- /package/{esm2015/lib/interaction/activity-ref.js → esm2020/lib/interaction/activity-ref.mjs} +0 -0
- /package/{esm2015/lib/interaction/components/editors/edit-context.js → esm2020/lib/interaction/components/editors/edit-context.mjs} +0 -0
- /package/{esm2015/lib/interaction/components/editors/inline-string-editor/inline-editor-model.js → esm2020/lib/interaction/components/editors/inline-string-editor/inline-editor-model.mjs} +0 -0
- /package/{esm2015/lib/interaction/confirm.js → esm2020/lib/interaction/confirm.mjs} +0 -0
- /package/{esm2015/lib/interaction/exports.js → esm2020/lib/interaction/exports.mjs} +0 -0
- /package/{esm2015/lib/interaction/in-place-interaction-context.js → esm2020/lib/interaction/in-place-interaction-context.mjs} +0 -0
- /package/{esm2015/lib/interaction/interaction-context.js → esm2020/lib/interaction/interaction-context.mjs} +0 -0
- /package/{esm2015/lib/interaction/route-synchronisation-adapter.js → esm2020/lib/interaction/route-synchronisation-adapter.mjs} +0 -0
- /package/{esm2015/lib/interaction/services/interaction-service-routing-adapter.js → esm2020/lib/interaction/services/interaction-service-routing-adapter.mjs} +0 -0
- /package/{esm2015/lib/interaction/services/modal-interaction-context.factory.js → esm2020/lib/interaction/services/modal-interaction-context.factory.mjs} +0 -0
- /package/{esm2015/lib/place/components/place-outlet/route-animations.js → esm2020/lib/place/components/place-outlet/route-animations.mjs} +0 -0
- /package/{esm2015/lib/place/exports.js → esm2020/lib/place/exports.mjs} +0 -0
- /package/{esm2015/lib/place/nav-item.js → esm2020/lib/place/nav-item.mjs} +0 -0
- /package/{esm2015/lib/place/navigation/session/abstract-pop-state-navigation.js → esm2020/lib/place/navigation/session/abstract-pop-state-navigation.mjs} +0 -0
- /package/{esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.js → esm2020/lib/place/navigation/session/event-cleanup/event-clean-up-session.mjs} +0 -0
- /package/{esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.js → esm2020/lib/place/navigation/session/interactions/navigating-during-interaction.mjs} +0 -0
- /package/{esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js → esm2020/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.mjs} +0 -0
- /package/{esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js → esm2020/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.mjs} +0 -0
- /package/{esm2015/lib/place/navigation/session/navigating.js → esm2020/lib/place/navigation/session/navigating.mjs} +0 -0
- /package/{esm2015/lib/place/navigation/session/navigation-context.js → esm2020/lib/place/navigation/session/navigation-context.mjs} +0 -0
- /package/{esm2015/lib/place/navigation/session/pop-state-navigation.js → esm2020/lib/place/navigation/session/pop-state-navigation.mjs} +0 -0
- /package/{esm2015/lib/place/place-access-guard.js → esm2020/lib/place/place-access-guard.mjs} +0 -0
- /package/{esm2015/lib/place/place-config.js → esm2020/lib/place/place-config.mjs} +0 -0
- /package/{esm2015/lib/place/route/json-types.js → esm2020/lib/place/route/json-types.mjs} +0 -0
- /package/{esm2015/lib/place/route/parameter-decorators.js → esm2020/lib/place/route/parameter-decorators.mjs} +0 -0
- /package/{esm2015/lib/place/route/parameter-sanitiser.js → esm2020/lib/place/route/parameter-sanitiser.mjs} +0 -0
- /package/{esm2015/lib/place/route/parameter-snapshot.js → esm2020/lib/place/route/parameter-snapshot.mjs} +0 -0
- /package/{esm2015/lib/services/exports.js → esm2020/lib/services/exports.mjs} +0 -0
- /package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
|
@@ -50,20 +50,15 @@ export class CommandFaceComponent extends DisposableComponent {
|
|
|
50
50
|
return this.activeColor.value;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
CommandFaceComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
54
|
-
CommandFaceComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
53
|
+
CommandFaceComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: CommandFaceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
+
CommandFaceComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: CommandFaceComponent, selector: "aup-command-face", inputs: { _rawFaces: ["faces", "_rawFaces"], face: "face", ignoreIcon: "ignoreIcon", ignoreText: "ignoreText", includeMissingIconInLayout: "includeMissingIconInLayout" }, host: { properties: { "class.hide-icon": "this.requiresMissingIconInLayout", "attr.color": "this.color" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"face-container\" *ngFor=\"let face of faceAdapters.value\">\n <aup-icon *ngIf=\"hasIconStart(face)\" [icon]=\"face.icon\"></aup-icon>\n <span *ngIf=\"face.text\">{{face.text}}</span>\n <aup-icon *ngIf=\"hasIconEnd(face)\" [icon]=\"face.icon\"></aup-icon>\n</div>\n", styles: ["aup-command-face{--icon-gap: var(--aup-command-face-icon-gap);display:inline-grid}aup-command-face>.face-container{grid-column:1;grid-row:1;display:inline-flex;flex-direction:row;align-items:center}aup-command-face>.face-container:not(:first-child){visibility:hidden}aup-command-face>.face-container *+*{margin-left:var(--icon-gap)}aup-command-face.hide-icon aup-icon{visibility:hidden}aup-command-face.centered{justify-items:center}aup-command-face.start{justify-items:self-start}aup-command-face.end{justify-items:self-end}\n"], components: [{ type: i1.IconComponent, selector: "aup-icon", inputs: ["icon"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
55
55
|
__decorate([
|
|
56
56
|
StoreInListModel('facesModel'),
|
|
57
57
|
__metadata("design:type", Array)
|
|
58
58
|
], CommandFaceComponent.prototype, "_rawFaces", void 0);
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: CommandFaceComponent, decorators: [{
|
|
60
60
|
type: Component,
|
|
61
|
-
args: [{
|
|
62
|
-
selector: 'aup-command-face',
|
|
63
|
-
templateUrl: './command-face.component.html',
|
|
64
|
-
styleUrls: ['./command-face.component.scss'],
|
|
65
|
-
encapsulation: ViewEncapsulation.None
|
|
66
|
-
}]
|
|
61
|
+
args: [{ selector: 'aup-command-face', encapsulation: ViewEncapsulation.None, template: "<div class=\"face-container\" *ngFor=\"let face of faceAdapters.value\">\n <aup-icon *ngIf=\"hasIconStart(face)\" [icon]=\"face.icon\"></aup-icon>\n <span *ngIf=\"face.text\">{{face.text}}</span>\n <aup-icon *ngIf=\"hasIconEnd(face)\" [icon]=\"face.icon\"></aup-icon>\n</div>\n", styles: ["aup-command-face{--icon-gap: var(--aup-command-face-icon-gap);display:inline-grid}aup-command-face>.face-container{grid-column:1;grid-row:1;display:inline-flex;flex-direction:row;align-items:center}aup-command-face>.face-container:not(:first-child){visibility:hidden}aup-command-face>.face-container *+*{margin-left:var(--icon-gap)}aup-command-face.hide-icon aup-icon{visibility:hidden}aup-command-face.centered{justify-items:center}aup-command-face.start{justify-items:self-start}aup-command-face.end{justify-items:self-end}\n"] }]
|
|
67
62
|
}], ctorParameters: function () { return []; }, propDecorators: { _rawFaces: [{
|
|
68
63
|
type: Input,
|
|
69
64
|
args: ['faces']
|
|
@@ -82,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
|
|
|
82
77
|
type: HostBinding,
|
|
83
78
|
args: ['attr.color']
|
|
84
79
|
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1mYWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2NvbXBvbmVudHMvY29tbWFuZHMvY29tbWFuZC1mYWNlL2NvbW1hbmQtZmFjZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL2NvbW1hbmRzL2NvbW1hbmQtZmFjZS9jb21tYW5kLWZhY2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd6RixPQUFPLEVBQ0wsR0FBRyxFQUVILGdCQUFnQixFQUNoQixnQkFBZ0IsRUFHakIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFFOUM7Ozs7Ozs7OztHQVNHO0FBT0gsTUFBTSxPQUFPLG9CQUF3QixTQUFRLG1CQUFtQjtJQStCOUQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQTlCTyxlQUFVLEdBQUcsSUFBSSxnQkFBZ0IsRUFBZSxDQUFDO1FBWWxFLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFHbkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUduQiwrQkFBMEIsR0FBRyxLQUFLLENBQUM7UUFhakMsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzFDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBOUJELElBQ0ksSUFBSSxDQUFDLElBQWlCO1FBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQWVELElBQ0ksMkJBQTJCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLDBCQUEwQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDbkUsQ0FBQztJQVdELFFBQVE7SUFDUixDQUFDO0lBRUQsaUJBQWlCLENBQUMsSUFBeUI7UUFDekMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLDBCQUEwQixDQUFDO0lBQzVFLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBd0I7UUFDbkMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xILENBQUM7SUFFRCxVQUFVLENBQUMsSUFBd0I7UUFDakMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztJQUN4RixDQUFDO0lBRUQsSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDOztpSEExRFUsb0JBQW9CO3FHQUFwQixvQkFBb0IsdVdDOUJqQywwUkFLQTtBRCtCRTtJQURpQixnQkFBZ0IsQ0FBQyxZQUFZLENBQUM7O3VEQUN0QjsyRkFOZCxvQkFBb0I7a0JBTmhDLFNBQVM7K0JBQ0Usa0JBQWtCLGlCQUdiLGlCQUFpQixDQUFDLElBQUk7MEVBUXJDLFNBQVM7c0JBRFIsS0FBSzt1QkFBQyxPQUFPO2dCQUlWLElBQUk7c0JBRFAsS0FBSztnQkFNTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLDBCQUEwQjtzQkFEekIsS0FBSztnQkFRRiwyQkFBMkI7c0JBRDlCLFdBQVc7dUJBQUMsaUJBQWlCO2dCQThCMUIsS0FBSztzQkFEUixXQUFXO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGhlbWVQYWxldHRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5cbmltcG9ydCB7XG4gIERzbCxcbiAgTGlzdE1vZGVsQ2hhaW4sXG4gIE11dGFibGVMaXN0TW9kZWwsXG4gIFN0b3JlSW5MaXN0TW9kZWwsXG4gIFN0b3JlSW5WYWx1ZU1vZGVsLFxuICBWYWx1ZU1vZGVsQ2hhaW5cbn0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Rpc3Bvc2FibGUtY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1hbmRGYWNlIH0gZnJvbSAnLi4vY29tbWFuZC1mYWNlJztcblxuLyoqXG4gKiBDdXN0b20gQ1NTOlxuICogQGV4YW1wbGVcbiAqIHJvb3Q6IHsgLy8gZ2xvYmFsbHlcbiAqICAgLS1hdXAtY29tbWFuZC1mYWNlLWljb24tZ2FwOiA4cHg7XG4gKiB9XG4gKiBhdXAtY29tbWFuZC1mYWNlIHsgLy8gcGVyIGluc3RhbmNlXG4gKiAgIC0taWNvbi1nYXA6IDRweDtcbiAqIH1cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLWNvbW1hbmQtZmFjZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb21tYW5kLWZhY2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb21tYW5kLWZhY2UuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBDb21tYW5kRmFjZUNvbXBvbmVudDxUPiBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZmFjZXNNb2RlbCA9IG5ldyBNdXRhYmxlTGlzdE1vZGVsPENvbW1hbmRGYWNlPigpO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdmYWNlcycpIEBTdG9yZUluTGlzdE1vZGVsKCdmYWNlc01vZGVsJylcbiAgX3Jhd0ZhY2VzOiBDb21tYW5kRmFjZVtdO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBmYWNlKGZhY2U6IENvbW1hbmRGYWNlKSB7XG4gICAgdGhpcy5mYWNlc01vZGVsLnZhbHVlID0gW2ZhY2VdO1xuICB9XG5cbiAgQElucHV0KClcbiAgaWdub3JlSWNvbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGlnbm9yZVRleHQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBpbmNsdWRlTWlzc2luZ0ljb25JbkxheW91dCA9IGZhbHNlO1xuXG4gIHJlYWRvbmx5IGZhY2VBZGFwdGVyczogTGlzdE1vZGVsQ2hhaW48Q29tbWFuZEZhY2UuQWRhcHRlcj47XG4gIHByaXZhdGUgYWN0aXZlSWNvbjogVmFsdWVNb2RlbENoYWluPHN0cmluZz47XG4gIHByaXZhdGUgYWN0aXZlQ29sb3I6IFZhbHVlTW9kZWxDaGFpbjxzdHJpbmc+O1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaGlkZS1pY29uJylcbiAgZ2V0IHJlcXVpcmVzTWlzc2luZ0ljb25JbkxheW91dCgpIHtcbiAgICByZXR1cm4gdGhpcy5pbmNsdWRlTWlzc2luZ0ljb25JbkxheW91dCAmJiAhdGhpcy5hY3RpdmVJY29uLnZhbHVlO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCB7IGNoYWluLCB2YWx1ZU9mLCBiZWZvcmUsIHdoZW4sIGFmdGVyLCBvYnNlcnZlLCBzd2l0Y2hPbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuICAgIHRoaXMuZmFjZUFkYXB0ZXJzID0gY2hhaW4odGhpcy5mYWNlc01vZGVsKS5tYXAoZmFjZSA9PiBuZXcgQ29tbWFuZEZhY2UuQWRhcHRlcihmYWNlKSk7XG4gICAgY29uc3QgYWN0aXZlRmFjZSA9IHRoaXMuZmFjZUFkYXB0ZXJzLmZpcnN0KCk7XG4gICAgdGhpcy5hY3RpdmVJY29uID0gYWN0aXZlRmFjZS5wbHVjayhcImljb25cIilcbiAgICB0aGlzLmFjdGl2ZUNvbG9yID0gYWN0aXZlRmFjZS5wbHVjayhcImNvbG9yXCIpXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIHNob3VsZEluY2x1ZGVJY29uKGZhY2U6IENvbW1hbmRGYWNlLkFkYXB0ZXIpIHtcbiAgICByZXR1cm4gKCF0aGlzLmlnbm9yZUljb24gJiYgZmFjZS5pY29uKSB8fCB0aGlzLmluY2x1ZGVNaXNzaW5nSWNvbkluTGF5b3V0O1xuICB9XG5cbiAgaGFzSWNvblN0YXJ0KGZhY2U6Q29tbWFuZEZhY2UuQWRhcHRlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNob3VsZEluY2x1ZGVJY29uKGZhY2UpICYmICghZmFjZS5pY29uUG9zaXRpb24gfHwgZmFjZS5pY29uUG9zaXRpb24gPT09IENvbW1hbmRGYWNlLlBvc2l0aW9uLlNUQVJUKTtcbiAgfVxuXG4gIGhhc0ljb25FbmQoZmFjZTpDb21tYW5kRmFjZS5BZGFwdGVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdWxkSW5jbHVkZUljb24oZmFjZSkgJiYgZmFjZS5pY29uUG9zaXRpb24gPT09IENvbW1hbmRGYWNlLlBvc2l0aW9uLkVORDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci5jb2xvcicpXG4gIGdldCBjb2xvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUNvbG9yLnZhbHVlO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJmYWNlLWNvbnRhaW5lclwiICpuZ0Zvcj1cImxldCBmYWNlIG9mIGZhY2VBZGFwdGVycy52YWx1ZVwiPlxuICA8YXVwLWljb24gKm5nSWY9XCJoYXNJY29uU3RhcnQoZmFjZSlcIiBbaWNvbl09XCJmYWNlLmljb25cIj48L2F1cC1pY29uPlxuICA8c3BhbiAqbmdJZj1cImZhY2UudGV4dFwiPnt7ZmFjZS50ZXh0fX08L3NwYW4+XG4gIDxhdXAtaWNvbiAqbmdJZj1cImhhc0ljb25FbmQoZmFjZSlcIiBbaWNvbl09XCJmYWNlLmljb25cIj48L2F1cC1pY29uPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
2
|
+
import { Memoize } from '@typescript-plus/fast-memoize-decorator';
|
|
3
|
+
import { isFunction } from 'lodash';
|
|
4
|
+
import { Enum } from 'typescript-string-enums';
|
|
5
|
+
export var CommandFace;
|
|
6
|
+
(function (CommandFace) {
|
|
7
|
+
let Position;
|
|
8
|
+
(function (Position) {
|
|
9
|
+
Position["START"] = "start";
|
|
10
|
+
Position["END"] = "end";
|
|
11
|
+
})(Position = CommandFace.Position || (CommandFace.Position = {}));
|
|
12
|
+
CommandFace.Style = Enum({
|
|
13
|
+
FLAT: 'flat',
|
|
14
|
+
STROKED: 'stroked',
|
|
15
|
+
RAISED: 'raised'
|
|
16
|
+
});
|
|
17
|
+
function getColorOf(face) {
|
|
18
|
+
return isFunction(face?.color) ? face.color() : undefined;
|
|
19
|
+
}
|
|
20
|
+
CommandFace.getColorOf = getColorOf;
|
|
21
|
+
function getStyleOf(face) {
|
|
22
|
+
return isFunction(face?.style) ? face.style() : undefined;
|
|
23
|
+
}
|
|
24
|
+
CommandFace.getStyleOf = getStyleOf;
|
|
25
|
+
function getIconOf(face) {
|
|
26
|
+
return isFunction(face?.icon) ? face.icon() : undefined;
|
|
27
|
+
}
|
|
28
|
+
CommandFace.getIconOf = getIconOf;
|
|
29
|
+
function getIconPositionOf(face) {
|
|
30
|
+
return isFunction(face?.iconPosition) ? face.iconPosition() : undefined;
|
|
31
|
+
}
|
|
32
|
+
CommandFace.getIconPositionOf = getIconPositionOf;
|
|
33
|
+
function getTooltipOf(face) {
|
|
34
|
+
return isFunction(face?.tooltip) ? face.tooltip() : undefined;
|
|
35
|
+
}
|
|
36
|
+
CommandFace.getTooltipOf = getTooltipOf;
|
|
37
|
+
function getTextOf(face) {
|
|
38
|
+
return isFunction(face?.text) ? face.text() : undefined;
|
|
39
|
+
}
|
|
40
|
+
CommandFace.getTextOf = getTextOf;
|
|
41
|
+
class Adapter {
|
|
42
|
+
constructor(face) {
|
|
43
|
+
this.face = face;
|
|
44
|
+
}
|
|
45
|
+
get text() {
|
|
46
|
+
return CommandFace.getTextOf(this.face);
|
|
47
|
+
}
|
|
48
|
+
get icon() {
|
|
49
|
+
return CommandFace.getIconOf(this.face);
|
|
50
|
+
}
|
|
51
|
+
get iconPosition() {
|
|
52
|
+
return CommandFace.getIconPositionOf(this.face);
|
|
53
|
+
}
|
|
54
|
+
get tooltip() {
|
|
55
|
+
return CommandFace.getTooltipOf(this.face);
|
|
56
|
+
}
|
|
57
|
+
get iconPositionStart() {
|
|
58
|
+
return this.iconPosition === CommandFace.Position.START;
|
|
59
|
+
}
|
|
60
|
+
get iconPositionEnd() {
|
|
61
|
+
return this.iconPosition === CommandFace.Position.END;
|
|
62
|
+
}
|
|
63
|
+
get color() {
|
|
64
|
+
return CommandFace.getColorOf(this.face);
|
|
65
|
+
}
|
|
66
|
+
get style() {
|
|
67
|
+
return CommandFace.getStyleOf(this.face);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
__decorate([
|
|
71
|
+
Memoize(),
|
|
72
|
+
__metadata("design:type", Object),
|
|
73
|
+
__metadata("design:paramtypes", [])
|
|
74
|
+
], Adapter.prototype, "text", null);
|
|
75
|
+
__decorate([
|
|
76
|
+
Memoize(),
|
|
77
|
+
__metadata("design:type", Object),
|
|
78
|
+
__metadata("design:paramtypes", [])
|
|
79
|
+
], Adapter.prototype, "icon", null);
|
|
80
|
+
__decorate([
|
|
81
|
+
Memoize(),
|
|
82
|
+
__metadata("design:type", Object),
|
|
83
|
+
__metadata("design:paramtypes", [])
|
|
84
|
+
], Adapter.prototype, "iconPosition", null);
|
|
85
|
+
__decorate([
|
|
86
|
+
Memoize(),
|
|
87
|
+
__metadata("design:type", Object),
|
|
88
|
+
__metadata("design:paramtypes", [])
|
|
89
|
+
], Adapter.prototype, "tooltip", null);
|
|
90
|
+
__decorate([
|
|
91
|
+
Memoize(),
|
|
92
|
+
__metadata("design:type", Boolean),
|
|
93
|
+
__metadata("design:paramtypes", [])
|
|
94
|
+
], Adapter.prototype, "iconPositionStart", null);
|
|
95
|
+
__decorate([
|
|
96
|
+
Memoize(),
|
|
97
|
+
__metadata("design:type", Boolean),
|
|
98
|
+
__metadata("design:paramtypes", [])
|
|
99
|
+
], Adapter.prototype, "iconPositionEnd", null);
|
|
100
|
+
__decorate([
|
|
101
|
+
Memoize(),
|
|
102
|
+
__metadata("design:type", String),
|
|
103
|
+
__metadata("design:paramtypes", [])
|
|
104
|
+
], Adapter.prototype, "color", null);
|
|
105
|
+
__decorate([
|
|
106
|
+
Memoize(),
|
|
107
|
+
__metadata("design:type", String),
|
|
108
|
+
__metadata("design:paramtypes", [])
|
|
109
|
+
], Adapter.prototype, "style", null);
|
|
110
|
+
CommandFace.Adapter = Adapter;
|
|
111
|
+
})(CommandFace || (CommandFace = {}));
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1mYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy9jb21tYW5kcy9jb21tYW5kLWZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVsRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQWlCL0MsTUFBTSxLQUFXLFdBQVcsQ0FtRjNCO0FBbkZELFdBQWlCLFdBQVc7SUFFMUIsSUFBWSxRQUdYO0lBSEQsV0FBWSxRQUFRO1FBQ2xCLDJCQUFlLENBQUE7UUFDZix1QkFBVyxDQUFBO0lBQ2IsQ0FBQyxFQUhXLFFBQVEsR0FBUixvQkFBUSxLQUFSLG9CQUFRLFFBR25CO0lBRVksaUJBQUssR0FBRyxJQUFJLENBQUM7UUFDeEIsSUFBSSxFQUFFLE1BQU07UUFDWixPQUFPLEVBQUUsU0FBUztRQUNsQixNQUFNLEVBQUUsUUFBUTtLQUNqQixDQUFDLENBQUM7SUFHSCxTQUFnQixVQUFVLENBQUMsSUFBaUI7UUFDMUMsT0FBTyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFrQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDNUUsQ0FBQztJQUZlLHNCQUFVLGFBRXpCLENBQUE7SUFFRCxTQUFnQixVQUFVLENBQUMsSUFBaUI7UUFDMUMsT0FBTyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNyRSxDQUFDO0lBRmUsc0JBQVUsYUFFekIsQ0FBQTtJQUVELFNBQWdCLFNBQVMsQ0FBQyxJQUFpQjtRQUN6QyxPQUFPLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzFELENBQUM7SUFGZSxxQkFBUyxZQUV4QixDQUFBO0lBRUQsU0FBZ0IsaUJBQWlCLENBQUMsSUFBaUI7UUFDakQsT0FBTyxVQUFVLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUMxRSxDQUFDO0lBRmUsNkJBQWlCLG9CQUVoQyxDQUFBO0lBRUQsU0FBZ0IsWUFBWSxDQUFDLElBQWlCO1FBQzVDLE9BQU8sVUFBVSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDaEUsQ0FBQztJQUZlLHdCQUFZLGVBRTNCLENBQUE7SUFFRCxTQUFnQixTQUFTLENBQUMsSUFBaUI7UUFDekMsT0FBTyxVQUFVLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUMxRCxDQUFDO0lBRmUscUJBQVMsWUFFeEIsQ0FBQTtJQUVELE1BQWEsT0FBTztRQUNsQixZQUFxQixJQUFpQjtZQUFqQixTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ3RDLENBQUM7UUFHRCxJQUFJLElBQUk7WUFDTixPQUFPLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFHRCxJQUFJLElBQUk7WUFDTixPQUFPLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFHRCxJQUFJLFlBQVk7WUFDZCxPQUFPLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEQsQ0FBQztRQUdELElBQUksT0FBTztZQUNULE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0MsQ0FBQztRQUdELElBQUksaUJBQWlCO1lBQ25CLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUMxRCxDQUFDO1FBR0QsSUFBSSxlQUFlO1lBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztRQUN4RCxDQUFDO1FBR0QsSUFBSSxLQUFLO1lBQ1AsT0FBTyxXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBR0QsSUFBSSxLQUFLO1lBQ1AsT0FBTyxXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQyxDQUFDO0tBRUY7SUF2Q0M7UUFEQyxPQUFPLEVBQUU7Ozt1Q0FHVDtJQUdEO1FBREMsT0FBTyxFQUFFOzs7dUNBR1Q7SUFHRDtRQURDLE9BQU8sRUFBRTs7OytDQUdUO0lBR0Q7UUFEQyxPQUFPLEVBQUU7OzswQ0FHVDtJQUdEO1FBREMsT0FBTyxFQUFFOzs7b0RBR1Q7SUFHRDtRQURDLE9BQU8sRUFBRTs7O2tEQUdUO0lBR0Q7UUFEQyxPQUFPLEVBQUU7Ozt3Q0FHVDtJQUdEO1FBREMsT0FBTyxFQUFFOzs7d0NBR1Q7SUExQ1UsbUJBQU8sVUE0Q25CLENBQUE7QUFDSCxDQUFDLEVBbkZnQixXQUFXLEtBQVgsV0FBVyxRQW1GM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1lbW9pemUgfSBmcm9tICdAdHlwZXNjcmlwdC1wbHVzL2Zhc3QtbWVtb2l6ZS1kZWNvcmF0b3InO1xuXG5pbXBvcnQgeyBpc0Z1bmN0aW9uIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEVudW0gfSBmcm9tICd0eXBlc2NyaXB0LXN0cmluZy1lbnVtcyc7XG5pbXBvcnQgeyBhc3NlcnQgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tbWFuZEZhY2Uge1xuICB0ZXh0PygpOiBzdHJpbmc7XG5cbiAgaWNvbj8oKTogc3RyaW5nO1xuXG4gIGljb25Qb3NpdGlvbj8oKTogc3RyaW5nO1xuXG4gIHRvb2x0aXA/KCk6IHN0cmluZztcblxuICBjb2xvcj8oKTogc3RyaW5nOyAvLyBUaGVtZVBhbGV0dGVcblxuICBzdHlsZT8oKTogc3RyaW5nOyAvLyBDb21tYW5kRmFjZS5TdHlsZTtcbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBDb21tYW5kRmFjZSB7XG5cbiAgZXhwb3J0IGVudW0gUG9zaXRpb24ge1xuICAgIFNUQVJUID0gJ3N0YXJ0JyxcbiAgICBFTkQgPSAnZW5kJ1xuICB9XG5cbiAgZXhwb3J0IGNvbnN0IFN0eWxlID0gRW51bSh7XG4gICAgRkxBVDogJ2ZsYXQnLFxuICAgIFNUUk9LRUQ6ICdzdHJva2VkJyxcbiAgICBSQUlTRUQ6ICdyYWlzZWQnXG4gIH0pO1xuICBleHBvcnQgdHlwZSBTdHlsZSA9IEVudW08dHlwZW9mIFN0eWxlPjtcblxuICBleHBvcnQgZnVuY3Rpb24gZ2V0Q29sb3JPZihmYWNlOiBDb21tYW5kRmFjZSk6IFRoZW1lUGFsZXR0ZSB7XG4gICAgcmV0dXJuIGlzRnVuY3Rpb24oZmFjZT8uY29sb3IpID8gZmFjZS5jb2xvcigpIGFzIFRoZW1lUGFsZXR0ZSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRTdHlsZU9mKGZhY2U6IENvbW1hbmRGYWNlKTogU3R5bGUge1xuICAgIHJldHVybiBpc0Z1bmN0aW9uKGZhY2U/LnN0eWxlKSA/IGZhY2Uuc3R5bGUoKSBhcyBTdHlsZSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRJY29uT2YoZmFjZTogQ29tbWFuZEZhY2UpIHtcbiAgICByZXR1cm4gaXNGdW5jdGlvbihmYWNlPy5pY29uKSA/IGZhY2UuaWNvbigpIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldEljb25Qb3NpdGlvbk9mKGZhY2U6IENvbW1hbmRGYWNlKSB7XG4gICAgcmV0dXJuIGlzRnVuY3Rpb24oZmFjZT8uaWNvblBvc2l0aW9uKSA/IGZhY2UuaWNvblBvc2l0aW9uKCkgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBleHBvcnQgZnVuY3Rpb24gZ2V0VG9vbHRpcE9mKGZhY2U6IENvbW1hbmRGYWNlKSB7XG4gICAgcmV0dXJuIGlzRnVuY3Rpb24oZmFjZT8udG9vbHRpcCkgPyBmYWNlLnRvb2x0aXAoKSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRUZXh0T2YoZmFjZTogQ29tbWFuZEZhY2UpIHtcbiAgICByZXR1cm4gaXNGdW5jdGlvbihmYWNlPy50ZXh0KSA/IGZhY2UudGV4dCgpIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgZXhwb3J0IGNsYXNzIEFkYXB0ZXIge1xuICAgIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZhY2U6IENvbW1hbmRGYWNlKSB7XG4gICAgfVxuXG4gICAgQE1lbW9pemUoKVxuICAgIGdldCB0ZXh0KCkge1xuICAgICAgcmV0dXJuIENvbW1hbmRGYWNlLmdldFRleHRPZih0aGlzLmZhY2UpO1xuICAgIH1cblxuICAgIEBNZW1vaXplKClcbiAgICBnZXQgaWNvbigpIHtcbiAgICAgIHJldHVybiBDb21tYW5kRmFjZS5nZXRJY29uT2YodGhpcy5mYWNlKTtcbiAgICB9XG5cbiAgICBATWVtb2l6ZSgpXG4gICAgZ2V0IGljb25Qb3NpdGlvbigpIHtcbiAgICAgIHJldHVybiBDb21tYW5kRmFjZS5nZXRJY29uUG9zaXRpb25PZih0aGlzLmZhY2UpO1xuICAgIH1cblxuICAgIEBNZW1vaXplKClcbiAgICBnZXQgdG9vbHRpcCgpIHtcbiAgICAgIHJldHVybiBDb21tYW5kRmFjZS5nZXRUb29sdGlwT2YodGhpcy5mYWNlKTtcbiAgICB9XG5cbiAgICBATWVtb2l6ZSgpXG4gICAgZ2V0IGljb25Qb3NpdGlvblN0YXJ0KCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuaWNvblBvc2l0aW9uID09PSBDb21tYW5kRmFjZS5Qb3NpdGlvbi5TVEFSVDtcbiAgICB9XG5cbiAgICBATWVtb2l6ZSgpXG4gICAgZ2V0IGljb25Qb3NpdGlvbkVuZCgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLmljb25Qb3NpdGlvbiA9PT0gQ29tbWFuZEZhY2UuUG9zaXRpb24uRU5EO1xuICAgIH1cblxuICAgIEBNZW1vaXplKClcbiAgICBnZXQgY29sb3IoKTogVGhlbWVQYWxldHRlIHtcbiAgICAgIHJldHVybiBDb21tYW5kRmFjZS5nZXRDb2xvck9mKHRoaXMuZmFjZSk7XG4gICAgfVxuXG4gICAgQE1lbW9pemUoKVxuICAgIGdldCBzdHlsZSgpOiBTdHlsZSB7XG4gICAgICByZXR1cm4gQ29tbWFuZEZhY2UuZ2V0U3R5bGVPZih0aGlzLmZhY2UpO1xuICAgIH1cblxuICB9XG59XG4iXX0=
|
|
@@ -11,9 +11,9 @@ export class FlexComponent extends DisposableComponent {
|
|
|
11
11
|
ngOnInit() {
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
FlexComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
15
|
-
FlexComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
14
|
+
FlexComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: FlexComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
+
FlexComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: FlexComponent, selector: "aup-flex", usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: FlexComponent, decorators: [{
|
|
17
17
|
type: Component,
|
|
18
18
|
args: [{
|
|
19
19
|
selector: 'aup-flex',
|
|
@@ -21,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
|
|
|
21
21
|
styles: []
|
|
22
22
|
}]
|
|
23
23
|
}], ctorParameters: function () { return []; } });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxleC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL2NvbW1hbmRzL2ZsZXguY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBRTlEOztHQUVHO0FBTUgsTUFBTSxPQUFPLGFBQWMsU0FBUSxtQkFBbUI7SUFFcEQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQzs7MEdBUFUsYUFBYTs4RkFBYixhQUFhLHVFQUhkLEVBQUU7MkZBR0QsYUFBYTtrQkFMekIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osTUFBTSxFQUFFLEVBQUU7aUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL2Rpc3Bvc2FibGUtY29tcG9uZW50JztcblxuLyoqXG4gKlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtZmxleCcsXG4gIHRlbXBsYXRlOiBgYCxcbiAgc3R5bGVzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBGbGV4Q29tcG9uZW50IGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
2
|
+
import { Component, ElementRef, Inject, Input, QueryList, ViewChildren } from '@angular/core';
|
|
3
|
+
import { MatMenuTrigger } from '@angular/material/menu';
|
|
4
|
+
import { DelegatingValueModel, Disposable, Dsl, MutableListModel, StoreInValueModel, TrackExternal, ValueModel } from '@coolon/pectin';
|
|
5
|
+
import { CommandFace } from '../../command-face';
|
|
6
|
+
import { PopupAwareComponent } from '../popup-aware.component';
|
|
7
|
+
import { POPUP_CONTAINER } from '../popup-container';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
export class AbstractPopupMenuComponent extends PopupAwareComponent {
|
|
13
|
+
constructor(element, parent) {
|
|
14
|
+
super(element, parent);
|
|
15
|
+
this._unorderedChildren = new MutableListModel();
|
|
16
|
+
this.faceModelDelegate = this.registerDisposable(new DelegatingValueModel());
|
|
17
|
+
this.xPosition = 'after';
|
|
18
|
+
this.yPosition = 'below';
|
|
19
|
+
const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
|
|
20
|
+
// group.faceListModel = chain(this.faceModel).mapToList(face => [face]);
|
|
21
|
+
this.faceAdapterModel = chain(this.faceModelDelegate).map(f => new CommandFace.Adapter(f));
|
|
22
|
+
this.faces$ = chain(this.faceAdapterModel).pluck('face').mapToList(face => [face]);
|
|
23
|
+
this.children = chain(this._unorderedChildren).sortBy('componentIndex');
|
|
24
|
+
}
|
|
25
|
+
ngAfterContentChecked() {
|
|
26
|
+
// force the list to re-order as the child indicies may have changed.
|
|
27
|
+
this._unorderedChildren.value = [...this._unorderedChildren.value];
|
|
28
|
+
}
|
|
29
|
+
get faceAdapter() {
|
|
30
|
+
if (!this.faceAdapterModel) {
|
|
31
|
+
console.error('Somehow faceAdapterModel is nil -- set a break point here and let me know what\'s going on');
|
|
32
|
+
}
|
|
33
|
+
return this.faceAdapterModel?.value ?? new CommandFace.Adapter(undefined);
|
|
34
|
+
}
|
|
35
|
+
isRoot() {
|
|
36
|
+
return !this.parent;
|
|
37
|
+
}
|
|
38
|
+
// @Trace()
|
|
39
|
+
register(component) {
|
|
40
|
+
this._unorderedChildren.push(component);
|
|
41
|
+
return Disposable.disposableThatRuns(() => {
|
|
42
|
+
this._unorderedChildren.remove(component);
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
onCommandFired() {
|
|
46
|
+
this.triggers.forEach(trigger => {
|
|
47
|
+
if (trigger.menuOpen) {
|
|
48
|
+
trigger.closeMenu();
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
getFace() {
|
|
53
|
+
return this.faceAdapter.face;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
AbstractPopupMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: AbstractPopupMenuComponent, deps: [{ token: i0.ElementRef }, { token: POPUP_CONTAINER }], target: i0.ɵɵFactoryTarget.Component });
|
|
57
|
+
AbstractPopupMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: AbstractPopupMenuComponent, selector: "aup-abstract-popup-menu", inputs: { xPosition: "xPosition", yPosition: "yPosition", enabled: "enabled", enabledModel: "enabledModel" }, viewQueries: [{ propertyName: "triggers", predicate: MatMenuTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
58
|
+
__decorate([
|
|
59
|
+
StoreInValueModel('enabledModel'),
|
|
60
|
+
__metadata("design:type", Boolean)
|
|
61
|
+
], AbstractPopupMenuComponent.prototype, "enabled", void 0);
|
|
62
|
+
__decorate([
|
|
63
|
+
TrackExternal({ defaultValue: true }),
|
|
64
|
+
__metadata("design:type", ValueModel)
|
|
65
|
+
], AbstractPopupMenuComponent.prototype, "enabledModel", void 0);
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: AbstractPopupMenuComponent, decorators: [{
|
|
67
|
+
type: Component,
|
|
68
|
+
args: [{ selector: 'aup-abstract-popup-menu', template: '', styles: [] }]
|
|
69
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
70
|
+
type: Inject,
|
|
71
|
+
args: [POPUP_CONTAINER]
|
|
72
|
+
}] }]; }, propDecorators: { xPosition: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}], yPosition: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}], triggers: [{
|
|
77
|
+
type: ViewChildren,
|
|
78
|
+
args: [MatMenuTrigger]
|
|
79
|
+
}], enabled: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], enabledModel: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}] } });
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcG9wdXAtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL2NvbW1hbmRzL2dyb3VwL3BvcHVwLW1lbnUvYWJzdHJhY3QtcG9wdXAtbWVudS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUVWLE1BQU0sRUFDTixLQUFLLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFeEQsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixVQUFVLEVBQ1YsR0FBRyxFQUVILGdCQUFnQixFQUFFLGlCQUFpQixFQUM1QixhQUFhLEVBQUUsVUFBVSxFQUVqQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFrQixNQUFNLG9CQUFvQixDQUFDOztBQUVyRTs7R0FFRztBQU1ILE1BQU0sT0FBTywwQkFBMkIsU0FBUSxtQkFBbUI7SUE0QmpFLFlBQVksT0FBbUIsRUFBMkIsTUFBdUI7UUFDL0UsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQTNCakIsdUJBQWtCLEdBQUcsSUFBSSxnQkFBZ0IsRUFBdUIsQ0FBQztRQUV0RCxzQkFBaUIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxvQkFBb0IsRUFBZSxDQUFDLENBQUM7UUFJeEcsY0FBUyxHQUF1QixPQUFPLENBQUM7UUFHeEMsY0FBUyxHQUFzQixPQUFPLENBQUM7UUFtQnJDLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pGLHlFQUF5RTtRQUV6RSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFbkYsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixxRUFBcUU7UUFDckUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFHRCxJQUFJLFdBQVc7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQzFCLE9BQU8sQ0FBQyxLQUFLLENBQUMsNEZBQTRGLENBQUMsQ0FBQztTQUM3RztRQUNELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixFQUFFLEtBQUssSUFBSSxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN0QixDQUFDO0lBRUQsV0FBVztJQUNYLFFBQVEsQ0FBQyxTQUE4QjtRQUNyQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsRUFBRTtZQUN4QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM5QixJQUFJLE9BQU8sQ0FBQyxRQUFRLEVBQUU7Z0JBQ3BCLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQzthQUNyQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7O3VIQTFFVSwwQkFBMEIsNENBNEJJLGVBQWU7MkdBNUI3QywwQkFBMEIsME1BYXZCLGNBQWMsdUVBaEJsQixFQUFFO0FBcUJaO0lBREMsaUJBQWlCLENBQUMsY0FBYyxDQUFDOzsyREFDakI7QUFJakI7SUFEQyxhQUFhLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUM7OEJBQ3hCLFVBQVU7Z0VBQVU7MkZBdEJ2QiwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UseUJBQXlCLFlBQ3pCLEVBQUU7OzBCQStCc0IsTUFBTTsyQkFBQyxlQUFlOzRDQXBCeEQsU0FBUztzQkFEUixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixRQUFRO3NCQURQLFlBQVk7dUJBQUMsY0FBYztnQkFLNUIsT0FBTztzQkFGTixLQUFLO2dCQU1OLFlBQVk7c0JBRlgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudENoZWNrZWQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdE1lbnVUcmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5cbmltcG9ydCB7XG4gIERlbGVnYXRpbmdWYWx1ZU1vZGVsLFxuICBEaXNwb3NhYmxlLFxuICBEc2wsXG4gIExpc3RNb2RlbENoYWluLFxuICBNdXRhYmxlTGlzdE1vZGVsLCBTdG9yZUluVmFsdWVNb2RlbCxcbiAgVHJhY2UsIFRyYWNrRXh0ZXJuYWwsIFZhbHVlTW9kZWwsXG4gIFZhbHVlTW9kZWxDaGFpblxufSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBDb21tYW5kRmFjZSB9IGZyb20gJy4uLy4uL2NvbW1hbmQtZmFjZSc7XG5pbXBvcnQgeyBQb3B1cEF3YXJlQ29tcG9uZW50IH0gZnJvbSAnLi4vcG9wdXAtYXdhcmUuY29tcG9uZW50JztcbmltcG9ydCB7IFBPUFVQX0NPTlRBSU5FUiwgUG9wdXBDb250YWluZXIgfSBmcm9tICcuLi9wb3B1cC1jb250YWluZXInO1xuXG4vKipcbiAqXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1cC1hYnN0cmFjdC1wb3B1cC1tZW51JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEFic3RyYWN0UG9wdXBNZW51Q29tcG9uZW50IGV4dGVuZHMgUG9wdXBBd2FyZUNvbXBvbmVudCBpbXBsZW1lbnRzIFBvcHVwQ29udGFpbmVyLCBBZnRlckNvbnRlbnRDaGVja2VkIHtcblxuICBwcml2YXRlIF91bm9yZGVyZWRDaGlsZHJlbiA9IG5ldyBNdXRhYmxlTGlzdE1vZGVsPFBvcHVwQXdhcmVDb21wb25lbnQ+KCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZhY2VNb2RlbERlbGVnYXRlID0gdGhpcy5yZWdpc3RlckRpc3Bvc2FibGUobmV3IERlbGVnYXRpbmdWYWx1ZU1vZGVsPENvbW1hbmRGYWNlPigpKTtcbiAgcHJpdmF0ZSBmYWNlQWRhcHRlck1vZGVsOiBWYWx1ZU1vZGVsQ2hhaW48Q29tbWFuZEZhY2UuQWRhcHRlcj47XG5cbiAgQElucHV0KClcbiAgeFBvc2l0aW9uOiAnYmVmb3JlJyB8ICdhZnRlcicgPSAnYWZ0ZXInO1xuXG4gIEBJbnB1dCgpXG4gIHlQb3NpdGlvbjogJ2Fib3ZlJyB8ICdiZWxvdycgPSAnYmVsb3cnO1xuXG4gIEBWaWV3Q2hpbGRyZW4oTWF0TWVudVRyaWdnZXIpXG4gIHRyaWdnZXJzOiBRdWVyeUxpc3Q8TWF0TWVudVRyaWdnZXI+O1xuXG4gIEBJbnB1dCgpXG4gIEBTdG9yZUluVmFsdWVNb2RlbCgnZW5hYmxlZE1vZGVsJylcbiAgZW5hYmxlZDogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBAVHJhY2tFeHRlcm5hbCh7IGRlZmF1bHRWYWx1ZTogdHJ1ZSB9KVxuICBlbmFibGVkTW9kZWw6IFZhbHVlTW9kZWw8Ym9vbGVhbj47XG5cblxuICByZWFkb25seSBjaGlsZHJlbjogTGlzdE1vZGVsQ2hhaW48UG9wdXBBd2FyZUNvbXBvbmVudD47XG4gIHJlYWRvbmx5IGZhY2VzJDogTGlzdE1vZGVsQ2hhaW48Q29tbWFuZEZhY2U+O1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnQ6IEVsZW1lbnRSZWYsIEBJbmplY3QoUE9QVVBfQ09OVEFJTkVSKSBwYXJlbnQ/OiBQb3B1cENvbnRhaW5lcikge1xuICAgIHN1cGVyKGVsZW1lbnQsIHBhcmVudCk7XG4gICAgY29uc3QgeyBjaGFpbiwgdmFsdWVPZiwgYmVmb3JlLCB3aGVuLCBhZnRlciwgb2JzZXJ2ZSwgc3dpdGNoT24gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICAvLyBncm91cC5mYWNlTGlzdE1vZGVsID0gY2hhaW4odGhpcy5mYWNlTW9kZWwpLm1hcFRvTGlzdChmYWNlID0+IFtmYWNlXSk7XG5cbiAgICB0aGlzLmZhY2VBZGFwdGVyTW9kZWwgPSBjaGFpbih0aGlzLmZhY2VNb2RlbERlbGVnYXRlKS5tYXAoZiA9PiBuZXcgQ29tbWFuZEZhY2UuQWRhcHRlcihmKSk7XG4gICAgdGhpcy5mYWNlcyQgPSBjaGFpbih0aGlzLmZhY2VBZGFwdGVyTW9kZWwpLnBsdWNrKCdmYWNlJykubWFwVG9MaXN0KGZhY2UgPT4gW2ZhY2VdKTtcblxuICAgIHRoaXMuY2hpbGRyZW4gPSBjaGFpbih0aGlzLl91bm9yZGVyZWRDaGlsZHJlbikuc29ydEJ5KCdjb21wb25lbnRJbmRleCcpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xuICAgIC8vIGZvcmNlIHRoZSBsaXN0IHRvIHJlLW9yZGVyIGFzIHRoZSBjaGlsZCBpbmRpY2llcyBtYXkgaGF2ZSBjaGFuZ2VkLlxuICAgIHRoaXMuX3Vub3JkZXJlZENoaWxkcmVuLnZhbHVlID0gWy4uLnRoaXMuX3Vub3JkZXJlZENoaWxkcmVuLnZhbHVlXTtcbiAgfVxuXG5cbiAgZ2V0IGZhY2VBZGFwdGVyKCk6IENvbW1hbmRGYWNlLkFkYXB0ZXIge1xuICAgIGlmICghdGhpcy5mYWNlQWRhcHRlck1vZGVsKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdTb21laG93IGZhY2VBZGFwdGVyTW9kZWwgaXMgbmlsIC0tIHNldCBhIGJyZWFrIHBvaW50IGhlcmUgYW5kIGxldCBtZSBrbm93IHdoYXRcXCdzIGdvaW5nIG9uJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmZhY2VBZGFwdGVyTW9kZWw/LnZhbHVlID8/IG5ldyBDb21tYW5kRmFjZS5BZGFwdGVyKHVuZGVmaW5lZCk7XG4gIH1cblxuICBpc1Jvb3QoKSB7XG4gICAgcmV0dXJuICF0aGlzLnBhcmVudDtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIHJlZ2lzdGVyKGNvbXBvbmVudDogUG9wdXBBd2FyZUNvbXBvbmVudCkge1xuICAgIHRoaXMuX3Vub3JkZXJlZENoaWxkcmVuLnB1c2goY29tcG9uZW50KTtcbiAgICByZXR1cm4gRGlzcG9zYWJsZS5kaXNwb3NhYmxlVGhhdFJ1bnMoKCkgPT4ge1xuICAgICAgdGhpcy5fdW5vcmRlcmVkQ2hpbGRyZW4ucmVtb3ZlKGNvbXBvbmVudCk7XG4gICAgfSk7XG4gIH1cblxuICBvbkNvbW1hbmRGaXJlZCgpIHtcbiAgICB0aGlzLnRyaWdnZXJzLmZvckVhY2godHJpZ2dlciA9PiB7XG4gICAgICBpZiAodHJpZ2dlci5tZW51T3Blbikge1xuICAgICAgICB0cmlnZ2VyLmNsb3NlTWVudSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0RmFjZSgpOiBDb21tYW5kRmFjZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuZmFjZUFkYXB0ZXIuZmFjZTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
2
|
+
import { Component, ElementRef, Inject, Input, Optional, SkipSelf } from '@angular/core';
|
|
3
|
+
import { Dsl, MutableValueModel, StoreInValueModel } from '@coolon/pectin';
|
|
4
|
+
import { POPUP_CONTAINER } from '../popup-container';
|
|
5
|
+
import { AbstractPopupMenuComponent } from './abstract-popup-menu.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/material/button";
|
|
8
|
+
import * as i2 from "../../command-face/command-face.component";
|
|
9
|
+
import * as i3 from "./popup-menu-renderer/popup-menu-renderer.component";
|
|
10
|
+
import * as i4 from "@angular/common";
|
|
11
|
+
import * as i5 from "@angular/material/menu";
|
|
12
|
+
import * as i6 from "@angular/material/tooltip";
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
*/
|
|
16
|
+
export class MoreMenuComponent extends AbstractPopupMenuComponent {
|
|
17
|
+
constructor(element, parent) {
|
|
18
|
+
super(element, parent);
|
|
19
|
+
this.tooltipModel = new MutableValueModel();
|
|
20
|
+
const { chain } = Dsl.disposeWith(this);
|
|
21
|
+
this.faceModelDelegate.setDelegate(chain(this.tooltipModel).map(tooltip => {
|
|
22
|
+
return {
|
|
23
|
+
icon: () => 'mat:more_vert',
|
|
24
|
+
tooltip() {
|
|
25
|
+
return tooltip;
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
}, { allowNil: true }));
|
|
29
|
+
}
|
|
30
|
+
get face() {
|
|
31
|
+
return this.faceModelDelegate.value;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
MoreMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: MoreMenuComponent, deps: [{ token: i0.ElementRef }, { token: POPUP_CONTAINER, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
+
MoreMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: MoreMenuComponent, selector: "aup-more-menu", inputs: { tooltip: "tooltip" }, providers: [
|
|
36
|
+
{ provide: POPUP_CONTAINER, useExisting: MoreMenuComponent }
|
|
37
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"content\" style=\"display: none\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"isRoot()\">\n <ng-container *ngIf=\"faceAdapter.text\" [ngSwitch]=\"faceAdapter.style\">\n <ng-container *ngSwitchCase=\"'stroked'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-stroked-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'raised'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-raised-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu [parent]=\"this\" (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n </ng-container>\n\n <ng-container *ngIf=\"!faceAdapter.text\">\n <button matMenuTrigger\n mat-icon-button\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n >\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n</ng-container>\n", components: [{ type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }, { type: i3.PopupMenuRendererComponent, selector: "aup-popup-menu-renderer", inputs: ["parent"], outputs: ["commandFired"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i4.NgSwitchDefault, selector: "[ngSwitchDefault]" }] });
|
|
38
|
+
__decorate([
|
|
39
|
+
StoreInValueModel('tooltipModel'),
|
|
40
|
+
__metadata("design:type", String)
|
|
41
|
+
], MoreMenuComponent.prototype, "tooltip", void 0);
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: MoreMenuComponent, decorators: [{
|
|
43
|
+
type: Component,
|
|
44
|
+
args: [{ selector: 'aup-more-menu', providers: [
|
|
45
|
+
{ provide: POPUP_CONTAINER, useExisting: MoreMenuComponent }
|
|
46
|
+
], template: "<div class=\"content\" style=\"display: none\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"isRoot()\">\n <ng-container *ngIf=\"faceAdapter.text\" [ngSwitch]=\"faceAdapter.style\">\n <ng-container *ngSwitchCase=\"'stroked'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-stroked-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'raised'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-raised-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu [parent]=\"this\" (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n </ng-container>\n\n <ng-container *ngIf=\"!faceAdapter.text\">\n <button matMenuTrigger\n mat-icon-button\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n >\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n</ng-container>\n" }]
|
|
47
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
48
|
+
type: Inject,
|
|
49
|
+
args: [POPUP_CONTAINER]
|
|
50
|
+
}, {
|
|
51
|
+
type: Optional
|
|
52
|
+
}, {
|
|
53
|
+
type: SkipSelf
|
|
54
|
+
}] }]; }, propDecorators: { tooltip: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9yZS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2NvbXBvbmVudHMvY29tbWFuZHMvZ3JvdXAvcG9wdXAtbWVudS9tb3JlLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy9jb21tYW5kcy9ncm91cC9wb3B1cC1tZW51L3BvcHVwLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsR0FBRyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGVBQWUsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7QUFFN0U7O0dBRUc7QUFRSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsMEJBQTBCO0lBTy9ELFlBQVksT0FBbUIsRUFBbUQsTUFBdUI7UUFDdkcsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQU5qQixpQkFBWSxHQUFHLElBQUksaUJBQWlCLEVBQVUsQ0FBQztRQU9yRCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3hFLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLGVBQWU7Z0JBQzNCLE9BQU87b0JBQ0wsT0FBTyxPQUFPLENBQUM7Z0JBQ2pCLENBQUM7YUFDRixDQUFDO1FBQ0osQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDO0lBQ3RDLENBQUM7OzhHQXRCVSxpQkFBaUIsNENBT2EsZUFBZTtrR0FQN0MsaUJBQWlCLHdFQUpsQjtRQUNSLEVBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUM7S0FDM0QsaURDYkgsb3RGQWtFQTtBRDlDRTtJQURVLGlCQUFpQixDQUFDLGNBQWMsQ0FBQzs7a0RBQzNCOzJGQUxMLGlCQUFpQjtrQkFQN0IsU0FBUzsrQkFDRSxlQUFlLGFBRWY7d0JBQ1IsRUFBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsbUJBQW1CLEVBQUM7cUJBQzNEOzswQkFTaUMsTUFBTTsyQkFBQyxlQUFlOzswQkFBRyxRQUFROzswQkFBSSxRQUFROzRDQUYvRSxPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIE9wdGlvbmFsLCBTa2lwU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHNsLCBNdXRhYmxlVmFsdWVNb2RlbCwgU3RvcmVJblZhbHVlTW9kZWwgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBQT1BVUF9DT05UQUlORVIsIFBvcHVwQ29udGFpbmVyIH0gZnJvbSAnLi4vcG9wdXAtY29udGFpbmVyJztcbmltcG9ydCB7IEFic3RyYWN0UG9wdXBNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9hYnN0cmFjdC1wb3B1cC1tZW51LmNvbXBvbmVudCc7XG5cbi8qKlxuICpcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLW1vcmUtbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3B1cC1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOltcbiAgICB7cHJvdmlkZTogUE9QVVBfQ09OVEFJTkVSLCB1c2VFeGlzdGluZzogTW9yZU1lbnVDb21wb25lbnR9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgTW9yZU1lbnVDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdFBvcHVwTWVudUNvbXBvbmVudCB7XG5cbiAgcHJpdmF0ZSB0b29sdGlwTW9kZWwgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8c3RyaW5nPigpO1xuXG4gIEBJbnB1dCgpIEBTdG9yZUluVmFsdWVNb2RlbCgndG9vbHRpcE1vZGVsJylcbiAgdG9vbHRpcDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnQ6IEVsZW1lbnRSZWYsIEBJbmplY3QoUE9QVVBfQ09OVEFJTkVSKSBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBwYXJlbnQ/OiBQb3B1cENvbnRhaW5lcikge1xuICAgIHN1cGVyKGVsZW1lbnQsIHBhcmVudCk7XG4gICAgY29uc3QgeyBjaGFpbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuICAgIHRoaXMuZmFjZU1vZGVsRGVsZWdhdGUuc2V0RGVsZWdhdGUoY2hhaW4odGhpcy50b29sdGlwTW9kZWwpLm1hcCh0b29sdGlwID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb246ICgpID0+ICdtYXQ6bW9yZV92ZXJ0JyxcbiAgICAgICAgdG9vbHRpcCgpOiBzdHJpbmcge1xuICAgICAgICAgIHJldHVybiB0b29sdGlwO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH0sIHsgYWxsb3dOaWw6IHRydWUgfSkpO1xuICB9XG5cbiAgZ2V0IGZhY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmFjZU1vZGVsRGVsZWdhdGUudmFsdWU7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRlbnRcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48bmctY29udGFpbmVyICpuZ0lmPVwiaXNSb290KClcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZhY2VBZGFwdGVyLnRleHRcIiBbbmdTd2l0Y2hdPVwiZmFjZUFkYXB0ZXIuc3R5bGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc3Ryb2tlZCdcIj5cbiAgICAgIDxidXR0b24gbWF0TWVudVRyaWdnZXJcbiAgICAgICAgICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cInN1Yk1lbnUubWVudUNvbXBvbmVudFwiXG4gICAgICAgICAgICAgIChjbGljaykgPSBcIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cImZhY2VBZGFwdGVyLnRvb2x0aXBcIlxuICAgICAgICAgICAgICBbY29sb3JdPVwiZmFjZUFkYXB0ZXIuY29sb3JcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVuYWJsZWRcIlxuICAgICAgICAgICAgICBtYXQtc3Ryb2tlZC1idXR0b24+XG4gICAgICAgIDxhdXAtY29tbWFuZC1mYWNlIFtmYWNlc109XCJmYWNlcyQudmFsdWVcIj48L2F1cC1jb21tYW5kLWZhY2U+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxhdXAtcG9wdXAtbWVudS1yZW5kZXJlciAjc3ViTWVudVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwYXJlbnRdPVwidGhpc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29tbWFuZEZpcmVkKT1cIm9uQ29tbWFuZEZpcmVkKClcIj48L2F1cC1wb3B1cC1tZW51LXJlbmRlcmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JhaXNlZCdcIj5cbiAgICAgIDxidXR0b24gbWF0TWVudVRyaWdnZXJcbiAgICAgICAgICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cInN1Yk1lbnUubWVudUNvbXBvbmVudFwiXG4gICAgICAgICAgICAgIChjbGljaykgPSBcIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cImZhY2VBZGFwdGVyLnRvb2x0aXBcIlxuICAgICAgICAgICAgICBbY29sb3JdPVwiZmFjZUFkYXB0ZXIuY29sb3JcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVuYWJsZWRcIlxuICAgICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvbj5cbiAgICAgICAgPGF1cC1jb21tYW5kLWZhY2UgW2ZhY2VzXT1cImZhY2VzJC52YWx1ZVwiPjwvYXVwLWNvbW1hbmQtZmFjZT5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGF1cC1wb3B1cC1tZW51LXJlbmRlcmVyICNzdWJNZW51XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhcmVudF09XCJ0aGlzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb21tYW5kRmlyZWQpPVwib25Db21tYW5kRmlyZWQoKVwiPjwvYXVwLXBvcHVwLW1lbnUtcmVuZGVyZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICA8YnV0dG9uIG1hdE1lbnVUcmlnZ2VyXG4gICAgICAgICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJzdWJNZW51Lm1lbnVDb21wb25lbnRcIlxuICAgICAgICAgICAgICAoY2xpY2spID0gXCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJmYWNlQWRhcHRlci50b29sdGlwXCJcbiAgICAgICAgICAgICAgW2NvbG9yXT1cImZhY2VBZGFwdGVyLmNvbG9yXCJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlbmFibGVkXCJcbiAgICAgICAgICAgICAgbWF0LWJ1dHRvbj5cbiAgICAgICAgPGF1cC1jb21tYW5kLWZhY2UgW2ZhY2VzXT1cImZhY2VzJC52YWx1ZVwiPjwvYXVwLWNvbW1hbmQtZmFjZT5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGF1cC1wb3B1cC1tZW51LXJlbmRlcmVyICNzdWJNZW51IFtwYXJlbnRdPVwidGhpc1wiIChjb21tYW5kRmlyZWQpPVwib25Db21tYW5kRmlyZWQoKVwiPjwvYXVwLXBvcHVwLW1lbnUtcmVuZGVyZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFmYWNlQWRhcHRlci50ZXh0XCI+XG4gICAgPGJ1dHRvbiBtYXRNZW51VHJpZ2dlclxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwic3ViTWVudS5tZW51Q29tcG9uZW50XCJcbiAgICAgICAgICAgIChjbGljaykgPSBcIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJmYWNlQWRhcHRlci50b29sdGlwXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJmYWNlQWRhcHRlci5jb2xvclwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVuYWJsZWRcIlxuICAgID5cbiAgICAgIDxhdXAtY29tbWFuZC1mYWNlIFtmYWNlc109XCJmYWNlcyQudmFsdWVcIj48L2F1cC1jb21tYW5kLWZhY2U+XG4gICAgPC9idXR0b24+XG4gICAgPGF1cC1wb3B1cC1tZW51LXJlbmRlcmVyICNzdWJNZW51XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwYXJlbnRdPVwidGhpc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbW1hbmRGaXJlZCk9XCJvbkNvbW1hbmRGaXJlZCgpXCI+PC9hdXAtcG9wdXAtbWVudS1yZW5kZXJlcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, QueryList, ViewChild, ViewChildren } from "@angular/core";
|
|
2
|
+
import { MatMenu, MatMenuTrigger } from "@angular/material/menu";
|
|
3
|
+
import { DelegatingListModel, Dsl } from "@coolon/pectin";
|
|
4
|
+
import { DisposableComponent } from "../../../../disposable-component";
|
|
5
|
+
import { TrackBy } from "../../../../track-by";
|
|
6
|
+
import { CommandFace } from "../../../command-face";
|
|
7
|
+
import { CommandComponent } from "../../../command/command.component";
|
|
8
|
+
import { SeparatorComponent } from "../../../separator.component";
|
|
9
|
+
import { AbstractPopupMenuComponent } from "../abstract-popup-menu.component";
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/material/menu";
|
|
12
|
+
import * as i2 from "../../../command-face/command-face.component";
|
|
13
|
+
import * as i3 from "@angular/material/divider";
|
|
14
|
+
import * as i4 from "@angular/common";
|
|
15
|
+
import * as i5 from "@angular/material/tooltip";
|
|
16
|
+
export class PopupMenuRendererComponent extends DisposableComponent {
|
|
17
|
+
constructor() {
|
|
18
|
+
super();
|
|
19
|
+
this._childList = this.registerDisposable(new DelegatingListModel());
|
|
20
|
+
this.commandFired = new EventEmitter();
|
|
21
|
+
this.TrackBy = TrackBy;
|
|
22
|
+
const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
|
|
23
|
+
// this.children = chain(this.groupViewDataModel).pluckList('children');
|
|
24
|
+
// this.hasMixedIcons = chain(this.groupViewDataModel).pluck('hasMixedIcons');
|
|
25
|
+
const faces = chain(this._childList).map(child => {
|
|
26
|
+
return child.getFace();
|
|
27
|
+
}).rejectNil();
|
|
28
|
+
const icons = faces.select(face => !!CommandFace.getIconOf(face));
|
|
29
|
+
const iconCount = icons.count();
|
|
30
|
+
const totalFaces = faces.count();
|
|
31
|
+
this.hasMixedIcons = valueOf.all(iconCount.isGreaterThan(0), totalFaces.doesNotEqual(iconCount)).areTruthy();
|
|
32
|
+
}
|
|
33
|
+
get parent() {
|
|
34
|
+
return this._parentComponent;
|
|
35
|
+
}
|
|
36
|
+
set parent(comp) {
|
|
37
|
+
this._parentComponent = comp;
|
|
38
|
+
this._childList.setDelegate(comp.children);
|
|
39
|
+
}
|
|
40
|
+
get children() {
|
|
41
|
+
return this.parent.children.value;
|
|
42
|
+
}
|
|
43
|
+
executeCommand(data) {
|
|
44
|
+
if (this.isCommand(data)) {
|
|
45
|
+
data.command.execute().finally(() => {
|
|
46
|
+
this.commandFired.emit();
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
isCommandEnabled(data) {
|
|
51
|
+
return this.isCommand(data) && data.command.enabled.value;
|
|
52
|
+
}
|
|
53
|
+
// @Trace()
|
|
54
|
+
onCommandFired() {
|
|
55
|
+
this.commandFired.emit();
|
|
56
|
+
this.triggers.forEach(trigger => {
|
|
57
|
+
if (trigger.menuOpen) {
|
|
58
|
+
trigger.closeMenu();
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
isCommand(child) {
|
|
63
|
+
return child instanceof CommandComponent;
|
|
64
|
+
}
|
|
65
|
+
isPopupMenu(child) {
|
|
66
|
+
return child instanceof AbstractPopupMenuComponent;
|
|
67
|
+
}
|
|
68
|
+
isPopupMenuEnabled(child) {
|
|
69
|
+
return this.isPopupMenu(child) && child.enabled;
|
|
70
|
+
}
|
|
71
|
+
isSeparator(child) {
|
|
72
|
+
return child instanceof SeparatorComponent;
|
|
73
|
+
}
|
|
74
|
+
getTooltip(child) {
|
|
75
|
+
return this.isCommand(child) ? CommandFace.getTooltipOf(child.face) : undefined;
|
|
76
|
+
}
|
|
77
|
+
getFaces(child) {
|
|
78
|
+
return this.isCommand(child) ?
|
|
79
|
+
child.faces$.value :
|
|
80
|
+
this.isPopupMenu(child) ?
|
|
81
|
+
child.faces$.value :
|
|
82
|
+
undefined;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
PopupMenuRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: PopupMenuRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
+
PopupMenuRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: PopupMenuRendererComponent, selector: "aup-popup-menu-renderer", inputs: { parent: "parent" }, outputs: { commandFired: "commandFired" }, viewQueries: [{ propertyName: "menuComponent", first: true, predicate: ["menu"], descendants: true, static: true }, { propertyName: "triggers", predicate: MatMenuTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-menu #menu [xPosition]=\"parent.xPosition\" [yPosition]=\"parent.yPosition\">\n <ng-template matMenuContent>\n <ng-container *ngFor=\"let child of children; trackBy: TrackBy.byIndex\" >\n <button *ngIf=\"isCommand(child)\"\n (click)=\"executeCommand(child)\"\n [disabled]=\"!isCommandEnabled(child)\"\n [matTooltip]=\"getTooltip(child)\"\n mat-menu-item>\n <aup-command-face [faces]=\"getFaces(child)\"\n [includeMissingIconInLayout]=\"hasMixedIcons.value\"></aup-command-face>\n </button>\n\n <ng-container *ngIf=\"isPopupMenu(child)\">\n <button mat-menu-item\n matMenuTrigger\n [disabled]=\"!isPopupMenuEnabled(child)\"\n [matMenuTriggerFor]=\"innerPanel.menuComponent\"\n >\n <aup-command-face [faces]=\"getFaces(child)\"\n [includeMissingIconInLayout]=\"hasMixedIcons.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #innerPanel\n [parent]=\"child\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <mat-divider *ngIf=\"isSeparator(child)\"></mat-divider>\n\n </ng-container>\n\n </ng-template>\n</mat-menu>\n", components: [{ type: i1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i2.CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }, { type: PopupMenuRendererComponent, selector: "aup-popup-menu-renderer", inputs: ["parent"], outputs: ["commandFired"] }, { type: i3.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i1.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }] });
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: PopupMenuRendererComponent, decorators: [{
|
|
88
|
+
type: Component,
|
|
89
|
+
args: [{ selector: "aup-popup-menu-renderer", template: "<mat-menu #menu [xPosition]=\"parent.xPosition\" [yPosition]=\"parent.yPosition\">\n <ng-template matMenuContent>\n <ng-container *ngFor=\"let child of children; trackBy: TrackBy.byIndex\" >\n <button *ngIf=\"isCommand(child)\"\n (click)=\"executeCommand(child)\"\n [disabled]=\"!isCommandEnabled(child)\"\n [matTooltip]=\"getTooltip(child)\"\n mat-menu-item>\n <aup-command-face [faces]=\"getFaces(child)\"\n [includeMissingIconInLayout]=\"hasMixedIcons.value\"></aup-command-face>\n </button>\n\n <ng-container *ngIf=\"isPopupMenu(child)\">\n <button mat-menu-item\n matMenuTrigger\n [disabled]=\"!isPopupMenuEnabled(child)\"\n [matMenuTriggerFor]=\"innerPanel.menuComponent\"\n >\n <aup-command-face [faces]=\"getFaces(child)\"\n [includeMissingIconInLayout]=\"hasMixedIcons.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #innerPanel\n [parent]=\"child\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <mat-divider *ngIf=\"isSeparator(child)\"></mat-divider>\n\n </ng-container>\n\n </ng-template>\n</mat-menu>\n" }]
|
|
90
|
+
}], ctorParameters: function () { return []; }, propDecorators: { parent: [{
|
|
91
|
+
type: Input
|
|
92
|
+
}], menuComponent: [{
|
|
93
|
+
type: ViewChild,
|
|
94
|
+
args: ["menu", { static: true }]
|
|
95
|
+
}], commandFired: [{
|
|
96
|
+
type: Output
|
|
97
|
+
}], triggers: [{
|
|
98
|
+
type: ViewChildren,
|
|
99
|
+
args: [MatMenuTrigger]
|
|
100
|
+
}] } });
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAtbWVudS1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL2NvbW1hbmRzL2dyb3VwL3BvcHVwLW1lbnUvcG9wdXAtbWVudS1yZW5kZXJlci9wb3B1cC1tZW51LXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2NvbXBvbmVudHMvY29tbWFuZHMvZ3JvdXAvcG9wdXAtbWVudS9wb3B1cC1tZW51LXJlbmRlcmVyL3BvcHVwLW1lbnUtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRyxPQUFPLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pFLE9BQU8sRUFBVyxtQkFBbUIsRUFBRSxHQUFHLEVBQWMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWxFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7O0FBTzlFLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxtQkFBbUI7SUE4QmpFO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUEzQkYsZUFBVSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLG1CQUFtQixFQUF1QixDQUFDLENBQUM7UUFnQjdGLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVFsQyxZQUFPLEdBQUcsT0FBTyxDQUFDO1FBSWhCLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pGLHdFQUF3RTtRQUN4RSw4RUFBOEU7UUFDOUUsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDL0MsT0FBTyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDZixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsRSxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FDOUIsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFDMUIsVUFBVSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FDbkMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBdkNELElBQ0ksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLE1BQU0sQ0FBQyxJQUFnQztRQUN6QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBaUNELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBeUI7UUFDdEMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMzQixDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQXlCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDNUQsQ0FBQztJQUVELFdBQVc7SUFDWCxjQUFjO1FBQ1osSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM5QixJQUFJLE9BQU8sQ0FBQyxRQUFRLEVBQUU7Z0JBQ3BCLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQzthQUNyQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFVO1FBQ2xCLE9BQU8sS0FBSyxZQUFZLGdCQUFnQixDQUFDO0lBQzNDLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBVTtRQUNwQixPQUFPLEtBQUssWUFBWSwwQkFBMEIsQ0FBQztJQUNyRCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBVTtRQUMzQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUNsRCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQVU7UUFDcEIsT0FBTyxLQUFLLFlBQVksa0JBQWtCLENBQUM7SUFDN0MsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNsRixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQTBCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQzVCLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUN2QixLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQixTQUFTLENBQUM7SUFDaEIsQ0FBQzs7dUhBbkdVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLDJRQXNCdkIsY0FBYyx1RUN0QzlCLDIzQ0FnQ0EsaVhEaEJhLDBCQUEwQjsyRkFBMUIsMEJBQTBCO2tCQUp0QyxTQUFTOytCQUNFLHlCQUF5QjswRUFVL0IsTUFBTTtzQkFEVCxLQUFLO2dCQVdOLGFBQWE7c0JBRFosU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUluQyxZQUFZO3NCQURYLE1BQU07Z0JBSVAsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGQsIFZpZXdDaGlsZHJlbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBNYXRNZW51LCBNYXRNZW51VHJpZ2dlciB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9tZW51XCI7XG5pbXBvcnQgeyBDb21tYW5kLCBEZWxlZ2F0aW5nTGlzdE1vZGVsLCBEc2wsIFZhbHVlTW9kZWwgfSBmcm9tIFwiQGNvb2xvbi9wZWN0aW5cIjtcbmltcG9ydCB7IERpc3Bvc2FibGVDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vLi4vLi4vZGlzcG9zYWJsZS1jb21wb25lbnRcIjtcbmltcG9ydCB7IFRyYWNrQnkgfSBmcm9tIFwiLi4vLi4vLi4vLi4vdHJhY2stYnlcIjtcbmltcG9ydCB7IENvbW1hbmRGYWNlIH0gZnJvbSBcIi4uLy4uLy4uL2NvbW1hbmQtZmFjZVwiO1xuaW1wb3J0IHsgQ29tbWFuZENvbXBvbmVudCB9IGZyb20gXCIuLi8uLi8uLi9jb21tYW5kL2NvbW1hbmQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTZXBhcmF0b3JDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vLi4vc2VwYXJhdG9yLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgUG9wdXBBd2FyZUNvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9wb3B1cC1hd2FyZS5jb21wb25lbnRcIjtcbmltcG9ydCB7IEFic3RyYWN0UG9wdXBNZW51Q29tcG9uZW50IH0gZnJvbSBcIi4uL2Fic3RyYWN0LXBvcHVwLW1lbnUuY29tcG9uZW50XCI7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImF1cC1wb3B1cC1tZW51LXJlbmRlcmVyXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vcG9wdXAtbWVudS1yZW5kZXJlci5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIFBvcHVwTWVudVJlbmRlcmVyQ29tcG9uZW50IGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCB7XG5cbiAgcHJpdmF0ZSBfcGFyZW50Q29tcG9uZW50OiBBYnN0cmFjdFBvcHVwTWVudUNvbXBvbmVudDtcblxuICBwcml2YXRlIF9jaGlsZExpc3QgPSB0aGlzLnJlZ2lzdGVyRGlzcG9zYWJsZShuZXcgRGVsZWdhdGluZ0xpc3RNb2RlbDxQb3B1cEF3YXJlQ29tcG9uZW50PigpKTtcblxuICBASW5wdXQoKVxuICBnZXQgcGFyZW50KCk6IEFic3RyYWN0UG9wdXBNZW51Q29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5fcGFyZW50Q29tcG9uZW50O1xuICB9XG5cbiAgc2V0IHBhcmVudChjb21wOiBBYnN0cmFjdFBvcHVwTWVudUNvbXBvbmVudCkge1xuICAgIHRoaXMuX3BhcmVudENvbXBvbmVudCA9IGNvbXA7XG4gICAgdGhpcy5fY2hpbGRMaXN0LnNldERlbGVnYXRlKGNvbXAuY2hpbGRyZW4pO1xuICB9XG5cbiAgQFZpZXdDaGlsZChcIm1lbnVcIiwgeyBzdGF0aWM6IHRydWUgfSlcbiAgbWVudUNvbXBvbmVudDogTWF0TWVudTtcblxuICBAT3V0cHV0KClcbiAgY29tbWFuZEZpcmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGRyZW4oTWF0TWVudVRyaWdnZXIpXG4gIHRyaWdnZXJzOiBRdWVyeUxpc3Q8TWF0TWVudVRyaWdnZXI+O1xuXG4gIHJlYWRvbmx5IGhhc01peGVkSWNvbnM6IFZhbHVlTW9kZWw8Ym9vbGVhbj47XG4gIHJlYWRvbmx5IGNvbW1hbmRQcm94eTogQ29tbWFuZDx1bmtub3duPjtcblxuICBUcmFja0J5ID0gVHJhY2tCeTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIGNvbnN0IHsgY2hhaW4sIHZhbHVlT2YsIGJlZm9yZSwgd2hlbiwgYWZ0ZXIsIG9ic2VydmUsIHN3aXRjaE9uIH0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG4gICAgLy8gdGhpcy5jaGlsZHJlbiA9IGNoYWluKHRoaXMuZ3JvdXBWaWV3RGF0YU1vZGVsKS5wbHVja0xpc3QoJ2NoaWxkcmVuJyk7XG4gICAgLy8gdGhpcy5oYXNNaXhlZEljb25zID0gY2hhaW4odGhpcy5ncm91cFZpZXdEYXRhTW9kZWwpLnBsdWNrKCdoYXNNaXhlZEljb25zJyk7XG4gICAgY29uc3QgZmFjZXMgPSBjaGFpbih0aGlzLl9jaGlsZExpc3QpLm1hcChjaGlsZCA9PiB7XG4gICAgICByZXR1cm4gY2hpbGQuZ2V0RmFjZSgpO1xuICAgIH0pLnJlamVjdE5pbCgpO1xuICAgIGNvbnN0IGljb25zID0gZmFjZXMuc2VsZWN0KGZhY2UgPT4gISFDb21tYW5kRmFjZS5nZXRJY29uT2YoZmFjZSkpO1xuICAgIGNvbnN0IGljb25Db3VudCA9IGljb25zLmNvdW50KCk7XG4gICAgY29uc3QgdG90YWxGYWNlcyA9IGZhY2VzLmNvdW50KCk7XG4gICAgdGhpcy5oYXNNaXhlZEljb25zID0gdmFsdWVPZi5hbGwoXG4gICAgICBpY29uQ291bnQuaXNHcmVhdGVyVGhhbigwKSxcbiAgICAgIHRvdGFsRmFjZXMuZG9lc05vdEVxdWFsKGljb25Db3VudClcbiAgICApLmFyZVRydXRoeSgpO1xuICB9XG5cbiAgZ2V0IGNoaWxkcmVuKCk6IFBvcHVwQXdhcmVDb21wb25lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMucGFyZW50LmNoaWxkcmVuLnZhbHVlO1xuICB9XG5cbiAgZXhlY3V0ZUNvbW1hbmQoZGF0YTogUG9wdXBBd2FyZUNvbXBvbmVudCkge1xuICAgIGlmICh0aGlzLmlzQ29tbWFuZChkYXRhKSkge1xuICAgICAgZGF0YS5jb21tYW5kLmV4ZWN1dGUoKS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgdGhpcy5jb21tYW5kRmlyZWQuZW1pdCgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgaXNDb21tYW5kRW5hYmxlZChkYXRhOiBQb3B1cEF3YXJlQ29tcG9uZW50KSB7XG4gICAgcmV0dXJuIHRoaXMuaXNDb21tYW5kKGRhdGEpICYmIGRhdGEuY29tbWFuZC5lbmFibGVkLnZhbHVlO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgb25Db21tYW5kRmlyZWQoKSB7XG4gICAgdGhpcy5jb21tYW5kRmlyZWQuZW1pdCgpO1xuICAgIHRoaXMudHJpZ2dlcnMuZm9yRWFjaCh0cmlnZ2VyID0+IHtcbiAgICAgIGlmICh0cmlnZ2VyLm1lbnVPcGVuKSB7XG4gICAgICAgIHRyaWdnZXIuY2xvc2VNZW51KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBpc0NvbW1hbmQoY2hpbGQ6IGFueSk6IGNoaWxkIGlzIENvbW1hbmRDb21wb25lbnQge1xuICAgIHJldHVybiBjaGlsZCBpbnN0YW5jZW9mIENvbW1hbmRDb21wb25lbnQ7XG4gIH1cblxuICBpc1BvcHVwTWVudShjaGlsZDogYW55KTogY2hpbGQgaXMgQWJzdHJhY3RQb3B1cE1lbnVDb21wb25lbnQge1xuICAgIHJldHVybiBjaGlsZCBpbnN0YW5jZW9mIEFic3RyYWN0UG9wdXBNZW51Q29tcG9uZW50O1xuICB9XG5cbiAgaXNQb3B1cE1lbnVFbmFibGVkKGNoaWxkOiBhbnkpOiBjaGlsZCBpcyBBYnN0cmFjdFBvcHVwTWVudUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMuaXNQb3B1cE1lbnUoY2hpbGQpICYmIGNoaWxkLmVuYWJsZWQ7XG4gIH1cblxuICBpc1NlcGFyYXRvcihjaGlsZDogYW55KTogY2hpbGQgaXMgU2VwYXJhdG9yQ29tcG9uZW50IHtcbiAgICByZXR1cm4gY2hpbGQgaW5zdGFuY2VvZiBTZXBhcmF0b3JDb21wb25lbnQ7XG4gIH1cblxuICBnZXRUb29sdGlwKGNoaWxkOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5pc0NvbW1hbmQoY2hpbGQpID8gQ29tbWFuZEZhY2UuZ2V0VG9vbHRpcE9mKGNoaWxkLmZhY2UpIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0RmFjZXMoY2hpbGQ6IFBvcHVwQXdhcmVDb21wb25lbnQpIHtcbiAgICByZXR1cm4gdGhpcy5pc0NvbW1hbmQoY2hpbGQpID9cbiAgICAgIGNoaWxkLmZhY2VzJC52YWx1ZSA6XG4gICAgICB0aGlzLmlzUG9wdXBNZW51KGNoaWxkKSA/XG4gICAgICAgIGNoaWxkLmZhY2VzJC52YWx1ZSA6XG4gICAgICAgIHVuZGVmaW5lZDtcbiAgfVxufVxuXG5cbiIsIjxtYXQtbWVudSAjbWVudSBbeFBvc2l0aW9uXT1cInBhcmVudC54UG9zaXRpb25cIiBbeVBvc2l0aW9uXT1cInBhcmVudC55UG9zaXRpb25cIj5cbiAgPG5nLXRlbXBsYXRlIG1hdE1lbnVDb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGNoaWxkcmVuOyB0cmFja0J5OiBUcmFja0J5LmJ5SW5kZXhcIiA+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwiaXNDb21tYW5kKGNoaWxkKVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJleGVjdXRlQ29tbWFuZChjaGlsZClcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWlzQ29tbWFuZEVuYWJsZWQoY2hpbGQpXCJcbiAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiZ2V0VG9vbHRpcChjaGlsZClcIlxuICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtPlxuICAgICAgICAgICAgICAgIDxhdXAtY29tbWFuZC1mYWNlIFtmYWNlc109XCJnZXRGYWNlcyhjaGlsZClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbmNsdWRlTWlzc2luZ0ljb25JbkxheW91dF09XCJoYXNNaXhlZEljb25zLnZhbHVlXCI+PC9hdXAtY29tbWFuZC1mYWNlPlxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1BvcHVwTWVudShjaGlsZClcIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgbWF0TWVudVRyaWdnZXJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWlzUG9wdXBNZW51RW5hYmxlZChjaGlsZClcIlxuICAgICAgICAgICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJpbm5lclBhbmVsLm1lbnVDb21wb25lbnRcIlxuICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxhdXAtY29tbWFuZC1mYWNlIFtmYWNlc109XCJnZXRGYWNlcyhjaGlsZClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5jbHVkZU1pc3NpbmdJY29uSW5MYXlvdXRdPVwiaGFzTWl4ZWRJY29ucy52YWx1ZVwiPjwvYXVwLWNvbW1hbmQtZmFjZT5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxhdXAtcG9wdXAtbWVudS1yZW5kZXJlciAjaW5uZXJQYW5lbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhcmVudF09XCJjaGlsZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29tbWFuZEZpcmVkKT1cIm9uQ29tbWFuZEZpcmVkKClcIj48L2F1cC1wb3B1cC1tZW51LXJlbmRlcmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxtYXQtZGl2aWRlciAqbmdJZj1cImlzU2VwYXJhdG9yKGNoaWxkKVwiPjwvbWF0LWRpdmlkZXI+XG5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICA8L25nLXRlbXBsYXRlPlxuPC9tYXQtbWVudT5cbiJdfQ==
|