@agorapulse/ui-components 18.1.13 → 18.2.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/action-dropdown/index.d.ts +105 -3
- package/add-comment/index.d.ts +24 -5
- package/agorapulse-ui-components-18.2.0.tgz +0 -0
- package/autocomplete/index.d.ts +43 -5
- package/avatar/index.d.ts +64 -5
- package/badge/index.d.ts +11 -5
- package/button/index.d.ts +54 -5
- package/checkbox/index.d.ts +54 -5
- package/close-button/index.d.ts +14 -5
- package/confirm-modal/index.d.ts +32 -5
- package/counter/index.d.ts +17 -5
- package/datepicker/index.d.ts +99 -5
- package/directives/index.d.ts +149 -3
- package/dot-stepper/index.d.ts +23 -5
- package/fesm2022/agorapulse-ui-components-action-dropdown.mjs +22 -32
- package/fesm2022/agorapulse-ui-components-action-dropdown.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-add-comment.mjs +5 -5
- package/fesm2022/agorapulse-ui-components-add-comment.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-autocomplete.mjs +8 -8
- package/fesm2022/agorapulse-ui-components-autocomplete.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-avatar.mjs +24 -24
- package/fesm2022/agorapulse-ui-components-avatar.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-badge.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-badge.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-button.mjs +6 -6
- package/fesm2022/agorapulse-ui-components-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-checkbox.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-checkbox.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-close-button.mjs +7 -7
- package/fesm2022/agorapulse-ui-components-close-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-confirm-modal.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-confirm-modal.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-counter.mjs +9 -9
- package/fesm2022/agorapulse-ui-components-counter.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-datepicker.mjs +6 -6
- package/fesm2022/agorapulse-ui-components-datepicker.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-directives.mjs +26 -28
- package/fesm2022/agorapulse-ui-components-directives.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-dot-stepper.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-dot-stepper.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-form-field.mjs +3 -3
- package/fesm2022/agorapulse-ui-components-form-field.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-form-message.mjs +6 -6
- package/fesm2022/agorapulse-ui-components-form-message.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-icon-button.mjs +5 -5
- package/fesm2022/agorapulse-ui-components-icon-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-infobox.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-infobox.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-input-group.mjs +6 -6
- package/fesm2022/agorapulse-ui-components-input-group.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-input-search.mjs +13 -10
- package/fesm2022/agorapulse-ui-components-input-search.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-input.mjs +3 -3
- package/fesm2022/agorapulse-ui-components-labels-selector.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-labels-selector.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-labels.mjs +8 -8
- package/fesm2022/agorapulse-ui-components-labels.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-legacy-input.mjs +5 -5
- package/fesm2022/agorapulse-ui-components-legacy-input.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-legacy-select.mjs +17 -17
- package/fesm2022/agorapulse-ui-components-legacy-select.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-legacy-textarea.mjs +5 -5
- package/fesm2022/agorapulse-ui-components-legacy-textarea.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-modal.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-modal.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-nav-selector-testing.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-nav-selector.mjs +164 -159
- package/fesm2022/agorapulse-ui-components-nav-selector.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs +8 -8
- package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-notification.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-notification.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-paginator.mjs +7 -7
- package/fesm2022/agorapulse-ui-components-paginator.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-password-input.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-password-input.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-phone-number-input.mjs +16 -16
- package/fesm2022/agorapulse-ui-components-phone-number-input.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-popmenu.mjs +11 -11
- package/fesm2022/agorapulse-ui-components-popmenu.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-providers.mjs +19 -0
- package/fesm2022/agorapulse-ui-components-providers.mjs.map +1 -0
- package/fesm2022/agorapulse-ui-components-radio.mjs +6 -6
- package/fesm2022/agorapulse-ui-components-radio.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-range-slider.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-range-slider.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-select.mjs +65 -65
- package/fesm2022/agorapulse-ui-components-select.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-slide-toggle.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-slide-toggle.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs +8 -8
- package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-social-button.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-social-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-split-button.mjs +5 -5
- package/fesm2022/agorapulse-ui-components-split-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-status-card.mjs +3 -3
- package/fesm2022/agorapulse-ui-components-status-card.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-status.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-status.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-stepper.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-stepper.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-tag.mjs +9 -9
- package/fesm2022/agorapulse-ui-components-tag.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-text-measurement.mjs +3 -3
- package/fesm2022/agorapulse-ui-components-textarea.mjs +3 -3
- package/fesm2022/agorapulse-ui-components-toggle.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-toggle.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-tooltip.mjs +15 -15
- package/fesm2022/agorapulse-ui-components-tooltip.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components.mjs +4 -4
- package/fesm2022/agorapulse-ui-components.mjs.map +1 -1
- package/form-field/index.d.ts +8 -5
- package/form-message/index.d.ts +16 -5
- package/icon-button/index.d.ts +44 -5
- package/index.d.ts +50 -25
- package/infobox/index.d.ts +29 -5
- package/input/index.d.ts +10 -5
- package/input-group/index.d.ts +14 -5
- package/input-search/index.d.ts +35 -5
- package/labels/index.d.ts +59 -5
- package/labels-selector/index.d.ts +46 -5
- package/legacy/input/index.d.ts +64 -3
- package/legacy/select/index.d.ts +124 -3
- package/legacy/textarea/index.d.ts +54 -3
- package/media-display-overlay/index.d.ts +46 -5
- package/modal/index.d.ts +58 -5
- package/nav-selector/index.d.ts +372 -3
- package/nav-selector/testing/index.d.ts +67 -3
- package/neo-datepicker/index.d.ts +74 -5
- package/notification/index.d.ts +9 -5
- package/package.json +14 -112
- package/paginator/index.d.ts +57 -5
- package/password-input/index.d.ts +36 -5
- package/phone-number-input/index.d.ts +54 -5
- package/popmenu/index.d.ts +212 -3
- package/providers/index.d.ts +11 -0
- package/radio/index.d.ts +80 -5
- package/range-slider/index.d.ts +39 -5
- package/select/index.d.ts +214 -5
- package/slide-toggle/index.d.ts +23 -5
- package/snackbars-thread/index.d.ts +73 -3
- package/social-button/index.d.ts +34 -5
- package/split-button/index.d.ts +47 -5
- package/status/index.d.ts +13 -5
- package/status-card/index.d.ts +17 -5
- package/stepper/index.d.ts +26 -5
- package/tag/index.d.ts +28 -5
- package/text-measurement/index.d.ts +11 -5
- package/textarea/index.d.ts +14 -5
- package/toggle/index.d.ts +55 -5
- package/tooltip/index.d.ts +62 -5
- package/action-dropdown/action-dropdown-trigger.directive.d.ts +0 -17
- package/action-dropdown/action-dropdown.component.d.ts +0 -87
- package/action-dropdown/providers.d.ts +0 -8
- package/action-dropdown/public_api.d.ts +0 -3
- package/add-comment/add-comment.component.d.ts +0 -21
- package/add-comment/public_api.d.ts +0 -1
- package/agorapulse-ui-components-18.1.13.tgz +0 -0
- package/autocomplete/autocomplete.component.d.ts +0 -40
- package/autocomplete/public_api.d.ts +0 -1
- package/avatar/avatar.component.d.ts +0 -61
- package/avatar/public_api.d.ts +0 -1
- package/badge/badge.component.d.ts +0 -7
- package/badge/public_api.d.ts +0 -1
- package/button/button.component.d.ts +0 -52
- package/button/public_api.d.ts +0 -1
- package/checkbox/checkbox.component.d.ts +0 -51
- package/checkbox/public_api.d.ts +0 -1
- package/close-button/close-button.component.d.ts +0 -11
- package/close-button/public_api.d.ts +0 -1
- package/confirm-modal/confirm-modal-texts.model.d.ts +0 -8
- package/confirm-modal/confirm-modal.component.d.ts +0 -20
- package/confirm-modal/public_api.d.ts +0 -2
- package/counter/counter.component.d.ts +0 -13
- package/counter/public_api.d.ts +0 -1
- package/datepicker/datepicker.component.d.ts +0 -100
- package/datepicker/public_api.d.ts +0 -1
- package/directives/autosize-textarea.directive.d.ts +0 -12
- package/directives/base-button.directive.d.ts +0 -13
- package/directives/checkbox.directive.d.ts +0 -32
- package/directives/default-image.directive.d.ts +0 -8
- package/directives/ellipsis.directive.d.ts +0 -29
- package/directives/equal-validator.directive.d.ts +0 -13
- package/directives/frozen-gif.directive.d.ts +0 -30
- package/directives/multi-style-text.directive.d.ts +0 -16
- package/directives/public_api.d.ts +0 -8
- package/dot-stepper/dot-stepper.component.d.ts +0 -20
- package/dot-stepper/public_api.d.ts +0 -1
- package/esm2022/action-dropdown/action-dropdown-trigger.directive.mjs +0 -54
- package/esm2022/action-dropdown/action-dropdown.component.mjs +0 -272
- package/esm2022/action-dropdown/agorapulse-ui-components-action-dropdown.mjs +0 -5
- package/esm2022/action-dropdown/providers.mjs +0 -12
- package/esm2022/action-dropdown/public_api.mjs +0 -4
- package/esm2022/add-comment/add-comment.component.mjs +0 -72
- package/esm2022/add-comment/agorapulse-ui-components-add-comment.mjs +0 -5
- package/esm2022/add-comment/public_api.mjs +0 -2
- package/esm2022/agorapulse-ui-components.mjs +0 -5
- package/esm2022/autocomplete/agorapulse-ui-components-autocomplete.mjs +0 -5
- package/esm2022/autocomplete/autocomplete.component.mjs +0 -125
- package/esm2022/autocomplete/public_api.mjs +0 -2
- package/esm2022/avatar/agorapulse-ui-components-avatar.mjs +0 -5
- package/esm2022/avatar/avatar.component.mjs +0 -161
- package/esm2022/avatar/public_api.mjs +0 -2
- package/esm2022/badge/agorapulse-ui-components-badge.mjs +0 -5
- package/esm2022/badge/badge.component.mjs +0 -17
- package/esm2022/badge/public_api.mjs +0 -2
- package/esm2022/button/agorapulse-ui-components-button.mjs +0 -5
- package/esm2022/button/button.component.mjs +0 -105
- package/esm2022/button/public_api.mjs +0 -2
- package/esm2022/checkbox/agorapulse-ui-components-checkbox.mjs +0 -5
- package/esm2022/checkbox/checkbox.component.mjs +0 -177
- package/esm2022/checkbox/public_api.mjs +0 -2
- package/esm2022/close-button/agorapulse-ui-components-close-button.mjs +0 -5
- package/esm2022/close-button/close-button.component.mjs +0 -20
- package/esm2022/close-button/public_api.mjs +0 -2
- package/esm2022/confirm-modal/agorapulse-ui-components-confirm-modal.mjs +0 -5
- package/esm2022/confirm-modal/confirm-modal-texts.model.mjs +0 -2
- package/esm2022/confirm-modal/confirm-modal.component.mjs +0 -61
- package/esm2022/confirm-modal/public_api.mjs +0 -3
- package/esm2022/counter/agorapulse-ui-components-counter.mjs +0 -5
- package/esm2022/counter/counter.component.mjs +0 -32
- package/esm2022/counter/public_api.mjs +0 -2
- package/esm2022/datepicker/agorapulse-ui-components-datepicker.mjs +0 -5
- package/esm2022/datepicker/datepicker.component.mjs +0 -288
- package/esm2022/datepicker/public_api.mjs +0 -2
- package/esm2022/directives/agorapulse-ui-components-directives.mjs +0 -5
- package/esm2022/directives/autosize-textarea.directive.mjs +0 -45
- package/esm2022/directives/base-button.directive.mjs +0 -47
- package/esm2022/directives/checkbox.directive.mjs +0 -283
- package/esm2022/directives/default-image.directive.mjs +0 -37
- package/esm2022/directives/ellipsis.directive.mjs +0 -90
- package/esm2022/directives/equal-validator.directive.mjs +0 -73
- package/esm2022/directives/frozen-gif.directive.mjs +0 -125
- package/esm2022/directives/multi-style-text.directive.mjs +0 -61
- package/esm2022/directives/public_api.mjs +0 -9
- package/esm2022/dot-stepper/agorapulse-ui-components-dot-stepper.mjs +0 -5
- package/esm2022/dot-stepper/dot-stepper.component.mjs +0 -46
- package/esm2022/dot-stepper/public_api.mjs +0 -2
- package/esm2022/form-field/agorapulse-ui-components-form-field.mjs +0 -5
- package/esm2022/form-field/form-field.component.mjs +0 -11
- package/esm2022/form-field/public_api.mjs +0 -2
- package/esm2022/form-message/agorapulse-ui-components-form-message.mjs +0 -5
- package/esm2022/form-message/form-message.component.mjs +0 -34
- package/esm2022/form-message/public_api.mjs +0 -2
- package/esm2022/icon-button/agorapulse-ui-components-icon-button.mjs +0 -5
- package/esm2022/icon-button/icon-button.component.mjs +0 -123
- package/esm2022/icon-button/public_api.mjs +0 -2
- package/esm2022/index.mjs +0 -49
- package/esm2022/infobox/agorapulse-ui-components-infobox.mjs +0 -5
- package/esm2022/infobox/infobox.component.mjs +0 -72
- package/esm2022/infobox/public_api.mjs +0 -2
- package/esm2022/input/agorapulse-ui-components-input.mjs +0 -5
- package/esm2022/input/input.directive.mjs +0 -19
- package/esm2022/input/public_api.mjs +0 -2
- package/esm2022/input-group/agorapulse-ui-components-input-group.mjs +0 -5
- package/esm2022/input-group/input-group.component.mjs +0 -14
- package/esm2022/input-group/input-prefix/input-prefix.component.mjs +0 -11
- package/esm2022/input-group/public_api.mjs +0 -3
- package/esm2022/input-search/agorapulse-ui-components-input-search.mjs +0 -5
- package/esm2022/input-search/input-search.component.mjs +0 -78
- package/esm2022/input-search/public_api.mjs +0 -2
- package/esm2022/labels/agorapulse-ui-components-labels.mjs +0 -5
- package/esm2022/labels/label-list.component.mjs +0 -108
- package/esm2022/labels/label.component.mjs +0 -56
- package/esm2022/labels/public_api.mjs +0 -3
- package/esm2022/labels-selector/agorapulse-ui-components-labels-selector.mjs +0 -5
- package/esm2022/labels-selector/labels-selector.component.mjs +0 -122
- package/esm2022/labels-selector/public_api.mjs +0 -2
- package/esm2022/legacy/input/agorapulse-ui-components-legacy-input.mjs +0 -5
- package/esm2022/legacy/input/input.component.mjs +0 -189
- package/esm2022/legacy/input/public_api.mjs +0 -2
- package/esm2022/legacy/select/agorapulse-ui-components-legacy-select.mjs +0 -5
- package/esm2022/legacy/select/public_api.mjs +0 -2
- package/esm2022/legacy/select/select.component.mjs +0 -451
- package/esm2022/legacy/textarea/agorapulse-ui-components-legacy-textarea.mjs +0 -5
- package/esm2022/legacy/textarea/public_api.mjs +0 -2
- package/esm2022/legacy/textarea/textarea.component.mjs +0 -154
- package/esm2022/media-display-overlay/agorapulse-ui-components-media-display-overlay.mjs +0 -5
- package/esm2022/media-display-overlay/media-display-overlay-dialog.component.mjs +0 -122
- package/esm2022/media-display-overlay/public_api.mjs +0 -2
- package/esm2022/modal/agorapulse-ui-components-modal.mjs +0 -5
- package/esm2022/modal/modal.component.mjs +0 -116
- package/esm2022/modal/public_api.mjs +0 -2
- package/esm2022/nav-selector/agorapulse-ui-components-nav-selector.mjs +0 -5
- package/esm2022/nav-selector/directives/nav-selector-popover-trigger.directive.mjs +0 -71
- package/esm2022/nav-selector/directives/tree-node-accessibility.directive.mjs +0 -30
- package/esm2022/nav-selector/nav-selector-category/nav-selector-category.component.mjs +0 -129
- package/esm2022/nav-selector/nav-selector-category/nav-selector-category.presenter.mjs +0 -28
- package/esm2022/nav-selector/nav-selector-group/nav-selector-group.component.mjs +0 -174
- package/esm2022/nav-selector/nav-selector-group/nav-selector-group.presenter.mjs +0 -30
- package/esm2022/nav-selector/nav-selector-leaf/nav-selector-leaf.component.mjs +0 -242
- package/esm2022/nav-selector/nav-selector-leaf/nav-selector-leaf.presenter.mjs +0 -36
- package/esm2022/nav-selector/nav-selector-leaf-detail/nav-selector-leaf-detail.component.mjs +0 -43
- package/esm2022/nav-selector/nav-selector-leaf-detail/nav-selector-leaf-detail.presenter.mjs +0 -20
- package/esm2022/nav-selector/nav-selector-leaf-details/nav-selector-leaf-details.component.mjs +0 -95
- package/esm2022/nav-selector/nav-selector-leaf-details/nav-selector-leaf-details.presenter.mjs +0 -31
- package/esm2022/nav-selector/nav-selector-popover/nav-selector-popover-item.component.mjs +0 -65
- package/esm2022/nav-selector/nav-selector-popover/nav-selector-popover.component.mjs +0 -132
- package/esm2022/nav-selector/nav-selector.component.mjs +0 -201
- package/esm2022/nav-selector/nav-selector.mjs +0 -9
- package/esm2022/nav-selector/nav-selector.state.mjs +0 -207
- package/esm2022/nav-selector/public_api.mjs +0 -3
- package/esm2022/nav-selector/testing/agorapulse-ui-components-nav-selector-testing.mjs +0 -5
- package/esm2022/nav-selector/testing/nav-selector-entry.mock.mjs +0 -91
- package/esm2022/nav-selector/testing/public_api.mjs +0 -2
- package/esm2022/nav-selector/utils/leaf.utils.mjs +0 -44
- package/esm2022/nav-selector/utils/nav-selector.accessibility.mjs +0 -179
- package/esm2022/nav-selector/utils/nav-selector.builder.mjs +0 -271
- package/esm2022/nav-selector/utils/nav-selector.filter.mjs +0 -141
- package/esm2022/nav-selector/utils/nav-selector.folding.mjs +0 -284
- package/esm2022/nav-selector/utils/nav-selector.merger.mjs +0 -76
- package/esm2022/nav-selector/utils/nav-selector.minifying.mjs +0 -59
- package/esm2022/nav-selector/utils/nav-selector.multi-select.mjs +0 -208
- package/esm2022/nav-selector/utils/nav-selector.single-select.mjs +0 -113
- package/esm2022/nav-selector/utils/nav-selector.view-more.mjs +0 -98
- package/esm2022/neo-datepicker/agorapulse-ui-components-neo-datepicker.mjs +0 -5
- package/esm2022/neo-datepicker/day-detail.model.mjs +0 -2
- package/esm2022/neo-datepicker/day-disabled.pipe.mjs +0 -21
- package/esm2022/neo-datepicker/neo-datepicker.component.mjs +0 -241
- package/esm2022/neo-datepicker/public_api.mjs +0 -4
- package/esm2022/notification/agorapulse-ui-components-notification.mjs +0 -5
- package/esm2022/notification/notification.component.mjs +0 -15
- package/esm2022/notification/public_api.mjs +0 -2
- package/esm2022/paginator/agorapulse-ui-components-paginator.mjs +0 -5
- package/esm2022/paginator/paginator-button/paginator-button.component.mjs +0 -51
- package/esm2022/paginator/paginator.component.mjs +0 -114
- package/esm2022/paginator/public_api.mjs +0 -3
- package/esm2022/password-input/agorapulse-ui-components-password-input.mjs +0 -5
- package/esm2022/password-input/password-input.component.mjs +0 -78
- package/esm2022/password-input/public_api.mjs +0 -2
- package/esm2022/phone-number-input/agorapulse-ui-components-phone-number-input.mjs +0 -5
- package/esm2022/phone-number-input/phone-number-input.component.mjs +0 -195
- package/esm2022/phone-number-input/public_api.mjs +0 -2
- package/esm2022/popmenu/agorapulse-ui-components-popmenu.mjs +0 -5
- package/esm2022/popmenu/options.mjs +0 -17
- package/esm2022/popmenu/popmenu-options.interface.mjs +0 -2
- package/esm2022/popmenu/popmenu-options.service.mjs +0 -7
- package/esm2022/popmenu/popmenu.component.mjs +0 -383
- package/esm2022/popmenu/popmenu.directive.mjs +0 -296
- package/esm2022/popmenu/popmenu.module.mjs +0 -29
- package/esm2022/popmenu/public_api.mjs +0 -5
- package/esm2022/radio/agorapulse-ui-components-radio.mjs +0 -5
- package/esm2022/radio/public_api.mjs +0 -2
- package/esm2022/radio/radio.component.mjs +0 -319
- package/esm2022/range-slider/agorapulse-ui-components-range-slider.mjs +0 -5
- package/esm2022/range-slider/public_api.mjs +0 -2
- package/esm2022/range-slider/range-slider.component.mjs +0 -154
- package/esm2022/select/agorapulse-ui-components-select.mjs +0 -5
- package/esm2022/select/ap-select.module.mjs +0 -78
- package/esm2022/select/dropdown-group-item/dropdown-group-item.component.mjs +0 -51
- package/esm2022/select/dropdown-item-multiple-one-line/dropdown-item-multiple-one-line.component.mjs +0 -75
- package/esm2022/select/dropdown-item-multiple-two-lines/dropdown-item-multiple-two-lines.component.mjs +0 -79
- package/esm2022/select/dropdown-item-single-one-line/dropdown-item-single-one-line.component.mjs +0 -59
- package/esm2022/select/dropdown-item-single-two-lines/dropdown-item-single-two-lines.component.mjs +0 -60
- package/esm2022/select/dropdown-search-form/dropdown-search-form.component.mjs +0 -98
- package/esm2022/select/public_api.mjs +0 -13
- package/esm2022/select/select-base.directive.mjs +0 -69
- package/esm2022/select/select-label-multiple/select-label-multiple.component.mjs +0 -95
- package/esm2022/select/select-label-single/select-label-single.component.mjs +0 -33
- package/esm2022/select/select-multiple.directive.mjs +0 -35
- package/esm2022/select/select-single.directive.mjs +0 -34
- package/esm2022/slide-toggle/agorapulse-ui-components-slide-toggle.mjs +0 -5
- package/esm2022/slide-toggle/public_api.mjs +0 -2
- package/esm2022/slide-toggle/slide-toggle.component.mjs +0 -66
- package/esm2022/snackbars-thread/agorapulse-ui-components-snackbars-thread.mjs +0 -5
- package/esm2022/snackbars-thread/component/snackbars-thread.component.mjs +0 -93
- package/esm2022/snackbars-thread/model/snackbars-thread.model.mjs +0 -44
- package/esm2022/snackbars-thread/public_api.mjs +0 -4
- package/esm2022/snackbars-thread/service/snackbars-thread.service.mjs +0 -47
- package/esm2022/snackbars-thread/utils/const/snackbars-thread.const.mjs +0 -13
- package/esm2022/social-button/agorapulse-ui-components-social-button.mjs +0 -5
- package/esm2022/social-button/public_api.mjs +0 -2
- package/esm2022/social-button/social-button.component.mjs +0 -164
- package/esm2022/split-button/agorapulse-ui-components-split-button.mjs +0 -5
- package/esm2022/split-button/public_api.mjs +0 -2
- package/esm2022/split-button/split-button.component.mjs +0 -122
- package/esm2022/src/lib/agorapulse-ui-components.module.mjs +0 -200
- package/esm2022/status/agorapulse-ui-components-status.mjs +0 -5
- package/esm2022/status/public_api.mjs +0 -2
- package/esm2022/status/status.component.mjs +0 -21
- package/esm2022/status-card/agorapulse-ui-components-status-card.mjs +0 -5
- package/esm2022/status-card/public_api.mjs +0 -2
- package/esm2022/status-card/status-card.component.mjs +0 -23
- package/esm2022/stepper/agorapulse-ui-components-stepper.mjs +0 -5
- package/esm2022/stepper/public_api.mjs +0 -3
- package/esm2022/stepper/step.model.mjs +0 -2
- package/esm2022/stepper/stepper.component.mjs +0 -38
- package/esm2022/tag/agorapulse-ui-components-tag.mjs +0 -5
- package/esm2022/tag/public_api.mjs +0 -2
- package/esm2022/tag/tag.component.mjs +0 -35
- package/esm2022/text-measurement/agorapulse-ui-components-text-measurement.mjs +0 -5
- package/esm2022/text-measurement/public_api.mjs +0 -2
- package/esm2022/text-measurement/text-measurement.service.mjs +0 -29
- package/esm2022/textarea/agorapulse-ui-components-textarea.mjs +0 -5
- package/esm2022/textarea/public_api.mjs +0 -2
- package/esm2022/textarea/textarea.directive.mjs +0 -37
- package/esm2022/toggle/agorapulse-ui-components-toggle.mjs +0 -5
- package/esm2022/toggle/public_api.mjs +0 -2
- package/esm2022/toggle/toggle.component.mjs +0 -208
- package/esm2022/tooltip/agorapulse-ui-components-tooltip.mjs +0 -5
- package/esm2022/tooltip/public_api.mjs +0 -2
- package/esm2022/tooltip/tooltip.directive.mjs +0 -401
- package/esm2022/tooltip/tooltip.service.mjs +0 -29
- package/form-field/form-field.component.d.ts +0 -5
- package/form-field/public_api.d.ts +0 -1
- package/form-message/form-message.component.d.ts +0 -12
- package/form-message/public_api.d.ts +0 -1
- package/icon-button/icon-button.component.d.ts +0 -40
- package/icon-button/public_api.d.ts +0 -1
- package/infobox/infobox.component.d.ts +0 -26
- package/infobox/public_api.d.ts +0 -1
- package/input/input.directive.d.ts +0 -7
- package/input/public_api.d.ts +0 -1
- package/input-group/input-group.component.d.ts +0 -6
- package/input-group/input-prefix/input-prefix.component.d.ts +0 -5
- package/input-group/public_api.d.ts +0 -2
- package/input-search/input-search.component.d.ts +0 -32
- package/input-search/public_api.d.ts +0 -1
- package/labels/label-list.component.d.ts +0 -34
- package/labels/label.component.d.ts +0 -23
- package/labels/public_api.d.ts +0 -2
- package/labels-selector/labels-selector.component.d.ts +0 -42
- package/labels-selector/public_api.d.ts +0 -1
- package/legacy/input/input.component.d.ts +0 -64
- package/legacy/input/public_api.d.ts +0 -1
- package/legacy/select/public_api.d.ts +0 -1
- package/legacy/select/select.component.d.ts +0 -122
- package/legacy/textarea/public_api.d.ts +0 -1
- package/legacy/textarea/textarea.component.d.ts +0 -53
- package/media-display-overlay/media-display-overlay-dialog.component.d.ts +0 -42
- package/media-display-overlay/public_api.d.ts +0 -1
- package/modal/modal.component.d.ts +0 -54
- package/modal/public_api.d.ts +0 -1
- package/nav-selector/directives/nav-selector-popover-trigger.directive.d.ts +0 -25
- package/nav-selector/directives/tree-node-accessibility.directive.d.ts +0 -9
- package/nav-selector/nav-selector-category/nav-selector-category.component.d.ts +0 -28
- package/nav-selector/nav-selector-category/nav-selector-category.presenter.d.ts +0 -13
- package/nav-selector/nav-selector-group/nav-selector-group.component.d.ts +0 -37
- package/nav-selector/nav-selector-group/nav-selector-group.presenter.d.ts +0 -16
- package/nav-selector/nav-selector-leaf/nav-selector-leaf.component.d.ts +0 -48
- package/nav-selector/nav-selector-leaf/nav-selector-leaf.presenter.d.ts +0 -18
- package/nav-selector/nav-selector-leaf-detail/nav-selector-leaf-detail.component.d.ts +0 -13
- package/nav-selector/nav-selector-leaf-detail/nav-selector-leaf-detail.presenter.d.ts +0 -10
- package/nav-selector/nav-selector-leaf-details/nav-selector-leaf-details.component.d.ts +0 -24
- package/nav-selector/nav-selector-leaf-details/nav-selector-leaf-details.presenter.d.ts +0 -14
- package/nav-selector/nav-selector-popover/nav-selector-popover-item.component.d.ts +0 -14
- package/nav-selector/nav-selector-popover/nav-selector-popover.component.d.ts +0 -40
- package/nav-selector/nav-selector.component.d.ts +0 -40
- package/nav-selector/nav-selector.d.ts +0 -270
- package/nav-selector/nav-selector.state.d.ts +0 -47
- package/nav-selector/public_api.d.ts +0 -3
- package/nav-selector/testing/nav-selector-entry.mock.d.ts +0 -67
- package/nav-selector/testing/public_api.d.ts +0 -1
- package/nav-selector/utils/leaf.utils.d.ts +0 -20
- package/nav-selector/utils/nav-selector.accessibility.d.ts +0 -52
- package/nav-selector/utils/nav-selector.builder.d.ts +0 -32
- package/nav-selector/utils/nav-selector.filter.d.ts +0 -32
- package/nav-selector/utils/nav-selector.folding.d.ts +0 -73
- package/nav-selector/utils/nav-selector.merger.d.ts +0 -23
- package/nav-selector/utils/nav-selector.minifying.d.ts +0 -29
- package/nav-selector/utils/nav-selector.multi-select.d.ts +0 -54
- package/nav-selector/utils/nav-selector.single-select.d.ts +0 -17
- package/nav-selector/utils/nav-selector.view-more.d.ts +0 -30
- package/neo-datepicker/day-detail.model.d.ts +0 -9
- package/neo-datepicker/day-disabled.pipe.d.ts +0 -8
- package/neo-datepicker/neo-datepicker.component.d.ts +0 -61
- package/neo-datepicker/public_api.d.ts +0 -3
- package/notification/notification.component.d.ts +0 -6
- package/notification/public_api.d.ts +0 -1
- package/paginator/paginator-button/paginator-button.component.d.ts +0 -17
- package/paginator/paginator.component.d.ts +0 -38
- package/paginator/public_api.d.ts +0 -2
- package/password-input/password-input.component.d.ts +0 -33
- package/password-input/public_api.d.ts +0 -1
- package/phone-number-input/phone-number-input.component.d.ts +0 -50
- package/phone-number-input/public_api.d.ts +0 -1
- package/popmenu/options.d.ts +0 -16
- package/popmenu/popmenu-options.interface.d.ts +0 -48
- package/popmenu/popmenu-options.service.d.ts +0 -7
- package/popmenu/popmenu.component.d.ts +0 -66
- package/popmenu/popmenu.directive.d.ts +0 -90
- package/popmenu/popmenu.module.d.ts +0 -11
- package/popmenu/public_api.d.ts +0 -4
- package/radio/public_api.d.ts +0 -1
- package/radio/radio.component.d.ts +0 -77
- package/range-slider/public_api.d.ts +0 -1
- package/range-slider/range-slider.component.d.ts +0 -35
- package/select/ap-select.module.d.ts +0 -17
- package/select/dropdown-group-item/dropdown-group-item.component.d.ts +0 -16
- package/select/dropdown-item-multiple-one-line/dropdown-item-multiple-one-line.component.d.ts +0 -25
- package/select/dropdown-item-multiple-two-lines/dropdown-item-multiple-two-lines.component.d.ts +0 -26
- package/select/dropdown-item-single-one-line/dropdown-item-single-one-line.component.d.ts +0 -20
- package/select/dropdown-item-single-two-lines/dropdown-item-single-two-lines.component.d.ts +0 -20
- package/select/dropdown-search-form/dropdown-search-form.component.d.ts +0 -32
- package/select/public_api.d.ts +0 -12
- package/select/select-base.directive.d.ts +0 -18
- package/select/select-label-multiple/select-label-multiple.component.d.ts +0 -27
- package/select/select-label-single/select-label-single.component.d.ts +0 -12
- package/select/select-multiple.directive.d.ts +0 -10
- package/select/select-single.directive.d.ts +0 -10
- package/slide-toggle/public_api.d.ts +0 -1
- package/slide-toggle/slide-toggle.component.d.ts +0 -20
- package/snackbars-thread/component/snackbars-thread.component.d.ts +0 -24
- package/snackbars-thread/model/snackbars-thread.model.d.ts +0 -36
- package/snackbars-thread/public_api.d.ts +0 -3
- package/snackbars-thread/service/snackbars-thread.service.d.ts +0 -15
- package/snackbars-thread/utils/const/snackbars-thread.const.d.ts +0 -10
- package/social-button/public_api.d.ts +0 -1
- package/social-button/social-button.component.d.ts +0 -32
- package/split-button/public_api.d.ts +0 -1
- package/split-button/split-button.component.d.ts +0 -45
- package/src/lib/agorapulse-ui-components.module.d.ts +0 -29
- package/status/public_api.d.ts +0 -1
- package/status/status.component.d.ts +0 -9
- package/status-card/public_api.d.ts +0 -1
- package/status-card/status-card.component.d.ts +0 -13
- package/stepper/public_api.d.ts +0 -2
- package/stepper/step.model.d.ts +0 -6
- package/stepper/stepper.component.d.ts +0 -16
- package/tag/public_api.d.ts +0 -1
- package/tag/tag.component.d.ts +0 -24
- package/text-measurement/public_api.d.ts +0 -1
- package/text-measurement/text-measurement.service.d.ts +0 -8
- package/textarea/public_api.d.ts +0 -1
- package/textarea/textarea.directive.d.ts +0 -11
- package/toggle/public_api.d.ts +0 -1
- package/toggle/toggle.component.d.ts +0 -52
- package/tooltip/public_api.d.ts +0 -1
- package/tooltip/tooltip.directive.d.ts +0 -59
- package/tooltip/tooltip.service.d.ts +0 -11
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './modal.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9tb2RhbC9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tb2RhbC5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public_api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdvcmFwdWxzZS11aS1jb21wb25lbnRzLW5hdi1zZWxlY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9uYXYtc2VsZWN0b3Ivc3JjL2Fnb3JhcHVsc2UtdWktY29tcG9uZW50cy1uYXYtc2VsZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { Directive, effect, input, untracked } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class NavSelectorPopoverTriggerDirective {
|
|
4
|
-
el;
|
|
5
|
-
renderer;
|
|
6
|
-
apNavSelectorPopoverTrigger = input.required();
|
|
7
|
-
apNavSelectorPopoverTriggerMode = input({
|
|
8
|
-
click: true,
|
|
9
|
-
keyboard: [],
|
|
10
|
-
hover: false,
|
|
11
|
-
focus: false,
|
|
12
|
-
});
|
|
13
|
-
apNavSelectorPopoverDisabled = input(false);
|
|
14
|
-
ACTIVE_CLASS = 'nav-selector-popover-trigger--active';
|
|
15
|
-
constructor(el, renderer) {
|
|
16
|
-
this.el = el;
|
|
17
|
-
this.renderer = renderer;
|
|
18
|
-
effect(() => {
|
|
19
|
-
const displayed = this.apNavSelectorPopoverTrigger().navSelectorPopoverDisplayed();
|
|
20
|
-
untracked(() => {
|
|
21
|
-
if (displayed) {
|
|
22
|
-
this.renderer.addClass(this.el.nativeElement, this.ACTIVE_CLASS);
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
this.renderer.removeClass(this.el.nativeElement, this.ACTIVE_CLASS);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
onClick(event) {
|
|
31
|
-
if (!this.apNavSelectorPopoverTriggerMode().click || this.apNavSelectorPopoverDisabled()) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
event.stopImmediatePropagation();
|
|
35
|
-
this.toggleDisplay();
|
|
36
|
-
}
|
|
37
|
-
onKeydown(event) {
|
|
38
|
-
if (this.apNavSelectorPopoverTriggerMode().keyboard?.includes(event.code) && !this.apNavSelectorPopoverDisabled()) {
|
|
39
|
-
this.toggleDisplay();
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
onMouseEnter() {
|
|
43
|
-
if (this.apNavSelectorPopoverTriggerMode().hover && !this.apNavSelectorPopoverDisabled()) {
|
|
44
|
-
this.apNavSelectorPopoverTrigger().display(this.el);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
onMouseLeave() {
|
|
48
|
-
if (this.apNavSelectorPopoverTriggerMode().hover) {
|
|
49
|
-
this.apNavSelectorPopoverTrigger().hide();
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
toggleDisplay() {
|
|
53
|
-
this.apNavSelectorPopoverTrigger().toggle(this.el);
|
|
54
|
-
}
|
|
55
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NavSelectorPopoverTriggerDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
56
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.9", type: NavSelectorPopoverTriggerDirective, isStandalone: true, selector: "[apNavSelectorPopoverTrigger]", inputs: { apNavSelectorPopoverTrigger: { classPropertyName: "apNavSelectorPopoverTrigger", publicName: "apNavSelectorPopoverTrigger", isSignal: true, isRequired: true, transformFunction: null }, apNavSelectorPopoverTriggerMode: { classPropertyName: "apNavSelectorPopoverTriggerMode", publicName: "apNavSelectorPopoverTriggerMode", isSignal: true, isRequired: false, transformFunction: null }, apNavSelectorPopoverDisabled: { classPropertyName: "apNavSelectorPopoverDisabled", publicName: "apNavSelectorPopoverDisabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "onClick($event)", "keydown": "onKeydown($event)", "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" } }, ngImport: i0 });
|
|
57
|
-
}
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NavSelectorPopoverTriggerDirective, decorators: [{
|
|
59
|
-
type: Directive,
|
|
60
|
-
args: [{
|
|
61
|
-
selector: '[apNavSelectorPopoverTrigger]',
|
|
62
|
-
standalone: true,
|
|
63
|
-
host: {
|
|
64
|
-
'(click)': 'onClick($event)',
|
|
65
|
-
'(keydown)': 'onKeydown($event)',
|
|
66
|
-
'(mouseenter)': 'onMouseEnter()',
|
|
67
|
-
'(mouseleave)': 'onMouseLeave()',
|
|
68
|
-
},
|
|
69
|
-
}]
|
|
70
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }] });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LXNlbGVjdG9yLXBvcG92ZXItdHJpZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbmF2LXNlbGVjdG9yL3NyYy9kaXJlY3RpdmVzL25hdi1zZWxlY3Rvci1wb3BvdmVyLXRyaWdnZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFjLEtBQUssRUFBYSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBb0IzRixNQUFNLE9BQU8sa0NBQWtDO0lBYS9CO0lBQ0E7SUFiWiwyQkFBMkIsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUErQixDQUFDO0lBQzVFLCtCQUErQixHQUFHLEtBQUssQ0FBeUM7UUFDNUUsS0FBSyxFQUFFLElBQUk7UUFDWCxRQUFRLEVBQUUsRUFBRTtRQUNaLEtBQUssRUFBRSxLQUFLO1FBQ1osS0FBSyxFQUFFLEtBQUs7S0FDZixDQUFDLENBQUM7SUFDSCw0QkFBNEIsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7SUFFcEMsWUFBWSxHQUFHLHNDQUFzQyxDQUFDO0lBRXZFLFlBQ1ksRUFBYyxFQUNkLFFBQW1CO1FBRG5CLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRTNCLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDUixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1lBQ25GLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1gsSUFBSSxTQUFTLEVBQUUsQ0FBQztvQkFDWixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ3JFLENBQUM7cUJBQU0sQ0FBQztvQkFDSixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ3hFLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFZO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLDRCQUE0QixFQUFFLEVBQUUsQ0FBQztZQUN2RixPQUFPO1FBQ1gsQ0FBQztRQUNELEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQW9CO1FBQzFCLElBQUksSUFBSSxDQUFDLCtCQUErQixFQUFFLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsRUFBRSxDQUFDO1lBQ2hILElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVk7UUFDUixJQUFJLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxFQUFFLENBQUM7WUFDdkYsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVk7UUFDUixJQUFJLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzlDLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYTtRQUNqQixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7dUdBeERRLGtDQUFrQzsyRkFBbEMsa0NBQWtDOzsyRkFBbEMsa0NBQWtDO2tCQVY5QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwrQkFBK0I7b0JBQ3pDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsU0FBUyxFQUFFLGlCQUFpQjt3QkFDNUIsV0FBVyxFQUFFLG1CQUFtQjt3QkFDaEMsY0FBYyxFQUFFLGdCQUFnQjt3QkFDaEMsY0FBYyxFQUFFLGdCQUFnQjtxQkFDbkM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGVmZmVjdCwgRWxlbWVudFJlZiwgaW5wdXQsIFJlbmRlcmVyMiwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZTZWxlY3RvclBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuLi9uYXYtc2VsZWN0b3ItcG9wb3Zlci9uYXYtc2VsZWN0b3ItcG9wb3Zlci5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBOYXZTZWxlY3RvclBvcG92ZXJUcmlnZ2VyTW9kZSA9IHtcbiAgICBjbGljazogYm9vbGVhbjtcbiAgICBob3ZlcjogYm9vbGVhbjtcbiAgICBmb2N1czogYm9vbGVhbjtcbiAgICBrZXlib2FyZDogKCdTcGFjZScgfCAnRW50ZXInIHwgc3RyaW5nKVtdO1xufTtcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbYXBOYXZTZWxlY3RvclBvcG92ZXJUcmlnZ2VyXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoY2xpY2spJzogJ29uQ2xpY2soJGV2ZW50KScsXG4gICAgICAgICcoa2V5ZG93biknOiAnb25LZXlkb3duKCRldmVudCknLFxuICAgICAgICAnKG1vdXNlZW50ZXIpJzogJ29uTW91c2VFbnRlcigpJyxcbiAgICAgICAgJyhtb3VzZWxlYXZlKSc6ICdvbk1vdXNlTGVhdmUoKScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgTmF2U2VsZWN0b3JQb3BvdmVyVHJpZ2dlckRpcmVjdGl2ZSB7XG4gICAgYXBOYXZTZWxlY3RvclBvcG92ZXJUcmlnZ2VyID0gaW5wdXQucmVxdWlyZWQ8TmF2U2VsZWN0b3JQb3BvdmVyQ29tcG9uZW50PigpO1xuICAgIGFwTmF2U2VsZWN0b3JQb3BvdmVyVHJpZ2dlck1vZGUgPSBpbnB1dDxQYXJ0aWFsPE5hdlNlbGVjdG9yUG9wb3ZlclRyaWdnZXJNb2RlPj4oe1xuICAgICAgICBjbGljazogdHJ1ZSxcbiAgICAgICAga2V5Ym9hcmQ6IFtdLFxuICAgICAgICBob3ZlcjogZmFsc2UsXG4gICAgICAgIGZvY3VzOiBmYWxzZSxcbiAgICB9KTtcbiAgICBhcE5hdlNlbGVjdG9yUG9wb3ZlckRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBBQ1RJVkVfQ0xBU1MgPSAnbmF2LXNlbGVjdG9yLXBvcG92ZXItdHJpZ2dlci0tYWN0aXZlJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjJcbiAgICApIHtcbiAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGRpc3BsYXllZCA9IHRoaXMuYXBOYXZTZWxlY3RvclBvcG92ZXJUcmlnZ2VyKCkubmF2U2VsZWN0b3JQb3BvdmVyRGlzcGxheWVkKCk7XG4gICAgICAgICAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChkaXNwbGF5ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMuQUNUSVZFX0NMQVNTKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgdGhpcy5BQ1RJVkVfQ0xBU1MpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNsaWNrKGV2ZW50OiBFdmVudCkge1xuICAgICAgICBpZiAoIXRoaXMuYXBOYXZTZWxlY3RvclBvcG92ZXJUcmlnZ2VyTW9kZSgpLmNsaWNrIHx8IHRoaXMuYXBOYXZTZWxlY3RvclBvcG92ZXJEaXNhYmxlZCgpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMudG9nZ2xlRGlzcGxheSgpO1xuICAgIH1cblxuICAgIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5hcE5hdlNlbGVjdG9yUG9wb3ZlclRyaWdnZXJNb2RlKCkua2V5Ym9hcmQ/LmluY2x1ZGVzKGV2ZW50LmNvZGUpICYmICF0aGlzLmFwTmF2U2VsZWN0b3JQb3BvdmVyRGlzYWJsZWQoKSkge1xuICAgICAgICAgICAgdGhpcy50b2dnbGVEaXNwbGF5KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbk1vdXNlRW50ZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLmFwTmF2U2VsZWN0b3JQb3BvdmVyVHJpZ2dlck1vZGUoKS5ob3ZlciAmJiAhdGhpcy5hcE5hdlNlbGVjdG9yUG9wb3ZlckRpc2FibGVkKCkpIHtcbiAgICAgICAgICAgIHRoaXMuYXBOYXZTZWxlY3RvclBvcG92ZXJUcmlnZ2VyKCkuZGlzcGxheSh0aGlzLmVsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTW91c2VMZWF2ZSgpIHtcbiAgICAgICAgaWYgKHRoaXMuYXBOYXZTZWxlY3RvclBvcG92ZXJUcmlnZ2VyTW9kZSgpLmhvdmVyKSB7XG4gICAgICAgICAgICB0aGlzLmFwTmF2U2VsZWN0b3JQb3BvdmVyVHJpZ2dlcigpLmhpZGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdG9nZ2xlRGlzcGxheSgpIHtcbiAgICAgICAgdGhpcy5hcE5hdlNlbGVjdG9yUG9wb3ZlclRyaWdnZXIoKS50b2dnbGUodGhpcy5lbCk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { afterRender, Directive, input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class TreeNodeAccessibilityDirective {
|
|
4
|
-
apTreeNodeAccessibility = input.required();
|
|
5
|
-
constructor(el, renderer) {
|
|
6
|
-
afterRender(() => {
|
|
7
|
-
const nativeEl = el.nativeElement;
|
|
8
|
-
const entry = this.apTreeNodeAccessibility();
|
|
9
|
-
renderer.setAttribute(nativeEl, 'aria-level', `${entry.accessibility.ariaLevel}`);
|
|
10
|
-
renderer.setAttribute(nativeEl, 'aria-setsize', `${entry.accessibility.ariaSetsize}`);
|
|
11
|
-
renderer.setAttribute(nativeEl, 'aria-posinset', `${entry.accessibility.ariaPosinset}`);
|
|
12
|
-
renderer.setAttribute(nativeEl, 'tabindex', `${entry.accessibility.tabIndex}`);
|
|
13
|
-
renderer.setAttribute(nativeEl, 'aria-label', `${entry.alias}`);
|
|
14
|
-
if ('folded' in entry) {
|
|
15
|
-
renderer.setAttribute(nativeEl, 'aria-expanded', `${entry.folded}`);
|
|
16
|
-
}
|
|
17
|
-
renderer.setAttribute(nativeEl, 'role', 'treeitem');
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: TreeNodeAccessibilityDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
21
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.9", type: TreeNodeAccessibilityDirective, isStandalone: true, selector: "[apTreeNodeAccessibility]", inputs: { apTreeNodeAccessibility: { classPropertyName: "apTreeNodeAccessibility", publicName: "apTreeNodeAccessibility", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });
|
|
22
|
-
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: TreeNodeAccessibilityDirective, decorators: [{
|
|
24
|
-
type: Directive,
|
|
25
|
-
args: [{
|
|
26
|
-
selector: '[apTreeNodeAccessibility]',
|
|
27
|
-
standalone: true,
|
|
28
|
-
}]
|
|
29
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }] });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLWFjY2Vzc2liaWxpdHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL25hdi1zZWxlY3Rvci9zcmMvZGlyZWN0aXZlcy90cmVlLW5vZGUtYWNjZXNzaWJpbGl0eS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDOztBQU9yRixNQUFNLE9BQU8sOEJBQThCO0lBQ3ZDLHVCQUF1QixHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQTRCLENBQUM7SUFFckUsWUFBWSxFQUFjLEVBQUUsUUFBbUI7UUFDM0MsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUNiLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUM7WUFDbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7WUFDN0MsUUFBUSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1lBQ2xGLFFBQVEsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLGNBQWMsRUFBRSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN0RixRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxlQUFlLEVBQUUsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7WUFDeEYsUUFBUSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQy9FLFFBQVEsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLElBQUksUUFBUSxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNwQixRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxlQUFlLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztZQUN4RSxDQUFDO1lBQ0QsUUFBUSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt1R0FqQlEsOEJBQThCOzJGQUE5Qiw4QkFBOEI7OzJGQUE5Qiw4QkFBOEI7a0JBSjFDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWZ0ZXJSZW5kZXIsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW50ZXJuYWxOYXZTZWxlY3RvckVudHJ5IH0gZnJvbSAnLi4vbmF2LXNlbGVjdG9yJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbYXBUcmVlTm9kZUFjY2Vzc2liaWxpdHldJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBUcmVlTm9kZUFjY2Vzc2liaWxpdHlEaXJlY3RpdmUge1xuICAgIGFwVHJlZU5vZGVBY2Nlc3NpYmlsaXR5ID0gaW5wdXQucmVxdWlyZWQ8SW50ZXJuYWxOYXZTZWxlY3RvckVudHJ5PigpO1xuXG4gICAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcbiAgICAgICAgYWZ0ZXJSZW5kZXIoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmF0aXZlRWwgPSBlbC5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmFwVHJlZU5vZGVBY2Nlc3NpYmlsaXR5KCk7XG4gICAgICAgICAgICByZW5kZXJlci5zZXRBdHRyaWJ1dGUobmF0aXZlRWwsICdhcmlhLWxldmVsJywgYCR7ZW50cnkuYWNjZXNzaWJpbGl0eS5hcmlhTGV2ZWx9YCk7XG4gICAgICAgICAgICByZW5kZXJlci5zZXRBdHRyaWJ1dGUobmF0aXZlRWwsICdhcmlhLXNldHNpemUnLCBgJHtlbnRyeS5hY2Nlc3NpYmlsaXR5LmFyaWFTZXRzaXplfWApO1xuICAgICAgICAgICAgcmVuZGVyZXIuc2V0QXR0cmlidXRlKG5hdGl2ZUVsLCAnYXJpYS1wb3NpbnNldCcsIGAke2VudHJ5LmFjY2Vzc2liaWxpdHkuYXJpYVBvc2luc2V0fWApO1xuICAgICAgICAgICAgcmVuZGVyZXIuc2V0QXR0cmlidXRlKG5hdGl2ZUVsLCAndGFiaW5kZXgnLCBgJHtlbnRyeS5hY2Nlc3NpYmlsaXR5LnRhYkluZGV4fWApO1xuICAgICAgICAgICAgcmVuZGVyZXIuc2V0QXR0cmlidXRlKG5hdGl2ZUVsLCAnYXJpYS1sYWJlbCcsIGAke2VudHJ5LmFsaWFzfWApO1xuICAgICAgICAgICAgaWYgKCdmb2xkZWQnIGluIGVudHJ5KSB7XG4gICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0QXR0cmlidXRlKG5hdGl2ZUVsLCAnYXJpYS1leHBhbmRlZCcsIGAke2VudHJ5LmZvbGRlZH1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlbmRlcmVyLnNldEF0dHJpYnV0ZShuYXRpdmVFbCwgJ3JvbGUnLCAndHJlZWl0ZW0nKTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import { TooltipDirective } from '@agorapulse/ui-components/tooltip';
|
|
2
|
-
import { apChevronDown, apChevronUp, SymbolComponent, withSymbols } from '@agorapulse/ui-symbol';
|
|
3
|
-
import { animate, keyframes, state, style, transition, trigger } from '@angular/animations';
|
|
4
|
-
import { afterRender, ChangeDetectionStrategy, Component, computed, effect, input, output, signal, untracked, viewChild, } from '@angular/core';
|
|
5
|
-
import { TreeNodeAccessibilityDirective } from '../directives/tree-node-accessibility.directive';
|
|
6
|
-
import { NavSelectorGroupComponent } from '../nav-selector-group/nav-selector-group.component';
|
|
7
|
-
import { NavSelectorLeafComponent } from '../nav-selector-leaf/nav-selector-leaf.component';
|
|
8
|
-
import { computeNumberOfDisplayableChildrenOnUnfold } from '../utils/leaf.utils';
|
|
9
|
-
import { NavSelectorCategoryPresenter } from './nav-selector-category.presenter';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "./nav-selector-category.presenter";
|
|
12
|
-
export class NavSelectorCategoryComponent {
|
|
13
|
-
el;
|
|
14
|
-
navSelectorCategoryPresenter;
|
|
15
|
-
category = input.required();
|
|
16
|
-
actionClicked = output();
|
|
17
|
-
foldSymbol = computed(() => (this.category().folded ? 'chevron-down' : 'chevron-up'));
|
|
18
|
-
foldedWithDelay = signal(true);
|
|
19
|
-
animationState = computed(() => (this.category().folded ? 'collapsed' : 'expanded'));
|
|
20
|
-
aliasEl = viewChild('alias');
|
|
21
|
-
aliasBoundedClientRect = signal({
|
|
22
|
-
offsetWidth: 0,
|
|
23
|
-
offsetHeight: 0,
|
|
24
|
-
scrollWidth: 0,
|
|
25
|
-
scrollHeight: 0,
|
|
26
|
-
});
|
|
27
|
-
tooltipContent = computed(() => {
|
|
28
|
-
const el = this.aliasBoundedClientRect();
|
|
29
|
-
if (!this.navSelectorCategoryPresenter.expanded() || el.offsetWidth < el.scrollWidth || el.offsetHeight < el.scrollHeight) {
|
|
30
|
-
return this.category().alias;
|
|
31
|
-
}
|
|
32
|
-
return '';
|
|
33
|
-
});
|
|
34
|
-
tooltipDisabled = computed(() => !this.tooltipContent().length);
|
|
35
|
-
constructor(el, navSelectorCategoryPresenter) {
|
|
36
|
-
this.el = el;
|
|
37
|
-
this.navSelectorCategoryPresenter = navSelectorCategoryPresenter;
|
|
38
|
-
afterRender(() => untracked(() => {
|
|
39
|
-
const maxHeight = this.computeMaxHeight();
|
|
40
|
-
if (this.maxHeight() !== maxHeight) {
|
|
41
|
-
this.maxHeight.set(maxHeight);
|
|
42
|
-
}
|
|
43
|
-
this.updateAliasBoundedClientRect();
|
|
44
|
-
}));
|
|
45
|
-
effect(() => {
|
|
46
|
-
const folded = this.category().folded;
|
|
47
|
-
untracked(() => {
|
|
48
|
-
if (folded) {
|
|
49
|
-
setTimeout(() => this.foldedWithDelay.set(true), 150);
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
this.foldedWithDelay.set(false);
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
maxHeight = signal('0px');
|
|
58
|
-
computeMaxHeight() {
|
|
59
|
-
let maxHeight = this.el.nativeElement.clientHeight;
|
|
60
|
-
if (this.category().folded) {
|
|
61
|
-
const numberOfDisplayableChildren = computeNumberOfDisplayableChildrenOnUnfold(this.category());
|
|
62
|
-
maxHeight = this.el.nativeElement.clientHeight * numberOfDisplayableChildren;
|
|
63
|
-
}
|
|
64
|
-
return `${maxHeight}px`;
|
|
65
|
-
}
|
|
66
|
-
updateAliasBoundedClientRect() {
|
|
67
|
-
const el = this.aliasEl()?.nativeElement;
|
|
68
|
-
if (el) {
|
|
69
|
-
const boundedClientRect = {
|
|
70
|
-
offsetWidth: el.offsetWidth,
|
|
71
|
-
offsetHeight: el.offsetHeight,
|
|
72
|
-
scrollWidth: el.scrollWidth,
|
|
73
|
-
scrollHeight: el.scrollHeight,
|
|
74
|
-
};
|
|
75
|
-
if (JSON.stringify(this.aliasBoundedClientRect()) !== JSON.stringify(boundedClientRect)) {
|
|
76
|
-
this.aliasBoundedClientRect.set(boundedClientRect);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NavSelectorCategoryComponent, deps: [{ token: i0.ElementRef }, { token: i1.NavSelectorCategoryPresenter }], target: i0.ɵɵFactoryTarget.Component });
|
|
81
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: NavSelectorCategoryComponent, isStandalone: true, selector: "ap-nav-selector-category", inputs: { category: { classPropertyName: "category", publicName: "category", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { actionClicked: "actionClicked" }, host: { listeners: { "keydown.arrowLeft": "navSelectorCategoryPresenter.fold($event, this.category())", "keydown.arrowRight": "navSelectorCategoryPresenter.unfold($event, this.category())" }, properties: { "class.minified": "!navSelectorCategoryPresenter.expanded()" } }, providers: [withSymbols(apChevronDown, apChevronUp), NavSelectorCategoryPresenter], viewQueries: [{ propertyName: "aliasEl", first: true, predicate: ["alias"], descendants: true, isSignal: true }], ngImport: i0, template: "<!-- eslint-disable @angular-eslint/template/interactive-supports-focus -->\n@if (navSelectorCategoryPresenter.expanded()) {\n <div\n class=\"content\"\n apTooltipPosition=\"right\"\n [apTooltip]=\"tooltipContent()\"\n [apTooltipDisabled]=\"tooltipDisabled()\"\n [apTreeNodeAccessibility]=\"category()\"\n (keydown.space)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\"\n (keydown.enter)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\"\n (click)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\">\n <span\n #alias\n class=\"caption\">\n {{ category().alias }}\n </span>\n\n <ap-symbol\n class=\"folding-button\"\n size=\"sm\"\n [symbolId]=\"foldSymbol()\" />\n </div>\n\n <div\n class=\"children-container\"\n [@accordion]=\"{\n value: animationState(),\n params: {\n maxHeight: maxHeight(),\n },\n }\">\n @if (!foldedWithDelay()) {\n <div class=\"children\">\n @if (category().children.length === 0) {\n @if (category().emptyStateTitle) {\n <div class=\"empty-state\">\n {{ category().emptyStateTitle }}\n </div>\n }\n } @else {\n @for (child of category().children; track child.uid) {\n @if (!child.hidden) {\n <div\n class=\"entry\"\n [class.folder]=\"child.type === 'GROUP'\">\n @if (child.type === 'LEAF') {\n <ap-nav-selector-leaf\n [leaf]=\"child\"\n (actionClicked)=\"actionClicked.emit($event)\" />\n } @else if (child.type === 'GROUP') {\n <ap-nav-selector-group\n [group]=\"child\"\n (actionClicked)=\"actionClicked.emit($event)\" />\n }\n </div>\n }\n }\n }\n </div>\n }\n </div>\n} @else {\n <div\n class=\"content\"\n apTooltipPosition=\"right\"\n [apTreeNodeAccessibility]=\"category()\"\n [apTooltip]=\"tooltipContent()\"\n [apTooltipDisabled]=\"tooltipDisabled()\"\n (click)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\"\n (keydown.space)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\"\n (keydown.enter)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\">\n <div class=\"name-container\">\n <span class=\"caption\">{{ category().alias }}</span>\n </div>\n\n <div class=\"toggle\">\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"foldSymbol()\" />\n </div>\n </div>\n\n <div\n class=\"children-container\"\n [@accordion]=\"{\n value: animationState(),\n params: {\n maxHeight: maxHeight(),\n },\n }\">\n @if (!foldedWithDelay()) {\n <div class=\"children\">\n @for (child of category().children; track child.uid) {\n @if (!child.hidden) {\n <div\n class=\"entry\"\n [class.folder]=\"child.type === 'GROUP'\">\n @if (child.type === 'LEAF') {\n <ap-nav-selector-leaf\n [leaf]=\"child\"\n (actionClicked)=\"actionClicked.emit($event)\" />\n } @else if (child.type === 'GROUP') {\n <ap-nav-selector-group\n [group]=\"child\"\n (actionClicked)=\"actionClicked.emit($event)\" />\n }\n </div>\n }\n }\n </div>\n }\n </div>\n}\n", styles: [":host{display:flex;align-items:center;flex-shrink:0;align-self:stretch;flex-direction:column}:host .children-container{align-self:stretch}:host .children-container .empty-state{font-size:var(--ref-font-size-xs);font-weight:var(--ref-font-weight-regular);font-style:italic;color:var(--ref-color-grey-80);padding:var(--ref-spacing-xxs)}:host .folding-button{display:flex;width:16px;height:16px;justify-content:center;align-items:center;flex-shrink:0}:host .content{padding:0 var(--ref-spacing-xxs);display:flex;height:36px;align-items:center;gap:var(--ref-spacing-xxs);flex-shrink:0;flex-grow:1;align-self:stretch;cursor:pointer}:host .content:hover{border-radius:var(--ref-border-radius-sm);background:var(--ref-color-electric-blue-10)}:host .content:active{border-radius:var(--ref-border-radius-sm);background:var(--ref-color-electric-blue-20)}:host .content:focus-visible{outline:none;border-radius:var(--ref-border-radius-sm);background:var(--ref-color-electric-blue-10);box-shadow:0 0 0 1px var(--ref-color-white),0 0 0 3px var(--ref-color-electric-blue-100)}:host ap-symbol[symbol-id=chevron-down],:host ap-symbol[symbol-id=chevron-up]{color:var(--ref-color-grey-80)}:host .caption{-webkit-box-orient:vertical;-webkit-line-clamp:1;flex:1 0 0;overflow:hidden;white-space:nowrap;color:var(--ref-color-grey-100);text-overflow:ellipsis;font-family:Averta;font-size:var(--sys-text-style-h4-size);font-style:normal;font-weight:var(--ref-font-weight-bold);line-height:var(--ref-font-line-height-md)}:host .children{display:flex;flex-direction:column;align-items:flex-start;flex:1 0 0;align-self:stretch}:host .children .entry{display:flex;flex-direction:column;align-items:flex-start;flex:1 0 0;align-self:stretch;margin-left:calc(-1 * var(--ref-spacing-xxs));margin-right:calc(-1 * var(--ref-spacing-xxs))}:host .children .entry.folder{padding:var(--ref-spacing-xxs);border-bottom:1px solid var(--sys-border-color-default)}:host .children .entry.folder+.entry:not(.folder){padding-top:var(--ref-spacing-xxs)}:host .children .entry.folder:first-child{padding-top:0}:host .children .entry.folder:last-child{border-bottom:none;padding-bottom:0}:host .children .entry:not(.folder){padding-left:var(--ref-spacing-xxs);padding-right:var(--ref-spacing-xxs)}:host .children .entry:not(.folder):first-child:not(:last-child){padding-top:var(--ref-spacing-xxs)}:host .children .entry:not(.folder):last-child:not(:first-child){padding-bottom:var(--ref-spacing-xxs);border-bottom:none}:host .children .entry:not(.folder):has(+.entry.folder){padding-bottom:var(--ref-spacing-xxs)}:host .children .entry:not(.folder)+.entry.folder{border-top:1px solid var(--sys-border-color-default)}:host.minified .name-container{overflow:hidden;display:flex}:host.minified .name-container span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:inline-block}:host.minified .caption{white-space:nowrap}:host.minified .content{position:relative}:host.minified .content .toggle{position:absolute;display:none}:host.minified .content:hover .toggle,:host.minified .content:focus-visible .toggle{inset:0;display:flex;justify-content:center;align-items:center}:host.minified .content:hover .name-container,:host.minified .content:focus-visible .name-container{display:none}\n"], dependencies: [{ kind: "component", type: NavSelectorLeafComponent, selector: "ap-nav-selector-leaf", inputs: ["leaf"], outputs: ["actionClicked"] }, { kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }, { kind: "component", type: NavSelectorGroupComponent, selector: "ap-nav-selector-group", inputs: ["group"], outputs: ["actionClicked"] }, { kind: "directive", type: TreeNodeAccessibilityDirective, selector: "[apTreeNodeAccessibility]", inputs: ["apTreeNodeAccessibility"] }, { kind: "directive", type: TooltipDirective, selector: "[apTooltip]", inputs: ["apTooltip", "apTooltipPosition", "apTooltipShowDelay", "apTooltipHideDelay", "apTooltipDuration", "apTooltipDisabled", "apTooltipTruncatedTextOnly", "apTooltipTemplateContext", "apTooltipVirtualScrollElement"] }], animations: [
|
|
82
|
-
/**
|
|
83
|
-
* Overflow hidden is put only during the animation and on the collapsed state because if it is put on the expanded state then children’s border will be cut (hover / focus)
|
|
84
|
-
*/
|
|
85
|
-
trigger('accordion', [
|
|
86
|
-
state('collapsed', style({
|
|
87
|
-
maxHeight: 0,
|
|
88
|
-
overflow: 'hidden',
|
|
89
|
-
})),
|
|
90
|
-
state('expanded', style({
|
|
91
|
-
maxHeight: 'initial',
|
|
92
|
-
})),
|
|
93
|
-
transition('collapsed => expanded', [
|
|
94
|
-
animate('250ms cubic-bezier(.4, 0, .3, 1)', style({ overflow: 'hidden', maxHeight: '{{maxHeight}}' })),
|
|
95
|
-
]),
|
|
96
|
-
transition('expanded => collapsed', [
|
|
97
|
-
animate('250ms cubic-bezier(.4, 0, .3, 1)', keyframes([style({ maxHeight: '{{maxHeight}}' }), style({ overflow: 'hidden', maxHeight: 0 })])),
|
|
98
|
-
]),
|
|
99
|
-
]),
|
|
100
|
-
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
101
|
-
}
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NavSelectorCategoryComponent, decorators: [{
|
|
103
|
-
type: Component,
|
|
104
|
-
args: [{ selector: 'ap-nav-selector-category', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NavSelectorLeafComponent, SymbolComponent, NavSelectorGroupComponent, TreeNodeAccessibilityDirective, TooltipDirective], providers: [withSymbols(apChevronDown, apChevronUp), NavSelectorCategoryPresenter], host: {
|
|
105
|
-
'[class.minified]': '!navSelectorCategoryPresenter.expanded()',
|
|
106
|
-
'(keydown.arrowLeft)': 'navSelectorCategoryPresenter.fold($event, this.category())',
|
|
107
|
-
'(keydown.arrowRight)': 'navSelectorCategoryPresenter.unfold($event, this.category())',
|
|
108
|
-
}, animations: [
|
|
109
|
-
/**
|
|
110
|
-
* Overflow hidden is put only during the animation and on the collapsed state because if it is put on the expanded state then children’s border will be cut (hover / focus)
|
|
111
|
-
*/
|
|
112
|
-
trigger('accordion', [
|
|
113
|
-
state('collapsed', style({
|
|
114
|
-
maxHeight: 0,
|
|
115
|
-
overflow: 'hidden',
|
|
116
|
-
})),
|
|
117
|
-
state('expanded', style({
|
|
118
|
-
maxHeight: 'initial',
|
|
119
|
-
})),
|
|
120
|
-
transition('collapsed => expanded', [
|
|
121
|
-
animate('250ms cubic-bezier(.4, 0, .3, 1)', style({ overflow: 'hidden', maxHeight: '{{maxHeight}}' })),
|
|
122
|
-
]),
|
|
123
|
-
transition('expanded => collapsed', [
|
|
124
|
-
animate('250ms cubic-bezier(.4, 0, .3, 1)', keyframes([style({ maxHeight: '{{maxHeight}}' }), style({ overflow: 'hidden', maxHeight: 0 })])),
|
|
125
|
-
]),
|
|
126
|
-
]),
|
|
127
|
-
], template: "<!-- eslint-disable @angular-eslint/template/interactive-supports-focus -->\n@if (navSelectorCategoryPresenter.expanded()) {\n <div\n class=\"content\"\n apTooltipPosition=\"right\"\n [apTooltip]=\"tooltipContent()\"\n [apTooltipDisabled]=\"tooltipDisabled()\"\n [apTreeNodeAccessibility]=\"category()\"\n (keydown.space)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\"\n (keydown.enter)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\"\n (click)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\">\n <span\n #alias\n class=\"caption\">\n {{ category().alias }}\n </span>\n\n <ap-symbol\n class=\"folding-button\"\n size=\"sm\"\n [symbolId]=\"foldSymbol()\" />\n </div>\n\n <div\n class=\"children-container\"\n [@accordion]=\"{\n value: animationState(),\n params: {\n maxHeight: maxHeight(),\n },\n }\">\n @if (!foldedWithDelay()) {\n <div class=\"children\">\n @if (category().children.length === 0) {\n @if (category().emptyStateTitle) {\n <div class=\"empty-state\">\n {{ category().emptyStateTitle }}\n </div>\n }\n } @else {\n @for (child of category().children; track child.uid) {\n @if (!child.hidden) {\n <div\n class=\"entry\"\n [class.folder]=\"child.type === 'GROUP'\">\n @if (child.type === 'LEAF') {\n <ap-nav-selector-leaf\n [leaf]=\"child\"\n (actionClicked)=\"actionClicked.emit($event)\" />\n } @else if (child.type === 'GROUP') {\n <ap-nav-selector-group\n [group]=\"child\"\n (actionClicked)=\"actionClicked.emit($event)\" />\n }\n </div>\n }\n }\n }\n </div>\n }\n </div>\n} @else {\n <div\n class=\"content\"\n apTooltipPosition=\"right\"\n [apTreeNodeAccessibility]=\"category()\"\n [apTooltip]=\"tooltipContent()\"\n [apTooltipDisabled]=\"tooltipDisabled()\"\n (click)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\"\n (keydown.space)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\"\n (keydown.enter)=\"navSelectorCategoryPresenter.toggleFolding($event, this.category())\">\n <div class=\"name-container\">\n <span class=\"caption\">{{ category().alias }}</span>\n </div>\n\n <div class=\"toggle\">\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"foldSymbol()\" />\n </div>\n </div>\n\n <div\n class=\"children-container\"\n [@accordion]=\"{\n value: animationState(),\n params: {\n maxHeight: maxHeight(),\n },\n }\">\n @if (!foldedWithDelay()) {\n <div class=\"children\">\n @for (child of category().children; track child.uid) {\n @if (!child.hidden) {\n <div\n class=\"entry\"\n [class.folder]=\"child.type === 'GROUP'\">\n @if (child.type === 'LEAF') {\n <ap-nav-selector-leaf\n [leaf]=\"child\"\n (actionClicked)=\"actionClicked.emit($event)\" />\n } @else if (child.type === 'GROUP') {\n <ap-nav-selector-group\n [group]=\"child\"\n (actionClicked)=\"actionClicked.emit($event)\" />\n }\n </div>\n }\n }\n </div>\n }\n </div>\n}\n", styles: [":host{display:flex;align-items:center;flex-shrink:0;align-self:stretch;flex-direction:column}:host .children-container{align-self:stretch}:host .children-container .empty-state{font-size:var(--ref-font-size-xs);font-weight:var(--ref-font-weight-regular);font-style:italic;color:var(--ref-color-grey-80);padding:var(--ref-spacing-xxs)}:host .folding-button{display:flex;width:16px;height:16px;justify-content:center;align-items:center;flex-shrink:0}:host .content{padding:0 var(--ref-spacing-xxs);display:flex;height:36px;align-items:center;gap:var(--ref-spacing-xxs);flex-shrink:0;flex-grow:1;align-self:stretch;cursor:pointer}:host .content:hover{border-radius:var(--ref-border-radius-sm);background:var(--ref-color-electric-blue-10)}:host .content:active{border-radius:var(--ref-border-radius-sm);background:var(--ref-color-electric-blue-20)}:host .content:focus-visible{outline:none;border-radius:var(--ref-border-radius-sm);background:var(--ref-color-electric-blue-10);box-shadow:0 0 0 1px var(--ref-color-white),0 0 0 3px var(--ref-color-electric-blue-100)}:host ap-symbol[symbol-id=chevron-down],:host ap-symbol[symbol-id=chevron-up]{color:var(--ref-color-grey-80)}:host .caption{-webkit-box-orient:vertical;-webkit-line-clamp:1;flex:1 0 0;overflow:hidden;white-space:nowrap;color:var(--ref-color-grey-100);text-overflow:ellipsis;font-family:Averta;font-size:var(--sys-text-style-h4-size);font-style:normal;font-weight:var(--ref-font-weight-bold);line-height:var(--ref-font-line-height-md)}:host .children{display:flex;flex-direction:column;align-items:flex-start;flex:1 0 0;align-self:stretch}:host .children .entry{display:flex;flex-direction:column;align-items:flex-start;flex:1 0 0;align-self:stretch;margin-left:calc(-1 * var(--ref-spacing-xxs));margin-right:calc(-1 * var(--ref-spacing-xxs))}:host .children .entry.folder{padding:var(--ref-spacing-xxs);border-bottom:1px solid var(--sys-border-color-default)}:host .children .entry.folder+.entry:not(.folder){padding-top:var(--ref-spacing-xxs)}:host .children .entry.folder:first-child{padding-top:0}:host .children .entry.folder:last-child{border-bottom:none;padding-bottom:0}:host .children .entry:not(.folder){padding-left:var(--ref-spacing-xxs);padding-right:var(--ref-spacing-xxs)}:host .children .entry:not(.folder):first-child:not(:last-child){padding-top:var(--ref-spacing-xxs)}:host .children .entry:not(.folder):last-child:not(:first-child){padding-bottom:var(--ref-spacing-xxs);border-bottom:none}:host .children .entry:not(.folder):has(+.entry.folder){padding-bottom:var(--ref-spacing-xxs)}:host .children .entry:not(.folder)+.entry.folder{border-top:1px solid var(--sys-border-color-default)}:host.minified .name-container{overflow:hidden;display:flex}:host.minified .name-container span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:inline-block}:host.minified .caption{white-space:nowrap}:host.minified .content{position:relative}:host.minified .content .toggle{position:absolute;display:none}:host.minified .content:hover .toggle,:host.minified .content:focus-visible .toggle{inset:0;display:flex;justify-content:center;align-items:center}:host.minified .content:hover .name-container,:host.minified .content:focus-visible .name-container{display:none}\n"] }]
|
|
128
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.NavSelectorCategoryPresenter }] });
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LXNlbGVjdG9yLWNhdGVnb3J5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9uYXYtc2VsZWN0b3Ivc3JjL25hdi1zZWxlY3Rvci1jYXRlZ29yeS9uYXYtc2VsZWN0b3ItY2F0ZWdvcnkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL25hdi1zZWxlY3Rvci9zcmMvbmF2LXNlbGVjdG9yLWNhdGVnb3J5L25hdi1zZWxlY3Rvci1jYXRlZ29yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakcsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUYsT0FBTyxFQUNILFdBQVcsRUFDWCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBRU4sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUVqRyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsMENBQTBDLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7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QztnQ0FDRixTQUFTLEVBQUUsQ0FBQztnQ0FDWixRQUFRLEVBQUUsUUFBUTs2QkFDckIsQ0FBQyxDQUNMOzRCQUNELEtBQUssQ0FDRCxVQUFVLEVBQ1YsS0FBSyxDQUFDO2dDQUNGLFNBQVMsRUFBRSxTQUFTOzZCQUN2QixDQUFDLENBQ0w7NEJBQ0QsVUFBVSxDQUFDLHVCQUF1QixFQUFFO2dDQUNoQyxPQUFPLENBQUMsa0NBQWtDLEVBQUUsS0FBSyxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQzs2QkFDekcsQ0FBQzs0QkFDRixVQUFVLENBQUMsdUJBQXVCLEVBQUU7Z0NBQ2hDLE9BQU8sQ0FDSCxrQ0FBa0MsRUFDbEMsU0FBUyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQ2xHOzZCQUNKLENBQUM7eUJBQ0wsQ0FBQztxQkFDTCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL3Rvb2x0aXAnO1xuaW1wb3J0IHsgYXBDaGV2cm9uRG93biwgYXBDaGV2cm9uVXAsIFN5bWJvbENvbXBvbmVudCwgd2l0aFN5bWJvbHMgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1zeW1ib2wnO1xuaW1wb3J0IHsgYW5pbWF0ZSwga2V5ZnJhbWVzLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gICAgYWZ0ZXJSZW5kZXIsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGNvbXB1dGVkLFxuICAgIGVmZmVjdCxcbiAgICBFbGVtZW50UmVmLFxuICAgIGlucHV0LFxuICAgIG91dHB1dCxcbiAgICBzaWduYWwsXG4gICAgdW50cmFja2VkLFxuICAgIHZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmVlTm9kZUFjY2Vzc2liaWxpdHlEaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL3RyZWUtbm9kZS1hY2Nlc3NpYmlsaXR5LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJbnRlcm5hbE5hdlNlbGVjdG9yQ2F0ZWdvcnksIE5hdlNlbGVjdG9yTGVhZkFjdGlvbkNsaWNrZWRFdmVudCB9IGZyb20gJy4uL25hdi1zZWxlY3Rvcic7XG5pbXBvcnQgeyBOYXZTZWxlY3Rvckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vbmF2LXNlbGVjdG9yLWdyb3VwL25hdi1zZWxlY3Rvci1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmF2U2VsZWN0b3JMZWFmQ29tcG9uZW50IH0gZnJvbSAnLi4vbmF2LXNlbGVjdG9yLWxlYWYvbmF2LXNlbGVjdG9yLWxlYWYuY29tcG9uZW50JztcbmltcG9ydCB7IGNvbXB1dGVOdW1iZXJPZkRpc3BsYXlhYmxlQ2hpbGRyZW5PblVuZm9sZCB9IGZyb20gJy4uL3V0aWxzL2xlYWYudXRpbHMnO1xuaW1wb3J0IHsgTmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlciB9IGZyb20gJy4vbmF2LXNlbGVjdG9yLWNhdGVnb3J5LnByZXNlbnRlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXAtbmF2LXNlbGVjdG9yLWNhdGVnb3J5JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmF2LXNlbGVjdG9yLWNhdGVnb3J5LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9uYXYtc2VsZWN0b3ItY2F0ZWdvcnkuY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGltcG9ydHM6IFtOYXZTZWxlY3RvckxlYWZDb21wb25lbnQsIFN5bWJvbENvbXBvbmVudCwgTmF2U2VsZWN0b3JHcm91cENvbXBvbmVudCwgVHJlZU5vZGVBY2Nlc3NpYmlsaXR5RGlyZWN0aXZlLCBUb29sdGlwRGlyZWN0aXZlXSxcbiAgICBwcm92aWRlcnM6IFt3aXRoU3ltYm9scyhhcENoZXZyb25Eb3duLCBhcENoZXZyb25VcCksIE5hdlNlbGVjdG9yQ2F0ZWdvcnlQcmVzZW50ZXJdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5taW5pZmllZF0nOiAnIW5hdlNlbGVjdG9yQ2F0ZWdvcnlQcmVzZW50ZXIuZXhwYW5kZWQoKScsXG4gICAgICAgICcoa2V5ZG93bi5hcnJvd0xlZnQpJzogJ25hdlNlbGVjdG9yQ2F0ZWdvcnlQcmVzZW50ZXIuZm9sZCgkZXZlbnQsIHRoaXMuY2F0ZWdvcnkoKSknLFxuICAgICAgICAnKGtleWRvd24uYXJyb3dSaWdodCknOiAnbmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlci51bmZvbGQoJGV2ZW50LCB0aGlzLmNhdGVnb3J5KCkpJyxcbiAgICB9LFxuICAgIGFuaW1hdGlvbnM6IFtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIE92ZXJmbG93IGhpZGRlbiBpcyBwdXQgb25seSBkdXJpbmcgdGhlIGFuaW1hdGlvbiBhbmQgb24gdGhlIGNvbGxhcHNlZCBzdGF0ZSBiZWNhdXNlIGlmIGl0IGlzIHB1dCBvbiB0aGUgZXhwYW5kZWQgc3RhdGUgdGhlbiBjaGlsZHJlbuKAmXMgYm9yZGVyIHdpbGwgYmUgY3V0IChob3ZlciAvIGZvY3VzKVxuICAgICAgICAgKi9cbiAgICAgICAgdHJpZ2dlcignYWNjb3JkaW9uJywgW1xuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ2NvbGxhcHNlZCcsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6IDAsXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHN0YXRlKFxuICAgICAgICAgICAgICAgICdleHBhbmRlZCcsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6ICdpbml0aWFsJyxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ2NvbGxhcHNlZCA9PiBleHBhbmRlZCcsIFtcbiAgICAgICAgICAgICAgICBhbmltYXRlKCcyNTBtcyBjdWJpYy1iZXppZXIoLjQsIDAsIC4zLCAxKScsIHN0eWxlKHsgb3ZlcmZsb3c6ICdoaWRkZW4nLCBtYXhIZWlnaHQ6ICd7e21heEhlaWdodH19JyB9KSksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ2V4cGFuZGVkID0+IGNvbGxhcHNlZCcsIFtcbiAgICAgICAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgICAgICAgICAnMjUwbXMgY3ViaWMtYmV6aWVyKC40LCAwLCAuMywgMSknLFxuICAgICAgICAgICAgICAgICAgICBrZXlmcmFtZXMoW3N0eWxlKHsgbWF4SGVpZ2h0OiAne3ttYXhIZWlnaHR9fScgfSksIHN0eWxlKHsgb3ZlcmZsb3c6ICdoaWRkZW4nLCBtYXhIZWlnaHQ6IDAgfSldKVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgXSksXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTmF2U2VsZWN0b3JDYXRlZ29yeUNvbXBvbmVudCB7XG4gICAgY2F0ZWdvcnkgPSBpbnB1dC5yZXF1aXJlZDxJbnRlcm5hbE5hdlNlbGVjdG9yQ2F0ZWdvcnk+KCk7XG4gICAgYWN0aW9uQ2xpY2tlZCA9IG91dHB1dDxOYXZTZWxlY3RvckxlYWZBY3Rpb25DbGlja2VkRXZlbnQ+KCk7XG5cbiAgICBmb2xkU3ltYm9sID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMuY2F0ZWdvcnkoKS5mb2xkZWQgPyAnY2hldnJvbi1kb3duJyA6ICdjaGV2cm9uLXVwJykpO1xuXG4gICAgZm9sZGVkV2l0aERlbGF5ID0gc2lnbmFsKHRydWUpO1xuXG4gICAgYW5pbWF0aW9uU3RhdGUgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5jYXRlZ29yeSgpLmZvbGRlZCA/ICdjb2xsYXBzZWQnIDogJ2V4cGFuZGVkJykpO1xuXG4gICAgYWxpYXNFbCA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPignYWxpYXMnKTtcbiAgICBhbGlhc0JvdW5kZWRDbGllbnRSZWN0ID0gc2lnbmFsPHtcbiAgICAgICAgb2Zmc2V0V2lkdGg6IG51bWJlcjtcbiAgICAgICAgb2Zmc2V0SGVpZ2h0OiBudW1iZXI7XG4gICAgICAgIHNjcm9sbFdpZHRoOiBudW1iZXI7XG4gICAgICAgIHNjcm9sbEhlaWdodDogbnVtYmVyO1xuICAgIH0+KHtcbiAgICAgICAgb2Zmc2V0V2lkdGg6IDAsXG4gICAgICAgIG9mZnNldEhlaWdodDogMCxcbiAgICAgICAgc2Nyb2xsV2lkdGg6IDAsXG4gICAgICAgIHNjcm9sbEhlaWdodDogMCxcbiAgICB9KTtcblxuICAgIHRvb2x0aXBDb250ZW50ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBlbCA9IHRoaXMuYWxpYXNCb3VuZGVkQ2xpZW50UmVjdCgpO1xuICAgICAgICBpZiAoIXRoaXMubmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlci5leHBhbmRlZCgpIHx8IGVsLm9mZnNldFdpZHRoIDwgZWwuc2Nyb2xsV2lkdGggfHwgZWwub2Zmc2V0SGVpZ2h0IDwgZWwuc2Nyb2xsSGVpZ2h0KSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jYXRlZ29yeSgpLmFsaWFzO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH0pO1xuICAgIHRvb2x0aXBEaXNhYmxlZCA9IGNvbXB1dGVkKCgpID0+ICF0aGlzLnRvb2x0aXBDb250ZW50KCkubGVuZ3RoKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgICAgICBwdWJsaWMgbmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlcjogTmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlclxuICAgICkge1xuICAgICAgICBhZnRlclJlbmRlcigoKSA9PlxuICAgICAgICAgICAgdW50cmFja2VkKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBtYXhIZWlnaHQgPSB0aGlzLmNvbXB1dGVNYXhIZWlnaHQoKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5tYXhIZWlnaHQoKSAhPT0gbWF4SGVpZ2h0KSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWF4SGVpZ2h0LnNldChtYXhIZWlnaHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUFsaWFzQm91bmRlZENsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG5cbiAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZvbGRlZCA9IHRoaXMuY2F0ZWdvcnkoKS5mb2xkZWQ7XG4gICAgICAgICAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChmb2xkZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmZvbGRlZFdpdGhEZWxheS5zZXQodHJ1ZSksIDE1MCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb2xkZWRXaXRoRGVsYXkuc2V0KGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbWF4SGVpZ2h0ID0gc2lnbmFsKCcwcHgnKTtcblxuICAgIHByaXZhdGUgY29tcHV0ZU1heEhlaWdodCgpIHtcbiAgICAgICAgbGV0IG1heEhlaWdodCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgICAgIGlmICh0aGlzLmNhdGVnb3J5KCkuZm9sZGVkKSB7XG4gICAgICAgICAgICBjb25zdCBudW1iZXJPZkRpc3BsYXlhYmxlQ2hpbGRyZW4gPSBjb21wdXRlTnVtYmVyT2ZEaXNwbGF5YWJsZUNoaWxkcmVuT25VbmZvbGQodGhpcy5jYXRlZ29yeSgpKTtcbiAgICAgICAgICAgIG1heEhlaWdodCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQgKiBudW1iZXJPZkRpc3BsYXlhYmxlQ2hpbGRyZW47XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGAke21heEhlaWdodH1weGA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVBbGlhc0JvdW5kZWRDbGllbnRSZWN0KCkge1xuICAgICAgICBjb25zdCBlbCA9IHRoaXMuYWxpYXNFbCgpPy5uYXRpdmVFbGVtZW50O1xuICAgICAgICBpZiAoZWwpIHtcbiAgICAgICAgICAgIGNvbnN0IGJvdW5kZWRDbGllbnRSZWN0ID0ge1xuICAgICAgICAgICAgICAgIG9mZnNldFdpZHRoOiBlbC5vZmZzZXRXaWR0aCxcbiAgICAgICAgICAgICAgICBvZmZzZXRIZWlnaHQ6IGVsLm9mZnNldEhlaWdodCxcbiAgICAgICAgICAgICAgICBzY3JvbGxXaWR0aDogZWwuc2Nyb2xsV2lkdGgsXG4gICAgICAgICAgICAgICAgc2Nyb2xsSGVpZ2h0OiBlbC5zY3JvbGxIZWlnaHQsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHRoaXMuYWxpYXNCb3VuZGVkQ2xpZW50UmVjdCgpKSAhPT0gSlNPTi5zdHJpbmdpZnkoYm91bmRlZENsaWVudFJlY3QpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hbGlhc0JvdW5kZWRDbGllbnRSZWN0LnNldChib3VuZGVkQ2xpZW50UmVjdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8IS0tIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC90ZW1wbGF0ZS9pbnRlcmFjdGl2ZS1zdXBwb3J0cy1mb2N1cyAtLT5cbkBpZiAobmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlci5leHBhbmRlZCgpKSB7XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImNvbnRlbnRcIlxuICAgICAgICBhcFRvb2x0aXBQb3NpdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgW2FwVG9vbHRpcF09XCJ0b29sdGlwQ29udGVudCgpXCJcbiAgICAgICAgW2FwVG9vbHRpcERpc2FibGVkXT1cInRvb2x0aXBEaXNhYmxlZCgpXCJcbiAgICAgICAgW2FwVHJlZU5vZGVBY2Nlc3NpYmlsaXR5XT1cImNhdGVnb3J5KClcIlxuICAgICAgICAoa2V5ZG93bi5zcGFjZSk9XCJuYXZTZWxlY3RvckNhdGVnb3J5UHJlc2VudGVyLnRvZ2dsZUZvbGRpbmcoJGV2ZW50LCB0aGlzLmNhdGVnb3J5KCkpXCJcbiAgICAgICAgKGtleWRvd24uZW50ZXIpPVwibmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlci50b2dnbGVGb2xkaW5nKCRldmVudCwgdGhpcy5jYXRlZ29yeSgpKVwiXG4gICAgICAgIChjbGljayk9XCJuYXZTZWxlY3RvckNhdGVnb3J5UHJlc2VudGVyLnRvZ2dsZUZvbGRpbmcoJGV2ZW50LCB0aGlzLmNhdGVnb3J5KCkpXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICAjYWxpYXNcbiAgICAgICAgICAgIGNsYXNzPVwiY2FwdGlvblwiPlxuICAgICAgICAgICAge3sgY2F0ZWdvcnkoKS5hbGlhcyB9fVxuICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgPGFwLXN5bWJvbFxuICAgICAgICAgICAgY2xhc3M9XCJmb2xkaW5nLWJ1dHRvblwiXG4gICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgICAgW3N5bWJvbElkXT1cImZvbGRTeW1ib2woKVwiIC8+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiY2hpbGRyZW4tY29udGFpbmVyXCJcbiAgICAgICAgW0BhY2NvcmRpb25dPVwie1xuICAgICAgICAgICAgdmFsdWU6IGFuaW1hdGlvblN0YXRlKCksXG4gICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6IG1heEhlaWdodCgpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfVwiPlxuICAgICAgICBAaWYgKCFmb2xkZWRXaXRoRGVsYXkoKSkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaWxkcmVuXCI+XG4gICAgICAgICAgICAgICAgQGlmIChjYXRlZ29yeSgpLmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICBAaWYgKGNhdGVnb3J5KCkuZW1wdHlTdGF0ZVRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW1wdHktc3RhdGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjYXRlZ29yeSgpLmVtcHR5U3RhdGVUaXRsZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgQGZvciAoY2hpbGQgb2YgY2F0ZWdvcnkoKS5jaGlsZHJlbjsgdHJhY2sgY2hpbGQudWlkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKCFjaGlsZC5oaWRkZW4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZW50cnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZm9sZGVyXT1cImNoaWxkLnR5cGUgPT09ICdHUk9VUCdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjaGlsZC50eXBlID09PSAnTEVBRicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcC1uYXYtc2VsZWN0b3ItbGVhZlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsZWFmXT1cImNoaWxkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYWN0aW9uQ2xpY2tlZCk9XCJhY3Rpb25DbGlja2VkLmVtaXQoJGV2ZW50KVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gQGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09ICdHUk9VUCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcC1uYXYtc2VsZWN0b3ItZ3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZ3JvdXBdPVwiY2hpbGRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChhY3Rpb25DbGlja2VkKT1cImFjdGlvbkNsaWNrZWQuZW1pdCgkZXZlbnQpXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn0gQGVsc2Uge1xuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJjb250ZW50XCJcbiAgICAgICAgYXBUb29sdGlwUG9zaXRpb249XCJyaWdodFwiXG4gICAgICAgIFthcFRyZWVOb2RlQWNjZXNzaWJpbGl0eV09XCJjYXRlZ29yeSgpXCJcbiAgICAgICAgW2FwVG9vbHRpcF09XCJ0b29sdGlwQ29udGVudCgpXCJcbiAgICAgICAgW2FwVG9vbHRpcERpc2FibGVkXT1cInRvb2x0aXBEaXNhYmxlZCgpXCJcbiAgICAgICAgKGNsaWNrKT1cIm5hdlNlbGVjdG9yQ2F0ZWdvcnlQcmVzZW50ZXIudG9nZ2xlRm9sZGluZygkZXZlbnQsIHRoaXMuY2F0ZWdvcnkoKSlcIlxuICAgICAgICAoa2V5ZG93bi5zcGFjZSk9XCJuYXZTZWxlY3RvckNhdGVnb3J5UHJlc2VudGVyLnRvZ2dsZUZvbGRpbmcoJGV2ZW50LCB0aGlzLmNhdGVnb3J5KCkpXCJcbiAgICAgICAgKGtleWRvd24uZW50ZXIpPVwibmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlci50b2dnbGVGb2xkaW5nKCRldmVudCwgdGhpcy5jYXRlZ29yeSgpKVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZS1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FwdGlvblwiPnt7IGNhdGVnb3J5KCkuYWxpYXMgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0b2dnbGVcIj5cbiAgICAgICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgICAgICAgIFtzeW1ib2xJZF09XCJmb2xkU3ltYm9sKClcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJjaGlsZHJlbi1jb250YWluZXJcIlxuICAgICAgICBbQGFjY29yZGlvbl09XCJ7XG4gICAgICAgICAgICB2YWx1ZTogYW5pbWF0aW9uU3RhdGUoKSxcbiAgICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgICAgIG1heEhlaWdodDogbWF4SGVpZ2h0KCksXG4gICAgICAgICAgICB9LFxuICAgICAgICB9XCI+XG4gICAgICAgIEBpZiAoIWZvbGRlZFdpdGhEZWxheSgpKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpbGRyZW5cIj5cbiAgICAgICAgICAgICAgICBAZm9yIChjaGlsZCBvZiBjYXRlZ29yeSgpLmNoaWxkcmVuOyB0cmFjayBjaGlsZC51aWQpIHtcbiAgICAgICAgICAgICAgICAgICAgQGlmICghY2hpbGQuaGlkZGVuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlbnRyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmZvbGRlcl09XCJjaGlsZC50eXBlID09PSAnR1JPVVAnXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjaGlsZC50eXBlID09PSAnTEVBRicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFwLW5hdi1zZWxlY3Rvci1sZWFmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGVhZl09XCJjaGlsZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYWN0aW9uQ2xpY2tlZCk9XCJhY3Rpb25DbGlja2VkLmVtaXQoJGV2ZW50KVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gJ0dST1VQJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXAtbmF2LXNlbGVjdG9yLWdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZ3JvdXBdPVwiY2hpbGRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFjdGlvbkNsaWNrZWQpPVwiYWN0aW9uQ2xpY2tlZC5lbWl0KCRldmVudClcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn1cbiJdfQ==
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { computed, Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../nav-selector.state";
|
|
4
|
-
export class NavSelectorCategoryPresenter {
|
|
5
|
-
navSelectorState;
|
|
6
|
-
expanded = computed(() => this.navSelectorState.expanded());
|
|
7
|
-
constructor(navSelectorState) {
|
|
8
|
-
this.navSelectorState = navSelectorState;
|
|
9
|
-
}
|
|
10
|
-
toggleFolding(event, category) {
|
|
11
|
-
event.stopImmediatePropagation();
|
|
12
|
-
this.navSelectorState.onGroupToggleFolding(category);
|
|
13
|
-
}
|
|
14
|
-
fold(event, category) {
|
|
15
|
-
event.stopImmediatePropagation();
|
|
16
|
-
this.navSelectorState.fold(category);
|
|
17
|
-
}
|
|
18
|
-
unfold(event, category) {
|
|
19
|
-
event.stopImmediatePropagation();
|
|
20
|
-
this.navSelectorState.unfold(category);
|
|
21
|
-
}
|
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NavSelectorCategoryPresenter, deps: [{ token: i1.NavSelectorState }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
23
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NavSelectorCategoryPresenter });
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NavSelectorCategoryPresenter, decorators: [{
|
|
26
|
-
type: Injectable
|
|
27
|
-
}], ctorParameters: () => [{ type: i1.NavSelectorState }] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LXNlbGVjdG9yLWNhdGVnb3J5LnByZXNlbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9uYXYtc2VsZWN0b3Ivc3JjL25hdi1zZWxlY3Rvci1jYXRlZ29yeS9uYXYtc2VsZWN0b3ItY2F0ZWdvcnkucHJlc2VudGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLckQsTUFBTSxPQUFPLDRCQUE0QjtJQUdqQjtJQUZwQixRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBRTVELFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQUcsQ0FBQztJQUUxRCxhQUFhLENBQUMsS0FBWSxFQUFFLFFBQXFDO1FBQzdELEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQVksRUFBRSxRQUFxQztRQUNwRCxLQUFLLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBWSxFQUFFLFFBQXFDO1FBQ3RELEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDM0MsQ0FBQzt1R0FsQlEsNEJBQTRCOzJHQUE1Qiw0QkFBNEI7OzJGQUE1Qiw0QkFBNEI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW50ZXJuYWxOYXZTZWxlY3RvckNhdGVnb3J5IH0gZnJvbSAnLi4vbmF2LXNlbGVjdG9yJztcbmltcG9ydCB7IE5hdlNlbGVjdG9yU3RhdGUgfSBmcm9tICcuLi9uYXYtc2VsZWN0b3Iuc3RhdGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTmF2U2VsZWN0b3JDYXRlZ29yeVByZXNlbnRlciB7XG4gICAgZXhwYW5kZWQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm5hdlNlbGVjdG9yU3RhdGUuZXhwYW5kZWQoKSk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5hdlNlbGVjdG9yU3RhdGU6IE5hdlNlbGVjdG9yU3RhdGUpIHt9XG5cbiAgICB0b2dnbGVGb2xkaW5nKGV2ZW50OiBFdmVudCwgY2F0ZWdvcnk6IEludGVybmFsTmF2U2VsZWN0b3JDYXRlZ29yeSkge1xuICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5uYXZTZWxlY3RvclN0YXRlLm9uR3JvdXBUb2dnbGVGb2xkaW5nKGNhdGVnb3J5KTtcbiAgICB9XG5cbiAgICBmb2xkKGV2ZW50OiBFdmVudCwgY2F0ZWdvcnk6IEludGVybmFsTmF2U2VsZWN0b3JDYXRlZ29yeSkge1xuICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5uYXZTZWxlY3RvclN0YXRlLmZvbGQoY2F0ZWdvcnkpO1xuICAgIH1cblxuICAgIHVuZm9sZChldmVudDogRXZlbnQsIGNhdGVnb3J5OiBJbnRlcm5hbE5hdlNlbGVjdG9yQ2F0ZWdvcnkpIHtcbiAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMubmF2U2VsZWN0b3JTdGF0ZS51bmZvbGQoY2F0ZWdvcnkpO1xuICAgIH1cbn1cbiJdfQ==
|