@radix-ng/primitives 0.12.1 → 0.13.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/README.md +3 -1
- package/accordion/index.d.ts +16 -0
- package/accordion/src/accordion-content.directive.d.ts +11 -0
- package/accordion/src/accordion-header.directive.d.ts +7 -0
- package/accordion/src/accordion-item.directive.d.ts +82 -0
- package/accordion/src/accordion-root.directive.d.ts +93 -0
- package/accordion/src/accordion-trigger.directive.d.ts +15 -0
- package/alert-dialog/{index.ts → index.d.ts} +0 -1
- package/alert-dialog/src/alert-dialog-cancel.directive.d.ts +7 -0
- package/alert-dialog/src/alert-dialog-content.directive.d.ts +9 -0
- package/alert-dialog/src/alert-dialog-root.directive.d.ts +9 -0
- package/alert-dialog/src/alert-dialog-title.directive.d.ts +5 -0
- package/alert-dialog/src/alert-dialog-trigger.directive.d.ts +7 -0
- package/alert-dialog/src/alert-dialog.service.d.ts +14 -0
- package/avatar/src/avatar-fallback.directive.d.ts +28 -0
- package/avatar/src/avatar-image.directive.d.ts +21 -0
- package/avatar/src/avatar-root.directive.d.ts +21 -0
- package/avatar/src/avatar.config.d.ts +13 -0
- package/checkbox/src/checkbox-button.directive.d.ts +8 -0
- package/checkbox/src/checkbox-indicator.directive.d.ts +6 -0
- package/checkbox/src/checkbox-input.directive.d.ts +9 -0
- package/checkbox/src/checkbox.directive.d.ts +75 -0
- package/checkbox/src/checkbox.token.d.ts +4 -0
- package/collapsible/src/collapsible-content.directive.d.ts +17 -0
- package/collapsible/src/collapsible-content.token.d.ts +3 -0
- package/collapsible/src/collapsible-root.directive.d.ts +55 -0
- package/collapsible/src/collapsible-trigger.directive.d.ts +26 -0
- package/compodoc/documentation.json +14249 -0
- package/context-menu/index.d.ts +26 -0
- package/context-menu/src/context-menu-content.directive.d.ts +15 -0
- package/context-menu/src/context-menu-item-checkbox.directive.d.ts +9 -0
- package/context-menu/src/context-menu-item-indicator.directive.d.ts +7 -0
- package/context-menu/src/context-menu-item-radio-group.directive.d.ts +12 -0
- package/context-menu/src/context-menu-item-radio.directive.d.ts +19 -0
- package/context-menu/src/context-menu-item-selectable.d.ts +12 -0
- package/context-menu/src/context-menu-item.directive.d.ts +17 -0
- package/context-menu/src/context-menu-label.directive.d.ts +5 -0
- package/context-menu/src/context-menu-separator.directive.d.ts +6 -0
- package/context-menu/src/context-menu-trigger.directive.d.ts +31 -0
- package/dialog/index.d.ts +23 -0
- package/dialog/src/dialog-close.directive.d.ts +7 -0
- package/dialog/src/dialog-content.directive.d.ts +21 -0
- package/dialog/src/dialog-description.directive.d.ts +5 -0
- package/dialog/src/dialog-dismiss.directive.d.ts +7 -0
- package/dialog/src/dialog-ref.d.ts +37 -0
- package/dialog/src/dialog-title.directive.d.ts +5 -0
- package/dialog/src/dialog-trigger.directive.d.ts +16 -0
- package/dialog/src/dialog.config.d.ts +39 -0
- package/dialog/src/dialog.injectors.d.ts +4 -0
- package/dialog/src/{dialog.providers.ts → dialog.providers.d.ts} +3 -11
- package/dialog/src/dialog.service.d.ts +26 -0
- package/dropdown-menu/index.d.ts +26 -0
- package/dropdown-menu/src/dropdown-menu-content.directive.d.ts +15 -0
- package/dropdown-menu/src/dropdown-menu-item-checkbox.directive.d.ts +9 -0
- package/dropdown-menu/src/dropdown-menu-item-indicator.directive.d.ts +7 -0
- package/dropdown-menu/src/dropdown-menu-item-radio-group.directive.d.ts +12 -0
- package/dropdown-menu/src/dropdown-menu-item-radio.directive.d.ts +19 -0
- package/dropdown-menu/src/dropdown-menu-item-selectable.d.ts +12 -0
- package/dropdown-menu/src/dropdown-menu-item.directive.d.ts +17 -0
- package/dropdown-menu/src/dropdown-menu-label.directive.d.ts +5 -0
- package/dropdown-menu/src/dropdown-menu-separator.directive.d.ts +6 -0
- package/dropdown-menu/src/dropdown-menu-trigger.directive.d.ts +46 -0
- package/esm2022/accordion/index.mjs +40 -0
- package/esm2022/accordion/radix-ng-primitives-accordion.mjs +5 -0
- package/esm2022/accordion/src/accordion-content.directive.mjs +42 -0
- package/esm2022/accordion/src/accordion-header.directive.mjs +23 -0
- package/esm2022/accordion/src/accordion-item.directive.mjs +187 -0
- package/esm2022/accordion/src/accordion-root.directive.mjs +172 -0
- package/esm2022/accordion/src/accordion-trigger.directive.mjs +42 -0
- package/esm2022/alert-dialog/index.mjs +7 -0
- package/esm2022/alert-dialog/radix-ng-primitives-alert-dialog.mjs +5 -0
- package/esm2022/alert-dialog/src/alert-dialog-cancel.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog-content.directive.mjs +34 -0
- package/esm2022/alert-dialog/src/alert-dialog-root.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog-title.directive.mjs +14 -0
- package/esm2022/alert-dialog/src/alert-dialog-trigger.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog.service.mjs +46 -0
- package/esm2022/avatar/index.mjs +5 -0
- package/esm2022/avatar/radix-ng-primitives-avatar.mjs +5 -0
- package/esm2022/avatar/src/avatar-fallback.directive.mjs +60 -0
- package/esm2022/avatar/src/avatar-image.directive.mjs +52 -0
- package/esm2022/avatar/src/avatar-root.directive.mjs +38 -0
- package/esm2022/avatar/src/avatar.config.mjs +17 -0
- package/esm2022/checkbox/index.mjs +6 -0
- package/esm2022/checkbox/radix-ng-primitives-checkbox.mjs +5 -0
- package/esm2022/checkbox/src/checkbox-button.directive.mjs +33 -0
- package/esm2022/checkbox/src/checkbox-indicator.directive.mjs +24 -0
- package/esm2022/checkbox/src/checkbox-input.directive.mjs +41 -0
- package/esm2022/checkbox/src/checkbox.directive.mjs +141 -0
- package/esm2022/checkbox/src/checkbox.token.mjs +6 -0
- package/esm2022/collapsible/index.mjs +4 -0
- package/esm2022/collapsible/radix-ng-primitives-collapsible.mjs +5 -0
- package/esm2022/collapsible/src/collapsible-content.directive.mjs +45 -0
- package/esm2022/collapsible/src/collapsible-content.token.mjs +3 -0
- package/esm2022/collapsible/src/collapsible-root.directive.mjs +118 -0
- package/esm2022/collapsible/src/collapsible-trigger.directive.mjs +49 -0
- package/esm2022/context-menu/index.mjs +65 -0
- package/esm2022/context-menu/radix-ng-primitives-context-menu.mjs +5 -0
- package/esm2022/context-menu/src/context-menu-content.directive.mjs +56 -0
- package/esm2022/context-menu/src/context-menu-item-checkbox.directive.mjs +39 -0
- package/esm2022/context-menu/src/context-menu-item-indicator.directive.mjs +22 -0
- package/esm2022/context-menu/src/context-menu-item-radio-group.directive.mjs +37 -0
- package/esm2022/context-menu/src/context-menu-item-radio.directive.mjs +67 -0
- package/esm2022/context-menu/src/context-menu-item-selectable.mjs +31 -0
- package/esm2022/context-menu/src/context-menu-item.directive.mjs +70 -0
- package/esm2022/context-menu/src/context-menu-label.directive.mjs +14 -0
- package/esm2022/context-menu/src/context-menu-separator.directive.mjs +21 -0
- package/esm2022/context-menu/src/context-menu-trigger.directive.mjs +92 -0
- package/esm2022/dialog/index.mjs +50 -0
- package/esm2022/dialog/radix-ng-primitives-dialog.mjs +5 -0
- package/esm2022/dialog/src/dialog-close.directive.mjs +25 -0
- package/esm2022/dialog/src/dialog-content.directive.mjs +46 -0
- package/esm2022/dialog/src/dialog-description.directive.mjs +14 -0
- package/esm2022/dialog/src/dialog-dismiss.directive.mjs +25 -0
- package/esm2022/dialog/src/dialog-ref.mjs +46 -0
- package/esm2022/dialog/src/dialog-title.directive.mjs +14 -0
- package/esm2022/dialog/src/dialog-trigger.directive.mjs +54 -0
- package/esm2022/dialog/src/dialog.config.mjs +6 -0
- package/esm2022/dialog/src/dialog.injectors.mjs +10 -0
- package/esm2022/dialog/src/dialog.providers.mjs +26 -0
- package/esm2022/dialog/src/dialog.service.mjs +96 -0
- package/esm2022/dropdown-menu/index.mjs +68 -0
- package/esm2022/dropdown-menu/radix-ng-primitives-dropdown-menu.mjs +5 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-content.directive.mjs +56 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-item-checkbox.directive.mjs +39 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-item-indicator.directive.mjs +22 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-item-radio-group.directive.mjs +37 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-item-radio.directive.mjs +67 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-item-selectable.mjs +31 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-item.directive.mjs +71 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-label.directive.mjs +14 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-separator.directive.mjs +21 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-trigger.directive.mjs +179 -0
- package/esm2022/index.mjs +2 -0
- package/esm2022/label/index.mjs +2 -0
- package/esm2022/label/radix-ng-primitives-label.mjs +5 -0
- package/esm2022/label/src/label.directive.mjs +59 -0
- package/esm2022/menu/index.mjs +45 -0
- package/esm2022/menu/radix-ng-primitives-menu.mjs +5 -0
- package/esm2022/menu/src/menu-content.directive.mjs +17 -0
- package/esm2022/menu/src/menu-directive.mjs +18 -0
- package/esm2022/menu/src/menu-group.directive.mjs +20 -0
- package/esm2022/menu/src/menu-item.directive.mjs +46 -0
- package/esm2022/menu/src/menu-label.directive.mjs +14 -0
- package/esm2022/menu/src/menu-separator.directive.mjs +21 -0
- package/esm2022/menubar/index.mjs +60 -0
- package/esm2022/menubar/radix-ng-primitives-menubar.mjs +5 -0
- package/esm2022/menubar/src/menubar-content.directive.mjs +17 -0
- package/esm2022/menubar/src/menubar-item-checkbox.directive.mjs +34 -0
- package/esm2022/menubar/src/menubar-item-indicator.directive.mjs +17 -0
- package/esm2022/menubar/src/menubar-item-radio.directive.mjs +35 -0
- package/esm2022/menubar/src/menubar-item.directive.mjs +20 -0
- package/esm2022/menubar/src/menubar-radio-group.directive.mjs +17 -0
- package/esm2022/menubar/src/menubar-root.directive.mjs +24 -0
- package/esm2022/menubar/src/menubar-separator.directive.mjs +17 -0
- package/esm2022/menubar/src/menubar-trigger.directive.mjs +45 -0
- package/esm2022/progress/index.mjs +25 -0
- package/esm2022/progress/radix-ng-primitives-progress.mjs +5 -0
- package/esm2022/progress/src/progress-indicator.directive.mjs +34 -0
- package/esm2022/progress/src/progress-root.directive.mjs +127 -0
- package/esm2022/radio/index.mjs +4 -0
- package/esm2022/radio/radix-ng-primitives-radio.mjs +5 -0
- package/esm2022/radio/src/radio-indicator.directive.mjs +25 -0
- package/esm2022/radio/src/radio-item.directive.mjs +70 -0
- package/esm2022/radio/src/radio-root.directive.mjs +194 -0
- package/esm2022/radio/src/radio-tokens.mjs +3 -0
- package/esm2022/radix-ng-primitives.mjs +5 -0
- package/esm2022/separator/index.mjs +2 -0
- package/esm2022/separator/radix-ng-primitives-separator.mjs +5 -0
- package/esm2022/separator/src/separator.directive.mjs +32 -0
- package/esm2022/switch/index.mjs +30 -0
- package/esm2022/switch/radix-ng-primitives-switch.mjs +5 -0
- package/esm2022/switch/src/switch-input.directive.mjs +32 -0
- package/esm2022/switch/src/switch-root.directive.mjs +95 -0
- package/esm2022/switch/src/switch-thumb.directive.mjs +23 -0
- package/esm2022/tabs/index.mjs +38 -0
- package/esm2022/tabs/radix-ng-primitives-tabs.mjs +5 -0
- package/esm2022/tabs/src/tabs-content.directive.mjs +29 -0
- package/esm2022/tabs/src/tabs-context.service.mjs +43 -0
- package/esm2022/tabs/src/tabs-list.directive.mjs +23 -0
- package/esm2022/tabs/src/tabs-root.directive.mjs +54 -0
- package/esm2022/tabs/src/tabs-trigger.directive.mjs +52 -0
- package/esm2022/toggle/index.mjs +2 -0
- package/esm2022/toggle/radix-ng-primitives-toggle.mjs +5 -0
- package/esm2022/toggle/src/toggle.directive.mjs +39 -0
- package/esm2022/toggle-group/index.mjs +6 -0
- package/esm2022/toggle-group/radix-ng-primitives-toggle-group.mjs +5 -0
- package/esm2022/toggle-group/src/toggle-group-button.directive.mjs +75 -0
- package/esm2022/toggle-group/src/toggle-group-button.token.mjs +6 -0
- package/esm2022/toggle-group/src/toggle-group-multi.directive.mjs +143 -0
- package/esm2022/toggle-group/src/toggle-group.directive.mjs +134 -0
- package/esm2022/toggle-group/src/toggle-group.token.mjs +6 -0
- package/fesm2022/radix-ng-primitives-accordion.mjs +483 -0
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs +159 -0
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-avatar.mjs +166 -0
- package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-checkbox.mjs +241 -0
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-collapsible.mjs +213 -0
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-context-menu.mjs +463 -0
- package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-dialog.mjs +373 -0
- package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +555 -0
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-label.mjs +66 -0
- package/fesm2022/radix-ng-primitives-label.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-menu.mjs +158 -0
- package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-menubar.mjs +245 -0
- package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-progress.mjs +184 -0
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-radio.mjs +289 -0
- package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-separator.mjs +39 -0
- package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-switch.mjs +173 -0
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-tabs.mjs +222 -0
- package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +358 -0
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-toggle.mjs +46 -0
- package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives.mjs +4 -0
- package/fesm2022/radix-ng-primitives.mjs.map +1 -0
- package/label/src/label.directive.d.ts +29 -0
- package/menu/index.d.ts +18 -0
- package/menu/src/menu-content.directive.d.ts +6 -0
- package/menu/src/menu-directive.d.ts +6 -0
- package/menu/src/menu-group.directive.d.ts +6 -0
- package/menu/src/menu-item.directive.d.ts +12 -0
- package/menu/src/menu-label.directive.d.ts +5 -0
- package/menu/src/menu-separator.directive.d.ts +6 -0
- package/menubar/index.d.ts +24 -0
- package/menubar/src/menubar-content.directive.d.ts +6 -0
- package/menubar/src/menubar-item-checkbox.directive.d.ts +14 -0
- package/menubar/src/menubar-item-indicator.directive.d.ts +5 -0
- package/menubar/src/menubar-item-radio.directive.d.ts +14 -0
- package/menubar/src/menubar-item.directive.d.ts +8 -0
- package/menubar/src/menubar-radio-group.directive.d.ts +6 -0
- package/menubar/src/menubar-root.directive.d.ts +7 -0
- package/menubar/src/menubar-separator.directive.d.ts +6 -0
- package/menubar/src/menubar-trigger.directive.d.ts +11 -0
- package/package.json +124 -4
- package/progress/index.d.ts +11 -0
- package/progress/src/progress-indicator.directive.d.ts +16 -0
- package/progress/src/progress-root.directive.d.ts +63 -0
- package/radio/{index.ts → index.d.ts} +0 -1
- package/radio/src/radio-indicator.directive.d.ts +9 -0
- package/radio/src/radio-item.directive.d.ts +21 -0
- package/radio/src/radio-root.directive.d.ts +72 -0
- package/radio/src/{radio-tokens.ts → radio-tokens.d.ts} +1 -5
- package/separator/src/separator.directive.d.ts +22 -0
- package/switch/index.d.ts +13 -0
- package/switch/src/switch-input.directive.d.ts +6 -0
- package/switch/src/switch-root.directive.d.ts +51 -0
- package/switch/src/switch-thumb.directive.d.ts +6 -0
- package/tabs/index.d.ts +15 -0
- package/tabs/src/tabs-content.directive.d.ts +8 -0
- package/tabs/src/tabs-context.service.d.ts +22 -0
- package/tabs/src/tabs-list.directive.d.ts +6 -0
- package/tabs/src/tabs-root.directive.d.ts +37 -0
- package/tabs/src/tabs-trigger.directive.d.ts +19 -0
- package/toggle/src/toggle.directive.d.ts +30 -0
- package/toggle-group/src/toggle-group-button.directive.d.ts +39 -0
- package/toggle-group/src/toggle-group-button.token.d.ts +4 -0
- package/toggle-group/src/toggle-group-multi.directive.d.ts +93 -0
- package/toggle-group/src/toggle-group.directive.d.ts +84 -0
- package/toggle-group/src/toggle-group.token.d.ts +5 -0
- package/.compodocrc.json +0 -12
- package/CHANGELOG.md +0 -189
- package/accordion/__tests__/accordion-content.directive.spec.ts +0 -8
- package/accordion/__tests__/accordion-header.directive.spec.ts +0 -8
- package/accordion/__tests__/accordion-item.directive.spec.ts +0 -8
- package/accordion/__tests__/accordion-root.directive.spec.ts +0 -8
- package/accordion/__tests__/accordion-trigger.directive.spec.ts +0 -8
- package/accordion/index.ts +0 -5
- package/accordion/ng-package.json +0 -5
- package/accordion/src/accordion-content.directive.ts +0 -46
- package/accordion/src/accordion-header.directive.ts +0 -15
- package/accordion/src/accordion-item.directive.ts +0 -216
- package/accordion/src/accordion-root.directive.ts +0 -205
- package/accordion/src/accordion-trigger.directive.ts +0 -37
- package/accordion/stories/accordion.docs.mdx +0 -77
- package/accordion/stories/accordion.stories.ts +0 -340
- package/alert-dialog/ng-package.json +0 -5
- package/alert-dialog/src/alert-dialog-cancel.directive.ts +0 -17
- package/alert-dialog/src/alert-dialog-content.directive.ts +0 -24
- package/alert-dialog/src/alert-dialog-root.directive.ts +0 -15
- package/alert-dialog/src/alert-dialog-title.directive.ts +0 -7
- package/alert-dialog/src/alert-dialog-trigger.directive.ts +0 -17
- package/alert-dialog/src/alert-dialog.service.ts +0 -51
- package/alert-dialog/stories/alert-dialog.stories.ts +0 -139
- package/avatar/__tests__/avatar-fallback.directive.spec.ts +0 -31
- package/avatar/__tests__/avatar-image.directive.spec.ts +0 -36
- package/avatar/ng-package.json +0 -5
- package/avatar/src/avatar-fallback.directive.ts +0 -62
- package/avatar/src/avatar-image.directive.ts +0 -55
- package/avatar/src/avatar-root.directive.ts +0 -35
- package/avatar/src/avatar.config.ts +0 -29
- package/avatar/stories/avatar.docs.mdx +0 -37
- package/avatar/stories/avatar.stories.ts +0 -87
- package/button/__tests__/.gitkeep +0 -0
- package/button/src/button-abstract.directive.ts +0 -46
- package/checkbox/ng-package.json +0 -5
- package/checkbox/src/checkbox-button.directive.ts +0 -26
- package/checkbox/src/checkbox-indicator.directive.ts +0 -16
- package/checkbox/src/checkbox-input.directive.ts +0 -36
- package/checkbox/src/checkbox.directive.ts +0 -146
- package/checkbox/src/checkbox.token.ts +0 -8
- package/checkbox/stories/checkbox-group.component.ts +0 -87
- package/checkbox/stories/checkbox-group.styles.scss +0 -49
- package/checkbox/stories/checkbox-indeterminate.component.ts +0 -52
- package/checkbox/stories/checkbox.docs.mdx +0 -58
- package/checkbox/stories/checkbox.stories.ts +0 -105
- package/collapsible/__tests__/collapsible-content.directive.spec.ts +0 -30
- package/collapsible/__tests__/collapsible-root.directive.spec.ts +0 -27
- package/collapsible/__tests__/collapsible-trigger.directive.spec.ts +0 -30
- package/collapsible/ng-package.json +0 -5
- package/collapsible/src/collapsible-content.directive.ts +0 -34
- package/collapsible/src/collapsible-content.token.ts +0 -6
- package/collapsible/src/collapsible-root.directive.ts +0 -120
- package/collapsible/src/collapsible-trigger.directive.ts +0 -44
- package/collapsible/stories/collapsible-animation.component.ts +0 -116
- package/collapsible/stories/collapsible-external-triggering.component.ts +0 -86
- package/collapsible/stories/collapsible.docs.mdx +0 -53
- package/collapsible/stories/collapsible.stories.ts +0 -151
- package/context-menu/index.ts +0 -10
- package/context-menu/ng-package.json +0 -5
- package/context-menu/src/context-menu-content.directive.ts +0 -47
- package/context-menu/src/context-menu-item-checkbox.directive.ts +0 -30
- package/context-menu/src/context-menu-item-indicator.directive.ts +0 -14
- package/context-menu/src/context-menu-item-radio-group.directive.ts +0 -31
- package/context-menu/src/context-menu-item-radio.directive.ts +0 -69
- package/context-menu/src/context-menu-item-selectable.ts +0 -18
- package/context-menu/src/context-menu-item.directive.ts +0 -65
- package/context-menu/src/context-menu-label.directive.ts +0 -7
- package/context-menu/src/context-menu-separator.directive.ts +0 -13
- package/context-menu/src/context-menu-trigger.directive.ts +0 -82
- package/context-menu/stories/context-menu.docs.mdx +0 -23
- package/context-menu/stories/context-menu.stories.ts +0 -253
- package/core/index.ts +0 -3
- package/core/src/accessor/provide-value-accessor.ts +0 -20
- package/core/src/auto-focus.directive.ts +0 -81
- package/core/src/inject-ng-control.ts +0 -28
- package/core/src/mount.ts +0 -27
- package/dialog/__tests__/dialog-content.directive.spec.ts +0 -77
- package/dialog/__tests__/dialog-trigger.directive.spec.ts +0 -85
- package/dialog/index.ts +0 -31
- package/dialog/ng-package.json +0 -5
- package/dialog/src/dialog-close.directive.ts +0 -18
- package/dialog/src/dialog-content.directive.ts +0 -45
- package/dialog/src/dialog-description.directive.ts +0 -7
- package/dialog/src/dialog-dismiss.directive.ts +0 -18
- package/dialog/src/dialog-ref.ts +0 -70
- package/dialog/src/dialog-title.directive.ts +0 -7
- package/dialog/src/dialog-trigger.directive.ts +0 -52
- package/dialog/src/dialog.config.ts +0 -55
- package/dialog/src/dialog.injectors.ts +0 -12
- package/dialog/src/dialog.service.ts +0 -94
- package/dialog/stories/dialog.docs.mdx +0 -32
- package/dialog/stories/dialog.stories.ts +0 -233
- package/dropdown-menu/index.ts +0 -10
- package/dropdown-menu/ng-package.json +0 -5
- package/dropdown-menu/src/dropdown-menu-content.directive.ts +0 -47
- package/dropdown-menu/src/dropdown-menu-item-checkbox.directive.ts +0 -30
- package/dropdown-menu/src/dropdown-menu-item-indicator.directive.ts +0 -14
- package/dropdown-menu/src/dropdown-menu-item-radio-group.directive.ts +0 -31
- package/dropdown-menu/src/dropdown-menu-item-radio.directive.ts +0 -72
- package/dropdown-menu/src/dropdown-menu-item-selectable.ts +0 -18
- package/dropdown-menu/src/dropdown-menu-item.directive.ts +0 -66
- package/dropdown-menu/src/dropdown-menu-label.directive.ts +0 -7
- package/dropdown-menu/src/dropdown-menu-separator.directive.ts +0 -13
- package/dropdown-menu/src/dropdown-menu-trigger.directive.ts +0 -185
- package/dropdown-menu/stories/dropdown-menu-item-checkbox.component.ts +0 -104
- package/dropdown-menu/stories/dropdown-menu-item-checkbox.styles.scss +0 -106
- package/dropdown-menu/stories/dropdown-menu-item-radio.component.ts +0 -95
- package/dropdown-menu/stories/dropdown-menu-item-radio.styles.scss +0 -106
- package/dropdown-menu/stories/dropdown.docs.mdx +0 -27
- package/dropdown-menu/stories/dropdown.stories.ts +0 -212
- package/form-field/index.ts +0 -1
- package/form-field/src/.gitkeep +0 -0
- package/jest.config.ts +0 -21
- package/label/__tests__/label-root.directive.spec.ts +0 -99
- package/label/ng-package.json +0 -5
- package/label/src/label.directive.ts +0 -58
- package/label/stories/label.docs.mdx +0 -40
- package/label/stories/label.stories.ts +0 -76
- package/menu/index.ts +0 -29
- package/menu/ng-package.json +0 -5
- package/menu/src/menu-content.directive.ts +0 -9
- package/menu/src/menu-directive.ts +0 -10
- package/menu/src/menu-group.directive.ts +0 -12
- package/menu/src/menu-item.directive.ts +0 -44
- package/menu/src/menu-label.directive.ts +0 -7
- package/menu/src/menu-separator.directive.ts +0 -13
- package/menubar/index.ts +0 -38
- package/menubar/ng-package.json +0 -5
- package/menubar/src/menubar-content.directive.ts +0 -9
- package/menubar/src/menubar-item-checkbox.directive.ts +0 -32
- package/menubar/src/menubar-item-indicator.directive.ts +0 -10
- package/menubar/src/menubar-item-radio.directive.ts +0 -33
- package/menubar/src/menubar-item.directive.ts +0 -12
- package/menubar/src/menubar-radio-group.directive.ts +0 -9
- package/menubar/src/menubar-root.directive.ts +0 -15
- package/menubar/src/menubar-separator.directive.ts +0 -9
- package/menubar/src/menubar-trigger.directive.ts +0 -40
- package/menubar/stories/menubar.stories.ts +0 -229
- package/ng-package.json +0 -8
- package/portal/stories/portal.docs.mdx +0 -85
- package/presence/__test__/presence-test.component.ts +0 -51
- package/presence/__test__/presence.spec.ts +0 -50
- package/presence/index.ts +0 -4
- package/presence/src/presence.ts +0 -119
- package/presence/src/transitions/transition.collapse.ts +0 -99
- package/presence/src/transitions/transition.toast.ts +0 -27
- package/presence/src/types.ts +0 -20
- package/presence/src/utils.ts +0 -63
- package/presence/stories/presence-story.componen.ts +0 -69
- package/presence/stories/presence.docs.mdx +0 -40
- package/presence/stories/presence.stories.ts +0 -29
- package/progress/__test__/progress.spec.ts +0 -55
- package/progress/index.ts +0 -4
- package/progress/ng-package.json +0 -5
- package/progress/src/progress-indicator.directive.ts +0 -26
- package/progress/src/progress-root.directive.ts +0 -134
- package/progress/stories/progress.docs.mdx +0 -65
- package/progress/stories/progress.stories.ts +0 -66
- package/project.json +0 -39
- package/radio/ng-package.json +0 -5
- package/radio/src/radio-indicator.directive.ts +0 -17
- package/radio/src/radio-item.directive.ts +0 -68
- package/radio/src/radio-root.directive.ts +0 -207
- package/radio/stories/radio-group.component.ts +0 -39
- package/radio/stories/radio-group.styles.scss +0 -70
- package/radio/stories/radio.docs.mdx +0 -68
- package/radio/stories/radio.stories.ts +0 -155
- package/separator/__tests__/separator.directive.spec.ts +0 -58
- package/separator/ng-package.json +0 -5
- package/separator/src/separator.directive.ts +0 -35
- package/separator/stories/separator.docs.mdx +0 -37
- package/separator/stories/separator.stories.ts +0 -82
- package/slider/src/slider-input.directive.ts +0 -0
- package/slider/src/slider-thumb.directives.ts +0 -60
- package/slider/src/slider-track.directive.ts +0 -11
- package/slider/src/slider.directive.ts +0 -59
- package/slider/src/slider.types.ts +0 -4
- package/switch/index.ts +0 -22
- package/switch/ng-package.json +0 -5
- package/switch/src/switch-input.directive.ts +0 -24
- package/switch/src/switch-root.directive.ts +0 -127
- package/switch/src/switch-thumb.directive.ts +0 -15
- package/switch/stories/switch.docs.mdx +0 -83
- package/switch/stories/switch.stories.ts +0 -149
- package/tabs/__tests__/tabs-context.service.spec.ts +0 -35
- package/tabs/index.ts +0 -26
- package/tabs/ng-package.json +0 -5
- package/tabs/src/tabs-content.directive.ts +0 -23
- package/tabs/src/tabs-context.service.ts +0 -43
- package/tabs/src/tabs-list.directive.ts +0 -21
- package/tabs/src/tabs-root.directive.ts +0 -70
- package/tabs/src/tabs-trigger.directive.ts +0 -55
- package/tabs/stories/tabs.stories.ts +0 -213
- package/test-setup.ts +0 -1
- package/toggle/__tests__/toggle.directive.spec.ts +0 -87
- package/toggle/ng-package.json +0 -5
- package/toggle/src/toggle.directive.ts +0 -49
- package/toggle/stories/toggle.docs.mdx +0 -60
- package/toggle/stories/toggle.stories.ts +0 -84
- package/toggle-group/ng-package.json +0 -5
- package/toggle-group/src/toggle-group-button.directive.ts +0 -73
- package/toggle-group/src/toggle-group-button.token.ts +0 -8
- package/toggle-group/src/toggle-group-multi.directive.ts +0 -158
- package/toggle-group/src/toggle-group.directive.ts +0 -148
- package/toggle-group/src/toggle-group.token.ts +0 -11
- package/toggle-group/stories/toggle-group.docs.mdx +0 -87
- package/toggle-group/stories/toggle-group.stories.ts +0 -95
- package/tsconfig.doc.json +0 -11
- package/tsconfig.json +0 -29
- package/tsconfig.lib.json +0 -19
- package/tsconfig.lib.prod.json +0 -12
- package/tsconfig.spec.json +0 -11
- package/visually-hidden/README.md +0 -3
- package/visually-hidden/stories/visually-hidden.docs.mdx +0 -36
- /package/avatar/{index.ts → index.d.ts} +0 -0
- /package/checkbox/{index.ts → index.d.ts} +0 -0
- /package/collapsible/{index.ts → index.d.ts} +0 -0
- /package/{index.ts → index.d.ts} +0 -0
- /package/label/{index.ts → index.d.ts} +0 -0
- /package/separator/{index.ts → index.d.ts} +0 -0
- /package/toggle/{index.ts → index.d.ts} +0 -0
- /package/toggle-group/{index.ts → index.d.ts} +0 -0
@@ -0,0 +1,67 @@
|
|
1
|
+
import { UniqueSelectionDispatcher } from '@angular/cdk/collections';
|
2
|
+
import { CDK_MENU, CdkMenuItem } from '@angular/cdk/menu';
|
3
|
+
import { Directive, inject, Input } from '@angular/core';
|
4
|
+
import { RdxDropdownMenuContentDirective } from './dropdown-menu-content.directive';
|
5
|
+
import { RdxDropdownMenuItemRadioGroupDirective } from './dropdown-menu-item-radio-group.directive';
|
6
|
+
import { RdxDropdownMenuSelectable } from './dropdown-menu-item-selectable';
|
7
|
+
import { RdxDropdownMenuItemDirective } from './dropdown-menu-item.directive';
|
8
|
+
import * as i0 from "@angular/core";
|
9
|
+
/** Counter used to set a unique id and name for a selectable item */
|
10
|
+
let nextId = 0;
|
11
|
+
export class RdxDropdownMenuItemRadioDirective extends RdxDropdownMenuSelectable {
|
12
|
+
get value() {
|
13
|
+
return this._value || this.id;
|
14
|
+
}
|
15
|
+
set value(value) {
|
16
|
+
this._value = value;
|
17
|
+
}
|
18
|
+
constructor() {
|
19
|
+
super();
|
20
|
+
/** The unique selection dispatcher for this radio's `RdxDropdownMenuItemRadioGroupDirective`. */
|
21
|
+
this.selectionDispatcher = inject(UniqueSelectionDispatcher);
|
22
|
+
this.group = inject(RdxDropdownMenuItemRadioGroupDirective);
|
23
|
+
/** An ID to identify this radio item to the `UniqueSelectionDispatcher`. */
|
24
|
+
this.id = `${nextId++}`;
|
25
|
+
this.triggered.subscribe(() => {
|
26
|
+
if (!this.disabled) {
|
27
|
+
this.selectionDispatcher.notify(this.value, '');
|
28
|
+
this.group.valueChange.emit(this.value);
|
29
|
+
}
|
30
|
+
});
|
31
|
+
}
|
32
|
+
ngAfterContentInit() {
|
33
|
+
this.removeDispatcherListener = this.selectionDispatcher.listen((id) => {
|
34
|
+
this.checked = this.value === id;
|
35
|
+
});
|
36
|
+
}
|
37
|
+
ngOnDestroy() {
|
38
|
+
super.ngOnDestroy();
|
39
|
+
this.removeDispatcherListener();
|
40
|
+
}
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuItemRadioDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
42
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxDropdownMenuItemRadioDirective, isStandalone: true, selector: "[rdxDropdownMenuItemRadio]", inputs: { value: "value" }, host: { attributes: { "role": "menuitemradio" } }, providers: [
|
43
|
+
{ provide: RdxDropdownMenuSelectable, useExisting: RdxDropdownMenuItemRadioDirective },
|
44
|
+
{ provide: RdxDropdownMenuItemDirective, useExisting: RdxDropdownMenuSelectable },
|
45
|
+
{ provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
|
46
|
+
{ provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
|
47
|
+
], usesInheritance: true, ngImport: i0 }); }
|
48
|
+
}
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuItemRadioDirective, decorators: [{
|
50
|
+
type: Directive,
|
51
|
+
args: [{
|
52
|
+
selector: '[rdxDropdownMenuItemRadio]',
|
53
|
+
standalone: true,
|
54
|
+
host: {
|
55
|
+
role: 'menuitemradio'
|
56
|
+
},
|
57
|
+
providers: [
|
58
|
+
{ provide: RdxDropdownMenuSelectable, useExisting: RdxDropdownMenuItemRadioDirective },
|
59
|
+
{ provide: RdxDropdownMenuItemDirective, useExisting: RdxDropdownMenuSelectable },
|
60
|
+
{ provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
|
61
|
+
{ provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
|
62
|
+
]
|
63
|
+
}]
|
64
|
+
}], ctorParameters: () => [], propDecorators: { value: [{
|
65
|
+
type: Input
|
66
|
+
}] } });
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS1pdGVtLXJhZGlvLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvZHJvcGRvd24tbWVudS9zcmMvZHJvcGRvd24tbWVudS1pdGVtLXJhZGlvLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sRUFBb0IsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDcEYsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7O0FBRTlFLHFFQUFxRTtBQUNyRSxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFlZixNQUFNLE9BQU8saUNBQ1QsU0FBUSx5QkFBeUI7SUFRakMsSUFDSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLEtBQWE7UUFDbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQVNEO1FBQ0ksS0FBSyxFQUFFLENBQUM7UUF0QlosaUdBQWlHO1FBQ2hGLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRXhELFVBQUssR0FBRyxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQztRQWF4RSw0RUFBNEU7UUFDcEUsT0FBRSxHQUFHLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztRQU92QixJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUVoRCxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQVUsRUFBRSxFQUFFO1lBQzNFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRVEsV0FBVztRQUNoQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7SUFDcEMsQ0FBQzs4R0E5Q1EsaUNBQWlDO2tHQUFqQyxpQ0FBaUMsd0pBUC9CO1lBQ1AsRUFBRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsV0FBVyxFQUFFLGlDQUFpQyxFQUFFO1lBQ3RGLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLFdBQVcsRUFBRSx5QkFBeUIsRUFBRTtZQUNqRixFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLDRCQUE0QixFQUFFO1lBQ25FLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsK0JBQStCLEVBQUU7U0FDdEU7OzJGQUVRLGlDQUFpQztrQkFiN0MsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsNEJBQTRCO29CQUN0QyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxlQUFlO3FCQUN4QjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1AsRUFBRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsV0FBVyxtQ0FBbUMsRUFBRTt3QkFDdEYsRUFBRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsV0FBVyxFQUFFLHlCQUF5QixFQUFFO3dCQUNqRixFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLDRCQUE0QixFQUFFO3dCQUNuRSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLCtCQUErQixFQUFFO3FCQUN0RTtpQkFDSjt3REFXTyxLQUFLO3NCQURSLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVbmlxdWVTZWxlY3Rpb25EaXNwYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IENES19NRU5VLCBDZGtNZW51SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9tZW51JztcbmltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIERpcmVjdGl2ZSwgaW5qZWN0LCBJbnB1dCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZHhEcm9wZG93bk1lbnVDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9kcm9wZG93bi1tZW51LWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeERyb3Bkb3duTWVudUl0ZW1SYWRpb0dyb3VwRGlyZWN0aXZlIH0gZnJvbSAnLi9kcm9wZG93bi1tZW51LWl0ZW0tcmFkaW8tZ3JvdXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeERyb3Bkb3duTWVudVNlbGVjdGFibGUgfSBmcm9tICcuL2Ryb3Bkb3duLW1lbnUtaXRlbS1zZWxlY3RhYmxlJztcbmltcG9ydCB7IFJkeERyb3Bkb3duTWVudUl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL2Ryb3Bkb3duLW1lbnUtaXRlbS5kaXJlY3RpdmUnO1xuXG4vKiogQ291bnRlciB1c2VkIHRvIHNldCBhIHVuaXF1ZSBpZCBhbmQgbmFtZSBmb3IgYSBzZWxlY3RhYmxlIGl0ZW0gKi9cbmxldCBuZXh0SWQgPSAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tyZHhEcm9wZG93bk1lbnVJdGVtUmFkaW9dJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgcm9sZTogJ21lbnVpdGVtcmFkaW8nXG4gICAgfSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBSZHhEcm9wZG93bk1lbnVTZWxlY3RhYmxlLCB1c2VFeGlzdGluZzogUmR4RHJvcGRvd25NZW51SXRlbVJhZGlvRGlyZWN0aXZlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogUmR4RHJvcGRvd25NZW51SXRlbURpcmVjdGl2ZSwgdXNlRXhpc3Rpbmc6IFJkeERyb3Bkb3duTWVudVNlbGVjdGFibGUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBDZGtNZW51SXRlbSwgdXNlRXhpc3Rpbmc6IFJkeERyb3Bkb3duTWVudUl0ZW1EaXJlY3RpdmUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBDREtfTUVOVSwgdXNlRXhpc3Rpbmc6IFJkeERyb3Bkb3duTWVudUNvbnRlbnREaXJlY3RpdmUgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgUmR4RHJvcGRvd25NZW51SXRlbVJhZGlvRGlyZWN0aXZlXG4gICAgZXh0ZW5kcyBSZHhEcm9wZG93bk1lbnVTZWxlY3RhYmxlXG4gICAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3lcbntcbiAgICAvKiogVGhlIHVuaXF1ZSBzZWxlY3Rpb24gZGlzcGF0Y2hlciBmb3IgdGhpcyByYWRpbydzIGBSZHhEcm9wZG93bk1lbnVJdGVtUmFkaW9Hcm91cERpcmVjdGl2ZWAuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3Rpb25EaXNwYXRjaGVyID0gaW5qZWN0KFVuaXF1ZVNlbGVjdGlvbkRpc3BhdGNoZXIpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBncm91cCA9IGluamVjdChSZHhEcm9wZG93bk1lbnVJdGVtUmFkaW9Hcm91cERpcmVjdGl2ZSk7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCB2YWx1ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlIHx8IHRoaXMuaWQ7XG4gICAgfVxuXG4gICAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF92YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqIEFuIElEIHRvIGlkZW50aWZ5IHRoaXMgcmFkaW8gaXRlbSB0byB0aGUgYFVuaXF1ZVNlbGVjdGlvbkRpc3BhdGNoZXJgLiAqL1xuICAgIHByaXZhdGUgaWQgPSBgJHtuZXh0SWQrK31gO1xuXG4gICAgcHJpdmF0ZSByZW1vdmVEaXNwYXRjaGVyTGlzdGVuZXIhOiAoKSA9PiB2b2lkO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG5cbiAgICAgICAgdGhpcy50cmlnZ2VyZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uRGlzcGF0Y2hlci5ub3RpZnkodGhpcy52YWx1ZSwgJycpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5ncm91cC52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlRGlzcGF0Y2hlckxpc3RlbmVyID0gdGhpcy5zZWxlY3Rpb25EaXNwYXRjaGVyLmxpc3RlbigoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgdGhpcy5jaGVja2VkID0gdGhpcy52YWx1ZSA9PT0gaWQ7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIG5nT25EZXN0cm95KCkge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgICB0aGlzLnJlbW92ZURpc3BhdGNoZXJMaXN0ZW5lcigpO1xuICAgIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import { booleanAttribute, Directive, EventEmitter, Input, Output } from '@angular/core';
|
2
|
+
import { RdxDropdownMenuItemDirective } from './dropdown-menu-item.directive';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
/** Base class providing checked state for selectable DropdownMenuItems. */
|
5
|
+
export class RdxDropdownMenuSelectable extends RdxDropdownMenuItemDirective {
|
6
|
+
constructor() {
|
7
|
+
super(...arguments);
|
8
|
+
/** Whether the element is checked */
|
9
|
+
this.checked = false;
|
10
|
+
this.checkedChange = new EventEmitter();
|
11
|
+
}
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuSelectable, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
13
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.1", type: RdxDropdownMenuSelectable, isStandalone: true, inputs: { checked: ["checked", "checked", booleanAttribute] }, outputs: { checkedChange: "checkedChange" }, host: { properties: { "attr.aria-checked": "!!checked", "attr.aria-disabled": "disabled || null", "attr.data-state": "checked ? \"checked\" : \"unchecked\"" } }, usesInheritance: true, ngImport: i0 }); }
|
14
|
+
}
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuSelectable, decorators: [{
|
16
|
+
type: Directive,
|
17
|
+
args: [{
|
18
|
+
standalone: true,
|
19
|
+
host: {
|
20
|
+
'[attr.aria-checked]': '!!checked',
|
21
|
+
'[attr.aria-disabled]': 'disabled || null',
|
22
|
+
'[attr.data-state]': 'checked ? "checked" : "unchecked"'
|
23
|
+
}
|
24
|
+
}]
|
25
|
+
}], propDecorators: { checked: [{
|
26
|
+
type: Input,
|
27
|
+
args: [{ transform: booleanAttribute }]
|
28
|
+
}], checkedChange: [{
|
29
|
+
type: Output
|
30
|
+
}] } });
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS1pdGVtLXNlbGVjdGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2Ryb3Bkb3duLW1lbnUvc3JjL2Ryb3Bkb3duLW1lbnUtaXRlbS1zZWxlY3RhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7O0FBRTlFLDJFQUEyRTtBQVMzRSxNQUFNLE9BQU8seUJBQTBCLFNBQVEsNEJBQTRCO0lBUjNFOztRQVNJLHFDQUFxQztRQUNHLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFOUMsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0tBQ2xFOzhHQUxZLHlCQUF5QjtrR0FBekIseUJBQXlCLGdFQUVkLGdCQUFnQjs7MkZBRjNCLHlCQUF5QjtrQkFSckMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNGLHFCQUFxQixFQUFFLFdBQVc7d0JBQ2xDLHNCQUFzQixFQUFFLGtCQUFrQjt3QkFDMUMsbUJBQW1CLEVBQUUsbUNBQW1DO3FCQUMzRDtpQkFDSjs4QkFHMkMsT0FBTztzQkFBOUMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFFbkIsYUFBYTtzQkFBL0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZHhEcm9wZG93bk1lbnVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9kcm9wZG93bi1tZW51LWl0ZW0uZGlyZWN0aXZlJztcblxuLyoqIEJhc2UgY2xhc3MgcHJvdmlkaW5nIGNoZWNrZWQgc3RhdGUgZm9yIHNlbGVjdGFibGUgRHJvcGRvd25NZW51SXRlbXMuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmFyaWEtY2hlY2tlZF0nOiAnISFjaGVja2VkJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkIHx8IG51bGwnLFxuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAnY2hlY2tlZCA/IFwiY2hlY2tlZFwiIDogXCJ1bmNoZWNrZWRcIidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeERyb3Bkb3duTWVudVNlbGVjdGFibGUgZXh0ZW5kcyBSZHhEcm9wZG93bk1lbnVJdGVtRGlyZWN0aXZlIHtcbiAgICAvKiogV2hldGhlciB0aGUgZWxlbWVudCBpcyBjaGVja2VkICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSByZWFkb25seSBjaGVja2VkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xufVxuIl19
|
@@ -0,0 +1,71 @@
|
|
1
|
+
import { CDK_MENU, CdkMenuItem } from '@angular/cdk/menu';
|
2
|
+
import { booleanAttribute, Directive, ElementRef, EventEmitter, inject, Input, Output } from '@angular/core';
|
3
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
4
|
+
import { RdxDropdownMenuContentDirective } from './dropdown-menu-content.directive';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
export class RdxDropdownMenuItemDirective extends CdkMenuItem {
|
7
|
+
constructor() {
|
8
|
+
super();
|
9
|
+
this.menu = inject(RdxDropdownMenuContentDirective);
|
10
|
+
this.nativeElement = inject(ElementRef).nativeElement;
|
11
|
+
this.highlighted = false;
|
12
|
+
this.disabled = false;
|
13
|
+
this.onSelect = new EventEmitter();
|
14
|
+
this.menu.highlighted.pipe(takeUntilDestroyed()).subscribe((value) => {
|
15
|
+
if (value !== this) {
|
16
|
+
this.highlighted = false;
|
17
|
+
}
|
18
|
+
});
|
19
|
+
this.triggered.subscribe(this.onSelect);
|
20
|
+
}
|
21
|
+
onPointerMove() {
|
22
|
+
this.nativeElement.focus({ preventScroll: true });
|
23
|
+
this.menu.updateActiveItem(this);
|
24
|
+
}
|
25
|
+
onKeydown(event) {
|
26
|
+
if (this.nativeElement.tagName !== 'BUTTON' && ['Enter', ' '].includes(event.key)) {
|
27
|
+
event.preventDefault();
|
28
|
+
}
|
29
|
+
if (event.key === 'Escape') {
|
30
|
+
if (!this.menu.closeOnEscape) {
|
31
|
+
event.stopPropagation();
|
32
|
+
}
|
33
|
+
else {
|
34
|
+
this.menu.onEscapeKeyDown(event);
|
35
|
+
}
|
36
|
+
}
|
37
|
+
}
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
39
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.1", type: RdxDropdownMenuItemDirective, isStandalone: true, selector: "[rdxDropdownMenuItem]", inputs: { disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { onSelect: "onSelect" }, host: { attributes: { "type": "button" }, listeners: { "pointermove": "onPointerMove()", "focus": "menu.highlighted.next(this)", "keydown": "onKeydown($event)" }, properties: { "attr.data-orientation": "\"vertical\"", "attr.data-highlighted": "highlighted ? \"\" : null", "attr.data-disabled": "disabled ? \"\" : null", "attr.disabled": "disabled ? \"\" : null" } }, providers: [
|
40
|
+
{ provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
|
41
|
+
{ provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
|
42
|
+
], usesInheritance: true, ngImport: i0 }); }
|
43
|
+
}
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuItemDirective, decorators: [{
|
45
|
+
type: Directive,
|
46
|
+
args: [{
|
47
|
+
selector: '[rdxDropdownMenuItem]',
|
48
|
+
standalone: true,
|
49
|
+
host: {
|
50
|
+
type: 'button',
|
51
|
+
// todo horizontal ?
|
52
|
+
'[attr.data-orientation]': '"vertical"',
|
53
|
+
'[attr.data-highlighted]': 'highlighted ? "" : null',
|
54
|
+
'[attr.data-disabled]': 'disabled ? "" : null',
|
55
|
+
'[attr.disabled]': 'disabled ? "" : null',
|
56
|
+
'(pointermove)': 'onPointerMove()',
|
57
|
+
'(focus)': 'menu.highlighted.next(this)',
|
58
|
+
'(keydown)': 'onKeydown($event)'
|
59
|
+
},
|
60
|
+
providers: [
|
61
|
+
{ provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
|
62
|
+
{ provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
|
63
|
+
]
|
64
|
+
}]
|
65
|
+
}], ctorParameters: () => [], propDecorators: { disabled: [{
|
66
|
+
type: Input,
|
67
|
+
args: [{ transform: booleanAttribute }]
|
68
|
+
}], onSelect: [{
|
69
|
+
type: Output
|
70
|
+
}] } });
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvZHJvcGRvd24tbWVudS9zcmMvZHJvcGRvd24tbWVudS1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFxQnBGLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxXQUFXO0lBVXpEO1FBQ0ksS0FBSyxFQUFFLENBQUM7UUFWTyxTQUFJLEdBQUcsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDL0Msa0JBQWEsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDO1FBRXBFLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRTZCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFeEQsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFLbkQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNqRSxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDN0IsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFUyxhQUFhO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRVMsU0FBUyxDQUFDLEtBQW9CO1FBQ3BDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEtBQUssUUFBUSxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNoRixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDM0IsQ0FBQztRQUVELElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDM0IsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzVCLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQyxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7OEdBdkNRLDRCQUE0QjtrR0FBNUIsNEJBQTRCLHNHQU1qQixnQkFBZ0Isa2FBWHpCO1lBQ1AsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSw0QkFBNEIsRUFBRTtZQUNuRSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLCtCQUErQixFQUFFO1NBQ3RFOzsyRkFFUSw0QkFBNEI7a0JBbkJ4QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLFFBQVE7d0JBQ2Qsb0JBQW9CO3dCQUNwQix5QkFBeUIsRUFBRSxZQUFZO3dCQUN2Qyx5QkFBeUIsRUFBRSx5QkFBeUI7d0JBQ3BELHNCQUFzQixFQUFFLHNCQUFzQjt3QkFDOUMsaUJBQWlCLEVBQUUsc0JBQXNCO3dCQUN6QyxlQUFlLEVBQUUsaUJBQWlCO3dCQUNsQyxTQUFTLEVBQUUsNkJBQTZCO3dCQUN4QyxXQUFXLEVBQUUsbUJBQW1CO3FCQUNuQztvQkFDRCxTQUFTLEVBQUU7d0JBQ1AsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsOEJBQThCLEVBQUU7d0JBQ25FLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsK0JBQStCLEVBQUU7cUJBQ3RFO2lCQUNKO3dEQU9vRCxRQUFRO3NCQUF4RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUVuQixRQUFRO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ0RLX01FTlUsIENka01lbnVJdGVtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5pbXBvcnQgeyBSZHhEcm9wZG93bk1lbnVDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9kcm9wZG93bi1tZW51LWNvbnRlbnQuZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbcmR4RHJvcGRvd25NZW51SXRlbV0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICB0eXBlOiAnYnV0dG9uJyxcbiAgICAgICAgLy8gdG9kbyBob3Jpem9udGFsID9cbiAgICAgICAgJ1thdHRyLmRhdGEtb3JpZW50YXRpb25dJzogJ1widmVydGljYWxcIicsXG4gICAgICAgICdbYXR0ci5kYXRhLWhpZ2hsaWdodGVkXSc6ICdoaWdobGlnaHRlZCA/IFwiXCIgOiBudWxsJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkID8gXCJcIiA6IG51bGwnLFxuICAgICAgICAnW2F0dHIuZGlzYWJsZWRdJzogJ2Rpc2FibGVkID8gXCJcIiA6IG51bGwnLFxuICAgICAgICAnKHBvaW50ZXJtb3ZlKSc6ICdvblBvaW50ZXJNb3ZlKCknLFxuICAgICAgICAnKGZvY3VzKSc6ICdtZW51LmhpZ2hsaWdodGVkLm5leHQodGhpcyknLFxuICAgICAgICAnKGtleWRvd24pJzogJ29uS2V5ZG93bigkZXZlbnQpJ1xuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogQ2RrTWVudUl0ZW0sIHVzZUV4aXN0aW5nOiBSZHhEcm9wZG93bk1lbnVJdGVtRGlyZWN0aXZlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogQ0RLX01FTlUsIHVzZUV4aXN0aW5nOiBSZHhEcm9wZG93bk1lbnVDb250ZW50RGlyZWN0aXZlIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJkeERyb3Bkb3duTWVudUl0ZW1EaXJlY3RpdmUgZXh0ZW5kcyBDZGtNZW51SXRlbSB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1lbnUgPSBpbmplY3QoUmR4RHJvcGRvd25NZW51Q29udGVudERpcmVjdGl2ZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG5hdGl2ZUVsZW1lbnQgPSBpbmplY3QoRWxlbWVudFJlZikubmF0aXZlRWxlbWVudDtcblxuICAgIGhpZ2hsaWdodGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgb3ZlcnJpZGUgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSByZWFkb25seSBvblNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMubWVudS5oaWdobGlnaHRlZC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBpZiAodmFsdWUgIT09IHRoaXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhpZ2hsaWdodGVkID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMudHJpZ2dlcmVkLnN1YnNjcmliZSh0aGlzLm9uU2VsZWN0KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Qb2ludGVyTW92ZSgpIHtcbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICAgICAgdGhpcy5tZW51LnVwZGF0ZUFjdGl2ZUl0ZW0odGhpcyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5uYXRpdmVFbGVtZW50LnRhZ05hbWUgIT09ICdCVVRUT04nICYmIFsnRW50ZXInLCAnICddLmluY2x1ZGVzKGV2ZW50LmtleSkpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgICAgICAgaWYgKCF0aGlzLm1lbnUuY2xvc2VPbkVzY2FwZSkge1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1lbnUub25Fc2NhcGVLZXlEb3duKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { Directive } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export class RdxDropdownMenuLabelDirective {
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
5
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxDropdownMenuLabelDirective, isStandalone: true, selector: "[rdxDropdownMenuLabel]", ngImport: i0 }); }
|
6
|
+
}
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuLabelDirective, decorators: [{
|
8
|
+
type: Directive,
|
9
|
+
args: [{
|
10
|
+
selector: '[rdxDropdownMenuLabel]',
|
11
|
+
standalone: true
|
12
|
+
}]
|
13
|
+
}] });
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS1sYWJlbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2Ryb3Bkb3duLW1lbnUvc3JjL2Ryb3Bkb3duLW1lbnUtbGFiZWwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTFDLE1BQU0sT0FBTyw2QkFBNkI7OEdBQTdCLDZCQUE2QjtrR0FBN0IsNkJBQTZCOzsyRkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tyZHhEcm9wZG93bk1lbnVMYWJlbF0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgUmR4RHJvcGRvd25NZW51TGFiZWxEaXJlY3RpdmUge31cbiJdfQ==
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { Directive } from '@angular/core';
|
2
|
+
import { RdxSeparatorRootDirective } from '@radix-ng/primitives/separator';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@radix-ng/primitives/separator";
|
5
|
+
export class RdxDropdownMenuSeparatorDirective {
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuSeparatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
7
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxDropdownMenuSeparatorDirective, isStandalone: true, selector: "[rdxDropdownMenuSeparator]", host: { attributes: { "role": "separator" }, properties: { "attr.aria-orientation": "'horizontal'" } }, hostDirectives: [{ directive: i1.RdxSeparatorRootDirective }], ngImport: i0 }); }
|
8
|
+
}
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuSeparatorDirective, decorators: [{
|
10
|
+
type: Directive,
|
11
|
+
args: [{
|
12
|
+
selector: '[rdxDropdownMenuSeparator]',
|
13
|
+
standalone: true,
|
14
|
+
hostDirectives: [RdxSeparatorRootDirective],
|
15
|
+
host: {
|
16
|
+
role: 'separator',
|
17
|
+
'[attr.aria-orientation]': "'horizontal'"
|
18
|
+
}
|
19
|
+
}]
|
20
|
+
}] });
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS1zZXBhcmF0b3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9kcm9wZG93bi1tZW51L3NyYy9kcm9wZG93bi1tZW51LXNlcGFyYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBVzNFLE1BQU0sT0FBTyxpQ0FBaUM7OEdBQWpDLGlDQUFpQztrR0FBakMsaUNBQWlDOzsyRkFBakMsaUNBQWlDO2tCQVQ3QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixjQUFjLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztvQkFDM0MsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxXQUFXO3dCQUNqQix5QkFBeUIsRUFBRSxjQUFjO3FCQUM1QztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR4U2VwYXJhdG9yUm9vdERpcmVjdGl2ZSB9IGZyb20gJ0ByYWRpeC1uZy9wcmltaXRpdmVzL3NlcGFyYXRvcic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3JkeERyb3Bkb3duTWVudVNlcGFyYXRvcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtSZHhTZXBhcmF0b3JSb290RGlyZWN0aXZlXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHJvbGU6ICdzZXBhcmF0b3InLFxuICAgICAgICAnW2F0dHIuYXJpYS1vcmllbnRhdGlvbl0nOiBcIidob3Jpem9udGFsJ1wiXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhEcm9wZG93bk1lbnVTZXBhcmF0b3JEaXJlY3RpdmUge31cbiJdfQ==
|
@@ -0,0 +1,179 @@
|
|
1
|
+
import { CdkMenuTrigger, MENU_TRIGGER, PARENT_OR_NEW_MENU_STACK_PROVIDER } from '@angular/cdk/menu';
|
2
|
+
import { booleanAttribute, Directive, Input, input, numberAttribute } from '@angular/core';
|
3
|
+
import { outputFromObservable } from '@angular/core/rxjs-interop';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export var DropdownSide;
|
6
|
+
(function (DropdownSide) {
|
7
|
+
DropdownSide["Top"] = "top";
|
8
|
+
DropdownSide["Right"] = "right";
|
9
|
+
DropdownSide["Bottom"] = "bottom";
|
10
|
+
DropdownSide["Left"] = "left";
|
11
|
+
})(DropdownSide || (DropdownSide = {}));
|
12
|
+
export var DropdownAlign;
|
13
|
+
(function (DropdownAlign) {
|
14
|
+
DropdownAlign["Start"] = "start";
|
15
|
+
DropdownAlign["Center"] = "center";
|
16
|
+
DropdownAlign["End"] = "end";
|
17
|
+
})(DropdownAlign || (DropdownAlign = {}));
|
18
|
+
export const mapRdxAlignToCdkPosition = {
|
19
|
+
start: 'top',
|
20
|
+
center: 'center',
|
21
|
+
end: 'bottom'
|
22
|
+
};
|
23
|
+
const dropdownPositions = {
|
24
|
+
top: {
|
25
|
+
originX: 'start',
|
26
|
+
originY: 'top',
|
27
|
+
overlayX: 'start',
|
28
|
+
overlayY: 'bottom',
|
29
|
+
offsetX: 0,
|
30
|
+
offsetY: 0
|
31
|
+
},
|
32
|
+
right: {
|
33
|
+
originX: 'end',
|
34
|
+
originY: 'top',
|
35
|
+
overlayX: 'start',
|
36
|
+
overlayY: 'top',
|
37
|
+
offsetX: 0,
|
38
|
+
offsetY: 0
|
39
|
+
},
|
40
|
+
bottom: {
|
41
|
+
originX: 'start',
|
42
|
+
originY: 'bottom',
|
43
|
+
overlayX: 'start',
|
44
|
+
overlayY: 'top',
|
45
|
+
offsetX: 0,
|
46
|
+
offsetY: 0
|
47
|
+
},
|
48
|
+
left: {
|
49
|
+
originX: 'start',
|
50
|
+
originY: 'top',
|
51
|
+
overlayX: 'end',
|
52
|
+
overlayY: 'top',
|
53
|
+
offsetX: 0,
|
54
|
+
offsetY: 0
|
55
|
+
}
|
56
|
+
};
|
57
|
+
export class RdxDropdownMenuTriggerDirective extends CdkMenuTrigger {
|
58
|
+
set rdxDropdownMenuTrigger(value) {
|
59
|
+
this.menuTemplateRef = value;
|
60
|
+
}
|
61
|
+
set side(value) {
|
62
|
+
if (!Object.values(DropdownSide).includes(value)) {
|
63
|
+
throw new Error(`Unknown side: ${value}`);
|
64
|
+
}
|
65
|
+
this._side = value;
|
66
|
+
this.menuPosition[0] = dropdownPositions[value];
|
67
|
+
}
|
68
|
+
get side() {
|
69
|
+
return this._side;
|
70
|
+
}
|
71
|
+
set align(value) {
|
72
|
+
if (!Object.values(DropdownAlign).includes(value)) {
|
73
|
+
throw new Error(`Unknown align: ${value}`);
|
74
|
+
}
|
75
|
+
this._align = value;
|
76
|
+
if (this.isVertical) {
|
77
|
+
this.defaultPosition.overlayX = this.defaultPosition.originX = value;
|
78
|
+
}
|
79
|
+
else {
|
80
|
+
this.defaultPosition.overlayY = this.defaultPosition.originY = mapRdxAlignToCdkPosition[value];
|
81
|
+
}
|
82
|
+
}
|
83
|
+
get align() {
|
84
|
+
return this._align;
|
85
|
+
}
|
86
|
+
set sideOffset(value) {
|
87
|
+
// todo need invert value for top and left
|
88
|
+
if (this.isVertical) {
|
89
|
+
this.defaultPosition.offsetY = value;
|
90
|
+
}
|
91
|
+
else {
|
92
|
+
this.defaultPosition.offsetX = value;
|
93
|
+
}
|
94
|
+
}
|
95
|
+
set alignOffset(value) {
|
96
|
+
// todo need invert value for top and left
|
97
|
+
if (this.isVertical) {
|
98
|
+
this.defaultPosition.offsetX = value;
|
99
|
+
}
|
100
|
+
else {
|
101
|
+
this.defaultPosition.offsetY = value;
|
102
|
+
}
|
103
|
+
}
|
104
|
+
get isVertical() {
|
105
|
+
return this._side === DropdownSide.Top || this._side === DropdownSide.Bottom;
|
106
|
+
}
|
107
|
+
get defaultPosition() {
|
108
|
+
return this.menuPosition[0];
|
109
|
+
}
|
110
|
+
constructor() {
|
111
|
+
super();
|
112
|
+
/**
|
113
|
+
* @ignore
|
114
|
+
*/
|
115
|
+
this.disabled = input(false, {
|
116
|
+
transform: booleanAttribute
|
117
|
+
});
|
118
|
+
this._side = DropdownSide.Bottom;
|
119
|
+
this._align = DropdownAlign.Start;
|
120
|
+
this.onOpenChange = outputFromObservable(this.opened);
|
121
|
+
// todo priority
|
122
|
+
this.menuPosition = [{ ...dropdownPositions[DropdownSide.Bottom] }];
|
123
|
+
}
|
124
|
+
onPointerDown($event) {
|
125
|
+
// only call handler if it's the left button (mousedown gets triggered by all mouse buttons)
|
126
|
+
// but not when the control key is pressed (avoiding MacOS right click)
|
127
|
+
if (!this.disabled() && $event.button === 0 && !$event.ctrlKey) {
|
128
|
+
/* empty */
|
129
|
+
if (!this.isOpen()) {
|
130
|
+
// prevent trigger focusing when opening
|
131
|
+
// this allows the content to be given focus without competition
|
132
|
+
$event.preventDefault();
|
133
|
+
}
|
134
|
+
}
|
135
|
+
}
|
136
|
+
getOverlayRef() {
|
137
|
+
return this.overlayRef;
|
138
|
+
}
|
139
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
140
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.1", type: RdxDropdownMenuTriggerDirective, isStandalone: true, selector: "[rdxDropdownMenuTrigger]", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, rdxDropdownMenuTrigger: { classPropertyName: "rdxDropdownMenuTrigger", publicName: "rdxDropdownMenuTrigger", isSignal: false, isRequired: false, transformFunction: null }, side: { classPropertyName: "side", publicName: "side", isSignal: false, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: false, isRequired: false, transformFunction: null }, sideOffset: { classPropertyName: "sideOffset", publicName: "sideOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute }, alignOffset: { classPropertyName: "alignOffset", publicName: "alignOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute } }, outputs: { onOpenChange: "onOpenChange" }, host: { attributes: { "type": "button" }, listeners: { "pointerdown": "onPointerDown($event)" }, properties: { "attr.aria-haspopup": "'menu'", "attr.aria-expanded": "isOpen()", "attr.data-state": "isOpen() ? 'open': 'closed'", "attr.data-disabled": "disabled() ? '' : undefined", "disabled": "disabled()" } }, providers: [
|
141
|
+
{ provide: CdkMenuTrigger, useExisting: RdxDropdownMenuTriggerDirective },
|
142
|
+
{ provide: MENU_TRIGGER, useExisting: CdkMenuTrigger },
|
143
|
+
PARENT_OR_NEW_MENU_STACK_PROVIDER
|
144
|
+
], usesInheritance: true, ngImport: i0 }); }
|
145
|
+
}
|
146
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxDropdownMenuTriggerDirective, decorators: [{
|
147
|
+
type: Directive,
|
148
|
+
args: [{
|
149
|
+
selector: '[rdxDropdownMenuTrigger]',
|
150
|
+
standalone: true,
|
151
|
+
host: {
|
152
|
+
type: 'button',
|
153
|
+
'[attr.aria-haspopup]': "'menu'",
|
154
|
+
'[attr.aria-expanded]': 'isOpen()',
|
155
|
+
'[attr.data-state]': "isOpen() ? 'open': 'closed'",
|
156
|
+
'[attr.data-disabled]': "disabled() ? '' : undefined",
|
157
|
+
'[disabled]': 'disabled()',
|
158
|
+
'(pointerdown)': 'onPointerDown($event)'
|
159
|
+
},
|
160
|
+
providers: [
|
161
|
+
{ provide: CdkMenuTrigger, useExisting: RdxDropdownMenuTriggerDirective },
|
162
|
+
{ provide: MENU_TRIGGER, useExisting: CdkMenuTrigger },
|
163
|
+
PARENT_OR_NEW_MENU_STACK_PROVIDER
|
164
|
+
]
|
165
|
+
}]
|
166
|
+
}], ctorParameters: () => [], propDecorators: { rdxDropdownMenuTrigger: [{
|
167
|
+
type: Input
|
168
|
+
}], side: [{
|
169
|
+
type: Input
|
170
|
+
}], align: [{
|
171
|
+
type: Input
|
172
|
+
}], sideOffset: [{
|
173
|
+
type: Input,
|
174
|
+
args: [{ transform: numberAttribute }]
|
175
|
+
}], alignOffset: [{
|
176
|
+
type: Input,
|
177
|
+
args: [{ transform: numberAttribute }]
|
178
|
+
}] } });
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS10cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvZHJvcGRvd24tbWVudS9zcmMvZHJvcGRvd24tbWVudS10cmlnZ2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXBHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRWxFLE1BQU0sQ0FBTixJQUFZLFlBS1g7QUFMRCxXQUFZLFlBQVk7SUFDcEIsMkJBQVcsQ0FBQTtJQUNYLCtCQUFlLENBQUE7SUFDZixpQ0FBaUIsQ0FBQTtJQUNqQiw2QkFBYSxDQUFBO0FBQ2pCLENBQUMsRUFMVyxZQUFZLEtBQVosWUFBWSxRQUt2QjtBQUVELE1BQU0sQ0FBTixJQUFZLGFBSVg7QUFKRCxXQUFZLGFBQWE7SUFDckIsZ0NBQWUsQ0FBQTtJQUNmLGtDQUFpQixDQUFBO0lBQ2pCLDRCQUFXLENBQUE7QUFDZixDQUFDLEVBSlcsYUFBYSxLQUFiLGFBQWEsUUFJeEI7QUFFRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRztJQUNwQyxLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLEdBQUcsRUFBRSxRQUFRO0NBQ2hCLENBQUM7QUFFRixNQUFNLGlCQUFpQixHQUE0QztJQUMvRCxHQUFHLEVBQUU7UUFDRCxPQUFPLEVBQUUsT0FBTztRQUNoQixPQUFPLEVBQUUsS0FBSztRQUNkLFFBQVEsRUFBRSxPQUFPO1FBQ2pCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLE9BQU8sRUFBRSxDQUFDO1FBQ1YsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUNELEtBQUssRUFBRTtRQUNILE9BQU8sRUFBRSxLQUFLO1FBQ2QsT0FBTyxFQUFFLEtBQUs7UUFDZCxRQUFRLEVBQUUsT0FBTztRQUNqQixRQUFRLEVBQUUsS0FBSztRQUNmLE9BQU8sRUFBRSxDQUFDO1FBQ1YsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUNELE1BQU0sRUFBRTtRQUNKLE9BQU8sRUFBRSxPQUFPO1FBQ2hCLE9BQU8sRUFBRSxRQUFRO1FBQ2pCLFFBQVEsRUFBRSxPQUFPO1FBQ2pCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsT0FBTyxFQUFFLENBQUM7UUFDVixPQUFPLEVBQUUsQ0FBQztLQUNiO0lBQ0QsSUFBSSxFQUFFO1FBQ0YsT0FBTyxFQUFFLE9BQU87UUFDaEIsT0FBTyxFQUFFLEtBQUs7UUFDZCxRQUFRLEVBQUUsS0FBSztRQUNmLFFBQVEsRUFBRSxLQUFLO1FBQ2YsT0FBTyxFQUFFLENBQUM7UUFDVixPQUFPLEVBQUUsQ0FBQztLQUNiO0NBQ0osQ0FBQztBQXFCRixNQUFNLE9BQU8sK0JBQWdDLFNBQVEsY0FBYztJQVEvRCxJQUNJLHNCQUFzQixDQUFDLEtBQWtDO1FBQ3pELElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUNJLElBQUksQ0FBQyxLQUFtQjtRQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMvQyxNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUlELElBQ0ksS0FBSyxDQUFDLEtBQW9CO1FBQzFCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2hELE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBRXBCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN6RSxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxHQUFHLHdCQUF3QixDQUNuRixLQUFLLENBQ2lCLENBQUM7UUFDL0IsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUlELElBQ0ksVUFBVSxDQUFDLEtBQWE7UUFDeEIsMENBQTBDO1FBQzFDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN6QyxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN6QyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQ0ksV0FBVyxDQUFDLEtBQWE7UUFDekIsMENBQTBDO1FBQzFDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN6QyxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN6QyxDQUFDO0lBQ0wsQ0FBQztJQUlELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxZQUFZLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssWUFBWSxDQUFDLE1BQU0sQ0FBQztJQUNqRixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRDtRQUNJLEtBQUssRUFBRSxDQUFDO1FBbkZaOztXQUVHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBd0IsS0FBSyxFQUFFO1lBQ3BELFNBQVMsRUFBRSxnQkFBZ0I7U0FDOUIsQ0FBQyxDQUFDO1FBc0JLLFVBQUssR0FBaUIsWUFBWSxDQUFDLE1BQU0sQ0FBQztRQXVCMUMsV0FBTSxHQUFrQixhQUFhLENBQUMsS0FBSyxDQUFDO1FBc0JwRCxpQkFBWSxHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQVk3QyxnQkFBZ0I7UUFDaEIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBa0I7UUFDNUIsNEZBQTRGO1FBQzVGLHVFQUF1RTtRQUN2RSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdELFdBQVc7WUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7Z0JBQ2pCLHdDQUF3QztnQkFDeEMsZ0VBQWdFO2dCQUNoRSxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDNUIsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYTtRQUNULE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDOzhHQXhHUSwrQkFBK0I7a0dBQS9CLCtCQUErQixrdUJBcURwQixlQUFlLHVJQVVmLGVBQWUsa1hBckV4QjtZQUNQLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsK0JBQStCLEVBQUU7WUFDekUsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUU7WUFDdEQsaUNBQWlDO1NBQ3BDOzsyRkFFUSwrQkFBK0I7a0JBbkIzQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLFFBQVE7d0JBQ2Qsc0JBQXNCLEVBQUUsUUFBUTt3QkFDaEMsc0JBQXNCLEVBQUUsVUFBVTt3QkFDbEMsbUJBQW1CLEVBQUUsNkJBQTZCO3dCQUNsRCxzQkFBc0IsRUFBRSw2QkFBNkI7d0JBQ3JELFlBQVksRUFBRSxZQUFZO3dCQUUxQixlQUFlLEVBQUUsdUJBQXVCO3FCQUMzQztvQkFDRCxTQUFTLEVBQUU7d0JBQ1AsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFdBQVcsaUNBQWlDLEVBQUU7d0JBQ3pFLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFO3dCQUN0RCxpQ0FBaUM7cUJBQ3BDO2lCQUNKO3dEQVVPLHNCQUFzQjtzQkFEekIsS0FBSztnQkFNRixJQUFJO3NCQURQLEtBQUs7Z0JBa0JGLEtBQUs7c0JBRFIsS0FBSztnQkF3QkYsVUFBVTtzQkFEYixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFXakMsV0FBVztzQkFEZCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDZGtNZW51VHJpZ2dlciwgTUVOVV9UUklHR0VSLCBQQVJFTlRfT1JfTkVXX01FTlVfU1RBQ0tfUFJPVklERVIgfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBDb25uZWN0ZWRQb3NpdGlvbiwgT3ZlcmxheVJlZiwgVmVydGljYWxDb25uZWN0aW9uUG9zIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgRGlyZWN0aXZlLCBJbnB1dCwgaW5wdXQsIG51bWJlckF0dHJpYnV0ZSwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG91dHB1dEZyb21PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5leHBvcnQgZW51bSBEcm9wZG93blNpZGUge1xuICAgIFRvcCA9ICd0b3AnLFxuICAgIFJpZ2h0ID0gJ3JpZ2h0JyxcbiAgICBCb3R0b20gPSAnYm90dG9tJyxcbiAgICBMZWZ0ID0gJ2xlZnQnXG59XG5cbmV4cG9ydCBlbnVtIERyb3Bkb3duQWxpZ24ge1xuICAgIFN0YXJ0ID0gJ3N0YXJ0JyxcbiAgICBDZW50ZXIgPSAnY2VudGVyJyxcbiAgICBFbmQgPSAnZW5kJ1xufVxuXG5leHBvcnQgY29uc3QgbWFwUmR4QWxpZ25Ub0Nka1Bvc2l0aW9uID0ge1xuICAgIHN0YXJ0OiAndG9wJyxcbiAgICBjZW50ZXI6ICdjZW50ZXInLFxuICAgIGVuZDogJ2JvdHRvbSdcbn07XG5cbmNvbnN0IGRyb3Bkb3duUG9zaXRpb25zOiBSZWNvcmQ8RHJvcGRvd25TaWRlLCBDb25uZWN0ZWRQb3NpdGlvbj4gPSB7XG4gICAgdG9wOiB7XG4gICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgICBvZmZzZXRYOiAwLFxuICAgICAgICBvZmZzZXRZOiAwXG4gICAgfSxcbiAgICByaWdodDoge1xuICAgICAgICBvcmlnaW5YOiAnZW5kJyxcbiAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgIG9mZnNldFg6IDAsXG4gICAgICAgIG9mZnNldFk6IDBcbiAgICB9LFxuICAgIGJvdHRvbToge1xuICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgb2Zmc2V0WDogMCxcbiAgICAgICAgb2Zmc2V0WTogMFxuICAgIH0sXG4gICAgbGVmdDoge1xuICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgIG9mZnNldFg6IDAsXG4gICAgICAgIG9mZnNldFk6IDBcbiAgICB9XG59O1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tyZHhEcm9wZG93bk1lbnVUcmlnZ2VyXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgIHR5cGU6ICdidXR0b24nLFxuICAgICAgICAnW2F0dHIuYXJpYS1oYXNwb3B1cF0nOiBcIidtZW51J1wiLFxuICAgICAgICAnW2F0dHIuYXJpYS1leHBhbmRlZF0nOiAnaXNPcGVuKCknLFxuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiBcImlzT3BlbigpID8gJ29wZW4nOiAnY2xvc2VkJ1wiLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiBcImRpc2FibGVkKCkgPyAnJyA6IHVuZGVmaW5lZFwiLFxuICAgICAgICAnW2Rpc2FibGVkXSc6ICdkaXNhYmxlZCgpJyxcblxuICAgICAgICAnKHBvaW50ZXJkb3duKSc6ICdvblBvaW50ZXJEb3duKCRldmVudCknXG4gICAgfSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBDZGtNZW51VHJpZ2dlciwgdXNlRXhpc3Rpbmc6IFJkeERyb3Bkb3duTWVudVRyaWdnZXJEaXJlY3RpdmUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBNRU5VX1RSSUdHRVIsIHVzZUV4aXN0aW5nOiBDZGtNZW51VHJpZ2dlciB9LFxuICAgICAgICBQQVJFTlRfT1JfTkVXX01FTlVfU1RBQ0tfUFJPVklERVJcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJkeERyb3Bkb3duTWVudVRyaWdnZXJEaXJlY3RpdmUgZXh0ZW5kcyBDZGtNZW51VHJpZ2dlciB7XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbiwgQm9vbGVhbklucHV0PihmYWxzZSwge1xuICAgICAgICB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGVcbiAgICB9KTtcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHJkeERyb3Bkb3duTWVudVRyaWdnZXIodmFsdWU6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgbnVsbCkge1xuICAgICAgICB0aGlzLm1lbnVUZW1wbGF0ZVJlZiA9IHZhbHVlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNpZGUodmFsdWU6IERyb3Bkb3duU2lkZSkge1xuICAgICAgICBpZiAoIU9iamVjdC52YWx1ZXMoRHJvcGRvd25TaWRlKS5pbmNsdWRlcyh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBzaWRlOiAke3ZhbHVlfWApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fc2lkZSA9IHZhbHVlO1xuXG4gICAgICAgIHRoaXMubWVudVBvc2l0aW9uWzBdID0gZHJvcGRvd25Qb3NpdGlvbnNbdmFsdWVdO1xuICAgIH1cblxuICAgIGdldCBzaWRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2lkZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zaWRlOiBEcm9wZG93blNpZGUgPSBEcm9wZG93blNpZGUuQm90dG9tO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgYWxpZ24odmFsdWU6IERyb3Bkb3duQWxpZ24pIHtcbiAgICAgICAgaWYgKCFPYmplY3QudmFsdWVzKERyb3Bkb3duQWxpZ24pLmluY2x1ZGVzKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGFsaWduOiAke3ZhbHVlfWApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fYWxpZ24gPSB2YWx1ZTtcblxuICAgICAgICBpZiAodGhpcy5pc1ZlcnRpY2FsKSB7XG4gICAgICAgICAgICB0aGlzLmRlZmF1bHRQb3NpdGlvbi5vdmVybGF5WCA9IHRoaXMuZGVmYXVsdFBvc2l0aW9uLm9yaWdpblggPSB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdFBvc2l0aW9uLm92ZXJsYXlZID0gdGhpcy5kZWZhdWx0UG9zaXRpb24ub3JpZ2luWSA9IG1hcFJkeEFsaWduVG9DZGtQb3NpdGlvbltcbiAgICAgICAgICAgICAgICB2YWx1ZVxuICAgICAgICAgICAgXSBhcyBWZXJ0aWNhbENvbm5lY3Rpb25Qb3M7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgYWxpZ24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hbGlnbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9hbGlnbjogRHJvcGRvd25BbGlnbiA9IERyb3Bkb3duQWxpZ24uU3RhcnQ7XG5cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICAgIHNldCBzaWRlT2Zmc2V0KHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgLy8gdG9kbyBuZWVkIGludmVydCB2YWx1ZSBmb3IgdG9wIGFuZCBsZWZ0XG4gICAgICAgIGlmICh0aGlzLmlzVmVydGljYWwpIHtcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdFBvc2l0aW9uLm9mZnNldFkgPSB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdFBvc2l0aW9uLm9mZnNldFggPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pXG4gICAgc2V0IGFsaWduT2Zmc2V0KHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgLy8gdG9kbyBuZWVkIGludmVydCB2YWx1ZSBmb3IgdG9wIGFuZCBsZWZ0XG4gICAgICAgIGlmICh0aGlzLmlzVmVydGljYWwpIHtcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdFBvc2l0aW9uLm9mZnNldFggPSB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdFBvc2l0aW9uLm9mZnNldFkgPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uT3BlbkNoYW5nZSA9IG91dHB1dEZyb21PYnNlcnZhYmxlKHRoaXMub3BlbmVkKTtcblxuICAgIGdldCBpc1ZlcnRpY2FsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2lkZSA9PT0gRHJvcGRvd25TaWRlLlRvcCB8fCB0aGlzLl9zaWRlID09PSBEcm9wZG93blNpZGUuQm90dG9tO1xuICAgIH1cblxuICAgIGdldCBkZWZhdWx0UG9zaXRpb24oKTogQ29ubmVjdGVkUG9zaXRpb24ge1xuICAgICAgICByZXR1cm4gdGhpcy5tZW51UG9zaXRpb25bMF07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIC8vIHRvZG8gcHJpb3JpdHlcbiAgICAgICAgdGhpcy5tZW51UG9zaXRpb24gPSBbeyAuLi5kcm9wZG93blBvc2l0aW9uc1tEcm9wZG93blNpZGUuQm90dG9tXSB9XTtcbiAgICB9XG5cbiAgICBvblBvaW50ZXJEb3duKCRldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICAvLyBvbmx5IGNhbGwgaGFuZGxlciBpZiBpdCdzIHRoZSBsZWZ0IGJ1dHRvbiAobW91c2Vkb3duIGdldHMgdHJpZ2dlcmVkIGJ5IGFsbCBtb3VzZSBidXR0b25zKVxuICAgICAgICAvLyBidXQgbm90IHdoZW4gdGhlIGNvbnRyb2wga2V5IGlzIHByZXNzZWQgKGF2b2lkaW5nIE1hY09TIHJpZ2h0IGNsaWNrKVxuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQoKSAmJiAkZXZlbnQuYnV0dG9uID09PSAwICYmICEkZXZlbnQuY3RybEtleSkge1xuICAgICAgICAgICAgLyogZW1wdHkgKi9cbiAgICAgICAgICAgIGlmICghdGhpcy5pc09wZW4oKSkge1xuICAgICAgICAgICAgICAgIC8vIHByZXZlbnQgdHJpZ2dlciBmb2N1c2luZyB3aGVuIG9wZW5pbmdcbiAgICAgICAgICAgICAgICAvLyB0aGlzIGFsbG93cyB0aGUgY29udGVudCB0byBiZSBnaXZlbiBmb2N1cyB3aXRob3V0IGNvbXBldGl0aW9uXG4gICAgICAgICAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRPdmVybGF5UmVmKCk6IE92ZXJsYXlSZWYgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmxheVJlZjtcbiAgICB9XG59XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export * from './src/label.directive';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2xhYmVsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy9sYWJlbC5kaXJlY3RpdmUnO1xuIl19
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
4
|
+
export * from './index';
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaXgtbmctcHJpbWl0aXZlcy1sYWJlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvbGFiZWwvcmFkaXgtbmctcHJpbWl0aXZlcy1sYWJlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
@@ -0,0 +1,59 @@
|
|
1
|
+
import { computed, Directive, ElementRef, inject, input } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
let idIterator = 0;
|
4
|
+
export class RdxLabelDirective {
|
5
|
+
constructor() {
|
6
|
+
/**
|
7
|
+
* @type string
|
8
|
+
* @default 'rdx-label-{idIterator}'
|
9
|
+
*/
|
10
|
+
this.id = input(`rdx-label-${idIterator++}`);
|
11
|
+
/**
|
12
|
+
* @ignore
|
13
|
+
*/
|
14
|
+
this.elementId = computed(() => (this.id() ? this.id() : null));
|
15
|
+
/**
|
16
|
+
* The id of the element the label is associated with.
|
17
|
+
* @type string
|
18
|
+
* @default false
|
19
|
+
*/
|
20
|
+
this.htmlFor = input('');
|
21
|
+
/**
|
22
|
+
* @ignore
|
23
|
+
*/
|
24
|
+
this.elementRef = inject((ElementRef));
|
25
|
+
}
|
26
|
+
// prevent text selection when double-clicking label
|
27
|
+
// The main problem with double-clicks in a web app is that
|
28
|
+
// you will have to create special code to handle this on touch enabled devices.
|
29
|
+
/**
|
30
|
+
* @ignore
|
31
|
+
*/
|
32
|
+
onMouseDown(event) {
|
33
|
+
const target = event.target;
|
34
|
+
// only prevent text selection if clicking inside the label itself
|
35
|
+
if (['BUTTON', 'INPUT', 'SELECT', 'TEXTAREA'].includes(target.tagName)) {
|
36
|
+
return;
|
37
|
+
}
|
38
|
+
// prevent text selection when double-clicking label
|
39
|
+
if (this.elementRef.nativeElement.contains(target) && !event.defaultPrevented && event.detail > 1) {
|
40
|
+
event.preventDefault();
|
41
|
+
}
|
42
|
+
}
|
43
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
44
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.1", type: RdxLabelDirective, isStandalone: true, selector: "label[rdxLabel]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, htmlFor: { classPropertyName: "htmlFor", publicName: "htmlFor", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "mousedown": "onMouseDown($event)" }, properties: { "attr.id": "this.elementId()", "attr.for": "htmlFor ? htmlFor() : null" } }, exportAs: ["rdxLabel"], ngImport: i0 }); }
|
45
|
+
}
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxLabelDirective, decorators: [{
|
47
|
+
type: Directive,
|
48
|
+
args: [{
|
49
|
+
selector: 'label[rdxLabel]',
|
50
|
+
exportAs: 'rdxLabel',
|
51
|
+
standalone: true,
|
52
|
+
host: {
|
53
|
+
'[attr.id]': 'this.elementId()',
|
54
|
+
'[attr.for]': 'htmlFor ? htmlFor() : null',
|
55
|
+
'(mousedown)': 'onMouseDown($event)'
|
56
|
+
}
|
57
|
+
}]
|
58
|
+
}] });
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9sYWJlbC9zcmMvbGFiZWwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFlLE1BQU0sZUFBZSxDQUFDOztBQUU1RixJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFZbkIsTUFBTSxPQUFPLGlCQUFpQjtJQVY5QjtRQVdJOzs7V0FHRztRQUNNLE9BQUUsR0FBd0IsS0FBSyxDQUFTLGFBQWEsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRTlFOztXQUVHO1FBQ2dCLGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUU5RTs7OztXQUlHO1FBQ00sWUFBTyxHQUF3QixLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFFMUQ7O1dBRUc7UUFDYyxlQUFVLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBdUIsQ0FBQSxDQUFDLENBQUM7S0FxQmpFO0lBbkJHLG9EQUFvRDtJQUNwRCwyREFBMkQ7SUFDM0QsZ0ZBQWdGO0lBQ2hGOztPQUVHO0lBQ0gsV0FBVyxDQUFDLEtBQWlCO1FBQ3pCLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFxQixDQUFDO1FBRTNDLGtFQUFrRTtRQUNsRSxJQUFJLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3JFLE9BQU87UUFDWCxDQUFDO1FBRUQsb0RBQW9EO1FBQ3BELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDaEcsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDTCxDQUFDOzhHQTFDUSxpQkFBaUI7a0dBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFWN0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUUsVUFBVTtvQkFDcEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDRixXQUFXLEVBQUUsa0JBQWtCO3dCQUMvQixZQUFZLEVBQUUsNEJBQTRCO3dCQUMxQyxhQUFhLEVBQUUscUJBQXFCO3FCQUN2QztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQsIElucHV0U2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmxldCBpZEl0ZXJhdG9yID0gMDtcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdsYWJlbFtyZHhMYWJlbF0nLFxuICAgIGV4cG9ydEFzOiAncmR4TGFiZWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuaWRdJzogJ3RoaXMuZWxlbWVudElkKCknLFxuICAgICAgICAnW2F0dHIuZm9yXSc6ICdodG1sRm9yID8gaHRtbEZvcigpIDogbnVsbCcsXG4gICAgICAgICcobW91c2Vkb3duKSc6ICdvbk1vdXNlRG93bigkZXZlbnQpJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4TGFiZWxEaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqIEB0eXBlIHN0cmluZ1xuICAgICAqIEBkZWZhdWx0ICdyZHgtbGFiZWwte2lkSXRlcmF0b3J9J1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGlkOiBJbnB1dFNpZ25hbDxzdHJpbmc+ID0gaW5wdXQ8c3RyaW5nPihgcmR4LWxhYmVsLSR7aWRJdGVyYXRvcisrfWApO1xuXG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBlbGVtZW50SWQgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5pZCgpID8gdGhpcy5pZCgpIDogbnVsbCkpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGlkIG9mIHRoZSBlbGVtZW50IHRoZSBsYWJlbCBpcyBhc3NvY2lhdGVkIHdpdGguXG4gICAgICogQHR5cGUgc3RyaW5nXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICByZWFkb25seSBodG1sRm9yOiBJbnB1dFNpZ25hbDxzdHJpbmc+ID0gaW5wdXQ8c3RyaW5nPignJyk7XG5cbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcblxuICAgIC8vIHByZXZlbnQgdGV4dCBzZWxlY3Rpb24gd2hlbiBkb3VibGUtY2xpY2tpbmcgbGFiZWxcbiAgICAvLyBUaGUgbWFpbiBwcm9ibGVtIHdpdGggZG91YmxlLWNsaWNrcyBpbiBhIHdlYiBhcHAgaXMgdGhhdFxuICAgIC8vIHlvdSB3aWxsIGhhdmUgdG8gY3JlYXRlIHNwZWNpYWwgY29kZSB0byBoYW5kbGUgdGhpcyBvbiB0b3VjaCBlbmFibGVkIGRldmljZXMuXG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIG9uTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICAvLyBvbmx5IHByZXZlbnQgdGV4dCBzZWxlY3Rpb24gaWYgY2xpY2tpbmcgaW5zaWRlIHRoZSBsYWJlbCBpdHNlbGZcbiAgICAgICAgaWYgKFsnQlVUVE9OJywgJ0lOUFVUJywgJ1NFTEVDVCcsICdURVhUQVJFQSddLmluY2x1ZGVzKHRhcmdldC50YWdOYW1lKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gcHJldmVudCB0ZXh0IHNlbGVjdGlvbiB3aGVuIGRvdWJsZS1jbGlja2luZyBsYWJlbFxuICAgICAgICBpZiAodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnModGFyZ2V0KSAmJiAhZXZlbnQuZGVmYXVsdFByZXZlbnRlZCAmJiBldmVudC5kZXRhaWwgPiAxKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { RdxMenuContentDirective } from './src/menu-content.directive';
|
3
|
+
import { RdxMenuDirective } from './src/menu-directive';
|
4
|
+
import { RdxMenuGroupDirective } from './src/menu-group.directive';
|
5
|
+
import { RdxMenuItemDirective } from './src/menu-item.directive';
|
6
|
+
import { RdxMenuLabelDirective } from './src/menu-label.directive';
|
7
|
+
import { RdxMenuSeparatorDirective } from './src/menu-separator.directive';
|
8
|
+
import * as i0 from "@angular/core";
|
9
|
+
export * from './src/menu-content.directive';
|
10
|
+
export * from './src/menu-directive';
|
11
|
+
export * from './src/menu-group.directive';
|
12
|
+
export * from './src/menu-item.directive';
|
13
|
+
export * from './src/menu-label.directive';
|
14
|
+
export * from './src/menu-separator.directive';
|
15
|
+
const menuImports = [
|
16
|
+
RdxMenuDirective,
|
17
|
+
RdxMenuGroupDirective,
|
18
|
+
RdxMenuItemDirective,
|
19
|
+
RdxMenuSeparatorDirective,
|
20
|
+
RdxMenuContentDirective,
|
21
|
+
RdxMenuLabelDirective
|
22
|
+
];
|
23
|
+
export class MenuModule {
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: MenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
25
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.1", ngImport: i0, type: MenuModule, imports: [RdxMenuDirective,
|
26
|
+
RdxMenuGroupDirective,
|
27
|
+
RdxMenuItemDirective,
|
28
|
+
RdxMenuSeparatorDirective,
|
29
|
+
RdxMenuContentDirective,
|
30
|
+
RdxMenuLabelDirective], exports: [RdxMenuDirective,
|
31
|
+
RdxMenuGroupDirective,
|
32
|
+
RdxMenuItemDirective,
|
33
|
+
RdxMenuSeparatorDirective,
|
34
|
+
RdxMenuContentDirective,
|
35
|
+
RdxMenuLabelDirective] }); }
|
36
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: MenuModule }); }
|
37
|
+
}
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: MenuModule, decorators: [{
|
39
|
+
type: NgModule,
|
40
|
+
args: [{
|
41
|
+
imports: [...menuImports],
|
42
|
+
exports: [...menuImports]
|
43
|
+
}]
|
44
|
+
}] });
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFFM0UsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsZ0NBQWdDLENBQUM7QUFFL0MsTUFBTSxXQUFXLEdBQUc7SUFDaEIsZ0JBQWdCO0lBQ2hCLHFCQUFxQjtJQUNyQixvQkFBb0I7SUFDcEIseUJBQXlCO0lBQ3pCLHVCQUF1QjtJQUN2QixxQkFBcUI7Q0FDeEIsQ0FBQztBQU1GLE1BQU0sT0FBTyxVQUFVOzhHQUFWLFVBQVU7K0dBQVYsVUFBVSxZQVpuQixnQkFBZ0I7WUFDaEIscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsdUJBQXVCO1lBQ3ZCLHFCQUFxQixhQUxyQixnQkFBZ0I7WUFDaEIscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsdUJBQXVCO1lBQ3ZCLHFCQUFxQjsrR0FPWixVQUFVOzsyRkFBVixVQUFVO2tCQUp0QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLEdBQUcsV0FBVyxDQUFDO29CQUN6QixPQUFPLEVBQUUsQ0FBQyxHQUFHLFdBQVcsQ0FBQztpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR4TWVudUNvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9tZW51LWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeE1lbnVEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9tZW51LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSZHhNZW51R3JvdXBEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9tZW51LWdyb3VwLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSZHhNZW51SXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtaXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmR4TWVudUxhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi9zcmMvbWVudS1sYWJlbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmR4TWVudVNlcGFyYXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtc2VwYXJhdG9yLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc3JjL21lbnUtY29udGVudC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvbWVudS1kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvbWVudS1ncm91cC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvbWVudS1pdGVtLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9tZW51LWxhYmVsLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9tZW51LXNlcGFyYXRvci5kaXJlY3RpdmUnO1xuXG5jb25zdCBtZW51SW1wb3J0cyA9IFtcbiAgICBSZHhNZW51RGlyZWN0aXZlLFxuICAgIFJkeE1lbnVHcm91cERpcmVjdGl2ZSxcbiAgICBSZHhNZW51SXRlbURpcmVjdGl2ZSxcbiAgICBSZHhNZW51U2VwYXJhdG9yRGlyZWN0aXZlLFxuICAgIFJkeE1lbnVDb250ZW50RGlyZWN0aXZlLFxuICAgIFJkeE1lbnVMYWJlbERpcmVjdGl2ZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbLi4ubWVudUltcG9ydHNdLFxuICAgIGV4cG9ydHM6IFsuLi5tZW51SW1wb3J0c11cbn0pXG5leHBvcnQgY2xhc3MgTWVudU1vZHVsZSB7fVxuIl19
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
4
|
+
export * from './index';
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaXgtbmctcHJpbWl0aXZlcy1tZW51LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9tZW51L3JhZGl4LW5nLXByaW1pdGl2ZXMtbWVudS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { CdkMenu } from '@angular/cdk/menu';
|
2
|
+
import { Directive } from '@angular/core';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@angular/cdk/menu";
|
5
|
+
export class RdxMenuContentDirective {
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxMenuContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
7
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxMenuContentDirective, isStandalone: true, selector: "[MenuContent]", hostDirectives: [{ directive: i1.CdkMenu }], ngImport: i0 }); }
|
8
|
+
}
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxMenuContentDirective, decorators: [{
|
10
|
+
type: Directive,
|
11
|
+
args: [{
|
12
|
+
selector: '[MenuContent]',
|
13
|
+
standalone: true,
|
14
|
+
hostDirectives: [CdkMenu]
|
15
|
+
}]
|
16
|
+
}] });
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvbWVudS9zcmMvbWVudS1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTzFDLE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjtrR0FBdkIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQUxuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxlQUFlO29CQUN6QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka01lbnUgfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbTWVudUNvbnRlbnRdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbQ2RrTWVudV1cbn0pXG5leHBvcnQgY2xhc3MgUmR4TWVudUNvbnRlbnREaXJlY3RpdmUge31cbiJdfQ==
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { CdkMenu } from '@angular/cdk/menu';
|
2
|
+
import { Directive } from '@angular/core';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@angular/cdk/menu";
|
5
|
+
export class RdxMenuDirective {
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
7
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxMenuDirective, isStandalone: true, selector: "[Menu],[MenuSub]", hostDirectives: [{ directive: i1.CdkMenu }], ngImport: i0 }); }
|
8
|
+
}
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxMenuDirective, decorators: [{
|
10
|
+
type: Directive,
|
11
|
+
args: [{
|
12
|
+
selector: '[Menu],[MenuSub]',
|
13
|
+
standalone: true,
|
14
|
+
host: {},
|
15
|
+
hostDirectives: [CdkMenu]
|
16
|
+
}]
|
17
|
+
}] });
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvc3JjL21lbnUtZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRMUMsTUFBTSxPQUFPLGdCQUFnQjs4R0FBaEIsZ0JBQWdCO2tHQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBTjVCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRSxFQUFFO29CQUNSLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQztpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtNZW51IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW01lbnVdLFtNZW51U3ViXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7fSxcbiAgICBob3N0RGlyZWN0aXZlczogW0Nka01lbnVdXG59KVxuZXhwb3J0IGNsYXNzIFJkeE1lbnVEaXJlY3RpdmUge31cbiJdfQ==
|