@helixui/library 3.3.1 → 3.4.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/custom-elements.json +340 -71
- package/dist/components/hx-accordion/hx-accordion-item.d.ts +35 -0
- package/dist/components/hx-accordion/hx-accordion-item.d.ts.map +1 -1
- package/dist/components/hx-alert/hx-alert.d.ts +11 -0
- package/dist/components/hx-alert/hx-alert.d.ts.map +1 -1
- package/dist/components/hx-alert/hx-alert.styles.d.ts.map +1 -1
- package/dist/components/hx-alert/index.js +1 -1
- package/dist/components/hx-badge/hx-badge.styles.d.ts.map +1 -1
- package/dist/components/hx-badge/index.js +1 -1
- package/dist/components/hx-banner/hx-banner.d.ts +9 -1
- package/dist/components/hx-banner/hx-banner.d.ts.map +1 -1
- package/dist/components/hx-banner/index.js +1 -1
- package/dist/components/hx-button/hx-button.d.ts +11 -1
- package/dist/components/hx-button/hx-button.d.ts.map +1 -1
- package/dist/components/hx-button/index.js +1 -1
- package/dist/components/hx-button-group/hx-button-group.d.ts +13 -0
- package/dist/components/hx-button-group/hx-button-group.d.ts.map +1 -1
- package/dist/components/hx-button-group/index.js +1 -1
- package/dist/components/hx-checkbox/hx-checkbox.d.ts +153 -1
- package/dist/components/hx-checkbox/hx-checkbox.d.ts.map +1 -1
- package/dist/components/hx-checkbox/hx-checkbox.styles.d.ts.map +1 -1
- package/dist/components/hx-checkbox/index.js +1 -1
- package/dist/components/hx-checkbox-group/hx-checkbox-group.d.ts +151 -2
- package/dist/components/hx-checkbox-group/hx-checkbox-group.d.ts.map +1 -1
- package/dist/components/hx-checkbox-group/index.js +1 -1
- package/dist/components/hx-color-picker/hx-color-picker.d.ts +163 -1
- package/dist/components/hx-color-picker/hx-color-picker.d.ts.map +1 -1
- package/dist/components/hx-color-picker/hx-color-picker.styles.d.ts.map +1 -1
- package/dist/components/hx-color-picker/index.js +1 -1
- package/dist/components/hx-combobox/hx-combobox.d.ts +311 -2
- package/dist/components/hx-combobox/hx-combobox.d.ts.map +1 -1
- package/dist/components/hx-combobox/index.js +1 -1
- package/dist/components/hx-data-table/hx-data-table.d.ts.map +1 -1
- package/dist/components/hx-data-table/index.js +1 -1
- package/dist/components/hx-date-picker/hx-date-picker.d.ts +182 -56
- package/dist/components/hx-date-picker/hx-date-picker.d.ts.map +1 -1
- package/dist/components/hx-date-picker/hx-date-picker.styles.d.ts.map +1 -1
- package/dist/components/hx-date-picker/index.js +1 -1
- package/dist/components/hx-dialog/hx-dialog.d.ts +240 -0
- package/dist/components/hx-dialog/hx-dialog.d.ts.map +1 -1
- package/dist/components/hx-dialog/index.js +1 -1
- package/dist/components/hx-drawer/hx-drawer.d.ts +201 -0
- package/dist/components/hx-drawer/hx-drawer.d.ts.map +1 -1
- package/dist/components/hx-drawer/hx-drawer.styles.d.ts.map +1 -1
- package/dist/components/hx-drawer/index.js +1 -1
- package/dist/components/hx-dropdown/hx-dropdown.d.ts +168 -0
- package/dist/components/hx-dropdown/hx-dropdown.d.ts.map +1 -1
- package/dist/components/hx-dropdown/index.js +1 -1
- package/dist/components/hx-field/hx-field.d.ts +109 -0
- package/dist/components/hx-field/hx-field.d.ts.map +1 -1
- package/dist/components/hx-field/index.js +1 -1
- package/dist/components/hx-icon-button/hx-icon-button.d.ts +16 -3
- package/dist/components/hx-icon-button/hx-icon-button.d.ts.map +1 -1
- package/dist/components/hx-icon-button/hx-icon-button.styles.d.ts.map +1 -1
- package/dist/components/hx-icon-button/index.js +1 -1
- package/dist/components/hx-link/hx-link.d.ts +10 -1
- package/dist/components/hx-link/hx-link.d.ts.map +1 -1
- package/dist/components/hx-link/index.js +1 -1
- package/dist/components/hx-list/hx-list-item.d.ts +27 -1
- package/dist/components/hx-list/hx-list-item.d.ts.map +1 -1
- package/dist/components/hx-list/hx-list.d.ts +28 -0
- package/dist/components/hx-list/hx-list.d.ts.map +1 -1
- package/dist/components/hx-list/index.js +1 -1
- package/dist/components/hx-menu/hx-menu-divider.d.ts +10 -0
- package/dist/components/hx-menu/hx-menu-divider.d.ts.map +1 -1
- package/dist/components/hx-menu/hx-menu-item.d.ts +99 -2
- package/dist/components/hx-menu/hx-menu-item.d.ts.map +1 -1
- package/dist/components/hx-menu/hx-menu-item.styles.d.ts.map +1 -1
- package/dist/components/hx-menu/hx-menu.d.ts +117 -2
- package/dist/components/hx-menu/hx-menu.d.ts.map +1 -1
- package/dist/components/hx-menu/index.js +1 -1
- package/dist/components/hx-meter/hx-meter.d.ts +39 -0
- package/dist/components/hx-meter/hx-meter.d.ts.map +1 -1
- package/dist/components/hx-meter/hx-meter.styles.d.ts.map +1 -1
- package/dist/components/hx-meter/index.js +1 -1
- package/dist/components/hx-overflow-menu/hx-overflow-menu.d.ts +132 -1
- package/dist/components/hx-overflow-menu/hx-overflow-menu.d.ts.map +1 -1
- package/dist/components/hx-overflow-menu/index.js +1 -1
- package/dist/components/hx-phi-field/hx-phi-field.d.ts +0 -1
- package/dist/components/hx-phi-field/hx-phi-field.d.ts.map +1 -1
- package/dist/components/hx-popover/hx-popover.d.ts +91 -0
- package/dist/components/hx-popover/hx-popover.d.ts.map +1 -1
- package/dist/components/hx-popover/index.js +1 -1
- package/dist/components/hx-progress-bar/hx-progress-bar.d.ts +33 -0
- package/dist/components/hx-progress-bar/hx-progress-bar.d.ts.map +1 -1
- package/dist/components/hx-progress-bar/index.js +1 -1
- package/dist/components/hx-radio-group/hx-radio-group.d.ts +152 -1
- package/dist/components/hx-radio-group/hx-radio-group.d.ts.map +1 -1
- package/dist/components/hx-radio-group/hx-radio.d.ts +14 -0
- package/dist/components/hx-radio-group/hx-radio.d.ts.map +1 -1
- package/dist/components/hx-radio-group/index.js +1 -1
- package/dist/components/hx-select/hx-select.d.ts +304 -2
- package/dist/components/hx-select/hx-select.d.ts.map +1 -1
- package/dist/components/hx-select/hx-select.styles.d.ts.map +1 -1
- package/dist/components/hx-select/index.js +1 -1
- package/dist/components/hx-side-nav/hx-nav-item.styles.d.ts.map +1 -1
- package/dist/components/hx-side-nav/index.js +1 -1
- package/dist/components/hx-spinner/hx-spinner.d.ts +14 -0
- package/dist/components/hx-spinner/hx-spinner.d.ts.map +1 -1
- package/dist/components/hx-spinner/index.js +1 -1
- package/dist/components/hx-split-button/hx-split-button.d.ts +94 -7
- package/dist/components/hx-split-button/hx-split-button.d.ts.map +1 -1
- package/dist/components/hx-split-button/index.js +1 -1
- package/dist/components/hx-stat/hx-stat.d.ts +28 -0
- package/dist/components/hx-stat/hx-stat.d.ts.map +1 -1
- package/dist/components/hx-stat/index.js +1 -1
- package/dist/components/hx-switch/hx-switch.d.ts +78 -1
- package/dist/components/hx-switch/hx-switch.d.ts.map +1 -1
- package/dist/components/hx-switch/hx-switch.styles.d.ts.map +1 -1
- package/dist/components/hx-switch/index.js +1 -1
- package/dist/components/hx-table/hx-td.d.ts +30 -3
- package/dist/components/hx-table/hx-td.d.ts.map +1 -1
- package/dist/components/hx-table/hx-th.d.ts +39 -3
- package/dist/components/hx-table/hx-th.d.ts.map +1 -1
- package/dist/components/hx-table/hx-tr.d.ts +26 -0
- package/dist/components/hx-table/hx-tr.d.ts.map +1 -1
- package/dist/components/hx-table/index.js +1 -1
- package/dist/components/hx-tabs/hx-tab-panel.d.ts +34 -0
- package/dist/components/hx-tabs/hx-tab-panel.d.ts.map +1 -1
- package/dist/components/hx-tabs/hx-tab.d.ts +45 -2
- package/dist/components/hx-tabs/hx-tab.d.ts.map +1 -1
- package/dist/components/hx-tabs/hx-tab.styles.d.ts.map +1 -1
- package/dist/components/hx-tabs/hx-tabs.d.ts +32 -2
- package/dist/components/hx-tabs/hx-tabs.d.ts.map +1 -1
- package/dist/components/hx-tabs/index.js +1 -1
- package/dist/components/hx-tag/hx-tag.styles.d.ts.map +1 -1
- package/dist/components/hx-tag/index.js +1 -1
- package/dist/components/hx-theme/hx-theme.d.ts +10 -5
- package/dist/components/hx-theme/hx-theme.d.ts.map +1 -1
- package/dist/components/hx-time-picker/hx-time-picker.d.ts +210 -2
- package/dist/components/hx-time-picker/hx-time-picker.d.ts.map +1 -1
- package/dist/components/hx-time-picker/hx-time-picker.styles.d.ts.map +1 -1
- package/dist/components/hx-time-picker/index.js +1 -1
- package/dist/components/hx-toast/hx-toast-stack.d.ts +14 -0
- package/dist/components/hx-toast/hx-toast-stack.d.ts.map +1 -1
- package/dist/components/hx-toast/hx-toast.d.ts +22 -3
- package/dist/components/hx-toast/hx-toast.d.ts.map +1 -1
- package/dist/components/hx-toast/index.js +1 -1
- package/dist/components/hx-toast/toast-factory.d.ts.map +1 -1
- package/dist/components/hx-toggle-button/hx-toggle-button.d.ts +110 -0
- package/dist/components/hx-toggle-button/hx-toggle-button.d.ts.map +1 -1
- package/dist/components/hx-toggle-button/hx-toggle-button.styles.d.ts.map +1 -1
- package/dist/components/hx-toggle-button/index.js +1 -1
- package/dist/components/hx-tooltip/hx-tooltip.d.ts +52 -0
- package/dist/components/hx-tooltip/hx-tooltip.d.ts.map +1 -1
- package/dist/components/hx-tooltip/index.js +1 -1
- package/dist/components/hx-tree-view/hx-tree-item.d.ts +117 -12
- package/dist/components/hx-tree-view/hx-tree-item.d.ts.map +1 -1
- package/dist/components/hx-tree-view/hx-tree-view.d.ts +87 -7
- package/dist/components/hx-tree-view/hx-tree-view.d.ts.map +1 -1
- package/dist/components/hx-tree-view/index.js +1 -1
- package/dist/css/helix-all.css +221 -1
- package/dist/css/helix-core.css +81 -0
- package/dist/css/helix-feedback.css +14 -0
- package/dist/css/helix-forms.css +109 -1
- package/dist/css/helix-overlay.css +17 -0
- package/dist/css/hx-alert.css +9 -0
- package/dist/css/hx-badge.css +28 -0
- package/dist/css/hx-checkbox.css +18 -0
- package/dist/css/hx-color-picker.css +25 -0
- package/dist/css/hx-date-picker.css +2 -1
- package/dist/css/hx-drawer.css +17 -0
- package/dist/css/hx-icon-button.css +30 -0
- package/dist/css/hx-meter.css +5 -0
- package/dist/css/hx-select.css +19 -0
- package/dist/css/hx-switch.css +17 -0
- package/dist/css/hx-tag.css +23 -0
- package/dist/css/hx-time-picker.css +11 -0
- package/dist/css/hx-toggle-button.css +17 -0
- package/dist/css/index.css +1 -1
- package/dist/css/manifest.json +4 -1
- package/dist/index.js +38 -38
- package/dist/shared/aria-flatten-DY6v2vah.js +22 -0
- package/dist/shared/aria-flatten-DY6v2vah.js.map +1 -0
- package/dist/shared/aria-idref-CxvyzfQS.js +126 -0
- package/dist/shared/aria-idref-CxvyzfQS.js.map +1 -0
- package/dist/shared/hx-accordion-ZVzgDzTG.js.map +1 -1
- package/dist/shared/{hx-alert-CLn7CstP.js → hx-alert-Bto8-TIi.js} +55 -37
- package/dist/shared/hx-alert-Bto8-TIi.js.map +1 -0
- package/dist/shared/{hx-badge-CQXgOXJM.js → hx-badge-JlFtAdxS.js} +37 -9
- package/dist/shared/hx-badge-JlFtAdxS.js.map +1 -0
- package/dist/shared/{hx-banner-D3DzpfcP.js → hx-banner-fpRnciIO.js} +13 -5
- package/dist/shared/hx-banner-fpRnciIO.js.map +1 -0
- package/dist/shared/{hx-button-DPY6SPVT.js → hx-button-BOwAEcF1.js} +108 -85
- package/dist/shared/{hx-button-DPY6SPVT.js.map → hx-button-BOwAEcF1.js.map} +1 -1
- package/dist/shared/{hx-button-group-BI-QBqmO.js → hx-button-group-DcHP5MBv.js} +15 -16
- package/dist/shared/{hx-button-group-BI-QBqmO.js.map → hx-button-group-DcHP5MBv.js.map} +1 -1
- package/dist/shared/hx-checkbox-C48KYKFq.js +696 -0
- package/dist/shared/hx-checkbox-C48KYKFq.js.map +1 -0
- package/dist/shared/hx-checkbox-group-BJIAX3zU.js +496 -0
- package/dist/shared/hx-checkbox-group-BJIAX3zU.js.map +1 -0
- package/dist/shared/hx-color-picker-Dk4cBwYQ.js +1221 -0
- package/dist/shared/hx-color-picker-Dk4cBwYQ.js.map +1 -0
- package/dist/shared/hx-combobox-BTLO9qiK.js +1359 -0
- package/dist/shared/hx-combobox-BTLO9qiK.js.map +1 -0
- package/dist/shared/{hx-data-table-CLqVqdxr.js → hx-data-table-Ct3gQ6ya.js} +3 -2
- package/dist/shared/{hx-data-table-CLqVqdxr.js.map → hx-data-table-Ct3gQ6ya.js.map} +1 -1
- package/dist/shared/{hx-date-picker-2iRG1p74.js → hx-date-picker-CiR7FVnR.js} +542 -206
- package/dist/shared/hx-date-picker-CiR7FVnR.js.map +1 -0
- package/dist/shared/hx-dialog-AOZpHSuF.js +717 -0
- package/dist/shared/hx-dialog-AOZpHSuF.js.map +1 -0
- package/dist/shared/{hx-drawer-Y1Ui2IWJ.js → hx-drawer-DH6CdAN1.js} +300 -98
- package/dist/shared/hx-drawer-DH6CdAN1.js.map +1 -0
- package/dist/shared/hx-dropdown-DiLd40Lm.js +401 -0
- package/dist/shared/hx-dropdown-DiLd40Lm.js.map +1 -0
- package/dist/shared/{hx-field-B3Qo8OLS.js → hx-field-zw0U1KVi.js} +99 -38
- package/dist/shared/hx-field-zw0U1KVi.js.map +1 -0
- package/dist/shared/{hx-icon-button-CGNdQSFM.js → hx-icon-button-a6OpeQz5.js} +149 -68
- package/dist/shared/hx-icon-button-a6OpeQz5.js.map +1 -0
- package/dist/shared/{hx-link-C-O6vq0Q.js → hx-link-CMnZRUtQ.js} +55 -43
- package/dist/shared/hx-link-CMnZRUtQ.js.map +1 -0
- package/dist/shared/{hx-list-MyEhh8c7.js → hx-list-De66EtAP.js} +163 -107
- package/dist/shared/hx-list-De66EtAP.js.map +1 -0
- package/dist/shared/hx-menu-divider-BjiRIWKq.js +797 -0
- package/dist/shared/hx-menu-divider-BjiRIWKq.js.map +1 -0
- package/dist/shared/{hx-meter-BPscsw5t.js → hx-meter-BJdh6nrF.js} +105 -64
- package/dist/shared/hx-meter-BJdh6nrF.js.map +1 -0
- package/dist/shared/{hx-nav-item-xqRPOCWX.js → hx-nav-item-CODtUlew.js} +13 -9
- package/dist/shared/{hx-nav-item-xqRPOCWX.js.map → hx-nav-item-CODtUlew.js.map} +1 -1
- package/dist/shared/hx-overflow-menu-BQ4fiMYu.js +492 -0
- package/dist/shared/hx-overflow-menu-BQ4fiMYu.js.map +1 -0
- package/dist/shared/hx-phi-field-C19oxlrr.js.map +1 -1
- package/dist/shared/{hx-popover-B-FP3-wW.js → hx-popover-B9W8-tC0.js} +123 -66
- package/dist/shared/hx-popover-B9W8-tC0.js.map +1 -0
- package/dist/shared/hx-progress-bar-C8nDMdYa.js +290 -0
- package/dist/shared/hx-progress-bar-C8nDMdYa.js.map +1 -0
- package/dist/shared/hx-radio-Z1lV1zTO.js +822 -0
- package/dist/shared/hx-radio-Z1lV1zTO.js.map +1 -0
- package/dist/shared/hx-select-D18CnJ0e.js +1089 -0
- package/dist/shared/hx-select-D18CnJ0e.js.map +1 -0
- package/dist/shared/{hx-spinner-DL5AYr16.js → hx-spinner-BB0h2hKZ.js} +62 -34
- package/dist/shared/hx-spinner-BB0h2hKZ.js.map +1 -0
- package/dist/shared/{hx-split-button-Djnc5Aeg.js → hx-split-button-BoABoEm5.js} +153 -82
- package/dist/shared/hx-split-button-BoABoEm5.js.map +1 -0
- package/dist/shared/{hx-stat-WOcNV1Ry.js → hx-stat-Dtf9lz-O.js} +77 -47
- package/dist/shared/hx-stat-Dtf9lz-O.js.map +1 -0
- package/dist/shared/hx-switch-B6kr-EwE.js +540 -0
- package/dist/shared/hx-switch-B6kr-EwE.js.map +1 -0
- package/dist/shared/{hx-tab-panel-DspCrKqo.js → hx-tab-panel-BQtBXKLD.js} +255 -131
- package/dist/shared/hx-tab-panel-BQtBXKLD.js.map +1 -0
- package/dist/shared/{hx-tag-CNSmdyaK.js → hx-tag-C5aCUpVi.js} +63 -40
- package/dist/shared/hx-tag-C5aCUpVi.js.map +1 -0
- package/dist/shared/{hx-td-DnnEMIuA.js → hx-td-BGkFOJEK.js} +267 -123
- package/dist/shared/hx-td-BGkFOJEK.js.map +1 -0
- package/dist/shared/hx-theme-BsefFWTO.js.map +1 -1
- package/dist/shared/hx-time-picker-iwCD7rzW.js +1038 -0
- package/dist/shared/hx-time-picker-iwCD7rzW.js.map +1 -0
- package/dist/shared/{hx-toggle-button-iLiYrMbD.js → hx-toggle-button-BQ81EDkl.js} +226 -65
- package/dist/shared/hx-toggle-button-BQ81EDkl.js.map +1 -0
- package/dist/shared/{hx-tooltip-nYOv9OLu.js → hx-tooltip-DVqtKPCD.js} +68 -46
- package/dist/shared/hx-tooltip-DVqtKPCD.js.map +1 -0
- package/dist/shared/hx-tree-item-CHrUhuZL.js +925 -0
- package/dist/shared/hx-tree-item-CHrUhuZL.js.map +1 -0
- package/dist/shared/menu-roving-DmMnzJhn.js +14 -0
- package/dist/shared/menu-roving-DmMnzJhn.js.map +1 -0
- package/dist/shared/menu-tree-BNM0SYYq.js +42 -0
- package/dist/shared/menu-tree-BNM0SYYq.js.map +1 -0
- package/dist/shared/{toast-factory-YSznocIV.js → toast-factory-CL2BzdSB.js} +128 -77
- package/dist/shared/toast-factory-CL2BzdSB.js.map +1 -0
- package/dist/utils/aria-flatten.d.ts +56 -0
- package/dist/utils/aria-flatten.d.ts.map +1 -0
- package/dist/utils/aria-idref.d.ts +127 -0
- package/dist/utils/aria-idref.d.ts.map +1 -0
- package/dist/utils/menu-label.d.ts +18 -0
- package/dist/utils/menu-label.d.ts.map +1 -0
- package/dist/utils/menu-roving.d.ts +28 -0
- package/dist/utils/menu-roving.d.ts.map +1 -0
- package/dist/utils/menu-tree.d.ts +41 -0
- package/dist/utils/menu-tree.d.ts.map +1 -0
- package/dist/utils/tree-walk.d.ts +53 -0
- package/dist/utils/tree-walk.d.ts.map +1 -0
- package/figma-inventory.json +132 -20
- package/package.json +1 -1
- package/dist/shared/hx-alert-CLn7CstP.js.map +0 -1
- package/dist/shared/hx-badge-CQXgOXJM.js.map +0 -1
- package/dist/shared/hx-banner-D3DzpfcP.js.map +0 -1
- package/dist/shared/hx-checkbox-D7xma9YH.js +0 -524
- package/dist/shared/hx-checkbox-D7xma9YH.js.map +0 -1
- package/dist/shared/hx-checkbox-group-C9n315Ju.js +0 -323
- package/dist/shared/hx-checkbox-group-C9n315Ju.js.map +0 -1
- package/dist/shared/hx-color-picker-uRc865FJ.js +0 -882
- package/dist/shared/hx-color-picker-uRc865FJ.js.map +0 -1
- package/dist/shared/hx-combobox-DDzqNKEW.js +0 -924
- package/dist/shared/hx-combobox-DDzqNKEW.js.map +0 -1
- package/dist/shared/hx-date-picker-2iRG1p74.js.map +0 -1
- package/dist/shared/hx-dialog-DRN_1-Y-.js +0 -514
- package/dist/shared/hx-dialog-DRN_1-Y-.js.map +0 -1
- package/dist/shared/hx-drawer-Y1Ui2IWJ.js.map +0 -1
- package/dist/shared/hx-dropdown-LyaRc8Rf.js +0 -263
- package/dist/shared/hx-dropdown-LyaRc8Rf.js.map +0 -1
- package/dist/shared/hx-field-B3Qo8OLS.js.map +0 -1
- package/dist/shared/hx-icon-button-CGNdQSFM.js.map +0 -1
- package/dist/shared/hx-link-C-O6vq0Q.js.map +0 -1
- package/dist/shared/hx-list-MyEhh8c7.js.map +0 -1
- package/dist/shared/hx-menu-divider-C2omnPtj.js +0 -558
- package/dist/shared/hx-menu-divider-C2omnPtj.js.map +0 -1
- package/dist/shared/hx-meter-BPscsw5t.js.map +0 -1
- package/dist/shared/hx-overflow-menu-DCLsdIBy.js +0 -374
- package/dist/shared/hx-overflow-menu-DCLsdIBy.js.map +0 -1
- package/dist/shared/hx-popover-B-FP3-wW.js.map +0 -1
- package/dist/shared/hx-progress-bar-Bn3JEPUf.js +0 -258
- package/dist/shared/hx-progress-bar-Bn3JEPUf.js.map +0 -1
- package/dist/shared/hx-radio-CJvNU2yP.js +0 -621
- package/dist/shared/hx-radio-CJvNU2yP.js.map +0 -1
- package/dist/shared/hx-select-C8fEHQhC.js +0 -807
- package/dist/shared/hx-select-C8fEHQhC.js.map +0 -1
- package/dist/shared/hx-spinner-DL5AYr16.js.map +0 -1
- package/dist/shared/hx-split-button-Djnc5Aeg.js.map +0 -1
- package/dist/shared/hx-stat-WOcNV1Ry.js.map +0 -1
- package/dist/shared/hx-switch-BrZFaRue.js +0 -420
- package/dist/shared/hx-switch-BrZFaRue.js.map +0 -1
- package/dist/shared/hx-tab-panel-DspCrKqo.js.map +0 -1
- package/dist/shared/hx-tag-CNSmdyaK.js.map +0 -1
- package/dist/shared/hx-td-DnnEMIuA.js.map +0 -1
- package/dist/shared/hx-time-picker-BoEIZwzv.js +0 -688
- package/dist/shared/hx-time-picker-BoEIZwzv.js.map +0 -1
- package/dist/shared/hx-toggle-button-iLiYrMbD.js.map +0 -1
- package/dist/shared/hx-tooltip-nYOv9OLu.js.map +0 -1
- package/dist/shared/hx-tree-item-C2CiWuDE.js +0 -703
- package/dist/shared/hx-tree-item-C2CiWuDE.js.map +0 -1
- package/dist/shared/toast-factory-YSznocIV.js.map +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { nothing } from 'lit';
|
|
1
|
+
import { nothing, TemplateResult } from 'lit';
|
|
2
2
|
import { HelixElement } from '../../base/index.js';
|
|
3
|
+
declare const HelixIconButton_base: typeof HelixElement;
|
|
3
4
|
/**
|
|
4
5
|
* An icon-only button component for compact, accessible actions.
|
|
5
6
|
* Renders a square button or anchor element containing a single icon.
|
|
@@ -16,6 +17,7 @@ import { HelixElement } from '../../base/index.js';
|
|
|
16
17
|
*
|
|
17
18
|
* @csspart button - The native button or anchor element.
|
|
18
19
|
* @csspart icon - The icon container span wrapping the default slot.
|
|
20
|
+
* @csspart spinner - The loading spinner SVG element shown when `loading` is true.
|
|
19
21
|
*
|
|
20
22
|
* @cssprop [--hx-icon-button-bg=transparent] - Button background color.
|
|
21
23
|
* @cssprop [--hx-icon-button-color=var(--hx-color-primary-500)] - Icon color.
|
|
@@ -51,7 +53,7 @@ import { HelixElement } from '../../base/index.js';
|
|
|
51
53
|
* @cssprop [--hx-color-error-500] - Color.
|
|
52
54
|
* @cssprop [--hx-color-error-600] - Color.
|
|
53
55
|
*/
|
|
54
|
-
export declare class HelixIconButton extends
|
|
56
|
+
export declare class HelixIconButton extends HelixIconButton_base {
|
|
55
57
|
static styles: import('lit').CSSResult[];
|
|
56
58
|
/**
|
|
57
59
|
* Accessible name for the button. Required. Rendered as `aria-label` and
|
|
@@ -81,6 +83,14 @@ export declare class HelixIconButton extends HelixElement {
|
|
|
81
83
|
* @attr disabled
|
|
82
84
|
*/
|
|
83
85
|
disabled: boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Whether the button is in a loading state. Shows the spinner, prevents
|
|
88
|
+
* activation, and sets `aria-busy="true"` on the inner element. Does NOT
|
|
89
|
+
* set the native `disabled` attribute (loading is transient; disabled is
|
|
90
|
+
* persistent, and AT announces them differently).
|
|
91
|
+
* @attr loading
|
|
92
|
+
*/
|
|
93
|
+
loading: boolean;
|
|
84
94
|
/**
|
|
85
95
|
* When set, renders an `<a>` element instead of a `<button>`.
|
|
86
96
|
* @attr href
|
|
@@ -107,7 +117,9 @@ export declare class HelixIconButton extends HelixElement {
|
|
|
107
117
|
private _classes;
|
|
108
118
|
/** @internal */
|
|
109
119
|
private _iconSlot;
|
|
110
|
-
|
|
120
|
+
/** @internal */
|
|
121
|
+
private _renderSpinner;
|
|
122
|
+
render(): typeof nothing | TemplateResult<1>;
|
|
111
123
|
}
|
|
112
124
|
declare global {
|
|
113
125
|
interface HTMLElementTagNameMap {
|
|
@@ -119,4 +131,5 @@ declare global {
|
|
|
119
131
|
}>;
|
|
120
132
|
}
|
|
121
133
|
}
|
|
134
|
+
export {};
|
|
122
135
|
//# sourceMappingURL=hx-icon-button.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-icon-button.d.ts","sourceRoot":"","sources":["../../../src/components/hx-icon-button/hx-icon-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"hx-icon-button.d.ts","sourceRoot":"","sources":["../../../src/components/hx-icon-button/hx-icon-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACzD,OAAO,4CAA4C,CAAC;AAIpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;;AAMnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBACa,eAAgB,SAAQ,oBAAgC;IACnE,OAAgB,MAAM,4BAAoD;IAE1E;;;;;OAKG;IAEH,KAAK,SAAM;IAEX;;;OAGG;IAEH,OAAO,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAW;IAE7E;;;OAGG;IAEH,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAEhC;;;;OAIG;IAEH,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAY;IAE/C;;;OAGG;IAEH,QAAQ,UAAS;IAEjB;;;;;;OAMG;IAEH,OAAO,UAAS;IAEhB;;;OAGG;IAEH,IAAI,EAAE,MAAM,GAAG,SAAS,CAAa;IAErC;;;OAGG;IAEH,IAAI,EAAE,MAAM,GAAG,SAAS,CAAa;IAErC;;;OAGG;IAEH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAa;IAItC,oFAAoF;IACpF,OAAgB,cAAc,UAAQ;cAEnB,eAAe,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAM3D,gBAAgB;IAChB,OAAO,CAAC,YAAY;IA+BpB,gBAAgB;IAChB,OAAO,CAAC,gBAAgB;IAIxB,gBAAgB;IAChB,OAAO,CAAC,QAAQ;IAShB,gBAAgB;IAChB,OAAO,CAAC,SAAS;IAIjB,gBAAgB;IAChB,OAAO,CAAC,cAAc;IA+Bb,MAAM;CAgFhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,eAAe,CAAC;KACnC;IACD,UAAU,mBAAmB;QAC3B,UAAU,EAAE,WAAW,CAAC;YAAE,aAAa,EAAE,UAAU,CAAA;SAAE,CAAC,CAAC;KACxD;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-icon-button.styles.d.ts","sourceRoot":"","sources":["../../../src/components/hx-icon-button/hx-icon-button.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"hx-icon-button.styles.d.ts","sourceRoot":"","sources":["../../../src/components/hx-icon-button/hx-icon-button.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,yBAyNjC,CAAC"}
|
|
@@ -3,6 +3,7 @@ import { HelixElement } from '../../base/index.js';
|
|
|
3
3
|
* Variant options for the link component.
|
|
4
4
|
*/
|
|
5
5
|
export type LinkVariant = 'default' | 'subtle' | 'danger';
|
|
6
|
+
declare const HelixLink_base: typeof HelixElement;
|
|
6
7
|
/**
|
|
7
8
|
* A semantic hyperlink component with accessibility-first design.
|
|
8
9
|
* Renders a native `<a>` element for enabled state and a `<span>` for
|
|
@@ -52,7 +53,7 @@ export type LinkVariant = 'default' | 'subtle' | 'danger';
|
|
|
52
53
|
* @cssprop [--hx-color-error-700] - Color.
|
|
53
54
|
* @cssprop [--hx-color-neutral-400] - Color.
|
|
54
55
|
*/
|
|
55
|
-
export declare class HelixLink extends
|
|
56
|
+
export declare class HelixLink extends HelixLink_base {
|
|
56
57
|
static styles: import('lit').CSSResult[];
|
|
57
58
|
/**
|
|
58
59
|
* The URL the link points to.
|
|
@@ -90,6 +91,13 @@ export declare class HelixLink extends HelixElement {
|
|
|
90
91
|
* @attr rel
|
|
91
92
|
*/
|
|
92
93
|
rel: string | undefined;
|
|
94
|
+
/**
|
|
95
|
+
* Localised announcement text appended (visually hidden) to the link's
|
|
96
|
+
* accessible name when `target="_blank"`. Defaults to English. Override
|
|
97
|
+
* for i18n contexts so AT users hear the new-tab notice in their locale.
|
|
98
|
+
* @attr external-label
|
|
99
|
+
*/
|
|
100
|
+
externalLabel: string;
|
|
93
101
|
/** @internal Blocks Enter and Space activation on disabled span. */
|
|
94
102
|
private _handleDisabledKeydown;
|
|
95
103
|
/** @internal */
|
|
@@ -105,4 +113,5 @@ declare global {
|
|
|
105
113
|
'hx-link': HelixLink;
|
|
106
114
|
}
|
|
107
115
|
}
|
|
116
|
+
export {};
|
|
108
117
|
//# sourceMappingURL=hx-link.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-link.d.ts","sourceRoot":"","sources":["../../../src/components/hx-link/hx-link.ts"],"names":[],"mappings":"AACA,OAAO,4CAA4C,CAAC;AAIpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"hx-link.d.ts","sourceRoot":"","sources":["../../../src/components/hx-link/hx-link.ts"],"names":[],"mappings":"AACA,OAAO,4CAA4C,CAAC;AAIpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKnD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,qBACa,SAAU,SAAQ,cAAgC;IAC7D,OAAgB,MAAM,4BAAuC;IAE7D;;;OAGG;IAEH,IAAI,EAAE,MAAM,GAAG,SAAS,CAAa;IAErC;;;;;OAKG;IAEH,MAAM,EAAE,MAAM,GAAG,SAAS,CAAa;IAEvC;;;OAGG;IAEH,OAAO,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAa;IAErD;;;;;OAKG;IAEH,QAAQ,UAAS;IAEjB;;;;OAIG;IAEH,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAa;IAEzC;;;;OAIG;IAEH,GAAG,EAAE,MAAM,GAAG,SAAS,CAAa;IAEpC;;;;;OAKG;IAEH,aAAa,EAAE,MAAM,CAAwB;IAI7C,oEAAoE;IACpE,OAAO,CAAC,sBAAsB;IAM9B,gBAAgB;IAChB,OAAO,CAAC,YAAY;IAkBpB,gBAAgB;IAChB,OAAO,CAAC,WAAW;IAMnB,gBAAgB;IAChB,OAAO,CAAC,mBAAmB;IAuBlB,MAAM;CAuDhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,SAAS,CAAC;KACtB;CACF"}
|
|
@@ -3,6 +3,14 @@ import { HelixElement } from '../../base/index.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* A rich list item for use inside `hx-list`.
|
|
5
5
|
*
|
|
6
|
+
* Group 7 host-canonical: `role="option"` (interactive listbox mode) is
|
|
7
|
+
* mirrored onto the **host** via `_internals.role` AND the legacy
|
|
8
|
+
* setAttribute('role',...) path. The dual-surface pattern preserves the
|
|
9
|
+
* existing imperative host-attribute behaviour (so consumers querying
|
|
10
|
+
* `host.getAttribute('role')` still work) while adding cross-shadow IDREF
|
|
11
|
+
* wiring through `internals.ariaLabelledByElements` for engines that
|
|
12
|
+
* support it.
|
|
13
|
+
*
|
|
6
14
|
* @summary Individual list item with optional prefix, suffix, description, link, and disabled/selected states.
|
|
7
15
|
*
|
|
8
16
|
* @tag hx-list-item
|
|
@@ -30,6 +38,12 @@ import { HelixElement } from '../../base/index.js';
|
|
|
30
38
|
*/
|
|
31
39
|
export declare class HelixListItem extends HelixElement {
|
|
32
40
|
static styles: import('lit').CSSResult[];
|
|
41
|
+
/**
|
|
42
|
+
* Test seam (Group 7 host-canonical migration): see other Group 7 components.
|
|
43
|
+
* Production code MUST NOT touch this field.
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
46
|
+
static __testSupportsIdrefRefsOverride: boolean | null;
|
|
33
47
|
/**
|
|
34
48
|
* Whether the item is disabled. Prevents interaction.
|
|
35
49
|
* @attr disabled
|
|
@@ -61,10 +75,22 @@ export declare class HelixListItem extends HelixElement {
|
|
|
61
75
|
* @attr type
|
|
62
76
|
*/
|
|
63
77
|
type: 'default' | 'term' | 'definition';
|
|
78
|
+
/** @internal */
|
|
79
|
+
private _supportsIdrefRefs;
|
|
80
|
+
/** @internal */
|
|
81
|
+
private _ariaMirror;
|
|
82
|
+
/** @internal */
|
|
83
|
+
private _resolvedAccessibleName;
|
|
84
|
+
connectedCallback(): void;
|
|
85
|
+
disconnectedCallback(): void;
|
|
64
86
|
updated(changedProps: PropertyValues<this>): void;
|
|
65
87
|
/**
|
|
66
88
|
* Syncs ARIA attributes to the host element when in interactive (listbox option) mode.
|
|
67
|
-
*
|
|
89
|
+
* Preserves the prior imperative `setAttribute('role', 'option')` path so existing
|
|
90
|
+
* consumer queries and tests continue to pass. ALSO mirrors the same surface onto
|
|
91
|
+
* `internals.role` / `internals.ariaSelected` (modern path) so cross-shadow IDREF
|
|
92
|
+
* resolution through `internals.ariaLabelledByElements` works on engines that
|
|
93
|
+
* support it.
|
|
68
94
|
*/
|
|
69
95
|
/** @internal */
|
|
70
96
|
private _syncHostAria;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-list-item.d.ts","sourceRoot":"","sources":["../../../src/components/hx-list/hx-list-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACzD,OAAO,4CAA4C,CAAC;AAIpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"hx-list-item.d.ts","sourceRoot":"","sources":["../../../src/components/hx-list/hx-list-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACzD,OAAO,4CAA4C,CAAC;AAIpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAWnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBACa,aAAc,SAAQ,YAAY;IAC7C,OAAgB,MAAM,4BAA8C;IAEpE;;;;OAIG;IACH,MAAM,CAAC,+BAA+B,EAAE,OAAO,GAAG,IAAI,CAAQ;IAE9D;;;OAGG;IAEH,QAAQ,UAAS;IAEjB;;;OAGG;IAEH,QAAQ,UAAS;IAEjB;;;OAGG;IAEH,IAAI,EAAE,MAAM,GAAG,SAAS,CAAa;IAErC;;;OAGG;IAEH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAa;IAEtC;;;;OAIG;IAEH,WAAW,UAAS;IAEpB;;;OAGG;IAEH,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,YAAY,CAAa;IAIpD,gBAAgB;IAChB,OAAO,CAAC,kBAAkB,CAAQ;IAElC,gBAAgB;IAChB,OAAO,CAAC,WAAW,CAAsC;IAEzD,gBAAgB;IAChB,OAAO,CAAC,uBAAuB,CAAM;IAE5B,iBAAiB,IAAI,IAAI;IAazB,oBAAoB,IAAI,IAAI;IAM5B,OAAO,CAAC,YAAY,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAW1D;;;;;;;OAOG;IACH,gBAAgB;IAChB,OAAO,CAAC,aAAa;IAgFrB,gBAAgB;IAChB,OAAO,CAAC,sBAAsB;IAU9B,gBAAgB;IAChB,OAAO,CAAC,YAAY;IAUpB,gBAAgB;IAChB,OAAO,CAAC,cAAc;IAmBb,MAAM;IAmFf,gBAAgB;IAChB,OAAO,CAAC,cAAc;CAQvB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,aAAa,CAAC;KAC/B;CACF"}
|
|
@@ -3,6 +3,12 @@ import { HelixElement } from '../../base/index.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* A styled list container supporting plain, bulleted, numbered, description, and interactive variants.
|
|
5
5
|
*
|
|
6
|
+
* Group 7 host-canonical: `role="list"` (or `role="listbox"` in interactive
|
|
7
|
+
* mode) lives on the **host** via `_internals.role`, harmonizing with
|
|
8
|
+
* `hx-structured-list` (the gold-standard exemplar for Group 7). The `<dl>`
|
|
9
|
+
* description variant keeps native semantics — no host role assigned, since
|
|
10
|
+
* `<dl>` IS the semantic surface and AT walks it directly.
|
|
11
|
+
*
|
|
6
12
|
* @summary Container for list items with optional dividers and interactive selection.
|
|
7
13
|
*
|
|
8
14
|
* @tag hx-list
|
|
@@ -22,6 +28,12 @@ import { HelixElement } from '../../base/index.js';
|
|
|
22
28
|
*/
|
|
23
29
|
export declare class HelixList extends HelixElement {
|
|
24
30
|
static styles: import('lit').CSSResult[];
|
|
31
|
+
/**
|
|
32
|
+
* Test seam (Group 7 host-canonical migration): see other Group 7 components.
|
|
33
|
+
* Production code MUST NOT touch this field.
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
static __testSupportsIdrefRefsOverride: boolean | null;
|
|
25
37
|
/**
|
|
26
38
|
* Visual variant of the list.
|
|
27
39
|
* @attr variant
|
|
@@ -37,6 +49,12 @@ export declare class HelixList extends HelixElement {
|
|
|
37
49
|
* @attr label
|
|
38
50
|
*/
|
|
39
51
|
label: string | undefined;
|
|
52
|
+
/** @internal */
|
|
53
|
+
private _supportsIdrefRefs;
|
|
54
|
+
/** @internal */
|
|
55
|
+
private _ariaMirror;
|
|
56
|
+
/** @internal */
|
|
57
|
+
private _resolvedAccessibleName;
|
|
40
58
|
connectedCallback(): void;
|
|
41
59
|
disconnectedCallback(): void;
|
|
42
60
|
updated(changedProps: PropertyValues<this>): void;
|
|
@@ -46,6 +64,16 @@ export declare class HelixList extends HelixElement {
|
|
|
46
64
|
*/
|
|
47
65
|
/** @internal */
|
|
48
66
|
private _updateItemStates;
|
|
67
|
+
/**
|
|
68
|
+
* Resolve the host's role for the current variant. Description variant
|
|
69
|
+
* uses native `<dl>` semantics (returns `null` so the host carries no
|
|
70
|
+
* explicit role). Interactive variant becomes `listbox`. All other
|
|
71
|
+
* variants are `list`.
|
|
72
|
+
* @internal
|
|
73
|
+
*/
|
|
74
|
+
private _hostRole;
|
|
75
|
+
/** @internal */
|
|
76
|
+
private _syncHostAriaSemantics;
|
|
49
77
|
/** @internal */
|
|
50
78
|
private _handleSlotChange;
|
|
51
79
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-list.d.ts","sourceRoot":"","sources":["../../../src/components/hx-list/hx-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACzD,OAAO,4CAA4C,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"hx-list.d.ts","sourceRoot":"","sources":["../../../src/components/hx-list/hx-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACzD,OAAO,4CAA4C,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAanD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBACa,SAAU,SAAQ,YAAY;IACzC,OAAgB,MAAM,4BAA0C;IAEhE;;;;OAIG;IACH,MAAM,CAAC,+BAA+B,EAAE,OAAO,GAAG,IAAI,CAAQ;IAE9D;;;OAGG;IAEH,OAAO,EAAE,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,aAAa,GAAG,aAAa,CAAW;IAErF;;;OAGG;IAEH,OAAO,UAAS;IAEhB;;;OAGG;IAEH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAa;IAItC,gBAAgB;IAChB,OAAO,CAAC,kBAAkB,CAAQ;IAElC,gBAAgB;IAChB,OAAO,CAAC,WAAW,CAAsC;IAEzD,gBAAgB;IAChB,OAAO,CAAC,uBAAuB,CAAM;IAE5B,iBAAiB,IAAI,IAAI;IAczB,oBAAoB,IAAI,IAAI;IAO5B,OAAO,CAAC,YAAY,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAkB1D;;;OAGG;IACH,gBAAgB;IAChB,OAAO,CAAC,iBAAiB;IAQzB;;;;;;OAMG;IACH,OAAO,CAAC,SAAS;IAMjB,gBAAgB;IAChB,OAAO,CAAC,sBAAsB;IAwE9B,gBAAgB;IAChB,OAAO,CAAC,iBAAiB;IAIzB,gBAAgB;IAChB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAiC7B;IAEF,gBAAgB;IAChB,OAAO,CAAC,gBAAgB;IAgBf,MAAM;CAmDhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,SAAS,CAAC;KACtB;CACF"}
|
|
@@ -2,6 +2,13 @@ import { HelixElement } from '../../base/index.js';
|
|
|
2
2
|
/**
|
|
3
3
|
* A visual separator for grouping items within an `hx-menu`.
|
|
4
4
|
*
|
|
5
|
+
* Group 5b host-canonical: `role="separator"` lives on the **host** via
|
|
6
|
+
* `_internals.role` so the parent `<hx-menu>` (`role="menu"`) sees the
|
|
7
|
+
* separator as a direct child. `aria-orientation` is mirrored onto the host
|
|
8
|
+
* via `internals.ariaOrientation`. The inner div is presentational on the
|
|
9
|
+
* modern path and stripped of its role; the legacy fallback keeps the
|
|
10
|
+
* inner role for engines without ElementInternals IDL accessors.
|
|
11
|
+
*
|
|
5
12
|
* @summary Horizontal divider between menu sections.
|
|
6
13
|
*
|
|
7
14
|
* @tag hx-menu-divider
|
|
@@ -12,6 +19,9 @@ import { HelixElement } from '../../base/index.js';
|
|
|
12
19
|
*/
|
|
13
20
|
export declare class HelixMenuDivider extends HelixElement {
|
|
14
21
|
static styles: import('lit').CSSResult[];
|
|
22
|
+
/** @internal */
|
|
23
|
+
private _supportsIdrefRefs;
|
|
24
|
+
connectedCallback(): void;
|
|
15
25
|
render(): import('lit').TemplateResult<1>;
|
|
16
26
|
}
|
|
17
27
|
declare global {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-menu-divider.d.ts","sourceRoot":"","sources":["../../../src/components/hx-menu/hx-menu-divider.ts"],"names":[],"mappings":"AACA,OAAO,4CAA4C,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"hx-menu-divider.d.ts","sourceRoot":"","sources":["../../../src/components/hx-menu/hx-menu-divider.ts"],"names":[],"mappings":"AACA,OAAO,4CAA4C,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKnD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBACa,gBAAiB,SAAQ,YAAY;IAChD,OAAgB,MAAM,4BAAqD;IAE3E,gBAAgB;IAChB,OAAO,CAAC,kBAAkB,CAAQ;IAEzB,iBAAiB,IAAI,IAAI;IAQzB,MAAM;CAehB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,gBAAgB,CAAC;KACrC;CACF"}
|
|
@@ -1,8 +1,23 @@
|
|
|
1
|
+
import { PropertyValues } from 'lit';
|
|
1
2
|
import { HelixElement } from '../../base/index.js';
|
|
2
3
|
/**
|
|
3
4
|
* A single interactive item for use inside `hx-menu`. Supports normal, checkbox,
|
|
4
5
|
* and radio types, loading state, prefix/suffix slots, and submenu nesting.
|
|
5
|
-
*
|
|
6
|
+
*
|
|
7
|
+
* Group 5b host-canonical: `role="menuitem"` (or `menuitemcheckbox` /
|
|
8
|
+
* `menuitemradio` based on `type`) lives on the **host** via
|
|
9
|
+
* `_internals.role`. The roving tabindex is written to the host, so the host
|
|
10
|
+
* is the focusable surface and lands directly under the parent `<hx-menu>`
|
|
11
|
+
* (which carries `role="menu"`) in the AT walked tree. The inner element is
|
|
12
|
+
* presentational on the modern path — no role, no aria-* attributes — and
|
|
13
|
+
* carries only click/keyboard event handlers. Keyboard activation
|
|
14
|
+
* (Enter/Space) is owned by the host's `keydown` handler.
|
|
15
|
+
*
|
|
16
|
+
* Cross-shadow naming: consumer-supplied `aria-label` / `aria-labelledby` on
|
|
17
|
+
* the host project to `internals.ariaLabel` / `internals.ariaLabelledByElements`
|
|
18
|
+
* via the shared IDREF mirror. The slotted text content is used as the default
|
|
19
|
+
* accessible name when no override is set (AT walks slotted children
|
|
20
|
+
* automatically through the host's role).
|
|
6
21
|
*
|
|
7
22
|
* @summary Interactive item within an hx-menu.
|
|
8
23
|
*
|
|
@@ -29,6 +44,19 @@ import { HelixElement } from '../../base/index.js';
|
|
|
29
44
|
*/
|
|
30
45
|
export declare class HelixMenuItem extends HelixElement {
|
|
31
46
|
static styles: import('lit').CSSResult[];
|
|
47
|
+
/**
|
|
48
|
+
* Test seam (codex push-gate round-1 finding 3 mirror of hx-select
|
|
49
|
+
* pattern): when set to `true` or `false`, overrides the platform
|
|
50
|
+
* `supportsIdrefElementReferences` probe before `connectedCallback`
|
|
51
|
+
* seeds `_supportsIdrefRefs`. Tests that need to exercise the fallback
|
|
52
|
+
* path must select it BEFORE the host connects so tabindex / role
|
|
53
|
+
* placement matches a legacy engine for the entire lifecycle.
|
|
54
|
+
*
|
|
55
|
+
* Production code MUST NOT touch this field. It is `static` so the test
|
|
56
|
+
* stub cleanup is global and obvious.
|
|
57
|
+
* @internal
|
|
58
|
+
*/
|
|
59
|
+
static __testSupportsIdrefRefsOverride: boolean | null;
|
|
32
60
|
/**
|
|
33
61
|
* @internal Managed by parent hx-menu for roving tabindex.
|
|
34
62
|
* Only the active item in the menu has tabindex=0; all others have -1.
|
|
@@ -70,13 +98,82 @@ export declare class HelixMenuItem extends HelixElement {
|
|
|
70
98
|
private _submenuOpen;
|
|
71
99
|
/** @internal */
|
|
72
100
|
private _menuItemEl;
|
|
73
|
-
/**
|
|
101
|
+
/** @internal */
|
|
102
|
+
private _supportsIdrefRefs;
|
|
103
|
+
/** @internal */
|
|
104
|
+
private _ariaMirror;
|
|
105
|
+
/**
|
|
106
|
+
* Resolved accessible name for the menu item — read by both
|
|
107
|
+
* `_syncHostAriaSemantics()` (modern path: host `internals.ariaLabel`)
|
|
108
|
+
* and the fallback `render()` branch (legacy path: inner
|
|
109
|
+
* `div[role="menuitem*"]` `aria-label`). Empty string means "no
|
|
110
|
+
* override" — slotted text content provides the implicit name through
|
|
111
|
+
* the announced surface (host on modern; inner div on fallback). AccName
|
|
112
|
+
* 1.2 §4.3.1 precedence: consumer host `aria-labelledby` (flattened) >
|
|
113
|
+
* consumer host `aria-label` > implicit slotted text.
|
|
114
|
+
* @internal
|
|
115
|
+
*/
|
|
116
|
+
private _resolvedAccessibleName;
|
|
117
|
+
/**
|
|
118
|
+
* Focus the menu item. On the modern host-canonical path, focus lands on
|
|
119
|
+
* the host (which carries the roving tabindex and announced role). On the
|
|
120
|
+
* legacy fallback path, focus delegates to the inner element which still
|
|
121
|
+
* carries the role.
|
|
122
|
+
*/
|
|
74
123
|
focus(options?: FocusOptions): void;
|
|
75
124
|
connectedCallback(): void;
|
|
125
|
+
disconnectedCallback(): void;
|
|
126
|
+
updated(changedProperties: PropertyValues<this>): void;
|
|
127
|
+
/**
|
|
128
|
+
* Apply the roving tabindex to the host (modern path) so the host is the
|
|
129
|
+
* Tab stop. Disabled items are non-tabbable.
|
|
130
|
+
*
|
|
131
|
+
* Codex push-gate round-1 finding 3: on the fallback path
|
|
132
|
+
* (`_supportsIdrefRefs === false`), the inner `.menu-item` element
|
|
133
|
+
* carries `role="menuitem"` and the roving tabindex via the template
|
|
134
|
+
* (see `render()`'s legacy branch). If we ALSO assign a non-negative
|
|
135
|
+
* tabindex to the host, the user gets two focusable surfaces per item —
|
|
136
|
+
* Tab can land on the host even though the AT-announced role/aria-* live
|
|
137
|
+
* on the inner element. The host MUST be removed from the tab order on
|
|
138
|
+
* the fallback path; the inner element is the canonical Tab stop.
|
|
139
|
+
* @internal
|
|
140
|
+
*/
|
|
141
|
+
private _applyHostTabIndex;
|
|
142
|
+
/**
|
|
143
|
+
* Mirror menuitem semantics onto the host via ElementInternals. Role is
|
|
144
|
+
* derived from `type` (normal → menuitem, checkbox → menuitemcheckbox,
|
|
145
|
+
* radio → menuitemradio). aria-disabled, aria-checked, aria-haspopup,
|
|
146
|
+
* aria-expanded, and aria-busy reactively follow component state.
|
|
147
|
+
* Consumer-supplied `aria-label` / `aria-labelledby` on the host project
|
|
148
|
+
* onto `internals.ariaLabel` / `internals.ariaLabelledByElements`.
|
|
149
|
+
* @internal
|
|
150
|
+
*/
|
|
151
|
+
private _syncHostAriaSemantics;
|
|
76
152
|
/** @internal */
|
|
77
153
|
private _handleSubmenuSlotChange;
|
|
78
154
|
/** @internal */
|
|
79
155
|
private _activate;
|
|
156
|
+
/**
|
|
157
|
+
* Origin guard for host-bound click/keydown handlers. Returns `true` only
|
|
158
|
+
* when the event originated on THIS host (its shadow tree) and not on a
|
|
159
|
+
* nested `hx-menu-item` projected into the `submenu` slot.
|
|
160
|
+
*
|
|
161
|
+
* Codex push-gate round-5 P1: nested submenu items are slotted descendants
|
|
162
|
+
* in the parent's light DOM. Click/keydown events from a Child item bubble
|
|
163
|
+
* through the parent host's listeners — without this guard, selecting Child
|
|
164
|
+
* also activates Parent (double `hx-item-select`) and Enter/Space/ArrowRight
|
|
165
|
+
* on Child re-trigger Parent's handlers (wrong-level activation, second
|
|
166
|
+
* submenu reopen).
|
|
167
|
+
*
|
|
168
|
+
* Walks `composedPath()` and returns the closest `hx-menu-item` ancestor of
|
|
169
|
+
* the original target; the event is "ours" iff that ancestor is `this`.
|
|
170
|
+
* Mirrors the inner-vs-host origin discipline used by `hx-checkbox`,
|
|
171
|
+
* `hx-switch`, and `hx-toggle-button`'s host handlers (`path[0] !== this`)
|
|
172
|
+
* but adapts for hx-menu-item's nested-host case where path[0] is the
|
|
173
|
+
* deepest inner element of a slotted child's own shadow tree.
|
|
174
|
+
* @internal
|
|
175
|
+
*/
|
|
176
|
+
private _isOwnEvent;
|
|
80
177
|
/** @internal */
|
|
81
178
|
private _handleClick;
|
|
82
179
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-menu-item.d.ts","sourceRoot":"","sources":["../../../src/components/hx-menu/hx-menu-item.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hx-menu-item.d.ts","sourceRoot":"","sources":["../../../src/components/hx-menu/hx-menu-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACzD,OAAO,4CAA4C,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAYnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBACa,aAAc,SAAQ,YAAY;IAC7C,OAAgB,MAAM,4BAAkD;IAExE;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,+BAA+B,EAAE,OAAO,GAAG,IAAI,CAAQ;IAE9D;;;OAGG;IAEH,OAAO,CAAC,eAAe,CAAM;IAE7B,yEAAyE;IACzE,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKtC,mGAAmG;IACnG,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAInC;;;OAGG;IAEH,KAAK,SAAM;IAEX;;;OAGG;IAEH,QAAQ,UAAS;IAEjB;;;OAGG;IAEH,OAAO,UAAS;IAEhB;;;;OAIG;IAEH,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAY;IAEjD;;;OAGG;IAEH,OAAO,UAAS;IAEhB,gBAAgB;IAEhB,OAAO,CAAC,WAAW,CAAS;IAE5B,qEAAqE;IAErE,OAAO,CAAC,YAAY,CAAS;IAE7B,gBAAgB;IACK,OAAO,CAAC,WAAW,CAAsB;IAI9D,gBAAgB;IAChB,OAAO,CAAC,kBAAkB,CAAQ;IAElC,gBAAgB;IAChB,OAAO,CAAC,WAAW,CAAsC;IAEzD;;;;;;;;;;OAUG;IACH,OAAO,CAAC,uBAAuB,CAAM;IAErC;;;;;OAKG;IACM,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI;IASnC,iBAAiB,IAAI,IAAI;IAmCzB,oBAAoB,IAAI,IAAI;IAQ5B,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAoB/D;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IAqG9B,gBAAgB;IAChB,OAAO,CAAC,wBAAwB;IAKhC,gBAAgB;IAChB,OAAO,CAAC,SAAS;IA2BjB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,WAAW;IAWnB,gBAAgB;IAChB,OAAO,CAAC,YAAY,CAWlB;IAEF,gBAAgB;IAChB,OAAO,CAAC,cAAc,CAyCpB;IAEF,gBAAgB;IAChB,OAAO,CAAC,kBAAkB;IAmB1B,gBAAgB;IAChB,OAAO,CAAC,kBAAkB;IAmB1B,gBAAgB;IAChB,OAAO,CAAC,cAAc;IActB,gBAAgB;IAChB,OAAO,CAAC,QAAQ;IAWP,MAAM;CA8EhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,aAAa,CAAC;KAC/B;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-menu-item.styles.d.ts","sourceRoot":"","sources":["../../../src/components/hx-menu/hx-menu-item.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"hx-menu-item.styles.d.ts","sourceRoot":"","sources":["../../../src/components/hx-menu/hx-menu-item.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,yBAsJ/B,CAAC"}
|
|
@@ -1,8 +1,24 @@
|
|
|
1
|
+
import { PropertyValues } from 'lit';
|
|
1
2
|
import { HelixElement } from '../../base/index.js';
|
|
2
3
|
/**
|
|
3
4
|
* A menu container that manages keyboard navigation over a list of menu items.
|
|
4
5
|
* Use with `hx-menu-item` and `hx-menu-divider`.
|
|
5
6
|
*
|
|
7
|
+
* Group 5b host-canonical: `role="menu"` lives on the **host** via
|
|
8
|
+
* `_internals.role`. The host carries the announced surface so AT walks
|
|
9
|
+
* `<hx-menu>` (role=menu) → slotted `<hx-menu-item>` (role=menuitem on host)
|
|
10
|
+
* directly without two layers of indirection. Consumer-supplied
|
|
11
|
+
* `aria-label` / `aria-labelledby` on the host are resolved via the shared
|
|
12
|
+
* IDREF mirror; cross-shadow naming uses `ariaLabelledByElements` (modern)
|
|
13
|
+
* with a flattened-string fallback (legacy).
|
|
14
|
+
*
|
|
15
|
+
* Submenu coordination: when an `hx-menu-item` emits `hx-item-submenu-open`
|
|
16
|
+
* or `hx-item-submenu-close`, the parent menu auto-handles the toggle by
|
|
17
|
+
* calling `setSubmenuOpen()` on the item — UNLESS the consumer has called
|
|
18
|
+
* `event.preventDefault()` on the bubbled event, signaling that they own the
|
|
19
|
+
* submenu lifecycle. This matches APG-mandated behaviour while leaving an
|
|
20
|
+
* opt-out for advanced consumers.
|
|
21
|
+
*
|
|
6
22
|
* @summary Context/action menu with keyboard-navigable items.
|
|
7
23
|
*
|
|
8
24
|
* @tag hx-menu
|
|
@@ -30,8 +46,10 @@ import { HelixElement } from '../../base/index.js';
|
|
|
30
46
|
export declare class HelixMenu extends HelixElement {
|
|
31
47
|
static styles: import('lit').CSSResult[];
|
|
32
48
|
/**
|
|
33
|
-
* Accessible label for the menu.
|
|
34
|
-
* `
|
|
49
|
+
* Accessible label for the menu. Used as a fallback when no consumer-supplied
|
|
50
|
+
* `aria-label` / `aria-labelledby` is present on the host. On the modern
|
|
51
|
+
* host-canonical path this projects onto `internals.ariaLabel`; on the
|
|
52
|
+
* legacy fallback path it appears as `aria-label` on the inner div.
|
|
35
53
|
* @attr label
|
|
36
54
|
*/
|
|
37
55
|
label: string;
|
|
@@ -50,7 +68,50 @@ export declare class HelixMenu extends HelixElement {
|
|
|
50
68
|
* @internal
|
|
51
69
|
*/
|
|
52
70
|
private _typeaheadTimer;
|
|
71
|
+
/**
|
|
72
|
+
* Test seam (codex push-gate round-2 finding 1): when set to `true` or
|
|
73
|
+
* `false`, overrides the platform `supportsIdrefElementReferences` probe
|
|
74
|
+
* before `connectedCallback` seeds `_supportsIdrefRefs`. Mirrors the
|
|
75
|
+
* hx-select / hx-menu-item seam — required so tests can deterministically
|
|
76
|
+
* exercise the legacy fallback render branch (where the inner
|
|
77
|
+
* `div[role="menu"]` is the announced surface and must mirror the
|
|
78
|
+
* resolved accessible name).
|
|
79
|
+
*
|
|
80
|
+
* Production code MUST NOT touch this field. It is `static` so the test
|
|
81
|
+
* stub cleanup is global and obvious.
|
|
82
|
+
* @internal
|
|
83
|
+
*/
|
|
84
|
+
static __testSupportsIdrefRefsOverride: boolean | null;
|
|
85
|
+
/** @internal */
|
|
86
|
+
private _supportsIdrefRefs;
|
|
53
87
|
/** @internal */
|
|
88
|
+
private _ariaMirror;
|
|
89
|
+
/**
|
|
90
|
+
* Resolved accessible name for the menu — the single source of truth that
|
|
91
|
+
* both `_syncHostAriaSemantics()` (modern path: writes to
|
|
92
|
+
* `internals.ariaLabel`) and the fallback `render()` branch (legacy path:
|
|
93
|
+
* writes to inner `div[role="menu"]` `aria-label`) read. Recomputed by
|
|
94
|
+
* `_syncHostAriaSemantics()` whenever host aria-* or `label` changes via
|
|
95
|
+
* the shared IDREF mirror. AccName 1.2 §4.3.1 precedence: consumer host
|
|
96
|
+
* `aria-labelledby` (flattened) > consumer host `aria-label` > `label`
|
|
97
|
+
* property > literal "Menu".
|
|
98
|
+
* @internal
|
|
99
|
+
*/
|
|
100
|
+
private _resolvedAccessibleName;
|
|
101
|
+
/**
|
|
102
|
+
* Return the menu's enabled, top-level `hx-menu-item` children.
|
|
103
|
+
*
|
|
104
|
+
* Codex push-gate round-6 finding 3: `querySelectorAll('hx-menu-item')`
|
|
105
|
+
* walks the entire descendant tree, which on a parent menuitem
|
|
106
|
+
* includes the slotted nested `<hx-menu>` and ITS items. Treating
|
|
107
|
+
* those as top-level options corrupts roving tabindex, ArrowUp/Down
|
|
108
|
+
* navigation, and typeahead matching (typing the first letter of a
|
|
109
|
+
* grandchild item lands focus there instead of on the next sibling).
|
|
110
|
+
* Restrict to direct children of `this` so each menu owns only its
|
|
111
|
+
* own items.
|
|
112
|
+
*
|
|
113
|
+
* @internal
|
|
114
|
+
*/
|
|
54
115
|
private _getItems;
|
|
55
116
|
/**
|
|
56
117
|
* Synchronize roving tabindex across all enabled items.
|
|
@@ -70,12 +131,66 @@ export declare class HelixMenu extends HelixElement {
|
|
|
70
131
|
private _handleKeyDown;
|
|
71
132
|
/** @internal */
|
|
72
133
|
private _handleTypeahead;
|
|
134
|
+
/**
|
|
135
|
+
* Read the typeahead label for an item — delegates to the shared
|
|
136
|
+
* `getMenuItemTypeaheadLabel` util so all four menu-bearing components
|
|
137
|
+
* (`hx-menu`, `hx-dropdown`, `hx-overflow-menu`, `hx-split-button`)
|
|
138
|
+
* share one submenu-aware extractor. Codex push-gate round-7 finding 3
|
|
139
|
+
* extracted this helper from its original home here in `hx-menu.ts`.
|
|
140
|
+
*
|
|
141
|
+
* @internal
|
|
142
|
+
*/
|
|
143
|
+
private _getTypeaheadLabel;
|
|
73
144
|
/** @internal */
|
|
74
145
|
private _handleSlotChange;
|
|
75
146
|
/** @internal */
|
|
76
147
|
private _handleItemSelect;
|
|
148
|
+
/**
|
|
149
|
+
* Auto-handle submenu open/close events emitted by child `hx-menu-item`
|
|
150
|
+
* children. APG-mandated behaviour: ArrowRight on a parent item opens the
|
|
151
|
+
* nested submenu and focuses its first item; ArrowLeft closes the submenu
|
|
152
|
+
* and returns focus to the parent item. Consumers that own submenu
|
|
153
|
+
* lifecycle themselves can `event.preventDefault()` to opt out.
|
|
154
|
+
* @internal
|
|
155
|
+
*/
|
|
156
|
+
private _handleSubmenuOpen;
|
|
157
|
+
/** @internal */
|
|
158
|
+
private _handleSubmenuClose;
|
|
159
|
+
connectedCallback(): void;
|
|
77
160
|
disconnectedCallback(): void;
|
|
161
|
+
/**
|
|
162
|
+
* Codex push-gate round-7 finding 1: keydown bound on the HOST receives
|
|
163
|
+
* events that bubble out of nested submenus. When a child submenu is
|
|
164
|
+
* open and focus lives inside it, ArrowUp/Down/Home/End/Escape on the
|
|
165
|
+
* inner item bubbles to EVERY enclosing `hx-menu`. Without this guard
|
|
166
|
+
* the outer menu would run `_focusItem(...)` against its OWN top-level
|
|
167
|
+
* items and steal focus back out of the child submenu, and Escape would
|
|
168
|
+
* dispatch one `hx-close` per enclosing menu. Mirrors the
|
|
169
|
+
* `findClosestMenuAncestor` pattern already used by the submenu
|
|
170
|
+
* open/close handlers.
|
|
171
|
+
* @internal
|
|
172
|
+
*/
|
|
173
|
+
private _handleHostKeyDown;
|
|
174
|
+
/**
|
|
175
|
+
* Codex push-gate round-7 finding 2: `hx-item-select` bubbles composed
|
|
176
|
+
* through every enclosing `hx-menu`. The outer menu would otherwise
|
|
177
|
+
* (a) corrupt `_focusedIndex` to `-1` because the bubbled item is not
|
|
178
|
+
* a member of the outer menu's items, and (b) re-emit a duplicate
|
|
179
|
+
* `hx-select`. Only act when THIS menu is the closest enclosing menu
|
|
180
|
+
* of the dispatching item.
|
|
181
|
+
* @internal
|
|
182
|
+
*/
|
|
183
|
+
private _handleItemSelectHost;
|
|
184
|
+
updated(changedProperties: PropertyValues<this>): void;
|
|
78
185
|
firstUpdated(): void;
|
|
186
|
+
/**
|
|
187
|
+
* Mirror menu semantics onto the host via ElementInternals so consumer-
|
|
188
|
+
* supplied `aria-label`, `aria-labelledby`, and the `label` property all
|
|
189
|
+
* reach the announced control. Falls back to a flattened-string label on
|
|
190
|
+
* engines that do not implement `ariaLabelledByElements`.
|
|
191
|
+
* @internal
|
|
192
|
+
*/
|
|
193
|
+
private _syncHostAriaSemantics;
|
|
79
194
|
render(): import('lit').TemplateResult<1>;
|
|
80
195
|
}
|
|
81
196
|
declare global {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hx-menu.d.ts","sourceRoot":"","sources":["../../../src/components/hx-menu/hx-menu.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hx-menu.d.ts","sourceRoot":"","sources":["../../../src/components/hx-menu/hx-menu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACzD,OAAO,4CAA4C,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AA2CnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,qBACa,SAAU,SAAQ,YAAY;IACzC,OAAgB,MAAM,4BAA8C;IAEpE;;;;;;OAMG;IAEH,KAAK,SAAM;IAEX;;;OAGG;IACH,OAAO,CAAC,aAAa,CAAM;IAE3B;;;OAGG;IACH,OAAO,CAAC,gBAAgB,CAAM;IAE9B;;;OAGG;IACH,OAAO,CAAC,eAAe,CAA8C;IAIrE;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,+BAA+B,EAAE,OAAO,GAAG,IAAI,CAAQ;IAE9D,gBAAgB;IAChB,OAAO,CAAC,kBAAkB,CAAQ;IAElC,gBAAgB;IAChB,OAAO,CAAC,WAAW,CAAsC;IAEzD;;;;;;;;;;OAUG;IACH,OAAO,CAAC,uBAAuB,CAAM;IAErC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,SAAS;IASjB;;;OAGG;IACH,gBAAgB;IAChB,OAAO,CAAC,mBAAmB;IAQ3B,iCAAiC;IACjC,UAAU,IAAI,IAAI;IAUlB,gCAAgC;IAChC,SAAS,IAAI,IAAI;IAUjB,gBAAgB;IAChB,OAAO,CAAC,UAAU;IASlB,gBAAgB;IAChB,OAAO,CAAC,mBAAmB;IAQ3B,gBAAgB;IAChB,OAAO,CAAC,cAAc;IAkCtB,gBAAgB;IAChB,OAAO,CAAC,gBAAgB;IAqBxB;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAI1B,gBAAgB;IAChB,OAAO,CAAC,iBAAiB;IAiBzB,gBAAgB;IAChB,OAAO,CAAC,iBAAiB;IAezB;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB,CAyBxB;IAEF,gBAAgB;IAChB,OAAO,CAAC,mBAAmB,CA6BzB;IAIO,iBAAiB,IAAI,IAAI;IA0BzB,oBAAoB,IAAI,IAAI;IAcrC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,kBAAkB,CAMxB;IAEF;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB,CAQ3B;IAEO,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAOtD,YAAY,IAAI,IAAI;IAa7B;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAgFrB,MAAM;CAgChB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,SAAS,CAAC;KACtB;CACF"}
|