@fluentui/web-components 3.0.0-beta.1 → 3.0.0-beta.11
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/CHANGELOG.md +93 -2
- package/dist/dts/accordion/accordion.d.ts +47 -3
- package/dist/dts/accordion/accordion.definition.d.ts +0 -4
- package/dist/dts/accordion/accordion.options.d.ts +14 -0
- package/dist/dts/accordion/accordion.template.d.ts +4 -0
- package/dist/dts/accordion-item/accordion-item.d.ts +78 -3
- package/dist/dts/accordion-item/accordion-item.definition.d.ts +0 -3
- package/dist/dts/accordion-item/accordion-item.options.d.ts +1 -1
- package/dist/dts/accordion-item/accordion-item.template.d.ts +2 -1
- package/dist/dts/anchor-button/anchor-button.d.ts +116 -4
- package/dist/dts/anchor-button/anchor-button.definition.d.ts +0 -3
- package/dist/dts/anchor-button/anchor-button.options.d.ts +19 -2
- package/dist/dts/anchor-button/anchor-button.template.d.ts +7 -2
- package/dist/dts/avatar/avatar.options.d.ts +1 -1
- package/dist/dts/badge/badge.d.ts +1 -1
- package/dist/dts/badge/badge.definition.d.ts +0 -3
- package/dist/dts/badge/badge.options.d.ts +2 -2
- package/dist/dts/button/button.d.ts +142 -4
- package/dist/dts/button/button.definition.d.ts +0 -3
- package/dist/dts/button/button.form-associated.d.ts +14 -0
- package/dist/dts/button/button.options.d.ts +24 -3
- package/dist/dts/button/button.template.d.ts +2 -0
- package/dist/dts/checkbox/checkbox.d.ts +46 -3
- package/dist/dts/checkbox/checkbox.form-associated.d.ts +14 -0
- package/dist/dts/checkbox/checkbox.options.d.ts +1 -1
- package/dist/dts/checkbox/checkbox.template.d.ts +6 -1
- package/dist/dts/compound-button/compound-button.definition.d.ts +0 -3
- package/dist/dts/compound-button/compound-button.options.d.ts +6 -6
- package/dist/dts/counter-badge/counter-badge.d.ts +1 -1
- package/dist/dts/counter-badge/counter-badge.definition.d.ts +0 -4
- package/dist/dts/counter-badge/counter-badge.options.d.ts +1 -1
- package/dist/dts/dialog/define.d.ts +1 -0
- package/dist/dts/dialog/dialog.d.ts +192 -0
- package/dist/dts/dialog/dialog.definition.d.ts +9 -0
- package/dist/dts/dialog/dialog.options.d.ts +11 -0
- package/dist/dts/dialog/dialog.styles.d.ts +4 -0
- package/dist/dts/dialog/dialog.template.d.ts +7 -0
- package/dist/dts/dialog/index.d.ts +4 -0
- package/dist/dts/divider/divider.d.ts +20 -4
- package/dist/dts/divider/divider.options.d.ts +30 -6
- package/dist/dts/divider/divider.template.d.ts +1 -0
- package/dist/dts/form-associated/form-associated.d.ts +178 -0
- package/dist/dts/image/image.options.d.ts +1 -1
- package/dist/dts/index.d.ts +5 -0
- package/dist/dts/label/label.options.d.ts +1 -1
- package/dist/dts/menu/define.d.ts +1 -0
- package/dist/dts/menu/index.d.ts +4 -0
- package/dist/dts/menu/menu.d.ts +194 -0
- package/dist/dts/menu/menu.definition.d.ts +9 -0
- package/dist/dts/menu/menu.styles.d.ts +4 -0
- package/dist/dts/menu/menu.template.d.ts +4 -0
- package/dist/dts/menu-button/menu-button.definition.d.ts +0 -3
- package/dist/dts/menu-button/menu-button.options.d.ts +2 -2
- package/dist/dts/menu-item/menu-item.d.ts +161 -4
- package/dist/dts/menu-item/menu-item.definition.d.ts +0 -4
- package/dist/dts/menu-item/menu-item.options.d.ts +30 -0
- package/dist/dts/menu-item/menu-item.template.d.ts +2 -1
- package/dist/dts/menu-list/menu-list.d.ts +71 -4
- package/dist/dts/menu-list/menu-list.definition.d.ts +0 -4
- package/dist/dts/menu-list/menu-list.template.d.ts +1 -0
- package/dist/dts/patterns/aria-globals.d.ts +189 -0
- package/dist/dts/patterns/index.d.ts +2 -0
- package/dist/dts/patterns/start-end.d.ts +44 -0
- package/dist/dts/progress-bar/base-progress.d.ts +41 -0
- package/dist/dts/progress-bar/progress-bar.d.ts +11 -4
- package/dist/dts/progress-bar/progress-bar.options.d.ts +10 -1
- package/dist/dts/progress-bar/progress-bar.template.d.ts +2 -0
- package/dist/dts/progress-ring/progress-ring.d.ts +15 -0
- package/dist/dts/progress-ring/progress-ring.options.d.ts +9 -0
- package/dist/dts/radio/radio.d.ts +54 -3
- package/dist/dts/radio/radio.form-associated.d.ts +14 -0
- package/dist/dts/radio/radio.template.d.ts +2 -1
- package/dist/dts/radio-group/index.d.ts +0 -1
- package/dist/dts/radio-group/radio-group.d.ts +91 -2
- package/dist/dts/radio-group/radio-group.options.d.ts +17 -0
- package/dist/dts/radio-group/radio-group.template.d.ts +1 -0
- package/dist/dts/slider/slider-utilities.d.ts +5 -0
- package/dist/dts/slider/slider.d.ts +195 -5
- package/dist/dts/slider/slider.form-associated.d.ts +14 -0
- package/dist/dts/slider/slider.options.d.ts +43 -2
- package/dist/dts/slider/slider.template.d.ts +4 -2
- package/dist/dts/spinner/spinner.d.ts +2 -2
- package/dist/dts/spinner/spinner.definition.d.ts +0 -4
- package/dist/dts/spinner/spinner.options.d.ts +1 -1
- package/dist/dts/spinner/spinner.template.d.ts +2 -0
- package/dist/dts/switch/switch.d.ts +34 -2
- package/dist/dts/switch/switch.form-associated.d.ts +14 -0
- package/dist/dts/switch/switch.options.d.ts +1 -1
- package/dist/dts/switch/switch.template.d.ts +2 -1
- package/dist/dts/tab/tab.d.ts +17 -2
- package/dist/dts/tab/tab.template.d.ts +3 -3
- package/dist/dts/tab-panel/tab-panel.d.ts +2 -2
- package/dist/dts/tab-panel/tab-panel.template.d.ts +4 -1
- package/dist/dts/tabs/tabs.d.ts +89 -4
- package/dist/dts/tabs/tabs.options.d.ts +21 -3
- package/dist/dts/tabs/tabs.template.d.ts +5 -1
- package/dist/dts/text/text.options.d.ts +1 -1
- package/dist/dts/text-input/index.d.ts +0 -1
- package/dist/dts/text-input/text-field.form-associated.d.ts +14 -0
- package/dist/dts/text-input/text-input.d.ts +134 -6
- package/dist/dts/text-input/text-input.options.d.ts +32 -1
- package/dist/dts/text-input/text-input.template.d.ts +2 -1
- package/dist/dts/theme/design-tokens.d.ts +384 -384
- package/dist/dts/theme/set-theme.d.ts +1 -2
- package/dist/dts/toggle-button/toggle-button.definition.d.ts +0 -2
- package/dist/dts/toggle-button/toggle-button.options.d.ts +2 -2
- package/dist/dts/utils/behaviors/match-media-stylesheet-behavior.d.ts +124 -0
- package/dist/dts/utils/benchmark-dependencies/tokens.d.ts +1 -0
- package/dist/dts/utils/benchmark-wrapper.d.ts +2 -0
- package/dist/dts/utils/direction.d.ts +10 -0
- package/dist/dts/utils/display.d.ts +17 -0
- package/dist/dts/utils/index.d.ts +6 -0
- package/dist/dts/utils/template-helpers.d.ts +16 -0
- package/dist/dts/utils/typings.d.ts +6 -0
- package/dist/dts/utils/whitespace-filter.d.ts +12 -0
- package/dist/esm/accordion/accordion.definition.js +0 -4
- package/dist/esm/accordion/accordion.definition.js.map +1 -1
- package/dist/esm/accordion/accordion.js +216 -3
- package/dist/esm/accordion/accordion.js.map +1 -1
- package/dist/esm/accordion/accordion.options.js +9 -0
- package/dist/esm/accordion/accordion.options.js.map +1 -0
- package/dist/esm/accordion/accordion.styles.js +1 -1
- package/dist/esm/accordion/accordion.styles.js.map +1 -1
- package/dist/esm/accordion/accordion.template.js +11 -1
- package/dist/esm/accordion/accordion.template.js.map +1 -1
- package/dist/esm/accordion-item/accordion-item.definition.js +0 -3
- package/dist/esm/accordion-item/accordion-item.definition.js.map +1 -1
- package/dist/esm/accordion-item/accordion-item.js +80 -4
- package/dist/esm/accordion-item/accordion-item.js.map +1 -1
- package/dist/esm/accordion-item/accordion-item.styles.js +1 -1
- package/dist/esm/accordion-item/accordion-item.styles.js.map +1 -1
- package/dist/esm/accordion-item/accordion-item.template.js +47 -2
- package/dist/esm/accordion-item/accordion-item.template.js.map +1 -1
- package/dist/esm/anchor-button/anchor-button.definition.js +0 -3
- package/dist/esm/anchor-button/anchor-button.definition.js.map +1 -1
- package/dist/esm/anchor-button/anchor-button.js +52 -4
- package/dist/esm/anchor-button/anchor-button.js.map +1 -1
- package/dist/esm/anchor-button/anchor-button.options.js +11 -0
- package/dist/esm/anchor-button/anchor-button.options.js.map +1 -1
- package/dist/esm/anchor-button/anchor-button.template.js +49 -1
- package/dist/esm/anchor-button/anchor-button.template.js.map +1 -1
- package/dist/esm/avatar/avatar.styles.js +5 -5
- package/dist/esm/avatar/avatar.styles.js.map +1 -1
- package/dist/esm/badge/badge.definition.js +0 -3
- package/dist/esm/badge/badge.definition.js.map +1 -1
- package/dist/esm/badge/badge.js +1 -1
- package/dist/esm/badge/badge.js.map +1 -1
- package/dist/esm/badge/badge.template.js +2 -2
- package/dist/esm/badge/badge.template.js.map +1 -1
- package/dist/esm/button/button.definition.js +0 -3
- package/dist/esm/button/button.definition.js.map +1 -1
- package/dist/esm/button/button.form-associated.js +14 -0
- package/dist/esm/button/button.form-associated.js.map +1 -0
- package/dist/esm/button/button.js +124 -4
- package/dist/esm/button/button.js.map +1 -1
- package/dist/esm/button/button.options.js +10 -0
- package/dist/esm/button/button.options.js.map +1 -1
- package/dist/esm/button/button.styles.js +2 -2
- package/dist/esm/button/button.styles.js.map +1 -1
- package/dist/esm/button/button.template.js +49 -1
- package/dist/esm/button/button.template.js.map +1 -1
- package/dist/esm/checkbox/checkbox.form-associated.js +14 -0
- package/dist/esm/checkbox/checkbox.form-associated.js.map +1 -0
- package/dist/esm/checkbox/checkbox.js +62 -4
- package/dist/esm/checkbox/checkbox.js.map +1 -1
- package/dist/esm/checkbox/checkbox.styles.js +1 -1
- package/dist/esm/checkbox/checkbox.styles.js.map +1 -1
- package/dist/esm/checkbox/checkbox.template.js +35 -7
- package/dist/esm/checkbox/checkbox.template.js.map +1 -1
- package/dist/esm/compound-button/compound-button.definition.js +0 -3
- package/dist/esm/compound-button/compound-button.definition.js.map +1 -1
- package/dist/esm/compound-button/compound-button.options.js.map +1 -1
- package/dist/esm/compound-button/compound-button.template.js +1 -1
- package/dist/esm/compound-button/compound-button.template.js.map +1 -1
- package/dist/esm/counter-badge/counter-badge.definition.js +0 -4
- package/dist/esm/counter-badge/counter-badge.definition.js.map +1 -1
- package/dist/esm/counter-badge/counter-badge.js +1 -1
- package/dist/esm/counter-badge/counter-badge.js.map +1 -1
- package/dist/esm/dialog/define.js +4 -0
- package/dist/esm/dialog/define.js.map +1 -0
- package/dist/esm/dialog/dialog.definition.js +17 -0
- package/dist/esm/dialog/dialog.definition.js.map +1 -0
- package/dist/esm/dialog/dialog.js +370 -0
- package/dist/esm/dialog/dialog.js.map +1 -0
- package/dist/esm/dialog/dialog.options.js +10 -0
- package/dist/esm/dialog/dialog.options.js.map +1 -0
- package/dist/esm/dialog/dialog.styles.js +102 -0
- package/dist/esm/dialog/dialog.styles.js.map +1 -0
- package/dist/esm/dialog/dialog.template.js +61 -0
- package/dist/esm/dialog/dialog.template.js.map +1 -0
- package/dist/esm/dialog/index.js +5 -0
- package/dist/esm/dialog/index.js.map +1 -0
- package/dist/esm/divider/divider.js +29 -4
- package/dist/esm/divider/divider.js.map +1 -1
- package/dist/esm/divider/divider.options.js +14 -5
- package/dist/esm/divider/divider.options.js.map +1 -1
- package/dist/esm/divider/divider.styles.js +1 -1
- package/dist/esm/divider/divider.styles.js.map +1 -1
- package/dist/esm/divider/divider.template.js +12 -1
- package/dist/esm/divider/divider.template.js.map +1 -1
- package/dist/esm/form-associated/form-associated.js +458 -0
- package/dist/esm/form-associated/form-associated.js.map +1 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/label/label.styles.js +1 -1
- package/dist/esm/label/label.styles.js.map +1 -1
- package/dist/esm/menu/define.js +4 -0
- package/dist/esm/menu/define.js.map +1 -0
- package/dist/esm/menu/index.js +5 -0
- package/dist/esm/menu/index.js.map +1 -0
- package/dist/esm/menu/menu.definition.js +17 -0
- package/dist/esm/menu/menu.definition.js.map +1 -0
- package/dist/esm/menu/menu.js +413 -0
- package/dist/esm/menu/menu.js.map +1 -0
- package/dist/esm/menu/menu.styles.js +17 -0
- package/dist/esm/menu/menu.styles.js.map +1 -0
- package/dist/esm/menu/menu.template.js +24 -0
- package/dist/esm/menu/menu.template.js.map +1 -0
- package/dist/esm/menu-button/menu-button.definition.js +0 -3
- package/dist/esm/menu-button/menu-button.definition.js.map +1 -1
- package/dist/esm/menu-button/menu-button.options.js.map +1 -1
- package/dist/esm/menu-button/menu-button.template.js +1 -1
- package/dist/esm/menu-button/menu-button.template.js.map +1 -1
- package/dist/esm/menu-item/menu-item.definition.js +0 -4
- package/dist/esm/menu-item/menu-item.definition.js.map +1 -1
- package/dist/esm/menu-item/menu-item.js +270 -4
- package/dist/esm/menu-item/menu-item.js.map +1 -1
- package/dist/esm/menu-item/menu-item.options.js +27 -0
- package/dist/esm/menu-item/menu-item.options.js.map +1 -0
- package/dist/esm/menu-item/menu-item.styles.js +1 -1
- package/dist/esm/menu-item/menu-item.styles.js.map +1 -1
- package/dist/esm/menu-item/menu-item.template.js +57 -2
- package/dist/esm/menu-item/menu-item.template.js.map +1 -1
- package/dist/esm/menu-list/menu-list.definition.js +0 -4
- package/dist/esm/menu-list/menu-list.definition.js.map +1 -1
- package/dist/esm/menu-list/menu-list.js +265 -10
- package/dist/esm/menu-list/menu-list.js.map +1 -1
- package/dist/esm/menu-list/menu-list.styles.js +1 -1
- package/dist/esm/menu-list/menu-list.styles.js.map +1 -1
- package/dist/esm/menu-list/menu-list.template.js +13 -1
- package/dist/esm/menu-list/menu-list.template.js.map +1 -1
- package/dist/esm/patterns/aria-globals.js +77 -0
- package/dist/esm/patterns/aria-globals.js.map +1 -0
- package/dist/esm/patterns/index.js +3 -0
- package/dist/esm/patterns/index.js.map +1 -0
- package/dist/esm/patterns/start-end.js +29 -0
- package/dist/esm/patterns/start-end.js.map +1 -0
- package/dist/esm/progress-bar/base-progress.js +61 -0
- package/dist/esm/progress-bar/base-progress.js.map +1 -0
- package/dist/esm/progress-bar/progress-bar.js +10 -3
- package/dist/esm/progress-bar/progress-bar.js.map +1 -1
- package/dist/esm/progress-bar/progress-bar.options.js.map +1 -1
- package/dist/esm/progress-bar/progress-bar.styles.js +1 -1
- package/dist/esm/progress-bar/progress-bar.styles.js.map +1 -1
- package/dist/esm/progress-bar/progress-bar.template.js +25 -1
- package/dist/esm/progress-bar/progress-bar.template.js.map +1 -1
- package/dist/esm/progress-ring/progress-ring.js +16 -0
- package/dist/esm/progress-ring/progress-ring.js.map +1 -0
- package/dist/esm/progress-ring/progress-ring.options.js +2 -0
- package/dist/esm/progress-ring/progress-ring.options.js.map +1 -0
- package/dist/esm/radio/radio.form-associated.js +14 -0
- package/dist/esm/radio/radio.form-associated.js.map +1 -0
- package/dist/esm/radio/radio.js +96 -3
- package/dist/esm/radio/radio.js.map +1 -1
- package/dist/esm/radio/radio.styles.js +1 -1
- package/dist/esm/radio/radio.styles.js.map +1 -1
- package/dist/esm/radio/radio.template.js +28 -2
- package/dist/esm/radio/radio.template.js.map +1 -1
- package/dist/esm/radio-group/index.js +0 -1
- package/dist/esm/radio-group/index.js.map +1 -1
- package/dist/esm/radio-group/radio-group.js +346 -3
- package/dist/esm/radio-group/radio-group.js.map +1 -1
- package/dist/esm/radio-group/radio-group.options.js +7 -0
- package/dist/esm/radio-group/radio-group.options.js.map +1 -0
- package/dist/esm/radio-group/radio-group.styles.js +1 -1
- package/dist/esm/radio-group/radio-group.styles.js.map +1 -1
- package/dist/esm/radio-group/radio-group.template.js +30 -1
- package/dist/esm/radio-group/radio-group.template.js.map +1 -1
- package/dist/esm/slider/slider-utilities.js +12 -0
- package/dist/esm/slider/slider-utilities.js.map +1 -0
- package/dist/esm/slider/slider.form-associated.js +14 -0
- package/dist/esm/slider/slider.form-associated.js.map +1 -0
- package/dist/esm/slider/slider.js +432 -16
- package/dist/esm/slider/slider.js.map +1 -1
- package/dist/esm/slider/slider.options.js +11 -1
- package/dist/esm/slider/slider.options.js.map +1 -1
- package/dist/esm/slider/slider.styles.js +1 -1
- package/dist/esm/slider/slider.styles.js.map +1 -1
- package/dist/esm/slider/slider.template.js +38 -1
- package/dist/esm/slider/slider.template.js.map +1 -1
- package/dist/esm/spinner/spinner.definition.js +0 -4
- package/dist/esm/spinner/spinner.definition.js.map +1 -1
- package/dist/esm/spinner/spinner.js +2 -2
- package/dist/esm/spinner/spinner.js.map +1 -1
- package/dist/esm/spinner/spinner.styles.js +1 -1
- package/dist/esm/spinner/spinner.styles.js.map +1 -1
- package/dist/esm/spinner/spinner.template.js +27 -1
- package/dist/esm/spinner/spinner.template.js.map +1 -1
- package/dist/esm/styles/partials/badge.partials.js +1 -1
- package/dist/esm/styles/partials/badge.partials.js.map +1 -1
- package/dist/esm/switch/switch.form-associated.js +14 -0
- package/dist/esm/switch/switch.form-associated.js.map +1 -0
- package/dist/esm/switch/switch.js +48 -3
- package/dist/esm/switch/switch.js.map +1 -1
- package/dist/esm/switch/switch.styles.js +4 -3
- package/dist/esm/switch/switch.styles.js.map +1 -1
- package/dist/esm/switch/switch.template.js +25 -1
- package/dist/esm/switch/switch.template.js.map +1 -1
- package/dist/esm/tab/tab.js +14 -3
- package/dist/esm/tab/tab.js.map +1 -1
- package/dist/esm/tab/tab.styles.js +1 -1
- package/dist/esm/tab/tab.styles.js.map +1 -1
- package/dist/esm/tab/tab.template.js +1 -1
- package/dist/esm/tab/tab.template.js.map +1 -1
- package/dist/esm/tab-panel/tab-panel.js +2 -2
- package/dist/esm/tab-panel/tab-panel.js.map +1 -1
- package/dist/esm/tab-panel/tab-panel.styles.js +1 -1
- package/dist/esm/tab-panel/tab-panel.styles.js.map +1 -1
- package/dist/esm/tab-panel/tab-panel.template.js +8 -1
- package/dist/esm/tab-panel/tab-panel.template.js.map +1 -1
- package/dist/esm/tabs/tabs.js +278 -5
- package/dist/esm/tabs/tabs.js.map +1 -1
- package/dist/esm/tabs/tabs.options.js +6 -2
- package/dist/esm/tabs/tabs.options.js.map +1 -1
- package/dist/esm/tabs/tabs.styles.js +1 -1
- package/dist/esm/tabs/tabs.styles.js.map +1 -1
- package/dist/esm/tabs/tabs.template.js +14 -1
- package/dist/esm/tabs/tabs.template.js.map +1 -1
- package/dist/esm/text/text.styles.js +1 -1
- package/dist/esm/text/text.styles.js.map +1 -1
- package/dist/esm/text-input/index.js +0 -1
- package/dist/esm/text-input/index.js.map +1 -1
- package/dist/esm/text-input/text-field.form-associated.js +14 -0
- package/dist/esm/text-input/text-field.form-associated.js.map +1 -0
- package/dist/esm/text-input/text-input.js +167 -7
- package/dist/esm/text-input/text-input.js.map +1 -1
- package/dist/esm/text-input/text-input.options.js +26 -0
- package/dist/esm/text-input/text-input.options.js.map +1 -1
- package/dist/esm/text-input/text-input.styles.js +1 -1
- package/dist/esm/text-input/text-input.styles.js.map +1 -1
- package/dist/esm/text-input/text-input.template.js +64 -1
- package/dist/esm/text-input/text-input.template.js.map +1 -1
- package/dist/esm/theme/design-tokens.js +385 -386
- package/dist/esm/theme/design-tokens.js.map +1 -1
- package/dist/esm/theme/set-theme.js +2 -2
- package/dist/esm/theme/set-theme.js.map +1 -1
- package/dist/esm/toggle-button/toggle-button.definition.js +0 -2
- package/dist/esm/toggle-button/toggle-button.definition.js.map +1 -1
- package/dist/esm/toggle-button/toggle-button.options.js.map +1 -1
- package/dist/esm/toggle-button/toggle-button.styles.js +1 -1
- package/dist/esm/toggle-button/toggle-button.styles.js.map +1 -1
- package/dist/esm/toggle-button/toggle-button.template.js +1 -1
- package/dist/esm/toggle-button/toggle-button.template.js.map +1 -1
- package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.js +142 -0
- package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.js.map +1 -0
- package/dist/esm/utils/benchmark-dependencies/tokens.js +2 -0
- package/dist/esm/utils/benchmark-dependencies/tokens.js.map +1 -0
- package/dist/esm/utils/benchmark-wrapper.js +18 -0
- package/dist/esm/utils/benchmark-wrapper.js.map +1 -0
- package/dist/esm/utils/direction.js +15 -0
- package/dist/esm/utils/direction.js.map +1 -0
- package/dist/esm/utils/display.js +15 -0
- package/dist/esm/utils/display.js.map +1 -0
- package/dist/esm/utils/index.js +7 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/template-helpers.js +19 -0
- package/dist/esm/utils/template-helpers.js.map +1 -0
- package/dist/esm/utils/typings.js +3 -0
- package/dist/esm/utils/typings.js.map +1 -0
- package/dist/esm/utils/whitespace-filter.js +13 -0
- package/dist/esm/utils/whitespace-filter.js.map +1 -0
- package/dist/fluent-web-components.api.json +16013 -6435
- package/dist/storybook/289.703b1698.iframe.bundle.js +2 -0
- package/dist/storybook/{885.6558041f.iframe.bundle.js.LICENSE.txt → 289.703b1698.iframe.bundle.js.LICENSE.txt} +5 -0
- package/dist/storybook/591.f5bf0d78d2f203de19f5.manager.bundle.js +2 -0
- package/dist/storybook/iframe.html +1 -1
- package/dist/storybook/index.html +1 -1
- package/dist/storybook/{main.18c2c615e57574af12cd.manager.bundle.js → main.5d7b916dc1e37293b1d8.manager.bundle.js} +1 -1
- package/dist/storybook/main.81e47c59.iframe.bundle.js +2 -0
- package/dist/storybook/main.81e47c59.iframe.bundle.js.LICENSE.txt +1 -0
- package/dist/storybook/project.json +1 -1
- package/dist/storybook/runtime~main.dbf00b470fe610082919.manager.bundle.js +1 -0
- package/dist/web-components.d.ts +3213 -669
- package/dist/web-components.js +2530 -3937
- package/dist/web-components.min.js +195 -186
- package/docs/api-report.md +1104 -476
- package/package.json +43 -30
- package/tensile.config.js +22 -0
- package/dist/storybook/761.21909e5ef44f985ae0d4.manager.bundle.js +0 -2
- package/dist/storybook/885.6558041f.iframe.bundle.js +0 -462
- package/dist/storybook/885.6558041f.iframe.bundle.js.map +0 -1
- package/dist/storybook/main.2c02ce39.iframe.bundle.js +0 -1
- package/dist/storybook/runtime~main.8db883e762072830487f.manager.bundle.js +0 -1
- /package/dist/storybook/{761.21909e5ef44f985ae0d4.manager.bundle.js.LICENSE.txt → 591.f5bf0d78d2f203de19f5.manager.bundle.js.LICENSE.txt} +0 -0
|
@@ -1,15 +1,39 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { ValuesOf } from '@microsoft/fast-foundation/utilities.js';
|
|
1
|
+
import type { ValuesOf } from '../utils/index.js';
|
|
3
2
|
/**
|
|
4
|
-
*
|
|
3
|
+
* Divider roles
|
|
5
4
|
* @public
|
|
6
5
|
*/
|
|
7
|
-
export
|
|
6
|
+
export declare const DividerRole: {
|
|
7
|
+
/**
|
|
8
|
+
* The divider semantically separates content
|
|
9
|
+
*/
|
|
10
|
+
readonly separator: "separator";
|
|
11
|
+
/**
|
|
12
|
+
* The divider has no semantic value and is for visual presentation only.
|
|
13
|
+
*/
|
|
14
|
+
readonly presentation: "presentation";
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* The types for Divider roles
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export declare type DividerRole = ValuesOf<typeof DividerRole>;
|
|
21
|
+
/**
|
|
22
|
+
* Divider orientation
|
|
23
|
+
* @public
|
|
24
|
+
*/
|
|
25
|
+
export declare const DividerOrientation: {
|
|
26
|
+
readonly horizontal: "horizontal"; /**
|
|
27
|
+
* Divider roles
|
|
28
|
+
* @public
|
|
29
|
+
*/
|
|
30
|
+
readonly vertical: "vertical";
|
|
31
|
+
};
|
|
8
32
|
/**
|
|
9
|
-
*
|
|
33
|
+
* The types for Divider orientation
|
|
10
34
|
* @public
|
|
11
35
|
*/
|
|
12
|
-
export
|
|
36
|
+
export declare type DividerOrientation = ValuesOf<typeof DividerOrientation>;
|
|
13
37
|
/**
|
|
14
38
|
* Align content within divider
|
|
15
39
|
* @public
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import type { Constructable, FASTElement } from '@microsoft/fast-element';
|
|
2
|
+
/**
|
|
3
|
+
* This file enables typing support for ElementInternals APIs.
|
|
4
|
+
* It is largely taken from https://github.com/microsoft/TSJS-lib-generator/pull/818/files.
|
|
5
|
+
*
|
|
6
|
+
* When TypeScript adds support for these APIs we can delete this file.
|
|
7
|
+
*/
|
|
8
|
+
interface ValidityStateFlags {
|
|
9
|
+
badInput?: boolean;
|
|
10
|
+
customError?: boolean;
|
|
11
|
+
patternMismatch?: boolean;
|
|
12
|
+
rangeOverflow?: boolean;
|
|
13
|
+
rangeUnderflow?: boolean;
|
|
14
|
+
stepMismatch?: boolean;
|
|
15
|
+
tooLong?: boolean;
|
|
16
|
+
tooShort?: boolean;
|
|
17
|
+
typeMismatch?: boolean;
|
|
18
|
+
valueMissing?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Source:
|
|
22
|
+
* https://html.spec.whatwg.org/multipage/custom-elements.html#elementinternals
|
|
23
|
+
*/
|
|
24
|
+
interface ElementInternals {
|
|
25
|
+
/**
|
|
26
|
+
* Returns the form owner of internals target element.
|
|
27
|
+
*/
|
|
28
|
+
readonly form: HTMLFormElement | null;
|
|
29
|
+
/**
|
|
30
|
+
* Returns a NodeList of all the label elements that internals target element is associated with.
|
|
31
|
+
*/
|
|
32
|
+
readonly labels: NodeList;
|
|
33
|
+
/**
|
|
34
|
+
* Returns the error message that would be shown to the user if internals target element was to be checked for validity.
|
|
35
|
+
*/
|
|
36
|
+
readonly validationMessage: string;
|
|
37
|
+
/**
|
|
38
|
+
* Returns the ValidityState object for internals target element.
|
|
39
|
+
*/
|
|
40
|
+
readonly validity: ValidityState;
|
|
41
|
+
/**
|
|
42
|
+
* Returns true if internals target element will be validated when the form is submitted; false otherwise.
|
|
43
|
+
*/
|
|
44
|
+
readonly willValidate: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Returns true if internals target element has no validity problems; false otherwise. Fires an invalid event at the element in the latter case.
|
|
47
|
+
*/
|
|
48
|
+
checkValidity(): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Returns true if internals target element has no validity problems; otherwise,
|
|
51
|
+
* returns false, fires an invalid event at the element, and (if the event isn't canceled) reports the problem to the user.
|
|
52
|
+
*/
|
|
53
|
+
reportValidity(): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Sets both the state and submission value of internals target element to value.
|
|
56
|
+
*
|
|
57
|
+
* While "null" isn't enumerated as a argument type (here)[https://html.spec.whatwg.org/multipage/custom-elements.html#the-elementinternals-interface],
|
|
58
|
+
* In practice it appears to remove the value from the form data on submission. Adding it as a valid type here
|
|
59
|
+
* becuase that capability is required for checkbox and radio types
|
|
60
|
+
*/
|
|
61
|
+
setFormValue(value: File | string | FormData | null, state?: File | string | FormData | null): void;
|
|
62
|
+
/**
|
|
63
|
+
* Marks internals target element as suffering from the constraints indicated by the flags argument,
|
|
64
|
+
* and sets the element's validation message to message.
|
|
65
|
+
* If anchor is specified, the user agent might use
|
|
66
|
+
* it to indicate problems with the constraints of internals target
|
|
67
|
+
* element when the form owner is validated interactively or reportValidity() is called.
|
|
68
|
+
*/
|
|
69
|
+
setValidity(flags: ValidityStateFlags, message?: string, anchor?: HTMLElement): void;
|
|
70
|
+
}
|
|
71
|
+
declare let ElementInternals: {
|
|
72
|
+
prototype: ElementInternals;
|
|
73
|
+
new (): ElementInternals;
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* @alpha
|
|
77
|
+
*/
|
|
78
|
+
export declare const supportsElementInternals: boolean;
|
|
79
|
+
/**
|
|
80
|
+
* Base class for providing Custom Element Form Association.
|
|
81
|
+
*
|
|
82
|
+
* @beta
|
|
83
|
+
*/
|
|
84
|
+
export interface FormAssociated extends Omit<ElementInternals, 'labels'> {
|
|
85
|
+
dirtyValue: boolean;
|
|
86
|
+
disabled: boolean;
|
|
87
|
+
readonly elementInternals: ElementInternals | null;
|
|
88
|
+
readonly formAssociated: boolean;
|
|
89
|
+
initialValue: string;
|
|
90
|
+
readonly labels: ReadonlyArray<Node[]>;
|
|
91
|
+
name: string;
|
|
92
|
+
required: boolean;
|
|
93
|
+
value: string;
|
|
94
|
+
currentValue: string;
|
|
95
|
+
attachProxy(): void;
|
|
96
|
+
detachProxy(): void;
|
|
97
|
+
disabledChanged?(previous: boolean, next: boolean): void;
|
|
98
|
+
formDisabledCallback?(disabled: boolean): void;
|
|
99
|
+
formResetCallback(): void;
|
|
100
|
+
initialValueChanged?(previous: string, next: string): void;
|
|
101
|
+
nameChanged?(previous: string, next: string): void;
|
|
102
|
+
requiredChanged(prev: boolean, next: boolean): void;
|
|
103
|
+
stopPropagation(e: Event): void;
|
|
104
|
+
/**
|
|
105
|
+
* Sets the validity of the custom element. By default this uses the proxy element to determine
|
|
106
|
+
* validity, but this can be extended or replaced in implementation.
|
|
107
|
+
*
|
|
108
|
+
* @param anchor - The anchor element to provide to ElementInternals.setValidity for surfacing the browser's constraint validation UI
|
|
109
|
+
*/
|
|
110
|
+
validate(anchor?: HTMLElement): void;
|
|
111
|
+
valueChanged(previous: string, next: string): void;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Base class for providing Custom Element Form Association with checkable features.
|
|
115
|
+
*
|
|
116
|
+
* @beta
|
|
117
|
+
*/
|
|
118
|
+
export interface CheckableFormAssociated extends FormAssociated {
|
|
119
|
+
currentChecked: boolean;
|
|
120
|
+
dirtyChecked: boolean;
|
|
121
|
+
checkedAttribute: boolean;
|
|
122
|
+
defaultChecked: boolean;
|
|
123
|
+
defaultCheckedChanged(oldValue: boolean | undefined, newValue: boolean): void;
|
|
124
|
+
checked: boolean;
|
|
125
|
+
checkedChanged(oldValue: boolean | undefined, newValue: boolean): void;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Avaiable types for the `proxy` property.
|
|
129
|
+
* @beta
|
|
130
|
+
*/
|
|
131
|
+
export declare type ProxyElement = HTMLSelectElement | HTMLTextAreaElement | HTMLInputElement;
|
|
132
|
+
/**
|
|
133
|
+
* Identifies a class as having a proxy element and optional submethods related
|
|
134
|
+
* to the proxy element.
|
|
135
|
+
*
|
|
136
|
+
* @beta
|
|
137
|
+
*/
|
|
138
|
+
export interface FormAssociatedProxy {
|
|
139
|
+
proxy: ProxyElement;
|
|
140
|
+
disabledChanged?(previous: boolean, next: boolean): void;
|
|
141
|
+
formDisabledCallback?(disabled: boolean): void;
|
|
142
|
+
formResetCallback?(): void;
|
|
143
|
+
initialValueChanged?(previous: string, next: string): void;
|
|
144
|
+
valueChanged?(previous: string, next: string): void;
|
|
145
|
+
nameChanged?(previous: string, next: string): void;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Combined type to describe a Form-associated element.
|
|
149
|
+
*
|
|
150
|
+
* @beta
|
|
151
|
+
*/
|
|
152
|
+
export declare type FormAssociatedElement = FormAssociated & FASTElement & HTMLElement & FormAssociatedProxy;
|
|
153
|
+
/**
|
|
154
|
+
* Combined type to describe a checkable Form-associated element.
|
|
155
|
+
*
|
|
156
|
+
* @beta
|
|
157
|
+
*/
|
|
158
|
+
export declare type CheckableFormAssociatedElement = FormAssociatedElement & CheckableFormAssociated & {
|
|
159
|
+
proxy: HTMLInputElement;
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* Combined type to describe a Constructable Form-Associated type.
|
|
163
|
+
*
|
|
164
|
+
* @beta
|
|
165
|
+
*/
|
|
166
|
+
export declare type ConstructableFormAssociated = Constructable<HTMLElement & FASTElement>;
|
|
167
|
+
/**
|
|
168
|
+
* Base function for providing Custom Element Form Association.
|
|
169
|
+
*
|
|
170
|
+
* @beta
|
|
171
|
+
*/
|
|
172
|
+
export declare function FormAssociated<T extends ConstructableFormAssociated>(BaseCtor: T): T;
|
|
173
|
+
/**
|
|
174
|
+
* Creates a checkable form associated component.
|
|
175
|
+
* @beta
|
|
176
|
+
*/
|
|
177
|
+
export declare function CheckableFormAssociated<T extends ConstructableFormAssociated>(BaseCtor: T): T;
|
|
178
|
+
export {};
|
package/dist/dts/index.d.ts
CHANGED
|
@@ -7,9 +7,11 @@ export * from './button/index.js';
|
|
|
7
7
|
export * from './checkbox/index.js';
|
|
8
8
|
export * from './compound-button/index.js';
|
|
9
9
|
export * from './counter-badge/index.js';
|
|
10
|
+
export * from './dialog/index.js';
|
|
10
11
|
export * from './divider/index.js';
|
|
11
12
|
export * from './image/index.js';
|
|
12
13
|
export * from './label/index.js';
|
|
14
|
+
export * from './menu/index.js';
|
|
13
15
|
export * from './menu-button/index.js';
|
|
14
16
|
export * from './menu-item/index.js';
|
|
15
17
|
export * from './menu-list/index.js';
|
|
@@ -27,3 +29,6 @@ export * from './text-input/index.js';
|
|
|
27
29
|
export * from './toggle-button/index.js';
|
|
28
30
|
export * from './fluent-design-system.js';
|
|
29
31
|
export * from './theme/index.js';
|
|
32
|
+
export * from './utils/direction.js';
|
|
33
|
+
export * from './utils/display.js';
|
|
34
|
+
export * from './utils/behaviors/match-media-stylesheet-behavior.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import { FASTElement } from '@microsoft/fast-element';
|
|
2
|
+
import { MenuList } from '../menu-list/menu-list.js';
|
|
3
|
+
/**
|
|
4
|
+
* The Menu class represents a menu component.
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export declare class Menu extends FASTElement {
|
|
8
|
+
/**
|
|
9
|
+
* Determines if the menu should open on hover.
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
openOnHover?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Determines if the menu should open on right click.
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
openOnContext?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Determines if the menu should close on scroll.
|
|
20
|
+
* @public
|
|
21
|
+
*/
|
|
22
|
+
closeOnScroll?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Determines if the menu open state should persis on click of menu item
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
persistOnItemClick?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Defines whether the menu is open or not.
|
|
30
|
+
* @public
|
|
31
|
+
*/
|
|
32
|
+
open: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Holds the slotted menu list.
|
|
35
|
+
* @public
|
|
36
|
+
*/
|
|
37
|
+
slottedMenuList: MenuList[];
|
|
38
|
+
/**
|
|
39
|
+
* Holds the slotted triggers.
|
|
40
|
+
* @public
|
|
41
|
+
*/
|
|
42
|
+
slottedTriggers: HTMLElement[];
|
|
43
|
+
/**
|
|
44
|
+
* The positioning container of the menu.
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
positioningContainer?: HTMLElement;
|
|
48
|
+
/**
|
|
49
|
+
* The trigger element of the menu.
|
|
50
|
+
* @private
|
|
51
|
+
*/
|
|
52
|
+
private _trigger?;
|
|
53
|
+
/**
|
|
54
|
+
* The menu list element of the menu.
|
|
55
|
+
* @private
|
|
56
|
+
*/
|
|
57
|
+
private _menuList?;
|
|
58
|
+
/**
|
|
59
|
+
* Holds a reference to a function that is used to cleanup resources.
|
|
60
|
+
* @public
|
|
61
|
+
*/
|
|
62
|
+
cleanup?: () => void;
|
|
63
|
+
/**
|
|
64
|
+
* Called when the element is connected to the DOM.
|
|
65
|
+
* Sets up the component.
|
|
66
|
+
* @public
|
|
67
|
+
*/
|
|
68
|
+
connectedCallback(): void;
|
|
69
|
+
/**
|
|
70
|
+
* Called when the element is disconnected from the DOM.
|
|
71
|
+
* Removes event listeners.
|
|
72
|
+
* @public
|
|
73
|
+
*/
|
|
74
|
+
disconnectedCallback(): void;
|
|
75
|
+
/**
|
|
76
|
+
* Sets the component.
|
|
77
|
+
* Sets the trigger and menu list elements and adds event listeners.
|
|
78
|
+
* @public
|
|
79
|
+
*/
|
|
80
|
+
setComponent(): void;
|
|
81
|
+
/**
|
|
82
|
+
* Toggles the open state of the menu.
|
|
83
|
+
* @public
|
|
84
|
+
*/
|
|
85
|
+
toggleMenu: () => void;
|
|
86
|
+
/**
|
|
87
|
+
* Closes the menu.
|
|
88
|
+
* @public
|
|
89
|
+
*/
|
|
90
|
+
closeMenu: () => void;
|
|
91
|
+
/**
|
|
92
|
+
* Opens the menu.
|
|
93
|
+
* @public
|
|
94
|
+
*/
|
|
95
|
+
openMenu: (e?: Event) => void;
|
|
96
|
+
/**
|
|
97
|
+
* Focuses on the menu list.
|
|
98
|
+
* @public
|
|
99
|
+
*/
|
|
100
|
+
focusMenuList(): void;
|
|
101
|
+
/**
|
|
102
|
+
* Focuses on the menu trigger.
|
|
103
|
+
* @public
|
|
104
|
+
*/
|
|
105
|
+
focusTrigger(): void;
|
|
106
|
+
/**
|
|
107
|
+
* Called whenever the open state changes.
|
|
108
|
+
* Updates the 'aria-expanded' attribute and sets the positioning of the menu.
|
|
109
|
+
* Sets menu list position
|
|
110
|
+
* emits openChanged event
|
|
111
|
+
* @public
|
|
112
|
+
* @param {boolean} oldValue - The previous value of 'open'.
|
|
113
|
+
* @param {boolean} newValue - The new value of 'open'.
|
|
114
|
+
*/
|
|
115
|
+
openChanged(oldValue: boolean, newValue: boolean): void;
|
|
116
|
+
/**
|
|
117
|
+
* Called whenever the 'openOnHover' property changes.
|
|
118
|
+
* Adds or removes a 'mouseover' event listener to the trigger based on the new value.
|
|
119
|
+
* @public
|
|
120
|
+
* @param {boolean} oldValue - The previous value of 'openOnHover'.
|
|
121
|
+
* @param {boolean} newValue - The new value of 'openOnHover'.
|
|
122
|
+
*/
|
|
123
|
+
openOnHoverChanged(oldValue: boolean, newValue: boolean): void;
|
|
124
|
+
/**
|
|
125
|
+
* Called whenever the 'persistOnItemClick' property changes.
|
|
126
|
+
* Adds or removes a 'click' event listener to the menu list based on the new value.
|
|
127
|
+
* @public
|
|
128
|
+
* @param {boolean} oldValue - The previous value of 'persistOnItemClick'.
|
|
129
|
+
* @param {boolean} newValue - The new value of 'persistOnItemClick'.
|
|
130
|
+
*/
|
|
131
|
+
persistOnItemClickChanged(oldValue: boolean, newValue: boolean): void;
|
|
132
|
+
/**
|
|
133
|
+
* Called whenever the 'openOnContext' property changes.
|
|
134
|
+
* Adds or removes a 'contextmenu' event listener to the trigger based on the new value.
|
|
135
|
+
* @public
|
|
136
|
+
* @param {boolean} oldValue - The previous value of 'openOnContext'.
|
|
137
|
+
* @param {boolean} newValue - The new value of 'openOnContext'.
|
|
138
|
+
*/
|
|
139
|
+
openOnContextChanged(oldValue: boolean, newValue: boolean): void;
|
|
140
|
+
/**
|
|
141
|
+
* Called whenever the 'closeOnScroll' property changes.
|
|
142
|
+
* Adds or removes a 'closeOnScroll' event listener to the trigger based on the new value.
|
|
143
|
+
* @public
|
|
144
|
+
* @param {boolean} oldValue - The previous value of 'closeOnScroll'.
|
|
145
|
+
* @param {boolean} newValue - The new value of 'closeOnScroll'.
|
|
146
|
+
*/
|
|
147
|
+
closeOnScrollChanged(oldValue: boolean, newValue: boolean): void;
|
|
148
|
+
/**
|
|
149
|
+
* The task to set the positioning of the menu.
|
|
150
|
+
* @protected
|
|
151
|
+
*/
|
|
152
|
+
protected setPositioningTask: () => void;
|
|
153
|
+
/**
|
|
154
|
+
* Sets the positioning of the menu.
|
|
155
|
+
* @protected
|
|
156
|
+
*/
|
|
157
|
+
protected setPositioning(): void;
|
|
158
|
+
/**
|
|
159
|
+
* Adds event listeners.
|
|
160
|
+
* Adds click and keydown event listeners to the trigger and a click event listener to the document.
|
|
161
|
+
* If 'openOnHover' is true, adds a 'mouseover' event listener to the trigger.
|
|
162
|
+
* @public
|
|
163
|
+
*/
|
|
164
|
+
private addListeners;
|
|
165
|
+
/**
|
|
166
|
+
* Removes event listeners.
|
|
167
|
+
* Removes click and keydown event listeners from the trigger and a click event listener from the document.
|
|
168
|
+
* Also removes 'mouseover' event listeners from the trigger.
|
|
169
|
+
* @private
|
|
170
|
+
*/
|
|
171
|
+
private removeListeners;
|
|
172
|
+
/**
|
|
173
|
+
* Handles keyboard interaction for the menu.
|
|
174
|
+
* Closes the menu and focuses on the trigger when the Escape key is pressed.
|
|
175
|
+
* Closes the menu when the Tab key is pressed.
|
|
176
|
+
* @public
|
|
177
|
+
* @param {KeyboardEvent} e - the keyboard event
|
|
178
|
+
*/
|
|
179
|
+
handleMenuKeydown(e: KeyboardEvent): boolean | void;
|
|
180
|
+
/**
|
|
181
|
+
* Handles keyboard interaction for the trigger.
|
|
182
|
+
* Toggles the menu when the Space or Enter key is pressed.
|
|
183
|
+
* If the menu is open, focuses on the menu list.
|
|
184
|
+
* @public
|
|
185
|
+
* @param {KeyboardEvent} e - the keyboard event
|
|
186
|
+
*/
|
|
187
|
+
handleTriggerKeydown: (e: KeyboardEvent) => boolean | void;
|
|
188
|
+
/**
|
|
189
|
+
* Handles document click events to close the menu when a click occurs outside of the menu or the trigger.
|
|
190
|
+
* @private
|
|
191
|
+
* @param {Event} e - The event triggered on document click.
|
|
192
|
+
*/
|
|
193
|
+
private handleDocumentClick;
|
|
194
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { ButtonOptions } from '
|
|
2
|
-
import type { ValuesOf } from '
|
|
1
|
+
import type { ButtonOptions } from '../button/index.js';
|
|
2
|
+
import type { ValuesOf } from '../utils/index.js';
|
|
3
3
|
/**
|
|
4
4
|
* Menu Button Appearance constants
|
|
5
5
|
* @public
|
|
@@ -1,9 +1,166 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FASTElement } from '@microsoft/fast-element';
|
|
2
|
+
import type { StaticallyComposableHTML } from '../utils/template-helpers.js';
|
|
3
|
+
import type { StartEndOptions } from '../patterns/start-end.js';
|
|
4
|
+
import { StartEnd } from '../patterns/start-end.js';
|
|
5
|
+
import { MenuItemRole, roleForMenuItem } from './menu-item.options.js';
|
|
2
6
|
export declare type MenuItemColumnCount = 0 | 1 | 2;
|
|
3
|
-
export { MenuItemRole };
|
|
7
|
+
export { MenuItemRole, roleForMenuItem };
|
|
4
8
|
/**
|
|
5
|
-
*
|
|
9
|
+
* Menu Item configuration options
|
|
6
10
|
* @public
|
|
7
11
|
*/
|
|
8
|
-
export declare
|
|
12
|
+
export declare type MenuItemOptions = StartEndOptions<MenuItem> & {
|
|
13
|
+
checkboxIndicator?: StaticallyComposableHTML<MenuItem>;
|
|
14
|
+
expandCollapseGlyph?: StaticallyComposableHTML<MenuItem>;
|
|
15
|
+
radioIndicator?: StaticallyComposableHTML<MenuItem>;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* A Switch Custom HTML Element.
|
|
19
|
+
* Implements {@link https://www.w3.org/TR/wai-aria-1.1/#menuitem | ARIA menuitem }, {@link https://www.w3.org/TR/wai-aria-1.1/#menuitemcheckbox | ARIA menuitemcheckbox}, or {@link https://www.w3.org/TR/wai-aria-1.1/#menuitemradio | ARIA menuitemradio }.
|
|
20
|
+
*
|
|
21
|
+
* @slot checked-indicator - The checked indicator
|
|
22
|
+
* @slot radio-indicator - The radio indicator
|
|
23
|
+
* @slot start - Content which can be provided before the menu item content
|
|
24
|
+
* @slot end - Content which can be provided after the menu item content
|
|
25
|
+
* @slot - The default slot for menu item content
|
|
26
|
+
* @slot expand-collapse-indicator - The expand/collapse indicator
|
|
27
|
+
* @slot submenu - Used to nest menu's within menu items
|
|
28
|
+
* @csspart input-container - The element representing the visual checked or radio indicator
|
|
29
|
+
* @csspart checkbox - The element wrapping the `menuitemcheckbox` indicator
|
|
30
|
+
* @csspart radio - The element wrapping the `menuitemradio` indicator
|
|
31
|
+
* @csspart content - The element wrapping the menu item content
|
|
32
|
+
* @csspart expand-collapse-glyph-container - The element wrapping the expand collapse element
|
|
33
|
+
* @csspart expand-collapse - The expand/collapse element
|
|
34
|
+
* @csspart submenu-region - The container for the submenu, used for positioning
|
|
35
|
+
* @fires expanded-change - Fires a custom 'expanded-change' event when the expanded state changes
|
|
36
|
+
* @fires change - Fires a custom 'change' event when a non-submenu item with a role of `menuitemcheckbox`, `menuitemradio`, or `menuitem` is invoked
|
|
37
|
+
*
|
|
38
|
+
* @public
|
|
39
|
+
*/
|
|
40
|
+
export declare class MenuItem extends FASTElement {
|
|
41
|
+
/**
|
|
42
|
+
* The disabled state of the element.
|
|
43
|
+
*
|
|
44
|
+
* @public
|
|
45
|
+
* @remarks
|
|
46
|
+
* HTML Attribute: disabled
|
|
47
|
+
*/
|
|
48
|
+
disabled: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* The expanded state of the element.
|
|
51
|
+
*
|
|
52
|
+
* @public
|
|
53
|
+
* @remarks
|
|
54
|
+
* HTML Attribute: expanded
|
|
55
|
+
*/
|
|
56
|
+
expanded: boolean;
|
|
57
|
+
protected expandedChanged(prev: boolean | undefined, next: boolean): void;
|
|
58
|
+
/**
|
|
59
|
+
* The role of the element.
|
|
60
|
+
*
|
|
61
|
+
* @public
|
|
62
|
+
* @remarks
|
|
63
|
+
* HTML Attribute: role
|
|
64
|
+
*/
|
|
65
|
+
role: MenuItemRole;
|
|
66
|
+
/**
|
|
67
|
+
* Cleanup function for the submenu positioner.
|
|
68
|
+
*
|
|
69
|
+
* @public
|
|
70
|
+
*/
|
|
71
|
+
cleanup: () => void;
|
|
72
|
+
/**
|
|
73
|
+
* The checked value of the element.
|
|
74
|
+
*
|
|
75
|
+
* @public
|
|
76
|
+
* @remarks
|
|
77
|
+
* HTML Attribute: checked
|
|
78
|
+
*/
|
|
79
|
+
checked: boolean;
|
|
80
|
+
protected checkedChanged(oldValue: boolean, newValue: boolean): void;
|
|
81
|
+
/**
|
|
82
|
+
* The hidden attribute.
|
|
83
|
+
*
|
|
84
|
+
* @public
|
|
85
|
+
* @remarks
|
|
86
|
+
* HTML Attribute: hidden
|
|
87
|
+
*/
|
|
88
|
+
hidden: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* The submenu slotted content.
|
|
91
|
+
*
|
|
92
|
+
* @internal
|
|
93
|
+
*/
|
|
94
|
+
slottedSubmenu: HTMLElement[];
|
|
95
|
+
/**
|
|
96
|
+
* @internal
|
|
97
|
+
*/
|
|
98
|
+
get hasSubmenu(): boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Sets the submenu and updates its position.
|
|
101
|
+
*
|
|
102
|
+
* @internal
|
|
103
|
+
*/
|
|
104
|
+
protected slottedSubmenuChanged(prev: HTMLElement[] | undefined, next: HTMLElement[]): void;
|
|
105
|
+
/**
|
|
106
|
+
* The container for the submenu.
|
|
107
|
+
*
|
|
108
|
+
* @internal
|
|
109
|
+
*/
|
|
110
|
+
submenuContainer: HTMLDivElement;
|
|
111
|
+
/**
|
|
112
|
+
* @internal
|
|
113
|
+
*/
|
|
114
|
+
submenu: HTMLElement | undefined;
|
|
115
|
+
private focusSubmenuOnLoad;
|
|
116
|
+
/**
|
|
117
|
+
* @internal
|
|
118
|
+
*/
|
|
119
|
+
disconnectedCallback(): void;
|
|
120
|
+
/**
|
|
121
|
+
* @internal
|
|
122
|
+
*/
|
|
123
|
+
handleMenuItemKeyDown: (e: KeyboardEvent) => boolean;
|
|
124
|
+
/**
|
|
125
|
+
* @internal
|
|
126
|
+
*/
|
|
127
|
+
handleMenuItemClick: (e: MouseEvent) => boolean;
|
|
128
|
+
/**
|
|
129
|
+
* @internal
|
|
130
|
+
*/
|
|
131
|
+
submenuLoaded: () => void;
|
|
132
|
+
/**
|
|
133
|
+
* @internal
|
|
134
|
+
*/
|
|
135
|
+
handleMouseOver: (e: MouseEvent) => boolean;
|
|
136
|
+
/**
|
|
137
|
+
* @internal
|
|
138
|
+
*/
|
|
139
|
+
handleMouseOut: (e: MouseEvent) => boolean;
|
|
140
|
+
/**
|
|
141
|
+
* @internal
|
|
142
|
+
*/
|
|
143
|
+
private closeSubMenu;
|
|
144
|
+
/**
|
|
145
|
+
* @internal
|
|
146
|
+
*/
|
|
147
|
+
private expandAndFocus;
|
|
148
|
+
/**
|
|
149
|
+
* @internal
|
|
150
|
+
*/
|
|
151
|
+
private invoke;
|
|
152
|
+
/**
|
|
153
|
+
* Calculate and apply submenu positioning.
|
|
154
|
+
*
|
|
155
|
+
* @public
|
|
156
|
+
*/
|
|
157
|
+
updateSubmenu(): void;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Mark internal because exporting class and interface of the same name
|
|
161
|
+
* confuses API documenter.
|
|
162
|
+
* TODO: https://github.com/microsoft/fast/issues/3317
|
|
163
|
+
* @internal
|
|
164
|
+
*/
|
|
165
|
+
export interface MenuItem extends StartEnd {
|
|
9
166
|
}
|