@xplortech/apollo-core 2.10.0 → 2.12.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/.typings/apollo-components.html-data.json +134 -12
- package/AGENTS.md +27 -3
- package/README.md +12 -0
- package/build/components/accordion.css +1 -0
- package/build/components/application-shell.css +1 -0
- package/build/components/avatar.css +1 -0
- package/build/components/backdrop.css +1 -0
- package/build/components/badge.css +1 -0
- package/build/components/banner.css +1 -0
- package/build/components/breadcrumbs.css +1 -0
- package/build/components/button-row.css +1 -0
- package/build/components/button.css +1 -0
- package/build/components/calendar.css +1 -0
- package/build/components/checkbox-radio.css +1 -0
- package/build/components/choicelist.css +1 -0
- package/build/components/content-area.css +1 -0
- package/build/components/dashboard.css +1 -0
- package/build/components/data-card.css +1 -0
- package/build/components/divider.css +1 -0
- package/build/components/dropdown.css +1 -0
- package/build/components/dynamic-table-cell.css +1 -0
- package/build/components/dynamic-table-row.css +1 -0
- package/build/components/dynamic-table.css +1 -0
- package/build/components/grid.css +1 -0
- package/build/components/header-accordion.css +1 -0
- package/build/components/icon.css +1 -0
- package/build/components/input-color.css +1 -0
- package/build/components/input-date.css +1 -0
- package/build/components/input-file.css +1 -0
- package/build/components/input-phone.css +1 -0
- package/build/components/input-search.css +1 -0
- package/build/components/input-time.css +1 -0
- package/build/components/input.css +1 -0
- package/build/components/label.css +1 -0
- package/build/components/large-card.css +1 -0
- package/build/components/list-action.css +1 -0
- package/build/components/list-item.css +1 -0
- package/build/components/list.css +1 -0
- package/build/components/main-nav.css +1 -0
- package/build/components/modal.css +1 -0
- package/build/components/nav-item.css +1 -0
- package/build/components/pagination.css +1 -0
- package/build/components/panel.css +1 -0
- package/build/components/popover.css +1 -0
- package/build/components/progress-bar.css +1 -0
- package/build/components/progress-indicator.css +1 -0
- package/build/components/secondary-nav.css +1 -0
- package/build/components/select.css +1 -0
- package/build/components/side-nav.css +1 -0
- package/build/components/skeleton.css +1 -0
- package/build/components/slideout.css +1 -0
- package/build/components/spotlight.css +1 -0
- package/build/components/table-header-cell.css +1 -0
- package/build/components/table-header.css +1 -0
- package/build/components/table.css +1 -0
- package/build/components/tabs.css +1 -0
- package/build/components/tag.css +1 -0
- package/build/components/toast.css +1 -0
- package/build/components/toggle.css +1 -0
- package/build/components/toolbar.css +1 -0
- package/build/components/tooltip.css +1 -0
- package/build/components/top-nav.css +1 -0
- package/build/components/utility-bar.css +1 -0
- package/build/components-manifest.json +220 -0
- package/build/core.css +2 -0
- package/build/reset.css +394 -0
- package/build/style.css +2 -13120
- package/build/tailwind-theme.css +2 -0
- package/build/typography.css +1 -0
- package/build/variables/apollo.css +779 -0
- package/build/variables/field-edge.css +554 -0
- package/build/vendor/flatpickr.css +1 -0
- package/dist/apollo-core/apollo-core.css +2 -55
- package/dist/apollo-core/apollo-core.esm.js +1 -1
- package/dist/apollo-core/p-0095174c.entry.js +1 -0
- package/dist/apollo-core/p-020ecd66.entry.js +1 -0
- package/dist/apollo-core/p-0463c29f.entry.js +1 -0
- package/dist/apollo-core/p-091411e3.entry.js +1 -0
- package/dist/apollo-core/p-0be4dbb8.entry.js +1 -0
- package/dist/apollo-core/p-1139fac0.entry.js +1 -0
- package/dist/apollo-core/p-121d1a4b.entry.js +1 -0
- package/dist/apollo-core/p-140a96c7.entry.js +1 -0
- package/dist/apollo-core/p-1M1pu0C2.js +1 -0
- package/dist/apollo-core/p-1a417191.entry.js +1 -0
- package/dist/apollo-core/p-256ece8b.entry.js +1 -0
- package/dist/apollo-core/p-26861d09.entry.js +1 -0
- package/dist/apollo-core/p-26b6a0ed.entry.js +1 -0
- package/dist/apollo-core/p-39e71d86.entry.js +1 -0
- package/dist/apollo-core/p-3d9c90ee.entry.js +1 -0
- package/dist/apollo-core/p-3dd1de49.entry.js +1 -0
- package/dist/apollo-core/p-4129d971.entry.js +1 -0
- package/dist/apollo-core/p-46d21684.entry.js +1 -0
- package/dist/apollo-core/p-4e61587f.entry.js +1 -0
- package/dist/apollo-core/p-5afc9831.entry.js +1 -0
- package/dist/apollo-core/p-5ca18bc1.entry.js +1 -0
- package/dist/apollo-core/p-5d25a84a.entry.js +1 -0
- package/dist/apollo-core/p-5e5c5016.entry.js +1 -0
- package/dist/apollo-core/p-601b3ab5.entry.js +1 -0
- package/dist/apollo-core/p-616c5a32.entry.js +1 -0
- package/dist/apollo-core/p-638fd9b1.entry.js +1 -0
- package/dist/apollo-core/p-643c8038.entry.js +1 -0
- package/dist/apollo-core/p-707b1918.entry.js +1 -0
- package/dist/apollo-core/p-724c5038.entry.js +1 -0
- package/dist/apollo-core/p-76f64d65.entry.js +1 -0
- package/dist/apollo-core/p-7976cd3b.entry.js +1 -0
- package/dist/apollo-core/p-7f105d63.entry.js +1 -0
- package/dist/apollo-core/p-80a11cad.entry.js +1 -0
- package/dist/apollo-core/p-853418be.entry.js +1 -0
- package/dist/apollo-core/p-875e0eaa.entry.js +1 -0
- package/dist/apollo-core/p-8845106f.entry.js +1 -0
- package/dist/apollo-core/p-8a81ef98.entry.js +1 -0
- package/dist/apollo-core/p-8a925e9d.entry.js +1 -0
- package/dist/apollo-core/p-8ddbf2e2.entry.js +1 -0
- package/dist/apollo-core/p-9747cf43.entry.js +1 -0
- package/dist/apollo-core/p-9b0174b1.entry.js +1 -0
- package/dist/apollo-core/p-9bf2ff9f.entry.js +1 -0
- package/dist/apollo-core/p-BFTU3MAI.js +1 -0
- package/dist/apollo-core/p-BQtbf88X.js +1 -0
- package/dist/apollo-core/p-CWdQxaaX.js +1 -0
- package/dist/apollo-core/p-C_PEOQWj.js +1 -0
- package/dist/apollo-core/p-CzwViN3U.js +1 -0
- package/dist/apollo-core/p-DkqlawVY.js +1 -0
- package/dist/apollo-core/p-Dqb1pIRo.js +1 -0
- package/dist/apollo-core/p-_r9-FML8.js +1 -0
- package/dist/apollo-core/p-a0d3b7f8.entry.js +1 -0
- package/dist/apollo-core/p-a33b0943.entry.js +1 -0
- package/dist/apollo-core/p-b537f72d.entry.js +1 -0
- package/dist/apollo-core/p-ba41bbd5.entry.js +1 -0
- package/dist/apollo-core/p-bb22ed2a.entry.js +1 -0
- package/dist/apollo-core/p-c25aebe5.entry.js +1 -0
- package/dist/apollo-core/p-c427a31d.entry.js +1 -0
- package/dist/apollo-core/p-cde21f72.entry.js +1 -0
- package/dist/apollo-core/p-d288c1d1.entry.js +1 -0
- package/dist/apollo-core/p-d37488d4.entry.js +1 -0
- package/dist/apollo-core/p-d3f2b8b8.entry.js +1 -0
- package/dist/apollo-core/p-dfaba114.entry.js +1 -0
- package/dist/apollo-core/p-e00ed4f4.entry.js +1 -0
- package/dist/apollo-core/p-e2a16242.entry.js +1 -0
- package/dist/apollo-core/p-e4ae3f60.entry.js +1 -0
- package/dist/apollo-core/p-ec488f9c.entry.js +1 -0
- package/dist/apollo-core/p-efa21ec0.entry.js +1 -0
- package/dist/apollo-core/p-f199ad66.entry.js +1 -0
- package/dist/apollo-core/p-f2bfe6a6.entry.js +1 -0
- package/dist/apollo-core/p-fd2756d8.entry.js +1 -0
- package/dist/apollo-core/p-fef6c256.entry.js +1 -0
- package/dist/apollo-core/p-ff8acf15.entry.js +1 -0
- package/dist/apollo-core/p-ukZKsqqq.js +2 -0
- package/dist/cjs/_commonjsHelpers-BJu3ubxk.js +10 -0
- package/dist/cjs/apollo-core.cjs.js +2 -2
- package/dist/cjs/floating-ui.dom-DuvGwvW-.js +1710 -0
- package/dist/cjs/{index-BaXVr8ux.js → index-3cBvw409.js} +760 -9
- package/dist/cjs/index-DP4JWqOH.js +456 -0
- package/dist/cjs/lifecycle-DeSsFfQZ.js +74 -0
- package/dist/cjs/light-dom-slots-CS8Q9rRZ.js +19 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/side-nav-slot-utils-DMog5BVN.js +41 -0
- package/dist/cjs/slot-presence-HmQUW2Ba.js +10 -0
- package/dist/cjs/tab-a11y-ids--A4ZoXEj.js +27 -0
- package/dist/cjs/top-nav-constants-DckvgAo7.js +5 -0
- package/dist/cjs/xpl-accordion.cjs.entry.js +5 -3
- package/dist/cjs/xpl-application-shell.cjs.entry.js +2 -2
- package/dist/cjs/xpl-avatar_3.cjs.entry.js +210 -0
- package/dist/cjs/xpl-backdrop.cjs.entry.js +19 -0
- package/dist/cjs/xpl-badge.cjs.entry.js +37 -0
- package/dist/cjs/xpl-banner.cjs.entry.js +74 -0
- package/dist/cjs/xpl-breadcrumb-item.cjs.entry.js +18 -0
- package/dist/cjs/xpl-breadcrumbs.cjs.entry.js +14 -0
- package/dist/cjs/xpl-button-row.cjs.entry.js +2 -2
- package/dist/cjs/xpl-button.cjs.entry.js +81 -0
- package/dist/cjs/xpl-calendar.cjs.entry.js +10 -6
- package/dist/cjs/xpl-checkbox.cjs.entry.js +32 -0
- package/dist/cjs/xpl-choicelist.cjs.entry.js +68 -0
- package/dist/cjs/xpl-content-area.cjs.entry.js +15 -0
- package/dist/cjs/xpl-dashboard.cjs.entry.js +14 -0
- package/dist/cjs/xpl-data-card.cjs.entry.js +111 -0
- package/dist/cjs/xpl-dropdown_4.cjs.entry.js +577 -0
- package/dist/cjs/xpl-dynamic-table-cell.cjs.entry.js +8 -6
- package/dist/cjs/xpl-dynamic-table-row.cjs.entry.js +5 -5
- package/dist/cjs/xpl-dynamic-table.cjs.entry.js +11 -18
- package/dist/cjs/xpl-grid-item.cjs.entry.js +2 -2
- package/dist/cjs/xpl-grid.cjs.entry.js +6 -6
- package/dist/cjs/xpl-header-accordion.cjs.entry.js +69 -0
- package/dist/{esm/xpl-avatar_54.entry.js → cjs/xpl-icon.cjs.entry.js} +1293 -10607
- package/dist/cjs/xpl-input-color.cjs.entry.js +435 -0
- package/dist/cjs/xpl-input-phone.cjs.entry.js +509 -0
- package/dist/cjs/xpl-input-time.cjs.entry.js +196 -0
- package/dist/cjs/xpl-input_4.cjs.entry.js +524 -0
- package/dist/cjs/xpl-large-card.cjs.entry.js +63 -4
- package/dist/cjs/xpl-list-item.cjs.entry.js +460 -0
- package/dist/cjs/xpl-list.cjs.entry.js +396 -0
- package/dist/cjs/xpl-main-nav.cjs.entry.js +2 -2
- package/dist/cjs/xpl-modal.cjs.entry.js +78 -0
- package/dist/cjs/xpl-nav-header-menu.cjs.entry.js +86 -0
- package/dist/cjs/xpl-nav-item.cjs.entry.js +25 -0
- package/dist/cjs/xpl-pagination.cjs.entry.js +112 -0
- package/dist/cjs/xpl-panel.cjs.entry.js +21 -0
- package/dist/cjs/xpl-popover.cjs.entry.js +265 -0
- package/dist/cjs/xpl-progress-bar.cjs.entry.js +41 -0
- package/dist/cjs/xpl-progress-indicator.cjs.entry.js +74 -0
- package/dist/cjs/xpl-secondary-nav.cjs.entry.js +14 -0
- package/dist/cjs/xpl-select_2.cjs.entry.js +493 -0
- package/dist/cjs/xpl-side-nav-header-item.cjs.entry.js +101 -0
- package/dist/cjs/xpl-side-nav-item.cjs.entry.js +130 -0
- package/dist/cjs/xpl-side-nav-section.cjs.entry.js +105 -0
- package/dist/cjs/xpl-side-nav.cjs.entry.js +272 -0
- package/dist/cjs/xpl-skeleton.cjs.entry.js +26 -0
- package/dist/cjs/xpl-slideout.cjs.entry.js +47 -0
- package/dist/cjs/xpl-spotlight.cjs.entry.js +722 -0
- package/dist/cjs/xpl-tab-panel.cjs.entry.js +24 -0
- package/dist/cjs/xpl-tab.cjs.entry.js +87 -0
- package/dist/cjs/xpl-table-header-cell.cjs.entry.js +5 -3
- package/dist/cjs/xpl-table-header.cjs.entry.js +2 -2
- package/dist/cjs/xpl-table.cjs.entry.js +185 -0
- package/dist/cjs/xpl-tabs.cjs.entry.js +373 -0
- package/dist/cjs/xpl-toast.cjs.entry.js +91 -0
- package/dist/cjs/xpl-toggle.cjs.entry.js +6 -6
- package/dist/cjs/xpl-toolbar.cjs.entry.js +3 -3
- package/dist/cjs/xpl-tooltip.cjs.entry.js +18 -0
- package/dist/cjs/xpl-top-nav-item.cjs.entry.js +435 -0
- package/dist/cjs/xpl-top-nav-menu.cjs.entry.js +91 -0
- package/dist/cjs/xpl-top-nav.cjs.entry.js +342 -0
- package/dist/cjs/xpl-utility-bar.cjs.entry.js +23 -0
- package/dist/collection/collection-manifest.json +4 -1
- package/dist/collection/components/xpl-accordion/accordion.stories.js +6 -2
- package/dist/collection/components/xpl-accordion/xpl-accordion.js +4 -2
- package/dist/collection/components/xpl-application-shell/application-shell.stories.js +19 -1
- package/dist/collection/components/xpl-application-shell/xpl-application-shell.js +1 -1
- package/dist/collection/components/xpl-avatar/avatar.stories.js +19 -9
- package/dist/collection/components/xpl-avatar/xpl-avatar.js +12 -16
- package/dist/collection/components/xpl-backdrop/backdrop.stories.js +17 -3
- package/dist/collection/components/xpl-backdrop/xpl-backdrop.js +1 -1
- package/dist/collection/components/xpl-badge/badge.stories.js +21 -8
- package/dist/collection/components/xpl-badge/xpl-badge.js +4 -5
- package/dist/collection/components/xpl-banner/banner.stories.js +1 -1
- package/dist/collection/components/xpl-banner/xpl-banner.js +7 -9
- package/dist/collection/components/xpl-breadcrumbs/breadcrumbs.stories.js +5 -0
- package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.js +1 -1
- package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.js +1 -1
- package/dist/collection/components/xpl-button/button.stories.js +2 -0
- package/dist/collection/components/xpl-button/xpl-button.js +17 -14
- package/dist/collection/components/xpl-button-row/button-row.stories.js +9 -0
- package/dist/collection/components/xpl-button-row/xpl-button-row.js +1 -1
- package/dist/collection/components/xpl-calendar/calendar.stories.js +11 -3
- package/dist/collection/components/xpl-calendar/xpl-calendar.js +9 -5
- package/dist/collection/components/xpl-checkbox/checkbox.stories.js +11 -2
- package/dist/collection/components/xpl-checkbox/xpl-checkbox.js +7 -8
- package/dist/collection/components/xpl-choicelist/choicelist.stories.js +24 -0
- package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +6 -6
- package/dist/collection/components/xpl-content-area/content-area.stories.js +13 -24
- package/dist/collection/components/xpl-content-area/xpl-content-area.js +1 -1
- package/dist/collection/components/xpl-dashboard/dashboard.stories.js +9 -0
- package/dist/collection/components/xpl-dashboard/xpl-dashboard.js +1 -1
- package/dist/collection/components/xpl-data-card/data-card.stories.js +55 -0
- package/dist/collection/components/xpl-data-card/xpl-data-card.js +69 -5
- package/dist/collection/components/xpl-divider/divider.stories.js +11 -0
- package/dist/collection/components/xpl-divider/xpl-divider.js +1 -1
- package/dist/collection/components/xpl-dropdown/dropdown.stories.js +13 -5
- package/dist/collection/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.js +2 -17
- package/dist/collection/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.js +1 -1
- package/dist/collection/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.js +9 -5
- package/dist/collection/components/xpl-dropdown/xpl-dropdown.js +108 -116
- package/dist/collection/components/xpl-dynamic-table/dynamic-table.stories.js +5 -1
- package/dist/collection/components/xpl-dynamic-table/xpl-dynamic-table.js +13 -19
- package/dist/collection/components/xpl-dynamic-table-cell/xpl-dynamic-table-cell.js +7 -5
- package/dist/collection/components/xpl-dynamic-table-row/xpl-dynamic-table-row.js +4 -4
- package/dist/collection/components/xpl-grid/grid.stories.js +9 -0
- package/dist/collection/components/xpl-grid/xpl-grid.js +5 -5
- package/dist/collection/components/xpl-grid-item/xpl-grid-item.js +1 -1
- package/dist/collection/components/xpl-header-accordion/header-accordion.stories.js +6 -2
- package/dist/collection/components/xpl-header-accordion/xpl-header-accordion.js +7 -23
- package/dist/collection/components/xpl-icon/icons.stories.js +21 -2
- package/dist/collection/components/xpl-icon/xpl-icon.js +2 -3
- package/dist/collection/components/xpl-input/input.stories.js +120 -104
- package/dist/collection/components/xpl-input/xpl-input-color/color-utils.js +12 -6
- package/dist/collection/components/xpl-input/xpl-input-color/xpl-input-color.js +47 -38
- package/dist/collection/components/xpl-input/xpl-input-date/xpl-input-date.js +31 -14
- package/dist/collection/components/xpl-input/xpl-input-file/xpl-input-file.js +11 -13
- package/dist/collection/components/xpl-input/xpl-input-phone/xpl-input-phone.js +38 -41
- package/dist/collection/components/xpl-input/xpl-input-search/xpl-input-search.js +5 -8
- package/dist/collection/components/xpl-input/xpl-input-time/xpl-input-time.js +11 -10
- package/dist/collection/components/xpl-input/xpl-input.js +69 -37
- package/dist/collection/components/xpl-large-card/large-card.stories.js +27 -3
- package/dist/collection/components/xpl-large-card/xpl-large-card.js +69 -3
- package/dist/collection/components/xpl-list/list.stories.js +11 -2
- package/dist/collection/components/xpl-list/xpl-list-item/xpl-list-item.js +29 -31
- package/dist/collection/components/xpl-list/xpl-list.js +21 -26
- package/dist/collection/components/xpl-main-nav/main-nav.stories.js +5 -0
- package/dist/collection/components/xpl-main-nav/xpl-main-nav.js +1 -1
- package/dist/collection/components/xpl-modal/modal.stories.js +15 -6
- package/dist/collection/components/xpl-modal/xpl-modal.js +21 -8
- package/dist/collection/components/xpl-nav-item/xpl-nav-item.js +2 -2
- package/dist/collection/components/xpl-pagination/pagination.stories.js +10 -2
- package/dist/collection/components/xpl-pagination/xpl-pagination.js +10 -12
- package/dist/collection/components/xpl-panel/panel.stories.js +9 -0
- package/dist/collection/components/xpl-panel/xpl-panel.js +2 -2
- package/dist/collection/components/xpl-popover/popover.stories.js +15 -5
- package/dist/collection/components/xpl-popover/xpl-popover.js +36 -8
- package/dist/collection/components/xpl-progress-bar/progress-bar.stories.js +10 -1
- package/dist/collection/components/xpl-progress-bar/xpl-progress-bar.js +2 -2
- package/dist/collection/components/xpl-progress-indicator/progress-indicator.stories.js +9 -1
- package/dist/collection/components/xpl-progress-indicator/xpl-progress-indicator.js +1 -1
- package/dist/collection/components/xpl-radio/radio.stories.js +9 -0
- package/dist/collection/components/xpl-radio/xpl-radio.js +7 -7
- package/dist/collection/components/xpl-secondary-nav/secondary-nav.stories.js +10 -5
- package/dist/collection/components/xpl-secondary-nav/xpl-secondary-nav.js +1 -1
- package/dist/collection/components/xpl-select/select.stories.js +11 -8
- package/dist/collection/components/xpl-select/xpl-select.js +91 -49
- package/dist/collection/components/xpl-side-nav/side-nav-slot-utils.js +35 -0
- package/dist/collection/components/xpl-side-nav/side-nav.stories.js +454 -18
- package/dist/collection/components/xpl-side-nav/xpl-side-nav-header-item/xpl-side-nav-header-item.js +201 -0
- package/dist/collection/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.js +10 -11
- package/dist/collection/components/xpl-side-nav/xpl-side-nav-section/xpl-side-nav-section.js +186 -0
- package/dist/collection/components/xpl-side-nav/xpl-side-nav.js +75 -12
- package/dist/collection/components/xpl-skeleton/skeleton.stories.js +10 -1
- package/dist/collection/components/xpl-skeleton/xpl-skeleton.js +3 -3
- package/dist/collection/components/xpl-slideout/slideout.stories.js +13 -0
- package/dist/collection/components/xpl-slideout/xpl-slideout.js +4 -1
- package/dist/collection/components/xpl-spotlight/spotlight.stories.js +22 -15
- package/dist/collection/components/xpl-spotlight/xpl-spotlight.js +44 -49
- package/dist/collection/components/xpl-tab/xpl-tab.js +63 -8
- package/dist/collection/components/xpl-tab-panel/xpl-tab-panel.js +3 -4
- package/dist/collection/components/xpl-table/table.stories.js +11 -2
- package/dist/collection/components/xpl-table/xpl-table.js +52 -36
- package/dist/collection/components/xpl-table-header/table-header.stories.js +9 -1
- package/dist/collection/components/xpl-table-header/xpl-table-header.js +1 -1
- package/dist/collection/components/xpl-table-header-cell/table-header-cell.stories.js +10 -2
- package/dist/collection/components/xpl-table-header-cell/xpl-table-header-cell.js +4 -2
- package/dist/collection/components/xpl-tabs/segment-control.stories.js +10 -1
- package/dist/collection/components/xpl-tabs/tabs.shared.js +77 -19
- package/dist/collection/components/xpl-tabs/tabs.stories.js +14 -2
- package/dist/collection/components/xpl-tabs/xpl-tabs.js +29 -25
- package/dist/collection/components/xpl-tag/tag.stories.js +15 -9
- package/dist/collection/components/xpl-tag/xpl-tag.js +5 -7
- package/dist/collection/components/xpl-toast/toast.stories.js +43 -17
- package/dist/collection/components/xpl-toast/xpl-toast.js +107 -56
- package/dist/collection/components/xpl-toggle/toggle.stories.js +8 -1
- package/dist/collection/components/xpl-toggle/xpl-toggle.js +5 -5
- package/dist/collection/components/xpl-toolbar/toolbar.stories.js +39 -0
- package/dist/collection/components/xpl-toolbar/xpl-toolbar.js +2 -2
- package/dist/collection/components/xpl-tooltip/tooltip.stories.js +9 -0
- package/dist/collection/components/xpl-tooltip/xpl-tooltip.js +1 -1
- package/dist/collection/components/xpl-top-nav/top-nav-constants.js +1 -0
- package/dist/collection/components/xpl-top-nav/top-nav.stories.js +160 -21
- package/dist/collection/components/xpl-top-nav/xpl-nav-header-menu/xpl-nav-header-menu.js +11 -5
- package/dist/collection/components/xpl-top-nav/xpl-top-nav-item/top-nav-item-constants.js +2 -0
- package/dist/collection/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.js +335 -97
- package/dist/collection/components/xpl-top-nav/xpl-top-nav-menu/xpl-top-nav-menu.js +114 -0
- package/dist/collection/components/xpl-top-nav/xpl-top-nav.js +101 -33
- package/dist/collection/components/xpl-utility-bar/utility-bar.stories.js +16 -9
- package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +1 -1
- package/dist/collection/utils/floating.js +69 -0
- package/dist/collection/utils/layout-ancestors.js +7 -0
- package/dist/collection/utils/lifecycle.js +31 -10
- package/dist/collection/utils/light-dom-slots.js +15 -0
- package/dist/collection/utils/slot-presence.js +6 -0
- package/dist/collection/utils/ssr-known-mismatches.js +50 -0
- package/dist/collection/utils/tab-a11y-ids.js +1 -2
- package/dist/components/index.d.ts +6 -0
- package/dist/components/index.js +1 -1
- package/dist/components/p-1M1pu0C2.js +1 -0
- package/dist/components/p-2jYZ7ACH.js +1 -0
- package/dist/components/p-BGqQbjLl.js +1 -0
- package/dist/components/p-BQtbf88X.js +1 -0
- package/dist/components/p-BSHdGbmH.js +1 -0
- package/dist/components/p-BnTsRbko.js +1 -0
- package/dist/components/p-Bseq_BgD.js +1 -0
- package/dist/components/p-CCgZCY_A.js +1 -0
- package/dist/components/p-CJzsLWeV.js +1 -0
- package/dist/components/p-CRKY79vL.js +1 -0
- package/dist/components/p-C_PEOQWj.js +1 -0
- package/dist/components/p-CjbPCnPP.js +1 -0
- package/dist/components/p-Cjxw-qOg.js +1 -0
- package/dist/components/p-D6JUVA1x.js +1 -0
- package/dist/components/p-DFGw0APN.js +1 -0
- package/dist/components/p-DLLQBDCb.js +1 -0
- package/dist/components/p-DS2Kv5fl.js +1 -0
- package/dist/components/p-DWUJ_jsx.js +1 -0
- package/dist/components/p-Di1NDy0w.js +1 -0
- package/dist/components/p-DkM7jyQB.js +1 -0
- package/dist/components/p-DkqlawVY.js +1 -0
- package/dist/components/p-Dqb1pIRo.js +1 -0
- package/dist/components/p-DsRsm61K.js +1 -0
- package/dist/components/p-DywQ3S73.js +1 -0
- package/dist/components/p-Dzp5p-eh.js +1 -0
- package/dist/components/p-Mehog36m.js +1 -0
- package/dist/components/p-RYnBuuDE.js +1 -0
- package/dist/components/p-_r9-FML8.js +1 -0
- package/dist/components/{p-B1PBAEzg.js → p-imCMp2Nl.js} +1 -1
- package/dist/components/xpl-accordion.js +1 -1
- package/dist/components/xpl-application-shell.js +1 -1
- package/dist/components/xpl-avatar.js +1 -1
- package/dist/components/xpl-backdrop.js +1 -1
- package/dist/components/xpl-badge.js +1 -1
- package/dist/components/xpl-banner.js +1 -1
- package/dist/components/xpl-breadcrumb-item.js +1 -1
- package/dist/components/xpl-breadcrumbs.js +1 -1
- package/dist/components/xpl-button-row.js +1 -1
- package/dist/components/xpl-button.js +1 -1
- package/dist/components/xpl-calendar.js +1 -1
- package/dist/components/xpl-checkbox.js +1 -1
- package/dist/components/xpl-choicelist.js +1 -1
- package/dist/components/xpl-content-area.js +1 -1
- package/dist/components/xpl-dashboard.js +1 -1
- package/dist/components/xpl-data-card.js +1 -1
- package/dist/components/xpl-divider.js +1 -1
- package/dist/components/xpl-dropdown-group.js +1 -1
- package/dist/components/xpl-dropdown-heading.js +1 -1
- package/dist/components/xpl-dropdown-option.js +1 -1
- package/dist/components/xpl-dropdown.js +1 -1
- package/dist/components/xpl-dynamic-table-cell.js +1 -1
- package/dist/components/xpl-dynamic-table-row.js +1 -1
- package/dist/components/xpl-dynamic-table.js +1 -1
- package/dist/components/xpl-grid-item.js +1 -1
- package/dist/components/xpl-grid.js +1 -1
- package/dist/components/xpl-header-accordion.js +1 -1
- package/dist/components/xpl-icon.js +1 -1
- package/dist/components/xpl-input-color.js +1 -1
- package/dist/components/xpl-input-date.js +1 -1
- package/dist/components/xpl-input-file.js +1 -1
- package/dist/components/xpl-input-phone.js +1 -1
- package/dist/components/xpl-input-search.js +1 -1
- package/dist/components/xpl-input-time.js +1 -1
- package/dist/components/xpl-input.js +1 -1
- package/dist/components/xpl-large-card.js +1 -1
- package/dist/components/xpl-list-item.js +1 -1
- package/dist/components/xpl-list.js +1 -1
- package/dist/components/xpl-main-nav.js +1 -1
- package/dist/components/xpl-modal.js +1 -1
- package/dist/components/xpl-nav-header-menu.js +1 -1
- package/dist/components/xpl-nav-item.js +1 -1
- package/dist/components/xpl-pagination.js +1 -1
- package/dist/components/xpl-panel.js +1 -1
- package/dist/components/xpl-popover.js +1 -1
- package/dist/components/xpl-progress-bar.js +1 -1
- package/dist/components/xpl-progress-indicator.js +1 -1
- package/dist/components/xpl-radio.js +1 -1
- package/dist/components/xpl-secondary-nav.js +1 -1
- package/dist/components/xpl-select.js +1 -1
- package/dist/components/xpl-side-nav-header-item.d.ts +11 -0
- package/dist/components/xpl-side-nav-header-item.js +1 -0
- package/dist/components/xpl-side-nav-item.js +1 -1
- package/dist/components/xpl-side-nav-section.d.ts +11 -0
- package/dist/components/xpl-side-nav-section.js +1 -0
- package/dist/components/xpl-side-nav.js +1 -1
- package/dist/components/xpl-skeleton.js +1 -1
- package/dist/components/xpl-slideout.js +1 -1
- package/dist/components/xpl-spotlight.js +1 -1
- package/dist/components/xpl-tab-panel.js +1 -1
- package/dist/components/xpl-tab.js +1 -1
- package/dist/components/xpl-table-header-cell.js +1 -1
- package/dist/components/xpl-table-header.js +1 -1
- package/dist/components/xpl-table.js +1 -1
- package/dist/components/xpl-tabs.js +1 -1
- package/dist/components/xpl-tag.js +1 -1
- package/dist/components/xpl-toast.js +1 -1
- package/dist/components/xpl-toggle.js +1 -1
- package/dist/components/xpl-toolbar.js +1 -1
- package/dist/components/xpl-tooltip.js +1 -1
- package/dist/components/xpl-top-nav-item.js +1 -1
- package/dist/components/xpl-top-nav-menu.d.ts +11 -0
- package/dist/components/xpl-top-nav-menu.js +1 -0
- package/dist/components/xpl-top-nav.js +1 -1
- package/dist/components/xpl-utility-bar.js +1 -1
- package/dist/css/typography.stories.js +9 -0
- package/dist/docs/xpl-application-shell/readme.md +33 -0
- package/dist/docs/xpl-backdrop/readme.md +7 -0
- package/dist/docs/xpl-badge/readme.md +2 -0
- package/dist/docs/xpl-breadcrumbs/xpl-breadcrumbs/readme.md +9 -0
- package/dist/docs/xpl-button/readme.md +4 -2
- package/dist/docs/xpl-checkbox/readme.md +12 -0
- package/dist/docs/xpl-choicelist/readme.md +21 -0
- package/dist/docs/xpl-content-area/readme.md +8 -0
- package/dist/docs/xpl-data-card/readme.md +26 -0
- package/dist/docs/xpl-dropdown/readme.md +32 -6
- package/dist/docs/xpl-dynamic-table/readme.md +35 -0
- package/dist/docs/xpl-header-accordion/readme.md +18 -0
- package/dist/docs/xpl-icon/readme.md +23 -0
- package/dist/docs/xpl-input/xpl-input-color/readme.md +18 -0
- package/dist/docs/xpl-input/xpl-input-file/readme.md +13 -0
- package/dist/docs/xpl-input/xpl-input-time/readme.md +9 -0
- package/dist/docs/xpl-large-card/readme.md +18 -0
- package/dist/docs/xpl-list/readme.md +2 -2
- package/dist/docs/xpl-list/xpl-list-item/readme.md +3 -3
- package/dist/docs/xpl-main-nav/readme.md +16 -0
- package/dist/docs/xpl-modal/readme.md +20 -0
- package/dist/docs/xpl-nav-item/readme.md +14 -0
- package/dist/docs/xpl-pagination/readme.md +29 -0
- package/dist/docs/xpl-radio/readme.md +12 -0
- package/dist/docs/xpl-secondary-nav/readme.md +25 -0
- package/dist/docs/xpl-select/readme.md +13 -0
- package/dist/docs/xpl-side-nav/readme.md +12 -7
- package/dist/docs/xpl-side-nav/xpl-side-nav-header-item/readme.md +155 -0
- package/dist/docs/xpl-side-nav/xpl-side-nav-item/readme.md +16 -6
- package/dist/docs/xpl-side-nav/xpl-side-nav-section/readme.md +126 -0
- package/dist/docs/xpl-slideout/readme.md +23 -0
- package/dist/docs/xpl-tab/readme.md +14 -8
- package/dist/docs/xpl-table/readme.md +4 -4
- package/dist/docs/xpl-toast/readme.md +90 -7
- package/dist/docs/xpl-toggle/readme.md +46 -0
- package/dist/docs/xpl-toolbar/readme.md +19 -0
- package/dist/docs/xpl-top-nav/readme.md +5 -1
- package/dist/docs/xpl-top-nav/xpl-top-nav-item/readme.md +79 -20
- package/dist/docs/xpl-top-nav/xpl-top-nav-menu/readme.md +96 -0
- package/dist/docs/xpl-utility-bar/readme.md +12 -0
- package/dist/docs.d.ts +480 -0
- package/dist/docs.json +16441 -0
- package/dist/esm/_commonjsHelpers-BFTU3MAI.js +7 -0
- package/dist/esm/apollo-core.js +3 -3
- package/dist/esm/floating-ui.dom-1M1pu0C2.js +1702 -0
- package/dist/esm/index-BhYfWG18.js +454 -0
- package/dist/esm/{index-CXkZUm1c.js → index-ukZKsqqq.js} +760 -9
- package/dist/esm/lifecycle-Dqb1pIRo.js +71 -0
- package/dist/esm/light-dom-slots-DkqlawVY.js +17 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/side-nav-slot-utils-C_PEOQWj.js +37 -0
- package/dist/esm/slot-presence-_r9-FML8.js +8 -0
- package/dist/esm/tab-a11y-ids-BQtbf88X.js +23 -0
- package/dist/esm/top-nav-constants-CWdQxaaX.js +3 -0
- package/dist/esm/xpl-accordion.entry.js +5 -3
- package/dist/esm/xpl-application-shell.entry.js +2 -2
- package/dist/esm/xpl-avatar_3.entry.js +206 -0
- package/dist/esm/xpl-backdrop.entry.js +17 -0
- package/dist/esm/xpl-badge.entry.js +35 -0
- package/dist/esm/xpl-banner.entry.js +72 -0
- package/dist/esm/xpl-breadcrumb-item.entry.js +16 -0
- package/dist/esm/xpl-breadcrumbs.entry.js +12 -0
- package/dist/esm/xpl-button-row.entry.js +2 -2
- package/dist/esm/xpl-button.entry.js +79 -0
- package/dist/esm/xpl-calendar.entry.js +10 -6
- package/dist/esm/xpl-checkbox.entry.js +30 -0
- package/dist/esm/xpl-choicelist.entry.js +66 -0
- package/dist/esm/xpl-content-area.entry.js +13 -0
- package/dist/esm/xpl-dashboard.entry.js +12 -0
- package/dist/esm/xpl-data-card.entry.js +109 -0
- package/dist/esm/xpl-dropdown_4.entry.js +572 -0
- package/dist/esm/xpl-dynamic-table-cell.entry.js +8 -6
- package/dist/esm/xpl-dynamic-table-row.entry.js +5 -5
- package/dist/esm/xpl-dynamic-table.entry.js +11 -18
- package/dist/esm/xpl-grid-item.entry.js +2 -2
- package/dist/esm/xpl-grid.entry.js +6 -6
- package/dist/esm/xpl-header-accordion.entry.js +67 -0
- package/dist/{cjs/xpl-avatar_54.cjs.entry.js → esm/xpl-icon.entry.js} +1290 -10661
- package/dist/esm/xpl-input-color.entry.js +433 -0
- package/dist/esm/xpl-input-phone.entry.js +507 -0
- package/dist/esm/xpl-input-time.entry.js +194 -0
- package/dist/esm/xpl-input_4.entry.js +519 -0
- package/dist/esm/xpl-large-card.entry.js +63 -4
- package/dist/esm/xpl-list-item.entry.js +458 -0
- package/dist/esm/xpl-list.entry.js +394 -0
- package/dist/esm/xpl-main-nav.entry.js +2 -2
- package/dist/esm/xpl-modal.entry.js +76 -0
- package/dist/esm/xpl-nav-header-menu.entry.js +84 -0
- package/dist/esm/xpl-nav-item.entry.js +23 -0
- package/dist/esm/xpl-pagination.entry.js +110 -0
- package/dist/esm/xpl-panel.entry.js +19 -0
- package/dist/esm/xpl-popover.entry.js +263 -0
- package/dist/esm/xpl-progress-bar.entry.js +39 -0
- package/dist/esm/xpl-progress-indicator.entry.js +72 -0
- package/dist/esm/xpl-secondary-nav.entry.js +12 -0
- package/dist/esm/xpl-select_2.entry.js +490 -0
- package/dist/esm/xpl-side-nav-header-item.entry.js +99 -0
- package/dist/esm/xpl-side-nav-item.entry.js +128 -0
- package/dist/esm/xpl-side-nav-section.entry.js +103 -0
- package/dist/esm/xpl-side-nav.entry.js +270 -0
- package/dist/esm/xpl-skeleton.entry.js +24 -0
- package/dist/esm/xpl-slideout.entry.js +45 -0
- package/dist/esm/xpl-spotlight.entry.js +720 -0
- package/dist/esm/xpl-tab-panel.entry.js +22 -0
- package/dist/esm/xpl-tab.entry.js +85 -0
- package/dist/esm/xpl-table-header-cell.entry.js +5 -3
- package/dist/esm/xpl-table-header.entry.js +2 -2
- package/dist/esm/xpl-table.entry.js +183 -0
- package/dist/esm/xpl-tabs.entry.js +371 -0
- package/dist/esm/xpl-toast.entry.js +89 -0
- package/dist/esm/xpl-toggle.entry.js +6 -6
- package/dist/esm/xpl-toolbar.entry.js +3 -3
- package/dist/esm/xpl-tooltip.entry.js +16 -0
- package/dist/esm/xpl-top-nav-item.entry.js +433 -0
- package/dist/esm/xpl-top-nav-menu.entry.js +89 -0
- package/dist/esm/xpl-top-nav.entry.js +340 -0
- package/dist/esm/xpl-utility-bar.entry.js +21 -0
- package/dist/types/components/xpl-accordion/accordion.stories.d.ts +11 -2
- package/dist/types/components/xpl-application-shell/application-shell.stories.d.ts +5 -23
- package/dist/types/components/xpl-application-shell/xpl-application-shell.d.ts +1 -1
- package/dist/types/components/xpl-avatar/avatar.stories.d.ts +17 -116
- package/dist/types/components/xpl-backdrop/backdrop.stories.d.ts +2 -0
- package/dist/types/components/xpl-badge/badge.stories.d.ts +7 -0
- package/dist/types/components/xpl-breadcrumbs/breadcrumbs.stories.d.ts +10 -27
- package/dist/types/components/xpl-button/button.stories.d.ts +4 -0
- package/dist/types/components/xpl-button-row/button-row.stories.d.ts +10 -21
- package/dist/types/components/xpl-calendar/calendar.stories.d.ts +11 -28
- package/dist/types/components/xpl-checkbox/checkbox.stories.d.ts +13 -31
- package/dist/types/components/xpl-choicelist/choicelist.stories.d.ts +9 -23
- package/dist/types/components/xpl-content-area/content-area.stories.d.ts +7 -1
- package/dist/types/components/xpl-dashboard/dashboard.stories.d.ts +8 -17
- package/dist/types/components/xpl-data-card/data-card.stories.d.ts +32 -37
- package/dist/types/components/xpl-data-card/xpl-data-card.d.ts +12 -0
- package/dist/types/components/xpl-divider/divider.stories.d.ts +10 -23
- package/dist/types/components/xpl-dropdown/dropdown.stories.d.ts +160 -8
- package/dist/types/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.d.ts +1 -1
- package/dist/types/components/xpl-dropdown/xpl-dropdown.d.ts +7 -9
- package/dist/types/components/xpl-dynamic-table/dynamic-table.stories.d.ts +7 -22
- package/dist/types/components/xpl-dynamic-table/xpl-dynamic-table.d.ts +2 -1
- package/dist/types/components/xpl-grid/grid.stories.d.ts +23 -47
- package/dist/types/components/xpl-header-accordion/header-accordion.stories.d.ts +8 -24
- package/dist/types/components/xpl-header-accordion/xpl-header-accordion.d.ts +0 -2
- package/dist/types/components/xpl-icon/icons.stories.d.ts +16 -39
- package/dist/types/components/xpl-input/input.stories.d.ts +255 -54
- package/dist/types/components/xpl-input/xpl-input-date/xpl-input-date.d.ts +1 -1
- package/dist/types/components/xpl-input/xpl-input-file/xpl-input-file.d.ts +1 -1
- package/dist/types/components/xpl-input/xpl-input-phone/xpl-input-phone.d.ts +2 -2
- package/dist/types/components/xpl-input/xpl-input-time/time-utils.d.ts +1 -1
- package/dist/types/components/xpl-input/xpl-input-time/xpl-input-time.d.ts +1 -1
- package/dist/types/components/xpl-input/xpl-input.d.ts +11 -6
- package/dist/types/components/xpl-large-card/large-card.stories.d.ts +12 -30
- package/dist/types/components/xpl-large-card/xpl-large-card.d.ts +12 -0
- package/dist/types/components/xpl-list/list.stories.d.ts +33 -1
- package/dist/types/components/xpl-list/listitem.d.ts +5 -0
- package/dist/types/components/xpl-list/xpl-list-item/xpl-list-item.d.ts +0 -1
- package/dist/types/components/xpl-main-nav/main-nav.stories.d.ts +7 -1
- package/dist/types/components/xpl-modal/modal.stories.d.ts +16 -16
- package/dist/types/components/xpl-modal/xpl-modal.d.ts +3 -1
- package/dist/types/components/xpl-pagination/pagination.stories.d.ts +9 -30
- package/dist/types/components/xpl-panel/panel.stories.d.ts +9 -1
- package/dist/types/components/xpl-popover/popover.stories.d.ts +12 -3
- package/dist/types/components/xpl-popover/xpl-popover.d.ts +4 -2
- package/dist/types/components/xpl-progress-bar/progress-bar.stories.d.ts +13 -24
- package/dist/types/components/xpl-progress-indicator/progress-indicator.stories.d.ts +2 -0
- package/dist/types/components/xpl-radio/radio.stories.d.ts +3 -0
- package/dist/types/components/xpl-secondary-nav/secondary-nav.stories.d.ts +4 -1
- package/dist/types/components/xpl-select/select.stories.d.ts +35 -45
- package/dist/types/components/xpl-select/xpl-select.d.ts +1 -0
- package/dist/types/components/xpl-side-nav/side-nav-slot-utils.d.ts +3 -0
- package/dist/types/components/xpl-side-nav/side-nav.stories.d.ts +73 -1
- package/dist/types/components/xpl-side-nav/xpl-side-nav-header-item/xpl-side-nav-header-item.d.ts +24 -0
- package/dist/types/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.d.ts +1 -1
- package/dist/types/components/xpl-side-nav/xpl-side-nav-section/xpl-side-nav-section.d.ts +24 -0
- package/dist/types/components/xpl-side-nav/xpl-side-nav.d.ts +10 -0
- package/dist/types/components/xpl-skeleton/skeleton.stories.d.ts +11 -1
- package/dist/types/components/xpl-slideout/slideout.stories.d.ts +20 -16
- package/dist/types/components/xpl-spotlight/spotlight.stories.d.ts +7 -1
- package/dist/types/components/xpl-spotlight/xpl-spotlight.d.ts +1 -0
- package/dist/types/components/xpl-tab/xpl-tab.d.ts +5 -0
- package/dist/types/components/xpl-table/table.stories.d.ts +16 -37
- package/dist/types/components/xpl-table/xpl-table.d.ts +8 -8
- package/dist/types/components/xpl-table-header/table-header.stories.d.ts +21 -48
- package/dist/types/components/xpl-table-header-cell/table-header-cell.stories.d.ts +11 -34
- package/dist/types/components/xpl-tabs/segment-control.stories.d.ts +22 -0
- package/dist/types/components/xpl-tabs/tabs.shared.d.ts +35 -1
- package/dist/types/components/xpl-tabs/tabs.stories.d.ts +29 -19
- package/dist/types/components/xpl-tag/tag.stories.d.ts +3 -0
- package/dist/types/components/xpl-toast/toast.stories.d.ts +17 -13
- package/dist/types/components/xpl-toast/xpl-toast.d.ts +13 -4
- package/dist/types/components/xpl-toggle/toggle.stories.d.ts +13 -31
- package/dist/types/components/xpl-toolbar/toolbar.stories.d.ts +35 -0
- package/dist/types/components/xpl-tooltip/tooltip.stories.d.ts +10 -24
- package/dist/types/components/xpl-top-nav/top-nav-constants.d.ts +1 -0
- package/dist/types/components/xpl-top-nav/top-nav.stories.d.ts +79 -1
- package/dist/types/components/xpl-top-nav/xpl-top-nav-item/top-nav-item-constants.d.ts +2 -0
- package/dist/types/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.d.ts +26 -4
- package/dist/types/components/xpl-top-nav/xpl-top-nav-menu/xpl-top-nav-menu.d.ts +18 -0
- package/dist/types/components/xpl-top-nav/xpl-top-nav.d.ts +8 -2
- package/dist/types/components/xpl-utility-bar/utility-bar.stories.d.ts +9 -2
- package/dist/types/components.d.ts +1186 -66
- package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/.storybook/utils/story-function.d.ts +11 -0
- package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/.storybook/utils/wait-for-hydration.d.ts +1 -0
- package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/src/css/typography.stories.d.ts +76 -0
- package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/src/utils/form-bindings.d.ts +4 -0
- package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/src/utils/story-vrt.d.ts +1 -0
- package/dist/types/third-party.d.ts +20 -0
- package/dist/types/utils/floating.d.ts +26 -0
- package/dist/types/utils/lifecycle.d.ts +4 -1
- package/dist/types/utils/light-dom-slots.d.ts +6 -0
- package/dist/types/utils/slot-presence.d.ts +1 -0
- package/dist/types/utils/ssr-known-mismatches.d.ts +16 -0
- package/dist/utils/form-bindings.js +64 -0
- package/dist/utils/story-vrt.js +48 -0
- package/hydrate/index.d.ts +287 -0
- package/hydrate/index.js +51669 -0
- package/hydrate/index.mjs +51659 -0
- package/hydrate/package.json +12 -0
- package/package.json +111 -44
- package/dist/apollo-core/p-0e45f332.entry.js +0 -1
- package/dist/apollo-core/p-0f251f98.entry.js +0 -1
- package/dist/apollo-core/p-1691c4f3.entry.js +0 -1
- package/dist/apollo-core/p-172ac720.entry.js +0 -1
- package/dist/apollo-core/p-23870463.entry.js +0 -1
- package/dist/apollo-core/p-3b8639b7.entry.js +0 -1
- package/dist/apollo-core/p-44a16751.entry.js +0 -1
- package/dist/apollo-core/p-4efecab2.entry.js +0 -1
- package/dist/apollo-core/p-5094dd97.entry.js +0 -1
- package/dist/apollo-core/p-70e7facc.entry.js +0 -1
- package/dist/apollo-core/p-728341d2.entry.js +0 -1
- package/dist/apollo-core/p-910be81f.entry.js +0 -1
- package/dist/apollo-core/p-9adf3694.entry.js +0 -1
- package/dist/apollo-core/p-CXkZUm1c.js +0 -2
- package/dist/apollo-core/p-c17b6351.entry.js +0 -1
- package/dist/apollo-core/p-e08b434c.entry.js +0 -1
- package/dist/apollo-core/p-e9e7577f.entry.js +0 -1
- package/dist/components/p-3qMYyqTe.js +0 -1
- package/dist/components/p-BG0-6Xek.js +0 -1
- package/dist/components/p-BT_Lq3Vd.js +0 -1
- package/dist/components/p-BWyAzrwu.js +0 -1
- package/dist/components/p-B_Wi--Ov.js +0 -1
- package/dist/components/p-Bd6JweBt.js +0 -1
- package/dist/components/p-Bn-27-xj.js +0 -1
- package/dist/components/p-Bs6vq0C6.js +0 -1
- package/dist/components/p-C9BO2vL-.js +0 -1
- package/dist/components/p-CFW_w5Wj.js +0 -1
- package/dist/components/p-CFpsSZyr.js +0 -1
- package/dist/components/p-CGNq3DyC.js +0 -1
- package/dist/components/p-CVqbA9op.js +0 -1
- package/dist/components/p-CtIUusUL.js +0 -1
- package/dist/components/p-D97c0GjM.js +0 -1
- package/dist/components/p-DBWV65V-.js +0 -1
- package/dist/components/p-DEl4Rvzs.js +0 -1
- package/dist/components/p-DPTHmitJ.js +0 -1
- package/dist/components/p-DllC7F-H.js +0 -1
- package/dist/components/p-Ds28UyUR.js +0 -1
- package/dist/components/p-U5dPMCXE.js +0 -1
- package/dist/components/p-Yj_QFaRn.js +0 -1
- package/dist/components/p-hPUzON4O.js +0 -1
- package/dist/components/p-kPHfCq1d.js +0 -1
- package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/css/typography.stories.d.ts +0 -90
|
@@ -9,23 +9,30 @@ import { AvatarColor, AvatarGroupItem, AvatarStatus, AvatarVariant } from "./com
|
|
|
9
9
|
import { BadgeVariantProp } from "./components/xpl-badge/xpl-badge";
|
|
10
10
|
import { Choice } from "./components/xpl-choicelist/choice";
|
|
11
11
|
import { DropdownItem, DropdownOptionGroup } from "./components/xpl-dropdown/dropdown-option";
|
|
12
|
-
import { Placement } from "
|
|
12
|
+
import { Placement } from "./utils/floating";
|
|
13
|
+
import { Event } from "./stencil-public-runtime";
|
|
13
14
|
import { ListItem, XplListOrderChangeDetail } from "./components/xpl-list/listitem";
|
|
14
|
-
import { BadgeVariantProp as BadgeVariantProp1 } from "./components/xpl-badge/xpl-badge";
|
|
15
|
+
import { BadgePalette, BadgeVariantProp as BadgeVariantProp1 } from "./components/xpl-badge/xpl-badge";
|
|
15
16
|
import { PopoverPosition } from "./components/xpl-popover/xpl-popover";
|
|
17
|
+
import { Placement as Placement1 } from "@floating-ui/dom";
|
|
16
18
|
import { SpotlightActionLayout, SpotlightAnchorPosition } from "./components/xpl-spotlight/xpl-spotlight";
|
|
17
19
|
import { TagDragEndDetail, TagDragStartDetail } from "./components/xpl-tag/xpl-tag";
|
|
18
20
|
export { AvatarColor, AvatarGroupItem, AvatarStatus, AvatarVariant } from "./components/xpl-avatar/xpl-avatar";
|
|
19
21
|
export { BadgeVariantProp } from "./components/xpl-badge/xpl-badge";
|
|
20
22
|
export { Choice } from "./components/xpl-choicelist/choice";
|
|
21
23
|
export { DropdownItem, DropdownOptionGroup } from "./components/xpl-dropdown/dropdown-option";
|
|
22
|
-
export { Placement } from "
|
|
24
|
+
export { Placement } from "./utils/floating";
|
|
25
|
+
export { Event } from "./stencil-public-runtime";
|
|
23
26
|
export { ListItem, XplListOrderChangeDetail } from "./components/xpl-list/listitem";
|
|
24
|
-
export { BadgeVariantProp as BadgeVariantProp1 } from "./components/xpl-badge/xpl-badge";
|
|
27
|
+
export { BadgePalette, BadgeVariantProp as BadgeVariantProp1 } from "./components/xpl-badge/xpl-badge";
|
|
25
28
|
export { PopoverPosition } from "./components/xpl-popover/xpl-popover";
|
|
29
|
+
export { Placement as Placement1 } from "@floating-ui/dom";
|
|
26
30
|
export { SpotlightActionLayout, SpotlightAnchorPosition } from "./components/xpl-spotlight/xpl-spotlight";
|
|
27
31
|
export { TagDragEndDetail, TagDragStartDetail } from "./components/xpl-tag/xpl-tag";
|
|
28
32
|
export namespace Components {
|
|
33
|
+
/**
|
|
34
|
+
* @since 2.0.0
|
|
35
|
+
*/
|
|
29
36
|
interface XplAccordion {
|
|
30
37
|
/**
|
|
31
38
|
* set the border of the accordion none: there’s no border wrapping the header bottom:there’s a border below the header bordered: the header is wrapped by a white panel with a rounded border around it on every side
|
|
@@ -60,6 +67,9 @@ export namespace Components {
|
|
|
60
67
|
*/
|
|
61
68
|
"size": '1' | '2' | '3';
|
|
62
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* @since 0.5.0
|
|
72
|
+
*/
|
|
63
73
|
interface XplApplicationShell {
|
|
64
74
|
/**
|
|
65
75
|
* @property {boolean} - *
|
|
@@ -82,6 +92,9 @@ export namespace Components {
|
|
|
82
92
|
*/
|
|
83
93
|
"withUtility": boolean;
|
|
84
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* @since 0.1.1
|
|
97
|
+
*/
|
|
85
98
|
interface XplAvatar {
|
|
86
99
|
/**
|
|
87
100
|
* Background color when there is no image src
|
|
@@ -130,6 +143,9 @@ export namespace Components {
|
|
|
130
143
|
*/
|
|
131
144
|
"variant"?: AvatarVariant;
|
|
132
145
|
}
|
|
146
|
+
/**
|
|
147
|
+
* @since 0.1.2
|
|
148
|
+
*/
|
|
133
149
|
interface XplBackdrop {
|
|
134
150
|
/**
|
|
135
151
|
* @property {boolean} - When true, backdrop will have relative position. This is useful when the backdrop doesn't cover the whole view area. If false, the position will be fixed and cover the whole view area.
|
|
@@ -137,6 +153,9 @@ export namespace Components {
|
|
|
137
153
|
*/
|
|
138
154
|
"relative": boolean;
|
|
139
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* @since 0.1.1
|
|
158
|
+
*/
|
|
140
159
|
interface XplBadge {
|
|
141
160
|
/**
|
|
142
161
|
* Whether badge shows a bordered ring
|
|
@@ -168,6 +187,9 @@ export namespace Components {
|
|
|
168
187
|
*/
|
|
169
188
|
"variant": BadgeVariantProp;
|
|
170
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* @since 2.6.0
|
|
192
|
+
*/
|
|
171
193
|
interface XplBanner {
|
|
172
194
|
/**
|
|
173
195
|
* Primary action label. When provided, an action button is rendered.
|
|
@@ -215,6 +237,9 @@ export namespace Components {
|
|
|
215
237
|
}
|
|
216
238
|
interface XplBreadcrumbs {
|
|
217
239
|
}
|
|
240
|
+
/**
|
|
241
|
+
* @since 0.1.1
|
|
242
|
+
*/
|
|
218
243
|
interface XplButton {
|
|
219
244
|
/**
|
|
220
245
|
* Attributes to apply to the inner native `<button>` (e.g., tab a11y wiring). Use this instead of setting `id` / `role` / `aria-*` on the host when the inner control is the element that needs them (e.g., WAI-ARIA composite widgets).
|
|
@@ -296,6 +321,9 @@ export namespace Components {
|
|
|
296
321
|
*/
|
|
297
322
|
"variant": 'primary' | 'secondary' | 'tertiary' | 'subtle';
|
|
298
323
|
}
|
|
324
|
+
/**
|
|
325
|
+
* @since 0.4.0
|
|
326
|
+
*/
|
|
299
327
|
interface XplButtonRow {
|
|
300
328
|
/**
|
|
301
329
|
* The text for the primary button.
|
|
@@ -310,6 +338,9 @@ export namespace Components {
|
|
|
310
338
|
*/
|
|
311
339
|
"tertiary": 'string';
|
|
312
340
|
}
|
|
341
|
+
/**
|
|
342
|
+
* @since 2.0.0
|
|
343
|
+
*/
|
|
313
344
|
interface XplCalendar {
|
|
314
345
|
/**
|
|
315
346
|
* Format of the date displayed in the calendar. Default is 'Y-m-d'.
|
|
@@ -343,6 +374,9 @@ export namespace Components {
|
|
|
343
374
|
*/
|
|
344
375
|
"setDate": (date: string | string[]) => Promise<void>;
|
|
345
376
|
}
|
|
377
|
+
/**
|
|
378
|
+
* @since 0.1.1
|
|
379
|
+
*/
|
|
346
380
|
interface XplCheckbox {
|
|
347
381
|
/**
|
|
348
382
|
* Accessible name for the native checkbox input (sets `aria-label` on the `input`). Use when there is no visible label text in the default slot. Defaults to `''`; empty or whitespace-only values omit `aria-label` on the input so a visible `<label>` remains the sole name source.
|
|
@@ -386,6 +420,9 @@ export namespace Components {
|
|
|
386
420
|
*/
|
|
387
421
|
"value"?: string;
|
|
388
422
|
}
|
|
423
|
+
/**
|
|
424
|
+
* @since 0.1.1
|
|
425
|
+
*/
|
|
389
426
|
interface XplChoicelist {
|
|
390
427
|
/**
|
|
391
428
|
* An array of choices to be displayed in the list. Each choice should be an object with keys: - `checked` [boolean] - whether to pre-check or not - `children` [Choice[]] - an array of child choices (recursive) - `description` [string] - `label` [string]
|
|
@@ -413,6 +450,9 @@ export namespace Components {
|
|
|
413
450
|
*/
|
|
414
451
|
"styled"?: boolean;
|
|
415
452
|
}
|
|
453
|
+
/**
|
|
454
|
+
* @since 0.1.2
|
|
455
|
+
*/
|
|
416
456
|
interface XplContentArea {
|
|
417
457
|
/**
|
|
418
458
|
* @property {string} size - The content-area size.
|
|
@@ -420,8 +460,14 @@ export namespace Components {
|
|
|
420
460
|
*/
|
|
421
461
|
"size": 'wide' | 'narrow' | 'full';
|
|
422
462
|
}
|
|
463
|
+
/**
|
|
464
|
+
* @since 1.0.0
|
|
465
|
+
*/
|
|
423
466
|
interface XplDashboard {
|
|
424
467
|
}
|
|
468
|
+
/**
|
|
469
|
+
* @since 1.0.0
|
|
470
|
+
*/
|
|
425
471
|
interface XplDataCard {
|
|
426
472
|
/**
|
|
427
473
|
* An optional field that typically describes or modifies the small stat
|
|
@@ -479,12 +525,18 @@ export namespace Components {
|
|
|
479
525
|
*/
|
|
480
526
|
"variant"?: 'primary' | 'secondary';
|
|
481
527
|
}
|
|
528
|
+
/**
|
|
529
|
+
* @since 0.3.0
|
|
530
|
+
*/
|
|
482
531
|
interface XplDivider {
|
|
483
532
|
/**
|
|
484
533
|
* The tier should be an integer between 0 and 3. Tier 0 dividers do not display text, and 1-3 increase in size with each increasing tier.
|
|
485
534
|
*/
|
|
486
535
|
"tier"?: number;
|
|
487
536
|
}
|
|
537
|
+
/**
|
|
538
|
+
* @since 0.4.0
|
|
539
|
+
*/
|
|
488
540
|
interface XplDropdown {
|
|
489
541
|
/**
|
|
490
542
|
* whether to anchor the dropdown to the trigger element, requires triggerId to be set
|
|
@@ -503,7 +555,7 @@ export namespace Components {
|
|
|
503
555
|
/**
|
|
504
556
|
* called on dropdown option click and keydown events to update isSelected states
|
|
505
557
|
*/
|
|
506
|
-
"handleSelect": (e:
|
|
558
|
+
"handleSelect": (e: Event | null, { component }: DropdownSelectContext) => Promise<void>;
|
|
507
559
|
/**
|
|
508
560
|
* text to display as heading
|
|
509
561
|
* @default false
|
|
@@ -539,7 +591,7 @@ export namespace Components {
|
|
|
539
591
|
/**
|
|
540
592
|
* call back function invoked when a selection is made
|
|
541
593
|
*/
|
|
542
|
-
"update"?: (e
|
|
594
|
+
"update"?: (e: Event | null, context: { component: Dropdown }) => void;
|
|
543
595
|
}
|
|
544
596
|
interface XplDropdownGroup {
|
|
545
597
|
/**
|
|
@@ -583,8 +635,14 @@ export namespace Components {
|
|
|
583
635
|
*/
|
|
584
636
|
"value"?: string;
|
|
585
637
|
}
|
|
638
|
+
/**
|
|
639
|
+
* @since 1.4.0
|
|
640
|
+
*/
|
|
586
641
|
interface XplDynamicTable {
|
|
587
642
|
}
|
|
643
|
+
/**
|
|
644
|
+
* @since 1.3.0
|
|
645
|
+
*/
|
|
588
646
|
interface XplDynamicTableCell {
|
|
589
647
|
/**
|
|
590
648
|
* Whether the cell and its contents are disabled.
|
|
@@ -592,6 +650,9 @@ export namespace Components {
|
|
|
592
650
|
*/
|
|
593
651
|
"disabled": boolean;
|
|
594
652
|
}
|
|
653
|
+
/**
|
|
654
|
+
* @since 1.3.0
|
|
655
|
+
*/
|
|
595
656
|
interface XplDynamicTableRow {
|
|
596
657
|
/**
|
|
597
658
|
* Whether the row and its cells are disabled.
|
|
@@ -604,8 +665,14 @@ export namespace Components {
|
|
|
604
665
|
*/
|
|
605
666
|
"selected": boolean;
|
|
606
667
|
}
|
|
668
|
+
/**
|
|
669
|
+
* @since 0.4.0
|
|
670
|
+
*/
|
|
607
671
|
interface XplGrid {
|
|
608
672
|
}
|
|
673
|
+
/**
|
|
674
|
+
* @since 0.4.0
|
|
675
|
+
*/
|
|
609
676
|
interface XplGridItem {
|
|
610
677
|
/**
|
|
611
678
|
* The number of columns the element should span out of a 6 column grid on a lg size screen
|
|
@@ -628,6 +695,9 @@ export namespace Components {
|
|
|
628
695
|
*/
|
|
629
696
|
"xs": number;
|
|
630
697
|
}
|
|
698
|
+
/**
|
|
699
|
+
* @since 1.2.0
|
|
700
|
+
*/
|
|
631
701
|
interface XplHeaderAccordion {
|
|
632
702
|
/**
|
|
633
703
|
* The id of the content region controlled by the accordion.
|
|
@@ -654,6 +724,9 @@ export namespace Components {
|
|
|
654
724
|
*/
|
|
655
725
|
"selectedCount": number;
|
|
656
726
|
}
|
|
727
|
+
/**
|
|
728
|
+
* @since 1.0.0
|
|
729
|
+
*/
|
|
657
730
|
interface XplIcon {
|
|
658
731
|
/**
|
|
659
732
|
* Icon's background color.
|
|
@@ -669,6 +742,9 @@ export namespace Components {
|
|
|
669
742
|
*/
|
|
670
743
|
"size": number;
|
|
671
744
|
}
|
|
745
|
+
/**
|
|
746
|
+
* @since 0.3.0
|
|
747
|
+
*/
|
|
672
748
|
interface XplInput {
|
|
673
749
|
/**
|
|
674
750
|
* Because `id` is a reserved HTMLElement attribute, we prefix it with an underscore here so that it doesn't get automatically applied to the outer container. Applies to all input types.
|
|
@@ -1135,6 +1211,9 @@ export namespace Components {
|
|
|
1135
1211
|
*/
|
|
1136
1212
|
"value"?: string;
|
|
1137
1213
|
}
|
|
1214
|
+
/**
|
|
1215
|
+
* @since 1.9.1
|
|
1216
|
+
*/
|
|
1138
1217
|
interface XplLargeCard {
|
|
1139
1218
|
/**
|
|
1140
1219
|
* Description of the Card
|
|
@@ -1149,6 +1228,9 @@ export namespace Components {
|
|
|
1149
1228
|
*/
|
|
1150
1229
|
"name": string;
|
|
1151
1230
|
}
|
|
1231
|
+
/**
|
|
1232
|
+
* @since 0.4.0
|
|
1233
|
+
*/
|
|
1152
1234
|
interface XplList {
|
|
1153
1235
|
/**
|
|
1154
1236
|
* Clears all radio selections in the list. Also runs when `selectable` is true, the user presses Escape, and focus is on the selected row. Emits `itemSelect` once per row that was selected (checked radio or `selected` prop), typically one.
|
|
@@ -1240,6 +1322,9 @@ export namespace Components {
|
|
|
1240
1322
|
*/
|
|
1241
1323
|
"titleBadgeVariant"?: BadgeVariantProp1;
|
|
1242
1324
|
}
|
|
1325
|
+
/**
|
|
1326
|
+
* @since 0.1.2
|
|
1327
|
+
*/
|
|
1243
1328
|
interface XplMainNav {
|
|
1244
1329
|
/**
|
|
1245
1330
|
* @property {string} width - The width of the Main Nav.
|
|
@@ -1247,6 +1332,9 @@ export namespace Components {
|
|
|
1247
1332
|
*/
|
|
1248
1333
|
"width": 'default' | 'md' | 'sm';
|
|
1249
1334
|
}
|
|
1335
|
+
/**
|
|
1336
|
+
* @since 1.1.0
|
|
1337
|
+
*/
|
|
1250
1338
|
interface XplModal {
|
|
1251
1339
|
/**
|
|
1252
1340
|
* Whether the modal is open.
|
|
@@ -1292,6 +1380,9 @@ export namespace Components {
|
|
|
1292
1380
|
*/
|
|
1293
1381
|
"username"?: string;
|
|
1294
1382
|
}
|
|
1383
|
+
/**
|
|
1384
|
+
* @since 0.1.2
|
|
1385
|
+
*/
|
|
1295
1386
|
interface XplNavItem {
|
|
1296
1387
|
/**
|
|
1297
1388
|
* @property {boolean} - Whether or not the item should control the main nav state on click
|
|
@@ -1299,6 +1390,9 @@ export namespace Components {
|
|
|
1299
1390
|
*/
|
|
1300
1391
|
"navControl"?: boolean;
|
|
1301
1392
|
}
|
|
1393
|
+
/**
|
|
1394
|
+
* @since 0.1.1
|
|
1395
|
+
*/
|
|
1302
1396
|
interface XplPagination {
|
|
1303
1397
|
/**
|
|
1304
1398
|
* The current active page (1-based). Marked as mutable so we can update from inside this component.
|
|
@@ -1329,6 +1423,7 @@ export namespace Components {
|
|
|
1329
1423
|
/**
|
|
1330
1424
|
* A stateless container that defines a section on a page and can house any
|
|
1331
1425
|
* type of content. Panels are not dismissible and may contain a top accent.
|
|
1426
|
+
* @since 2.6.0
|
|
1332
1427
|
*/
|
|
1333
1428
|
interface XplPanel {
|
|
1334
1429
|
/**
|
|
@@ -1342,6 +1437,9 @@ export namespace Components {
|
|
|
1342
1437
|
*/
|
|
1343
1438
|
"padding": 'default' | 'tight' | 'loose';
|
|
1344
1439
|
}
|
|
1440
|
+
/**
|
|
1441
|
+
* @since 2.0.0
|
|
1442
|
+
*/
|
|
1345
1443
|
interface XplPopover {
|
|
1346
1444
|
/**
|
|
1347
1445
|
* Whether the popover is disabled or not.
|
|
@@ -1364,6 +1462,9 @@ export namespace Components {
|
|
|
1364
1462
|
*/
|
|
1365
1463
|
"position": PopoverPosition;
|
|
1366
1464
|
}
|
|
1465
|
+
/**
|
|
1466
|
+
* @since 2.6.0
|
|
1467
|
+
*/
|
|
1367
1468
|
interface XplProgressBar {
|
|
1368
1469
|
/**
|
|
1369
1470
|
* The helper text displayed below the progress bar (recommended for error state)
|
|
@@ -1394,6 +1495,9 @@ export namespace Components {
|
|
|
1394
1495
|
*/
|
|
1395
1496
|
"variant": 'default' | 'success' | 'error' | 'indeterminate';
|
|
1396
1497
|
}
|
|
1498
|
+
/**
|
|
1499
|
+
* @since 2.7.0
|
|
1500
|
+
*/
|
|
1397
1501
|
interface XplProgressIndicator {
|
|
1398
1502
|
/**
|
|
1399
1503
|
* Current step index. Steps with index < currentStep are "finished", the step at currentStep is "active", and steps beyond are "waiting". Set to steps.length to mark all steps as finished. Automatically clamped to [0, steps.length].
|
|
@@ -1420,6 +1524,9 @@ export namespace Components {
|
|
|
1420
1524
|
*/
|
|
1421
1525
|
"steps"?: string[];
|
|
1422
1526
|
}
|
|
1527
|
+
/**
|
|
1528
|
+
* @since 0.1.1
|
|
1529
|
+
*/
|
|
1423
1530
|
interface XplRadio {
|
|
1424
1531
|
/**
|
|
1425
1532
|
* Whether the input is "on"
|
|
@@ -1454,8 +1561,14 @@ export namespace Components {
|
|
|
1454
1561
|
*/
|
|
1455
1562
|
"value"?: string;
|
|
1456
1563
|
}
|
|
1564
|
+
/**
|
|
1565
|
+
* @since 0.3.0
|
|
1566
|
+
*/
|
|
1457
1567
|
interface XplSecondaryNav {
|
|
1458
1568
|
}
|
|
1569
|
+
/**
|
|
1570
|
+
* @since 0.4.0
|
|
1571
|
+
*/
|
|
1459
1572
|
interface XplSelect {
|
|
1460
1573
|
/**
|
|
1461
1574
|
* An array of choices for the user to choose from. Each choice should be of the form: { label: string; href?: string; value?: string; isGroupHeading?: boolean; isSelected?: boolean; isDisabled?: boolean; options?: DropdownItem[]; groupName?: string; }
|
|
@@ -1481,12 +1594,12 @@ export namespace Components {
|
|
|
1481
1594
|
/**
|
|
1482
1595
|
* Additional placements to try for the options panel when the default `dropdownPlacement` does not fit. Passed to `xpl-dropdown` / Floating UI `flip`.
|
|
1483
1596
|
*/
|
|
1484
|
-
"dropdownFlipFallbackPlacements"?:
|
|
1597
|
+
"dropdownFlipFallbackPlacements"?: Placement1[];
|
|
1485
1598
|
/**
|
|
1486
1599
|
* Initial Floating UI placement for the options panel (e.g. `top-start`, `bottom-start`). Forwarded to the inner `xpl-dropdown` when the menu is open.
|
|
1487
1600
|
* @default 'bottom-start'
|
|
1488
1601
|
*/
|
|
1489
|
-
"dropdownPlacement":
|
|
1602
|
+
"dropdownPlacement": Placement1;
|
|
1490
1603
|
/**
|
|
1491
1604
|
* If an empty string (attribute present with no value), will display visually as an error. If a string is included, will display visually as an error and include the value as an error message.
|
|
1492
1605
|
*/
|
|
@@ -1528,8 +1641,8 @@ export namespace Components {
|
|
|
1528
1641
|
"truncate"?: boolean;
|
|
1529
1642
|
}
|
|
1530
1643
|
/**
|
|
1531
|
-
* Slot-based sidebar for app navigation: a scrollable
|
|
1532
|
-
* `nav-footer`. Compose with `xpl-side-nav-item` for rows.
|
|
1644
|
+
* Slot-based sidebar for app navigation: a scrollable `nav-header` + `section`
|
|
1645
|
+
* area and a fixed `nav-footer`. Compose with `xpl-side-nav-item` for rows.
|
|
1533
1646
|
* **Mobile (v2):** below the Tailwind `md` breakpoint, the sidebar collapses to a
|
|
1534
1647
|
* ~56px top bar with a toggle button (`sidebar-left-show` / `sidebar-left-hide`).
|
|
1535
1648
|
* Activating the toggle opens a drawer containing the `section` + `nav-footer`
|
|
@@ -1541,6 +1654,7 @@ export namespace Components {
|
|
|
1541
1654
|
* the `openChange` event, and the `toggle()` / `setOpen()` methods.
|
|
1542
1655
|
* **v2 breaking change (beta):** consumers who wrapped their own mobile toggle
|
|
1543
1656
|
* around `xpl-side-nav` should remove it — the toggle and drawer are now built in.
|
|
1657
|
+
* @since 2.6.0
|
|
1544
1658
|
*/
|
|
1545
1659
|
interface XplSideNav {
|
|
1546
1660
|
/**
|
|
@@ -1561,6 +1675,49 @@ export namespace Components {
|
|
|
1561
1675
|
*/
|
|
1562
1676
|
"toggle": () => Promise<void>;
|
|
1563
1677
|
}
|
|
1678
|
+
/**
|
|
1679
|
+
* Header row for `xpl-side-nav`'s `nav-header` slot (Figma `<navHeaderItem>`,
|
|
1680
|
+
* node `51299-9007`). Two types:
|
|
1681
|
+
* - **`product-label` (default)** — a non-interactive `<div>` row that shows the
|
|
1682
|
+
* current product/area name in a subdued color. No click behavior.
|
|
1683
|
+
* - **`sub-account`** — an interactive `<button>` row (e.g. a location / account
|
|
1684
|
+
* switcher). Emits `navigate` on activation (pointer click or keyboard); the
|
|
1685
|
+
* consumer wires this to open a modal or other entity-switching experience.
|
|
1686
|
+
* When no `slot="trailing"` content is provided, an auto chevron
|
|
1687
|
+
* (`chevron-expand-y`, a static dual-arrow glyph — no rotation) renders by default.
|
|
1688
|
+
* Both types support `slot="leading"` / `slot="trailing"` (the `icon` prop is a
|
|
1689
|
+
* convenience shorthand for `slot="leading"`, same as `xpl-side-nav-item`) so they
|
|
1690
|
+
* can scale to future uses. Unlike `xpl-side-nav-item`, the leading/trailing
|
|
1691
|
+
* columns are NOT unconditionally reserved — they only render when there is
|
|
1692
|
+
* content, matching the Figma variants where the leading icon is an optional toggle.
|
|
1693
|
+
* **Note on the `sub-account` hover / selected visual:** the interactive row
|
|
1694
|
+
* mirrors `xpl-side-nav-item` — the hover and selected backgrounds fill a single
|
|
1695
|
+
* `__content` pill that wraps the leading icon + label + trailing chevron, with
|
|
1696
|
+
* an 8px (`--xpl-border-radius-default`) radius. The pill insets 8px from the nav
|
|
1697
|
+
* edge (an 8px gutter on the button) so it lines up with the item rows below it,
|
|
1698
|
+
* and hover/selected therefore highlight the whole row content rather than a
|
|
1699
|
+
* partial fragment.
|
|
1700
|
+
*/
|
|
1701
|
+
interface XplSideNavHeaderItem {
|
|
1702
|
+
/**
|
|
1703
|
+
* Optional icon name; renders as the default content for `slot="leading"`. When `slot="leading"` content is present, this prop is ignored.
|
|
1704
|
+
*/
|
|
1705
|
+
"icon"?: string;
|
|
1706
|
+
/**
|
|
1707
|
+
* The display label for the header item (e.g. the product name or sub-account name).
|
|
1708
|
+
*/
|
|
1709
|
+
"label"?: string;
|
|
1710
|
+
/**
|
|
1711
|
+
* Whether the item is currently in a selected state. Only meaningful when `type` is `sub-account` — applies the information-surface pill around the label + trailing chevron.
|
|
1712
|
+
* @default false
|
|
1713
|
+
*/
|
|
1714
|
+
"selected": boolean;
|
|
1715
|
+
/**
|
|
1716
|
+
* The header item variant. `product-label` is a static, non-interactive label. `sub-account` is an interactive button that emits `navigate`.
|
|
1717
|
+
* @default 'product-label'
|
|
1718
|
+
*/
|
|
1719
|
+
"type": 'product-label' | 'sub-account';
|
|
1720
|
+
}
|
|
1564
1721
|
/**
|
|
1565
1722
|
* Navigation row for `xpl-side-nav`. Renders a button (default) or a slot-only
|
|
1566
1723
|
* anchor container (`link` mode). Three slot positions are available:
|
|
@@ -1625,6 +1782,41 @@ export namespace Components {
|
|
|
1625
1782
|
*/
|
|
1626
1783
|
"selected": boolean;
|
|
1627
1784
|
}
|
|
1785
|
+
/**
|
|
1786
|
+
* Grouping / accordion header for `xpl-side-nav`. Wraps nested `xpl-side-nav-item`
|
|
1787
|
+
* (and optional divider separators) elements in the default slot and collapses
|
|
1788
|
+
* them as a unit.
|
|
1789
|
+
* Two variants:
|
|
1790
|
+
* - **Collapsible (default, `collapsible=true`)** — a `<button>` header with a
|
|
1791
|
+
* chevron (`chevron-right` collapsed / `chevron-down` expanded, no rotation —
|
|
1792
|
+
* the glyph itself swaps). Click toggles `expanded` and emits `expandedChange`.
|
|
1793
|
+
* - **Static (`collapsible=false`)** — a non-interactive title row with no chevron;
|
|
1794
|
+
* children are always shown. Used for a static section label (e.g. a future
|
|
1795
|
+
* product-name / location-changer header).
|
|
1796
|
+
* Unlike `xpl-side-nav-item[has-children]`, section children are **not indented**
|
|
1797
|
+
* — they align with top-level items at the same leading-icon column.
|
|
1798
|
+
* `slot="badge"` renders an optional badge (e.g. `xpl-badge`) in the header title
|
|
1799
|
+
* row. The wrapper is suppressed when the slot is empty.
|
|
1800
|
+
*/
|
|
1801
|
+
interface XplSideNavSection {
|
|
1802
|
+
/**
|
|
1803
|
+
* Whether the section can be collapsed/expanded. When `false`, renders a static title (no chevron, not a button) and children are always shown.
|
|
1804
|
+
* @default true
|
|
1805
|
+
*/
|
|
1806
|
+
"collapsible": boolean;
|
|
1807
|
+
/**
|
|
1808
|
+
* Whether the section is currently expanded. Only meaningful when `collapsible` is true.
|
|
1809
|
+
* @default false
|
|
1810
|
+
*/
|
|
1811
|
+
"expanded": boolean;
|
|
1812
|
+
/**
|
|
1813
|
+
* The section title text. Optional, but when `collapsible` is true and both `heading` and `slot="badge"` lack an accessible name, the toggle `<button>` falls back to `aria-label="Toggle section"` so it always has an accessible name.
|
|
1814
|
+
*/
|
|
1815
|
+
"heading"?: string;
|
|
1816
|
+
}
|
|
1817
|
+
/**
|
|
1818
|
+
* @since 2.3.6
|
|
1819
|
+
*/
|
|
1628
1820
|
interface XplSkeleton {
|
|
1629
1821
|
/**
|
|
1630
1822
|
* A CSS class name to apply to the component.
|
|
@@ -1664,6 +1856,9 @@ export namespace Components {
|
|
|
1664
1856
|
*/
|
|
1665
1857
|
"width"?: CSSStyleDeclaration['width'];
|
|
1666
1858
|
}
|
|
1859
|
+
/**
|
|
1860
|
+
* @since 1.1.0
|
|
1861
|
+
*/
|
|
1667
1862
|
interface XplSlideout {
|
|
1668
1863
|
/**
|
|
1669
1864
|
* Whether to show a backdrop behind the slideout.
|
|
@@ -1686,6 +1881,9 @@ export namespace Components {
|
|
|
1686
1881
|
*/
|
|
1687
1882
|
"variant": 'default' | 'warning';
|
|
1688
1883
|
}
|
|
1884
|
+
/**
|
|
1885
|
+
* @since 2.7.0
|
|
1886
|
+
*/
|
|
1689
1887
|
interface XplSpotlight {
|
|
1690
1888
|
/**
|
|
1691
1889
|
* Footer action layout. `default` and `dual` both render the standard Back/Next layout, while `single` renders a single acknowledgement CTA (e.g. "Got it!"). Only applies when `showActions` is `true`.
|
|
@@ -1755,7 +1953,19 @@ export namespace Components {
|
|
|
1755
1953
|
*/
|
|
1756
1954
|
"totalSteps": number;
|
|
1757
1955
|
}
|
|
1956
|
+
/**
|
|
1957
|
+
* @since 2.3.8
|
|
1958
|
+
*/
|
|
1758
1959
|
interface XplTab {
|
|
1960
|
+
/**
|
|
1961
|
+
* Optional trailing number badge (e.g. a count). Rendered after the label as a compact `xpl-badge` in both underline (`type="tabs"`) and segment (`type="segment"`) tabs. Leave empty to omit the badge.
|
|
1962
|
+
*/
|
|
1963
|
+
"badge"?: string;
|
|
1964
|
+
/**
|
|
1965
|
+
* Color palette for the trailing number badge. Only applies when `badge` is set. Defaults to `purple` — the standard number-badge color in the Figma XPL-Tab Group spec.
|
|
1966
|
+
* @default 'purple'
|
|
1967
|
+
*/
|
|
1968
|
+
"badgeVariant": BadgePalette;
|
|
1759
1969
|
/**
|
|
1760
1970
|
* Disables this tab (pill or underline).
|
|
1761
1971
|
* @default false
|
|
@@ -1780,11 +1990,11 @@ export namespace Components {
|
|
|
1780
1990
|
*/
|
|
1781
1991
|
"groupDisabled": boolean;
|
|
1782
1992
|
/**
|
|
1783
|
-
* Optional icon name
|
|
1993
|
+
* Optional leading icon name (from the Apollo icon set). Rendered in both underline (`type="tabs"`) and segment (`type="segment"`) tabs.
|
|
1784
1994
|
*/
|
|
1785
1995
|
"icon"?: string;
|
|
1786
1996
|
/**
|
|
1787
|
-
* Icon position
|
|
1997
|
+
* Icon position relative to the label. Applies to both underline and segment tabs.
|
|
1788
1998
|
* @default 'start'
|
|
1789
1999
|
*/
|
|
1790
2000
|
"iconPosition": 'start' | 'end';
|
|
@@ -1807,6 +2017,9 @@ export namespace Components {
|
|
|
1807
2017
|
*/
|
|
1808
2018
|
"variant": 'tabs' | 'segment';
|
|
1809
2019
|
}
|
|
2020
|
+
/**
|
|
2021
|
+
* @since 2.3.8
|
|
2022
|
+
*/
|
|
1810
2023
|
interface XplTabPanel {
|
|
1811
2024
|
/**
|
|
1812
2025
|
* Whether the panel is selected
|
|
@@ -1818,6 +2031,9 @@ export namespace Components {
|
|
|
1818
2031
|
*/
|
|
1819
2032
|
"target": string;
|
|
1820
2033
|
}
|
|
2034
|
+
/**
|
|
2035
|
+
* @since 0.1.1
|
|
2036
|
+
*/
|
|
1821
2037
|
interface XplTable {
|
|
1822
2038
|
/**
|
|
1823
2039
|
* The header values for each column.
|
|
@@ -1839,7 +2055,7 @@ export namespace Components {
|
|
|
1839
2055
|
* Toggles to show the sort button on each table head
|
|
1840
2056
|
* @default false
|
|
1841
2057
|
*/
|
|
1842
|
-
"isSortable"
|
|
2058
|
+
"isSortable": boolean;
|
|
1843
2059
|
/**
|
|
1844
2060
|
* Toggles a selectable checkbox for each row in the table
|
|
1845
2061
|
*/
|
|
@@ -1848,19 +2064,25 @@ export namespace Components {
|
|
|
1848
2064
|
* The values for the input for each row when multiselect is activated.
|
|
1849
2065
|
* @default []
|
|
1850
2066
|
*/
|
|
1851
|
-
"selectedValues"
|
|
2067
|
+
"selectedValues": string[];
|
|
1852
2068
|
/**
|
|
1853
2069
|
* Manually determined if the column is sortable
|
|
1854
2070
|
* @default []
|
|
1855
2071
|
*/
|
|
1856
|
-
"sortableColumns"
|
|
2072
|
+
"sortableColumns": boolean[];
|
|
1857
2073
|
/**
|
|
1858
2074
|
* Toggles an optional styling of the background of each even row of the table body.
|
|
1859
2075
|
*/
|
|
1860
2076
|
"striped"?: boolean;
|
|
1861
2077
|
}
|
|
2078
|
+
/**
|
|
2079
|
+
* @since 1.0.0
|
|
2080
|
+
*/
|
|
1862
2081
|
interface XplTableHeader {
|
|
1863
2082
|
}
|
|
2083
|
+
/**
|
|
2084
|
+
* @since 1.3.0
|
|
2085
|
+
*/
|
|
1864
2086
|
interface XplTableHeaderCell {
|
|
1865
2087
|
/**
|
|
1866
2088
|
* Icon to display in the cell. See [xpl-icon available icons](../xpl-icon/ICONS.md) for valid icon names.
|
|
@@ -1886,6 +2108,9 @@ export namespace Components {
|
|
|
1886
2108
|
*/
|
|
1887
2109
|
"width"?: number;
|
|
1888
2110
|
}
|
|
2111
|
+
/**
|
|
2112
|
+
* @since 2.3.8
|
|
2113
|
+
*/
|
|
1889
2114
|
interface XplTabs {
|
|
1890
2115
|
/**
|
|
1891
2116
|
* Disables the whole tab group (headings, mobile select, and segment pills).
|
|
@@ -1907,6 +2132,9 @@ export namespace Components {
|
|
|
1907
2132
|
*/
|
|
1908
2133
|
"value": string;
|
|
1909
2134
|
}
|
|
2135
|
+
/**
|
|
2136
|
+
* @since 0.4.0
|
|
2137
|
+
*/
|
|
1910
2138
|
interface XplTag {
|
|
1911
2139
|
/**
|
|
1912
2140
|
* Whether the tag is disabled
|
|
@@ -1933,32 +2161,44 @@ export namespace Components {
|
|
|
1933
2161
|
*/
|
|
1934
2162
|
"tagId"?: string;
|
|
1935
2163
|
}
|
|
2164
|
+
/**
|
|
2165
|
+
* @since 1.2.0
|
|
2166
|
+
*/
|
|
1936
2167
|
interface XplToast {
|
|
1937
2168
|
/**
|
|
1938
|
-
*
|
|
2169
|
+
* The caption of the toast, limited to 85 characters.
|
|
2170
|
+
* @default ''
|
|
1939
2171
|
*/
|
|
1940
2172
|
"caption": string;
|
|
1941
2173
|
/**
|
|
1942
|
-
*
|
|
2174
|
+
* Whether the toast shows a dismiss (close) button.
|
|
2175
|
+
* @deprecated Misspelled. Use `dismissible` instead. When both are set, `dismissable` wins so existing markup keeps working; `dismissable` is removed in the next major version.
|
|
2176
|
+
*/
|
|
2177
|
+
"dismissable"?: boolean;
|
|
2178
|
+
/**
|
|
2179
|
+
* Whether the toast shows a dismiss (close) button.
|
|
1943
2180
|
* @default true
|
|
1944
2181
|
*/
|
|
1945
|
-
"
|
|
2182
|
+
"dismissible": boolean;
|
|
1946
2183
|
/**
|
|
1947
|
-
*
|
|
2184
|
+
* Whether to show the leading sentiment icon.
|
|
1948
2185
|
* @default true
|
|
1949
2186
|
*/
|
|
1950
2187
|
"showIcon"?: boolean;
|
|
1951
2188
|
/**
|
|
1952
|
-
*
|
|
2189
|
+
* How long the toast waits before auto-dismissing, in ms. Set to `0` to disable auto-dismiss. Ignored when the `action` slot has content.
|
|
1953
2190
|
* @default 8000
|
|
1954
2191
|
*/
|
|
1955
2192
|
"timeout": number;
|
|
1956
2193
|
/**
|
|
1957
|
-
*
|
|
2194
|
+
* The sentiment of the toast.
|
|
1958
2195
|
* @default 'neutral'
|
|
1959
2196
|
*/
|
|
1960
2197
|
"variant": 'neutral' | 'warning' | 'success';
|
|
1961
2198
|
}
|
|
2199
|
+
/**
|
|
2200
|
+
* @since 0.3.0
|
|
2201
|
+
*/
|
|
1962
2202
|
interface XplToggle {
|
|
1963
2203
|
/**
|
|
1964
2204
|
* Whether the toggle is `on`
|
|
@@ -1990,6 +2230,9 @@ export namespace Components {
|
|
|
1990
2230
|
*/
|
|
1991
2231
|
"variant"?: 'default' | 'small';
|
|
1992
2232
|
}
|
|
2233
|
+
/**
|
|
2234
|
+
* @since 1.2.0
|
|
2235
|
+
*/
|
|
1993
2236
|
interface XplToolbar {
|
|
1994
2237
|
/**
|
|
1995
2238
|
* The number of selected items to display in the toolbar.
|
|
@@ -1997,6 +2240,9 @@ export namespace Components {
|
|
|
1997
2240
|
*/
|
|
1998
2241
|
"selectedItemCount": number;
|
|
1999
2242
|
}
|
|
2243
|
+
/**
|
|
2244
|
+
* @since 1.7.0
|
|
2245
|
+
*/
|
|
2000
2246
|
interface XplTooltip {
|
|
2001
2247
|
/**
|
|
2002
2248
|
* Hide the arrow
|
|
@@ -2025,6 +2271,7 @@ export namespace Components {
|
|
|
2025
2271
|
* (see **`.xpl-top-nav__right-rail`** in `render()`). The account menu uses an internal **`xpl-popover`** (**`bottom-end`**, **`display="menu"`**): built-in trigger uses **`child-account-label`** (prop / attribute) as the label beside a trailing **`chevron-down`** on **`xpl-button`** (**`icon`** / **`iconPosition="end"`**), or **`slot="user-menu-trigger"`** for a custom trigger; panel from **`slot="user-menu"`** (e.g. **`xpl-nav-header-menu`**).
|
|
2026
2272
|
* Optional **`nav-control`** and **`navOpen`**. **`left-aside`** uses **`role="list"`** for primary **`xpl-top-nav-item`** rows (**`role="listitem"`** on each item host). The built-in **`xpl-top-nav__brand`** item omits **`listitem`** (it is not a child of that list). **`label`** maps to **`nav`** **`aria-label`**. Opening state is internal (not a prop) — use **`navOpen`** and host **`xpl-top-nav--open`** for styling.
|
|
2027
2273
|
* **Escape:** With **`nav-control`**, **Escape** closes the mobile drawer and emits **`navOpen`** **`false`** (skips while **any** descendant **`xpl-popover`** is open — detected from each popover’s inner **`.xpl-popover--is-open`** marker — or when a **`xpl-top-nav-item`** dropdown is open — capture/bubble order). Focus returns to the nav toggle after the drawer closes (**Escape** or second toggle click).
|
|
2274
|
+
* **Outside click:** With **`nav-control`**, a click outside the drawer panel (**`.xpl-top-nav__left-primary`**) also closes it and emits **`navOpen`** **`false`** (document **capture**, mirroring **`xpl-top-nav-item`**); it skips clicks on the hamburger toggle and while a descendant **`xpl-popover`** is open, and does not move focus.
|
|
2028
2275
|
* **`xpl-top-nav-item`** **`slot="dropdown"`** uses document **capture** for **Escape** first; the shell uses **bubble**
|
|
2029
2276
|
* on **`ownerDocument`** so nested dropdowns close before the drawer.
|
|
2030
2277
|
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens under this subtree
|
|
@@ -2041,6 +2288,7 @@ export namespace Components {
|
|
|
2041
2288
|
* **`slot="right-aside-mobile"`** (below profile, above the list; narrow-only CSS in **`top-nav.css`**) per Figma.
|
|
2042
2289
|
* **Account menu vs drawer:** Opening the built-in account **`xpl-popover`** while the mobile drawer is open **closes the drawer**
|
|
2043
2290
|
* and emits **`navOpen(false)`** so the two layers do not stack.
|
|
2291
|
+
* @since 2.7.0
|
|
2044
2292
|
*/
|
|
2045
2293
|
interface XplTopNav {
|
|
2046
2294
|
/**
|
|
@@ -2069,16 +2317,19 @@ export namespace Components {
|
|
|
2069
2317
|
"navControl"?: boolean;
|
|
2070
2318
|
}
|
|
2071
2319
|
/**
|
|
2072
|
-
* Single nav row for **`xpl-top-nav`** / **`xpl-nav-header-menu`**. The host uses
|
|
2073
|
-
* participates in a list: a **`role="list"`** parent, **`slot="left-aside"`** on
|
|
2074
|
-
* **`.xpl-top-nav__left-primary`** while slotted nodes stay light-DOM children of
|
|
2075
|
-
* under **`xpl-nav-header-menu`**. That flag is
|
|
2320
|
+
* Single nav row for **`xpl-top-nav`** / **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**. The host uses
|
|
2321
|
+
* **`role="listitem"`** when the row participates in a list: a **`role="list"`** parent, **`slot="left-aside"`** on
|
|
2322
|
+
* **`xpl-top-nav`** (list host is **`.xpl-top-nav__left-primary`** while slotted nodes stay light-DOM children of
|
|
2323
|
+
* **`xpl-top-nav`**), or default-slot rows under **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**. That flag is
|
|
2076
2324
|
* kept in **`@State`** and refreshed after render plus via **`MutationObserver`** on the host (**`class`**, **`slot`**) and
|
|
2077
2325
|
* on **`parentElement`** (**`role`**) or on **`.xpl-top-nav__left-primary`** (**`role`**) for **`slot="left-aside"`** under **`xpl-top-nav`**) so DOM context changes
|
|
2078
2326
|
* without a full reconnect still re-sync. The internal
|
|
2079
2327
|
* **`xpl-top-nav__brand`** row omits **`listitem`** (it sits in **`.xpl-top-nav__brand-bar`**, not **`.xpl-top-nav__left-primary`**),
|
|
2080
2328
|
* as do **`slot="right-aside-mobile"`** rows (not a list). **`slot="dropdown"`** uses a local **`.xpl-top-nav-item__dropdown`**
|
|
2081
2329
|
* panel (not **`xpl-dropdown`**); see **`TECH_DEBT.md`**.
|
|
2330
|
+
* **This component does triple duty:** a plain bar item, a dropdown trigger (**`slot="dropdown"`** present), and a
|
|
2331
|
+
* dropdown/menu **row** (nested inside **`xpl-nav-header-menu`** or **`xpl-top-nav-menu`**). The **`description`** prop
|
|
2332
|
+
* only applies in the row context — bar items and triggers do not show it in Figma.
|
|
2082
2333
|
* **Default slot (no `label`):** do not put **`xpl-top-nav-item__inner`** or other **`xpl-top-nav-item__*`** classes on
|
|
2083
2334
|
* custom trigger content — the component renders the inner wrapper and BEM elements.
|
|
2084
2335
|
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens resolve to dark-mode
|
|
@@ -2090,12 +2341,20 @@ export namespace Components {
|
|
|
2090
2341
|
* @default false
|
|
2091
2342
|
*/
|
|
2092
2343
|
"active": boolean;
|
|
2344
|
+
/**
|
|
2345
|
+
* No-op when there is no **`slot="dropdown"`** panel to open.
|
|
2346
|
+
*/
|
|
2347
|
+
"closeMenu": () => Promise<void>;
|
|
2348
|
+
/**
|
|
2349
|
+
* Optional description line shown below **`label`** (row context only, e.g. inside **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**). Ignored when **`label`** is not set.
|
|
2350
|
+
*/
|
|
2351
|
+
"description"?: string;
|
|
2093
2352
|
/**
|
|
2094
2353
|
* If set without **`slot="dropdown"`**, the inner control renders as a native **`<a href>`** (link mode).
|
|
2095
2354
|
*/
|
|
2096
2355
|
"href"?: string;
|
|
2097
2356
|
/**
|
|
2098
|
-
* Icon name from **`@xplortech/apollo-icons`** (shown before the label when **`label`** is set).
|
|
2357
|
+
* Icon name from **`@xplortech/apollo-icons`** (shown before the label when **`label`** is set). Ignored when **`slot="leading-icon"`** content is present.
|
|
2099
2358
|
* @default ''
|
|
2100
2359
|
*/
|
|
2101
2360
|
"icon": string;
|
|
@@ -2107,12 +2366,58 @@ export namespace Components {
|
|
|
2107
2366
|
* Text label. If omitted, use the default slot for custom trigger content. Long labels use **`text-ellipsis`** on **`.xpl-top-nav-item__label`** (see `top-nav.css`); **`title`** is set to the full string for hover tooltips when the visual line clips.
|
|
2108
2367
|
*/
|
|
2109
2368
|
"label"?: string;
|
|
2369
|
+
/**
|
|
2370
|
+
* Whether the **`slot="dropdown"`** panel is open. Reflected to the **`open`** attribute so consumers can drive it (controlled) or read it back (uncontrolled, toggled internally on click / hover / keyboard activation). Prefer **`openMenu()`** / **`closeMenu()`** / **`toggleMenu()`** over setting this directly from event handlers.
|
|
2371
|
+
* @default false
|
|
2372
|
+
*/
|
|
2373
|
+
"open": boolean;
|
|
2374
|
+
/**
|
|
2375
|
+
* No-op when there is no **`slot="dropdown"`** panel to open.
|
|
2376
|
+
*/
|
|
2377
|
+
"openMenu": () => Promise<void>;
|
|
2378
|
+
/**
|
|
2379
|
+
* How the **`slot="dropdown"`** panel opens. **`hover`** is gated on **`TOP_NAV_ITEM_HOVER_OPEN_MQ`** (hover-capable, fine pointer, **`md`** and up) — below that, or on touch / coarse-pointer devices, **`hover`** falls back to click/tap. Keyboard activation (Enter / Space) always toggles regardless of **`openMode`**.
|
|
2380
|
+
* @default 'click'
|
|
2381
|
+
*/
|
|
2382
|
+
"openMode": 'click' | 'hover';
|
|
2110
2383
|
/**
|
|
2111
2384
|
* When true, sets **`aria-current="page"`** and selected styling.
|
|
2112
2385
|
* @default false
|
|
2113
2386
|
*/
|
|
2114
2387
|
"selected": boolean;
|
|
2388
|
+
/**
|
|
2389
|
+
* No-op when there is no **`slot="dropdown"`** panel to open.
|
|
2390
|
+
*/
|
|
2391
|
+
"toggleMenu": () => Promise<void>;
|
|
2392
|
+
}
|
|
2393
|
+
/**
|
|
2394
|
+
* Thin grouping container for **`xpl-top-nav-item`** rows — the panel content for a desktop flyout
|
|
2395
|
+
* (**`slot="dropdown"`** on the parent **`xpl-top-nav-item`**) and, on small screens, the **mobile
|
|
2396
|
+
* cascade**: the same markup drills in to a **Level 2** view in place, with an auto-rendered **back
|
|
2397
|
+
* row** (leading **`chevron-left`** + this component's **`label`**) as the first row. Tapping the back
|
|
2398
|
+
* row closes the parent trigger's dropdown (**`closeMenu()`**), returning to **Level 1** and restoring
|
|
2399
|
+
* focus to the parent trigger. No item logic otherwise lives here — row behavior (icons, description,
|
|
2400
|
+
* links, nested dropdowns) is entirely **`xpl-top-nav-item`**.
|
|
2401
|
+
* **One authoring markup, two renderings:** consumers write this once; **`isMobileCascade`** (synced
|
|
2402
|
+
* from **`TOP_NAV_MOBILE_MQ`**) decides whether the back row renders. Desktop never sees it — the
|
|
2403
|
+
* flyout is a single level of links (see `xpl-top-nav-item`'s cascade-depth notes).
|
|
2404
|
+
* **Panel chrome** is shared with **`xpl-nav-header-menu`** (the account menu): width
|
|
2405
|
+
* (**`--xpl-top-nav-panel-width`**), surface, shadow, radius, and vertical padding all come from the
|
|
2406
|
+
* same selector in `top-nav.css` so the desktop flyout, mobile cascade, and account menu read as one
|
|
2407
|
+
* visual family.
|
|
2408
|
+
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens
|
|
2409
|
+
* resolve to dark-mode values even when the page root is light (consistent with the rest of the
|
|
2410
|
+
* **`xpl-top-nav`** family).
|
|
2411
|
+
*/
|
|
2412
|
+
interface XplTopNavMenu {
|
|
2413
|
+
/**
|
|
2414
|
+
* Accessible name for the list (**`aria-label`** on the host) and the label shown in the mobile cascade back row when drilling back out of this group.
|
|
2415
|
+
*/
|
|
2416
|
+
"label"?: string;
|
|
2115
2417
|
}
|
|
2418
|
+
/**
|
|
2419
|
+
* @since 0.1.1
|
|
2420
|
+
*/
|
|
2116
2421
|
interface XplUtilityBar {
|
|
2117
2422
|
/**
|
|
2118
2423
|
* @property {boolean} - Optional property that defines whether or not the main nav is open at startup.
|
|
@@ -2220,10 +2525,18 @@ export interface XplSideNavCustomEvent<T> extends CustomEvent<T> {
|
|
|
2220
2525
|
detail: T;
|
|
2221
2526
|
target: HTMLXplSideNavElement;
|
|
2222
2527
|
}
|
|
2528
|
+
export interface XplSideNavHeaderItemCustomEvent<T> extends CustomEvent<T> {
|
|
2529
|
+
detail: T;
|
|
2530
|
+
target: HTMLXplSideNavHeaderItemElement;
|
|
2531
|
+
}
|
|
2223
2532
|
export interface XplSideNavItemCustomEvent<T> extends CustomEvent<T> {
|
|
2224
2533
|
detail: T;
|
|
2225
2534
|
target: HTMLXplSideNavItemElement;
|
|
2226
2535
|
}
|
|
2536
|
+
export interface XplSideNavSectionCustomEvent<T> extends CustomEvent<T> {
|
|
2537
|
+
detail: T;
|
|
2538
|
+
target: HTMLXplSideNavSectionElement;
|
|
2539
|
+
}
|
|
2227
2540
|
export interface XplSlideoutCustomEvent<T> extends CustomEvent<T> {
|
|
2228
2541
|
detail: T;
|
|
2229
2542
|
target: HTMLXplSlideoutElement;
|
|
@@ -2269,30 +2582,45 @@ export interface XplUtilityBarCustomEvent<T> extends CustomEvent<T> {
|
|
|
2269
2582
|
target: HTMLXplUtilityBarElement;
|
|
2270
2583
|
}
|
|
2271
2584
|
declare global {
|
|
2585
|
+
/**
|
|
2586
|
+
* @since 2.0.0
|
|
2587
|
+
*/
|
|
2272
2588
|
interface HTMLXplAccordionElement extends Components.XplAccordion, HTMLStencilElement {
|
|
2273
2589
|
}
|
|
2274
2590
|
var HTMLXplAccordionElement: {
|
|
2275
2591
|
prototype: HTMLXplAccordionElement;
|
|
2276
2592
|
new (): HTMLXplAccordionElement;
|
|
2277
2593
|
};
|
|
2594
|
+
/**
|
|
2595
|
+
* @since 0.5.0
|
|
2596
|
+
*/
|
|
2278
2597
|
interface HTMLXplApplicationShellElement extends Components.XplApplicationShell, HTMLStencilElement {
|
|
2279
2598
|
}
|
|
2280
2599
|
var HTMLXplApplicationShellElement: {
|
|
2281
2600
|
prototype: HTMLXplApplicationShellElement;
|
|
2282
2601
|
new (): HTMLXplApplicationShellElement;
|
|
2283
2602
|
};
|
|
2603
|
+
/**
|
|
2604
|
+
* @since 0.1.1
|
|
2605
|
+
*/
|
|
2284
2606
|
interface HTMLXplAvatarElement extends Components.XplAvatar, HTMLStencilElement {
|
|
2285
2607
|
}
|
|
2286
2608
|
var HTMLXplAvatarElement: {
|
|
2287
2609
|
prototype: HTMLXplAvatarElement;
|
|
2288
2610
|
new (): HTMLXplAvatarElement;
|
|
2289
2611
|
};
|
|
2612
|
+
/**
|
|
2613
|
+
* @since 0.1.2
|
|
2614
|
+
*/
|
|
2290
2615
|
interface HTMLXplBackdropElement extends Components.XplBackdrop, HTMLStencilElement {
|
|
2291
2616
|
}
|
|
2292
2617
|
var HTMLXplBackdropElement: {
|
|
2293
2618
|
prototype: HTMLXplBackdropElement;
|
|
2294
2619
|
new (): HTMLXplBackdropElement;
|
|
2295
2620
|
};
|
|
2621
|
+
/**
|
|
2622
|
+
* @since 0.1.1
|
|
2623
|
+
*/
|
|
2296
2624
|
interface HTMLXplBadgeElement extends Components.XplBadge, HTMLStencilElement {
|
|
2297
2625
|
}
|
|
2298
2626
|
var HTMLXplBadgeElement: {
|
|
@@ -2304,6 +2632,9 @@ declare global {
|
|
|
2304
2632
|
"dismiss": void;
|
|
2305
2633
|
"secondaryAction": void;
|
|
2306
2634
|
}
|
|
2635
|
+
/**
|
|
2636
|
+
* @since 2.6.0
|
|
2637
|
+
*/
|
|
2307
2638
|
interface HTMLXplBannerElement extends Components.XplBanner, HTMLStencilElement {
|
|
2308
2639
|
addEventListener<K extends keyof HTMLXplBannerElementEventMap>(type: K, listener: (this: HTMLXplBannerElement, ev: XplBannerCustomEvent<HTMLXplBannerElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2309
2640
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2330,6 +2661,9 @@ declare global {
|
|
|
2330
2661
|
prototype: HTMLXplBreadcrumbsElement;
|
|
2331
2662
|
new (): HTMLXplBreadcrumbsElement;
|
|
2332
2663
|
};
|
|
2664
|
+
/**
|
|
2665
|
+
* @since 0.1.1
|
|
2666
|
+
*/
|
|
2333
2667
|
interface HTMLXplButtonElement extends Components.XplButton, HTMLStencilElement {
|
|
2334
2668
|
}
|
|
2335
2669
|
var HTMLXplButtonElement: {
|
|
@@ -2341,6 +2675,9 @@ declare global {
|
|
|
2341
2675
|
"clickSecondary": any;
|
|
2342
2676
|
"clickTertiary": any;
|
|
2343
2677
|
}
|
|
2678
|
+
/**
|
|
2679
|
+
* @since 0.4.0
|
|
2680
|
+
*/
|
|
2344
2681
|
interface HTMLXplButtonRowElement extends Components.XplButtonRow, HTMLStencilElement {
|
|
2345
2682
|
addEventListener<K extends keyof HTMLXplButtonRowElementEventMap>(type: K, listener: (this: HTMLXplButtonRowElement, ev: XplButtonRowCustomEvent<HTMLXplButtonRowElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2346
2683
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2358,6 +2695,9 @@ declare global {
|
|
|
2358
2695
|
interface HTMLXplCalendarElementEventMap {
|
|
2359
2696
|
"dateSelected": string | string[];
|
|
2360
2697
|
}
|
|
2698
|
+
/**
|
|
2699
|
+
* @since 2.0.0
|
|
2700
|
+
*/
|
|
2361
2701
|
interface HTMLXplCalendarElement extends Components.XplCalendar, HTMLStencilElement {
|
|
2362
2702
|
addEventListener<K extends keyof HTMLXplCalendarElementEventMap>(type: K, listener: (this: HTMLXplCalendarElement, ev: XplCalendarCustomEvent<HTMLXplCalendarElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2363
2703
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2375,6 +2715,9 @@ declare global {
|
|
|
2375
2715
|
interface HTMLXplCheckboxElementEventMap {
|
|
2376
2716
|
"checkboxChange": boolean;
|
|
2377
2717
|
}
|
|
2718
|
+
/**
|
|
2719
|
+
* @since 0.1.1
|
|
2720
|
+
*/
|
|
2378
2721
|
interface HTMLXplCheckboxElement extends Components.XplCheckbox, HTMLStencilElement {
|
|
2379
2722
|
addEventListener<K extends keyof HTMLXplCheckboxElementEventMap>(type: K, listener: (this: HTMLXplCheckboxElement, ev: XplCheckboxCustomEvent<HTMLXplCheckboxElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2380
2723
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2393,6 +2736,9 @@ declare global {
|
|
|
2393
2736
|
"choicelistChange": boolean[];
|
|
2394
2737
|
"choicelistValueChange": string | boolean | (string | boolean)[];
|
|
2395
2738
|
}
|
|
2739
|
+
/**
|
|
2740
|
+
* @since 0.1.1
|
|
2741
|
+
*/
|
|
2396
2742
|
interface HTMLXplChoicelistElement extends Components.XplChoicelist, HTMLStencilElement {
|
|
2397
2743
|
addEventListener<K extends keyof HTMLXplChoicelistElementEventMap>(type: K, listener: (this: HTMLXplChoicelistElement, ev: XplChoicelistCustomEvent<HTMLXplChoicelistElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2398
2744
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2407,24 +2753,36 @@ declare global {
|
|
|
2407
2753
|
prototype: HTMLXplChoicelistElement;
|
|
2408
2754
|
new (): HTMLXplChoicelistElement;
|
|
2409
2755
|
};
|
|
2756
|
+
/**
|
|
2757
|
+
* @since 0.1.2
|
|
2758
|
+
*/
|
|
2410
2759
|
interface HTMLXplContentAreaElement extends Components.XplContentArea, HTMLStencilElement {
|
|
2411
2760
|
}
|
|
2412
2761
|
var HTMLXplContentAreaElement: {
|
|
2413
2762
|
prototype: HTMLXplContentAreaElement;
|
|
2414
2763
|
new (): HTMLXplContentAreaElement;
|
|
2415
2764
|
};
|
|
2765
|
+
/**
|
|
2766
|
+
* @since 1.0.0
|
|
2767
|
+
*/
|
|
2416
2768
|
interface HTMLXplDashboardElement extends Components.XplDashboard, HTMLStencilElement {
|
|
2417
2769
|
}
|
|
2418
2770
|
var HTMLXplDashboardElement: {
|
|
2419
2771
|
prototype: HTMLXplDashboardElement;
|
|
2420
2772
|
new (): HTMLXplDashboardElement;
|
|
2421
2773
|
};
|
|
2774
|
+
/**
|
|
2775
|
+
* @since 1.0.0
|
|
2776
|
+
*/
|
|
2422
2777
|
interface HTMLXplDataCardElement extends Components.XplDataCard, HTMLStencilElement {
|
|
2423
2778
|
}
|
|
2424
2779
|
var HTMLXplDataCardElement: {
|
|
2425
2780
|
prototype: HTMLXplDataCardElement;
|
|
2426
2781
|
new (): HTMLXplDataCardElement;
|
|
2427
2782
|
};
|
|
2783
|
+
/**
|
|
2784
|
+
* @since 0.3.0
|
|
2785
|
+
*/
|
|
2428
2786
|
interface HTMLXplDividerElement extends Components.XplDivider, HTMLStencilElement {
|
|
2429
2787
|
}
|
|
2430
2788
|
var HTMLXplDividerElement: {
|
|
@@ -2434,6 +2792,9 @@ declare global {
|
|
|
2434
2792
|
interface HTMLXplDropdownElementEventMap {
|
|
2435
2793
|
"isOpenChange": boolean;
|
|
2436
2794
|
}
|
|
2795
|
+
/**
|
|
2796
|
+
* @since 0.4.0
|
|
2797
|
+
*/
|
|
2437
2798
|
interface HTMLXplDropdownElement extends Components.XplDropdown, HTMLStencilElement {
|
|
2438
2799
|
addEventListener<K extends keyof HTMLXplDropdownElementEventMap>(type: K, listener: (this: HTMLXplDropdownElement, ev: XplDropdownCustomEvent<HTMLXplDropdownElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2439
2800
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2469,6 +2830,9 @@ declare global {
|
|
|
2469
2830
|
interface HTMLXplDynamicTableElementEventMap {
|
|
2470
2831
|
"selectedItemCountChange": string[];
|
|
2471
2832
|
}
|
|
2833
|
+
/**
|
|
2834
|
+
* @since 1.4.0
|
|
2835
|
+
*/
|
|
2472
2836
|
interface HTMLXplDynamicTableElement extends Components.XplDynamicTable, HTMLStencilElement {
|
|
2473
2837
|
addEventListener<K extends keyof HTMLXplDynamicTableElementEventMap>(type: K, listener: (this: HTMLXplDynamicTableElement, ev: XplDynamicTableCustomEvent<HTMLXplDynamicTableElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2474
2838
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2483,36 +2847,54 @@ declare global {
|
|
|
2483
2847
|
prototype: HTMLXplDynamicTableElement;
|
|
2484
2848
|
new (): HTMLXplDynamicTableElement;
|
|
2485
2849
|
};
|
|
2850
|
+
/**
|
|
2851
|
+
* @since 1.3.0
|
|
2852
|
+
*/
|
|
2486
2853
|
interface HTMLXplDynamicTableCellElement extends Components.XplDynamicTableCell, HTMLStencilElement {
|
|
2487
2854
|
}
|
|
2488
2855
|
var HTMLXplDynamicTableCellElement: {
|
|
2489
2856
|
prototype: HTMLXplDynamicTableCellElement;
|
|
2490
2857
|
new (): HTMLXplDynamicTableCellElement;
|
|
2491
2858
|
};
|
|
2859
|
+
/**
|
|
2860
|
+
* @since 1.3.0
|
|
2861
|
+
*/
|
|
2492
2862
|
interface HTMLXplDynamicTableRowElement extends Components.XplDynamicTableRow, HTMLStencilElement {
|
|
2493
2863
|
}
|
|
2494
2864
|
var HTMLXplDynamicTableRowElement: {
|
|
2495
2865
|
prototype: HTMLXplDynamicTableRowElement;
|
|
2496
2866
|
new (): HTMLXplDynamicTableRowElement;
|
|
2497
2867
|
};
|
|
2868
|
+
/**
|
|
2869
|
+
* @since 0.4.0
|
|
2870
|
+
*/
|
|
2498
2871
|
interface HTMLXplGridElement extends Components.XplGrid, HTMLStencilElement {
|
|
2499
2872
|
}
|
|
2500
2873
|
var HTMLXplGridElement: {
|
|
2501
2874
|
prototype: HTMLXplGridElement;
|
|
2502
2875
|
new (): HTMLXplGridElement;
|
|
2503
2876
|
};
|
|
2877
|
+
/**
|
|
2878
|
+
* @since 0.4.0
|
|
2879
|
+
*/
|
|
2504
2880
|
interface HTMLXplGridItemElement extends Components.XplGridItem, HTMLStencilElement {
|
|
2505
2881
|
}
|
|
2506
2882
|
var HTMLXplGridItemElement: {
|
|
2507
2883
|
prototype: HTMLXplGridItemElement;
|
|
2508
2884
|
new (): HTMLXplGridItemElement;
|
|
2509
2885
|
};
|
|
2886
|
+
/**
|
|
2887
|
+
* @since 1.2.0
|
|
2888
|
+
*/
|
|
2510
2889
|
interface HTMLXplHeaderAccordionElement extends Components.XplHeaderAccordion, HTMLStencilElement {
|
|
2511
2890
|
}
|
|
2512
2891
|
var HTMLXplHeaderAccordionElement: {
|
|
2513
2892
|
prototype: HTMLXplHeaderAccordionElement;
|
|
2514
2893
|
new (): HTMLXplHeaderAccordionElement;
|
|
2515
2894
|
};
|
|
2895
|
+
/**
|
|
2896
|
+
* @since 1.0.0
|
|
2897
|
+
*/
|
|
2516
2898
|
interface HTMLXplIconElement extends Components.XplIcon, HTMLStencilElement {
|
|
2517
2899
|
}
|
|
2518
2900
|
var HTMLXplIconElement: {
|
|
@@ -2526,6 +2908,9 @@ declare global {
|
|
|
2526
2908
|
"search": string;
|
|
2527
2909
|
"valueChange": string;
|
|
2528
2910
|
}
|
|
2911
|
+
/**
|
|
2912
|
+
* @since 0.3.0
|
|
2913
|
+
*/
|
|
2529
2914
|
interface HTMLXplInputElement extends Components.XplInput, HTMLStencilElement {
|
|
2530
2915
|
addEventListener<K extends keyof HTMLXplInputElementEventMap>(type: K, listener: (this: HTMLXplInputElement, ev: XplInputCustomEvent<HTMLXplInputElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2531
2916
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2657,6 +3042,9 @@ declare global {
|
|
|
2657
3042
|
prototype: HTMLXplInputTimeElement;
|
|
2658
3043
|
new (): HTMLXplInputTimeElement;
|
|
2659
3044
|
};
|
|
3045
|
+
/**
|
|
3046
|
+
* @since 1.9.1
|
|
3047
|
+
*/
|
|
2660
3048
|
interface HTMLXplLargeCardElement extends Components.XplLargeCard, HTMLStencilElement {
|
|
2661
3049
|
}
|
|
2662
3050
|
var HTMLXplLargeCardElement: {
|
|
@@ -2667,6 +3055,9 @@ declare global {
|
|
|
2667
3055
|
"itemSelect": { itemId?: string };
|
|
2668
3056
|
"orderChange": XplListOrderChangeDetail;
|
|
2669
3057
|
}
|
|
3058
|
+
/**
|
|
3059
|
+
* @since 0.4.0
|
|
3060
|
+
*/
|
|
2670
3061
|
interface HTMLXplListElement extends Components.XplList, HTMLStencilElement {
|
|
2671
3062
|
addEventListener<K extends keyof HTMLXplListElementEventMap>(type: K, listener: (this: HTMLXplListElement, ev: XplListCustomEvent<HTMLXplListElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2672
3063
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2704,6 +3095,9 @@ declare global {
|
|
|
2704
3095
|
interface HTMLXplMainNavElementEventMap {
|
|
2705
3096
|
"navWidth": string;
|
|
2706
3097
|
}
|
|
3098
|
+
/**
|
|
3099
|
+
* @since 0.1.2
|
|
3100
|
+
*/
|
|
2707
3101
|
interface HTMLXplMainNavElement extends Components.XplMainNav, HTMLStencilElement {
|
|
2708
3102
|
addEventListener<K extends keyof HTMLXplMainNavElementEventMap>(type: K, listener: (this: HTMLXplMainNavElement, ev: XplMainNavCustomEvent<HTMLXplMainNavElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2709
3103
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2721,6 +3115,9 @@ declare global {
|
|
|
2721
3115
|
interface HTMLXplModalElementEventMap {
|
|
2722
3116
|
"modalClosed": void;
|
|
2723
3117
|
}
|
|
3118
|
+
/**
|
|
3119
|
+
* @since 1.1.0
|
|
3120
|
+
*/
|
|
2724
3121
|
interface HTMLXplModalElement extends Components.XplModal, HTMLStencilElement {
|
|
2725
3122
|
addEventListener<K extends keyof HTMLXplModalElementEventMap>(type: K, listener: (this: HTMLXplModalElement, ev: XplModalCustomEvent<HTMLXplModalElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2726
3123
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2762,6 +3159,9 @@ declare global {
|
|
|
2762
3159
|
interface HTMLXplNavItemElementEventMap {
|
|
2763
3160
|
"navOpen": boolean;
|
|
2764
3161
|
}
|
|
3162
|
+
/**
|
|
3163
|
+
* @since 0.1.2
|
|
3164
|
+
*/
|
|
2765
3165
|
interface HTMLXplNavItemElement extends Components.XplNavItem, HTMLStencilElement {
|
|
2766
3166
|
addEventListener<K extends keyof HTMLXplNavItemElementEventMap>(type: K, listener: (this: HTMLXplNavItemElement, ev: XplNavItemCustomEvent<HTMLXplNavItemElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2767
3167
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2780,6 +3180,9 @@ declare global {
|
|
|
2780
3180
|
"pageChange": number;
|
|
2781
3181
|
"rowsPerPageChange": number;
|
|
2782
3182
|
}
|
|
3183
|
+
/**
|
|
3184
|
+
* @since 0.1.1
|
|
3185
|
+
*/
|
|
2783
3186
|
interface HTMLXplPaginationElement extends Components.XplPagination, HTMLStencilElement {
|
|
2784
3187
|
addEventListener<K extends keyof HTMLXplPaginationElementEventMap>(type: K, listener: (this: HTMLXplPaginationElement, ev: XplPaginationCustomEvent<HTMLXplPaginationElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2785
3188
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2797,6 +3200,7 @@ declare global {
|
|
|
2797
3200
|
/**
|
|
2798
3201
|
* A stateless container that defines a section on a page and can house any
|
|
2799
3202
|
* type of content. Panels are not dismissible and may contain a top accent.
|
|
3203
|
+
* @since 2.6.0
|
|
2800
3204
|
*/
|
|
2801
3205
|
interface HTMLXplPanelElement extends Components.XplPanel, HTMLStencilElement {
|
|
2802
3206
|
}
|
|
@@ -2807,6 +3211,9 @@ declare global {
|
|
|
2807
3211
|
interface HTMLXplPopoverElementEventMap {
|
|
2808
3212
|
"isOpenChange": boolean;
|
|
2809
3213
|
}
|
|
3214
|
+
/**
|
|
3215
|
+
* @since 2.0.0
|
|
3216
|
+
*/
|
|
2810
3217
|
interface HTMLXplPopoverElement extends Components.XplPopover, HTMLStencilElement {
|
|
2811
3218
|
addEventListener<K extends keyof HTMLXplPopoverElementEventMap>(type: K, listener: (this: HTMLXplPopoverElement, ev: XplPopoverCustomEvent<HTMLXplPopoverElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2812
3219
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2821,12 +3228,18 @@ declare global {
|
|
|
2821
3228
|
prototype: HTMLXplPopoverElement;
|
|
2822
3229
|
new (): HTMLXplPopoverElement;
|
|
2823
3230
|
};
|
|
3231
|
+
/**
|
|
3232
|
+
* @since 2.6.0
|
|
3233
|
+
*/
|
|
2824
3234
|
interface HTMLXplProgressBarElement extends Components.XplProgressBar, HTMLStencilElement {
|
|
2825
3235
|
}
|
|
2826
3236
|
var HTMLXplProgressBarElement: {
|
|
2827
3237
|
prototype: HTMLXplProgressBarElement;
|
|
2828
3238
|
new (): HTMLXplProgressBarElement;
|
|
2829
3239
|
};
|
|
3240
|
+
/**
|
|
3241
|
+
* @since 2.7.0
|
|
3242
|
+
*/
|
|
2830
3243
|
interface HTMLXplProgressIndicatorElement extends Components.XplProgressIndicator, HTMLStencilElement {
|
|
2831
3244
|
}
|
|
2832
3245
|
var HTMLXplProgressIndicatorElement: {
|
|
@@ -2836,6 +3249,9 @@ declare global {
|
|
|
2836
3249
|
interface HTMLXplRadioElementEventMap {
|
|
2837
3250
|
"radioChange": string | boolean;
|
|
2838
3251
|
}
|
|
3252
|
+
/**
|
|
3253
|
+
* @since 0.1.1
|
|
3254
|
+
*/
|
|
2839
3255
|
interface HTMLXplRadioElement extends Components.XplRadio, HTMLStencilElement {
|
|
2840
3256
|
addEventListener<K extends keyof HTMLXplRadioElementEventMap>(type: K, listener: (this: HTMLXplRadioElement, ev: XplRadioCustomEvent<HTMLXplRadioElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2841
3257
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2850,6 +3266,9 @@ declare global {
|
|
|
2850
3266
|
prototype: HTMLXplRadioElement;
|
|
2851
3267
|
new (): HTMLXplRadioElement;
|
|
2852
3268
|
};
|
|
3269
|
+
/**
|
|
3270
|
+
* @since 0.3.0
|
|
3271
|
+
*/
|
|
2853
3272
|
interface HTMLXplSecondaryNavElement extends Components.XplSecondaryNav, HTMLStencilElement {
|
|
2854
3273
|
}
|
|
2855
3274
|
var HTMLXplSecondaryNavElement: {
|
|
@@ -2865,6 +3284,9 @@ declare global {
|
|
|
2865
3284
|
nextState: boolean;
|
|
2866
3285
|
};
|
|
2867
3286
|
}
|
|
3287
|
+
/**
|
|
3288
|
+
* @since 0.4.0
|
|
3289
|
+
*/
|
|
2868
3290
|
interface HTMLXplSelectElement extends Components.XplSelect, HTMLStencilElement {
|
|
2869
3291
|
addEventListener<K extends keyof HTMLXplSelectElementEventMap>(type: K, listener: (this: HTMLXplSelectElement, ev: XplSelectCustomEvent<HTMLXplSelectElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2870
3292
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2883,8 +3305,8 @@ declare global {
|
|
|
2883
3305
|
"openChange": boolean;
|
|
2884
3306
|
}
|
|
2885
3307
|
/**
|
|
2886
|
-
* Slot-based sidebar for app navigation: a scrollable
|
|
2887
|
-
* `nav-footer`. Compose with `xpl-side-nav-item` for rows.
|
|
3308
|
+
* Slot-based sidebar for app navigation: a scrollable `nav-header` + `section`
|
|
3309
|
+
* area and a fixed `nav-footer`. Compose with `xpl-side-nav-item` for rows.
|
|
2888
3310
|
* **Mobile (v2):** below the Tailwind `md` breakpoint, the sidebar collapses to a
|
|
2889
3311
|
* ~56px top bar with a toggle button (`sidebar-left-show` / `sidebar-left-hide`).
|
|
2890
3312
|
* Activating the toggle opens a drawer containing the `section` + `nav-footer`
|
|
@@ -2896,6 +3318,7 @@ declare global {
|
|
|
2896
3318
|
* the `openChange` event, and the `toggle()` / `setOpen()` methods.
|
|
2897
3319
|
* **v2 breaking change (beta):** consumers who wrapped their own mobile toggle
|
|
2898
3320
|
* around `xpl-side-nav` should remove it — the toggle and drawer are now built in.
|
|
3321
|
+
* @since 2.6.0
|
|
2899
3322
|
*/
|
|
2900
3323
|
interface HTMLXplSideNavElement extends Components.XplSideNav, HTMLStencilElement {
|
|
2901
3324
|
addEventListener<K extends keyof HTMLXplSideNavElementEventMap>(type: K, listener: (this: HTMLXplSideNavElement, ev: XplSideNavCustomEvent<HTMLXplSideNavElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2911,9 +3334,49 @@ declare global {
|
|
|
2911
3334
|
prototype: HTMLXplSideNavElement;
|
|
2912
3335
|
new (): HTMLXplSideNavElement;
|
|
2913
3336
|
};
|
|
3337
|
+
interface HTMLXplSideNavHeaderItemElementEventMap {
|
|
3338
|
+
"navigate": void;
|
|
3339
|
+
}
|
|
3340
|
+
/**
|
|
3341
|
+
* Header row for `xpl-side-nav`'s `nav-header` slot (Figma `<navHeaderItem>`,
|
|
3342
|
+
* node `51299-9007`). Two types:
|
|
3343
|
+
* - **`product-label` (default)** — a non-interactive `<div>` row that shows the
|
|
3344
|
+
* current product/area name in a subdued color. No click behavior.
|
|
3345
|
+
* - **`sub-account`** — an interactive `<button>` row (e.g. a location / account
|
|
3346
|
+
* switcher). Emits `navigate` on activation (pointer click or keyboard); the
|
|
3347
|
+
* consumer wires this to open a modal or other entity-switching experience.
|
|
3348
|
+
* When no `slot="trailing"` content is provided, an auto chevron
|
|
3349
|
+
* (`chevron-expand-y`, a static dual-arrow glyph — no rotation) renders by default.
|
|
3350
|
+
* Both types support `slot="leading"` / `slot="trailing"` (the `icon` prop is a
|
|
3351
|
+
* convenience shorthand for `slot="leading"`, same as `xpl-side-nav-item`) so they
|
|
3352
|
+
* can scale to future uses. Unlike `xpl-side-nav-item`, the leading/trailing
|
|
3353
|
+
* columns are NOT unconditionally reserved — they only render when there is
|
|
3354
|
+
* content, matching the Figma variants where the leading icon is an optional toggle.
|
|
3355
|
+
* **Note on the `sub-account` hover / selected visual:** the interactive row
|
|
3356
|
+
* mirrors `xpl-side-nav-item` — the hover and selected backgrounds fill a single
|
|
3357
|
+
* `__content` pill that wraps the leading icon + label + trailing chevron, with
|
|
3358
|
+
* an 8px (`--xpl-border-radius-default`) radius. The pill insets 8px from the nav
|
|
3359
|
+
* edge (an 8px gutter on the button) so it lines up with the item rows below it,
|
|
3360
|
+
* and hover/selected therefore highlight the whole row content rather than a
|
|
3361
|
+
* partial fragment.
|
|
3362
|
+
*/
|
|
3363
|
+
interface HTMLXplSideNavHeaderItemElement extends Components.XplSideNavHeaderItem, HTMLStencilElement {
|
|
3364
|
+
addEventListener<K extends keyof HTMLXplSideNavHeaderItemElementEventMap>(type: K, listener: (this: HTMLXplSideNavHeaderItemElement, ev: XplSideNavHeaderItemCustomEvent<HTMLXplSideNavHeaderItemElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3365
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3366
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3367
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
3368
|
+
removeEventListener<K extends keyof HTMLXplSideNavHeaderItemElementEventMap>(type: K, listener: (this: HTMLXplSideNavHeaderItemElement, ev: XplSideNavHeaderItemCustomEvent<HTMLXplSideNavHeaderItemElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
3369
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
3370
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
3371
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
3372
|
+
}
|
|
3373
|
+
var HTMLXplSideNavHeaderItemElement: {
|
|
3374
|
+
prototype: HTMLXplSideNavHeaderItemElement;
|
|
3375
|
+
new (): HTMLXplSideNavHeaderItemElement;
|
|
3376
|
+
};
|
|
2914
3377
|
interface HTMLXplSideNavItemElementEventMap {
|
|
2915
3378
|
"expandedChange": boolean;
|
|
2916
|
-
"
|
|
3379
|
+
"navigate": void;
|
|
2917
3380
|
}
|
|
2918
3381
|
/**
|
|
2919
3382
|
* Navigation row for `xpl-side-nav`. Renders a button (default) or a slot-only
|
|
@@ -2953,7 +3416,43 @@ declare global {
|
|
|
2953
3416
|
prototype: HTMLXplSideNavItemElement;
|
|
2954
3417
|
new (): HTMLXplSideNavItemElement;
|
|
2955
3418
|
};
|
|
2956
|
-
interface
|
|
3419
|
+
interface HTMLXplSideNavSectionElementEventMap {
|
|
3420
|
+
"expandedChange": boolean;
|
|
3421
|
+
}
|
|
3422
|
+
/**
|
|
3423
|
+
* Grouping / accordion header for `xpl-side-nav`. Wraps nested `xpl-side-nav-item`
|
|
3424
|
+
* (and optional divider separators) elements in the default slot and collapses
|
|
3425
|
+
* them as a unit.
|
|
3426
|
+
* Two variants:
|
|
3427
|
+
* - **Collapsible (default, `collapsible=true`)** — a `<button>` header with a
|
|
3428
|
+
* chevron (`chevron-right` collapsed / `chevron-down` expanded, no rotation —
|
|
3429
|
+
* the glyph itself swaps). Click toggles `expanded` and emits `expandedChange`.
|
|
3430
|
+
* - **Static (`collapsible=false`)** — a non-interactive title row with no chevron;
|
|
3431
|
+
* children are always shown. Used for a static section label (e.g. a future
|
|
3432
|
+
* product-name / location-changer header).
|
|
3433
|
+
* Unlike `xpl-side-nav-item[has-children]`, section children are **not indented**
|
|
3434
|
+
* — they align with top-level items at the same leading-icon column.
|
|
3435
|
+
* `slot="badge"` renders an optional badge (e.g. `xpl-badge`) in the header title
|
|
3436
|
+
* row. The wrapper is suppressed when the slot is empty.
|
|
3437
|
+
*/
|
|
3438
|
+
interface HTMLXplSideNavSectionElement extends Components.XplSideNavSection, HTMLStencilElement {
|
|
3439
|
+
addEventListener<K extends keyof HTMLXplSideNavSectionElementEventMap>(type: K, listener: (this: HTMLXplSideNavSectionElement, ev: XplSideNavSectionCustomEvent<HTMLXplSideNavSectionElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3440
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3441
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3442
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
3443
|
+
removeEventListener<K extends keyof HTMLXplSideNavSectionElementEventMap>(type: K, listener: (this: HTMLXplSideNavSectionElement, ev: XplSideNavSectionCustomEvent<HTMLXplSideNavSectionElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
3444
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
3445
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
3446
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
3447
|
+
}
|
|
3448
|
+
var HTMLXplSideNavSectionElement: {
|
|
3449
|
+
prototype: HTMLXplSideNavSectionElement;
|
|
3450
|
+
new (): HTMLXplSideNavSectionElement;
|
|
3451
|
+
};
|
|
3452
|
+
/**
|
|
3453
|
+
* @since 2.3.6
|
|
3454
|
+
*/
|
|
3455
|
+
interface HTMLXplSkeletonElement extends Components.XplSkeleton, HTMLStencilElement {
|
|
2957
3456
|
}
|
|
2958
3457
|
var HTMLXplSkeletonElement: {
|
|
2959
3458
|
prototype: HTMLXplSkeletonElement;
|
|
@@ -2962,6 +3461,9 @@ declare global {
|
|
|
2962
3461
|
interface HTMLXplSlideoutElementEventMap {
|
|
2963
3462
|
"isOpenChange": boolean;
|
|
2964
3463
|
}
|
|
3464
|
+
/**
|
|
3465
|
+
* @since 1.1.0
|
|
3466
|
+
*/
|
|
2965
3467
|
interface HTMLXplSlideoutElement extends Components.XplSlideout, HTMLStencilElement {
|
|
2966
3468
|
addEventListener<K extends keyof HTMLXplSlideoutElementEventMap>(type: K, listener: (this: HTMLXplSlideoutElement, ev: XplSlideoutCustomEvent<HTMLXplSlideoutElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2967
3469
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2982,6 +3484,9 @@ declare global {
|
|
|
2982
3484
|
"secondaryAction": void;
|
|
2983
3485
|
"targetClick": void;
|
|
2984
3486
|
}
|
|
3487
|
+
/**
|
|
3488
|
+
* @since 2.7.0
|
|
3489
|
+
*/
|
|
2985
3490
|
interface HTMLXplSpotlightElement extends Components.XplSpotlight, HTMLStencilElement {
|
|
2986
3491
|
addEventListener<K extends keyof HTMLXplSpotlightElementEventMap>(type: K, listener: (this: HTMLXplSpotlightElement, ev: XplSpotlightCustomEvent<HTMLXplSpotlightElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
2987
3492
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -2999,6 +3504,9 @@ declare global {
|
|
|
2999
3504
|
interface HTMLXplTabElementEventMap {
|
|
3000
3505
|
"tabChange": string;
|
|
3001
3506
|
}
|
|
3507
|
+
/**
|
|
3508
|
+
* @since 2.3.8
|
|
3509
|
+
*/
|
|
3002
3510
|
interface HTMLXplTabElement extends Components.XplTab, HTMLStencilElement {
|
|
3003
3511
|
addEventListener<K extends keyof HTMLXplTabElementEventMap>(type: K, listener: (this: HTMLXplTabElement, ev: XplTabCustomEvent<HTMLXplTabElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3004
3512
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -3013,6 +3521,9 @@ declare global {
|
|
|
3013
3521
|
prototype: HTMLXplTabElement;
|
|
3014
3522
|
new (): HTMLXplTabElement;
|
|
3015
3523
|
};
|
|
3524
|
+
/**
|
|
3525
|
+
* @since 2.3.8
|
|
3526
|
+
*/
|
|
3016
3527
|
interface HTMLXplTabPanelElement extends Components.XplTabPanel, HTMLStencilElement {
|
|
3017
3528
|
}
|
|
3018
3529
|
var HTMLXplTabPanelElement: {
|
|
@@ -3024,9 +3535,12 @@ declare global {
|
|
|
3024
3535
|
"sortChanged": {
|
|
3025
3536
|
colNum: number;
|
|
3026
3537
|
colName: string;
|
|
3027
|
-
sortTypeArr:
|
|
3538
|
+
sortTypeArr: ('asc' | 'desc' | null)[];
|
|
3028
3539
|
};
|
|
3029
3540
|
}
|
|
3541
|
+
/**
|
|
3542
|
+
* @since 0.1.1
|
|
3543
|
+
*/
|
|
3030
3544
|
interface HTMLXplTableElement extends Components.XplTable, HTMLStencilElement {
|
|
3031
3545
|
addEventListener<K extends keyof HTMLXplTableElementEventMap>(type: K, listener: (this: HTMLXplTableElement, ev: XplTableCustomEvent<HTMLXplTableElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3032
3546
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -3041,6 +3555,9 @@ declare global {
|
|
|
3041
3555
|
prototype: HTMLXplTableElement;
|
|
3042
3556
|
new (): HTMLXplTableElement;
|
|
3043
3557
|
};
|
|
3558
|
+
/**
|
|
3559
|
+
* @since 1.0.0
|
|
3560
|
+
*/
|
|
3044
3561
|
interface HTMLXplTableHeaderElement extends Components.XplTableHeader, HTMLStencilElement {
|
|
3045
3562
|
}
|
|
3046
3563
|
var HTMLXplTableHeaderElement: {
|
|
@@ -3050,6 +3567,9 @@ declare global {
|
|
|
3050
3567
|
interface HTMLXplTableHeaderCellElementEventMap {
|
|
3051
3568
|
"sortChanged": 'asc' | 'desc' | 'none';
|
|
3052
3569
|
}
|
|
3570
|
+
/**
|
|
3571
|
+
* @since 1.3.0
|
|
3572
|
+
*/
|
|
3053
3573
|
interface HTMLXplTableHeaderCellElement extends Components.XplTableHeaderCell, HTMLStencilElement {
|
|
3054
3574
|
addEventListener<K extends keyof HTMLXplTableHeaderCellElementEventMap>(type: K, listener: (this: HTMLXplTableHeaderCellElement, ev: XplTableHeaderCellCustomEvent<HTMLXplTableHeaderCellElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3055
3575
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -3067,6 +3587,9 @@ declare global {
|
|
|
3067
3587
|
interface HTMLXplTabsElementEventMap {
|
|
3068
3588
|
"tabChange": string;
|
|
3069
3589
|
}
|
|
3590
|
+
/**
|
|
3591
|
+
* @since 2.3.8
|
|
3592
|
+
*/
|
|
3070
3593
|
interface HTMLXplTabsElement extends Components.XplTabs, HTMLStencilElement {
|
|
3071
3594
|
addEventListener<K extends keyof HTMLXplTabsElementEventMap>(type: K, listener: (this: HTMLXplTabsElement, ev: XplTabsCustomEvent<HTMLXplTabsElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3072
3595
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -3087,6 +3610,9 @@ declare global {
|
|
|
3087
3610
|
"tagDragStart": TagDragStartDetail;
|
|
3088
3611
|
"tagRemove": void;
|
|
3089
3612
|
}
|
|
3613
|
+
/**
|
|
3614
|
+
* @since 0.4.0
|
|
3615
|
+
*/
|
|
3090
3616
|
interface HTMLXplTagElement extends Components.XplTag, HTMLStencilElement {
|
|
3091
3617
|
addEventListener<K extends keyof HTMLXplTagElementEventMap>(type: K, listener: (this: HTMLXplTagElement, ev: XplTagCustomEvent<HTMLXplTagElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3092
3618
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -3101,6 +3627,9 @@ declare global {
|
|
|
3101
3627
|
prototype: HTMLXplTagElement;
|
|
3102
3628
|
new (): HTMLXplTagElement;
|
|
3103
3629
|
};
|
|
3630
|
+
/**
|
|
3631
|
+
* @since 1.2.0
|
|
3632
|
+
*/
|
|
3104
3633
|
interface HTMLXplToastElement extends Components.XplToast, HTMLStencilElement {
|
|
3105
3634
|
}
|
|
3106
3635
|
var HTMLXplToastElement: {
|
|
@@ -3110,6 +3639,9 @@ declare global {
|
|
|
3110
3639
|
interface HTMLXplToggleElementEventMap {
|
|
3111
3640
|
"toggleChange": boolean;
|
|
3112
3641
|
}
|
|
3642
|
+
/**
|
|
3643
|
+
* @since 0.3.0
|
|
3644
|
+
*/
|
|
3113
3645
|
interface HTMLXplToggleElement extends Components.XplToggle, HTMLStencilElement {
|
|
3114
3646
|
addEventListener<K extends keyof HTMLXplToggleElementEventMap>(type: K, listener: (this: HTMLXplToggleElement, ev: XplToggleCustomEvent<HTMLXplToggleElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3115
3647
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -3124,12 +3656,18 @@ declare global {
|
|
|
3124
3656
|
prototype: HTMLXplToggleElement;
|
|
3125
3657
|
new (): HTMLXplToggleElement;
|
|
3126
3658
|
};
|
|
3659
|
+
/**
|
|
3660
|
+
* @since 1.2.0
|
|
3661
|
+
*/
|
|
3127
3662
|
interface HTMLXplToolbarElement extends Components.XplToolbar, HTMLStencilElement {
|
|
3128
3663
|
}
|
|
3129
3664
|
var HTMLXplToolbarElement: {
|
|
3130
3665
|
prototype: HTMLXplToolbarElement;
|
|
3131
3666
|
new (): HTMLXplToolbarElement;
|
|
3132
3667
|
};
|
|
3668
|
+
/**
|
|
3669
|
+
* @since 1.7.0
|
|
3670
|
+
*/
|
|
3133
3671
|
interface HTMLXplTooltipElement extends Components.XplTooltip, HTMLStencilElement {
|
|
3134
3672
|
}
|
|
3135
3673
|
var HTMLXplTooltipElement: {
|
|
@@ -3145,6 +3683,7 @@ declare global {
|
|
|
3145
3683
|
* (see **`.xpl-top-nav__right-rail`** in `render()`). The account menu uses an internal **`xpl-popover`** (**`bottom-end`**, **`display="menu"`**): built-in trigger uses **`child-account-label`** (prop / attribute) as the label beside a trailing **`chevron-down`** on **`xpl-button`** (**`icon`** / **`iconPosition="end"`**), or **`slot="user-menu-trigger"`** for a custom trigger; panel from **`slot="user-menu"`** (e.g. **`xpl-nav-header-menu`**).
|
|
3146
3684
|
* Optional **`nav-control`** and **`navOpen`**. **`left-aside`** uses **`role="list"`** for primary **`xpl-top-nav-item`** rows (**`role="listitem"`** on each item host). The built-in **`xpl-top-nav__brand`** item omits **`listitem`** (it is not a child of that list). **`label`** maps to **`nav`** **`aria-label`**. Opening state is internal (not a prop) — use **`navOpen`** and host **`xpl-top-nav--open`** for styling.
|
|
3147
3685
|
* **Escape:** With **`nav-control`**, **Escape** closes the mobile drawer and emits **`navOpen`** **`false`** (skips while **any** descendant **`xpl-popover`** is open — detected from each popover’s inner **`.xpl-popover--is-open`** marker — or when a **`xpl-top-nav-item`** dropdown is open — capture/bubble order). Focus returns to the nav toggle after the drawer closes (**Escape** or second toggle click).
|
|
3686
|
+
* **Outside click:** With **`nav-control`**, a click outside the drawer panel (**`.xpl-top-nav__left-primary`**) also closes it and emits **`navOpen`** **`false`** (document **capture**, mirroring **`xpl-top-nav-item`**); it skips clicks on the hamburger toggle and while a descendant **`xpl-popover`** is open, and does not move focus.
|
|
3148
3687
|
* **`xpl-top-nav-item`** **`slot="dropdown"`** uses document **capture** for **Escape** first; the shell uses **bubble**
|
|
3149
3688
|
* on **`ownerDocument`** so nested dropdowns close before the drawer.
|
|
3150
3689
|
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens under this subtree
|
|
@@ -3161,6 +3700,7 @@ declare global {
|
|
|
3161
3700
|
* **`slot="right-aside-mobile"`** (below profile, above the list; narrow-only CSS in **`top-nav.css`**) per Figma.
|
|
3162
3701
|
* **Account menu vs drawer:** Opening the built-in account **`xpl-popover`** while the mobile drawer is open **closes the drawer**
|
|
3163
3702
|
* and emits **`navOpen(false)`** so the two layers do not stack.
|
|
3703
|
+
* @since 2.7.0
|
|
3164
3704
|
*/
|
|
3165
3705
|
interface HTMLXplTopNavElement extends Components.XplTopNav, HTMLStencilElement {
|
|
3166
3706
|
addEventListener<K extends keyof HTMLXplTopNavElementEventMap>(type: K, listener: (this: HTMLXplTopNavElement, ev: XplTopNavCustomEvent<HTMLXplTopNavElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -3178,18 +3718,22 @@ declare global {
|
|
|
3178
3718
|
};
|
|
3179
3719
|
interface HTMLXplTopNavItemElementEventMap {
|
|
3180
3720
|
"navItemClick": MouseEvent;
|
|
3721
|
+
"openChange": boolean;
|
|
3181
3722
|
}
|
|
3182
3723
|
/**
|
|
3183
|
-
* Single nav row for **`xpl-top-nav`** / **`xpl-nav-header-menu`**. The host uses
|
|
3184
|
-
* participates in a list: a **`role="list"`** parent, **`slot="left-aside"`** on
|
|
3185
|
-
* **`.xpl-top-nav__left-primary`** while slotted nodes stay light-DOM children of
|
|
3186
|
-
* under **`xpl-nav-header-menu`**. That flag is
|
|
3724
|
+
* Single nav row for **`xpl-top-nav`** / **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**. The host uses
|
|
3725
|
+
* **`role="listitem"`** when the row participates in a list: a **`role="list"`** parent, **`slot="left-aside"`** on
|
|
3726
|
+
* **`xpl-top-nav`** (list host is **`.xpl-top-nav__left-primary`** while slotted nodes stay light-DOM children of
|
|
3727
|
+
* **`xpl-top-nav`**), or default-slot rows under **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**. That flag is
|
|
3187
3728
|
* kept in **`@State`** and refreshed after render plus via **`MutationObserver`** on the host (**`class`**, **`slot`**) and
|
|
3188
3729
|
* on **`parentElement`** (**`role`**) or on **`.xpl-top-nav__left-primary`** (**`role`**) for **`slot="left-aside"`** under **`xpl-top-nav`**) so DOM context changes
|
|
3189
3730
|
* without a full reconnect still re-sync. The internal
|
|
3190
3731
|
* **`xpl-top-nav__brand`** row omits **`listitem`** (it sits in **`.xpl-top-nav__brand-bar`**, not **`.xpl-top-nav__left-primary`**),
|
|
3191
3732
|
* as do **`slot="right-aside-mobile"`** rows (not a list). **`slot="dropdown"`** uses a local **`.xpl-top-nav-item__dropdown`**
|
|
3192
3733
|
* panel (not **`xpl-dropdown`**); see **`TECH_DEBT.md`**.
|
|
3734
|
+
* **This component does triple duty:** a plain bar item, a dropdown trigger (**`slot="dropdown"`** present), and a
|
|
3735
|
+
* dropdown/menu **row** (nested inside **`xpl-nav-header-menu`** or **`xpl-top-nav-menu`**). The **`description`** prop
|
|
3736
|
+
* only applies in the row context — bar items and triggers do not show it in Figma.
|
|
3193
3737
|
* **Default slot (no `label`):** do not put **`xpl-top-nav-item__inner`** or other **`xpl-top-nav-item__*`** classes on
|
|
3194
3738
|
* custom trigger content — the component renders the inner wrapper and BEM elements.
|
|
3195
3739
|
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens resolve to dark-mode
|
|
@@ -3209,9 +3753,37 @@ declare global {
|
|
|
3209
3753
|
prototype: HTMLXplTopNavItemElement;
|
|
3210
3754
|
new (): HTMLXplTopNavItemElement;
|
|
3211
3755
|
};
|
|
3756
|
+
/**
|
|
3757
|
+
* Thin grouping container for **`xpl-top-nav-item`** rows — the panel content for a desktop flyout
|
|
3758
|
+
* (**`slot="dropdown"`** on the parent **`xpl-top-nav-item`**) and, on small screens, the **mobile
|
|
3759
|
+
* cascade**: the same markup drills in to a **Level 2** view in place, with an auto-rendered **back
|
|
3760
|
+
* row** (leading **`chevron-left`** + this component's **`label`**) as the first row. Tapping the back
|
|
3761
|
+
* row closes the parent trigger's dropdown (**`closeMenu()`**), returning to **Level 1** and restoring
|
|
3762
|
+
* focus to the parent trigger. No item logic otherwise lives here — row behavior (icons, description,
|
|
3763
|
+
* links, nested dropdowns) is entirely **`xpl-top-nav-item`**.
|
|
3764
|
+
* **One authoring markup, two renderings:** consumers write this once; **`isMobileCascade`** (synced
|
|
3765
|
+
* from **`TOP_NAV_MOBILE_MQ`**) decides whether the back row renders. Desktop never sees it — the
|
|
3766
|
+
* flyout is a single level of links (see `xpl-top-nav-item`'s cascade-depth notes).
|
|
3767
|
+
* **Panel chrome** is shared with **`xpl-nav-header-menu`** (the account menu): width
|
|
3768
|
+
* (**`--xpl-top-nav-panel-width`**), surface, shadow, radius, and vertical padding all come from the
|
|
3769
|
+
* same selector in `top-nav.css` so the desktop flyout, mobile cascade, and account menu read as one
|
|
3770
|
+
* visual family.
|
|
3771
|
+
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens
|
|
3772
|
+
* resolve to dark-mode values even when the page root is light (consistent with the rest of the
|
|
3773
|
+
* **`xpl-top-nav`** family).
|
|
3774
|
+
*/
|
|
3775
|
+
interface HTMLXplTopNavMenuElement extends Components.XplTopNavMenu, HTMLStencilElement {
|
|
3776
|
+
}
|
|
3777
|
+
var HTMLXplTopNavMenuElement: {
|
|
3778
|
+
prototype: HTMLXplTopNavMenuElement;
|
|
3779
|
+
new (): HTMLXplTopNavMenuElement;
|
|
3780
|
+
};
|
|
3212
3781
|
interface HTMLXplUtilityBarElementEventMap {
|
|
3213
3782
|
"navOpen": boolean;
|
|
3214
3783
|
}
|
|
3784
|
+
/**
|
|
3785
|
+
* @since 0.1.1
|
|
3786
|
+
*/
|
|
3215
3787
|
interface HTMLXplUtilityBarElement extends Components.XplUtilityBar, HTMLStencilElement {
|
|
3216
3788
|
addEventListener<K extends keyof HTMLXplUtilityBarElementEventMap>(type: K, listener: (this: HTMLXplUtilityBarElement, ev: XplUtilityBarCustomEvent<HTMLXplUtilityBarElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
3217
3789
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -3278,7 +3850,9 @@ declare global {
|
|
|
3278
3850
|
"xpl-secondary-nav": HTMLXplSecondaryNavElement;
|
|
3279
3851
|
"xpl-select": HTMLXplSelectElement;
|
|
3280
3852
|
"xpl-side-nav": HTMLXplSideNavElement;
|
|
3853
|
+
"xpl-side-nav-header-item": HTMLXplSideNavHeaderItemElement;
|
|
3281
3854
|
"xpl-side-nav-item": HTMLXplSideNavItemElement;
|
|
3855
|
+
"xpl-side-nav-section": HTMLXplSideNavSectionElement;
|
|
3282
3856
|
"xpl-skeleton": HTMLXplSkeletonElement;
|
|
3283
3857
|
"xpl-slideout": HTMLXplSlideoutElement;
|
|
3284
3858
|
"xpl-spotlight": HTMLXplSpotlightElement;
|
|
@@ -3295,12 +3869,16 @@ declare global {
|
|
|
3295
3869
|
"xpl-tooltip": HTMLXplTooltipElement;
|
|
3296
3870
|
"xpl-top-nav": HTMLXplTopNavElement;
|
|
3297
3871
|
"xpl-top-nav-item": HTMLXplTopNavItemElement;
|
|
3872
|
+
"xpl-top-nav-menu": HTMLXplTopNavMenuElement;
|
|
3298
3873
|
"xpl-utility-bar": HTMLXplUtilityBarElement;
|
|
3299
3874
|
}
|
|
3300
3875
|
}
|
|
3301
3876
|
declare namespace LocalJSX {
|
|
3302
3877
|
type OneOf<K extends string, PropT, AttrT = PropT> = { [P in K]: PropT } & { [P in `attr:${K}` | `prop:${K}`]?: never } | { [P in `attr:${K}`]: AttrT } & { [P in K | `prop:${K}`]?: never } | { [P in `prop:${K}`]: PropT } & { [P in K | `attr:${K}`]?: never };
|
|
3303
3878
|
|
|
3879
|
+
/**
|
|
3880
|
+
* @since 2.0.0
|
|
3881
|
+
*/
|
|
3304
3882
|
interface XplAccordion {
|
|
3305
3883
|
/**
|
|
3306
3884
|
* set the border of the accordion none: there’s no border wrapping the header bottom:there’s a border below the header bordered: the header is wrapped by a white panel with a rounded border around it on every side
|
|
@@ -3330,6 +3908,9 @@ declare namespace LocalJSX {
|
|
|
3330
3908
|
*/
|
|
3331
3909
|
"size"?: '1' | '2' | '3';
|
|
3332
3910
|
}
|
|
3911
|
+
/**
|
|
3912
|
+
* @since 0.5.0
|
|
3913
|
+
*/
|
|
3333
3914
|
interface XplApplicationShell {
|
|
3334
3915
|
/**
|
|
3335
3916
|
* @property {boolean} - *
|
|
@@ -3352,6 +3933,9 @@ declare namespace LocalJSX {
|
|
|
3352
3933
|
*/
|
|
3353
3934
|
"withUtility"?: boolean;
|
|
3354
3935
|
}
|
|
3936
|
+
/**
|
|
3937
|
+
* @since 0.1.1
|
|
3938
|
+
*/
|
|
3355
3939
|
interface XplAvatar {
|
|
3356
3940
|
/**
|
|
3357
3941
|
* Background color when there is no image src
|
|
@@ -3400,6 +3984,9 @@ declare namespace LocalJSX {
|
|
|
3400
3984
|
*/
|
|
3401
3985
|
"variant"?: AvatarVariant;
|
|
3402
3986
|
}
|
|
3987
|
+
/**
|
|
3988
|
+
* @since 0.1.2
|
|
3989
|
+
*/
|
|
3403
3990
|
interface XplBackdrop {
|
|
3404
3991
|
/**
|
|
3405
3992
|
* @property {boolean} - When true, backdrop will have relative position. This is useful when the backdrop doesn't cover the whole view area. If false, the position will be fixed and cover the whole view area.
|
|
@@ -3407,6 +3994,9 @@ declare namespace LocalJSX {
|
|
|
3407
3994
|
*/
|
|
3408
3995
|
"relative"?: boolean;
|
|
3409
3996
|
}
|
|
3997
|
+
/**
|
|
3998
|
+
* @since 0.1.1
|
|
3999
|
+
*/
|
|
3410
4000
|
interface XplBadge {
|
|
3411
4001
|
/**
|
|
3412
4002
|
* Whether badge shows a bordered ring
|
|
@@ -3438,6 +4028,9 @@ declare namespace LocalJSX {
|
|
|
3438
4028
|
*/
|
|
3439
4029
|
"variant"?: BadgeVariantProp;
|
|
3440
4030
|
}
|
|
4031
|
+
/**
|
|
4032
|
+
* @since 2.6.0
|
|
4033
|
+
*/
|
|
3441
4034
|
interface XplBanner {
|
|
3442
4035
|
/**
|
|
3443
4036
|
* Primary action label. When provided, an action button is rendered.
|
|
@@ -3497,6 +4090,9 @@ declare namespace LocalJSX {
|
|
|
3497
4090
|
}
|
|
3498
4091
|
interface XplBreadcrumbs {
|
|
3499
4092
|
}
|
|
4093
|
+
/**
|
|
4094
|
+
* @since 0.1.1
|
|
4095
|
+
*/
|
|
3500
4096
|
interface XplButton {
|
|
3501
4097
|
/**
|
|
3502
4098
|
* Attributes to apply to the inner native `<button>` (e.g., tab a11y wiring). Use this instead of setting `id` / `role` / `aria-*` on the host when the inner control is the element that needs them (e.g., WAI-ARIA composite widgets).
|
|
@@ -3578,6 +4174,9 @@ declare namespace LocalJSX {
|
|
|
3578
4174
|
*/
|
|
3579
4175
|
"variant"?: 'primary' | 'secondary' | 'tertiary' | 'subtle';
|
|
3580
4176
|
}
|
|
4177
|
+
/**
|
|
4178
|
+
* @since 0.4.0
|
|
4179
|
+
*/
|
|
3581
4180
|
interface XplButtonRow {
|
|
3582
4181
|
/**
|
|
3583
4182
|
* Fires on the primary button. If not set, the button can act as a standard submit button for a form.
|
|
@@ -3604,6 +4203,9 @@ declare namespace LocalJSX {
|
|
|
3604
4203
|
*/
|
|
3605
4204
|
"tertiary"?: 'string';
|
|
3606
4205
|
}
|
|
4206
|
+
/**
|
|
4207
|
+
* @since 2.0.0
|
|
4208
|
+
*/
|
|
3607
4209
|
interface XplCalendar {
|
|
3608
4210
|
/**
|
|
3609
4211
|
* Format of the date displayed in the calendar. Default is 'Y-m-d'.
|
|
@@ -3637,6 +4239,9 @@ declare namespace LocalJSX {
|
|
|
3637
4239
|
*/
|
|
3638
4240
|
"onDateSelected"?: (event: XplCalendarCustomEvent<string | string[]>) => void;
|
|
3639
4241
|
}
|
|
4242
|
+
/**
|
|
4243
|
+
* @since 0.1.1
|
|
4244
|
+
*/
|
|
3640
4245
|
interface XplCheckbox {
|
|
3641
4246
|
/**
|
|
3642
4247
|
* Accessible name for the native checkbox input (sets `aria-label` on the `input`). Use when there is no visible label text in the default slot. Defaults to `''`; empty or whitespace-only values omit `aria-label` on the input so a visible `<label>` remains the sole name source.
|
|
@@ -3684,6 +4289,9 @@ declare namespace LocalJSX {
|
|
|
3684
4289
|
*/
|
|
3685
4290
|
"value"?: string;
|
|
3686
4291
|
}
|
|
4292
|
+
/**
|
|
4293
|
+
* @since 0.1.1
|
|
4294
|
+
*/
|
|
3687
4295
|
interface XplChoicelist {
|
|
3688
4296
|
/**
|
|
3689
4297
|
* An array of choices to be displayed in the list. Each choice should be an object with keys: - `checked` [boolean] - whether to pre-check or not - `children` [Choice[]] - an array of child choices (recursive) - `description` [string] - `label` [string]
|
|
@@ -3719,6 +4327,9 @@ declare namespace LocalJSX {
|
|
|
3719
4327
|
*/
|
|
3720
4328
|
"styled"?: boolean;
|
|
3721
4329
|
}
|
|
4330
|
+
/**
|
|
4331
|
+
* @since 0.1.2
|
|
4332
|
+
*/
|
|
3722
4333
|
interface XplContentArea {
|
|
3723
4334
|
/**
|
|
3724
4335
|
* @property {string} size - The content-area size.
|
|
@@ -3726,8 +4337,14 @@ declare namespace LocalJSX {
|
|
|
3726
4337
|
*/
|
|
3727
4338
|
"size"?: 'wide' | 'narrow' | 'full';
|
|
3728
4339
|
}
|
|
4340
|
+
/**
|
|
4341
|
+
* @since 1.0.0
|
|
4342
|
+
*/
|
|
3729
4343
|
interface XplDashboard {
|
|
3730
4344
|
}
|
|
4345
|
+
/**
|
|
4346
|
+
* @since 1.0.0
|
|
4347
|
+
*/
|
|
3731
4348
|
interface XplDataCard {
|
|
3732
4349
|
/**
|
|
3733
4350
|
* An optional field that typically describes or modifies the small stat
|
|
@@ -3785,12 +4402,18 @@ declare namespace LocalJSX {
|
|
|
3785
4402
|
*/
|
|
3786
4403
|
"variant"?: 'primary' | 'secondary';
|
|
3787
4404
|
}
|
|
4405
|
+
/**
|
|
4406
|
+
* @since 0.3.0
|
|
4407
|
+
*/
|
|
3788
4408
|
interface XplDivider {
|
|
3789
4409
|
/**
|
|
3790
4410
|
* The tier should be an integer between 0 and 3. Tier 0 dividers do not display text, and 1-3 increase in size with each increasing tier.
|
|
3791
4411
|
*/
|
|
3792
4412
|
"tier"?: number;
|
|
3793
4413
|
}
|
|
4414
|
+
/**
|
|
4415
|
+
* @since 0.4.0
|
|
4416
|
+
*/
|
|
3794
4417
|
interface XplDropdown {
|
|
3795
4418
|
/**
|
|
3796
4419
|
* whether to anchor the dropdown to the trigger element, requires triggerId to be set
|
|
@@ -3845,7 +4468,7 @@ declare namespace LocalJSX {
|
|
|
3845
4468
|
/**
|
|
3846
4469
|
* call back function invoked when a selection is made
|
|
3847
4470
|
*/
|
|
3848
|
-
"update"?: (e
|
|
4471
|
+
"update"?: (e: Event | null, context: { component: Dropdown }) => void;
|
|
3849
4472
|
}
|
|
3850
4473
|
interface XplDropdownGroup {
|
|
3851
4474
|
/**
|
|
@@ -3889,12 +4512,18 @@ declare namespace LocalJSX {
|
|
|
3889
4512
|
*/
|
|
3890
4513
|
"value"?: string;
|
|
3891
4514
|
}
|
|
4515
|
+
/**
|
|
4516
|
+
* @since 1.4.0
|
|
4517
|
+
*/
|
|
3892
4518
|
interface XplDynamicTable {
|
|
3893
4519
|
/**
|
|
3894
4520
|
* Emitted when the number of selected items changes.
|
|
3895
4521
|
*/
|
|
3896
4522
|
"onSelectedItemCountChange"?: (event: XplDynamicTableCustomEvent<string[]>) => void;
|
|
3897
4523
|
}
|
|
4524
|
+
/**
|
|
4525
|
+
* @since 1.3.0
|
|
4526
|
+
*/
|
|
3898
4527
|
interface XplDynamicTableCell {
|
|
3899
4528
|
/**
|
|
3900
4529
|
* Whether the cell and its contents are disabled.
|
|
@@ -3902,6 +4531,9 @@ declare namespace LocalJSX {
|
|
|
3902
4531
|
*/
|
|
3903
4532
|
"disabled"?: boolean;
|
|
3904
4533
|
}
|
|
4534
|
+
/**
|
|
4535
|
+
* @since 1.3.0
|
|
4536
|
+
*/
|
|
3905
4537
|
interface XplDynamicTableRow {
|
|
3906
4538
|
/**
|
|
3907
4539
|
* Whether the row and its cells are disabled.
|
|
@@ -3914,8 +4546,14 @@ declare namespace LocalJSX {
|
|
|
3914
4546
|
*/
|
|
3915
4547
|
"selected"?: boolean;
|
|
3916
4548
|
}
|
|
4549
|
+
/**
|
|
4550
|
+
* @since 0.4.0
|
|
4551
|
+
*/
|
|
3917
4552
|
interface XplGrid {
|
|
3918
4553
|
}
|
|
4554
|
+
/**
|
|
4555
|
+
* @since 0.4.0
|
|
4556
|
+
*/
|
|
3919
4557
|
interface XplGridItem {
|
|
3920
4558
|
/**
|
|
3921
4559
|
* The number of columns the element should span out of a 6 column grid on a lg size screen
|
|
@@ -3938,6 +4576,9 @@ declare namespace LocalJSX {
|
|
|
3938
4576
|
*/
|
|
3939
4577
|
"xs"?: number;
|
|
3940
4578
|
}
|
|
4579
|
+
/**
|
|
4580
|
+
* @since 1.2.0
|
|
4581
|
+
*/
|
|
3941
4582
|
interface XplHeaderAccordion {
|
|
3942
4583
|
/**
|
|
3943
4584
|
* The id of the content region controlled by the accordion.
|
|
@@ -3964,6 +4605,9 @@ declare namespace LocalJSX {
|
|
|
3964
4605
|
*/
|
|
3965
4606
|
"selectedCount"?: number;
|
|
3966
4607
|
}
|
|
4608
|
+
/**
|
|
4609
|
+
* @since 1.0.0
|
|
4610
|
+
*/
|
|
3967
4611
|
interface XplIcon {
|
|
3968
4612
|
/**
|
|
3969
4613
|
* Icon's background color.
|
|
@@ -3979,6 +4623,9 @@ declare namespace LocalJSX {
|
|
|
3979
4623
|
*/
|
|
3980
4624
|
"size"?: number;
|
|
3981
4625
|
}
|
|
4626
|
+
/**
|
|
4627
|
+
* @since 0.3.0
|
|
4628
|
+
*/
|
|
3982
4629
|
interface XplInput {
|
|
3983
4630
|
/**
|
|
3984
4631
|
* Because `id` is a reserved HTMLElement attribute, we prefix it with an underscore here so that it doesn't get automatically applied to the outer container. Applies to all input types.
|
|
@@ -4515,6 +5162,9 @@ declare namespace LocalJSX {
|
|
|
4515
5162
|
*/
|
|
4516
5163
|
"value"?: string;
|
|
4517
5164
|
}
|
|
5165
|
+
/**
|
|
5166
|
+
* @since 1.9.1
|
|
5167
|
+
*/
|
|
4518
5168
|
interface XplLargeCard {
|
|
4519
5169
|
/**
|
|
4520
5170
|
* Description of the Card
|
|
@@ -4529,6 +5179,9 @@ declare namespace LocalJSX {
|
|
|
4529
5179
|
*/
|
|
4530
5180
|
"name"?: string;
|
|
4531
5181
|
}
|
|
5182
|
+
/**
|
|
5183
|
+
* @since 0.4.0
|
|
5184
|
+
*/
|
|
4532
5185
|
interface XplList {
|
|
4533
5186
|
/**
|
|
4534
5187
|
* Array of list items to render. Each item should follow the ListItem interface. **Deprecated.** Use slot-based xpl-list-item children instead.
|
|
@@ -4640,6 +5293,9 @@ declare namespace LocalJSX {
|
|
|
4640
5293
|
*/
|
|
4641
5294
|
"titleBadgeVariant"?: BadgeVariantProp1;
|
|
4642
5295
|
}
|
|
5296
|
+
/**
|
|
5297
|
+
* @since 0.1.2
|
|
5298
|
+
*/
|
|
4643
5299
|
interface XplMainNav {
|
|
4644
5300
|
/**
|
|
4645
5301
|
* @event {string} navWidth - Emits the `nav-width` prop set by the user when the component is attached to the DOM and when the component is updated.
|
|
@@ -4651,6 +5307,9 @@ declare namespace LocalJSX {
|
|
|
4651
5307
|
*/
|
|
4652
5308
|
"width"?: 'default' | 'md' | 'sm';
|
|
4653
5309
|
}
|
|
5310
|
+
/**
|
|
5311
|
+
* @since 1.1.0
|
|
5312
|
+
*/
|
|
4654
5313
|
interface XplModal {
|
|
4655
5314
|
/**
|
|
4656
5315
|
* Whether the modal is open.
|
|
@@ -4700,6 +5359,9 @@ declare namespace LocalJSX {
|
|
|
4700
5359
|
*/
|
|
4701
5360
|
"username"?: string;
|
|
4702
5361
|
}
|
|
5362
|
+
/**
|
|
5363
|
+
* @since 0.1.2
|
|
5364
|
+
*/
|
|
4703
5365
|
interface XplNavItem {
|
|
4704
5366
|
/**
|
|
4705
5367
|
* @property {boolean} - Whether or not the item should control the main nav state on click
|
|
@@ -4711,6 +5373,9 @@ declare namespace LocalJSX {
|
|
|
4711
5373
|
*/
|
|
4712
5374
|
"onNavOpen"?: (event: XplNavItemCustomEvent<boolean>) => void;
|
|
4713
5375
|
}
|
|
5376
|
+
/**
|
|
5377
|
+
* @since 0.1.1
|
|
5378
|
+
*/
|
|
4714
5379
|
interface XplPagination {
|
|
4715
5380
|
/**
|
|
4716
5381
|
* The current active page (1-based). Marked as mutable so we can update from inside this component.
|
|
@@ -4749,6 +5414,7 @@ declare namespace LocalJSX {
|
|
|
4749
5414
|
/**
|
|
4750
5415
|
* A stateless container that defines a section on a page and can house any
|
|
4751
5416
|
* type of content. Panels are not dismissible and may contain a top accent.
|
|
5417
|
+
* @since 2.6.0
|
|
4752
5418
|
*/
|
|
4753
5419
|
interface XplPanel {
|
|
4754
5420
|
/**
|
|
@@ -4762,6 +5428,9 @@ declare namespace LocalJSX {
|
|
|
4762
5428
|
*/
|
|
4763
5429
|
"padding"?: 'default' | 'tight' | 'loose';
|
|
4764
5430
|
}
|
|
5431
|
+
/**
|
|
5432
|
+
* @since 2.0.0
|
|
5433
|
+
*/
|
|
4765
5434
|
interface XplPopover {
|
|
4766
5435
|
/**
|
|
4767
5436
|
* Whether the popover is disabled or not.
|
|
@@ -4788,6 +5457,9 @@ declare namespace LocalJSX {
|
|
|
4788
5457
|
*/
|
|
4789
5458
|
"position"?: PopoverPosition;
|
|
4790
5459
|
}
|
|
5460
|
+
/**
|
|
5461
|
+
* @since 2.6.0
|
|
5462
|
+
*/
|
|
4791
5463
|
interface XplProgressBar {
|
|
4792
5464
|
/**
|
|
4793
5465
|
* The helper text displayed below the progress bar (recommended for error state)
|
|
@@ -4818,6 +5490,9 @@ declare namespace LocalJSX {
|
|
|
4818
5490
|
*/
|
|
4819
5491
|
"variant"?: 'default' | 'success' | 'error' | 'indeterminate';
|
|
4820
5492
|
}
|
|
5493
|
+
/**
|
|
5494
|
+
* @since 2.7.0
|
|
5495
|
+
*/
|
|
4821
5496
|
interface XplProgressIndicator {
|
|
4822
5497
|
/**
|
|
4823
5498
|
* Current step index. Steps with index < currentStep are "finished", the step at currentStep is "active", and steps beyond are "waiting". Set to steps.length to mark all steps as finished. Automatically clamped to [0, steps.length].
|
|
@@ -4844,6 +5519,9 @@ declare namespace LocalJSX {
|
|
|
4844
5519
|
*/
|
|
4845
5520
|
"steps"?: string[];
|
|
4846
5521
|
}
|
|
5522
|
+
/**
|
|
5523
|
+
* @since 0.1.1
|
|
5524
|
+
*/
|
|
4847
5525
|
interface XplRadio {
|
|
4848
5526
|
/**
|
|
4849
5527
|
* Whether the input is "on"
|
|
@@ -4882,8 +5560,14 @@ declare namespace LocalJSX {
|
|
|
4882
5560
|
*/
|
|
4883
5561
|
"value"?: string;
|
|
4884
5562
|
}
|
|
5563
|
+
/**
|
|
5564
|
+
* @since 0.3.0
|
|
5565
|
+
*/
|
|
4885
5566
|
interface XplSecondaryNav {
|
|
4886
5567
|
}
|
|
5568
|
+
/**
|
|
5569
|
+
* @since 0.4.0
|
|
5570
|
+
*/
|
|
4887
5571
|
interface XplSelect {
|
|
4888
5572
|
/**
|
|
4889
5573
|
* An array of choices for the user to choose from. Each choice should be of the form: { label: string; href?: string; value?: string; isGroupHeading?: boolean; isSelected?: boolean; isDisabled?: boolean; options?: DropdownItem[]; groupName?: string; }
|
|
@@ -4909,12 +5593,12 @@ declare namespace LocalJSX {
|
|
|
4909
5593
|
/**
|
|
4910
5594
|
* Additional placements to try for the options panel when the default `dropdownPlacement` does not fit. Passed to `xpl-dropdown` / Floating UI `flip`.
|
|
4911
5595
|
*/
|
|
4912
|
-
"dropdownFlipFallbackPlacements"?:
|
|
5596
|
+
"dropdownFlipFallbackPlacements"?: Placement1[];
|
|
4913
5597
|
/**
|
|
4914
5598
|
* Initial Floating UI placement for the options panel (e.g. `top-start`, `bottom-start`). Forwarded to the inner `xpl-dropdown` when the menu is open.
|
|
4915
5599
|
* @default 'bottom-start'
|
|
4916
5600
|
*/
|
|
4917
|
-
"dropdownPlacement"?:
|
|
5601
|
+
"dropdownPlacement"?: Placement1;
|
|
4918
5602
|
/**
|
|
4919
5603
|
* If an empty string (attribute present with no value), will display visually as an error. If a string is included, will display visually as an error and include the value as an error message.
|
|
4920
5604
|
*/
|
|
@@ -4971,8 +5655,8 @@ declare namespace LocalJSX {
|
|
|
4971
5655
|
"truncate"?: boolean;
|
|
4972
5656
|
}
|
|
4973
5657
|
/**
|
|
4974
|
-
* Slot-based sidebar for app navigation: a scrollable
|
|
4975
|
-
* `nav-footer`. Compose with `xpl-side-nav-item` for rows.
|
|
5658
|
+
* Slot-based sidebar for app navigation: a scrollable `nav-header` + `section`
|
|
5659
|
+
* area and a fixed `nav-footer`. Compose with `xpl-side-nav-item` for rows.
|
|
4976
5660
|
* **Mobile (v2):** below the Tailwind `md` breakpoint, the sidebar collapses to a
|
|
4977
5661
|
* ~56px top bar with a toggle button (`sidebar-left-show` / `sidebar-left-hide`).
|
|
4978
5662
|
* Activating the toggle opens a drawer containing the `section` + `nav-footer`
|
|
@@ -4984,6 +5668,7 @@ declare namespace LocalJSX {
|
|
|
4984
5668
|
* the `openChange` event, and the `toggle()` / `setOpen()` methods.
|
|
4985
5669
|
* **v2 breaking change (beta):** consumers who wrapped their own mobile toggle
|
|
4986
5670
|
* around `xpl-side-nav` should remove it — the toggle and drawer are now built in.
|
|
5671
|
+
* @since 2.6.0
|
|
4987
5672
|
*/
|
|
4988
5673
|
interface XplSideNav {
|
|
4989
5674
|
/**
|
|
@@ -5000,6 +5685,53 @@ declare namespace LocalJSX {
|
|
|
5000
5685
|
*/
|
|
5001
5686
|
"open"?: boolean;
|
|
5002
5687
|
}
|
|
5688
|
+
/**
|
|
5689
|
+
* Header row for `xpl-side-nav`'s `nav-header` slot (Figma `<navHeaderItem>`,
|
|
5690
|
+
* node `51299-9007`). Two types:
|
|
5691
|
+
* - **`product-label` (default)** — a non-interactive `<div>` row that shows the
|
|
5692
|
+
* current product/area name in a subdued color. No click behavior.
|
|
5693
|
+
* - **`sub-account`** — an interactive `<button>` row (e.g. a location / account
|
|
5694
|
+
* switcher). Emits `navigate` on activation (pointer click or keyboard); the
|
|
5695
|
+
* consumer wires this to open a modal or other entity-switching experience.
|
|
5696
|
+
* When no `slot="trailing"` content is provided, an auto chevron
|
|
5697
|
+
* (`chevron-expand-y`, a static dual-arrow glyph — no rotation) renders by default.
|
|
5698
|
+
* Both types support `slot="leading"` / `slot="trailing"` (the `icon` prop is a
|
|
5699
|
+
* convenience shorthand for `slot="leading"`, same as `xpl-side-nav-item`) so they
|
|
5700
|
+
* can scale to future uses. Unlike `xpl-side-nav-item`, the leading/trailing
|
|
5701
|
+
* columns are NOT unconditionally reserved — they only render when there is
|
|
5702
|
+
* content, matching the Figma variants where the leading icon is an optional toggle.
|
|
5703
|
+
* **Note on the `sub-account` hover / selected visual:** the interactive row
|
|
5704
|
+
* mirrors `xpl-side-nav-item` — the hover and selected backgrounds fill a single
|
|
5705
|
+
* `__content` pill that wraps the leading icon + label + trailing chevron, with
|
|
5706
|
+
* an 8px (`--xpl-border-radius-default`) radius. The pill insets 8px from the nav
|
|
5707
|
+
* edge (an 8px gutter on the button) so it lines up with the item rows below it,
|
|
5708
|
+
* and hover/selected therefore highlight the whole row content rather than a
|
|
5709
|
+
* partial fragment.
|
|
5710
|
+
*/
|
|
5711
|
+
interface XplSideNavHeaderItem {
|
|
5712
|
+
/**
|
|
5713
|
+
* Optional icon name; renders as the default content for `slot="leading"`. When `slot="leading"` content is present, this prop is ignored.
|
|
5714
|
+
*/
|
|
5715
|
+
"icon"?: string;
|
|
5716
|
+
/**
|
|
5717
|
+
* The display label for the header item (e.g. the product name or sub-account name).
|
|
5718
|
+
*/
|
|
5719
|
+
"label"?: string;
|
|
5720
|
+
/**
|
|
5721
|
+
* Emitted when a `sub-account` item is activated (pointer click or keyboard activation of the native `<button>`). Not emitted for `product-label` (static, no interaction).
|
|
5722
|
+
*/
|
|
5723
|
+
"onNavigate"?: (event: XplSideNavHeaderItemCustomEvent<void>) => void;
|
|
5724
|
+
/**
|
|
5725
|
+
* Whether the item is currently in a selected state. Only meaningful when `type` is `sub-account` — applies the information-surface pill around the label + trailing chevron.
|
|
5726
|
+
* @default false
|
|
5727
|
+
*/
|
|
5728
|
+
"selected"?: boolean;
|
|
5729
|
+
/**
|
|
5730
|
+
* The header item variant. `product-label` is a static, non-interactive label. `sub-account` is an interactive button that emits `navigate`.
|
|
5731
|
+
* @default 'product-label'
|
|
5732
|
+
*/
|
|
5733
|
+
"type"?: 'product-label' | 'sub-account';
|
|
5734
|
+
}
|
|
5003
5735
|
/**
|
|
5004
5736
|
* Navigation row for `xpl-side-nav`. Renders a button (default) or a slot-only
|
|
5005
5737
|
* anchor container (`link` mode). Three slot positions are available:
|
|
@@ -5063,15 +5795,54 @@ declare namespace LocalJSX {
|
|
|
5063
5795
|
*/
|
|
5064
5796
|
"onExpandedChange"?: (event: XplSideNavItemCustomEvent<boolean>) => void;
|
|
5065
5797
|
/**
|
|
5066
|
-
* Emitted when a leaf item is
|
|
5798
|
+
* Emitted when a leaf item is activated (pointer click or keyboard activation of the native `<button>`). Expandable parents use `expandedChange` instead.
|
|
5067
5799
|
*/
|
|
5068
|
-
"
|
|
5800
|
+
"onNavigate"?: (event: XplSideNavItemCustomEvent<void>) => void;
|
|
5069
5801
|
/**
|
|
5070
5802
|
* Whether the item is currently in a selected state.
|
|
5071
5803
|
* @default false
|
|
5072
5804
|
*/
|
|
5073
5805
|
"selected"?: boolean;
|
|
5074
5806
|
}
|
|
5807
|
+
/**
|
|
5808
|
+
* Grouping / accordion header for `xpl-side-nav`. Wraps nested `xpl-side-nav-item`
|
|
5809
|
+
* (and optional divider separators) elements in the default slot and collapses
|
|
5810
|
+
* them as a unit.
|
|
5811
|
+
* Two variants:
|
|
5812
|
+
* - **Collapsible (default, `collapsible=true`)** — a `<button>` header with a
|
|
5813
|
+
* chevron (`chevron-right` collapsed / `chevron-down` expanded, no rotation —
|
|
5814
|
+
* the glyph itself swaps). Click toggles `expanded` and emits `expandedChange`.
|
|
5815
|
+
* - **Static (`collapsible=false`)** — a non-interactive title row with no chevron;
|
|
5816
|
+
* children are always shown. Used for a static section label (e.g. a future
|
|
5817
|
+
* product-name / location-changer header).
|
|
5818
|
+
* Unlike `xpl-side-nav-item[has-children]`, section children are **not indented**
|
|
5819
|
+
* — they align with top-level items at the same leading-icon column.
|
|
5820
|
+
* `slot="badge"` renders an optional badge (e.g. `xpl-badge`) in the header title
|
|
5821
|
+
* row. The wrapper is suppressed when the slot is empty.
|
|
5822
|
+
*/
|
|
5823
|
+
interface XplSideNavSection {
|
|
5824
|
+
/**
|
|
5825
|
+
* Whether the section can be collapsed/expanded. When `false`, renders a static title (no chevron, not a button) and children are always shown.
|
|
5826
|
+
* @default true
|
|
5827
|
+
*/
|
|
5828
|
+
"collapsible"?: boolean;
|
|
5829
|
+
/**
|
|
5830
|
+
* Whether the section is currently expanded. Only meaningful when `collapsible` is true.
|
|
5831
|
+
* @default false
|
|
5832
|
+
*/
|
|
5833
|
+
"expanded"?: boolean;
|
|
5834
|
+
/**
|
|
5835
|
+
* The section title text. Optional, but when `collapsible` is true and both `heading` and `slot="badge"` lack an accessible name, the toggle `<button>` falls back to `aria-label="Toggle section"` so it always has an accessible name.
|
|
5836
|
+
*/
|
|
5837
|
+
"heading"?: string;
|
|
5838
|
+
/**
|
|
5839
|
+
* Emitted when the expanded state changes (collapsible sections only). Detail is the new expanded value.
|
|
5840
|
+
*/
|
|
5841
|
+
"onExpandedChange"?: (event: XplSideNavSectionCustomEvent<boolean>) => void;
|
|
5842
|
+
}
|
|
5843
|
+
/**
|
|
5844
|
+
* @since 2.3.6
|
|
5845
|
+
*/
|
|
5075
5846
|
interface XplSkeleton {
|
|
5076
5847
|
/**
|
|
5077
5848
|
* A CSS class name to apply to the component.
|
|
@@ -5111,6 +5882,9 @@ declare namespace LocalJSX {
|
|
|
5111
5882
|
*/
|
|
5112
5883
|
"width"?: CSSStyleDeclaration['width'];
|
|
5113
5884
|
}
|
|
5885
|
+
/**
|
|
5886
|
+
* @since 1.1.0
|
|
5887
|
+
*/
|
|
5114
5888
|
interface XplSlideout {
|
|
5115
5889
|
/**
|
|
5116
5890
|
* Whether to show a backdrop behind the slideout.
|
|
@@ -5137,6 +5911,9 @@ declare namespace LocalJSX {
|
|
|
5137
5911
|
*/
|
|
5138
5912
|
"variant"?: 'default' | 'warning';
|
|
5139
5913
|
}
|
|
5914
|
+
/**
|
|
5915
|
+
* @since 2.7.0
|
|
5916
|
+
*/
|
|
5140
5917
|
interface XplSpotlight {
|
|
5141
5918
|
/**
|
|
5142
5919
|
* Footer action layout. `default` and `dual` both render the standard Back/Next layout, while `single` renders a single acknowledgement CTA (e.g. "Got it!"). Only applies when `showActions` is `true`.
|
|
@@ -5222,7 +5999,19 @@ declare namespace LocalJSX {
|
|
|
5222
5999
|
*/
|
|
5223
6000
|
"totalSteps"?: number;
|
|
5224
6001
|
}
|
|
6002
|
+
/**
|
|
6003
|
+
* @since 2.3.8
|
|
6004
|
+
*/
|
|
5225
6005
|
interface XplTab {
|
|
6006
|
+
/**
|
|
6007
|
+
* Optional trailing number badge (e.g. a count). Rendered after the label as a compact `xpl-badge` in both underline (`type="tabs"`) and segment (`type="segment"`) tabs. Leave empty to omit the badge.
|
|
6008
|
+
*/
|
|
6009
|
+
"badge"?: string;
|
|
6010
|
+
/**
|
|
6011
|
+
* Color palette for the trailing number badge. Only applies when `badge` is set. Defaults to `purple` — the standard number-badge color in the Figma XPL-Tab Group spec.
|
|
6012
|
+
* @default 'purple'
|
|
6013
|
+
*/
|
|
6014
|
+
"badgeVariant"?: BadgePalette;
|
|
5226
6015
|
/**
|
|
5227
6016
|
* Disables this tab (pill or underline).
|
|
5228
6017
|
* @default false
|
|
@@ -5234,11 +6023,11 @@ declare namespace LocalJSX {
|
|
|
5234
6023
|
*/
|
|
5235
6024
|
"groupDisabled"?: boolean;
|
|
5236
6025
|
/**
|
|
5237
|
-
* Optional icon name
|
|
6026
|
+
* Optional leading icon name (from the Apollo icon set). Rendered in both underline (`type="tabs"`) and segment (`type="segment"`) tabs.
|
|
5238
6027
|
*/
|
|
5239
6028
|
"icon"?: string;
|
|
5240
6029
|
/**
|
|
5241
|
-
* Icon position
|
|
6030
|
+
* Icon position relative to the label. Applies to both underline and segment tabs.
|
|
5242
6031
|
* @default 'start'
|
|
5243
6032
|
*/
|
|
5244
6033
|
"iconPosition"?: 'start' | 'end';
|
|
@@ -5256,6 +6045,9 @@ declare namespace LocalJSX {
|
|
|
5256
6045
|
*/
|
|
5257
6046
|
"target"?: string;
|
|
5258
6047
|
}
|
|
6048
|
+
/**
|
|
6049
|
+
* @since 2.3.8
|
|
6050
|
+
*/
|
|
5259
6051
|
interface XplTabPanel {
|
|
5260
6052
|
/**
|
|
5261
6053
|
* Whether the panel is selected
|
|
@@ -5267,6 +6059,9 @@ declare namespace LocalJSX {
|
|
|
5267
6059
|
*/
|
|
5268
6060
|
"target"?: string;
|
|
5269
6061
|
}
|
|
6062
|
+
/**
|
|
6063
|
+
* @since 0.1.1
|
|
6064
|
+
*/
|
|
5270
6065
|
interface XplTable {
|
|
5271
6066
|
/**
|
|
5272
6067
|
* The header values for each column.
|
|
@@ -5294,12 +6089,12 @@ declare namespace LocalJSX {
|
|
|
5294
6089
|
*/
|
|
5295
6090
|
"multiselect"?: boolean;
|
|
5296
6091
|
/**
|
|
5297
|
-
* Emits an event whenever the sort changes. The 'sortChanged' event passes an object with colNum (number), colName (string), sortTypeArr(
|
|
6092
|
+
* Emits an event whenever the sort changes. The 'sortChanged' event passes an object with colNum (number), colName (string), sortTypeArr(('asc' | 'desc' | null)[]). The default action can be overridden by calling event.preventDefault().
|
|
5298
6093
|
*/
|
|
5299
6094
|
"onSortChanged"?: (event: XplTableCustomEvent<{
|
|
5300
6095
|
colNum: number;
|
|
5301
6096
|
colName: string;
|
|
5302
|
-
sortTypeArr:
|
|
6097
|
+
sortTypeArr: ('asc' | 'desc' | null)[];
|
|
5303
6098
|
}>) => void;
|
|
5304
6099
|
/**
|
|
5305
6100
|
* Callback function that is called when the checkbox for a row of a `multiselect` table is checked
|
|
@@ -5320,8 +6115,14 @@ declare namespace LocalJSX {
|
|
|
5320
6115
|
*/
|
|
5321
6116
|
"striped"?: boolean;
|
|
5322
6117
|
}
|
|
6118
|
+
/**
|
|
6119
|
+
* @since 1.0.0
|
|
6120
|
+
*/
|
|
5323
6121
|
interface XplTableHeader {
|
|
5324
6122
|
}
|
|
6123
|
+
/**
|
|
6124
|
+
* @since 1.3.0
|
|
6125
|
+
*/
|
|
5325
6126
|
interface XplTableHeaderCell {
|
|
5326
6127
|
/**
|
|
5327
6128
|
* Icon to display in the cell. See [xpl-icon available icons](../xpl-icon/ICONS.md) for valid icon names.
|
|
@@ -5351,6 +6152,9 @@ declare namespace LocalJSX {
|
|
|
5351
6152
|
*/
|
|
5352
6153
|
"width"?: number;
|
|
5353
6154
|
}
|
|
6155
|
+
/**
|
|
6156
|
+
* @since 2.3.8
|
|
6157
|
+
*/
|
|
5354
6158
|
interface XplTabs {
|
|
5355
6159
|
/**
|
|
5356
6160
|
* Disables the whole tab group (headings, mobile select, and segment pills).
|
|
@@ -5376,6 +6180,9 @@ declare namespace LocalJSX {
|
|
|
5376
6180
|
*/
|
|
5377
6181
|
"value"?: string;
|
|
5378
6182
|
}
|
|
6183
|
+
/**
|
|
6184
|
+
* @since 0.4.0
|
|
6185
|
+
*/
|
|
5379
6186
|
interface XplTag {
|
|
5380
6187
|
/**
|
|
5381
6188
|
* Whether the tag is disabled
|
|
@@ -5419,32 +6226,44 @@ declare namespace LocalJSX {
|
|
|
5419
6226
|
*/
|
|
5420
6227
|
"tagId"?: string;
|
|
5421
6228
|
}
|
|
6229
|
+
/**
|
|
6230
|
+
* @since 1.2.0
|
|
6231
|
+
*/
|
|
5422
6232
|
interface XplToast {
|
|
5423
6233
|
/**
|
|
5424
|
-
*
|
|
6234
|
+
* The caption of the toast, limited to 85 characters.
|
|
6235
|
+
* @default ''
|
|
5425
6236
|
*/
|
|
5426
6237
|
"caption"?: string;
|
|
5427
6238
|
/**
|
|
5428
|
-
*
|
|
5429
|
-
* @
|
|
6239
|
+
* Whether the toast shows a dismiss (close) button.
|
|
6240
|
+
* @deprecated Misspelled. Use `dismissible` instead. When both are set, `dismissable` wins so existing markup keeps working; `dismissable` is removed in the next major version.
|
|
5430
6241
|
*/
|
|
5431
6242
|
"dismissable"?: boolean;
|
|
5432
6243
|
/**
|
|
5433
|
-
*
|
|
6244
|
+
* Whether the toast shows a dismiss (close) button.
|
|
6245
|
+
* @default true
|
|
6246
|
+
*/
|
|
6247
|
+
"dismissible"?: boolean;
|
|
6248
|
+
/**
|
|
6249
|
+
* Whether to show the leading sentiment icon.
|
|
5434
6250
|
* @default true
|
|
5435
6251
|
*/
|
|
5436
6252
|
"showIcon"?: boolean;
|
|
5437
6253
|
/**
|
|
5438
|
-
*
|
|
6254
|
+
* How long the toast waits before auto-dismissing, in ms. Set to `0` to disable auto-dismiss. Ignored when the `action` slot has content.
|
|
5439
6255
|
* @default 8000
|
|
5440
6256
|
*/
|
|
5441
6257
|
"timeout"?: number;
|
|
5442
6258
|
/**
|
|
5443
|
-
*
|
|
6259
|
+
* The sentiment of the toast.
|
|
5444
6260
|
* @default 'neutral'
|
|
5445
6261
|
*/
|
|
5446
6262
|
"variant"?: 'neutral' | 'warning' | 'success';
|
|
5447
6263
|
}
|
|
6264
|
+
/**
|
|
6265
|
+
* @since 0.3.0
|
|
6266
|
+
*/
|
|
5448
6267
|
interface XplToggle {
|
|
5449
6268
|
/**
|
|
5450
6269
|
* Whether the toggle is `on`
|
|
@@ -5480,6 +6299,9 @@ declare namespace LocalJSX {
|
|
|
5480
6299
|
*/
|
|
5481
6300
|
"variant"?: 'default' | 'small';
|
|
5482
6301
|
}
|
|
6302
|
+
/**
|
|
6303
|
+
* @since 1.2.0
|
|
6304
|
+
*/
|
|
5483
6305
|
interface XplToolbar {
|
|
5484
6306
|
/**
|
|
5485
6307
|
* The number of selected items to display in the toolbar.
|
|
@@ -5487,6 +6309,9 @@ declare namespace LocalJSX {
|
|
|
5487
6309
|
*/
|
|
5488
6310
|
"selectedItemCount"?: number;
|
|
5489
6311
|
}
|
|
6312
|
+
/**
|
|
6313
|
+
* @since 1.7.0
|
|
6314
|
+
*/
|
|
5490
6315
|
interface XplTooltip {
|
|
5491
6316
|
/**
|
|
5492
6317
|
* Hide the arrow
|
|
@@ -5515,6 +6340,7 @@ declare namespace LocalJSX {
|
|
|
5515
6340
|
* (see **`.xpl-top-nav__right-rail`** in `render()`). The account menu uses an internal **`xpl-popover`** (**`bottom-end`**, **`display="menu"`**): built-in trigger uses **`child-account-label`** (prop / attribute) as the label beside a trailing **`chevron-down`** on **`xpl-button`** (**`icon`** / **`iconPosition="end"`**), or **`slot="user-menu-trigger"`** for a custom trigger; panel from **`slot="user-menu"`** (e.g. **`xpl-nav-header-menu`**).
|
|
5516
6341
|
* Optional **`nav-control`** and **`navOpen`**. **`left-aside`** uses **`role="list"`** for primary **`xpl-top-nav-item`** rows (**`role="listitem"`** on each item host). The built-in **`xpl-top-nav__brand`** item omits **`listitem`** (it is not a child of that list). **`label`** maps to **`nav`** **`aria-label`**. Opening state is internal (not a prop) — use **`navOpen`** and host **`xpl-top-nav--open`** for styling.
|
|
5517
6342
|
* **Escape:** With **`nav-control`**, **Escape** closes the mobile drawer and emits **`navOpen`** **`false`** (skips while **any** descendant **`xpl-popover`** is open — detected from each popover’s inner **`.xpl-popover--is-open`** marker — or when a **`xpl-top-nav-item`** dropdown is open — capture/bubble order). Focus returns to the nav toggle after the drawer closes (**Escape** or second toggle click).
|
|
6343
|
+
* **Outside click:** With **`nav-control`**, a click outside the drawer panel (**`.xpl-top-nav__left-primary`**) also closes it and emits **`navOpen`** **`false`** (document **capture**, mirroring **`xpl-top-nav-item`**); it skips clicks on the hamburger toggle and while a descendant **`xpl-popover`** is open, and does not move focus.
|
|
5518
6344
|
* **`xpl-top-nav-item`** **`slot="dropdown"`** uses document **capture** for **Escape** first; the shell uses **bubble**
|
|
5519
6345
|
* on **`ownerDocument`** so nested dropdowns close before the drawer.
|
|
5520
6346
|
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens under this subtree
|
|
@@ -5531,6 +6357,7 @@ declare namespace LocalJSX {
|
|
|
5531
6357
|
* **`slot="right-aside-mobile"`** (below profile, above the list; narrow-only CSS in **`top-nav.css`**) per Figma.
|
|
5532
6358
|
* **Account menu vs drawer:** Opening the built-in account **`xpl-popover`** while the mobile drawer is open **closes the drawer**
|
|
5533
6359
|
* and emits **`navOpen(false)`** so the two layers do not stack.
|
|
6360
|
+
* @since 2.7.0
|
|
5534
6361
|
*/
|
|
5535
6362
|
interface XplTopNav {
|
|
5536
6363
|
/**
|
|
@@ -5567,16 +6394,19 @@ declare namespace LocalJSX {
|
|
|
5567
6394
|
"onNavOpen"?: (event: XplTopNavCustomEvent<boolean>) => void;
|
|
5568
6395
|
}
|
|
5569
6396
|
/**
|
|
5570
|
-
* Single nav row for **`xpl-top-nav`** / **`xpl-nav-header-menu`**. The host uses
|
|
5571
|
-
* participates in a list: a **`role="list"`** parent, **`slot="left-aside"`** on
|
|
5572
|
-
* **`.xpl-top-nav__left-primary`** while slotted nodes stay light-DOM children of
|
|
5573
|
-
* under **`xpl-nav-header-menu`**. That flag is
|
|
6397
|
+
* Single nav row for **`xpl-top-nav`** / **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**. The host uses
|
|
6398
|
+
* **`role="listitem"`** when the row participates in a list: a **`role="list"`** parent, **`slot="left-aside"`** on
|
|
6399
|
+
* **`xpl-top-nav`** (list host is **`.xpl-top-nav__left-primary`** while slotted nodes stay light-DOM children of
|
|
6400
|
+
* **`xpl-top-nav`**), or default-slot rows under **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**. That flag is
|
|
5574
6401
|
* kept in **`@State`** and refreshed after render plus via **`MutationObserver`** on the host (**`class`**, **`slot`**) and
|
|
5575
6402
|
* on **`parentElement`** (**`role`**) or on **`.xpl-top-nav__left-primary`** (**`role`**) for **`slot="left-aside"`** under **`xpl-top-nav`**) so DOM context changes
|
|
5576
6403
|
* without a full reconnect still re-sync. The internal
|
|
5577
6404
|
* **`xpl-top-nav__brand`** row omits **`listitem`** (it sits in **`.xpl-top-nav__brand-bar`**, not **`.xpl-top-nav__left-primary`**),
|
|
5578
6405
|
* as do **`slot="right-aside-mobile"`** rows (not a list). **`slot="dropdown"`** uses a local **`.xpl-top-nav-item__dropdown`**
|
|
5579
6406
|
* panel (not **`xpl-dropdown`**); see **`TECH_DEBT.md`**.
|
|
6407
|
+
* **This component does triple duty:** a plain bar item, a dropdown trigger (**`slot="dropdown"`** present), and a
|
|
6408
|
+
* dropdown/menu **row** (nested inside **`xpl-nav-header-menu`** or **`xpl-top-nav-menu`**). The **`description`** prop
|
|
6409
|
+
* only applies in the row context — bar items and triggers do not show it in Figma.
|
|
5580
6410
|
* **Default slot (no `label`):** do not put **`xpl-top-nav-item__inner`** or other **`xpl-top-nav-item__*`** classes on
|
|
5581
6411
|
* custom trigger content — the component renders the inner wrapper and BEM elements.
|
|
5582
6412
|
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens resolve to dark-mode
|
|
@@ -5588,12 +6418,16 @@ declare namespace LocalJSX {
|
|
|
5588
6418
|
* @default false
|
|
5589
6419
|
*/
|
|
5590
6420
|
"active"?: boolean;
|
|
6421
|
+
/**
|
|
6422
|
+
* Optional description line shown below **`label`** (row context only, e.g. inside **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**). Ignored when **`label`** is not set.
|
|
6423
|
+
*/
|
|
6424
|
+
"description"?: string;
|
|
5591
6425
|
/**
|
|
5592
6426
|
* If set without **`slot="dropdown"`**, the inner control renders as a native **`<a href>`** (link mode).
|
|
5593
6427
|
*/
|
|
5594
6428
|
"href"?: string;
|
|
5595
6429
|
/**
|
|
5596
|
-
* Icon name from **`@xplortech/apollo-icons`** (shown before the label when **`label`** is set).
|
|
6430
|
+
* Icon name from **`@xplortech/apollo-icons`** (shown before the label when **`label`** is set). Ignored when **`slot="leading-icon"`** content is present.
|
|
5597
6431
|
* @default ''
|
|
5598
6432
|
*/
|
|
5599
6433
|
"icon"?: string;
|
|
@@ -5606,15 +6440,57 @@ declare namespace LocalJSX {
|
|
|
5606
6440
|
*/
|
|
5607
6441
|
"label"?: string;
|
|
5608
6442
|
/**
|
|
5609
|
-
* Emitted for plain items (button or link) on pointer **click**, or when keyboard activation produces a **`click
|
|
6443
|
+
* Emitted for plain items (button or link) on pointer **click**, or when keyboard activation produces a **`click`**: the native **`<button>`** fires a real **`click`** on **Enter** / **Space**, a native **`<a href>`** on **Enter**, and **Space** on a link maps to a programmatic **`.click()`**. **`detail`** is always the real **`MouseEvent`** from that activation (keyboard-driven clicks have **`detail === 0`**). Not emitted when **`slot="dropdown"`** is used.
|
|
5610
6444
|
*/
|
|
5611
6445
|
"onNavItemClick"?: (event: XplTopNavItemCustomEvent<MouseEvent>) => void;
|
|
6446
|
+
/**
|
|
6447
|
+
* Emitted whenever **`open`** changes (click, hover, keyboard, Escape, outside click, or programmatic).
|
|
6448
|
+
*/
|
|
6449
|
+
"onOpenChange"?: (event: XplTopNavItemCustomEvent<boolean>) => void;
|
|
6450
|
+
/**
|
|
6451
|
+
* Whether the **`slot="dropdown"`** panel is open. Reflected to the **`open`** attribute so consumers can drive it (controlled) or read it back (uncontrolled, toggled internally on click / hover / keyboard activation). Prefer **`openMenu()`** / **`closeMenu()`** / **`toggleMenu()`** over setting this directly from event handlers.
|
|
6452
|
+
* @default false
|
|
6453
|
+
*/
|
|
6454
|
+
"open"?: boolean;
|
|
6455
|
+
/**
|
|
6456
|
+
* How the **`slot="dropdown"`** panel opens. **`hover`** is gated on **`TOP_NAV_ITEM_HOVER_OPEN_MQ`** (hover-capable, fine pointer, **`md`** and up) — below that, or on touch / coarse-pointer devices, **`hover`** falls back to click/tap. Keyboard activation (Enter / Space) always toggles regardless of **`openMode`**.
|
|
6457
|
+
* @default 'click'
|
|
6458
|
+
*/
|
|
6459
|
+
"openMode"?: 'click' | 'hover';
|
|
5612
6460
|
/**
|
|
5613
6461
|
* When true, sets **`aria-current="page"`** and selected styling.
|
|
5614
6462
|
* @default false
|
|
5615
6463
|
*/
|
|
5616
6464
|
"selected"?: boolean;
|
|
5617
6465
|
}
|
|
6466
|
+
/**
|
|
6467
|
+
* Thin grouping container for **`xpl-top-nav-item`** rows — the panel content for a desktop flyout
|
|
6468
|
+
* (**`slot="dropdown"`** on the parent **`xpl-top-nav-item`**) and, on small screens, the **mobile
|
|
6469
|
+
* cascade**: the same markup drills in to a **Level 2** view in place, with an auto-rendered **back
|
|
6470
|
+
* row** (leading **`chevron-left`** + this component's **`label`**) as the first row. Tapping the back
|
|
6471
|
+
* row closes the parent trigger's dropdown (**`closeMenu()`**), returning to **Level 1** and restoring
|
|
6472
|
+
* focus to the parent trigger. No item logic otherwise lives here — row behavior (icons, description,
|
|
6473
|
+
* links, nested dropdowns) is entirely **`xpl-top-nav-item`**.
|
|
6474
|
+
* **One authoring markup, two renderings:** consumers write this once; **`isMobileCascade`** (synced
|
|
6475
|
+
* from **`TOP_NAV_MOBILE_MQ`**) decides whether the back row renders. Desktop never sees it — the
|
|
6476
|
+
* flyout is a single level of links (see `xpl-top-nav-item`'s cascade-depth notes).
|
|
6477
|
+
* **Panel chrome** is shared with **`xpl-nav-header-menu`** (the account menu): width
|
|
6478
|
+
* (**`--xpl-top-nav-panel-width`**), surface, shadow, radius, and vertical padding all come from the
|
|
6479
|
+
* same selector in `top-nav.css` so the desktop flyout, mobile cascade, and account menu read as one
|
|
6480
|
+
* visual family.
|
|
6481
|
+
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens
|
|
6482
|
+
* resolve to dark-mode values even when the page root is light (consistent with the rest of the
|
|
6483
|
+
* **`xpl-top-nav`** family).
|
|
6484
|
+
*/
|
|
6485
|
+
interface XplTopNavMenu {
|
|
6486
|
+
/**
|
|
6487
|
+
* Accessible name for the list (**`aria-label`** on the host) and the label shown in the mobile cascade back row when drilling back out of this group.
|
|
6488
|
+
*/
|
|
6489
|
+
"label"?: string;
|
|
6490
|
+
}
|
|
6491
|
+
/**
|
|
6492
|
+
* @since 0.1.1
|
|
6493
|
+
*/
|
|
5618
6494
|
interface XplUtilityBar {
|
|
5619
6495
|
/**
|
|
5620
6496
|
* @property {boolean} - Optional property that defines whether or not the main nav is open at startup.
|
|
@@ -6015,6 +6891,12 @@ declare namespace LocalJSX {
|
|
|
6015
6891
|
"label": string;
|
|
6016
6892
|
"open": boolean;
|
|
6017
6893
|
}
|
|
6894
|
+
interface XplSideNavHeaderItemAttributes {
|
|
6895
|
+
"icon": string;
|
|
6896
|
+
"label": string;
|
|
6897
|
+
"selected": boolean;
|
|
6898
|
+
"type": 'product-label' | 'sub-account';
|
|
6899
|
+
}
|
|
6018
6900
|
interface XplSideNavItemAttributes {
|
|
6019
6901
|
"disabled": boolean;
|
|
6020
6902
|
"expanded": boolean;
|
|
@@ -6025,6 +6907,11 @@ declare namespace LocalJSX {
|
|
|
6025
6907
|
"link": boolean;
|
|
6026
6908
|
"selected": boolean;
|
|
6027
6909
|
}
|
|
6910
|
+
interface XplSideNavSectionAttributes {
|
|
6911
|
+
"collapsible": boolean;
|
|
6912
|
+
"expanded": boolean;
|
|
6913
|
+
"heading": string;
|
|
6914
|
+
}
|
|
6028
6915
|
interface XplSkeletonAttributes {
|
|
6029
6916
|
"classNames": string;
|
|
6030
6917
|
"fullWidth": boolean;
|
|
@@ -6064,6 +6951,8 @@ declare namespace LocalJSX {
|
|
|
6064
6951
|
"totalSteps": number;
|
|
6065
6952
|
}
|
|
6066
6953
|
interface XplTabAttributes {
|
|
6954
|
+
"badge": string;
|
|
6955
|
+
"badgeVariant": BadgePalette;
|
|
6067
6956
|
"disabled": boolean;
|
|
6068
6957
|
"groupDisabled": boolean;
|
|
6069
6958
|
"icon": string;
|
|
@@ -6102,11 +6991,12 @@ declare namespace LocalJSX {
|
|
|
6102
6991
|
"tagId": string;
|
|
6103
6992
|
}
|
|
6104
6993
|
interface XplToastAttributes {
|
|
6105
|
-
"variant": 'neutral' | 'warning' | 'success';
|
|
6106
|
-
"showIcon": boolean;
|
|
6107
6994
|
"caption": string;
|
|
6108
6995
|
"dismissable": boolean;
|
|
6996
|
+
"dismissible": boolean;
|
|
6997
|
+
"showIcon": boolean;
|
|
6109
6998
|
"timeout": number;
|
|
6999
|
+
"variant": 'neutral' | 'warning' | 'success';
|
|
6110
7000
|
}
|
|
6111
7001
|
interface XplToggleAttributes {
|
|
6112
7002
|
"checked": boolean;
|
|
@@ -6142,12 +7032,18 @@ declare namespace LocalJSX {
|
|
|
6142
7032
|
}
|
|
6143
7033
|
interface XplTopNavItemAttributes {
|
|
6144
7034
|
"active": boolean;
|
|
7035
|
+
"description": string;
|
|
6145
7036
|
"href": string;
|
|
6146
7037
|
"icon": string;
|
|
6147
7038
|
"itemAriaLabel": string;
|
|
6148
7039
|
"label": string;
|
|
7040
|
+
"open": boolean;
|
|
7041
|
+
"openMode": 'click' | 'hover';
|
|
6149
7042
|
"selected": boolean;
|
|
6150
7043
|
}
|
|
7044
|
+
interface XplTopNavMenuAttributes {
|
|
7045
|
+
"label": string;
|
|
7046
|
+
}
|
|
6151
7047
|
interface XplUtilityBarAttributes {
|
|
6152
7048
|
"navControl": boolean;
|
|
6153
7049
|
"isNavOpenAtStartup": boolean;
|
|
@@ -6205,7 +7101,9 @@ declare namespace LocalJSX {
|
|
|
6205
7101
|
"xpl-secondary-nav": XplSecondaryNav;
|
|
6206
7102
|
"xpl-select": Omit<XplSelect, keyof XplSelectAttributes> & { [K in keyof XplSelect & keyof XplSelectAttributes]?: XplSelect[K] } & { [K in keyof XplSelect & keyof XplSelectAttributes as `attr:${K}`]?: XplSelectAttributes[K] } & { [K in keyof XplSelect & keyof XplSelectAttributes as `prop:${K}`]?: XplSelect[K] };
|
|
6207
7103
|
"xpl-side-nav": Omit<XplSideNav, keyof XplSideNavAttributes> & { [K in keyof XplSideNav & keyof XplSideNavAttributes]?: XplSideNav[K] } & { [K in keyof XplSideNav & keyof XplSideNavAttributes as `attr:${K}`]?: XplSideNavAttributes[K] } & { [K in keyof XplSideNav & keyof XplSideNavAttributes as `prop:${K}`]?: XplSideNav[K] };
|
|
7104
|
+
"xpl-side-nav-header-item": Omit<XplSideNavHeaderItem, keyof XplSideNavHeaderItemAttributes> & { [K in keyof XplSideNavHeaderItem & keyof XplSideNavHeaderItemAttributes]?: XplSideNavHeaderItem[K] } & { [K in keyof XplSideNavHeaderItem & keyof XplSideNavHeaderItemAttributes as `attr:${K}`]?: XplSideNavHeaderItemAttributes[K] } & { [K in keyof XplSideNavHeaderItem & keyof XplSideNavHeaderItemAttributes as `prop:${K}`]?: XplSideNavHeaderItem[K] };
|
|
6208
7105
|
"xpl-side-nav-item": Omit<XplSideNavItem, keyof XplSideNavItemAttributes> & { [K in keyof XplSideNavItem & keyof XplSideNavItemAttributes]?: XplSideNavItem[K] } & { [K in keyof XplSideNavItem & keyof XplSideNavItemAttributes as `attr:${K}`]?: XplSideNavItemAttributes[K] } & { [K in keyof XplSideNavItem & keyof XplSideNavItemAttributes as `prop:${K}`]?: XplSideNavItem[K] };
|
|
7106
|
+
"xpl-side-nav-section": Omit<XplSideNavSection, keyof XplSideNavSectionAttributes> & { [K in keyof XplSideNavSection & keyof XplSideNavSectionAttributes]?: XplSideNavSection[K] } & { [K in keyof XplSideNavSection & keyof XplSideNavSectionAttributes as `attr:${K}`]?: XplSideNavSectionAttributes[K] } & { [K in keyof XplSideNavSection & keyof XplSideNavSectionAttributes as `prop:${K}`]?: XplSideNavSection[K] };
|
|
6209
7107
|
"xpl-skeleton": Omit<XplSkeleton, keyof XplSkeletonAttributes> & { [K in keyof XplSkeleton & keyof XplSkeletonAttributes]?: XplSkeleton[K] } & { [K in keyof XplSkeleton & keyof XplSkeletonAttributes as `attr:${K}`]?: XplSkeletonAttributes[K] } & { [K in keyof XplSkeleton & keyof XplSkeletonAttributes as `prop:${K}`]?: XplSkeleton[K] };
|
|
6210
7108
|
"xpl-slideout": Omit<XplSlideout, keyof XplSlideoutAttributes> & { [K in keyof XplSlideout & keyof XplSlideoutAttributes]?: XplSlideout[K] } & { [K in keyof XplSlideout & keyof XplSlideoutAttributes as `attr:${K}`]?: XplSlideoutAttributes[K] } & { [K in keyof XplSlideout & keyof XplSlideoutAttributes as `prop:${K}`]?: XplSlideout[K] };
|
|
6211
7109
|
"xpl-spotlight": Omit<XplSpotlight, keyof XplSpotlightAttributes> & { [K in keyof XplSpotlight & keyof XplSpotlightAttributes]?: XplSpotlight[K] } & { [K in keyof XplSpotlight & keyof XplSpotlightAttributes as `attr:${K}`]?: XplSpotlightAttributes[K] } & { [K in keyof XplSpotlight & keyof XplSpotlightAttributes as `prop:${K}`]?: XplSpotlight[K] };
|
|
@@ -6222,6 +7120,7 @@ declare namespace LocalJSX {
|
|
|
6222
7120
|
"xpl-tooltip": Omit<XplTooltip, keyof XplTooltipAttributes> & { [K in keyof XplTooltip & keyof XplTooltipAttributes]?: XplTooltip[K] } & { [K in keyof XplTooltip & keyof XplTooltipAttributes as `attr:${K}`]?: XplTooltipAttributes[K] } & { [K in keyof XplTooltip & keyof XplTooltipAttributes as `prop:${K}`]?: XplTooltip[K] };
|
|
6223
7121
|
"xpl-top-nav": Omit<XplTopNav, keyof XplTopNavAttributes> & { [K in keyof XplTopNav & keyof XplTopNavAttributes]?: XplTopNav[K] } & { [K in keyof XplTopNav & keyof XplTopNavAttributes as `attr:${K}`]?: XplTopNavAttributes[K] } & { [K in keyof XplTopNav & keyof XplTopNavAttributes as `prop:${K}`]?: XplTopNav[K] };
|
|
6224
7122
|
"xpl-top-nav-item": Omit<XplTopNavItem, keyof XplTopNavItemAttributes> & { [K in keyof XplTopNavItem & keyof XplTopNavItemAttributes]?: XplTopNavItem[K] } & { [K in keyof XplTopNavItem & keyof XplTopNavItemAttributes as `attr:${K}`]?: XplTopNavItemAttributes[K] } & { [K in keyof XplTopNavItem & keyof XplTopNavItemAttributes as `prop:${K}`]?: XplTopNavItem[K] };
|
|
7123
|
+
"xpl-top-nav-menu": Omit<XplTopNavMenu, keyof XplTopNavMenuAttributes> & { [K in keyof XplTopNavMenu & keyof XplTopNavMenuAttributes]?: XplTopNavMenu[K] } & { [K in keyof XplTopNavMenu & keyof XplTopNavMenuAttributes as `attr:${K}`]?: XplTopNavMenuAttributes[K] } & { [K in keyof XplTopNavMenu & keyof XplTopNavMenuAttributes as `prop:${K}`]?: XplTopNavMenu[K] };
|
|
6225
7124
|
"xpl-utility-bar": Omit<XplUtilityBar, keyof XplUtilityBarAttributes> & { [K in keyof XplUtilityBar & keyof XplUtilityBarAttributes]?: XplUtilityBar[K] } & { [K in keyof XplUtilityBar & keyof XplUtilityBarAttributes as `attr:${K}`]?: XplUtilityBarAttributes[K] } & { [K in keyof XplUtilityBar & keyof XplUtilityBarAttributes as `prop:${K}`]?: XplUtilityBar[K] };
|
|
6226
7125
|
}
|
|
6227
7126
|
}
|
|
@@ -6229,34 +7128,106 @@ export { LocalJSX as JSX };
|
|
|
6229
7128
|
declare module "@stencil/core" {
|
|
6230
7129
|
export namespace JSX {
|
|
6231
7130
|
interface IntrinsicElements {
|
|
7131
|
+
/**
|
|
7132
|
+
* @since 2.0.0
|
|
7133
|
+
*/
|
|
6232
7134
|
"xpl-accordion": LocalJSX.IntrinsicElements["xpl-accordion"] & JSXBase.HTMLAttributes<HTMLXplAccordionElement>;
|
|
7135
|
+
/**
|
|
7136
|
+
* @since 0.5.0
|
|
7137
|
+
*/
|
|
6233
7138
|
"xpl-application-shell": LocalJSX.IntrinsicElements["xpl-application-shell"] & JSXBase.HTMLAttributes<HTMLXplApplicationShellElement>;
|
|
7139
|
+
/**
|
|
7140
|
+
* @since 0.1.1
|
|
7141
|
+
*/
|
|
6234
7142
|
"xpl-avatar": LocalJSX.IntrinsicElements["xpl-avatar"] & JSXBase.HTMLAttributes<HTMLXplAvatarElement>;
|
|
7143
|
+
/**
|
|
7144
|
+
* @since 0.1.2
|
|
7145
|
+
*/
|
|
6235
7146
|
"xpl-backdrop": LocalJSX.IntrinsicElements["xpl-backdrop"] & JSXBase.HTMLAttributes<HTMLXplBackdropElement>;
|
|
7147
|
+
/**
|
|
7148
|
+
* @since 0.1.1
|
|
7149
|
+
*/
|
|
6236
7150
|
"xpl-badge": LocalJSX.IntrinsicElements["xpl-badge"] & JSXBase.HTMLAttributes<HTMLXplBadgeElement>;
|
|
7151
|
+
/**
|
|
7152
|
+
* @since 2.6.0
|
|
7153
|
+
*/
|
|
6237
7154
|
"xpl-banner": LocalJSX.IntrinsicElements["xpl-banner"] & JSXBase.HTMLAttributes<HTMLXplBannerElement>;
|
|
6238
7155
|
"xpl-breadcrumb-item": LocalJSX.IntrinsicElements["xpl-breadcrumb-item"] & JSXBase.HTMLAttributes<HTMLXplBreadcrumbItemElement>;
|
|
6239
7156
|
"xpl-breadcrumbs": LocalJSX.IntrinsicElements["xpl-breadcrumbs"] & JSXBase.HTMLAttributes<HTMLXplBreadcrumbsElement>;
|
|
7157
|
+
/**
|
|
7158
|
+
* @since 0.1.1
|
|
7159
|
+
*/
|
|
6240
7160
|
"xpl-button": LocalJSX.IntrinsicElements["xpl-button"] & JSXBase.HTMLAttributes<HTMLXplButtonElement>;
|
|
7161
|
+
/**
|
|
7162
|
+
* @since 0.4.0
|
|
7163
|
+
*/
|
|
6241
7164
|
"xpl-button-row": LocalJSX.IntrinsicElements["xpl-button-row"] & JSXBase.HTMLAttributes<HTMLXplButtonRowElement>;
|
|
7165
|
+
/**
|
|
7166
|
+
* @since 2.0.0
|
|
7167
|
+
*/
|
|
6242
7168
|
"xpl-calendar": LocalJSX.IntrinsicElements["xpl-calendar"] & JSXBase.HTMLAttributes<HTMLXplCalendarElement>;
|
|
7169
|
+
/**
|
|
7170
|
+
* @since 0.1.1
|
|
7171
|
+
*/
|
|
6243
7172
|
"xpl-checkbox": LocalJSX.IntrinsicElements["xpl-checkbox"] & JSXBase.HTMLAttributes<HTMLXplCheckboxElement>;
|
|
7173
|
+
/**
|
|
7174
|
+
* @since 0.1.1
|
|
7175
|
+
*/
|
|
6244
7176
|
"xpl-choicelist": LocalJSX.IntrinsicElements["xpl-choicelist"] & JSXBase.HTMLAttributes<HTMLXplChoicelistElement>;
|
|
7177
|
+
/**
|
|
7178
|
+
* @since 0.1.2
|
|
7179
|
+
*/
|
|
6245
7180
|
"xpl-content-area": LocalJSX.IntrinsicElements["xpl-content-area"] & JSXBase.HTMLAttributes<HTMLXplContentAreaElement>;
|
|
7181
|
+
/**
|
|
7182
|
+
* @since 1.0.0
|
|
7183
|
+
*/
|
|
6246
7184
|
"xpl-dashboard": LocalJSX.IntrinsicElements["xpl-dashboard"] & JSXBase.HTMLAttributes<HTMLXplDashboardElement>;
|
|
7185
|
+
/**
|
|
7186
|
+
* @since 1.0.0
|
|
7187
|
+
*/
|
|
6247
7188
|
"xpl-data-card": LocalJSX.IntrinsicElements["xpl-data-card"] & JSXBase.HTMLAttributes<HTMLXplDataCardElement>;
|
|
7189
|
+
/**
|
|
7190
|
+
* @since 0.3.0
|
|
7191
|
+
*/
|
|
6248
7192
|
"xpl-divider": LocalJSX.IntrinsicElements["xpl-divider"] & JSXBase.HTMLAttributes<HTMLXplDividerElement>;
|
|
7193
|
+
/**
|
|
7194
|
+
* @since 0.4.0
|
|
7195
|
+
*/
|
|
6249
7196
|
"xpl-dropdown": LocalJSX.IntrinsicElements["xpl-dropdown"] & JSXBase.HTMLAttributes<HTMLXplDropdownElement>;
|
|
6250
7197
|
"xpl-dropdown-group": LocalJSX.IntrinsicElements["xpl-dropdown-group"] & JSXBase.HTMLAttributes<HTMLXplDropdownGroupElement>;
|
|
6251
7198
|
"xpl-dropdown-heading": LocalJSX.IntrinsicElements["xpl-dropdown-heading"] & JSXBase.HTMLAttributes<HTMLXplDropdownHeadingElement>;
|
|
6252
7199
|
"xpl-dropdown-option": LocalJSX.IntrinsicElements["xpl-dropdown-option"] & JSXBase.HTMLAttributes<HTMLXplDropdownOptionElement>;
|
|
7200
|
+
/**
|
|
7201
|
+
* @since 1.4.0
|
|
7202
|
+
*/
|
|
6253
7203
|
"xpl-dynamic-table": LocalJSX.IntrinsicElements["xpl-dynamic-table"] & JSXBase.HTMLAttributes<HTMLXplDynamicTableElement>;
|
|
7204
|
+
/**
|
|
7205
|
+
* @since 1.3.0
|
|
7206
|
+
*/
|
|
6254
7207
|
"xpl-dynamic-table-cell": LocalJSX.IntrinsicElements["xpl-dynamic-table-cell"] & JSXBase.HTMLAttributes<HTMLXplDynamicTableCellElement>;
|
|
7208
|
+
/**
|
|
7209
|
+
* @since 1.3.0
|
|
7210
|
+
*/
|
|
6255
7211
|
"xpl-dynamic-table-row": LocalJSX.IntrinsicElements["xpl-dynamic-table-row"] & JSXBase.HTMLAttributes<HTMLXplDynamicTableRowElement>;
|
|
7212
|
+
/**
|
|
7213
|
+
* @since 0.4.0
|
|
7214
|
+
*/
|
|
6256
7215
|
"xpl-grid": LocalJSX.IntrinsicElements["xpl-grid"] & JSXBase.HTMLAttributes<HTMLXplGridElement>;
|
|
7216
|
+
/**
|
|
7217
|
+
* @since 0.4.0
|
|
7218
|
+
*/
|
|
6257
7219
|
"xpl-grid-item": LocalJSX.IntrinsicElements["xpl-grid-item"] & JSXBase.HTMLAttributes<HTMLXplGridItemElement>;
|
|
7220
|
+
/**
|
|
7221
|
+
* @since 1.2.0
|
|
7222
|
+
*/
|
|
6258
7223
|
"xpl-header-accordion": LocalJSX.IntrinsicElements["xpl-header-accordion"] & JSXBase.HTMLAttributes<HTMLXplHeaderAccordionElement>;
|
|
7224
|
+
/**
|
|
7225
|
+
* @since 1.0.0
|
|
7226
|
+
*/
|
|
6259
7227
|
"xpl-icon": LocalJSX.IntrinsicElements["xpl-icon"] & JSXBase.HTMLAttributes<HTMLXplIconElement>;
|
|
7228
|
+
/**
|
|
7229
|
+
* @since 0.3.0
|
|
7230
|
+
*/
|
|
6260
7231
|
"xpl-input": LocalJSX.IntrinsicElements["xpl-input"] & JSXBase.HTMLAttributes<HTMLXplInputElement>;
|
|
6261
7232
|
"xpl-input-color": LocalJSX.IntrinsicElements["xpl-input-color"] & JSXBase.HTMLAttributes<HTMLXplInputColorElement>;
|
|
6262
7233
|
"xpl-input-date": LocalJSX.IntrinsicElements["xpl-input-date"] & JSXBase.HTMLAttributes<HTMLXplInputDateElement>;
|
|
@@ -6267,10 +7238,22 @@ declare module "@stencil/core" {
|
|
|
6267
7238
|
"xpl-input-phone": LocalJSX.IntrinsicElements["xpl-input-phone"] & JSXBase.HTMLAttributes<HTMLXplInputPhoneElement>;
|
|
6268
7239
|
"xpl-input-search": LocalJSX.IntrinsicElements["xpl-input-search"] & JSXBase.HTMLAttributes<HTMLXplInputSearchElement>;
|
|
6269
7240
|
"xpl-input-time": LocalJSX.IntrinsicElements["xpl-input-time"] & JSXBase.HTMLAttributes<HTMLXplInputTimeElement>;
|
|
7241
|
+
/**
|
|
7242
|
+
* @since 1.9.1
|
|
7243
|
+
*/
|
|
6270
7244
|
"xpl-large-card": LocalJSX.IntrinsicElements["xpl-large-card"] & JSXBase.HTMLAttributes<HTMLXplLargeCardElement>;
|
|
7245
|
+
/**
|
|
7246
|
+
* @since 0.4.0
|
|
7247
|
+
*/
|
|
6271
7248
|
"xpl-list": LocalJSX.IntrinsicElements["xpl-list"] & JSXBase.HTMLAttributes<HTMLXplListElement>;
|
|
6272
7249
|
"xpl-list-item": LocalJSX.IntrinsicElements["xpl-list-item"] & JSXBase.HTMLAttributes<HTMLXplListItemElement>;
|
|
7250
|
+
/**
|
|
7251
|
+
* @since 0.1.2
|
|
7252
|
+
*/
|
|
6273
7253
|
"xpl-main-nav": LocalJSX.IntrinsicElements["xpl-main-nav"] & JSXBase.HTMLAttributes<HTMLXplMainNavElement>;
|
|
7254
|
+
/**
|
|
7255
|
+
* @since 1.1.0
|
|
7256
|
+
*/
|
|
6274
7257
|
"xpl-modal": LocalJSX.IntrinsicElements["xpl-modal"] & JSXBase.HTMLAttributes<HTMLXplModalElement>;
|
|
6275
7258
|
/**
|
|
6276
7259
|
* Profile / account block (username, email, default slot for **`xpl-top-nav-item`** / **`xpl-divider`**).
|
|
@@ -6291,22 +7274,47 @@ declare module "@stencil/core" {
|
|
|
6291
7274
|
* values even when the page root is light (same contract as **`xpl-top-nav`** / **`xpl-top-nav-item`**).
|
|
6292
7275
|
*/
|
|
6293
7276
|
"xpl-nav-header-menu": LocalJSX.IntrinsicElements["xpl-nav-header-menu"] & JSXBase.HTMLAttributes<HTMLXplNavHeaderMenuElement>;
|
|
7277
|
+
/**
|
|
7278
|
+
* @since 0.1.2
|
|
7279
|
+
*/
|
|
6294
7280
|
"xpl-nav-item": LocalJSX.IntrinsicElements["xpl-nav-item"] & JSXBase.HTMLAttributes<HTMLXplNavItemElement>;
|
|
7281
|
+
/**
|
|
7282
|
+
* @since 0.1.1
|
|
7283
|
+
*/
|
|
6295
7284
|
"xpl-pagination": LocalJSX.IntrinsicElements["xpl-pagination"] & JSXBase.HTMLAttributes<HTMLXplPaginationElement>;
|
|
6296
7285
|
/**
|
|
6297
7286
|
* A stateless container that defines a section on a page and can house any
|
|
6298
7287
|
* type of content. Panels are not dismissible and may contain a top accent.
|
|
7288
|
+
* @since 2.6.0
|
|
6299
7289
|
*/
|
|
6300
7290
|
"xpl-panel": LocalJSX.IntrinsicElements["xpl-panel"] & JSXBase.HTMLAttributes<HTMLXplPanelElement>;
|
|
7291
|
+
/**
|
|
7292
|
+
* @since 2.0.0
|
|
7293
|
+
*/
|
|
6301
7294
|
"xpl-popover": LocalJSX.IntrinsicElements["xpl-popover"] & JSXBase.HTMLAttributes<HTMLXplPopoverElement>;
|
|
7295
|
+
/**
|
|
7296
|
+
* @since 2.6.0
|
|
7297
|
+
*/
|
|
6302
7298
|
"xpl-progress-bar": LocalJSX.IntrinsicElements["xpl-progress-bar"] & JSXBase.HTMLAttributes<HTMLXplProgressBarElement>;
|
|
7299
|
+
/**
|
|
7300
|
+
* @since 2.7.0
|
|
7301
|
+
*/
|
|
6303
7302
|
"xpl-progress-indicator": LocalJSX.IntrinsicElements["xpl-progress-indicator"] & JSXBase.HTMLAttributes<HTMLXplProgressIndicatorElement>;
|
|
7303
|
+
/**
|
|
7304
|
+
* @since 0.1.1
|
|
7305
|
+
*/
|
|
6304
7306
|
"xpl-radio": LocalJSX.IntrinsicElements["xpl-radio"] & JSXBase.HTMLAttributes<HTMLXplRadioElement>;
|
|
7307
|
+
/**
|
|
7308
|
+
* @since 0.3.0
|
|
7309
|
+
*/
|
|
6305
7310
|
"xpl-secondary-nav": LocalJSX.IntrinsicElements["xpl-secondary-nav"] & JSXBase.HTMLAttributes<HTMLXplSecondaryNavElement>;
|
|
7311
|
+
/**
|
|
7312
|
+
* @since 0.4.0
|
|
7313
|
+
*/
|
|
6306
7314
|
"xpl-select": LocalJSX.IntrinsicElements["xpl-select"] & JSXBase.HTMLAttributes<HTMLXplSelectElement>;
|
|
6307
7315
|
/**
|
|
6308
|
-
* Slot-based sidebar for app navigation: a scrollable
|
|
6309
|
-
* `nav-footer`. Compose with `xpl-side-nav-item` for rows.
|
|
7316
|
+
* Slot-based sidebar for app navigation: a scrollable `nav-header` + `section`
|
|
7317
|
+
* area and a fixed `nav-footer`. Compose with `xpl-side-nav-item` for rows.
|
|
6310
7318
|
* **Mobile (v2):** below the Tailwind `md` breakpoint, the sidebar collapses to a
|
|
6311
7319
|
* ~56px top bar with a toggle button (`sidebar-left-show` / `sidebar-left-hide`).
|
|
6312
7320
|
* Activating the toggle opens a drawer containing the `section` + `nav-footer`
|
|
@@ -6318,8 +7326,33 @@ declare module "@stencil/core" {
|
|
|
6318
7326
|
* the `openChange` event, and the `toggle()` / `setOpen()` methods.
|
|
6319
7327
|
* **v2 breaking change (beta):** consumers who wrapped their own mobile toggle
|
|
6320
7328
|
* around `xpl-side-nav` should remove it — the toggle and drawer are now built in.
|
|
7329
|
+
* @since 2.6.0
|
|
6321
7330
|
*/
|
|
6322
7331
|
"xpl-side-nav": LocalJSX.IntrinsicElements["xpl-side-nav"] & JSXBase.HTMLAttributes<HTMLXplSideNavElement>;
|
|
7332
|
+
/**
|
|
7333
|
+
* Header row for `xpl-side-nav`'s `nav-header` slot (Figma `<navHeaderItem>`,
|
|
7334
|
+
* node `51299-9007`). Two types:
|
|
7335
|
+
* - **`product-label` (default)** — a non-interactive `<div>` row that shows the
|
|
7336
|
+
* current product/area name in a subdued color. No click behavior.
|
|
7337
|
+
* - **`sub-account`** — an interactive `<button>` row (e.g. a location / account
|
|
7338
|
+
* switcher). Emits `navigate` on activation (pointer click or keyboard); the
|
|
7339
|
+
* consumer wires this to open a modal or other entity-switching experience.
|
|
7340
|
+
* When no `slot="trailing"` content is provided, an auto chevron
|
|
7341
|
+
* (`chevron-expand-y`, a static dual-arrow glyph — no rotation) renders by default.
|
|
7342
|
+
* Both types support `slot="leading"` / `slot="trailing"` (the `icon` prop is a
|
|
7343
|
+
* convenience shorthand for `slot="leading"`, same as `xpl-side-nav-item`) so they
|
|
7344
|
+
* can scale to future uses. Unlike `xpl-side-nav-item`, the leading/trailing
|
|
7345
|
+
* columns are NOT unconditionally reserved — they only render when there is
|
|
7346
|
+
* content, matching the Figma variants where the leading icon is an optional toggle.
|
|
7347
|
+
* **Note on the `sub-account` hover / selected visual:** the interactive row
|
|
7348
|
+
* mirrors `xpl-side-nav-item` — the hover and selected backgrounds fill a single
|
|
7349
|
+
* `__content` pill that wraps the leading icon + label + trailing chevron, with
|
|
7350
|
+
* an 8px (`--xpl-border-radius-default`) radius. The pill insets 8px from the nav
|
|
7351
|
+
* edge (an 8px gutter on the button) so it lines up with the item rows below it,
|
|
7352
|
+
* and hover/selected therefore highlight the whole row content rather than a
|
|
7353
|
+
* partial fragment.
|
|
7354
|
+
*/
|
|
7355
|
+
"xpl-side-nav-header-item": LocalJSX.IntrinsicElements["xpl-side-nav-header-item"] & JSXBase.HTMLAttributes<HTMLXplSideNavHeaderItemElement>;
|
|
6323
7356
|
/**
|
|
6324
7357
|
* Navigation row for `xpl-side-nav`. Renders a button (default) or a slot-only
|
|
6325
7358
|
* anchor container (`link` mode). Three slot positions are available:
|
|
@@ -6345,25 +7378,85 @@ declare module "@stencil/core" {
|
|
|
6345
7378
|
* | (no trailing slot) | `slot="trailing"` | Add for custom trailing content |
|
|
6346
7379
|
*/
|
|
6347
7380
|
"xpl-side-nav-item": LocalJSX.IntrinsicElements["xpl-side-nav-item"] & JSXBase.HTMLAttributes<HTMLXplSideNavItemElement>;
|
|
7381
|
+
/**
|
|
7382
|
+
* Grouping / accordion header for `xpl-side-nav`. Wraps nested `xpl-side-nav-item`
|
|
7383
|
+
* (and optional divider separators) elements in the default slot and collapses
|
|
7384
|
+
* them as a unit.
|
|
7385
|
+
* Two variants:
|
|
7386
|
+
* - **Collapsible (default, `collapsible=true`)** — a `<button>` header with a
|
|
7387
|
+
* chevron (`chevron-right` collapsed / `chevron-down` expanded, no rotation —
|
|
7388
|
+
* the glyph itself swaps). Click toggles `expanded` and emits `expandedChange`.
|
|
7389
|
+
* - **Static (`collapsible=false`)** — a non-interactive title row with no chevron;
|
|
7390
|
+
* children are always shown. Used for a static section label (e.g. a future
|
|
7391
|
+
* product-name / location-changer header).
|
|
7392
|
+
* Unlike `xpl-side-nav-item[has-children]`, section children are **not indented**
|
|
7393
|
+
* — they align with top-level items at the same leading-icon column.
|
|
7394
|
+
* `slot="badge"` renders an optional badge (e.g. `xpl-badge`) in the header title
|
|
7395
|
+
* row. The wrapper is suppressed when the slot is empty.
|
|
7396
|
+
*/
|
|
7397
|
+
"xpl-side-nav-section": LocalJSX.IntrinsicElements["xpl-side-nav-section"] & JSXBase.HTMLAttributes<HTMLXplSideNavSectionElement>;
|
|
7398
|
+
/**
|
|
7399
|
+
* @since 2.3.6
|
|
7400
|
+
*/
|
|
6348
7401
|
"xpl-skeleton": LocalJSX.IntrinsicElements["xpl-skeleton"] & JSXBase.HTMLAttributes<HTMLXplSkeletonElement>;
|
|
7402
|
+
/**
|
|
7403
|
+
* @since 1.1.0
|
|
7404
|
+
*/
|
|
6349
7405
|
"xpl-slideout": LocalJSX.IntrinsicElements["xpl-slideout"] & JSXBase.HTMLAttributes<HTMLXplSlideoutElement>;
|
|
7406
|
+
/**
|
|
7407
|
+
* @since 2.7.0
|
|
7408
|
+
*/
|
|
6350
7409
|
"xpl-spotlight": LocalJSX.IntrinsicElements["xpl-spotlight"] & JSXBase.HTMLAttributes<HTMLXplSpotlightElement>;
|
|
7410
|
+
/**
|
|
7411
|
+
* @since 2.3.8
|
|
7412
|
+
*/
|
|
6351
7413
|
"xpl-tab": LocalJSX.IntrinsicElements["xpl-tab"] & JSXBase.HTMLAttributes<HTMLXplTabElement>;
|
|
7414
|
+
/**
|
|
7415
|
+
* @since 2.3.8
|
|
7416
|
+
*/
|
|
6352
7417
|
"xpl-tab-panel": LocalJSX.IntrinsicElements["xpl-tab-panel"] & JSXBase.HTMLAttributes<HTMLXplTabPanelElement>;
|
|
7418
|
+
/**
|
|
7419
|
+
* @since 0.1.1
|
|
7420
|
+
*/
|
|
6353
7421
|
"xpl-table": LocalJSX.IntrinsicElements["xpl-table"] & JSXBase.HTMLAttributes<HTMLXplTableElement>;
|
|
7422
|
+
/**
|
|
7423
|
+
* @since 1.0.0
|
|
7424
|
+
*/
|
|
6354
7425
|
"xpl-table-header": LocalJSX.IntrinsicElements["xpl-table-header"] & JSXBase.HTMLAttributes<HTMLXplTableHeaderElement>;
|
|
7426
|
+
/**
|
|
7427
|
+
* @since 1.3.0
|
|
7428
|
+
*/
|
|
6355
7429
|
"xpl-table-header-cell": LocalJSX.IntrinsicElements["xpl-table-header-cell"] & JSXBase.HTMLAttributes<HTMLXplTableHeaderCellElement>;
|
|
7430
|
+
/**
|
|
7431
|
+
* @since 2.3.8
|
|
7432
|
+
*/
|
|
6356
7433
|
"xpl-tabs": LocalJSX.IntrinsicElements["xpl-tabs"] & JSXBase.HTMLAttributes<HTMLXplTabsElement>;
|
|
7434
|
+
/**
|
|
7435
|
+
* @since 0.4.0
|
|
7436
|
+
*/
|
|
6357
7437
|
"xpl-tag": LocalJSX.IntrinsicElements["xpl-tag"] & JSXBase.HTMLAttributes<HTMLXplTagElement>;
|
|
7438
|
+
/**
|
|
7439
|
+
* @since 1.2.0
|
|
7440
|
+
*/
|
|
6358
7441
|
"xpl-toast": LocalJSX.IntrinsicElements["xpl-toast"] & JSXBase.HTMLAttributes<HTMLXplToastElement>;
|
|
7442
|
+
/**
|
|
7443
|
+
* @since 0.3.0
|
|
7444
|
+
*/
|
|
6359
7445
|
"xpl-toggle": LocalJSX.IntrinsicElements["xpl-toggle"] & JSXBase.HTMLAttributes<HTMLXplToggleElement>;
|
|
7446
|
+
/**
|
|
7447
|
+
* @since 1.2.0
|
|
7448
|
+
*/
|
|
6360
7449
|
"xpl-toolbar": LocalJSX.IntrinsicElements["xpl-toolbar"] & JSXBase.HTMLAttributes<HTMLXplToolbarElement>;
|
|
7450
|
+
/**
|
|
7451
|
+
* @since 1.7.0
|
|
7452
|
+
*/
|
|
6361
7453
|
"xpl-tooltip": LocalJSX.IntrinsicElements["xpl-tooltip"] & JSXBase.HTMLAttributes<HTMLXplTooltipElement>;
|
|
6362
7454
|
/**
|
|
6363
7455
|
* Horizontal top navigation with **`left-aside`** and a **right rail**: **`right-aside`** then **user menu**
|
|
6364
7456
|
* (see **`.xpl-top-nav__right-rail`** in `render()`). The account menu uses an internal **`xpl-popover`** (**`bottom-end`**, **`display="menu"`**): built-in trigger uses **`child-account-label`** (prop / attribute) as the label beside a trailing **`chevron-down`** on **`xpl-button`** (**`icon`** / **`iconPosition="end"`**), or **`slot="user-menu-trigger"`** for a custom trigger; panel from **`slot="user-menu"`** (e.g. **`xpl-nav-header-menu`**).
|
|
6365
7457
|
* Optional **`nav-control`** and **`navOpen`**. **`left-aside`** uses **`role="list"`** for primary **`xpl-top-nav-item`** rows (**`role="listitem"`** on each item host). The built-in **`xpl-top-nav__brand`** item omits **`listitem`** (it is not a child of that list). **`label`** maps to **`nav`** **`aria-label`**. Opening state is internal (not a prop) — use **`navOpen`** and host **`xpl-top-nav--open`** for styling.
|
|
6366
7458
|
* **Escape:** With **`nav-control`**, **Escape** closes the mobile drawer and emits **`navOpen`** **`false`** (skips while **any** descendant **`xpl-popover`** is open — detected from each popover’s inner **`.xpl-popover--is-open`** marker — or when a **`xpl-top-nav-item`** dropdown is open — capture/bubble order). Focus returns to the nav toggle after the drawer closes (**Escape** or second toggle click).
|
|
7459
|
+
* **Outside click:** With **`nav-control`**, a click outside the drawer panel (**`.xpl-top-nav__left-primary`**) also closes it and emits **`navOpen`** **`false`** (document **capture**, mirroring **`xpl-top-nav-item`**); it skips clicks on the hamburger toggle and while a descendant **`xpl-popover`** is open, and does not move focus.
|
|
6367
7460
|
* **`xpl-top-nav-item`** **`slot="dropdown"`** uses document **capture** for **Escape** first; the shell uses **bubble**
|
|
6368
7461
|
* on **`ownerDocument`** so nested dropdowns close before the drawer.
|
|
6369
7462
|
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens under this subtree
|
|
@@ -6380,25 +7473,52 @@ declare module "@stencil/core" {
|
|
|
6380
7473
|
* **`slot="right-aside-mobile"`** (below profile, above the list; narrow-only CSS in **`top-nav.css`**) per Figma.
|
|
6381
7474
|
* **Account menu vs drawer:** Opening the built-in account **`xpl-popover`** while the mobile drawer is open **closes the drawer**
|
|
6382
7475
|
* and emits **`navOpen(false)`** so the two layers do not stack.
|
|
7476
|
+
* @since 2.7.0
|
|
6383
7477
|
*/
|
|
6384
7478
|
"xpl-top-nav": LocalJSX.IntrinsicElements["xpl-top-nav"] & JSXBase.HTMLAttributes<HTMLXplTopNavElement>;
|
|
6385
7479
|
/**
|
|
6386
|
-
* Single nav row for **`xpl-top-nav`** / **`xpl-nav-header-menu`**. The host uses
|
|
6387
|
-
* participates in a list: a **`role="list"`** parent, **`slot="left-aside"`** on
|
|
6388
|
-
* **`.xpl-top-nav__left-primary`** while slotted nodes stay light-DOM children of
|
|
6389
|
-
* under **`xpl-nav-header-menu`**. That flag is
|
|
7480
|
+
* Single nav row for **`xpl-top-nav`** / **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**. The host uses
|
|
7481
|
+
* **`role="listitem"`** when the row participates in a list: a **`role="list"`** parent, **`slot="left-aside"`** on
|
|
7482
|
+
* **`xpl-top-nav`** (list host is **`.xpl-top-nav__left-primary`** while slotted nodes stay light-DOM children of
|
|
7483
|
+
* **`xpl-top-nav`**), or default-slot rows under **`xpl-nav-header-menu`** / **`xpl-top-nav-menu`**. That flag is
|
|
6390
7484
|
* kept in **`@State`** and refreshed after render plus via **`MutationObserver`** on the host (**`class`**, **`slot`**) and
|
|
6391
7485
|
* on **`parentElement`** (**`role`**) or on **`.xpl-top-nav__left-primary`** (**`role`**) for **`slot="left-aside"`** under **`xpl-top-nav`**) so DOM context changes
|
|
6392
7486
|
* without a full reconnect still re-sync. The internal
|
|
6393
7487
|
* **`xpl-top-nav__brand`** row omits **`listitem`** (it sits in **`.xpl-top-nav__brand-bar`**, not **`.xpl-top-nav__left-primary`**),
|
|
6394
7488
|
* as do **`slot="right-aside-mobile"`** rows (not a list). **`slot="dropdown"`** uses a local **`.xpl-top-nav-item__dropdown`**
|
|
6395
7489
|
* panel (not **`xpl-dropdown`**); see **`TECH_DEBT.md`**.
|
|
7490
|
+
* **This component does triple duty:** a plain bar item, a dropdown trigger (**`slot="dropdown"`** present), and a
|
|
7491
|
+
* dropdown/menu **row** (nested inside **`xpl-nav-header-menu`** or **`xpl-top-nav-menu`**). The **`description`** prop
|
|
7492
|
+
* only applies in the row context — bar items and triggers do not show it in Figma.
|
|
6396
7493
|
* **Default slot (no `label`):** do not put **`xpl-top-nav-item__inner`** or other **`xpl-top-nav-item__*`** classes on
|
|
6397
7494
|
* custom trigger content — the component renders the inner wrapper and BEM elements.
|
|
6398
7495
|
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens resolve to dark-mode
|
|
6399
7496
|
* values even when the page root is light (consistent with **`xpl-top-nav`**).
|
|
6400
7497
|
*/
|
|
6401
7498
|
"xpl-top-nav-item": LocalJSX.IntrinsicElements["xpl-top-nav-item"] & JSXBase.HTMLAttributes<HTMLXplTopNavItemElement>;
|
|
7499
|
+
/**
|
|
7500
|
+
* Thin grouping container for **`xpl-top-nav-item`** rows — the panel content for a desktop flyout
|
|
7501
|
+
* (**`slot="dropdown"`** on the parent **`xpl-top-nav-item`**) and, on small screens, the **mobile
|
|
7502
|
+
* cascade**: the same markup drills in to a **Level 2** view in place, with an auto-rendered **back
|
|
7503
|
+
* row** (leading **`chevron-left`** + this component's **`label`**) as the first row. Tapping the back
|
|
7504
|
+
* row closes the parent trigger's dropdown (**`closeMenu()`**), returning to **Level 1** and restoring
|
|
7505
|
+
* focus to the parent trigger. No item logic otherwise lives here — row behavior (icons, description,
|
|
7506
|
+
* links, nested dropdowns) is entirely **`xpl-top-nav-item`**.
|
|
7507
|
+
* **One authoring markup, two renderings:** consumers write this once; **`isMobileCascade`** (synced
|
|
7508
|
+
* from **`TOP_NAV_MOBILE_MQ`**) decides whether the back row renders. Desktop never sees it — the
|
|
7509
|
+
* flyout is a single level of links (see `xpl-top-nav-item`'s cascade-depth notes).
|
|
7510
|
+
* **Panel chrome** is shared with **`xpl-nav-header-menu`** (the account menu): width
|
|
7511
|
+
* (**`--xpl-top-nav-panel-width`**), surface, shadow, radius, and vertical padding all come from the
|
|
7512
|
+
* same selector in `top-nav.css` so the desktop flyout, mobile cascade, and account menu read as one
|
|
7513
|
+
* visual family.
|
|
7514
|
+
* **Theming:** The host always includes Foundation’s **`dark`** class so **`--xpl-*`** purpose tokens
|
|
7515
|
+
* resolve to dark-mode values even when the page root is light (consistent with the rest of the
|
|
7516
|
+
* **`xpl-top-nav`** family).
|
|
7517
|
+
*/
|
|
7518
|
+
"xpl-top-nav-menu": LocalJSX.IntrinsicElements["xpl-top-nav-menu"] & JSXBase.HTMLAttributes<HTMLXplTopNavMenuElement>;
|
|
7519
|
+
/**
|
|
7520
|
+
* @since 0.1.1
|
|
7521
|
+
*/
|
|
6402
7522
|
"xpl-utility-bar": LocalJSX.IntrinsicElements["xpl-utility-bar"] & JSXBase.HTMLAttributes<HTMLXplUtilityBarElement>;
|
|
6403
7523
|
}
|
|
6404
7524
|
}
|