@awc-ui/core 1.0.0-beta.2 → 1.0.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -0
- package/dist/cjs/app-globals-V2Kpy_OQ.js +8 -0
- package/dist/cjs/app-globals-V2Kpy_OQ.js.map +1 -0
- package/dist/cjs/engine.wasm-9JtXME10.js +12 -0
- package/dist/cjs/engine.wasm-9JtXME10.js.map +1 -0
- package/dist/cjs/{index-DlQ_5_Mv.js → index-Bm07YAg9.js} +4 -15
- package/dist/cjs/index-Bm07YAg9.js.map +1 -0
- package/dist/cjs/lazy-loading-indicator-CoC-_DMs.js +69 -0
- package/dist/cjs/lazy-loading-indicator-CoC-_DMs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +4 -3
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/md-accordion-item.cjs.entry.js +4 -4
- package/dist/cjs/md-accordion.cjs.entry.js +1 -1
- package/dist/cjs/md-app-bar.cjs.entry.js +2 -2
- package/dist/cjs/md-area-chart.cjs.entry.js +3 -3
- package/dist/cjs/md-autocomplete.cjs.entry.js +6 -5
- package/dist/cjs/md-autocomplete.cjs.entry.js.map +1 -1
- package/dist/cjs/md-avatar_2.cjs.entry.js +4 -4
- package/dist/cjs/md-badge.cjs.entry.js +3 -3
- package/dist/cjs/md-bar-chart.cjs.entry.js +3 -3
- package/dist/cjs/md-bottom-sheet.cjs.entry.js +5 -5
- package/dist/cjs/md-breadcrumb-item.cjs.entry.js +1 -1
- package/dist/cjs/md-breadcrumbs.cjs.entry.js +3 -3
- package/dist/cjs/md-button-group.cjs.entry.js +3 -3
- package/dist/cjs/{md-button_7.cjs.entry.js → md-button_6.cjs.entry.js} +14 -39
- package/dist/cjs/md-button_6.cjs.entry.js.map +1 -0
- package/dist/cjs/md-checkbox.cjs.entry.js +3 -3
- package/dist/cjs/md-chip.cjs.entry.js +3 -3
- package/dist/cjs/md-color-picker.cjs.entry.js +1 -1
- package/dist/cjs/md-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/md-dialog.cjs.entry.js +3 -3
- package/dist/cjs/md-divider.cjs.entry.js +3 -3
- package/dist/cjs/md-fab-menu-item.cjs.entry.js +3 -3
- package/dist/cjs/md-fab-menu.cjs.entry.js +3 -3
- package/dist/cjs/md-fab.cjs.entry.js +3 -3
- package/dist/cjs/md-line-chart.cjs.entry.js +3 -3
- package/dist/cjs/md-list-item.cjs.entry.js +4 -4
- package/dist/cjs/md-list.cjs.entry.js +4 -4
- package/dist/cjs/md-loading-indicator-CmzdcYLR.js +33 -0
- package/dist/cjs/md-loading-indicator-CmzdcYLR.js.map +1 -0
- package/dist/cjs/md-loading-indicator.cjs.entry.js +11 -0
- package/dist/cjs/md-loading-indicator.cjs.entry.js.map +1 -0
- package/dist/cjs/md-menu-item-group.cjs.entry.js +1 -1
- package/dist/cjs/md-menu_2.cjs.entry.js +6 -6
- package/dist/cjs/md-meter.cjs.entry.js +1 -1
- package/dist/cjs/md-multi-select.cjs.entry.js +7 -6
- package/dist/cjs/md-multi-select.cjs.entry.js.map +1 -1
- package/dist/cjs/md-navigation-bar.cjs.entry.js +2 -2
- package/dist/cjs/md-navigation-rail-tab.cjs.entry.js +1 -1
- package/dist/cjs/md-navigation-rail.cjs.entry.js +1 -1
- package/dist/cjs/md-navigation-tab.cjs.entry.js +3 -3
- package/dist/cjs/md-number-field.cjs.entry.js +3 -3
- package/dist/cjs/md-organization-chart.cjs.entry.js +3 -3
- package/dist/cjs/md-otp-field.cjs.entry.js +4 -4
- package/dist/cjs/md-pie-chart.cjs.entry.js +1 -1
- package/dist/cjs/md-progress-indicator.cjs.entry.js +1 -1
- package/dist/cjs/md-rating.cjs.entry.js +1 -1
- package/dist/cjs/md-search.cjs.entry.js +8 -7
- package/dist/cjs/md-search.cjs.entry.js.map +1 -1
- package/dist/cjs/md-segmented-button-set.cjs.entry.js +1 -1
- package/dist/cjs/md-segmented-button.cjs.entry.js +1 -1
- package/dist/cjs/md-select-option.cjs.entry.js +2 -2
- package/dist/cjs/md-select.cjs.entry.js +7 -6
- package/dist/cjs/md-select.cjs.entry.js.map +1 -1
- package/dist/cjs/md-side-sheet.cjs.entry.js +1 -1
- package/dist/cjs/md-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/md-slider.cjs.entry.js +3 -3
- package/dist/cjs/md-sparkline.cjs.entry.js +3 -3
- package/dist/cjs/md-split-button.cjs.entry.js +1 -1
- package/dist/cjs/md-status-dot.cjs.entry.js +2 -2
- package/dist/cjs/md-step.cjs.entry.js +1 -1
- package/dist/cjs/md-stepper.cjs.entry.js +1 -1
- package/dist/cjs/md-sub-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/md-switch.cjs.entry.js +1 -1
- package/dist/cjs/md-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/md-tab-panels.cjs.entry.js +1 -1
- package/dist/cjs/md-tab.cjs.entry.js +1 -1
- package/dist/cjs/md-table-body.cjs.entry.js +1 -1
- package/dist/cjs/md-table-cell.cjs.entry.js +1 -1
- package/dist/cjs/md-table-container.cjs.entry.js +1 -1
- package/dist/cjs/md-table-expand-toggle.cjs.entry.js +1 -1
- package/dist/cjs/md-table-foot.cjs.entry.js +1 -1
- package/dist/cjs/md-table-head.cjs.entry.js +1 -1
- package/dist/cjs/md-table-pagination.cjs.entry.js +1 -1
- package/dist/cjs/md-table-row.cjs.entry.js +1 -1
- package/dist/cjs/md-table-sort-label.cjs.entry.js +1 -1
- package/dist/cjs/md-table-toolbar.cjs.entry.js +1 -1
- package/dist/cjs/md-table.cjs.entry.js +4 -4
- package/dist/cjs/md-tabs.cjs.entry.js +1 -1
- package/dist/cjs/md-text-field.cjs.entry.js +8 -8
- package/dist/cjs/md-time-picker.cjs.entry.js +2 -2
- package/dist/cjs/md-toolbar.cjs.entry.js +1 -1
- package/dist/cjs/md-transfer-list.cjs.entry.js +2 -2
- package/dist/cjs/md3.cjs.js +4 -3
- package/dist/cjs/md3.cjs.js.map +1 -1
- package/dist/cjs/{virtual-select-controller-CqriaZgm.js → virtual-select-controller-C5cSoKfB.js} +10 -9
- package/dist/cjs/virtual-select-controller-C5cSoKfB.js.map +1 -0
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/md-accordion-item/md-accordion-item.js +3 -3
- package/dist/collection/components/md-app-bar/md-app-bar.js +1 -1
- package/dist/collection/components/md-area-chart/md-area-chart.js +2 -2
- package/dist/collection/components/md-autocomplete/md-autocomplete.js +4 -3
- package/dist/collection/components/md-autocomplete/md-autocomplete.js.map +1 -1
- package/dist/collection/components/md-avatar/md-avatar.js +2 -2
- package/dist/collection/components/md-badge/md-badge.js +2 -2
- package/dist/collection/components/md-bar-chart/md-bar-chart.js +2 -2
- package/dist/collection/components/md-bottom-sheet/md-bottom-sheet.js +4 -4
- package/dist/collection/components/md-breadcrumbs/md-breadcrumbs.js +2 -2
- package/dist/collection/components/md-button/md-button.js +4 -3
- package/dist/collection/components/md-button/md-button.js.map +1 -1
- package/dist/collection/components/md-button-group/md-button-group.js +2 -2
- package/dist/collection/components/md-card/md-card.js +2 -2
- package/dist/collection/components/md-checkbox/md-checkbox.js +2 -2
- package/dist/collection/components/md-chip/md-chip.js +2 -2
- package/dist/collection/components/md-date-picker/md-date-picker.js +1 -1
- package/dist/collection/components/md-dialog/md-dialog.js +2 -2
- package/dist/collection/components/md-divider/md-divider.js +2 -2
- package/dist/collection/components/md-fab/md-fab.js +2 -2
- package/dist/collection/components/md-fab-menu/md-fab-menu.js +2 -2
- package/dist/collection/components/md-fab-menu-item/md-fab-menu-item.js +2 -2
- package/dist/collection/components/md-icon-button/md-icon-button.js +4 -4
- package/dist/collection/components/md-line-chart/md-line-chart.js +2 -2
- package/dist/collection/components/md-list/md-list.js +3 -3
- package/dist/collection/components/md-list-item/md-list-item.js +3 -3
- package/dist/collection/components/md-loading-indicator/md-loading-indicator.js +2 -2
- package/dist/collection/components/md-menu/md-menu.js +3 -3
- package/dist/collection/components/md-menu-item/md-menu-item.js +2 -2
- package/dist/collection/components/md-multi-select/md-multi-select.js +5 -4
- package/dist/collection/components/md-multi-select/md-multi-select.js.map +1 -1
- package/dist/collection/components/md-navigation-bar/md-navigation-bar.js +1 -1
- package/dist/collection/components/md-navigation-tab/md-navigation-tab.js +2 -2
- package/dist/collection/components/md-number-field/md-number-field.js +2 -2
- package/dist/collection/components/md-organization-chart/md-organization-chart.js +2 -2
- package/dist/collection/components/md-otp-field/md-otp-field.js +3 -3
- package/dist/collection/components/md-ripple/md-ripple.js +1 -1
- package/dist/collection/components/md-search/md-search.js +7 -6
- package/dist/collection/components/md-search/md-search.js.map +1 -1
- package/dist/collection/components/md-select/md-select.js +5 -4
- package/dist/collection/components/md-select/md-select.js.map +1 -1
- package/dist/collection/components/md-select-option/md-select-option.js +1 -1
- package/dist/collection/components/md-slider/md-slider.js +2 -2
- package/dist/collection/components/md-sparkline/md-sparkline.js +2 -2
- package/dist/collection/components/md-status-dot/md-status-dot.js +1 -1
- package/dist/collection/components/md-table/md-table.js +3 -3
- package/dist/collection/components/md-text-field/md-text-field.js +7 -7
- package/dist/collection/components/md-time-picker/md-time-picker.js +1 -1
- package/dist/collection/components/md-tooltip/md-tooltip.js +1 -1
- package/dist/collection/components/md-transfer-list/md-transfer-list.js +1 -1
- package/dist/collection/utils/lazy-loading-indicator.js +62 -0
- package/dist/collection/utils/lazy-loading-indicator.js.map +1 -0
- package/dist/collection/wasm/engine-abi.js +8 -2
- package/dist/collection/wasm/engine-abi.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/md-accordion-item.js +1 -1
- package/dist/components/md-accordion.js +1 -1
- package/dist/components/md-app-bar.js +1 -1
- package/dist/components/md-area-chart.js +1 -1
- package/dist/components/md-autocomplete.js +1 -1
- package/dist/components/md-autocomplete.js.map +1 -1
- package/dist/components/md-avatar.js +1 -1
- package/dist/components/md-badge.js +1 -1
- package/dist/components/md-bar-chart.js +1 -1
- package/dist/components/md-bottom-sheet.js +1 -1
- package/dist/components/md-breadcrumb-item.js +1 -1
- package/dist/components/md-breadcrumbs.js +1 -1
- package/dist/components/md-button-group.js +1 -1
- package/dist/components/md-button.js +1 -1
- package/dist/components/md-card.js +1 -1
- package/dist/components/md-checkbox.js +1 -1
- package/dist/components/md-chip.js +1 -1
- package/dist/components/md-color-picker.js +1 -1
- package/dist/components/md-date-picker.js +1 -1
- package/dist/components/md-date-picker.js.map +1 -1
- package/dist/components/md-dialog.js +1 -1
- package/dist/components/md-dialog.js.map +1 -1
- package/dist/components/md-divider.js +1 -1
- package/dist/components/md-divider.js.map +1 -1
- package/dist/components/md-fab-menu-item.js +1 -1
- package/dist/components/md-fab-menu.js +1 -1
- package/dist/components/md-fab.js +1 -1
- package/dist/components/md-icon-button.js +1 -1
- package/dist/components/md-line-chart.js +1 -1
- package/dist/components/md-line-chart.js.map +1 -1
- package/dist/components/md-list-item.js +1 -1
- package/dist/components/md-list.js +1 -1
- package/dist/components/md-loading-indicator.js +1 -1
- package/dist/components/md-menu-item-group.js +1 -1
- package/dist/components/md-menu-item.js +1 -1
- package/dist/components/md-menu.js +1 -1
- package/dist/components/md-meter.js +1 -1
- package/dist/components/md-multi-select.js +1 -1
- package/dist/components/md-multi-select.js.map +1 -1
- package/dist/components/md-navigation-bar.js +1 -1
- package/dist/components/md-navigation-rail-tab.js +1 -1
- package/dist/components/md-navigation-rail.js +1 -1
- package/dist/components/md-navigation-tab.js +1 -1
- package/dist/components/md-number-field.js +1 -1
- package/dist/components/md-organization-chart.js +1 -1
- package/dist/components/md-otp-field.js +1 -1
- package/dist/components/md-pie-chart.js +1 -1
- package/dist/components/md-progress-indicator.js +1 -1
- package/dist/components/md-radio.js +1 -1
- package/dist/components/md-rating.js +1 -1
- package/dist/components/md-ripple.js +1 -1
- package/dist/components/md-search.js +1 -1
- package/dist/components/md-search.js.map +1 -1
- package/dist/components/md-segmented-button-set.js +1 -1
- package/dist/components/md-segmented-button.js +1 -1
- package/dist/components/md-select-option.js +1 -1
- package/dist/components/md-select.js +1 -1
- package/dist/components/md-side-sheet.js +1 -1
- package/dist/components/md-skeleton.js +1 -1
- package/dist/components/md-slider.js +1 -1
- package/dist/components/md-snackbar.js +1 -1
- package/dist/components/md-snackbar.js.map +1 -1
- package/dist/components/md-sparkline.js +1 -1
- package/dist/components/md-split-button.js +1 -1
- package/dist/components/md-status-dot.js +1 -1
- package/dist/components/md-step.js +1 -1
- package/dist/components/md-step.js.map +1 -1
- package/dist/components/md-stepper.js +1 -1
- package/dist/components/md-stepper.js.map +1 -1
- package/dist/components/md-sub-menu-item.js +1 -1
- package/dist/components/md-switch.js +1 -1
- package/dist/components/md-tab-panel.js +1 -1
- package/dist/components/md-tab-panels.js +1 -1
- package/dist/components/md-tab.js +1 -1
- package/dist/components/md-table-body.js +1 -1
- package/dist/components/md-table-cell.js +1 -1
- package/dist/components/md-table-container.js +1 -1
- package/dist/components/md-table-expand-toggle.js +1 -1
- package/dist/components/md-table-foot.js +1 -1
- package/dist/components/md-table-head.js +1 -1
- package/dist/components/md-table-pagination.js +1 -1
- package/dist/components/md-table-pagination.js.map +1 -1
- package/dist/components/md-table-row.js +1 -1
- package/dist/components/md-table-sort-label.js +1 -1
- package/dist/components/md-table-toolbar.js +1 -1
- package/dist/components/md-table.js +1 -1
- package/dist/components/md-tabs.js +1 -1
- package/dist/components/md-text-field.js +1 -1
- package/dist/components/md-time-picker.js +1 -1
- package/dist/components/md-time-picker.js.map +1 -1
- package/dist/components/md-toolbar.js +1 -1
- package/dist/components/md-tooltip.js +1 -1
- package/dist/components/md-transfer-list.js +1 -1
- package/dist/components/p-1RSrsLOs.js +2 -0
- package/dist/components/p-1RSrsLOs.js.map +1 -0
- package/dist/components/p-2HV152w7.js +2 -0
- package/dist/components/p-2HV152w7.js.map +1 -0
- package/dist/components/p-6ZDAcEKN.js +2 -0
- package/dist/components/p-6ZDAcEKN.js.map +1 -0
- package/dist/components/p-B2fYoYe9.js +2 -0
- package/dist/components/p-B2fYoYe9.js.map +1 -0
- package/dist/components/p-BR6gfOQH.js +2 -0
- package/dist/components/p-BR6gfOQH.js.map +1 -0
- package/dist/components/p-Bz-JaJcA.js +2 -0
- package/dist/components/p-Bz-JaJcA.js.map +1 -0
- package/dist/components/p-C77M30dm.js +2 -0
- package/dist/components/p-C77M30dm.js.map +1 -0
- package/dist/components/p-CNgkGl_1.js +2 -0
- package/dist/components/p-CNgkGl_1.js.map +1 -0
- package/dist/components/p-CfBPnYW7.js +2 -0
- package/dist/components/p-CfBPnYW7.js.map +1 -0
- package/dist/components/p-D5Ht729E.js +2 -0
- package/dist/components/p-D5Ht729E.js.map +1 -0
- package/dist/components/p-DPqGg8C1.js +2 -0
- package/dist/components/p-DPqGg8C1.js.map +1 -0
- package/dist/components/p-De3E5Q8v.js +2 -0
- package/dist/components/p-De3E5Q8v.js.map +1 -0
- package/dist/components/p-Dm_7DA1f.js +2 -0
- package/dist/components/p-Dm_7DA1f.js.map +1 -0
- package/dist/components/p-Dz3R-2Wn.js +2 -0
- package/dist/components/p-Dz3R-2Wn.js.map +1 -0
- package/dist/components/p-Zjf9uhOr.js +2 -0
- package/dist/components/p-Zjf9uhOr.js.map +1 -0
- package/dist/components/p-ssLobpGS.js +2 -0
- package/dist/components/p-ssLobpGS.js.map +1 -0
- package/dist/components/p-tSoecrcz.js +2 -0
- package/dist/components/p-tSoecrcz.js.map +1 -0
- package/dist/components/p-zMR3UIR_.js +2 -0
- package/dist/components/p-zMR3UIR_.js.map +1 -0
- package/dist/components-csr/index.js +2 -0
- package/dist/components-csr/index.js.map +1 -0
- package/dist/components-csr/md-accordion-item.js +2 -0
- package/dist/components-csr/md-accordion-item.js.map +1 -0
- package/dist/components-csr/md-accordion.js +2 -0
- package/dist/components-csr/md-accordion.js.map +1 -0
- package/dist/components-csr/md-app-bar.js +2 -0
- package/dist/components-csr/md-app-bar.js.map +1 -0
- package/dist/components-csr/md-area-chart.js +2 -0
- package/dist/components-csr/md-area-chart.js.map +1 -0
- package/dist/components-csr/md-autocomplete.js +2 -0
- package/dist/components-csr/md-autocomplete.js.map +1 -0
- package/dist/components-csr/md-avatar.js +2 -0
- package/dist/components-csr/md-avatar.js.map +1 -0
- package/dist/components-csr/md-badge.js +2 -0
- package/dist/components-csr/md-badge.js.map +1 -0
- package/dist/components-csr/md-bar-chart.js +2 -0
- package/dist/components-csr/md-bar-chart.js.map +1 -0
- package/dist/components-csr/md-bottom-sheet.js +2 -0
- package/dist/components-csr/md-bottom-sheet.js.map +1 -0
- package/dist/components-csr/md-breadcrumb-item.js +2 -0
- package/dist/components-csr/md-breadcrumb-item.js.map +1 -0
- package/dist/components-csr/md-breadcrumbs.js +2 -0
- package/dist/components-csr/md-breadcrumbs.js.map +1 -0
- package/dist/components-csr/md-button-group.js +2 -0
- package/dist/components-csr/md-button-group.js.map +1 -0
- package/dist/components-csr/md-button.js +2 -0
- package/dist/components-csr/md-button.js.map +1 -0
- package/dist/components-csr/md-card.js +2 -0
- package/dist/components-csr/md-card.js.map +1 -0
- package/dist/components-csr/md-checkbox.js +2 -0
- package/dist/components-csr/md-checkbox.js.map +1 -0
- package/dist/components-csr/md-chip.js +2 -0
- package/dist/components-csr/md-chip.js.map +1 -0
- package/dist/components-csr/md-color-picker.js +2 -0
- package/dist/components-csr/md-color-picker.js.map +1 -0
- package/dist/components-csr/md-date-picker.js +2 -0
- package/dist/components-csr/md-date-picker.js.map +1 -0
- package/dist/components-csr/md-dialog.js +2 -0
- package/dist/components-csr/md-dialog.js.map +1 -0
- package/dist/components-csr/md-divider.js +2 -0
- package/dist/components-csr/md-divider.js.map +1 -0
- package/dist/components-csr/md-fab-menu-item.js +2 -0
- package/dist/components-csr/md-fab-menu-item.js.map +1 -0
- package/dist/components-csr/md-fab-menu.js +2 -0
- package/dist/components-csr/md-fab-menu.js.map +1 -0
- package/dist/components-csr/md-fab.js +2 -0
- package/dist/components-csr/md-fab.js.map +1 -0
- package/dist/components-csr/md-icon-button.js +2 -0
- package/dist/components-csr/md-icon-button.js.map +1 -0
- package/dist/components-csr/md-line-chart.js +2 -0
- package/dist/components-csr/md-line-chart.js.map +1 -0
- package/dist/components-csr/md-list-item.js +2 -0
- package/dist/components-csr/md-list-item.js.map +1 -0
- package/dist/components-csr/md-list.js +2 -0
- package/dist/components-csr/md-list.js.map +1 -0
- package/dist/components-csr/md-loading-indicator.js +2 -0
- package/dist/components-csr/md-loading-indicator.js.map +1 -0
- package/dist/components-csr/md-menu-item-group.js +2 -0
- package/dist/components-csr/md-menu-item-group.js.map +1 -0
- package/dist/components-csr/md-menu-item.js +2 -0
- package/dist/components-csr/md-menu-item.js.map +1 -0
- package/dist/components-csr/md-menu.js +2 -0
- package/dist/components-csr/md-menu.js.map +1 -0
- package/dist/components-csr/md-meter.js +2 -0
- package/dist/components-csr/md-meter.js.map +1 -0
- package/dist/components-csr/md-multi-select.js +2 -0
- package/dist/components-csr/md-multi-select.js.map +1 -0
- package/dist/components-csr/md-navigation-bar.js +2 -0
- package/dist/components-csr/md-navigation-bar.js.map +1 -0
- package/dist/components-csr/md-navigation-rail-tab.js +2 -0
- package/dist/components-csr/md-navigation-rail-tab.js.map +1 -0
- package/dist/components-csr/md-navigation-rail.js +2 -0
- package/dist/components-csr/md-navigation-rail.js.map +1 -0
- package/dist/components-csr/md-navigation-tab.js +2 -0
- package/dist/components-csr/md-navigation-tab.js.map +1 -0
- package/dist/components-csr/md-number-field.js +2 -0
- package/dist/components-csr/md-number-field.js.map +1 -0
- package/dist/components-csr/md-organization-chart.js +2 -0
- package/dist/components-csr/md-organization-chart.js.map +1 -0
- package/dist/components-csr/md-otp-field.js +2 -0
- package/dist/components-csr/md-otp-field.js.map +1 -0
- package/dist/components-csr/md-pie-chart.js +2 -0
- package/dist/components-csr/md-pie-chart.js.map +1 -0
- package/dist/components-csr/md-progress-indicator.js +2 -0
- package/dist/components-csr/md-progress-indicator.js.map +1 -0
- package/dist/components-csr/md-radio.js +2 -0
- package/dist/components-csr/md-radio.js.map +1 -0
- package/dist/components-csr/md-rating.js +2 -0
- package/dist/components-csr/md-rating.js.map +1 -0
- package/dist/components-csr/md-ripple.js +2 -0
- package/dist/components-csr/md-ripple.js.map +1 -0
- package/dist/components-csr/md-search.js +2 -0
- package/dist/components-csr/md-search.js.map +1 -0
- package/dist/components-csr/md-segmented-button-set.js +2 -0
- package/dist/components-csr/md-segmented-button-set.js.map +1 -0
- package/dist/components-csr/md-segmented-button.js +2 -0
- package/dist/components-csr/md-segmented-button.js.map +1 -0
- package/dist/components-csr/md-select-option.js +2 -0
- package/dist/components-csr/md-select-option.js.map +1 -0
- package/dist/components-csr/md-select.js +2 -0
- package/dist/components-csr/md-select.js.map +1 -0
- package/dist/components-csr/md-side-sheet.js +2 -0
- package/dist/components-csr/md-side-sheet.js.map +1 -0
- package/dist/components-csr/md-skeleton.js +2 -0
- package/dist/components-csr/md-skeleton.js.map +1 -0
- package/dist/components-csr/md-slider.js +2 -0
- package/dist/components-csr/md-slider.js.map +1 -0
- package/dist/components-csr/md-snackbar.js +2 -0
- package/dist/components-csr/md-snackbar.js.map +1 -0
- package/dist/components-csr/md-sparkline.js +2 -0
- package/dist/components-csr/md-sparkline.js.map +1 -0
- package/dist/components-csr/md-split-button.js +2 -0
- package/dist/components-csr/md-split-button.js.map +1 -0
- package/dist/components-csr/md-status-dot.js +2 -0
- package/dist/components-csr/md-status-dot.js.map +1 -0
- package/dist/components-csr/md-step.js +2 -0
- package/dist/components-csr/md-step.js.map +1 -0
- package/dist/components-csr/md-stepper.js +2 -0
- package/dist/components-csr/md-stepper.js.map +1 -0
- package/dist/components-csr/md-sub-menu-item.js +2 -0
- package/dist/components-csr/md-sub-menu-item.js.map +1 -0
- package/dist/components-csr/md-switch.js +2 -0
- package/dist/components-csr/md-switch.js.map +1 -0
- package/dist/components-csr/md-tab-panel.js +2 -0
- package/dist/components-csr/md-tab-panel.js.map +1 -0
- package/dist/components-csr/md-tab-panels.js +2 -0
- package/dist/components-csr/md-tab-panels.js.map +1 -0
- package/dist/components-csr/md-tab.js +2 -0
- package/dist/components-csr/md-tab.js.map +1 -0
- package/dist/components-csr/md-table-body.js +2 -0
- package/dist/components-csr/md-table-body.js.map +1 -0
- package/dist/components-csr/md-table-cell.js +2 -0
- package/dist/components-csr/md-table-cell.js.map +1 -0
- package/dist/components-csr/md-table-container.js +2 -0
- package/dist/components-csr/md-table-container.js.map +1 -0
- package/dist/components-csr/md-table-expand-toggle.js +2 -0
- package/dist/components-csr/md-table-expand-toggle.js.map +1 -0
- package/dist/components-csr/md-table-foot.js +2 -0
- package/dist/components-csr/md-table-foot.js.map +1 -0
- package/dist/components-csr/md-table-head.js +2 -0
- package/dist/components-csr/md-table-head.js.map +1 -0
- package/dist/components-csr/md-table-pagination.js +2 -0
- package/dist/components-csr/md-table-pagination.js.map +1 -0
- package/dist/components-csr/md-table-row.js +2 -0
- package/dist/components-csr/md-table-row.js.map +1 -0
- package/dist/components-csr/md-table-sort-label.js +2 -0
- package/dist/components-csr/md-table-sort-label.js.map +1 -0
- package/dist/components-csr/md-table-toolbar.js +2 -0
- package/dist/components-csr/md-table-toolbar.js.map +1 -0
- package/dist/components-csr/md-table.js +2 -0
- package/dist/components-csr/md-table.js.map +1 -0
- package/dist/components-csr/md-tabs.js +2 -0
- package/dist/components-csr/md-tabs.js.map +1 -0
- package/dist/components-csr/md-text-field.js +2 -0
- package/dist/components-csr/md-text-field.js.map +1 -0
- package/dist/components-csr/md-time-picker.js +2 -0
- package/dist/components-csr/md-time-picker.js.map +1 -0
- package/dist/components-csr/md-toolbar.js +2 -0
- package/dist/components-csr/md-toolbar.js.map +1 -0
- package/dist/components-csr/md-tooltip.js +2 -0
- package/dist/components-csr/md-tooltip.js.map +1 -0
- package/dist/components-csr/md-transfer-list.js +2 -0
- package/dist/components-csr/md-transfer-list.js.map +1 -0
- package/dist/components-csr/p-6WgHjhDg.js +2 -0
- package/dist/components-csr/p-6WgHjhDg.js.map +1 -0
- package/dist/{components/p-uTEkf0sE.js → components-csr/p-BEmwDSzw.js} +2 -2
- package/dist/{components/p-C8EP4S21.js → components-csr/p-BQKzjYcY.js} +2 -2
- package/dist/{components/p-BwXpiUsu.js → components-csr/p-BWMwewtY.js} +2 -2
- package/dist/{components/p-DXXUoRSH.js → components-csr/p-BZakoRau.js} +2 -2
- package/dist/components-csr/p-BZakoRau.js.map +1 -0
- package/dist/{md3/p-BjYKc1Ge.js → components-csr/p-BdEoSBtL.js} +2 -2
- package/dist/components-csr/p-BdEoSBtL.js.map +1 -0
- package/dist/{components/p-B0Opn6dK.js → components-csr/p-Bkt_X-6v.js} +2 -2
- package/dist/components-csr/p-Bx6--dQF.js.map +1 -0
- package/dist/components-csr/p-Bz-JaJcA.js +2 -0
- package/dist/components-csr/p-Bz-JaJcA.js.map +1 -0
- package/dist/{components/p-stybaFzj.js → components-csr/p-C3vB0Hd9.js} +2 -2
- package/dist/{components/p-B3MWYEEJ.js → components-csr/p-CF7mq5T7.js} +2 -2
- package/dist/{components/p-7fN_yCXW.js → components-csr/p-CVMM-tdC.js} +2 -2
- package/dist/components-csr/p-C_ogF68H.js.map +1 -0
- package/dist/components-csr/p-Cch_V1vi.js +2 -0
- package/dist/components-csr/p-Cch_V1vi.js.map +1 -0
- package/dist/components-csr/p-CfBPnYW7.js +2 -0
- package/dist/components-csr/p-CfBPnYW7.js.map +1 -0
- package/dist/components-csr/p-CxhZdOPw.js +2 -0
- package/dist/components-csr/p-CxhZdOPw.js.map +1 -0
- package/dist/{components/p-Ch2-tttM.js → components-csr/p-DMQ-6aj8.js} +2 -2
- package/dist/components-csr/p-DWxN44zD.js +2 -0
- package/dist/components-csr/p-DWxN44zD.js.map +1 -0
- package/dist/components-csr/p-DYBUr7K_.js +2 -0
- package/dist/components-csr/p-DYBUr7K_.js.map +1 -0
- package/dist/{components/p-e2HRV63Y.js → components-csr/p-DfcpeJAu.js} +2 -2
- package/dist/{components/p-Dp-w93ot.js → components-csr/p-DjKPc5EU.js} +2 -2
- package/dist/components-csr/p-DvOKnoqK.js.map +1 -0
- package/dist/components-csr/p-DzPKu-Ma.js.map +1 -0
- package/dist/{components/p-UdGDg2oJ.js → components-csr/p-If0JHsYV.js} +2 -2
- package/dist/components-csr/p-If0JHsYV.js.map +1 -0
- package/dist/components-csr/p-RLxbNqRv.js.map +1 -0
- package/dist/{components/p-6wZSqm_2.js → components-csr/p-R_guULjT.js} +2 -2
- package/dist/components-csr/p-bSpXNc5J.js +2 -0
- package/dist/components-csr/p-bSpXNc5J.js.map +1 -0
- package/dist/{components/p-Ddiw2Kjw.js → components-csr/p-uSMrgqAy.js} +2 -2
- package/dist/components-csr/package.json +3 -0
- package/dist/esm/{a11y-C6CRqodW.js → a11y-BckJ95d7.js} +3 -3
- package/dist/esm/{a11y-C6CRqodW.js.map → a11y-BckJ95d7.js.map} +1 -1
- package/dist/esm/app-globals-DQuL1Twl.js +6 -0
- package/dist/esm/app-globals-DQuL1Twl.js.map +1 -0
- package/dist/esm/{bar-chart-ZZrajEkM.js → bar-chart-BuTyuCbt.js} +4 -4
- package/dist/esm/{bar-chart-ZZrajEkM.js.map → bar-chart-BuTyuCbt.js.map} +1 -1
- package/dist/esm/{chart-32olae06.js → chart-ByIhkqsG.js} +4 -4
- package/dist/esm/{chart-32olae06.js.map → chart-ByIhkqsG.js.map} +1 -1
- package/dist/esm/engine.wasm-CfBPnYW7.js +10 -0
- package/dist/esm/engine.wasm-CfBPnYW7.js.map +1 -0
- package/dist/esm/{hit-test-DHldf5Lm.js → hit-test-c_hI-yCX.js} +3 -3
- package/dist/esm/{hit-test-DHldf5Lm.js.map → hit-test-c_hI-yCX.js.map} +1 -1
- package/dist/esm/{index-DTaX19_O.js → index-WmvQpZnM.js} +5 -15
- package/dist/esm/index-WmvQpZnM.js.map +1 -0
- package/dist/esm/lazy-loading-indicator-BWFcjJiK.js +67 -0
- package/dist/esm/lazy-loading-indicator-BWFcjJiK.js.map +1 -0
- package/dist/esm/loader.js +4 -3
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/md-accordion-item.entry.js +4 -4
- package/dist/esm/md-accordion.entry.js +1 -1
- package/dist/esm/md-app-bar.entry.js +2 -2
- package/dist/esm/md-area-chart.entry.js +7 -7
- package/dist/esm/md-autocomplete.entry.js +6 -5
- package/dist/esm/md-autocomplete.entry.js.map +1 -1
- package/dist/esm/md-avatar_2.entry.js +4 -4
- package/dist/esm/md-badge.entry.js +3 -3
- package/dist/esm/md-bar-chart.entry.js +7 -7
- package/dist/esm/md-bottom-sheet.entry.js +5 -5
- package/dist/esm/md-breadcrumb-item.entry.js +2 -2
- package/dist/esm/md-breadcrumbs.entry.js +3 -3
- package/dist/esm/md-button-group.entry.js +3 -3
- package/dist/esm/{md-button_7.entry.js → md-button_6.entry.js} +16 -40
- package/dist/esm/md-button_6.entry.js.map +1 -0
- package/dist/esm/md-checkbox.entry.js +3 -3
- package/dist/esm/md-chip.entry.js +3 -3
- package/dist/esm/md-color-picker.entry.js +1 -1
- package/dist/esm/md-date-picker.entry.js +2 -2
- package/dist/esm/md-dialog.entry.js +3 -3
- package/dist/esm/md-divider.entry.js +3 -3
- package/dist/esm/md-fab-menu-item.entry.js +3 -3
- package/dist/esm/md-fab-menu.entry.js +3 -3
- package/dist/esm/md-fab.entry.js +3 -3
- package/dist/esm/md-line-chart.entry.js +7 -7
- package/dist/esm/md-list-item.entry.js +5 -5
- package/dist/esm/md-list.entry.js +4 -4
- package/dist/esm/md-loading-indicator-Bf-Pt29l.js +31 -0
- package/dist/esm/md-loading-indicator-Bf-Pt29l.js.map +1 -0
- package/dist/esm/md-loading-indicator.entry.js +5 -0
- package/dist/esm/md-loading-indicator.entry.js.map +1 -0
- package/dist/esm/md-menu-item-group.entry.js +1 -1
- package/dist/esm/md-menu_2.entry.js +6 -6
- package/dist/esm/md-meter.entry.js +1 -1
- package/dist/esm/md-multi-select.entry.js +7 -6
- package/dist/esm/md-multi-select.entry.js.map +1 -1
- package/dist/esm/md-navigation-bar.entry.js +2 -2
- package/dist/esm/md-navigation-rail-tab.entry.js +2 -2
- package/dist/esm/md-navigation-rail.entry.js +1 -1
- package/dist/esm/md-navigation-tab.entry.js +4 -4
- package/dist/esm/md-number-field.entry.js +3 -3
- package/dist/esm/md-organization-chart.entry.js +3 -3
- package/dist/esm/md-otp-field.entry.js +4 -4
- package/dist/esm/md-pie-chart.entry.js +3 -3
- package/dist/esm/md-progress-indicator.entry.js +1 -1
- package/dist/esm/md-rating.entry.js +1 -1
- package/dist/esm/md-search.entry.js +8 -7
- package/dist/esm/md-search.entry.js.map +1 -1
- package/dist/esm/md-segmented-button-set.entry.js +1 -1
- package/dist/esm/md-segmented-button.entry.js +1 -1
- package/dist/esm/md-select-option.entry.js +2 -2
- package/dist/esm/md-select.entry.js +7 -6
- package/dist/esm/md-select.entry.js.map +1 -1
- package/dist/esm/md-side-sheet.entry.js +1 -1
- package/dist/esm/md-skeleton.entry.js +1 -1
- package/dist/esm/md-slider.entry.js +3 -3
- package/dist/esm/md-sparkline.entry.js +7 -7
- package/dist/esm/md-split-button.entry.js +1 -1
- package/dist/esm/md-status-dot.entry.js +2 -2
- package/dist/esm/md-step.entry.js +1 -1
- package/dist/esm/md-stepper.entry.js +1 -1
- package/dist/esm/md-sub-menu-item.entry.js +1 -1
- package/dist/esm/md-switch.entry.js +1 -1
- package/dist/esm/md-tab-panel.entry.js +1 -1
- package/dist/esm/md-tab-panels.entry.js +1 -1
- package/dist/esm/md-tab.entry.js +1 -1
- package/dist/esm/md-table-body.entry.js +1 -1
- package/dist/esm/md-table-cell.entry.js +1 -1
- package/dist/esm/md-table-container.entry.js +1 -1
- package/dist/esm/md-table-expand-toggle.entry.js +1 -1
- package/dist/esm/md-table-foot.entry.js +1 -1
- package/dist/esm/md-table-head.entry.js +1 -1
- package/dist/esm/md-table-pagination.entry.js +1 -1
- package/dist/esm/md-table-row.entry.js +1 -1
- package/dist/esm/md-table-sort-label.entry.js +1 -1
- package/dist/esm/md-table-toolbar.entry.js +1 -1
- package/dist/esm/md-table.entry.js +4 -4
- package/dist/esm/md-tabs.entry.js +1 -1
- package/dist/esm/md-text-field.entry.js +8 -8
- package/dist/esm/md-time-picker.entry.js +2 -2
- package/dist/esm/md-toolbar.entry.js +1 -1
- package/dist/esm/md-transfer-list.entry.js +2 -2
- package/dist/esm/md3.js +4 -3
- package/dist/esm/md3.js.map +1 -1
- package/dist/esm/{rtl-DvOKnoqK.js → rtl-CVFH1DkU.js} +3 -3
- package/dist/esm/{rtl-DvOKnoqK.js.map → rtl-CVFH1DkU.js.map} +1 -1
- package/dist/esm/{url-BjYKc1Ge.js → url-BdEoSBtL.js} +3 -3
- package/dist/esm/{url-BjYKc1Ge.js.map → url-BdEoSBtL.js.map} +1 -1
- package/dist/esm/{virtual-select-controller-BEWIC0pC.js → virtual-select-controller-CR60w6DO.js} +10 -9
- package/dist/esm/virtual-select-controller-CR60w6DO.js.map +1 -0
- package/dist/md3/md3.css +1 -1
- package/dist/md3/md3.esm.js +1 -1
- package/dist/md3/md3.esm.js.map +1 -1
- package/dist/md3/p-08f1c469.entry.js +2 -0
- package/dist/md3/{p-4d82132d.entry.js.map → p-08f1c469.entry.js.map} +1 -1
- package/dist/md3/{p-9ddbf247.entry.js → p-108f89d7.entry.js} +2 -2
- package/dist/md3/p-1112bffc.entry.js +2 -0
- package/dist/md3/{p-cf07e761.entry.js.map → p-1112bffc.entry.js.map} +1 -1
- package/dist/md3/{p-c6a12344.entry.js → p-114c270b.entry.js} +2 -2
- package/dist/md3/p-1835fe36.entry.js +2 -0
- package/dist/md3/{p-a3308c40.entry.js.map → p-1835fe36.entry.js.map} +1 -1
- package/dist/md3/{p-396089fd.entry.js → p-1edb5a0d.entry.js} +2 -2
- package/dist/md3/p-2ba2db3b.entry.js +2 -0
- package/dist/md3/{p-6b2871a0.entry.js.map → p-2ba2db3b.entry.js.map} +1 -1
- package/dist/md3/p-3508d0e0.entry.js +2 -0
- package/dist/md3/{p-f31ab454.entry.js.map → p-3508d0e0.entry.js.map} +1 -1
- package/dist/md3/{p-b34d385b.entry.js → p-35b05b45.entry.js} +2 -2
- package/dist/md3/{p-c2dd8c8c.entry.js → p-38e9a583.entry.js} +2 -2
- package/dist/md3/{p-be02624e.entry.js → p-3c0469aa.entry.js} +2 -2
- package/dist/md3/p-3f64a27d.entry.js +2 -0
- package/dist/md3/{p-fb61868c.entry.js.map → p-3f64a27d.entry.js.map} +1 -1
- package/dist/md3/{p-63b8c8d1.entry.js → p-408ee4be.entry.js} +2 -2
- package/dist/md3/{p-edb34a6d.entry.js → p-43c708ad.entry.js} +2 -2
- package/dist/md3/{p-3015c7e3.entry.js → p-4770b534.entry.js} +2 -2
- package/dist/md3/{p-c861d774.entry.js → p-4b7cf934.entry.js} +2 -2
- package/dist/md3/{p-2e09a7b7.entry.js → p-4f26bd60.entry.js} +2 -2
- package/dist/md3/{p-7b463fbe.entry.js → p-4f2e82cb.entry.js} +2 -2
- package/dist/md3/{p-be412e3f.entry.js → p-501bf161.entry.js} +2 -2
- package/dist/md3/{p-c063c823.entry.js → p-56c7c570.entry.js} +2 -2
- package/dist/md3/{p-2e9503d7.entry.js → p-56ca0c3c.entry.js} +2 -2
- package/dist/md3/{p-ac8762e5.entry.js → p-5b63149a.entry.js} +2 -2
- package/dist/md3/{p-c5af701b.entry.js → p-5f668b0a.entry.js} +2 -2
- package/dist/md3/p-6237ddac.entry.js +2 -0
- package/dist/md3/{p-e7dc5a32.entry.js.map → p-6237ddac.entry.js.map} +1 -1
- package/dist/md3/{p-8eb0b6a4.entry.js → p-6d65fc6a.entry.js} +2 -2
- package/dist/md3/{p-e3124e1e.entry.js → p-707b6d7c.entry.js} +2 -2
- package/dist/md3/{p-a5fee424.entry.js → p-71f1660b.entry.js} +2 -2
- package/dist/md3/{p-1a8ec5bc.entry.js → p-7501170f.entry.js} +2 -2
- package/dist/md3/p-7c8842bf.entry.js +2 -0
- package/dist/md3/{p-ba2ebde1.entry.js.map → p-7c8842bf.entry.js.map} +1 -1
- package/dist/md3/{p-4e3d6e40.entry.js → p-7d1686a7.entry.js} +2 -2
- package/dist/md3/p-7e7f0e45.entry.js +2 -0
- package/dist/md3/p-7e7f0e45.entry.js.map +1 -0
- package/dist/md3/p-80379565.entry.js +2 -0
- package/dist/md3/{p-6c44cf13.entry.js.map → p-80379565.entry.js.map} +1 -1
- package/dist/md3/p-830724e4.entry.js +2 -0
- package/dist/md3/p-830724e4.entry.js.map +1 -0
- package/dist/md3/{p-4dda4cb0.entry.js → p-845ca9cc.entry.js} +2 -2
- package/dist/md3/{p-77a01bcc.entry.js → p-87f88d62.entry.js} +2 -2
- package/dist/md3/{p-5b74694e.entry.js → p-89d47130.entry.js} +2 -2
- package/dist/md3/p-8a6fed13.entry.js +2 -0
- package/dist/md3/{p-a803da99.entry.js.map → p-8a6fed13.entry.js.map} +1 -1
- package/dist/md3/p-8a7e0297.entry.js +2 -0
- package/dist/md3/p-8a7e0297.entry.js.map +1 -0
- package/dist/md3/{p-b0431a5c.entry.js → p-8bdcda53.entry.js} +2 -2
- package/dist/md3/{p-c10a33c2.entry.js → p-8e7df348.entry.js} +2 -2
- package/dist/md3/p-9003a7d4.entry.js +2 -0
- package/dist/md3/p-9003a7d4.entry.js.map +1 -0
- package/dist/md3/{p-05ae91b6.entry.js → p-90ccf4c3.entry.js} +2 -2
- package/dist/md3/p-BdEoSBtL.js +2 -0
- package/dist/md3/{p-BjYKc1Ge.js.map → p-BdEoSBtL.js.map} +1 -1
- package/dist/md3/p-Bz-JaJcA.js +2 -0
- package/dist/md3/p-Bz-JaJcA.js.map +1 -0
- package/dist/md3/p-CGqeEMjY.js +2 -0
- package/dist/md3/{p-DzPKu-Ma.js.map → p-CGqeEMjY.js.map} +1 -1
- package/dist/md3/p-CVFH1DkU.js +2 -0
- package/dist/md3/{p-DvOKnoqK.js.map → p-CVFH1DkU.js.map} +1 -1
- package/dist/md3/p-Cch92tDM.js +2 -0
- package/dist/md3/{p-RLxbNqRv.js.map → p-Cch92tDM.js.map} +1 -1
- package/dist/md3/p-CfBPnYW7.js +2 -0
- package/dist/md3/p-CfBPnYW7.js.map +1 -0
- package/dist/md3/p-D17cVKxS.js +2 -0
- package/dist/md3/p-D17cVKxS.js.map +1 -0
- package/dist/md3/p-DGtztV3K.js +2 -0
- package/dist/md3/{p-Bx6--dQF.js.map → p-DGtztV3K.js.map} +1 -1
- package/dist/md3/p-DQuL1Twl.js +2 -0
- package/dist/md3/p-DQuL1Twl.js.map +1 -0
- package/dist/md3/p-DnKDoE8K.js +2 -0
- package/dist/md3/p-DnKDoE8K.js.map +1 -0
- package/dist/md3/p-WmvQpZnM.js +3 -0
- package/dist/md3/p-WmvQpZnM.js.map +1 -0
- package/dist/md3/p-a3623653.entry.js +2 -0
- package/dist/md3/{p-19ee9c33.entry.js.map → p-a3623653.entry.js.map} +1 -1
- package/dist/md3/{p-da4e27d4.entry.js → p-a4d4cfed.entry.js} +2 -2
- package/dist/md3/{p-5394254f.entry.js → p-a976498b.entry.js} +2 -2
- package/dist/md3/{p-6038b907.entry.js → p-ab568d1c.entry.js} +2 -2
- package/dist/md3/{p-bf7842f8.entry.js → p-adf8a415.entry.js} +2 -2
- package/dist/md3/p-ae30e899.entry.js +2 -0
- package/dist/md3/p-ae30e899.entry.js.map +1 -0
- package/dist/md3/{p-45280bf4.entry.js → p-b2d88292.entry.js} +2 -2
- package/dist/md3/{p-796f79f8.entry.js → p-b3b5247b.entry.js} +2 -2
- package/dist/md3/{p-5b799707.entry.js → p-b4266f6b.entry.js} +2 -2
- package/dist/md3/p-b54bbf88.entry.js +2 -0
- package/dist/md3/p-b54bbf88.entry.js.map +1 -0
- package/dist/md3/{p-c00f7514.entry.js → p-ba011453.entry.js} +2 -2
- package/dist/md3/{p-6ba63c73.entry.js → p-bc24f0c9.entry.js} +2 -2
- package/dist/md3/{p-0c2e824d.entry.js → p-c20fbb9e.entry.js} +2 -2
- package/dist/md3/{p-fc0b325d.entry.js → p-c2944c87.entry.js} +2 -2
- package/dist/md3/{p-4e45b2ff.entry.js → p-c58c68d0.entry.js} +2 -2
- package/dist/md3/p-cc6e8afd.entry.js +2 -0
- package/dist/md3/{p-72457a85.entry.js.map → p-cc6e8afd.entry.js.map} +1 -1
- package/dist/md3/{p-0f764a1e.entry.js → p-d2e39c6e.entry.js} +2 -2
- package/dist/md3/{p-50555bb7.entry.js → p-d8885f53.entry.js} +2 -2
- package/dist/md3/{p-c1ca6f6c.entry.js → p-db6fb4e1.entry.js} +2 -2
- package/dist/md3/{p-81843ff7.entry.js → p-dcba2857.entry.js} +2 -2
- package/dist/md3/{p-65195996.entry.js → p-e357e8ac.entry.js} +2 -2
- package/dist/md3/{p-39cb7c24.entry.js → p-e5c6795e.entry.js} +2 -2
- package/dist/md3/p-e871663b.entry.js +2 -0
- package/dist/md3/{p-aaec2698.entry.js.map → p-e871663b.entry.js.map} +1 -1
- package/dist/md3/p-f1b69181.entry.js +2 -0
- package/dist/md3/{p-a986fd24.entry.js.map → p-f1b69181.entry.js.map} +1 -1
- package/dist/md3/p-f297d786.entry.js +2 -0
- package/dist/md3/{p-3cce1de3.entry.js.map → p-f297d786.entry.js.map} +1 -1
- package/dist/md3/{p-e6d7f0ff.entry.js → p-f403ad20.entry.js} +2 -2
- package/dist/md3/p-f5399b73.entry.js +2 -0
- package/dist/md3/{p-04e97f5d.entry.js.map → p-f5399b73.entry.js.map} +1 -1
- package/dist/md3/{p-708a9313.entry.js → p-f5fd9a0b.entry.js} +2 -2
- package/dist/md3/{p-aa0e7d4d.entry.js → p-f71af38f.entry.js} +2 -2
- package/dist/md3/{p-757e3aaf.entry.js → p-fac6da4c.entry.js} +2 -2
- package/dist/md3/{p-134b670a.entry.js → p-fc864f96.entry.js} +2 -2
- package/dist/md3/{p-32bdd439.entry.js → p-fd686966.entry.js} +2 -2
- package/dist/md3/p-nhfFYWzy.js +2 -0
- package/dist/md3/{p-C_ogF68H.js.map → p-nhfFYWzy.js.map} +1 -1
- package/dist/types/utils/lazy-loading-indicator.d.ts +7 -0
- package/dist/types/wasm/engine-abi.d.ts +14 -0
- package/hydrate/index.js +191 -113
- package/hydrate/index.mjs +191 -113
- package/package.json +30 -5
- package/dist/cjs/index-DlQ_5_Mv.js.map +0 -1
- package/dist/cjs/md-button_7.cjs.entry.js.map +0 -1
- package/dist/cjs/virtual-select-controller-CqriaZgm.js.map +0 -1
- package/dist/components/p-BEWIC0pC.js +0 -2
- package/dist/components/p-BEWIC0pC.js.map +0 -1
- package/dist/components/p-DXXUoRSH.js.map +0 -1
- package/dist/components/p-MWBNn6Lj.js +0 -2
- package/dist/components/p-MWBNn6Lj.js.map +0 -1
- package/dist/components/p-UdGDg2oJ.js.map +0 -1
- package/dist/esm/index-DTaX19_O.js.map +0 -1
- package/dist/esm/md-button_7.entry.js.map +0 -1
- package/dist/esm/virtual-select-controller-BEWIC0pC.js.map +0 -1
- package/dist/md3/p-04e97f5d.entry.js +0 -2
- package/dist/md3/p-19ee9c33.entry.js +0 -2
- package/dist/md3/p-21772851.entry.js +0 -2
- package/dist/md3/p-21772851.entry.js.map +0 -1
- package/dist/md3/p-3cce1de3.entry.js +0 -2
- package/dist/md3/p-47af9819.entry.js +0 -2
- package/dist/md3/p-47af9819.entry.js.map +0 -1
- package/dist/md3/p-4d82132d.entry.js +0 -2
- package/dist/md3/p-6b2871a0.entry.js +0 -2
- package/dist/md3/p-6c44cf13.entry.js +0 -2
- package/dist/md3/p-72457a85.entry.js +0 -2
- package/dist/md3/p-BEWIC0pC.js +0 -2
- package/dist/md3/p-BEWIC0pC.js.map +0 -1
- package/dist/md3/p-DTaX19_O.js +0 -3
- package/dist/md3/p-DTaX19_O.js.map +0 -1
- package/dist/md3/p-a3308c40.entry.js +0 -2
- package/dist/md3/p-a7ffb779.entry.js +0 -2
- package/dist/md3/p-a7ffb779.entry.js.map +0 -1
- package/dist/md3/p-a803da99.entry.js +0 -2
- package/dist/md3/p-a986fd24.entry.js +0 -2
- package/dist/md3/p-aaec2698.entry.js +0 -2
- package/dist/md3/p-ac35ac5f.entry.js +0 -2
- package/dist/md3/p-ac35ac5f.entry.js.map +0 -1
- package/dist/md3/p-b4631a55.entry.js +0 -2
- package/dist/md3/p-b4631a55.entry.js.map +0 -1
- package/dist/md3/p-ba2ebde1.entry.js +0 -2
- package/dist/md3/p-cf07e761.entry.js +0 -2
- package/dist/md3/p-e7dc5a32.entry.js +0 -2
- package/dist/md3/p-f31ab454.entry.js +0 -2
- package/dist/md3/p-fb61868c.entry.js +0 -2
- /package/dist/{components/p-uTEkf0sE.js.map → components-csr/p-BEmwDSzw.js.map} +0 -0
- /package/dist/{components/p-C8EP4S21.js.map → components-csr/p-BQKzjYcY.js.map} +0 -0
- /package/dist/{components/p-BwXpiUsu.js.map → components-csr/p-BWMwewtY.js.map} +0 -0
- /package/dist/{components/p-B0Opn6dK.js.map → components-csr/p-Bkt_X-6v.js.map} +0 -0
- /package/dist/{md3 → components-csr}/p-Bx6--dQF.js +0 -0
- /package/dist/{components/p-stybaFzj.js.map → components-csr/p-C3vB0Hd9.js.map} +0 -0
- /package/dist/{components/p-B3MWYEEJ.js.map → components-csr/p-CF7mq5T7.js.map} +0 -0
- /package/dist/{components/p-7fN_yCXW.js.map → components-csr/p-CVMM-tdC.js.map} +0 -0
- /package/dist/{md3 → components-csr}/p-C_ogF68H.js +0 -0
- /package/dist/{components/p-Ch2-tttM.js.map → components-csr/p-DMQ-6aj8.js.map} +0 -0
- /package/dist/{components/p-e2HRV63Y.js.map → components-csr/p-DfcpeJAu.js.map} +0 -0
- /package/dist/{components/p-Dp-w93ot.js.map → components-csr/p-DjKPc5EU.js.map} +0 -0
- /package/dist/{md3 → components-csr}/p-DvOKnoqK.js +0 -0
- /package/dist/{md3 → components-csr}/p-DzPKu-Ma.js +0 -0
- /package/dist/{md3 → components-csr}/p-RLxbNqRv.js +0 -0
- /package/dist/{components/p-6wZSqm_2.js.map → components-csr/p-R_guULjT.js.map} +0 -0
- /package/dist/{components/p-Ddiw2Kjw.js.map → components-csr/p-uSMrgqAy.js.map} +0 -0
- /package/dist/md3/{p-9ddbf247.entry.js.map → p-108f89d7.entry.js.map} +0 -0
- /package/dist/md3/{p-c6a12344.entry.js.map → p-114c270b.entry.js.map} +0 -0
- /package/dist/md3/{p-396089fd.entry.js.map → p-1edb5a0d.entry.js.map} +0 -0
- /package/dist/md3/{p-b34d385b.entry.js.map → p-35b05b45.entry.js.map} +0 -0
- /package/dist/md3/{p-c2dd8c8c.entry.js.map → p-38e9a583.entry.js.map} +0 -0
- /package/dist/md3/{p-be02624e.entry.js.map → p-3c0469aa.entry.js.map} +0 -0
- /package/dist/md3/{p-63b8c8d1.entry.js.map → p-408ee4be.entry.js.map} +0 -0
- /package/dist/md3/{p-edb34a6d.entry.js.map → p-43c708ad.entry.js.map} +0 -0
- /package/dist/md3/{p-3015c7e3.entry.js.map → p-4770b534.entry.js.map} +0 -0
- /package/dist/md3/{p-c861d774.entry.js.map → p-4b7cf934.entry.js.map} +0 -0
- /package/dist/md3/{p-2e09a7b7.entry.js.map → p-4f26bd60.entry.js.map} +0 -0
- /package/dist/md3/{p-7b463fbe.entry.js.map → p-4f2e82cb.entry.js.map} +0 -0
- /package/dist/md3/{p-be412e3f.entry.js.map → p-501bf161.entry.js.map} +0 -0
- /package/dist/md3/{p-c063c823.entry.js.map → p-56c7c570.entry.js.map} +0 -0
- /package/dist/md3/{p-2e9503d7.entry.js.map → p-56ca0c3c.entry.js.map} +0 -0
- /package/dist/md3/{p-ac8762e5.entry.js.map → p-5b63149a.entry.js.map} +0 -0
- /package/dist/md3/{p-c5af701b.entry.js.map → p-5f668b0a.entry.js.map} +0 -0
- /package/dist/md3/{p-8eb0b6a4.entry.js.map → p-6d65fc6a.entry.js.map} +0 -0
- /package/dist/md3/{p-e3124e1e.entry.js.map → p-707b6d7c.entry.js.map} +0 -0
- /package/dist/md3/{p-a5fee424.entry.js.map → p-71f1660b.entry.js.map} +0 -0
- /package/dist/md3/{p-1a8ec5bc.entry.js.map → p-7501170f.entry.js.map} +0 -0
- /package/dist/md3/{p-4e3d6e40.entry.js.map → p-7d1686a7.entry.js.map} +0 -0
- /package/dist/md3/{p-4dda4cb0.entry.js.map → p-845ca9cc.entry.js.map} +0 -0
- /package/dist/md3/{p-77a01bcc.entry.js.map → p-87f88d62.entry.js.map} +0 -0
- /package/dist/md3/{p-5b74694e.entry.js.map → p-89d47130.entry.js.map} +0 -0
- /package/dist/md3/{p-b0431a5c.entry.js.map → p-8bdcda53.entry.js.map} +0 -0
- /package/dist/md3/{p-c10a33c2.entry.js.map → p-8e7df348.entry.js.map} +0 -0
- /package/dist/md3/{p-05ae91b6.entry.js.map → p-90ccf4c3.entry.js.map} +0 -0
- /package/dist/md3/{p-da4e27d4.entry.js.map → p-a4d4cfed.entry.js.map} +0 -0
- /package/dist/md3/{p-5394254f.entry.js.map → p-a976498b.entry.js.map} +0 -0
- /package/dist/md3/{p-6038b907.entry.js.map → p-ab568d1c.entry.js.map} +0 -0
- /package/dist/md3/{p-bf7842f8.entry.js.map → p-adf8a415.entry.js.map} +0 -0
- /package/dist/md3/{p-45280bf4.entry.js.map → p-b2d88292.entry.js.map} +0 -0
- /package/dist/md3/{p-796f79f8.entry.js.map → p-b3b5247b.entry.js.map} +0 -0
- /package/dist/md3/{p-5b799707.entry.js.map → p-b4266f6b.entry.js.map} +0 -0
- /package/dist/md3/{p-c00f7514.entry.js.map → p-ba011453.entry.js.map} +0 -0
- /package/dist/md3/{p-6ba63c73.entry.js.map → p-bc24f0c9.entry.js.map} +0 -0
- /package/dist/md3/{p-0c2e824d.entry.js.map → p-c20fbb9e.entry.js.map} +0 -0
- /package/dist/md3/{p-fc0b325d.entry.js.map → p-c2944c87.entry.js.map} +0 -0
- /package/dist/md3/{p-4e45b2ff.entry.js.map → p-c58c68d0.entry.js.map} +0 -0
- /package/dist/md3/{p-0f764a1e.entry.js.map → p-d2e39c6e.entry.js.map} +0 -0
- /package/dist/md3/{p-50555bb7.entry.js.map → p-d8885f53.entry.js.map} +0 -0
- /package/dist/md3/{p-c1ca6f6c.entry.js.map → p-db6fb4e1.entry.js.map} +0 -0
- /package/dist/md3/{p-81843ff7.entry.js.map → p-dcba2857.entry.js.map} +0 -0
- /package/dist/md3/{p-65195996.entry.js.map → p-e357e8ac.entry.js.map} +0 -0
- /package/dist/md3/{p-39cb7c24.entry.js.map → p-e5c6795e.entry.js.map} +0 -0
- /package/dist/md3/{p-e6d7f0ff.entry.js.map → p-f403ad20.entry.js.map} +0 -0
- /package/dist/md3/{p-708a9313.entry.js.map → p-f5fd9a0b.entry.js.map} +0 -0
- /package/dist/md3/{p-aa0e7d4d.entry.js.map → p-f71af38f.entry.js.map} +0 -0
- /package/dist/md3/{p-757e3aaf.entry.js.map → p-fac6da4c.entry.js.map} +0 -0
- /package/dist/md3/{p-134b670a.entry.js.map → p-fc864f96.entry.js.map} +0 -0
- /package/dist/md3/{p-32bdd439.entry.js.map → p-fd686966.entry.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as i,c as a,h as n,H as t,a as e}from"./p-DTaX19_O.js";const o=()=>`:host{--_container-color:var( --md-navigation-rail-container-color, var(--md-sys-color-surface, #FFFBFE) );--_container-width:var(--md-navigation-rail-container-width, max(56px, calc(80px + var(--md-sys-density-scale, 0) * 4px)));--_expanded-width:var(--md-navigation-rail-expanded-width, max(140px, calc(220px + var(--md-sys-density-scale, 0) * 20px)));--_expanded-max-width:var(--md-navigation-rail-expanded-max-width, 360px);--_container-shape:var(--md-navigation-rail-container-shape, 0px);--_container-elevation:var(--md-navigation-rail-container-elevation, none);--_padding-block:var(--md-navigation-rail-padding-block, max(24px, calc(44px + var(--md-sys-density-scale, 0) * 4px)));--_padding-inline:var(--md-navigation-rail-padding-inline, 0px);--_gap:var(--md-navigation-rail-gap, var(--md-sys-spacing-gap-md, 12px));--_header-space:var(--md-navigation-rail-header-space, max(20px, calc(40px + var(--md-sys-density-scale, 0) * 4px)));--_destinations-gap:var(--md-navigation-rail-destinations-gap, max(0px, calc(8px + var(--md-sys-density-scale, 0) * 2px)));--_content-color:var( --md-navigation-rail-content-color, var(--md-sys-color-on-surface-variant, #49454F) );--_logo-icon-size:var(--md-navigation-rail-logo-icon-size, 24px);--_motion-duration:var(--md-sys-motion-duration-short4, 200ms);--_motion-easing:var( --md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1) );--_motion-effects-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_motion-effects-easing:var( --md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.8, 0.34, 1) );display:flex;flex-direction:column;box-sizing:border-box;inline-size:var(--_container-width);min-inline-size:var(--_container-width);max-inline-size:var(--_container-width);block-size:100%;min-block-size:100%;padding-block:var(--_padding-block);padding-inline:var(--_padding-inline);background-color:var(--_container-color);color:var(--_content-color);border-radius:var(--_container-shape);box-shadow:var(--_container-elevation);position:relative;isolation:isolate;transition:inline-size var(--_motion-duration) var(--_motion-easing), min-inline-size var(--_motion-duration) var(--_motion-easing), max-inline-size var(--_motion-duration) var(--_motion-easing), background-color var(--_motion-effects-duration) var(--_motion-effects-easing);font-family:var(--md-sys-typescale-label-medium-font-family, Roboto, sans-serif)}:host(.md-navigation-rail--full-height){block-size:100dvh;min-block-size:100dvh}:host(.md-navigation-rail--expanded){inline-size:var(--_expanded-width);min-inline-size:var(--_expanded-width);max-inline-size:var(--_expanded-max-width);--_padding-inline:var(--md-sys-spacing-inset-md, 12px)}:host(.md-navigation-rail--modal){position:static;isolation:auto;background-color:transparent;box-shadow:none;padding:0}:host(.md-navigation-rail--modal.md-navigation-rail--expanded){--_container-color:var( --md-navigation-rail-container-color, var(--md-sys-color-surface-container, #F3EDF7) );--_container-shape:var( --md-navigation-rail-container-shape, var(--md-sys-shape-corner-large, 16px) );--_container-elevation:var( --md-navigation-rail-container-elevation, var(--md-sys-elevation-3, 0 1px 3px rgba(0, 0, 0, 0.3), 0 4px 8px 3px rgba(0, 0, 0, 0.15)) );inline-size:var(--_container-width);min-inline-size:var(--_container-width);max-inline-size:var(--_container-width)}.md-navigation-rail__scrim{position:absolute;inset:0;background-color:var(--md-sys-color-scrim, #000000);opacity:0;pointer-events:none;z-index:2;transition:opacity var(--_motion-duration) var(--_motion-easing)}:host(.md-navigation-rail--modal.md-navigation-rail--expanded) .md-navigation-rail__scrim{opacity:0.32;pointer-events:auto}:host(.md-navigation-rail--modal) .md-navigation-rail__container{position:absolute;inset-block-start:0;inset-inline-start:0;box-sizing:border-box;inline-size:var(--_container-width);block-size:100%;padding-block:var(--_padding-block);padding-inline:var(--_padding-inline);background-color:var(--_container-color);box-shadow:var(--_container-elevation);border-start-end-radius:var(--_container-shape);border-end-end-radius:var(--_container-shape);z-index:3;overflow:hidden;transition:inline-size var(--_motion-duration) var(--_motion-easing), inset-block-start var(--_motion-duration) var(--_motion-easing), inset-inline-start var(--_motion-duration) var(--_motion-easing), block-size var(--_motion-duration) var(--_motion-easing), background-color var(--_motion-effects-duration) var(--_motion-effects-easing), box-shadow var(--_motion-effects-duration) var(--_motion-effects-easing), border-radius var(--_motion-effects-duration) var(--_motion-effects-easing)}:host(.md-navigation-rail--modal.md-navigation-rail--expanded) .md-navigation-rail__container{inline-size:var(--_expanded-width);max-inline-size:var(--_expanded-max-width);inset-block-start:16px;inset-inline-start:16px;block-size:calc(100% - 32px);border-radius:var(--_container-shape)}.md-navigation-rail__container{display:flex;flex-direction:column;block-size:100%;gap:var(--_gap);inline-size:100%}.md-navigation-rail__logo{position:relative;inline-size:100%;min-block-size:48px}.md-navigation-rail__logo[hidden]{display:none}.md-navigation-rail__logo-contracted,.md-navigation-rail__logo-expanded{position:absolute;inset-block:0;inset-inline-start:0;inset-inline-end:0;display:flex;align-items:center;justify-content:flex-start;padding-inline-start:calc((var(--_container-width) - var(--_logo-icon-size)) / 2);transition:opacity var(--_motion-effects-duration) var(--_motion-effects-easing)}:host(.md-navigation-rail--expanded) .md-navigation-rail__logo-contracted,:host(.md-navigation-rail--expanded) .md-navigation-rail__logo-expanded{margin-inline-start:calc(-1 * var(--_padding-inline))}.md-navigation-rail__logo-contracted{opacity:1}.md-navigation-rail__logo-expanded{opacity:0;pointer-events:none}:host(.md-navigation-rail--expanded) .md-navigation-rail__logo-contracted{opacity:0;pointer-events:none}:host(.md-navigation-rail--expanded) .md-navigation-rail__logo-expanded{opacity:1;pointer-events:auto}:host(.md-navigation-rail--expanded:not(.md-navigation-rail--with-logo-expanded)) .md-navigation-rail__logo-contracted{opacity:1;pointer-events:auto}.md-navigation-rail__toggle{display:flex;align-items:center;justify-content:flex-start;inline-size:100%;min-block-size:48px;padding-inline-start:calc((var(--_container-width) - 40px) / 2)}:host(.md-navigation-rail--expanded) .md-navigation-rail__toggle{padding-inline-start:var(--md-sys-spacing-inset-sm, 8px)}.md-navigation-rail__header{display:flex;flex-direction:column;align-items:center;justify-content:center;inline-size:100%;min-block-size:56px;padding-block-end:var(--md-sys-spacing-inset-xs, 4px)}:host(.md-navigation-rail--expanded) .md-navigation-rail__header{align-items:flex-start;padding-inline:var(--md-sys-spacing-inset-sm, 8px)}.md-navigation-rail__header[hidden]{display:none}.md-navigation-rail__fab{display:flex;align-items:center;justify-content:center;inline-size:100%;padding-block-end:var(--md-sys-spacing-inset-sm, 8px)}:host(.md-navigation-rail--expanded) .md-navigation-rail__fab{justify-content:flex-start;padding-inline-start:var(--md-sys-spacing-inset-md, 12px)}.md-navigation-rail__fab[hidden]{display:none}.md-navigation-rail__destinations{display:flex;flex-direction:column;gap:var(--_destinations-gap);inline-size:100%;flex:1 1 auto;min-block-size:0;overflow-y:auto;overflow-x:clip;overscroll-behavior:contain;scrollbar-width:thin;padding-block:5px}:host(.md-navigation-rail--with-header) .md-navigation-rail__destinations,:host(.md-navigation-rail--with-fab) .md-navigation-rail__destinations{padding-block-start:calc(var(--_header-space) - var(--_gap))}:host(.md-navigation-rail--align-top) .md-navigation-rail__destinations{justify-content:flex-start}:host(.md-navigation-rail--align-middle) .md-navigation-rail__destinations{justify-content:center}:host(.md-navigation-rail--align-bottom) .md-navigation-rail__destinations{justify-content:flex-end}.md-navigation-rail__footer{display:flex;flex-direction:column;align-items:stretch;inline-size:100%;gap:var(--_destinations-gap);padding-block-start:var(--md-sys-spacing-inset-sm, 8px);margin-block-start:auto;}.md-navigation-rail__footer ::slotted(md-icon-button){align-self:center}:host(.md-navigation-rail--expanded) .md-navigation-rail__footer ::slotted(md-icon-button){align-self:flex-start}:host(.md-navigation-rail--expanded) .md-navigation-rail__footer{padding-inline-start:var(--md-sys-spacing-inset-sm, 8px)}.md-navigation-rail__footer[hidden]{display:none}::slotted(md-navigation-rail-tab){inline-size:var(--_container-width)}:host(.md-navigation-rail--tabs-expanded) ::slotted(md-navigation-rail-tab){inline-size:fit-content}::slotted(md-fab),::slotted(md-icon-button){flex:0 0 auto}::slotted(md-fab){box-shadow:none}::slotted([data-section-header]){display:none}:host(.md-navigation-rail--tabs-expanded) ::slotted([data-section-header]){display:block;flex:0 0 auto;padding-block:var(--md-sys-spacing-inset-md, 12px) var(--md-sys-spacing-inset-sm, 8px);padding-inline:var(--md-sys-spacing-inset-lg, 16px);margin:0;color:var(--md-sys-color-on-surface-variant, #49454F);font-family:var(--md-sys-typescale-title-small-font-family, Roboto, sans-serif);font-size:var(--md-sys-typescale-title-small-font-size, 14px);font-weight:var(--md-sys-typescale-title-small-font-weight, 500);line-height:var(--md-sys-typescale-title-small-line-height, 20px);letter-spacing:var(--md-sys-typescale-title-small-letter-spacing, 0.1px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (prefers-reduced-motion: reduce){:host,.md-navigation-rail__toggle,.md-navigation-rail__fab,.md-navigation-rail__scrim,:host(.md-navigation-rail--modal) .md-navigation-rail__container{transition:none}}:host([data-theme='dark']),:host-context([data-theme='dark']){--_container-color:var( --md-navigation-rail-container-color, var(--md-sys-color-surface, #1C1B1F) )}@media (forced-colors: active){:host{border-inline-end:1px solid CanvasText}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}:host(.md-navigation-rail--horizontal){flex-direction:row;inline-size:100%;min-inline-size:0;max-inline-size:none;block-size:auto;min-block-size:var( --md-navigation-rail-horizontal-height, max(64px, calc(72px + var(--md-sys-density-scale, 0) * 4px)) );padding-block:var(--md-navigation-rail-horizontal-padding-block, 0px);padding-inline:var(--md-navigation-rail-horizontal-padding-inline, var(--md-sys-spacing-inset-md, 12px))}:host(.md-navigation-rail--horizontal) .md-navigation-rail__container{flex-direction:row;align-items:stretch;block-size:auto}:host(.md-navigation-rail--horizontal) .md-navigation-rail__destinations{flex-direction:row;align-items:stretch;inline-size:auto;min-inline-size:0;block-size:auto;min-block-size:0;overflow-x:auto;overflow-y:clip;padding-block:0;padding-inline:5px;justify-content:center}:host(.md-navigation-rail--horizontal.md-navigation-rail--with-header) .md-navigation-rail__destinations,:host(.md-navigation-rail--horizontal.md-navigation-rail--with-fab) .md-navigation-rail__destinations{padding-block-start:0;padding-inline-start:calc(var(--_header-space) - var(--_gap))}:host(.md-navigation-rail--horizontal) ::slotted(md-navigation-rail-tab){inline-size:auto;min-inline-size:var(--_container-width);flex-shrink:0}:host(.md-navigation-rail--horizontal) .md-navigation-rail__logo{inline-size:auto;min-block-size:0;flex:0 0 auto;display:flex;align-items:center}:host(.md-navigation-rail--horizontal) .md-navigation-rail__logo-contracted,:host(.md-navigation-rail--horizontal) .md-navigation-rail__logo-expanded{position:static;padding-inline:var(--md-sys-spacing-inset-sm, 8px)}:host(.md-navigation-rail--horizontal) .md-navigation-rail__logo-expanded{display:none}:host(.md-navigation-rail--horizontal) .md-navigation-rail__fab{flex:0 0 auto}:host(.md-navigation-rail--horizontal) .md-navigation-rail__footer{flex-direction:row;align-items:center;inline-size:auto;padding-block-start:0;padding-inline-start:var(--md-sys-spacing-inset-sm, 8px);margin-block-start:0;margin-inline-start:auto}:host(.md-navigation-rail--horizontal) ::slotted([data-section-header]){display:none}:host(.md-navigation-rail--submenu-open){isolation:auto;z-index:3}::slotted(md-navigation-rail-tab[data-overflowed]){display:none}.md-navigation-rail__overflow{position:relative;display:flex;flex:0 0 auto;justify-content:center}.md-navigation-rail__overflow-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;inline-size:100%;min-block-size:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 2px));padding:0 var(--md-sys-spacing-inset-sm, 8px);border:none;background:none;color:var(--_content-color);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.md-navigation-rail__overflow-trigger:focus-visible{outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:-3px;border-radius:var(--md-sys-shape-corner-small, 8px)}.md-navigation-rail__overflow-icon{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px));line-height:1}.md-navigation-rail__overflow-label{font:var(--md-sys-typescale-label-medium, 500 12px/16px Roboto, sans-serif);white-space:nowrap}:host(.md-navigation-rail--label-visibility-none) .md-navigation-rail__overflow-label{display:none}:host(.md-navigation-rail--horizontal) .md-navigation-rail__overflow-trigger{inline-size:auto;min-inline-size:var(--_container-width)}.md-navigation-rail__overflow md-menu-item .material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px));line-height:1;font-variation-settings:'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24}::slotted(md-menu[slot='submenu']){position:absolute}`;const s=class{constructor(n){i(this,n);this.mdTabChange=a(this,"mdTabChange",7);this.mdExpand=a(this,"mdExpand",7);this.mdCollapse=a(this,"mdCollapse",7);this.variant="standard";this.modal=false;this.fullHeight=false;this.alignment="top";this.expandable=false;this.toggleLabel="Toggle navigation";this.labelVisibility="all";this.activeIndex=-1;this.label="Navigation";this.disableFocusManagement=false;this.density=0;this.hasLogo=false;this.hasLogoExpanded=false;this.hasHeader=false;this.hasFab=false;this.hasFooter=false;this.hasLinkDestinations=false;this.overflowCount=0;this.submenuOpen=false;this.tabsExpanded=false;this.orientation="vertical";this.overflowLabel="More";this.overflowIcon="more_horiz";this.wiredMenus=new WeakSet;this.handleSlottedMenuOpen=()=>{this.submenuOpen=true};this.handleSlottedMenuClose=()=>{this.submenuOpen=this.anyMenuOpen()};this.overflowId=`md-rail-overflow-${Math.random().toString(36).slice(2,9)}`;this.toggleOverflow=()=>{const i=this.overflowMenu();if(!i)return;if(i.open)void i.close();else void i.show()};this.handleKeyDown=i=>{if(i.key==="Escape"&&this.modal&&this.variant==="expanded"){i.preventDefault();this.collapse();this.focusToggle();return}if(this.disableFocusManagement)return;const a=this.getTabs().filter((i=>!this.isTabDisabled(i)));if(a.length===0)return;const n=i.composedPath().find((i=>i instanceof HTMLElement&&a.includes(i)));const t=n?a.indexOf(n):-1;let e=null;const o=this.orientation==="horizontal"&&this.resolveDirection()==="rtl";const s=i=>i==="ArrowDown"||(o?i==="ArrowLeft":i==="ArrowRight");const r=i=>i==="ArrowUp"||(o?i==="ArrowRight":i==="ArrowLeft");switch(true){case s(i.key):e=t<0?0:(t+1)%a.length;break;case r(i.key):e=t<0?a.length-1:(t-1+a.length)%a.length;break;case i.key==="Home":e=0;break;case i.key==="End":e=a.length-1;break;default:return}i.preventDefault();const d=a[e];if(!d)return;const l=this.getTabs();this.setRovingTabindex(l.indexOf(d));d.focus()};this.handleToggleClick=()=>{this.toggle()};this.handleScrimClick=()=>{if(this.modal&&this.variant==="expanded"){this.collapse();this.focusToggle()}};this.handleSlotChange=()=>{this.syncTabs()};this.handleLogoSlotChange=i=>{this.hasLogo=i.target.assignedElements().length>0};this.handleLogoExpandedSlotChange=i=>{this.hasLogoExpanded=i.target.assignedElements().length>0};this.handleHeaderSlotChange=i=>{this.hasHeader=i.target.assignedElements().length>0};this.handleFabSlotChange=i=>{this.hasFab=i.target.assignedElements().length>0;this.syncFab()};this.handleFooterSlotChange=i=>{this.hasFooter=i.target.assignedElements().length>0;this.wireSlottedMenus()}}async expand(){if(this.variant!=="expanded"){this.variant="expanded"}}async collapse(){if(this.variant!=="standard"){this.variant="standard"}}async toggle(){this.variant=this.variant==="expanded"?"standard":"expanded"}async focusTab(i){const a=this.getTabs();const n=a[i];if(n){this.setRovingTabindex(i);n.focus()}}componentWillLoad(){this.tabsExpanded=this.variant==="expanded";if(this.activeIndex<0){const i=Array.from(this.el.children).filter((i=>i.tagName.toLowerCase()==="md-navigation-rail-tab"));const a=i.findIndex((i=>i.hasAttribute("active")));if(a>=0)this.activeIndex=a}}componentDidLoad(){this.syncTabs();this.syncFab();this.wireSlottedMenus()}onVariantChange(i,a){if(i===a)return;if(i==="expanded")this.mdExpand.emit();else this.mdCollapse.emit();this.tabsExpanded=i==="expanded";this.syncTabs();this.syncFab()}syncFab(){const i=this.el.shadowRoot?.querySelector('slot[name="fab"]');i?.assignedElements().forEach((i=>{this.setProp(i,"extended",this.variant==="expanded")}))}onLabelVisibilityChange(){this.syncTabs()}onActiveIndexChange(){this.syncTabs()}handleTabClick(i){const a=i.target;if(!a)return;const n=this.getTabs();const t=n.indexOf(a);if(t<0)return;if(this.isTabDisabled(a)){i.stopPropagation();return}const e=t!==this.activeIndex;this.activeIndex=t;this.setRovingTabindex(t);this.clearOtherSubmenuSelections(a);if(e){this.mdTabChange.emit({index:t,value:i.detail?.value??""})}}clearOtherSubmenuSelections(i){this.getTabs().forEach((a=>{if(a===i)return;const n=a.clearSubmenuSelection;if(typeof n==="function")void n.call(a)}))}isTabDisabled(i){return i.hasAttribute("disabled")||i.getAttribute("aria-disabled")==="true"||i.hasAttribute("data-overflowed")}getTabs(){const i=this.el.shadowRoot?.querySelector("slot:not([name])");if(!i)return[];return i.assignedElements().filter((i=>i.tagName.toLowerCase()==="md-navigation-rail-tab"))}syncTabs(){const i=this.getTabs();this.hasLinkDestinations=i.some((i=>!!i.href||!!i.getAttribute("href")));i.forEach(((a,n)=>{const t=n===this.activeIndex;this.setProp(a,"active",t);this.setProp(a,"labelVisibility",this.labelVisibility);this.setProp(a,"expanded",this.tabsExpanded);a.setAttribute("data-orientation",this.orientation);if(!this.disableFocusManagement){const e=!this.isTabDisabled(a);const o=this.activeIndex>=0&&t||this.activeIndex<0&&n===i.findIndex((i=>!this.isTabDisabled(i)));a.tabIndex=e&&o?0:-1}}));this.applyOverflow()}setProp(i,a,n){try{i[a]=n}catch{}}setRovingTabindex(i){if(this.disableFocusManagement)return;const a=this.getTabs();a.forEach(((a,n)=>{a.tabIndex=n===i&&!this.isTabDisabled(a)?0:-1}))}resolveDirection(){let i=this.el;while(i){const a=i.getAttribute?.("dir");if(a==="rtl"||a==="ltr")return a;i=i.parentElement}return"ltr"}onDescendantSubmenuToggle(i){this.submenuOpen=i.detail?.open?true:this.anyMenuOpen()}wireSlottedMenus(){this.el.querySelectorAll("md-menu").forEach((i=>{if(this.wiredMenus.has(i))return;this.wiredMenus.add(i);i.addEventListener("mdOpen",this.handleSlottedMenuOpen);i.addEventListener("mdClose",this.handleSlottedMenuClose)}))}anyMenuOpen(){return Array.from(this.el.querySelectorAll("md-menu")).some((i=>i.open))}get overflowedTabs(){const i=this.maxVisible;const a=this.getTabs();if(!i||i<1||a.length<=i)return[];return a.slice(i)}applyOverflow(){const i=this.overflowedTabs;const a=new Set(i);this.getTabs().forEach((i=>{if(a.has(i))i.setAttribute("data-overflowed","");else i.removeAttribute("data-overflowed")}));this.overflowCount=i.length}onMaxVisibleChange(){this.applyOverflow()}overflowMenu(){return this.el.shadowRoot?.querySelector("md-menu")}selectOverflowed(i){const a=this.getTabs().indexOf(i);if(a<0)return;const n=a!==this.activeIndex;this.activeIndex=a;this.setRovingTabindex(a);this.clearOtherSubmenuSelections(i);if(n){this.mdTabChange.emit({index:a,value:i.getAttribute("value")??""})}void this.overflowMenu()?.close()}focusToggle(){const i=this.el.shadowRoot?.querySelector(".md-navigation-rail__toggle-button");i?.focus()}render(){return n(t,{key:"3d3929306bacef8acfbd8f686a4b7c3a0a1c7d04",class:{"md-navigation-rail":true,[`md-navigation-rail--${this.variant}`]:true,"md-navigation-rail--tabs-expanded":this.tabsExpanded,"md-navigation-rail--horizontal":this.orientation==="horizontal","md-navigation-rail--submenu-open":this.submenuOpen,"md-navigation-rail--modal":this.modal,"md-navigation-rail--full-height":this.fullHeight,[`md-navigation-rail--align-${this.alignment}`]:true,[`md-navigation-rail--labels-${this.labelVisibility}`]:true,"md-navigation-rail--with-logo":this.hasLogo||this.hasLogoExpanded,"md-navigation-rail--with-logo-expanded":this.hasLogoExpanded,"md-navigation-rail--with-header":this.hasHeader,"md-navigation-rail--with-fab":this.hasFab,"md-navigation-rail--with-footer":this.hasFooter},role:"navigation","aria-label":this.label,onKeyDown:this.handleKeyDown},n("div",{key:"c92433602e7747f3302be5769ebcd491b48fc6a7",class:"md-navigation-rail__scrim",part:"scrim","aria-hidden":"true",onClick:this.handleScrimClick}),n("div",{key:"d70f14a5d4c57e49ce91818919765204277fb2b1",class:"md-navigation-rail__container",part:"container"},n("div",{key:"59344703c915d15a79e44e8c6287db111b3cc1e5",class:"md-navigation-rail__logo",part:"logo",hidden:!this.hasLogo&&!this.hasLogoExpanded},n("span",{key:"e1d8cee7cccd8ed977c980f998d77faa544b8ea3",class:"md-navigation-rail__logo-contracted",part:"logo-contracted"},n("slot",{key:"c92ecdf05c7ae1faac015ccc2b77011607ec2400",name:"logo",onSlotchange:this.handleLogoSlotChange})),n("span",{key:"059d6e0eadec6398d1626ed44667231ad65d846c",class:"md-navigation-rail__logo-expanded",part:"logo-expanded"},n("slot",{key:"7bf0cf2e55ef500ab9d7f1689c44faffd35a907b",name:"logo-expanded",onSlotchange:this.handleLogoExpandedSlotChange}))),this.expandable&&this.orientation==="vertical"&&n("div",{key:"573b13d0e600e20286a1cb77a0243661d5995443",class:"md-navigation-rail__toggle",part:"toggle"},n("md-icon-button",{key:"64ace22b44d1da34bb84c7114ed5977d0c7597a0",class:"md-navigation-rail__toggle-button",icon:this.variant==="expanded"?"menu_open":"menu","aria-label":this.toggleLabel,"aria-expanded":this.variant==="expanded"?"true":"false",onClick:this.handleToggleClick})),n("div",{key:"dc3991334f2711aa0ca7a56b7c51a5302b22577a",class:"md-navigation-rail__header",part:"header",hidden:!this.hasHeader},n("slot",{key:"f4d839f52101b0c6d7fda026763c6fc16e1d065b",name:"header",onSlotchange:this.handleHeaderSlotChange})),n("div",{key:"fa32e9e3b98308e9cb2c94a53a9b804565833a44",class:"md-navigation-rail__fab",part:"fab",hidden:!this.hasFab},n("slot",{key:"58ec6681efb826b3aa5e88c4f8dd07607b0d0e17",name:"fab",onSlotchange:this.handleFabSlotChange})),n("div",{key:"47ad4dcc7900c2dcc5b686db218492b44d783cc9",class:"md-navigation-rail__destinations",part:"destinations",role:this.hasLinkDestinations?undefined:"tablist","aria-orientation":this.hasLinkDestinations?undefined:this.orientation,"aria-label":this.hasLinkDestinations?undefined:this.label},n("slot",{key:"c7e9b32b3285e15d1fd5898b2e75e6c588abf434",onSlotchange:this.handleSlotChange})),this.overflowCount>0&&n("div",{key:"d9918f2d696971906868c0410a3ff7fa13b108bf",class:"md-navigation-rail__overflow",part:"overflow"},n("button",{key:"16a274e2898cea6e9c912ada3b811ea32d2c4d5a",id:this.overflowId,type:"button",class:"md-navigation-rail__overflow-trigger",part:"overflow-trigger","aria-haspopup":"menu","aria-label":this.overflowLabel,onClick:this.toggleOverflow},n("span",{key:"b52e99255604616dca34eed531c8d8b738e0a183",class:"material-symbols-outlined md-navigation-rail__overflow-icon","aria-hidden":"true"},this.overflowIcon),n("span",{key:"29c312daad50206e6cde02edd1f3d20025465823",class:"md-navigation-rail__overflow-label"},this.overflowLabel)),n("md-menu",{key:"4aeb58bb954bd30673330f7c3a9aa4e9111f3330",anchor:this.overflowId,placement:this.orientation==="horizontal"?"bottom-end":"top-start"},this.overflowedTabs.map((i=>n("md-menu-item",{key:i.getAttribute("value")||i.getAttribute("label")||"",headline:i.getAttribute("label")||"",onClick:()=>this.selectOverflowed(i)},i.getAttribute("icon")&&n("span",{slot:"leading-icon",class:"material-symbols-outlined"},i.getAttribute("icon"))))))),n("div",{key:"4a5edb00ca0ed470ded1aebf24fd43ba44f5a400",class:"md-navigation-rail__footer",part:"footer",hidden:!this.hasFooter},n("slot",{key:"47ef388857f60eab7941467abad8461ee0349387",name:"footer",onSlotchange:this.handleFooterSlotChange}))))}get el(){return e(this)}static get watchers(){return{variant:[{onVariantChange:0}],labelVisibility:[{onLabelVisibilityChange:0}],activeIndex:[{onActiveIndexChange:0}],maxVisible:[{onMaxVisibleChange:0}]}}};s.style=o();export{s as md_navigation_rail};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as i,c as a,h as n,H as t,g as e}from"./p-WmvQpZnM.js";const o=()=>`:host{--_container-color:var( --md-navigation-rail-container-color, var(--md-sys-color-surface, #FFFBFE) );--_container-width:var(--md-navigation-rail-container-width, max(56px, calc(80px + var(--md-sys-density-scale, 0) * 4px)));--_expanded-width:var(--md-navigation-rail-expanded-width, max(140px, calc(220px + var(--md-sys-density-scale, 0) * 20px)));--_expanded-max-width:var(--md-navigation-rail-expanded-max-width, 360px);--_container-shape:var(--md-navigation-rail-container-shape, 0px);--_container-elevation:var(--md-navigation-rail-container-elevation, none);--_padding-block:var(--md-navigation-rail-padding-block, max(24px, calc(44px + var(--md-sys-density-scale, 0) * 4px)));--_padding-inline:var(--md-navigation-rail-padding-inline, 0px);--_gap:var(--md-navigation-rail-gap, var(--md-sys-spacing-gap-md, 12px));--_header-space:var(--md-navigation-rail-header-space, max(20px, calc(40px + var(--md-sys-density-scale, 0) * 4px)));--_destinations-gap:var(--md-navigation-rail-destinations-gap, max(0px, calc(8px + var(--md-sys-density-scale, 0) * 2px)));--_content-color:var( --md-navigation-rail-content-color, var(--md-sys-color-on-surface-variant, #49454F) );--_logo-icon-size:var(--md-navigation-rail-logo-icon-size, 24px);--_motion-duration:var(--md-sys-motion-duration-short4, 200ms);--_motion-easing:var( --md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1) );--_motion-effects-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_motion-effects-easing:var( --md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.8, 0.34, 1) );display:flex;flex-direction:column;box-sizing:border-box;inline-size:var(--_container-width);min-inline-size:var(--_container-width);max-inline-size:var(--_container-width);block-size:100%;min-block-size:100%;padding-block:var(--_padding-block);padding-inline:var(--_padding-inline);background-color:var(--_container-color);color:var(--_content-color);border-radius:var(--_container-shape);box-shadow:var(--_container-elevation);position:relative;isolation:isolate;transition:inline-size var(--_motion-duration) var(--_motion-easing), min-inline-size var(--_motion-duration) var(--_motion-easing), max-inline-size var(--_motion-duration) var(--_motion-easing), background-color var(--_motion-effects-duration) var(--_motion-effects-easing);font-family:var(--md-sys-typescale-label-medium-font-family, Roboto, sans-serif)}:host(.md-navigation-rail--full-height){block-size:100dvh;min-block-size:100dvh}:host(.md-navigation-rail--expanded){inline-size:var(--_expanded-width);min-inline-size:var(--_expanded-width);max-inline-size:var(--_expanded-max-width);--_padding-inline:var(--md-sys-spacing-inset-md, 12px)}:host(.md-navigation-rail--modal){position:static;isolation:auto;background-color:transparent;box-shadow:none;padding:0}:host(.md-navigation-rail--modal.md-navigation-rail--expanded){--_container-color:var( --md-navigation-rail-container-color, var(--md-sys-color-surface-container, #F3EDF7) );--_container-shape:var( --md-navigation-rail-container-shape, var(--md-sys-shape-corner-large, 16px) );--_container-elevation:var( --md-navigation-rail-container-elevation, var(--md-sys-elevation-3, 0 1px 3px rgba(0, 0, 0, 0.3), 0 4px 8px 3px rgba(0, 0, 0, 0.15)) );inline-size:var(--_container-width);min-inline-size:var(--_container-width);max-inline-size:var(--_container-width)}.md-navigation-rail__scrim{position:absolute;inset:0;background-color:var(--md-sys-color-scrim, #000000);opacity:0;pointer-events:none;z-index:2;transition:opacity var(--_motion-duration) var(--_motion-easing)}:host(.md-navigation-rail--modal.md-navigation-rail--expanded) .md-navigation-rail__scrim{opacity:0.32;pointer-events:auto}:host(.md-navigation-rail--modal) .md-navigation-rail__container{position:absolute;inset-block-start:0;inset-inline-start:0;box-sizing:border-box;inline-size:var(--_container-width);block-size:100%;padding-block:var(--_padding-block);padding-inline:var(--_padding-inline);background-color:var(--_container-color);box-shadow:var(--_container-elevation);border-start-end-radius:var(--_container-shape);border-end-end-radius:var(--_container-shape);z-index:3;overflow:hidden;transition:inline-size var(--_motion-duration) var(--_motion-easing), inset-block-start var(--_motion-duration) var(--_motion-easing), inset-inline-start var(--_motion-duration) var(--_motion-easing), block-size var(--_motion-duration) var(--_motion-easing), background-color var(--_motion-effects-duration) var(--_motion-effects-easing), box-shadow var(--_motion-effects-duration) var(--_motion-effects-easing), border-radius var(--_motion-effects-duration) var(--_motion-effects-easing)}:host(.md-navigation-rail--modal.md-navigation-rail--expanded) .md-navigation-rail__container{inline-size:var(--_expanded-width);max-inline-size:var(--_expanded-max-width);inset-block-start:16px;inset-inline-start:16px;block-size:calc(100% - 32px);border-radius:var(--_container-shape)}.md-navigation-rail__container{display:flex;flex-direction:column;block-size:100%;gap:var(--_gap);inline-size:100%}.md-navigation-rail__logo{position:relative;inline-size:100%;min-block-size:48px}.md-navigation-rail__logo[hidden]{display:none}.md-navigation-rail__logo-contracted,.md-navigation-rail__logo-expanded{position:absolute;inset-block:0;inset-inline-start:0;inset-inline-end:0;display:flex;align-items:center;justify-content:flex-start;padding-inline-start:calc((var(--_container-width) - var(--_logo-icon-size)) / 2);transition:opacity var(--_motion-effects-duration) var(--_motion-effects-easing)}:host(.md-navigation-rail--expanded) .md-navigation-rail__logo-contracted,:host(.md-navigation-rail--expanded) .md-navigation-rail__logo-expanded{margin-inline-start:calc(-1 * var(--_padding-inline))}.md-navigation-rail__logo-contracted{opacity:1}.md-navigation-rail__logo-expanded{opacity:0;pointer-events:none}:host(.md-navigation-rail--expanded) .md-navigation-rail__logo-contracted{opacity:0;pointer-events:none}:host(.md-navigation-rail--expanded) .md-navigation-rail__logo-expanded{opacity:1;pointer-events:auto}:host(.md-navigation-rail--expanded:not(.md-navigation-rail--with-logo-expanded)) .md-navigation-rail__logo-contracted{opacity:1;pointer-events:auto}.md-navigation-rail__toggle{display:flex;align-items:center;justify-content:flex-start;inline-size:100%;min-block-size:48px;padding-inline-start:calc((var(--_container-width) - 40px) / 2)}:host(.md-navigation-rail--expanded) .md-navigation-rail__toggle{padding-inline-start:var(--md-sys-spacing-inset-sm, 8px)}.md-navigation-rail__header{display:flex;flex-direction:column;align-items:center;justify-content:center;inline-size:100%;min-block-size:56px;padding-block-end:var(--md-sys-spacing-inset-xs, 4px)}:host(.md-navigation-rail--expanded) .md-navigation-rail__header{align-items:flex-start;padding-inline:var(--md-sys-spacing-inset-sm, 8px)}.md-navigation-rail__header[hidden]{display:none}.md-navigation-rail__fab{display:flex;align-items:center;justify-content:center;inline-size:100%;padding-block-end:var(--md-sys-spacing-inset-sm, 8px)}:host(.md-navigation-rail--expanded) .md-navigation-rail__fab{justify-content:flex-start;padding-inline-start:var(--md-sys-spacing-inset-md, 12px)}.md-navigation-rail__fab[hidden]{display:none}.md-navigation-rail__destinations{display:flex;flex-direction:column;gap:var(--_destinations-gap);inline-size:100%;flex:1 1 auto;min-block-size:0;overflow-y:auto;overflow-x:clip;overscroll-behavior:contain;scrollbar-width:thin;padding-block:5px}:host(.md-navigation-rail--with-header) .md-navigation-rail__destinations,:host(.md-navigation-rail--with-fab) .md-navigation-rail__destinations{padding-block-start:calc(var(--_header-space) - var(--_gap))}:host(.md-navigation-rail--align-top) .md-navigation-rail__destinations{justify-content:flex-start}:host(.md-navigation-rail--align-middle) .md-navigation-rail__destinations{justify-content:center}:host(.md-navigation-rail--align-bottom) .md-navigation-rail__destinations{justify-content:flex-end}.md-navigation-rail__footer{display:flex;flex-direction:column;align-items:stretch;inline-size:100%;gap:var(--_destinations-gap);padding-block-start:var(--md-sys-spacing-inset-sm, 8px);margin-block-start:auto;}.md-navigation-rail__footer ::slotted(md-icon-button){align-self:center}:host(.md-navigation-rail--expanded) .md-navigation-rail__footer ::slotted(md-icon-button){align-self:flex-start}:host(.md-navigation-rail--expanded) .md-navigation-rail__footer{padding-inline-start:var(--md-sys-spacing-inset-sm, 8px)}.md-navigation-rail__footer[hidden]{display:none}::slotted(md-navigation-rail-tab){inline-size:var(--_container-width)}:host(.md-navigation-rail--tabs-expanded) ::slotted(md-navigation-rail-tab){inline-size:fit-content}::slotted(md-fab),::slotted(md-icon-button){flex:0 0 auto}::slotted(md-fab){box-shadow:none}::slotted([data-section-header]){display:none}:host(.md-navigation-rail--tabs-expanded) ::slotted([data-section-header]){display:block;flex:0 0 auto;padding-block:var(--md-sys-spacing-inset-md, 12px) var(--md-sys-spacing-inset-sm, 8px);padding-inline:var(--md-sys-spacing-inset-lg, 16px);margin:0;color:var(--md-sys-color-on-surface-variant, #49454F);font-family:var(--md-sys-typescale-title-small-font-family, Roboto, sans-serif);font-size:var(--md-sys-typescale-title-small-font-size, 14px);font-weight:var(--md-sys-typescale-title-small-font-weight, 500);line-height:var(--md-sys-typescale-title-small-line-height, 20px);letter-spacing:var(--md-sys-typescale-title-small-letter-spacing, 0.1px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (prefers-reduced-motion: reduce){:host,.md-navigation-rail__toggle,.md-navigation-rail__fab,.md-navigation-rail__scrim,:host(.md-navigation-rail--modal) .md-navigation-rail__container{transition:none}}:host([data-theme='dark']),:host-context([data-theme='dark']){--_container-color:var( --md-navigation-rail-container-color, var(--md-sys-color-surface, #1C1B1F) )}@media (forced-colors: active){:host{border-inline-end:1px solid CanvasText}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}:host(.md-navigation-rail--horizontal){flex-direction:row;inline-size:100%;min-inline-size:0;max-inline-size:none;block-size:auto;min-block-size:var( --md-navigation-rail-horizontal-height, max(64px, calc(72px + var(--md-sys-density-scale, 0) * 4px)) );padding-block:var(--md-navigation-rail-horizontal-padding-block, 0px);padding-inline:var(--md-navigation-rail-horizontal-padding-inline, var(--md-sys-spacing-inset-md, 12px))}:host(.md-navigation-rail--horizontal) .md-navigation-rail__container{flex-direction:row;align-items:stretch;block-size:auto}:host(.md-navigation-rail--horizontal) .md-navigation-rail__destinations{flex-direction:row;align-items:stretch;inline-size:auto;min-inline-size:0;block-size:auto;min-block-size:0;overflow-x:auto;overflow-y:clip;padding-block:0;padding-inline:5px;justify-content:center}:host(.md-navigation-rail--horizontal.md-navigation-rail--with-header) .md-navigation-rail__destinations,:host(.md-navigation-rail--horizontal.md-navigation-rail--with-fab) .md-navigation-rail__destinations{padding-block-start:0;padding-inline-start:calc(var(--_header-space) - var(--_gap))}:host(.md-navigation-rail--horizontal) ::slotted(md-navigation-rail-tab){inline-size:auto;min-inline-size:var(--_container-width);flex-shrink:0}:host(.md-navigation-rail--horizontal) .md-navigation-rail__logo{inline-size:auto;min-block-size:0;flex:0 0 auto;display:flex;align-items:center}:host(.md-navigation-rail--horizontal) .md-navigation-rail__logo-contracted,:host(.md-navigation-rail--horizontal) .md-navigation-rail__logo-expanded{position:static;padding-inline:var(--md-sys-spacing-inset-sm, 8px)}:host(.md-navigation-rail--horizontal) .md-navigation-rail__logo-expanded{display:none}:host(.md-navigation-rail--horizontal) .md-navigation-rail__fab{flex:0 0 auto}:host(.md-navigation-rail--horizontal) .md-navigation-rail__footer{flex-direction:row;align-items:center;inline-size:auto;padding-block-start:0;padding-inline-start:var(--md-sys-spacing-inset-sm, 8px);margin-block-start:0;margin-inline-start:auto}:host(.md-navigation-rail--horizontal) ::slotted([data-section-header]){display:none}:host(.md-navigation-rail--submenu-open){isolation:auto;z-index:3}::slotted(md-navigation-rail-tab[data-overflowed]){display:none}.md-navigation-rail__overflow{position:relative;display:flex;flex:0 0 auto;justify-content:center}.md-navigation-rail__overflow-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;inline-size:100%;min-block-size:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 2px));padding:0 var(--md-sys-spacing-inset-sm, 8px);border:none;background:none;color:var(--_content-color);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.md-navigation-rail__overflow-trigger:focus-visible{outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:-3px;border-radius:var(--md-sys-shape-corner-small, 8px)}.md-navigation-rail__overflow-icon{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px));line-height:1}.md-navigation-rail__overflow-label{font:var(--md-sys-typescale-label-medium, 500 12px/16px Roboto, sans-serif);white-space:nowrap}:host(.md-navigation-rail--label-visibility-none) .md-navigation-rail__overflow-label{display:none}:host(.md-navigation-rail--horizontal) .md-navigation-rail__overflow-trigger{inline-size:auto;min-inline-size:var(--_container-width)}.md-navigation-rail__overflow md-menu-item .material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px));line-height:1;font-variation-settings:'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24}::slotted(md-menu[slot='submenu']){position:absolute}`;const s=class{constructor(n){i(this,n);this.mdTabChange=a(this,"mdTabChange",7);this.mdExpand=a(this,"mdExpand",7);this.mdCollapse=a(this,"mdCollapse",7);this.variant="standard";this.modal=false;this.fullHeight=false;this.alignment="top";this.expandable=false;this.toggleLabel="Toggle navigation";this.labelVisibility="all";this.activeIndex=-1;this.label="Navigation";this.disableFocusManagement=false;this.density=0;this.hasLogo=false;this.hasLogoExpanded=false;this.hasHeader=false;this.hasFab=false;this.hasFooter=false;this.hasLinkDestinations=false;this.overflowCount=0;this.submenuOpen=false;this.tabsExpanded=false;this.orientation="vertical";this.overflowLabel="More";this.overflowIcon="more_horiz";this.wiredMenus=new WeakSet;this.handleSlottedMenuOpen=()=>{this.submenuOpen=true};this.handleSlottedMenuClose=()=>{this.submenuOpen=this.anyMenuOpen()};this.overflowId=`md-rail-overflow-${Math.random().toString(36).slice(2,9)}`;this.toggleOverflow=()=>{const i=this.overflowMenu();if(!i)return;if(i.open)void i.close();else void i.show()};this.handleKeyDown=i=>{if(i.key==="Escape"&&this.modal&&this.variant==="expanded"){i.preventDefault();this.collapse();this.focusToggle();return}if(this.disableFocusManagement)return;const a=this.getTabs().filter((i=>!this.isTabDisabled(i)));if(a.length===0)return;const n=i.composedPath().find((i=>i instanceof HTMLElement&&a.includes(i)));const t=n?a.indexOf(n):-1;let e=null;const o=this.orientation==="horizontal"&&this.resolveDirection()==="rtl";const s=i=>i==="ArrowDown"||(o?i==="ArrowLeft":i==="ArrowRight");const r=i=>i==="ArrowUp"||(o?i==="ArrowRight":i==="ArrowLeft");switch(true){case s(i.key):e=t<0?0:(t+1)%a.length;break;case r(i.key):e=t<0?a.length-1:(t-1+a.length)%a.length;break;case i.key==="Home":e=0;break;case i.key==="End":e=a.length-1;break;default:return}i.preventDefault();const d=a[e];if(!d)return;const l=this.getTabs();this.setRovingTabindex(l.indexOf(d));d.focus()};this.handleToggleClick=()=>{this.toggle()};this.handleScrimClick=()=>{if(this.modal&&this.variant==="expanded"){this.collapse();this.focusToggle()}};this.handleSlotChange=()=>{this.syncTabs()};this.handleLogoSlotChange=i=>{this.hasLogo=i.target.assignedElements().length>0};this.handleLogoExpandedSlotChange=i=>{this.hasLogoExpanded=i.target.assignedElements().length>0};this.handleHeaderSlotChange=i=>{this.hasHeader=i.target.assignedElements().length>0};this.handleFabSlotChange=i=>{this.hasFab=i.target.assignedElements().length>0;this.syncFab()};this.handleFooterSlotChange=i=>{this.hasFooter=i.target.assignedElements().length>0;this.wireSlottedMenus()}}async expand(){if(this.variant!=="expanded"){this.variant="expanded"}}async collapse(){if(this.variant!=="standard"){this.variant="standard"}}async toggle(){this.variant=this.variant==="expanded"?"standard":"expanded"}async focusTab(i){const a=this.getTabs();const n=a[i];if(n){this.setRovingTabindex(i);n.focus()}}componentWillLoad(){this.tabsExpanded=this.variant==="expanded";if(this.activeIndex<0){const i=Array.from(this.el.children).filter((i=>i.tagName.toLowerCase()==="md-navigation-rail-tab"));const a=i.findIndex((i=>i.hasAttribute("active")));if(a>=0)this.activeIndex=a}}componentDidLoad(){this.syncTabs();this.syncFab();this.wireSlottedMenus()}onVariantChange(i,a){if(i===a)return;if(i==="expanded")this.mdExpand.emit();else this.mdCollapse.emit();this.tabsExpanded=i==="expanded";this.syncTabs();this.syncFab()}syncFab(){const i=this.el.shadowRoot?.querySelector('slot[name="fab"]');i?.assignedElements().forEach((i=>{this.setProp(i,"extended",this.variant==="expanded")}))}onLabelVisibilityChange(){this.syncTabs()}onActiveIndexChange(){this.syncTabs()}handleTabClick(i){const a=i.target;if(!a)return;const n=this.getTabs();const t=n.indexOf(a);if(t<0)return;if(this.isTabDisabled(a)){i.stopPropagation();return}const e=t!==this.activeIndex;this.activeIndex=t;this.setRovingTabindex(t);this.clearOtherSubmenuSelections(a);if(e){this.mdTabChange.emit({index:t,value:i.detail?.value??""})}}clearOtherSubmenuSelections(i){this.getTabs().forEach((a=>{if(a===i)return;const n=a.clearSubmenuSelection;if(typeof n==="function")void n.call(a)}))}isTabDisabled(i){return i.hasAttribute("disabled")||i.getAttribute("aria-disabled")==="true"||i.hasAttribute("data-overflowed")}getTabs(){const i=this.el.shadowRoot?.querySelector("slot:not([name])");if(!i)return[];return i.assignedElements().filter((i=>i.tagName.toLowerCase()==="md-navigation-rail-tab"))}syncTabs(){const i=this.getTabs();this.hasLinkDestinations=i.some((i=>!!i.href||!!i.getAttribute("href")));i.forEach(((a,n)=>{const t=n===this.activeIndex;this.setProp(a,"active",t);this.setProp(a,"labelVisibility",this.labelVisibility);this.setProp(a,"expanded",this.tabsExpanded);a.setAttribute("data-orientation",this.orientation);if(!this.disableFocusManagement){const e=!this.isTabDisabled(a);const o=this.activeIndex>=0&&t||this.activeIndex<0&&n===i.findIndex((i=>!this.isTabDisabled(i)));a.tabIndex=e&&o?0:-1}}));this.applyOverflow()}setProp(i,a,n){try{i[a]=n}catch{}}setRovingTabindex(i){if(this.disableFocusManagement)return;const a=this.getTabs();a.forEach(((a,n)=>{a.tabIndex=n===i&&!this.isTabDisabled(a)?0:-1}))}resolveDirection(){let i=this.el;while(i){const a=i.getAttribute?.("dir");if(a==="rtl"||a==="ltr")return a;i=i.parentElement}return"ltr"}onDescendantSubmenuToggle(i){this.submenuOpen=i.detail?.open?true:this.anyMenuOpen()}wireSlottedMenus(){this.el.querySelectorAll("md-menu").forEach((i=>{if(this.wiredMenus.has(i))return;this.wiredMenus.add(i);i.addEventListener("mdOpen",this.handleSlottedMenuOpen);i.addEventListener("mdClose",this.handleSlottedMenuClose)}))}anyMenuOpen(){return Array.from(this.el.querySelectorAll("md-menu")).some((i=>i.open))}get overflowedTabs(){const i=this.maxVisible;const a=this.getTabs();if(!i||i<1||a.length<=i)return[];return a.slice(i)}applyOverflow(){const i=this.overflowedTabs;const a=new Set(i);this.getTabs().forEach((i=>{if(a.has(i))i.setAttribute("data-overflowed","");else i.removeAttribute("data-overflowed")}));this.overflowCount=i.length}onMaxVisibleChange(){this.applyOverflow()}overflowMenu(){return this.el.shadowRoot?.querySelector("md-menu")}selectOverflowed(i){const a=this.getTabs().indexOf(i);if(a<0)return;const n=a!==this.activeIndex;this.activeIndex=a;this.setRovingTabindex(a);this.clearOtherSubmenuSelections(i);if(n){this.mdTabChange.emit({index:a,value:i.getAttribute("value")??""})}void this.overflowMenu()?.close()}focusToggle(){const i=this.el.shadowRoot?.querySelector(".md-navigation-rail__toggle-button");i?.focus()}render(){return n(t,{key:"3d3929306bacef8acfbd8f686a4b7c3a0a1c7d04",class:{"md-navigation-rail":true,[`md-navigation-rail--${this.variant}`]:true,"md-navigation-rail--tabs-expanded":this.tabsExpanded,"md-navigation-rail--horizontal":this.orientation==="horizontal","md-navigation-rail--submenu-open":this.submenuOpen,"md-navigation-rail--modal":this.modal,"md-navigation-rail--full-height":this.fullHeight,[`md-navigation-rail--align-${this.alignment}`]:true,[`md-navigation-rail--labels-${this.labelVisibility}`]:true,"md-navigation-rail--with-logo":this.hasLogo||this.hasLogoExpanded,"md-navigation-rail--with-logo-expanded":this.hasLogoExpanded,"md-navigation-rail--with-header":this.hasHeader,"md-navigation-rail--with-fab":this.hasFab,"md-navigation-rail--with-footer":this.hasFooter},role:"navigation","aria-label":this.label,onKeyDown:this.handleKeyDown},n("div",{key:"c92433602e7747f3302be5769ebcd491b48fc6a7",class:"md-navigation-rail__scrim",part:"scrim","aria-hidden":"true",onClick:this.handleScrimClick}),n("div",{key:"d70f14a5d4c57e49ce91818919765204277fb2b1",class:"md-navigation-rail__container",part:"container"},n("div",{key:"59344703c915d15a79e44e8c6287db111b3cc1e5",class:"md-navigation-rail__logo",part:"logo",hidden:!this.hasLogo&&!this.hasLogoExpanded},n("span",{key:"e1d8cee7cccd8ed977c980f998d77faa544b8ea3",class:"md-navigation-rail__logo-contracted",part:"logo-contracted"},n("slot",{key:"c92ecdf05c7ae1faac015ccc2b77011607ec2400",name:"logo",onSlotchange:this.handleLogoSlotChange})),n("span",{key:"059d6e0eadec6398d1626ed44667231ad65d846c",class:"md-navigation-rail__logo-expanded",part:"logo-expanded"},n("slot",{key:"7bf0cf2e55ef500ab9d7f1689c44faffd35a907b",name:"logo-expanded",onSlotchange:this.handleLogoExpandedSlotChange}))),this.expandable&&this.orientation==="vertical"&&n("div",{key:"573b13d0e600e20286a1cb77a0243661d5995443",class:"md-navigation-rail__toggle",part:"toggle"},n("md-icon-button",{key:"64ace22b44d1da34bb84c7114ed5977d0c7597a0",class:"md-navigation-rail__toggle-button",icon:this.variant==="expanded"?"menu_open":"menu","aria-label":this.toggleLabel,"aria-expanded":this.variant==="expanded"?"true":"false",onClick:this.handleToggleClick})),n("div",{key:"dc3991334f2711aa0ca7a56b7c51a5302b22577a",class:"md-navigation-rail__header",part:"header",hidden:!this.hasHeader},n("slot",{key:"f4d839f52101b0c6d7fda026763c6fc16e1d065b",name:"header",onSlotchange:this.handleHeaderSlotChange})),n("div",{key:"fa32e9e3b98308e9cb2c94a53a9b804565833a44",class:"md-navigation-rail__fab",part:"fab",hidden:!this.hasFab},n("slot",{key:"58ec6681efb826b3aa5e88c4f8dd07607b0d0e17",name:"fab",onSlotchange:this.handleFabSlotChange})),n("div",{key:"47ad4dcc7900c2dcc5b686db218492b44d783cc9",class:"md-navigation-rail__destinations",part:"destinations",role:this.hasLinkDestinations?undefined:"tablist","aria-orientation":this.hasLinkDestinations?undefined:this.orientation,"aria-label":this.hasLinkDestinations?undefined:this.label},n("slot",{key:"c7e9b32b3285e15d1fd5898b2e75e6c588abf434",onSlotchange:this.handleSlotChange})),this.overflowCount>0&&n("div",{key:"d9918f2d696971906868c0410a3ff7fa13b108bf",class:"md-navigation-rail__overflow",part:"overflow"},n("button",{key:"16a274e2898cea6e9c912ada3b811ea32d2c4d5a",id:this.overflowId,type:"button",class:"md-navigation-rail__overflow-trigger",part:"overflow-trigger","aria-haspopup":"menu","aria-label":this.overflowLabel,onClick:this.toggleOverflow},n("span",{key:"b52e99255604616dca34eed531c8d8b738e0a183",class:"material-symbols-outlined md-navigation-rail__overflow-icon","aria-hidden":"true"},this.overflowIcon),n("span",{key:"29c312daad50206e6cde02edd1f3d20025465823",class:"md-navigation-rail__overflow-label"},this.overflowLabel)),n("md-menu",{key:"4aeb58bb954bd30673330f7c3a9aa4e9111f3330",anchor:this.overflowId,placement:this.orientation==="horizontal"?"bottom-end":"top-start"},this.overflowedTabs.map((i=>n("md-menu-item",{key:i.getAttribute("value")||i.getAttribute("label")||"",headline:i.getAttribute("label")||"",onClick:()=>this.selectOverflowed(i)},i.getAttribute("icon")&&n("span",{slot:"leading-icon",class:"material-symbols-outlined"},i.getAttribute("icon"))))))),n("div",{key:"4a5edb00ca0ed470ded1aebf24fd43ba44f5a400",class:"md-navigation-rail__footer",part:"footer",hidden:!this.hasFooter},n("slot",{key:"47ef388857f60eab7941467abad8461ee0349387",name:"footer",onSlotchange:this.handleFooterSlotChange}))))}get el(){return e(this)}static get watchers(){return{variant:[{onVariantChange:0}],labelVisibility:[{onLabelVisibilityChange:0}],activeIndex:[{onActiveIndexChange:0}],maxVisible:[{onMaxVisibleChange:0}]}}};s.style=o();export{s as md_navigation_rail};
|
|
2
|
+
//# sourceMappingURL=p-c58c68d0.entry.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r,c as t,h as e,H as o,g as a}from"./p-WmvQpZnM.js";const i=()=>`:host{--_connector-color:var(--md-org-chart-connector-color, var(--md-sys-color-outline-variant, #c4c7c5));--_connector-width:var(--md-org-chart-connector-width, 1.5px);--_node-color:var(--md-org-chart-node-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_node-outline:var(--md-org-chart-node-outline-color, var(--md-sys-color-outline-variant, #c4c7c5));--_node-outline-width:var(--md-org-chart-node-outline-width, 1px);--_node-shape:var(--md-org-chart-node-shape, var(--md-sys-shape-corner-medium, 12px));--_node-min-width:var(--md-org-chart-node-min-width, 176px);--_node-max-width:var(--md-org-chart-node-max-width, 260px);--_selected-color:var(--md-org-chart-selected-color, var(--md-sys-color-primary, #6750a4));--_focus-ring-color:var(--md-org-chart-focus-ring-color, var(--md-sys-color-secondary, #625b71));--_toggle-size:var(--md-org-chart-toggle-size, max(20px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_state-layer-color:var(--md-org-chart-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_accent:var(--md-sys-color-primary, #6750a4);--_level-gap:var(--md-org-chart-level-gap, max(24px, calc(28px + var(--md-sys-density-scale, 0) * 1px)));--_sibling-gap:var(--md-org-chart-sibling-gap, max(8px, calc(12px + var(--md-sys-density-scale, 0) * 1px)));--_duration:var(--md-org-chart-duration, var(--md-sys-motion-duration-medium2, 300ms));--_easing:var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));--_line:var(--_connector-width) solid var(--_connector-color);--_elbow:12px;display:block;box-sizing:border-box;color:var(--md-sys-color-on-surface, #1d1b20);font-family:var(--md-sys-typescale-body-medium-font-family, Roboto, system-ui, sans-serif)}.md-org-chart__viewport{overflow:auto;padding:8px 8px calc(var(--_toggle-size) / 2 + 10px);box-sizing:border-box}.md-org-chart__tree,.md-org-chart__group{display:flex;justify-content:center;align-items:flex-start;list-style:none;margin:0;padding:0;position:relative}.md-org-chart__tree{inline-size:max-content;margin-inline:auto}.md-org-chart__group{padding-block-start:var(--_level-gap)}.md-org-chart__branch{position:relative;display:flex;flex-direction:column;align-items:center;padding-block-start:var(--_level-gap);padding-inline:calc(var(--_sibling-gap) / 2);outline:none}.md-org-chart__branch::before,.md-org-chart__branch::after{content:'';position:absolute;inset-block-start:0;inset-inline-end:50%;inline-size:50%;block-size:var(--_level-gap);border-block-start:var(--_line)}.md-org-chart__branch::after{inset-inline-end:auto;inset-inline-start:50%;border-inline-start:var(--_line)}.md-org-chart__branch:only-child::before,.md-org-chart__branch:only-child::after{display:none}.md-org-chart__branch:only-child{padding-block-start:0}.md-org-chart__branch:first-child::before,.md-org-chart__branch:last-child::after{border:0}.md-org-chart__branch:last-child::before{border-inline-end:var(--_line);border-start-end-radius:var(--_elbow)}.md-org-chart__branch:first-child::after{border-start-start-radius:var(--_elbow)}.md-org-chart__group::before{content:'';position:absolute;inset-block-start:0;inset-inline-start:50%;inline-size:0;block-size:var(--_level-gap);border-inline-start:var(--_line)}.md-org-chart__tree>.md-org-chart__branch{padding-block-start:0}.md-org-chart__tree>.md-org-chart__branch::before,.md-org-chart__tree>.md-org-chart__branch::after{display:none}.md-org-chart__node{position:relative;z-index:2;display:inline-flex;align-items:center;gap:max(6px, calc(12px + var(--md-sys-density-scale, 0) * 1.5px));padding-block:max(6px, calc(10px + var(--md-sys-density-scale, 0) * 1px));padding-inline:max(8px, calc(14px + var(--md-sys-density-scale, 0) * 1.5px));min-inline-size:var(--_node-min-width);max-inline-size:var(--_node-max-width);box-sizing:border-box;border-radius:var(--_node-shape);background:var(--_node-color);border:var(--_node-outline-width) solid var(--_node-outline);color:var(--md-sys-color-on-surface, #1d1b20);transition:border-color var(--_duration) var(--_easing), box-shadow var(--_duration) var(--_easing);}.md-org-chart__node--selectable{cursor:pointer}.md-org-chart__node--selectable:hover{box-shadow:var(--md-sys-elevation-1, 0 1px 3px 1px rgba(0, 0, 0, 0.15))}.md-org-chart__node--selected{border-color:var(--_selected-color);box-shadow:0 0 0 1px var(--_selected-color)}.md-org-chart__node--selected.md-org-chart__node--selectable:hover{box-shadow:0 0 0 1px var(--_selected-color), var(--md-sys-elevation-1, 0 1px 3px 1px rgba(0, 0, 0, 0.15))}.md-org-chart__branch:focus-visible>.md-org-chart__node{outline:3px solid var(--_focus-ring-color);outline-offset:2px}.md-org-chart__ripple{--md-ripple-color:var(--_selected-color);border-radius:inherit}.md-org-chart__state-layer{position:absolute;inset:0;border-radius:inherit;background:var(--_state-layer-color);opacity:0;pointer-events:none;transition:opacity var(--_duration) var(--_easing)}.md-org-chart__node--selectable:hover>.md-org-chart__state-layer{opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08)}.md-org-chart__node--selectable:active>.md-org-chart__state-layer{opacity:var(--md-sys-state-pressed-state-layer-opacity, 0.12)}.md-org-chart__node--selected>.md-org-chart__state-layer{opacity:0.08;background:var(--_selected-color)}.md-org-chart__avatar{flex:0 0 auto;--md-avatar-container-color:var(--md-sys-color-primary-container, #eaddff);--md-avatar-label-color:var(--md-sys-color-on-primary-container, #21005d)}.md-org-chart__text{display:flex;flex-direction:column;min-inline-size:0;gap:2px}.md-org-chart__name{font-family:var(--md-sys-typescale-title-small-font-family, Roboto, system-ui, sans-serif);font-size:max(11px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:600;line-height:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));color:var(--md-sys-color-on-surface, #1d1b20);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-org-chart__title{font-size:max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));line-height:max(14px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));color:var(--md-sys-color-on-surface-variant, #49454f);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-org-chart__toggle-tip{position:absolute;inset-block-end:calc(-1 * var(--_toggle-size) / 2);inset-inline-start:calc(50% - var(--_toggle-size) / 2);z-index:3;line-height:0}.md-org-chart__toggle{--md-icon-button-container-color:var(--md-sys-color-surface-container-high, #ece6f0);--md-icon-button-container-width:var(--_toggle-size);--md-icon-button-container-height:var(--_toggle-size);--md-icon-button-icon-size:calc(var(--_toggle-size) * 0.66)}@keyframes md-org-chart-grow{from{opacity:0;transform:translateY(-8px) scale(0.96)}to{opacity:1;transform:none}}.md-org-chart__group{animation:md-org-chart-grow var(--_duration) var(--_easing);transform-origin:top center}.md-org-chart__empty{padding:32px 16px;text-align:center;color:var(--md-sys-color-on-surface-variant, #49454f);font-size:var(--md-sys-typescale-body-medium-size, 14px)}:host([orientation='horizontal']) .md-org-chart__tree,:host([orientation='horizontal']) .md-org-chart__group{flex-direction:column}:host([orientation='horizontal']) .md-org-chart__group{padding-block-start:0;padding-inline-start:var(--_level-gap)}:host([orientation='horizontal']) .md-org-chart__branch{flex-direction:row;padding-block:calc(var(--_sibling-gap) / 2);padding-inline:var(--_level-gap) 0;}:host([orientation='horizontal']) .md-org-chart__branch:only-child,:host([orientation='horizontal']) .md-org-chart__tree>.md-org-chart__branch{padding-inline-start:0}:host([orientation='horizontal']) .md-org-chart__branch::before,:host([orientation='horizontal']) .md-org-chart__branch::after{inset-block-start:0;inset-inline-start:0;inset-inline-end:auto;inline-size:var(--_level-gap);block-size:50%;border-block-start:0;border-inline-start:var(--_line);}:host([orientation='horizontal']) .md-org-chart__branch::after{inset-block-start:50%;border-block-start:var(--_line);}:host([orientation='horizontal']) .md-org-chart__branch:first-child::before,:host([orientation='horizontal']) .md-org-chart__branch:last-child::after{border:0}:host([orientation='horizontal']) .md-org-chart__branch:last-child::before{border-inline-end:0;border-start-end-radius:0;border-block-end:var(--_line);border-end-start-radius:var(--_elbow)}:host([orientation='horizontal']) .md-org-chart__branch:first-child::after{border-start-start-radius:var(--_elbow)}:host([orientation='horizontal']) .md-org-chart__group::before{inset-block-start:50%;inset-inline-start:0;inline-size:var(--_level-gap);block-size:0;border-inline-start:0;border-block-start:var(--_line)}:host([orientation='horizontal']) .md-org-chart__toggle-tip{inset-block-end:auto;inset-block-start:calc(50% - var(--_toggle-size) / 2);inset-inline-start:auto;inset-inline-end:calc(-1 * var(--_toggle-size) / 2)}:host([orientation='horizontal']) .md-org-chart__viewport{padding:8px calc(var(--_toggle-size) / 2 + 10px) 8px 8px}@keyframes md-org-chart-grow-h{from{opacity:0;transform:translateX(-8px) scale(0.96)}to{opacity:1;transform:none}}:host([orientation='horizontal']) .md-org-chart__group{animation-name:md-org-chart-grow-h;transform-origin:left center}@media (prefers-reduced-motion: reduce){.md-org-chart__node,.md-org-chart__toggle-icon,.md-org-chart__state-layer{transition:none}.md-org-chart__group{animation:none}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const n=class{constructor(e){r(this,e);this.mdSelectionChange=t(this,"mdSelectionChange",7);this.mdNodeToggle=t(this,"mdNodeToggle",7);this.nodes=[];this.selectionMode="none";this.selectedIds=[];this.collapsible=true;this.orientation="vertical";this.label="Organization chart";this.expandLabel="Expand";this.collapseLabel="Collapse";this.density=0;this.collapsed=new Set;this.selection=new Set;this.activeId="";this.nodeMap=new Map;this.roots=[];this.handleKeyDown=r=>{const t=r.target;if(!t||t.getAttribute?.("role")!=="treeitem")return;const e=this.nodeMap.get(t.getAttribute("data-id")??"");if(!e)return;const o=getComputedStyle(this.el).direction==="rtl";const a=o?"ArrowLeft":"ArrowRight";const i=o?"ArrowRight":"ArrowLeft";const n=this.visibleItems();const s=n.indexOf(t);switch(r.key){case"ArrowDown":this.focusItem(n[s+1]);break;case"ArrowUp":this.focusItem(n[s-1]);break;case a:if(this.hasChildren(e)){if(!this.isExpanded(e))this.toggle(e);else this.focusItem(this.firstChildItem(t))}break;case i:if(this.hasChildren(e)&&this.isExpanded(e))this.toggle(e);else this.focusItem(this.parentItem(t));break;case"Home":this.focusItem(n[0]);break;case"End":this.focusItem(n[n.length-1]);break;case"Enter":case" ":case"Spacebar":if(this.isSelectable(e))this.select(e);else if(this.hasChildren(e))this.toggle(e);break;default:return}r.preventDefault();r.stopPropagation()};this.handleNodeClick=r=>t=>{if(t.target?.closest(".md-org-chart__toggle"))return;this.activeId=r.id;if(this.isSelectable(r))this.select(r)};this.handleTogglerClick=r=>t=>{t.stopPropagation();this.toggle(r)}}componentWillLoad(){this.syncFromNodes(this.nodes);this.selection=new Set(this.selectedIds??[])}onNodesChange(r){this.syncFromNodes(r)}onSelectedIdsChange(r){this.selection=new Set(r??[])}syncFromNodes(r){const t=this.parseNodes(r);this.nodeMap=new Map;const e=new Set;const o=r=>{for(const t of r){if(!t||t.id==null)continue;this.nodeMap.set(t.id,t);if(t.expanded===false&&t.children?.length)e.add(t.id);if(t.children?.length)o(t.children)}};o(t);this.collapsed=e;if(!this.activeId||!this.nodeMap.has(this.activeId)){this.activeId=t[0]?.id??""}this.roots=t}parseNodes(r){if(Array.isArray(r))return r;if(typeof r==="string"&&r.trim()){try{const t=JSON.parse(r);return Array.isArray(t)?t:[t]}catch{return[]}}return[]}isExpanded(r){return!this.collapsed.has(r.id)}hasChildren(r){return!!r.children&&r.children.length>0}isSelectable(r){return this.selectionMode!=="none"&&r.selectable!==false}toggle(r){if(!this.hasChildren(r))return;const t=new Set(this.collapsed);const e=t.has(r.id);if(e)t.delete(r.id);else t.add(r.id);this.collapsed=t;this.mdNodeToggle.emit({node:r,expanded:e})}select(r){if(!this.isSelectable(r))return;const t=new Set(this.selection);if(this.selectionMode==="single"){const e=t.has(r.id)&&t.size===1;t.clear();if(!e)t.add(r.id)}else{if(t.has(r.id))t.delete(r.id);else t.add(r.id)}this.selection=t;this.selectedIds=Array.from(t);this.mdSelectionChange.emit({node:r,selectedIds:this.selectedIds})}visibleItems(){return Array.from(this.el.shadowRoot?.querySelectorAll('li[role="treeitem"]')??[])}itemFor(r){return this.el.shadowRoot?.querySelector(`li[role="treeitem"][data-id="${s(r.id)}"]`)??null}focusItem(r){if(!r)return;const t=r.getAttribute("data-id");if(t)this.activeId=t;r.focus()}firstChildItem(r){const t=Array.from(r.children).find((r=>r.getAttribute?.("role")==="group"));if(!t)return null;return Array.from(t.children).find((r=>r.getAttribute?.("role")==="treeitem"))??null}parentItem(r){const t=r.parentElement;if(!t||t.getAttribute("role")!=="group")return null;const e=t.parentElement;return e&&e.getAttribute("role")==="treeitem"?e:null}renderNode(r,t,o,a){const i=this.hasChildren(r);const n=this.isExpanded(r);const s=this.isSelectable(r);const c=s&&this.selection.has(r.id);const d=r.id===this.activeId;const l=this.collapsible&&i;return e("li",{role:"treeitem","data-id":r.id,"aria-level":t,"aria-setsize":a,"aria-posinset":o,"aria-expanded":i?String(n):undefined,"aria-selected":s?String(c):undefined,tabindex:d?"0":"-1",class:{"md-org-chart__branch":true,"md-org-chart__branch--collapsed":i&&!n},onKeyDown:this.handleKeyDown,onFocus:()=>this.activeId=r.id},e("div",{class:{"md-org-chart__node":true,"md-org-chart__node--selectable":s,"md-org-chart__node--selected":c},part:`node${c?" node-selected":""}`,style:r.accent?{"--_accent":r.accent}:undefined,onClick:this.handleNodeClick(r)},e("span",{class:"md-org-chart__state-layer",part:"state-layer","aria-hidden":"true"}),s&&e("md-ripple",{class:"md-org-chart__ripple"}),e("md-avatar",{class:"md-org-chart__avatar",part:"avatar",exportparts:"image: avatar-image","aria-hidden":"true",colorFromName:false,src:r.avatar,initials:r.avatarInitials,name:r.name,size:"medium",shape:"circle"}),e("span",{class:"md-org-chart__text"},e("span",{class:"md-org-chart__name",part:"name"},r.name),r.title&&e("span",{class:"md-org-chart__title",part:"title"},r.title)),l&&e("md-tooltip",{class:"md-org-chart__toggle-tip",text:n?this.collapseLabel:this.expandLabel,position:"bottom"},e("md-icon-button",{class:"md-org-chart__toggle",part:"toggle",icon:n?"expand_less":"expand_more",size:"xs",variant:"tonal",shape:"round","aria-hidden":"true","group-tabindex":-1,onPointerDown:r=>r.stopPropagation(),onClick:this.handleTogglerClick(r)}))),i&&n&&e("ul",{role:"group",class:"md-org-chart__group",part:"group"},r.children.map(((e,o)=>this.renderNode(e,t+1,o+1,r.children.length)))))}render(){const r=this.roots;const t=r.length===0;return e(o,{key:"30c2227bc9572fdf2eb6592bdf03409f86d8608e",class:{"md-org-chart":true,"md-org-chart--empty":t}},e("div",{key:"469a05bbafc74a11fe0e8d76012e0b6f94c56536",class:"md-org-chart__viewport",part:"viewport"},t?e("div",{class:"md-org-chart__empty",part:"empty",role:"status"},e("slot",{name:"empty"},"No data")):e("ul",{role:"tree",class:"md-org-chart__tree",part:"tree","aria-label":this.label,"aria-multiselectable":this.selectionMode==="multiple"?"true":undefined},r.map(((t,e)=>this.renderNode(t,1,e+1,r.length))))))}get el(){return a(this)}static get watchers(){return{nodes:[{onNodesChange:0}],selectedIds:[{onSelectedIdsChange:0}]}}};function s(r){return String(r).replace(/["\\\]]/g,"\\$&")}n.style=i();export{n as md_organization_chart};
|
|
2
|
+
//# sourceMappingURL=p-cc6e8afd.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["mdOrganizationChartCss","MdOrganizationChart","constructor","hostRef","this","nodes","selectionMode","selectedIds","collapsible","orientation","label","expandLabel","collapseLabel","density","collapsed","Set","selection","activeId","nodeMap","Map","roots","handleKeyDown","e","current","target","getAttribute","node","get","rtl","getComputedStyle","el","direction","forwardKey","backwardKey","items","visibleItems","idx","indexOf","key","focusItem","hasChildren","isExpanded","toggle","firstChildItem","parentItem","length","isSelectable","select","preventDefault","stopPropagation","handleNodeClick","closest","id","handleTogglerClick","componentWillLoad","syncFromNodes","onNodesChange","next","onSelectedIdsChange","input","parseNodes","walk","list","n","set","expanded","children","add","has","Array","isArray","trim","parsed","JSON","parse","selectable","willExpand","delete","mdNodeToggle","emit","wasOnlySelected","size","clear","from","mdSelectionChange","shadowRoot","querySelectorAll","itemFor","querySelector","cssEscape","focus","li","group","find","c","parentElement","parent","renderNode","level","posInSet","setSize","selected","tabbable","showToggle","h","role","String","undefined","tabindex","class","onKeyDown","onFocus","part","style","accent","onClick","exportparts","colorFromName","src","avatar","initials","avatarInitials","name","shape","title","text","position","icon","variant","onPointerDown","map","child","i","render","empty","Host","root","value","replace"],"sources":["src/components/md-organization-chart/md-organization-chart.css?tag=md-organization-chart&encapsulation=shadow","src/components/md-organization-chart/md-organization-chart.tsx"],"sourcesContent":["/* ==========================================================\n md-organization-chart — Material Design 3 Expressive\n Hierarchical org tree of avatar cards joined by connectors.\n\n Layout: the classic pure-CSS connector technique (::before/::after\n elbows on each branch + a vertical drop on each group), authored with\n LOGICAL properties so RTL mirrors without extra rules. The viewport\n pans horizontally when the tree outgrows its container.\n\n PUBLIC CSS CUSTOM PROPERTIES (override per-instance):\n --md-org-chart-connector-color Connector line colour\n --md-org-chart-connector-width Connector line thickness\n --md-org-chart-node-color Node card background\n --md-org-chart-node-outline-color Node card border colour\n --md-org-chart-node-outline-width Node card border width\n --md-org-chart-node-shape Node card corner radius\n --md-org-chart-node-min-width Node card min inline-size\n --md-org-chart-node-max-width Node card max inline-size\n --md-org-chart-selected-color Selected node accent (border + tint)\n --md-org-chart-focus-ring-color Focus outline colour (default: buttons')\n --md-org-chart-state-layer-color Hover / selected overlay colour\n --md-org-chart-toggle-size Expand/collapse toggler diameter\n --md-org-chart-level-gap Vertical gap between levels\n --md-org-chart-sibling-gap Horizontal gap between siblings\n --md-org-chart-duration Motion duration\n\n CSS PARTS:\n viewport Scroll/pan container\n tree The role=\"tree\" root list\n group A role=\"group\" child list\n node A node card\n node-selected A selected node card\n state-layer Hover / selected overlay\n avatar The md-avatar\n avatar-image The avatar's <img> (exported)\n name Primary label\n title Secondary label\n toggle Expand / collapse affordance\n empty Empty-state container\n\n SLOTS:\n empty Custom empty-state content\n ========================================================== */\n\n:host {\n --_connector-color: var(--md-org-chart-connector-color, var(--md-sys-color-outline-variant, #c4c7c5));\n --_connector-width: var(--md-org-chart-connector-width, 1.5px);\n --_node-color: var(--md-org-chart-node-color, var(--md-sys-color-surface-container-low, #f7f2fa));\n --_node-outline: var(--md-org-chart-node-outline-color, var(--md-sys-color-outline-variant, #c4c7c5));\n --_node-outline-width: var(--md-org-chart-node-outline-width, 1px);\n --_node-shape: var(--md-org-chart-node-shape, var(--md-sys-shape-corner-medium, 12px));\n --_node-min-width: var(--md-org-chart-node-min-width, 176px);\n --_node-max-width: var(--md-org-chart-node-max-width, 260px);\n --_selected-color: var(--md-org-chart-selected-color, var(--md-sys-color-primary, #6750a4));\n /* Match the focus ring the buttons use (md-sys-color-secondary). */\n --_focus-ring-color: var(--md-org-chart-focus-ring-color, var(--md-sys-color-secondary, #625b71));\n --_toggle-size: var(--md-org-chart-toggle-size, max(20px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));\n --_state-layer-color: var(--md-org-chart-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));\n --_accent: var(--md-sys-color-primary, #6750a4);\n --_level-gap: var(--md-org-chart-level-gap, max(24px, calc(28px + var(--md-sys-density-scale, 0) * 1px)));\n --_sibling-gap: var(--md-org-chart-sibling-gap, max(8px, calc(12px + var(--md-sys-density-scale, 0) * 1px)));\n --_duration: var(--md-org-chart-duration, var(--md-sys-motion-duration-medium2, 300ms));\n --_easing: var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));\n --_line: var(--_connector-width) solid var(--_connector-color);\n --_elbow: 12px;\n\n display: block;\n box-sizing: border-box;\n color: var(--md-sys-color-on-surface, #1d1b20);\n font-family: var(--md-sys-typescale-body-medium-font-family, Roboto, system-ui, sans-serif);\n}\n\n.md-org-chart__viewport {\n overflow: auto;\n /* Extra block-end room so a collapsed node's edge-hung toggler (which\n overhangs the tree by half its size) isn't clipped by `overflow`. */\n padding: 8px 8px calc(var(--_toggle-size) / 2 + 10px);\n box-sizing: border-box;\n}\n\n/* ── Lists / connectors ───────────────────────────────────────── */\n\n.md-org-chart__tree,\n.md-org-chart__group {\n display: flex;\n justify-content: center;\n align-items: flex-start;\n list-style: none;\n margin: 0;\n padding: 0;\n position: relative;\n}\n\n/* The tree shrink-wraps and self-centres; when wider than the viewport it\n left-aligns (margin collapses to 0) and the viewport scrolls. */\n.md-org-chart__tree {\n inline-size: max-content;\n margin-inline: auto;\n}\n\n.md-org-chart__group {\n padding-block-start: var(--_level-gap);\n}\n\n.md-org-chart__branch {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n padding-block-start: var(--_level-gap);\n padding-inline: calc(var(--_sibling-gap) / 2);\n outline: none;\n}\n\n/* Horizontal bus halves (top border) meeting at the branch centre, plus the\n short vertical riser up into the bus (border-inline-start on ::after). */\n.md-org-chart__branch::before,\n.md-org-chart__branch::after {\n content: '';\n position: absolute;\n inset-block-start: 0;\n inset-inline-end: 50%;\n inline-size: 50%;\n block-size: var(--_level-gap);\n border-block-start: var(--_line);\n}\n\n.md-org-chart__branch::after {\n inset-inline-end: auto;\n inset-inline-start: 50%;\n border-inline-start: var(--_line);\n}\n\n/* Only child: no horizontal bus/riser — just the group's vertical drop. Drop\n its own block-start padding too, otherwise that padding (with no riser line)\n leaves a gap between the drop and the child. */\n.md-org-chart__branch:only-child::before,\n.md-org-chart__branch:only-child::after {\n display: none;\n}\n\n.md-org-chart__branch:only-child {\n padding-block-start: 0;\n}\n\n/* Trim the outermost overhang and round the two elbows. */\n.md-org-chart__branch:first-child::before,\n.md-org-chart__branch:last-child::after {\n border: 0;\n}\n\n.md-org-chart__branch:last-child::before {\n border-inline-end: var(--_line);\n border-start-end-radius: var(--_elbow);\n}\n\n.md-org-chart__branch:first-child::after {\n border-start-start-radius: var(--_elbow);\n}\n\n/* Vertical drop from a parent node down to its children's bus. */\n.md-org-chart__group::before {\n content: '';\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 50%;\n inline-size: 0;\n block-size: var(--_level-gap);\n border-inline-start: var(--_line);\n}\n\n/* Roots have no incoming connector. */\n.md-org-chart__tree > .md-org-chart__branch {\n padding-block-start: 0;\n}\n.md-org-chart__tree > .md-org-chart__branch::before,\n.md-org-chart__tree > .md-org-chart__branch::after {\n display: none;\n}\n\n/* ── Node card ────────────────────────────────────────────────── */\n\n.md-org-chart__node {\n position: relative;\n /* Above the sibling group's connector lines (painted later in DOM) so the\n node and its toggler sit on top of the drop/bus rather than under them. */\n z-index: 2;\n display: inline-flex;\n align-items: center;\n gap: max(6px, calc(12px + var(--md-sys-density-scale, 0) * 1.5px));\n padding-block: max(6px, calc(10px + var(--md-sys-density-scale, 0) * 1px));\n padding-inline: max(8px, calc(14px + var(--md-sys-density-scale, 0) * 1.5px));\n min-inline-size: var(--_node-min-width);\n max-inline-size: var(--_node-max-width);\n box-sizing: border-box;\n border-radius: var(--_node-shape);\n background: var(--_node-color);\n border: var(--_node-outline-width) solid var(--_node-outline);\n color: var(--md-sys-color-on-surface, #1d1b20);\n transition:\n border-color var(--_duration) var(--_easing),\n box-shadow var(--_duration) var(--_easing);\n /* No transform / will-change here: either would make the node a containing\n block for the toggler tooltip's position:fixed popup, cutting it off. */\n}\n\n.md-org-chart__node--selectable {\n cursor: pointer;\n}\n\n.md-org-chart__node--selectable:hover {\n box-shadow: var(--md-sys-elevation-1, 0 1px 3px 1px rgba(0, 0, 0, 0.15));\n}\n\n/* Selection ring via border-colour + an outset box-shadow — NOT a wider border.\n Growing the border would move the padding box and shift the edge-hung toggler,\n so width + padding stay constant and nothing in the card moves on select. */\n.md-org-chart__node--selected {\n border-color: var(--_selected-color);\n box-shadow: 0 0 0 1px var(--_selected-color);\n}\n\n.md-org-chart__node--selected.md-org-chart__node--selectable:hover {\n box-shadow:\n 0 0 0 1px var(--_selected-color),\n var(--md-sys-elevation-1, 0 1px 3px 1px rgba(0, 0, 0, 0.15));\n}\n\n/* Focus ring on the focusable treeitem — same colour as the buttons. */\n.md-org-chart__branch:focus-visible > .md-org-chart__node {\n outline: 3px solid var(--_focus-ring-color);\n outline-offset: 2px;\n}\n\n/* Selection ripple (auto-attaches to the node card; self-clips to the radius,\n so the edge-hung toggler is unaffected). */\n.md-org-chart__ripple {\n --md-ripple-color: var(--_selected-color);\n border-radius: inherit;\n}\n\n.md-org-chart__state-layer {\n position: absolute;\n inset: 0;\n border-radius: inherit;\n background: var(--_state-layer-color);\n opacity: 0;\n pointer-events: none;\n transition: opacity var(--_duration) var(--_easing);\n}\n\n.md-org-chart__node--selectable:hover > .md-org-chart__state-layer {\n opacity: var(--md-sys-state-hover-state-layer-opacity, 0.08);\n}\n\n.md-org-chart__node--selectable:active > .md-org-chart__state-layer {\n opacity: var(--md-sys-state-pressed-state-layer-opacity, 0.12);\n}\n\n.md-org-chart__node--selected > .md-org-chart__state-layer {\n opacity: 0.08;\n background: var(--_selected-color);\n}\n\n.md-org-chart__avatar {\n flex: 0 0 auto;\n --md-avatar-container-color: var(--md-sys-color-primary-container, #eaddff);\n --md-avatar-label-color: var(--md-sys-color-on-primary-container, #21005d);\n}\n\n.md-org-chart__text {\n display: flex;\n flex-direction: column;\n min-inline-size: 0;\n gap: 2px;\n}\n\n.md-org-chart__name {\n font-family: var(--md-sys-typescale-title-small-font-family, Roboto, system-ui, sans-serif);\n font-size: max(11px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));\n font-weight: 600;\n line-height: max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));\n color: var(--md-sys-color-on-surface, #1d1b20);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.md-org-chart__title {\n font-size: max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));\n line-height: max(14px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));\n color: var(--md-sys-color-on-surface-variant, #49454f);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* ── Toggler ──────────────────────────────────────────────────── */\n\n/* The toggler is an md-icon-button hung on the node's bottom edge, over the\n connector drop. z-index keeps it above the lines; its opaque tonal fill\n masks the line where they meet. */\n/* The md-tooltip wrapper carries the positioning (centred on the node's bottom\n edge, half in / half out) and stacks above the connector lines. Centred with\n calc() (NOT transform): a transform on the tooltip host would make it the\n containing block for its own position:fixed popup, cutting it off / mis-placing\n it. inset-inline-start keeps this direction-aware for RTL. */\n.md-org-chart__toggle-tip {\n position: absolute;\n inset-block-end: calc(-1 * var(--_toggle-size) / 2);\n inset-inline-start: calc(50% - var(--_toggle-size) / 2);\n z-index: 3;\n line-height: 0;\n}\n\n.md-org-chart__toggle {\n --md-icon-button-container-color: var(--md-sys-color-surface-container-high, #ece6f0);\n --md-icon-button-container-width: var(--_toggle-size);\n --md-icon-button-container-height: var(--_toggle-size);\n --md-icon-button-icon-size: calc(var(--_toggle-size) * 0.66);\n}\n\n/* ── Group enter animation (expressive) ───────────────────────── */\n\n@keyframes md-org-chart-grow {\n from {\n opacity: 0;\n transform: translateY(-8px) scale(0.96);\n }\n to {\n opacity: 1;\n transform: none;\n }\n}\n\n.md-org-chart__group {\n animation: md-org-chart-grow var(--_duration) var(--_easing);\n transform-origin: top center;\n}\n\n/* ── Empty state ──────────────────────────────────────────────── */\n\n.md-org-chart__empty {\n padding: 32px 16px;\n text-align: center;\n color: var(--md-sys-color-on-surface-variant, #49454f);\n font-size: var(--md-sys-typescale-body-medium-size, 14px);\n}\n\n/* ── Horizontal orientation ───────────────────────────────────────\n Left→right tree — the block↔inline mirror of the default (vertical)\n connector geometry above. Still authored in LOGICAL properties, so RTL\n flips it to right→left with no extra rules. Levels now advance on the\n inline axis; siblings stack on the block axis. */\n\n:host([orientation='horizontal']) .md-org-chart__tree,\n:host([orientation='horizontal']) .md-org-chart__group {\n flex-direction: column;\n}\n\n/* Level gap runs inline (parent → child) instead of block. */\n:host([orientation='horizontal']) .md-org-chart__group {\n padding-block-start: 0;\n padding-inline-start: var(--_level-gap);\n}\n\n:host([orientation='horizontal']) .md-org-chart__branch {\n flex-direction: row;\n /* Node beside its child group (was column: node above group). */\n padding-block: calc(var(--_sibling-gap) / 2); /* siblings spread on block now */\n padding-inline: var(--_level-gap) 0; /* incoming-connector strip on inline-start */\n}\n\n/* Roots and only-children take no incoming inline gap. */\n:host([orientation='horizontal']) .md-org-chart__branch:only-child,\n:host([orientation='horizontal']) .md-org-chart__tree > .md-org-chart__branch {\n padding-inline-start: 0;\n}\n\n/* Sibling bus (now vertical, on the inline-start edge) + a short horizontal\n riser into the node. Mirrors the vertical ::before/::after exactly. */\n:host([orientation='horizontal']) .md-org-chart__branch::before,\n:host([orientation='horizontal']) .md-org-chart__branch::after {\n inset-block-start: 0;\n inset-inline-start: 0;\n inset-inline-end: auto;\n inline-size: var(--_level-gap);\n block-size: 50%;\n border-block-start: 0; /* clear the vertical-mode horizontal bus */\n border-inline-start: var(--_line); /* vertical bus */\n}\n\n:host([orientation='horizontal']) .md-org-chart__branch::after {\n inset-block-start: 50%;\n border-block-start: var(--_line); /* the single horizontal riser */\n}\n\n/* Trim the outermost overhang. The :host-scoped bus rules above out-specify the\n axis-agnostic `border:0` trims (0-3-1 vs 0-2-1), so re-assert them here at\n matching specificity — otherwise the vertical bus overshoots the first/last\n sibling. */\n:host([orientation='horizontal']) .md-org-chart__branch:first-child::before,\n:host([orientation='horizontal']) .md-org-chart__branch:last-child::after {\n border: 0;\n}\n\n/* Round the two outermost elbows where the bus turns into the end risers.\n The last child's riser is reconstructed on ::before since its ::after is\n trimmed. */\n:host([orientation='horizontal']) .md-org-chart__branch:last-child::before {\n border-inline-end: 0; /* undo the vertical-mode riser rebuild */\n border-start-end-radius: 0; /* undo the vertical-mode elbow */\n border-block-end: var(--_line);\n border-end-start-radius: var(--_elbow);\n}\n:host([orientation='horizontal']) .md-org-chart__branch:first-child::after {\n border-start-start-radius: var(--_elbow);\n}\n\n/* Parent → children drop is now a horizontal line. */\n:host([orientation='horizontal']) .md-org-chart__group::before {\n inset-block-start: 50%;\n inset-inline-start: 0;\n inline-size: var(--_level-gap);\n block-size: 0;\n border-inline-start: 0;\n border-block-start: var(--_line);\n}\n\n/* Toggler hangs on the node's inline-end edge (over the outgoing drop),\n vertically centred — instead of the bottom edge in vertical mode. */\n:host([orientation='horizontal']) .md-org-chart__toggle-tip {\n inset-block-end: auto;\n inset-block-start: calc(50% - var(--_toggle-size) / 2);\n inset-inline-start: auto;\n inset-inline-end: calc(-1 * var(--_toggle-size) / 2);\n}\n\n/* Give the overhanging inline-end toggler room instead of the block-end room. */\n:host([orientation='horizontal']) .md-org-chart__viewport {\n padding: 8px calc(var(--_toggle-size) / 2 + 10px) 8px 8px;\n}\n\n/* Enter animation grows from the inline-start (parent) side. */\n@keyframes md-org-chart-grow-h {\n from {\n opacity: 0;\n transform: translateX(-8px) scale(0.96);\n }\n to {\n opacity: 1;\n transform: none;\n }\n}\n:host([orientation='horizontal']) .md-org-chart__group {\n animation-name: md-org-chart-grow-h;\n transform-origin: left center;\n}\n\n/* ── Reduced motion ───────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .md-org-chart__node,\n .md-org-chart__toggle-icon,\n .md-org-chart__state-layer {\n transition: none;\n }\n .md-org-chart__group {\n animation: none;\n }\n}\n\n/* ==========================================================\n DENSITY (local override)\n Maps the local `density` prop onto the same --md-sys-density-scale signal a\n global `data-density` ancestor sets. Declared on :host, so a local rung wins\n over the inherited global one. Every density-sensitive value in this file\n derives from that single signal by calc — never add a fixed per-rung ladder.\n ========================================================== */\n:host([density='-1']) { --md-sys-density-scale: -1; }\n:host([density='-2']) { --md-sys-density-scale: -2; }\n:host([density='-3']) { --md-sys-density-scale: -3; }\n:host([density='-4']) { --md-sys-density-scale: -4; }\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Event,\n EventEmitter,\n Element,\n Watch,\n} from '@stencil/core';\n\n/**\n * A single node in the organization tree. Only `id` and `name` are required;\n * everything else is optional so the model stays terse.\n */\nexport interface OrgChartNode {\n /** Stable identifier — used for selection, expansion, and eventing. */\n id: string;\n /** Primary label (person / unit name), rendered in the emphasis weight. */\n name: string;\n /** Secondary label (role / department), rendered muted under the name. */\n title?: string;\n /** Avatar image URL. Falls back to initials → name-derived initials. */\n avatar?: string;\n /** Explicit avatar initials (overrides name-derived ones). */\n avatarInitials?: string;\n /** Optional accent colour for the node's avatar ring + selected tint. */\n accent?: string;\n /** Initial expanded state for this node's subtree (default: expanded). */\n expanded?: boolean;\n /** When false the node cannot be selected (default: selectable). */\n selectable?: boolean;\n /** Child nodes. */\n children?: OrgChartNode[];\n}\n\ntype NodeInput = OrgChartNode[] | string | null | undefined;\n\n/** Detail for the `mdSelectionChange` event. */\nexport interface OrgChartSelectionChangeDetail {\n /** The node that was clicked / toggled. */\n node: OrgChartNode;\n /** The full set of selected ids after the change. */\n selectedIds: string[];\n}\n\n/** Detail for the `mdNodeToggle` event. */\nexport interface OrgChartToggleDetail {\n /** The node whose subtree was expanded / collapsed. */\n node: OrgChartNode;\n /** Whether the node is now expanded. */\n expanded: boolean;\n}\n\n/**\n * `md-organization-chart` — Material Design 3 Expressive organization chart.\n *\n * Visualises hierarchical org data as a top-down tree of avatar cards joined\n * by connector lines. Data-driven (`nodes`), with collapsible subtrees,\n * optional single/multiple selection, and the full WAI-ARIA **tree** pattern\n * (roving tabindex, Arrow/Home/End navigation, Enter/Space to select).\n *\n * The surface pans horizontally when it outgrows its container, so a wide org\n * stays usable on small screens. Direction-aware (RTL mirrors the layout and\n * swaps the horizontal arrow keys); every affordance label is a prop for\n * localisation.\n *\n * ```html\n * <md-organization-chart selection-mode=\"single\"></md-organization-chart>\n * <script>\n * document.querySelector('md-organization-chart').nodes = [{\n * id: 'ceo', name: 'Amy Elsner', title: 'Founder & CEO',\n * children: [{ id: 'prod', name: 'Asiya Javayant', title: 'Product Lead' }],\n * }];\n * </script>\n * ```\n */\n@Component({\n tag: 'md-organization-chart',\n styleUrl: 'md-organization-chart.css',\n shadow: true,\n})\nexport class MdOrganizationChart {\n @Element() el!: HTMLElement;\n\n /**\n * The organization tree. Accepts an `OrgChartNode[]` (property) or a JSON\n * string (attribute). Multiple roots are supported (rendered side by side).\n */\n @Prop() nodes: NodeInput = [];\n\n /**\n * Selection behaviour:\n * - `'none'` — nodes are not selectable (default).\n * - `'single'` — one node at a time.\n * - `'multiple'` — any number of nodes.\n */\n @Prop({ reflect: true }) selectionMode: 'none' | 'single' | 'multiple' = 'none';\n\n /** Selected node ids (controlled + initial). Kept in sync as the user selects. */\n @Prop({ mutable: true }) selectedIds: string[] = [];\n\n /** Show expand/collapse togglers on nodes that have children. */\n @Prop() collapsible: boolean = true;\n\n /**\n * Layout direction of the tree:\n * - `'vertical'` — top-down (default).\n * - `'horizontal'` — left-to-right; RTL mirrors it right-to-left.\n *\n * Only the visual layout changes — the tree's ARIA semantics and keyboard\n * model (Arrow Left/Right = collapse/expand, Up/Down = move) are unchanged.\n */\n @Prop({ reflect: true }) orientation: 'vertical' | 'horizontal' = 'vertical';\n\n /** Accessible name for the tree (localisable). */\n @Prop({ attribute: 'label' }) label: string = 'Organization chart';\n\n /** Toggler accessible label when a node is collapsed (localisable). */\n @Prop({ attribute: 'expand-label' }) expandLabel: string = 'Expand';\n\n /** Toggler accessible label when a node is expanded (localisable). */\n @Prop({ attribute: 'collapse-label' }) collapseLabel: string = 'Collapse';\n\n /**\n * Local density rung. Drives the same `--md-sys-density-scale` signal that a\n * global `data-density` ancestor sets, so a local value simply overrides the\n * inherited one. 0 = default, -4 = ultra-compact.\n */\n @Prop({ reflect: true }) density: 0 | -1 | -2 | -3 | -4 = 0;\n\n /** Fired when the selection changes. */\n @Event() mdSelectionChange!: EventEmitter<OrgChartSelectionChangeDetail>;\n\n /** Fired when a node is expanded or collapsed. */\n @Event() mdNodeToggle!: EventEmitter<OrgChartToggleDetail>;\n\n /** Ids whose subtree is collapsed (default: everything expanded). */\n @State() private collapsed = new Set<string>();\n /** Working selection set (mirrors `selectedIds`). */\n @State() private selection = new Set<string>();\n /** Roving-tabindex owner — the one node reachable with Tab. */\n @State() private activeId = '';\n\n private nodeMap = new Map<string, OrgChartNode>();\n\n componentWillLoad() {\n this.syncFromNodes(this.nodes);\n this.selection = new Set(this.selectedIds ?? []);\n }\n\n @Watch('nodes')\n onNodesChange(next: NodeInput) {\n this.syncFromNodes(next);\n }\n\n @Watch('selectedIds')\n onSelectedIdsChange(next: string[]) {\n this.selection = new Set(next ?? []);\n }\n\n /** Parse the incoming nodes, (re)build the id map, seed collapse + active. */\n private syncFromNodes(input: NodeInput) {\n const roots = this.parseNodes(input);\n this.nodeMap = new Map();\n const collapsed = new Set<string>();\n const walk = (list: OrgChartNode[]) => {\n for (const n of list) {\n if (!n || n.id == null) continue;\n this.nodeMap.set(n.id, n);\n if (n.expanded === false && n.children?.length) collapsed.add(n.id);\n if (n.children?.length) walk(n.children);\n }\n };\n walk(roots);\n this.collapsed = collapsed;\n // Keep the roving owner valid; default to the first root.\n if (!this.activeId || !this.nodeMap.has(this.activeId)) {\n this.activeId = roots[0]?.id ?? '';\n }\n this.roots = roots;\n }\n\n private roots: OrgChartNode[] = [];\n\n private parseNodes(input: NodeInput): OrgChartNode[] {\n if (Array.isArray(input)) return input;\n if (typeof input === 'string' && input.trim()) {\n try {\n const parsed = JSON.parse(input);\n return Array.isArray(parsed) ? parsed : [parsed];\n } catch {\n return [];\n }\n }\n return [];\n }\n\n private isExpanded(node: OrgChartNode): boolean {\n return !this.collapsed.has(node.id);\n }\n\n private hasChildren(node: OrgChartNode): boolean {\n return !!node.children && node.children.length > 0;\n }\n\n private isSelectable(node: OrgChartNode): boolean {\n return this.selectionMode !== 'none' && node.selectable !== false;\n }\n\n private toggle(node: OrgChartNode) {\n if (!this.hasChildren(node)) return;\n const next = new Set(this.collapsed);\n const willExpand = next.has(node.id);\n if (willExpand) next.delete(node.id);\n else next.add(node.id);\n this.collapsed = next;\n this.mdNodeToggle.emit({ node, expanded: willExpand });\n }\n\n private select(node: OrgChartNode) {\n if (!this.isSelectable(node)) return;\n const next = new Set(this.selection);\n if (this.selectionMode === 'single') {\n const wasOnlySelected = next.has(node.id) && next.size === 1;\n next.clear();\n if (!wasOnlySelected) next.add(node.id);\n } else {\n if (next.has(node.id)) next.delete(node.id);\n else next.add(node.id);\n }\n this.selection = next;\n this.selectedIds = Array.from(next);\n this.mdSelectionChange.emit({ node, selectedIds: this.selectedIds });\n }\n\n // ── Keyboard: WAI-ARIA tree pattern ──────────────────────────────────────\n private visibleItems(): HTMLElement[] {\n return Array.from(\n this.el.shadowRoot?.querySelectorAll('li[role=\"treeitem\"]') ?? [],\n ) as HTMLElement[];\n }\n\n private itemFor(node: OrgChartNode): HTMLElement | null {\n return (\n (this.el.shadowRoot?.querySelector(\n `li[role=\"treeitem\"][data-id=\"${cssEscape(node.id)}\"]`,\n ) as HTMLElement | null) ?? null\n );\n }\n\n private focusItem(el: HTMLElement | null | undefined) {\n if (!el) return;\n const id = el.getAttribute('data-id');\n if (id) this.activeId = id;\n el.focus();\n }\n\n private firstChildItem(li: HTMLElement): HTMLElement | null {\n const group = Array.from(li.children).find(\n (c) => (c as HTMLElement).getAttribute?.('role') === 'group',\n ) as HTMLElement | undefined;\n if (!group) return null;\n return (\n (Array.from(group.children).find(\n (c) => (c as HTMLElement).getAttribute?.('role') === 'treeitem',\n ) as HTMLElement | undefined) ?? null\n );\n }\n\n private parentItem(li: HTMLElement): HTMLElement | null {\n const group = li.parentElement;\n if (!group || group.getAttribute('role') !== 'group') return null;\n const parent = group.parentElement;\n return parent && parent.getAttribute('role') === 'treeitem'\n ? (parent as HTMLElement)\n : null;\n }\n\n private handleKeyDown = (e: KeyboardEvent) => {\n const current = e.target as HTMLElement;\n if (!current || current.getAttribute?.('role') !== 'treeitem') return;\n const node = this.nodeMap.get(current.getAttribute('data-id') ?? '');\n if (!node) return;\n\n const rtl = getComputedStyle(this.el).direction === 'rtl';\n const forwardKey = rtl ? 'ArrowLeft' : 'ArrowRight';\n const backwardKey = rtl ? 'ArrowRight' : 'ArrowLeft';\n const items = this.visibleItems();\n const idx = items.indexOf(current);\n\n switch (e.key) {\n case 'ArrowDown':\n this.focusItem(items[idx + 1]);\n break;\n case 'ArrowUp':\n this.focusItem(items[idx - 1]);\n break;\n case forwardKey:\n if (this.hasChildren(node)) {\n if (!this.isExpanded(node)) this.toggle(node);\n else this.focusItem(this.firstChildItem(current));\n }\n break;\n case backwardKey:\n if (this.hasChildren(node) && this.isExpanded(node)) this.toggle(node);\n else this.focusItem(this.parentItem(current));\n break;\n case 'Home':\n this.focusItem(items[0]);\n break;\n case 'End':\n this.focusItem(items[items.length - 1]);\n break;\n case 'Enter':\n case ' ':\n case 'Spacebar':\n if (this.isSelectable(node)) this.select(node);\n else if (this.hasChildren(node)) this.toggle(node);\n break;\n default:\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n };\n\n private handleNodeClick = (node: OrgChartNode) => (e: MouseEvent) => {\n // Toggler clicks are handled on the toggler itself.\n if ((e.target as HTMLElement)?.closest('.md-org-chart__toggle')) return;\n this.activeId = node.id;\n if (this.isSelectable(node)) this.select(node);\n };\n\n private handleTogglerClick = (node: OrgChartNode) => (e: MouseEvent) => {\n e.stopPropagation();\n this.toggle(node);\n };\n\n private renderNode(node: OrgChartNode, level: number, posInSet: number, setSize: number) {\n const has = this.hasChildren(node);\n const expanded = this.isExpanded(node);\n const selectable = this.isSelectable(node);\n const selected = selectable && this.selection.has(node.id);\n const tabbable = node.id === this.activeId;\n const showToggle = this.collapsible && has;\n\n return (\n <li\n role=\"treeitem\"\n data-id={node.id}\n aria-level={level}\n aria-setsize={setSize}\n aria-posinset={posInSet}\n aria-expanded={has ? String(expanded) : undefined}\n aria-selected={selectable ? String(selected) : undefined}\n tabindex={tabbable ? '0' : '-1'}\n class={{\n 'md-org-chart__branch': true,\n 'md-org-chart__branch--collapsed': has && !expanded,\n }}\n onKeyDown={this.handleKeyDown}\n onFocus={() => (this.activeId = node.id)}\n >\n <div\n class={{\n 'md-org-chart__node': true,\n 'md-org-chart__node--selectable': selectable,\n 'md-org-chart__node--selected': selected,\n }}\n part={`node${selected ? ' node-selected' : ''}`}\n style={node.accent ? { '--_accent': node.accent } : undefined}\n onClick={this.handleNodeClick(node)}\n >\n <span class=\"md-org-chart__state-layer\" part=\"state-layer\" aria-hidden=\"true\"></span>\n {selectable && <md-ripple class=\"md-org-chart__ripple\"></md-ripple>}\n <md-avatar\n class=\"md-org-chart__avatar\"\n part=\"avatar\"\n exportparts=\"image: avatar-image\"\n // Decorative: the node's name is already announced as the treeitem's\n // text, so exposing the avatar's label would double-speak it. The\n // auto per-name palette is disabled in favour of a fixed AA-contrast\n // pair (see CSS) — initials here are a photo fallback, not identity.\n aria-hidden=\"true\"\n colorFromName={false}\n src={node.avatar}\n initials={node.avatarInitials}\n name={node.name}\n size=\"medium\"\n shape=\"circle\"\n ></md-avatar>\n <span class=\"md-org-chart__text\">\n <span class=\"md-org-chart__name\" part=\"name\">{node.name}</span>\n {node.title && (\n <span class=\"md-org-chart__title\" part=\"title\">{node.title}</span>\n )}\n </span>\n {showToggle && (\n // Decorative pointer affordance: expand/collapse is exposed to AT via\n // the treeitem's aria-expanded + Arrow keys, so the button is\n // aria-hidden and taken out of the tab order (group-tabindex=-1) to\n // avoid a nested interactive control inside the treeitem. The label\n // rides in the library md-tooltip rather than a native `title`.\n <md-tooltip\n class=\"md-org-chart__toggle-tip\"\n text={expanded ? this.collapseLabel : this.expandLabel}\n position=\"bottom\"\n >\n <md-icon-button\n class=\"md-org-chart__toggle\"\n part=\"toggle\"\n icon={expanded ? 'expand_less' : 'expand_more'}\n size=\"xs\"\n variant=\"tonal\"\n shape=\"round\"\n aria-hidden=\"true\"\n group-tabindex={-1}\n onPointerDown={(e: PointerEvent) => e.stopPropagation()}\n onClick={this.handleTogglerClick(node)}\n ></md-icon-button>\n </md-tooltip>\n )}\n </div>\n\n {has && expanded && (\n <ul role=\"group\" class=\"md-org-chart__group\" part=\"group\">\n {node.children!.map((child, i) =>\n this.renderNode(child, level + 1, i + 1, node.children!.length),\n )}\n </ul>\n )}\n </li>\n );\n }\n\n render() {\n const roots = this.roots;\n const empty = roots.length === 0;\n\n return (\n <Host\n class={{\n 'md-org-chart': true,\n 'md-org-chart--empty': empty,\n }}\n >\n <div class=\"md-org-chart__viewport\" part=\"viewport\">\n {empty ? (\n <div class=\"md-org-chart__empty\" part=\"empty\" role=\"status\">\n <slot name=\"empty\">No data</slot>\n </div>\n ) : (\n <ul\n role=\"tree\"\n class=\"md-org-chart__tree\"\n part=\"tree\"\n aria-label={this.label}\n aria-multiselectable={\n this.selectionMode === 'multiple' ? 'true' : undefined\n }\n >\n {roots.map((root, i) => this.renderNode(root, 1, i + 1, roots.length))}\n </ul>\n )}\n </div>\n </Host>\n );\n }\n}\n\n/** Minimal CSS.escape shim (attribute-selector safe) for id values. */\nfunction cssEscape(value: string): string {\n return String(value).replace(/[\"\\\\\\]]/g, '\\\\$&');\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["mdOrganizationChartCss","MdOrganizationChart","constructor","hostRef","this","nodes","selectionMode","selectedIds","collapsible","orientation","label","expandLabel","collapseLabel","density","collapsed","Set","selection","activeId","nodeMap","Map","roots","handleKeyDown","e","current","target","getAttribute","node","get","rtl","getComputedStyle","el","direction","forwardKey","backwardKey","items","visibleItems","idx","indexOf","key","focusItem","hasChildren","isExpanded","toggle","firstChildItem","parentItem","length","isSelectable","select","preventDefault","stopPropagation","handleNodeClick","closest","id","handleTogglerClick","componentWillLoad","syncFromNodes","onNodesChange","next","onSelectedIdsChange","input","parseNodes","walk","list","n","set","expanded","children","add","has","Array","isArray","trim","parsed","JSON","parse","selectable","willExpand","delete","mdNodeToggle","emit","wasOnlySelected","size","clear","from","mdSelectionChange","shadowRoot","querySelectorAll","itemFor","querySelector","cssEscape","focus","li","group","find","c","parentElement","parent","renderNode","level","posInSet","setSize","selected","tabbable","showToggle","h","role","String","undefined","tabindex","class","onKeyDown","onFocus","part","style","accent","onClick","exportparts","colorFromName","src","avatar","initials","avatarInitials","name","shape","title","text","position","icon","variant","onPointerDown","map","child","i","render","empty","Host","root","value","replace"],"sources":["src/components/md-organization-chart/md-organization-chart.css?tag=md-organization-chart&encapsulation=shadow","src/components/md-organization-chart/md-organization-chart.tsx"],"sourcesContent":["/* ==========================================================\n md-organization-chart — Material Design 3 Expressive\n Hierarchical org tree of avatar cards joined by connectors.\n\n Layout: the classic pure-CSS connector technique (::before/::after\n elbows on each branch + a vertical drop on each group), authored with\n LOGICAL properties so RTL mirrors without extra rules. The viewport\n pans horizontally when the tree outgrows its container.\n\n PUBLIC CSS CUSTOM PROPERTIES (override per-instance):\n --md-org-chart-connector-color Connector line colour\n --md-org-chart-connector-width Connector line thickness\n --md-org-chart-node-color Node card background\n --md-org-chart-node-outline-color Node card border colour\n --md-org-chart-node-outline-width Node card border width\n --md-org-chart-node-shape Node card corner radius\n --md-org-chart-node-min-width Node card min inline-size\n --md-org-chart-node-max-width Node card max inline-size\n --md-org-chart-selected-color Selected node accent (border + tint)\n --md-org-chart-focus-ring-color Focus outline colour (default: buttons')\n --md-org-chart-state-layer-color Hover / selected overlay colour\n --md-org-chart-toggle-size Expand/collapse toggler diameter\n --md-org-chart-level-gap Vertical gap between levels\n --md-org-chart-sibling-gap Horizontal gap between siblings\n --md-org-chart-duration Motion duration\n\n CSS PARTS:\n viewport Scroll/pan container\n tree The role=\"tree\" root list\n group A role=\"group\" child list\n node A node card\n node-selected A selected node card\n state-layer Hover / selected overlay\n avatar The md-avatar\n avatar-image The avatar's <img> (exported)\n name Primary label\n title Secondary label\n toggle Expand / collapse affordance\n empty Empty-state container\n\n SLOTS:\n empty Custom empty-state content\n ========================================================== */\n\n:host {\n --_connector-color: var(--md-org-chart-connector-color, var(--md-sys-color-outline-variant, #c4c7c5));\n --_connector-width: var(--md-org-chart-connector-width, 1.5px);\n --_node-color: var(--md-org-chart-node-color, var(--md-sys-color-surface-container-low, #f7f2fa));\n --_node-outline: var(--md-org-chart-node-outline-color, var(--md-sys-color-outline-variant, #c4c7c5));\n --_node-outline-width: var(--md-org-chart-node-outline-width, 1px);\n --_node-shape: var(--md-org-chart-node-shape, var(--md-sys-shape-corner-medium, 12px));\n --_node-min-width: var(--md-org-chart-node-min-width, 176px);\n --_node-max-width: var(--md-org-chart-node-max-width, 260px);\n --_selected-color: var(--md-org-chart-selected-color, var(--md-sys-color-primary, #6750a4));\n /* Match the focus ring the buttons use (md-sys-color-secondary). */\n --_focus-ring-color: var(--md-org-chart-focus-ring-color, var(--md-sys-color-secondary, #625b71));\n --_toggle-size: var(--md-org-chart-toggle-size, max(20px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));\n --_state-layer-color: var(--md-org-chart-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));\n --_accent: var(--md-sys-color-primary, #6750a4);\n --_level-gap: var(--md-org-chart-level-gap, max(24px, calc(28px + var(--md-sys-density-scale, 0) * 1px)));\n --_sibling-gap: var(--md-org-chart-sibling-gap, max(8px, calc(12px + var(--md-sys-density-scale, 0) * 1px)));\n --_duration: var(--md-org-chart-duration, var(--md-sys-motion-duration-medium2, 300ms));\n --_easing: var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));\n --_line: var(--_connector-width) solid var(--_connector-color);\n --_elbow: 12px;\n\n display: block;\n box-sizing: border-box;\n color: var(--md-sys-color-on-surface, #1d1b20);\n font-family: var(--md-sys-typescale-body-medium-font-family, Roboto, system-ui, sans-serif);\n}\n\n.md-org-chart__viewport {\n overflow: auto;\n /* Extra block-end room so a collapsed node's edge-hung toggler (which\n overhangs the tree by half its size) isn't clipped by `overflow`. */\n padding: 8px 8px calc(var(--_toggle-size) / 2 + 10px);\n box-sizing: border-box;\n}\n\n/* ── Lists / connectors ───────────────────────────────────────── */\n\n.md-org-chart__tree,\n.md-org-chart__group {\n display: flex;\n justify-content: center;\n align-items: flex-start;\n list-style: none;\n margin: 0;\n padding: 0;\n position: relative;\n}\n\n/* The tree shrink-wraps and self-centres; when wider than the viewport it\n left-aligns (margin collapses to 0) and the viewport scrolls. */\n.md-org-chart__tree {\n inline-size: max-content;\n margin-inline: auto;\n}\n\n.md-org-chart__group {\n padding-block-start: var(--_level-gap);\n}\n\n.md-org-chart__branch {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n padding-block-start: var(--_level-gap);\n padding-inline: calc(var(--_sibling-gap) / 2);\n outline: none;\n}\n\n/* Horizontal bus halves (top border) meeting at the branch centre, plus the\n short vertical riser up into the bus (border-inline-start on ::after). */\n.md-org-chart__branch::before,\n.md-org-chart__branch::after {\n content: '';\n position: absolute;\n inset-block-start: 0;\n inset-inline-end: 50%;\n inline-size: 50%;\n block-size: var(--_level-gap);\n border-block-start: var(--_line);\n}\n\n.md-org-chart__branch::after {\n inset-inline-end: auto;\n inset-inline-start: 50%;\n border-inline-start: var(--_line);\n}\n\n/* Only child: no horizontal bus/riser — just the group's vertical drop. Drop\n its own block-start padding too, otherwise that padding (with no riser line)\n leaves a gap between the drop and the child. */\n.md-org-chart__branch:only-child::before,\n.md-org-chart__branch:only-child::after {\n display: none;\n}\n\n.md-org-chart__branch:only-child {\n padding-block-start: 0;\n}\n\n/* Trim the outermost overhang and round the two elbows. */\n.md-org-chart__branch:first-child::before,\n.md-org-chart__branch:last-child::after {\n border: 0;\n}\n\n.md-org-chart__branch:last-child::before {\n border-inline-end: var(--_line);\n border-start-end-radius: var(--_elbow);\n}\n\n.md-org-chart__branch:first-child::after {\n border-start-start-radius: var(--_elbow);\n}\n\n/* Vertical drop from a parent node down to its children's bus. */\n.md-org-chart__group::before {\n content: '';\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 50%;\n inline-size: 0;\n block-size: var(--_level-gap);\n border-inline-start: var(--_line);\n}\n\n/* Roots have no incoming connector. */\n.md-org-chart__tree > .md-org-chart__branch {\n padding-block-start: 0;\n}\n.md-org-chart__tree > .md-org-chart__branch::before,\n.md-org-chart__tree > .md-org-chart__branch::after {\n display: none;\n}\n\n/* ── Node card ────────────────────────────────────────────────── */\n\n.md-org-chart__node {\n position: relative;\n /* Above the sibling group's connector lines (painted later in DOM) so the\n node and its toggler sit on top of the drop/bus rather than under them. */\n z-index: 2;\n display: inline-flex;\n align-items: center;\n gap: max(6px, calc(12px + var(--md-sys-density-scale, 0) * 1.5px));\n padding-block: max(6px, calc(10px + var(--md-sys-density-scale, 0) * 1px));\n padding-inline: max(8px, calc(14px + var(--md-sys-density-scale, 0) * 1.5px));\n min-inline-size: var(--_node-min-width);\n max-inline-size: var(--_node-max-width);\n box-sizing: border-box;\n border-radius: var(--_node-shape);\n background: var(--_node-color);\n border: var(--_node-outline-width) solid var(--_node-outline);\n color: var(--md-sys-color-on-surface, #1d1b20);\n transition:\n border-color var(--_duration) var(--_easing),\n box-shadow var(--_duration) var(--_easing);\n /* No transform / will-change here: either would make the node a containing\n block for the toggler tooltip's position:fixed popup, cutting it off. */\n}\n\n.md-org-chart__node--selectable {\n cursor: pointer;\n}\n\n.md-org-chart__node--selectable:hover {\n box-shadow: var(--md-sys-elevation-1, 0 1px 3px 1px rgba(0, 0, 0, 0.15));\n}\n\n/* Selection ring via border-colour + an outset box-shadow — NOT a wider border.\n Growing the border would move the padding box and shift the edge-hung toggler,\n so width + padding stay constant and nothing in the card moves on select. */\n.md-org-chart__node--selected {\n border-color: var(--_selected-color);\n box-shadow: 0 0 0 1px var(--_selected-color);\n}\n\n.md-org-chart__node--selected.md-org-chart__node--selectable:hover {\n box-shadow:\n 0 0 0 1px var(--_selected-color),\n var(--md-sys-elevation-1, 0 1px 3px 1px rgba(0, 0, 0, 0.15));\n}\n\n/* Focus ring on the focusable treeitem — same colour as the buttons. */\n.md-org-chart__branch:focus-visible > .md-org-chart__node {\n outline: 3px solid var(--_focus-ring-color);\n outline-offset: 2px;\n}\n\n/* Selection ripple (auto-attaches to the node card; self-clips to the radius,\n so the edge-hung toggler is unaffected). */\n.md-org-chart__ripple {\n --md-ripple-color: var(--_selected-color);\n border-radius: inherit;\n}\n\n.md-org-chart__state-layer {\n position: absolute;\n inset: 0;\n border-radius: inherit;\n background: var(--_state-layer-color);\n opacity: 0;\n pointer-events: none;\n transition: opacity var(--_duration) var(--_easing);\n}\n\n.md-org-chart__node--selectable:hover > .md-org-chart__state-layer {\n opacity: var(--md-sys-state-hover-state-layer-opacity, 0.08);\n}\n\n.md-org-chart__node--selectable:active > .md-org-chart__state-layer {\n opacity: var(--md-sys-state-pressed-state-layer-opacity, 0.12);\n}\n\n.md-org-chart__node--selected > .md-org-chart__state-layer {\n opacity: 0.08;\n background: var(--_selected-color);\n}\n\n.md-org-chart__avatar {\n flex: 0 0 auto;\n --md-avatar-container-color: var(--md-sys-color-primary-container, #eaddff);\n --md-avatar-label-color: var(--md-sys-color-on-primary-container, #21005d);\n}\n\n.md-org-chart__text {\n display: flex;\n flex-direction: column;\n min-inline-size: 0;\n gap: 2px;\n}\n\n.md-org-chart__name {\n font-family: var(--md-sys-typescale-title-small-font-family, Roboto, system-ui, sans-serif);\n font-size: max(11px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));\n font-weight: 600;\n line-height: max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));\n color: var(--md-sys-color-on-surface, #1d1b20);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.md-org-chart__title {\n font-size: max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));\n line-height: max(14px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));\n color: var(--md-sys-color-on-surface-variant, #49454f);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* ── Toggler ──────────────────────────────────────────────────── */\n\n/* The toggler is an md-icon-button hung on the node's bottom edge, over the\n connector drop. z-index keeps it above the lines; its opaque tonal fill\n masks the line where they meet. */\n/* The md-tooltip wrapper carries the positioning (centred on the node's bottom\n edge, half in / half out) and stacks above the connector lines. Centred with\n calc() (NOT transform): a transform on the tooltip host would make it the\n containing block for its own position:fixed popup, cutting it off / mis-placing\n it. inset-inline-start keeps this direction-aware for RTL. */\n.md-org-chart__toggle-tip {\n position: absolute;\n inset-block-end: calc(-1 * var(--_toggle-size) / 2);\n inset-inline-start: calc(50% - var(--_toggle-size) / 2);\n z-index: 3;\n line-height: 0;\n}\n\n.md-org-chart__toggle {\n --md-icon-button-container-color: var(--md-sys-color-surface-container-high, #ece6f0);\n --md-icon-button-container-width: var(--_toggle-size);\n --md-icon-button-container-height: var(--_toggle-size);\n --md-icon-button-icon-size: calc(var(--_toggle-size) * 0.66);\n}\n\n/* ── Group enter animation (expressive) ───────────────────────── */\n\n@keyframes md-org-chart-grow {\n from {\n opacity: 0;\n transform: translateY(-8px) scale(0.96);\n }\n to {\n opacity: 1;\n transform: none;\n }\n}\n\n.md-org-chart__group {\n animation: md-org-chart-grow var(--_duration) var(--_easing);\n transform-origin: top center;\n}\n\n/* ── Empty state ──────────────────────────────────────────────── */\n\n.md-org-chart__empty {\n padding: 32px 16px;\n text-align: center;\n color: var(--md-sys-color-on-surface-variant, #49454f);\n font-size: var(--md-sys-typescale-body-medium-size, 14px);\n}\n\n/* ── Horizontal orientation ───────────────────────────────────────\n Left→right tree — the block↔inline mirror of the default (vertical)\n connector geometry above. Still authored in LOGICAL properties, so RTL\n flips it to right→left with no extra rules. Levels now advance on the\n inline axis; siblings stack on the block axis. */\n\n:host([orientation='horizontal']) .md-org-chart__tree,\n:host([orientation='horizontal']) .md-org-chart__group {\n flex-direction: column;\n}\n\n/* Level gap runs inline (parent → child) instead of block. */\n:host([orientation='horizontal']) .md-org-chart__group {\n padding-block-start: 0;\n padding-inline-start: var(--_level-gap);\n}\n\n:host([orientation='horizontal']) .md-org-chart__branch {\n flex-direction: row;\n /* Node beside its child group (was column: node above group). */\n padding-block: calc(var(--_sibling-gap) / 2); /* siblings spread on block now */\n padding-inline: var(--_level-gap) 0; /* incoming-connector strip on inline-start */\n}\n\n/* Roots and only-children take no incoming inline gap. */\n:host([orientation='horizontal']) .md-org-chart__branch:only-child,\n:host([orientation='horizontal']) .md-org-chart__tree > .md-org-chart__branch {\n padding-inline-start: 0;\n}\n\n/* Sibling bus (now vertical, on the inline-start edge) + a short horizontal\n riser into the node. Mirrors the vertical ::before/::after exactly. */\n:host([orientation='horizontal']) .md-org-chart__branch::before,\n:host([orientation='horizontal']) .md-org-chart__branch::after {\n inset-block-start: 0;\n inset-inline-start: 0;\n inset-inline-end: auto;\n inline-size: var(--_level-gap);\n block-size: 50%;\n border-block-start: 0; /* clear the vertical-mode horizontal bus */\n border-inline-start: var(--_line); /* vertical bus */\n}\n\n:host([orientation='horizontal']) .md-org-chart__branch::after {\n inset-block-start: 50%;\n border-block-start: var(--_line); /* the single horizontal riser */\n}\n\n/* Trim the outermost overhang. The :host-scoped bus rules above out-specify the\n axis-agnostic `border:0` trims (0-3-1 vs 0-2-1), so re-assert them here at\n matching specificity — otherwise the vertical bus overshoots the first/last\n sibling. */\n:host([orientation='horizontal']) .md-org-chart__branch:first-child::before,\n:host([orientation='horizontal']) .md-org-chart__branch:last-child::after {\n border: 0;\n}\n\n/* Round the two outermost elbows where the bus turns into the end risers.\n The last child's riser is reconstructed on ::before since its ::after is\n trimmed. */\n:host([orientation='horizontal']) .md-org-chart__branch:last-child::before {\n border-inline-end: 0; /* undo the vertical-mode riser rebuild */\n border-start-end-radius: 0; /* undo the vertical-mode elbow */\n border-block-end: var(--_line);\n border-end-start-radius: var(--_elbow);\n}\n:host([orientation='horizontal']) .md-org-chart__branch:first-child::after {\n border-start-start-radius: var(--_elbow);\n}\n\n/* Parent → children drop is now a horizontal line. */\n:host([orientation='horizontal']) .md-org-chart__group::before {\n inset-block-start: 50%;\n inset-inline-start: 0;\n inline-size: var(--_level-gap);\n block-size: 0;\n border-inline-start: 0;\n border-block-start: var(--_line);\n}\n\n/* Toggler hangs on the node's inline-end edge (over the outgoing drop),\n vertically centred — instead of the bottom edge in vertical mode. */\n:host([orientation='horizontal']) .md-org-chart__toggle-tip {\n inset-block-end: auto;\n inset-block-start: calc(50% - var(--_toggle-size) / 2);\n inset-inline-start: auto;\n inset-inline-end: calc(-1 * var(--_toggle-size) / 2);\n}\n\n/* Give the overhanging inline-end toggler room instead of the block-end room. */\n:host([orientation='horizontal']) .md-org-chart__viewport {\n padding: 8px calc(var(--_toggle-size) / 2 + 10px) 8px 8px;\n}\n\n/* Enter animation grows from the inline-start (parent) side. */\n@keyframes md-org-chart-grow-h {\n from {\n opacity: 0;\n transform: translateX(-8px) scale(0.96);\n }\n to {\n opacity: 1;\n transform: none;\n }\n}\n:host([orientation='horizontal']) .md-org-chart__group {\n animation-name: md-org-chart-grow-h;\n transform-origin: left center;\n}\n\n/* ── Reduced motion ───────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .md-org-chart__node,\n .md-org-chart__toggle-icon,\n .md-org-chart__state-layer {\n transition: none;\n }\n .md-org-chart__group {\n animation: none;\n }\n}\n\n/* ==========================================================\n DENSITY (local override)\n Maps the local `density` prop onto the same --md-sys-density-scale signal a\n global `data-density` ancestor sets. Declared on :host, so a local rung wins\n over the inherited global one. Every density-sensitive value in this file\n derives from that single signal by calc — never add a fixed per-rung ladder.\n ========================================================== */\n:host([density='-1']) { --md-sys-density-scale: -1; }\n:host([density='-2']) { --md-sys-density-scale: -2; }\n:host([density='-3']) { --md-sys-density-scale: -3; }\n:host([density='-4']) { --md-sys-density-scale: -4; }\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Event,\n EventEmitter,\n Element,\n Watch,\n} from '@stencil/core';\n\n/**\n * A single node in the organization tree. Only `id` and `name` are required;\n * everything else is optional so the model stays terse.\n */\nexport interface OrgChartNode {\n /** Stable identifier — used for selection, expansion, and eventing. */\n id: string;\n /** Primary label (person / unit name), rendered in the emphasis weight. */\n name: string;\n /** Secondary label (role / department), rendered muted under the name. */\n title?: string;\n /** Avatar image URL. Falls back to initials → name-derived initials. */\n avatar?: string;\n /** Explicit avatar initials (overrides name-derived ones). */\n avatarInitials?: string;\n /** Optional accent colour for the node's avatar ring + selected tint. */\n accent?: string;\n /** Initial expanded state for this node's subtree (default: expanded). */\n expanded?: boolean;\n /** When false the node cannot be selected (default: selectable). */\n selectable?: boolean;\n /** Child nodes. */\n children?: OrgChartNode[];\n}\n\ntype NodeInput = OrgChartNode[] | string | null | undefined;\n\n/** Detail for the `mdSelectionChange` event. */\nexport interface OrgChartSelectionChangeDetail {\n /** The node that was clicked / toggled. */\n node: OrgChartNode;\n /** The full set of selected ids after the change. */\n selectedIds: string[];\n}\n\n/** Detail for the `mdNodeToggle` event. */\nexport interface OrgChartToggleDetail {\n /** The node whose subtree was expanded / collapsed. */\n node: OrgChartNode;\n /** Whether the node is now expanded. */\n expanded: boolean;\n}\n\n/**\n * `md-organization-chart` — Material Design 3 Expressive organization chart.\n *\n * Visualises hierarchical org data as a top-down tree of avatar cards joined\n * by connector lines. Data-driven (`nodes`), with collapsible subtrees,\n * optional single/multiple selection, and the full WAI-ARIA **tree** pattern\n * (roving tabindex, Arrow/Home/End navigation, Enter/Space to select).\n *\n * The surface pans horizontally when it outgrows its container, so a wide org\n * stays usable on small screens. Direction-aware (RTL mirrors the layout and\n * swaps the horizontal arrow keys); every affordance label is a prop for\n * localisation.\n *\n * ```html\n * <md-organization-chart selection-mode=\"single\"></md-organization-chart>\n * <script>\n * document.querySelector('md-organization-chart').nodes = [{\n * id: 'ceo', name: 'Amy Elsner', title: 'Founder & CEO',\n * children: [{ id: 'prod', name: 'Asiya Javayant', title: 'Product Lead' }],\n * }];\n * </script>\n * ```\n */\n@Component({\n tag: 'md-organization-chart',\n styleUrl: 'md-organization-chart.css',\n shadow: true,\n})\nexport class MdOrganizationChart {\n @Element() el!: HTMLElement;\n\n /**\n * The organization tree. Accepts an `OrgChartNode[]` (property) or a JSON\n * string (attribute). Multiple roots are supported (rendered side by side).\n */\n @Prop() nodes: NodeInput = [];\n\n /**\n * Selection behaviour:\n * - `'none'` — nodes are not selectable (default).\n * - `'single'` — one node at a time.\n * - `'multiple'` — any number of nodes.\n */\n @Prop({ reflect: true }) selectionMode: 'none' | 'single' | 'multiple' = 'none';\n\n /** Selected node ids (controlled + initial). Kept in sync as the user selects. */\n @Prop({ mutable: true }) selectedIds: string[] = [];\n\n /** Show expand/collapse togglers on nodes that have children. */\n @Prop() collapsible: boolean = true;\n\n /**\n * Layout direction of the tree:\n * - `'vertical'` — top-down (default).\n * - `'horizontal'` — left-to-right; RTL mirrors it right-to-left.\n *\n * Only the visual layout changes — the tree's ARIA semantics and keyboard\n * model (Arrow Left/Right = collapse/expand, Up/Down = move) are unchanged.\n */\n @Prop({ reflect: true }) orientation: 'vertical' | 'horizontal' = 'vertical';\n\n /** Accessible name for the tree (localisable). */\n @Prop({ attribute: 'label' }) label: string = 'Organization chart';\n\n /** Toggler accessible label when a node is collapsed (localisable). */\n @Prop({ attribute: 'expand-label' }) expandLabel: string = 'Expand';\n\n /** Toggler accessible label when a node is expanded (localisable). */\n @Prop({ attribute: 'collapse-label' }) collapseLabel: string = 'Collapse';\n\n /**\n * Local density rung. Drives the same `--md-sys-density-scale` signal that a\n * global `data-density` ancestor sets, so a local value simply overrides the\n * inherited one. 0 = default, -4 = ultra-compact.\n */\n @Prop({ reflect: true }) density: 0 | -1 | -2 | -3 | -4 = 0;\n\n /** Fired when the selection changes. */\n @Event() mdSelectionChange!: EventEmitter<OrgChartSelectionChangeDetail>;\n\n /** Fired when a node is expanded or collapsed. */\n @Event() mdNodeToggle!: EventEmitter<OrgChartToggleDetail>;\n\n /** Ids whose subtree is collapsed (default: everything expanded). */\n @State() private collapsed = new Set<string>();\n /** Working selection set (mirrors `selectedIds`). */\n @State() private selection = new Set<string>();\n /** Roving-tabindex owner — the one node reachable with Tab. */\n @State() private activeId = '';\n\n private nodeMap = new Map<string, OrgChartNode>();\n\n componentWillLoad() {\n this.syncFromNodes(this.nodes);\n this.selection = new Set(this.selectedIds ?? []);\n }\n\n @Watch('nodes')\n onNodesChange(next: NodeInput) {\n this.syncFromNodes(next);\n }\n\n @Watch('selectedIds')\n onSelectedIdsChange(next: string[]) {\n this.selection = new Set(next ?? []);\n }\n\n /** Parse the incoming nodes, (re)build the id map, seed collapse + active. */\n private syncFromNodes(input: NodeInput) {\n const roots = this.parseNodes(input);\n this.nodeMap = new Map();\n const collapsed = new Set<string>();\n const walk = (list: OrgChartNode[]) => {\n for (const n of list) {\n if (!n || n.id == null) continue;\n this.nodeMap.set(n.id, n);\n if (n.expanded === false && n.children?.length) collapsed.add(n.id);\n if (n.children?.length) walk(n.children);\n }\n };\n walk(roots);\n this.collapsed = collapsed;\n // Keep the roving owner valid; default to the first root.\n if (!this.activeId || !this.nodeMap.has(this.activeId)) {\n this.activeId = roots[0]?.id ?? '';\n }\n this.roots = roots;\n }\n\n private roots: OrgChartNode[] = [];\n\n private parseNodes(input: NodeInput): OrgChartNode[] {\n if (Array.isArray(input)) return input;\n if (typeof input === 'string' && input.trim()) {\n try {\n const parsed = JSON.parse(input);\n return Array.isArray(parsed) ? parsed : [parsed];\n } catch {\n return [];\n }\n }\n return [];\n }\n\n private isExpanded(node: OrgChartNode): boolean {\n return !this.collapsed.has(node.id);\n }\n\n private hasChildren(node: OrgChartNode): boolean {\n return !!node.children && node.children.length > 0;\n }\n\n private isSelectable(node: OrgChartNode): boolean {\n return this.selectionMode !== 'none' && node.selectable !== false;\n }\n\n private toggle(node: OrgChartNode) {\n if (!this.hasChildren(node)) return;\n const next = new Set(this.collapsed);\n const willExpand = next.has(node.id);\n if (willExpand) next.delete(node.id);\n else next.add(node.id);\n this.collapsed = next;\n this.mdNodeToggle.emit({ node, expanded: willExpand });\n }\n\n private select(node: OrgChartNode) {\n if (!this.isSelectable(node)) return;\n const next = new Set(this.selection);\n if (this.selectionMode === 'single') {\n const wasOnlySelected = next.has(node.id) && next.size === 1;\n next.clear();\n if (!wasOnlySelected) next.add(node.id);\n } else {\n if (next.has(node.id)) next.delete(node.id);\n else next.add(node.id);\n }\n this.selection = next;\n this.selectedIds = Array.from(next);\n this.mdSelectionChange.emit({ node, selectedIds: this.selectedIds });\n }\n\n // ── Keyboard: WAI-ARIA tree pattern ──────────────────────────────────────\n private visibleItems(): HTMLElement[] {\n return Array.from(\n this.el.shadowRoot?.querySelectorAll('li[role=\"treeitem\"]') ?? [],\n ) as HTMLElement[];\n }\n\n private itemFor(node: OrgChartNode): HTMLElement | null {\n return (\n (this.el.shadowRoot?.querySelector(\n `li[role=\"treeitem\"][data-id=\"${cssEscape(node.id)}\"]`,\n ) as HTMLElement | null) ?? null\n );\n }\n\n private focusItem(el: HTMLElement | null | undefined) {\n if (!el) return;\n const id = el.getAttribute('data-id');\n if (id) this.activeId = id;\n el.focus();\n }\n\n private firstChildItem(li: HTMLElement): HTMLElement | null {\n const group = Array.from(li.children).find(\n (c) => (c as HTMLElement).getAttribute?.('role') === 'group',\n ) as HTMLElement | undefined;\n if (!group) return null;\n return (\n (Array.from(group.children).find(\n (c) => (c as HTMLElement).getAttribute?.('role') === 'treeitem',\n ) as HTMLElement | undefined) ?? null\n );\n }\n\n private parentItem(li: HTMLElement): HTMLElement | null {\n const group = li.parentElement;\n if (!group || group.getAttribute('role') !== 'group') return null;\n const parent = group.parentElement;\n return parent && parent.getAttribute('role') === 'treeitem'\n ? (parent as HTMLElement)\n : null;\n }\n\n private handleKeyDown = (e: KeyboardEvent) => {\n const current = e.target as HTMLElement;\n if (!current || current.getAttribute?.('role') !== 'treeitem') return;\n const node = this.nodeMap.get(current.getAttribute('data-id') ?? '');\n if (!node) return;\n\n const rtl = getComputedStyle(this.el).direction === 'rtl';\n const forwardKey = rtl ? 'ArrowLeft' : 'ArrowRight';\n const backwardKey = rtl ? 'ArrowRight' : 'ArrowLeft';\n const items = this.visibleItems();\n const idx = items.indexOf(current);\n\n switch (e.key) {\n case 'ArrowDown':\n this.focusItem(items[idx + 1]);\n break;\n case 'ArrowUp':\n this.focusItem(items[idx - 1]);\n break;\n case forwardKey:\n if (this.hasChildren(node)) {\n if (!this.isExpanded(node)) this.toggle(node);\n else this.focusItem(this.firstChildItem(current));\n }\n break;\n case backwardKey:\n if (this.hasChildren(node) && this.isExpanded(node)) this.toggle(node);\n else this.focusItem(this.parentItem(current));\n break;\n case 'Home':\n this.focusItem(items[0]);\n break;\n case 'End':\n this.focusItem(items[items.length - 1]);\n break;\n case 'Enter':\n case ' ':\n case 'Spacebar':\n if (this.isSelectable(node)) this.select(node);\n else if (this.hasChildren(node)) this.toggle(node);\n break;\n default:\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n };\n\n private handleNodeClick = (node: OrgChartNode) => (e: MouseEvent) => {\n // Toggler clicks are handled on the toggler itself.\n if ((e.target as HTMLElement)?.closest('.md-org-chart__toggle')) return;\n this.activeId = node.id;\n if (this.isSelectable(node)) this.select(node);\n };\n\n private handleTogglerClick = (node: OrgChartNode) => (e: MouseEvent) => {\n e.stopPropagation();\n this.toggle(node);\n };\n\n private renderNode(node: OrgChartNode, level: number, posInSet: number, setSize: number) {\n const has = this.hasChildren(node);\n const expanded = this.isExpanded(node);\n const selectable = this.isSelectable(node);\n const selected = selectable && this.selection.has(node.id);\n const tabbable = node.id === this.activeId;\n const showToggle = this.collapsible && has;\n\n return (\n <li\n role=\"treeitem\"\n data-id={node.id}\n aria-level={level}\n aria-setsize={setSize}\n aria-posinset={posInSet}\n aria-expanded={has ? String(expanded) : undefined}\n aria-selected={selectable ? String(selected) : undefined}\n tabindex={tabbable ? '0' : '-1'}\n class={{\n 'md-org-chart__branch': true,\n 'md-org-chart__branch--collapsed': has && !expanded,\n }}\n onKeyDown={this.handleKeyDown}\n onFocus={() => (this.activeId = node.id)}\n >\n <div\n class={{\n 'md-org-chart__node': true,\n 'md-org-chart__node--selectable': selectable,\n 'md-org-chart__node--selected': selected,\n }}\n part={`node${selected ? ' node-selected' : ''}`}\n style={node.accent ? { '--_accent': node.accent } : undefined}\n onClick={this.handleNodeClick(node)}\n >\n <span class=\"md-org-chart__state-layer\" part=\"state-layer\" aria-hidden=\"true\"></span>\n {selectable && <md-ripple class=\"md-org-chart__ripple\"></md-ripple>}\n <md-avatar\n class=\"md-org-chart__avatar\"\n part=\"avatar\"\n exportparts=\"image: avatar-image\"\n // Decorative: the node's name is already announced as the treeitem's\n // text, so exposing the avatar's label would double-speak it. The\n // auto per-name palette is disabled in favour of a fixed AA-contrast\n // pair (see CSS) — initials here are a photo fallback, not identity.\n aria-hidden=\"true\"\n colorFromName={false}\n src={node.avatar}\n initials={node.avatarInitials}\n name={node.name}\n size=\"medium\"\n shape=\"circle\"\n ></md-avatar>\n <span class=\"md-org-chart__text\">\n <span class=\"md-org-chart__name\" part=\"name\">{node.name}</span>\n {node.title && (\n <span class=\"md-org-chart__title\" part=\"title\">{node.title}</span>\n )}\n </span>\n {showToggle && (\n // Decorative pointer affordance: expand/collapse is exposed to AT via\n // the treeitem's aria-expanded + Arrow keys, so the button is\n // aria-hidden and taken out of the tab order (group-tabindex=-1) to\n // avoid a nested interactive control inside the treeitem. The label\n // rides in the library md-tooltip rather than a native `title`.\n <md-tooltip\n class=\"md-org-chart__toggle-tip\"\n text={expanded ? this.collapseLabel : this.expandLabel}\n position=\"bottom\"\n >\n <md-icon-button\n class=\"md-org-chart__toggle\"\n part=\"toggle\"\n icon={expanded ? 'expand_less' : 'expand_more'}\n size=\"xs\"\n variant=\"tonal\"\n shape=\"round\"\n aria-hidden=\"true\"\n group-tabindex={-1}\n onPointerDown={(e: PointerEvent) => e.stopPropagation()}\n onClick={this.handleTogglerClick(node)}\n ></md-icon-button>\n </md-tooltip>\n )}\n </div>\n\n {has && expanded && (\n <ul role=\"group\" class=\"md-org-chart__group\" part=\"group\">\n {node.children!.map((child, i) =>\n this.renderNode(child, level + 1, i + 1, node.children!.length),\n )}\n </ul>\n )}\n </li>\n );\n }\n\n render() {\n const roots = this.roots;\n const empty = roots.length === 0;\n\n return (\n <Host\n class={{\n 'md-org-chart': true,\n 'md-org-chart--empty': empty,\n }}\n >\n <div class=\"md-org-chart__viewport\" part=\"viewport\">\n {empty ? (\n <div class=\"md-org-chart__empty\" part=\"empty\" role=\"status\">\n <slot name=\"empty\">No data</slot>\n </div>\n ) : (\n <ul\n role=\"tree\"\n class=\"md-org-chart__tree\"\n part=\"tree\"\n aria-label={this.label}\n aria-multiselectable={\n this.selectionMode === 'multiple' ? 'true' : undefined\n }\n >\n {roots.map((root, i) => this.renderNode(root, 1, i + 1, roots.length))}\n </ul>\n )}\n </div>\n </Host>\n );\n }\n}\n\n/** Minimal CSS.escape shim (attribute-selector safe) for id values. */\nfunction cssEscape(value: string): string {\n return String(value).replace(/[\"\\\\\\]]/g, '\\\\$&');\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,c as a,h as s,H as i,
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,c as a,h as s,H as i,g as e}from"./p-WmvQpZnM.js";const n=()=>`:host{--_color:var(--md-table-pagination-color, var(--md-sys-color-on-surface-variant, #49454F));--_bg:var(--md-table-pagination-bg, transparent);--_pad-block:var(--md-table-pagination-padding-block, var(--md-sys-spacing-inset-sm, 8px));--_pad-inline:var(--md-table-pagination-padding-inline, 16px);display:flex;align-items:center;justify-content:flex-end;gap:max(12px, calc(24px + var(--md-sys-density-scale, 0) * 3px));padding-block:var(--_pad-block);padding-inline:max(8px, calc(16px + var(--md-sys-density-scale, 0) * 2px));background-color:var(--_bg);color:var(--_color);font-family:var(--md-sys-typescale-body-small-font-family, Roboto, sans-serif);font-size:max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));line-height:max(14px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));letter-spacing:var(--md-sys-typescale-body-small-letter-spacing, 0.4px);flex-wrap:wrap}:host(.md-table-pagination--compact){gap:12px;padding-block:4px}:host(.md-table-pagination--disabled){opacity:0.6;pointer-events:none}.md-table-pagination__rpp{display:inline-flex;align-items:center;gap:max(4px, calc(8px + var(--md-sys-density-scale, 0) * 1px))}.md-table-pagination__rpp-select{inline-size:var(--md-table-pagination-select-width, max(56px, calc(80px + var(--md-sys-density-scale, 0) * 4px)))}.md-table-pagination__rpp-select::part(caret){inline-size:max(14px, calc(18px + var(--md-sys-density-scale, 0) * 1px));block-size:max(14px, calc(18px + var(--md-sys-density-scale, 0) * 1px));font-size:max(14px, calc(18px + var(--md-sys-density-scale, 0) * 1px))}.md-table-pagination__display{white-space:nowrap;margin-inline-end:auto}.md-table-pagination__nav{display:inline-flex;align-items:center;gap:max(0px, calc(4px + var(--md-sys-density-scale, 0) * 1px));--md-icon-button-container-width:max(32px, calc(40px + var(--md-sys-density-scale, 0) * 4px));--md-icon-button-container-height:max(32px, calc(40px + var(--md-sys-density-scale, 0) * 4px));--md-icon-button-icon-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px))}:host([dir='rtl']) .md-table-pagination__nav md-icon-button,:host-context([dir='rtl']) .md-table-pagination__nav md-icon-button{transform:scaleX(-1)}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const l=class{constructor(s){t(this,s);this.mdPageChange=a(this,"mdPageChange",7);this.mdRowsPerPageChange=a(this,"mdRowsPerPageChange",7);this.count=0;this.page=0;this.rowsPerPage=10;this.rowsPerPageOptions="5,10,25,50";this.showFirstLast=false;this.labelDisplayedRows="%from%–%to% of %count%";this.labelRowsPerPage="Rows per page:";this.labelFirstPage="First page";this.labelPreviousPage="Previous page";this.labelNextPage="Next page";this.labelLastPage="Last page";this.labelAll="All";this.compact=false;this.disabled=false;this.density=0;this.handleFirst=()=>this.goToPage(0);this.handlePrev=()=>this.goToPage(this.page-1);this.handleNext=()=>this.goToPage(this.page+1);this.handleLast=()=>this.goToPage(this.lastPage);this.handleRppChange=t=>{const a=Number(t.detail);if(Number.isFinite(a)&&a>0)this.setRowsPerPage(a)}}clampPage(){const t=this.lastPage;if(this.page>t){this.page=Math.max(0,t)}}get selectDensity(){if(typeof getComputedStyle!=="function")return-2;try{const t=getComputedStyle(this.el).getPropertyValue("--md-sys-density-scale").trim();const a=parseInt(t,10);if(Number.isFinite(a)&&a<=-2)return Math.max(-4,a)}catch{}return-2}onInternalChrome(t){if(t.target===this.el)t.stopPropagation()}async goToPage(t){const a=Math.max(0,Math.min(t,this.lastPage));if(a===this.page)return;this.page=a;this.mdPageChange.emit({page:this.page})}async setRowsPerPage(t){if(t<=0||t===this.rowsPerPage)return;this.rowsPerPage=t;this.page=0;this.mdRowsPerPageChange.emit({rowsPerPage:t});this.mdPageChange.emit({page:0})}get lastPage(){if(this.rowsPerPage<=0)return 0;return Math.max(0,Math.ceil(this.count/this.rowsPerPage)-1)}get from(){if(this.count===0)return 0;return this.page*this.rowsPerPage+1}get to(){if(this.count===0)return 0;return Math.min((this.page+1)*this.rowsPerPage,this.count)}get displayLabel(){return this.labelDisplayedRows.replace("%from%",String(this.from)).replace("%to%",String(this.to)).replace("%count%",String(this.count))}get options(){return this.rowsPerPageOptions.split(",").map((t=>t.trim())).filter(Boolean).map((t=>{if(t.toLowerCase()==="all"){return{value:this.count||-1,label:this.labelAll}}const a=Number(t);return{value:Number.isFinite(a)?a:0,label:t}})).filter((t=>t.value>0))}render(){const t=this.page===0;const a=this.page>=this.lastPage;const e=this.options;const n=e.map((t=>({value:String(t.value),label:t.label})));return s(i,{key:"5085b1774d448df446c38190b457527ad3848251",class:{"md-table-pagination":true,"md-table-pagination--compact":this.compact,"md-table-pagination--disabled":this.disabled},role:"navigation","aria-label":"Pagination"},s("div",{key:"123d91c2d80ed872e6622bfa9ed559e1d42027ce",class:"md-table-pagination__display",part:"display","aria-live":"polite"},this.displayLabel),s("div",{key:"504c63f56c1976371f5c2bc52c54deaf5a1457b5",class:"md-table-pagination__rpp",part:"rpp"},s("span",{key:"0e50b53cc47e2e2f0559a3f81ec555133336335f",class:"md-table-pagination__rpp-label",id:"rpp-label"},this.labelRowsPerPage),s("md-select",{key:"f4efee88087b60878b872ca2b7c1d2d9aabaf072",class:"md-table-pagination__rpp-select",part:"rpp-select","aria-label":this.labelRowsPerPage,density:this.selectDensity,options:n,value:String(this.rowsPerPage),disabled:this.disabled,placement:"top-start",onMdChange:this.handleRppChange})),s("div",{key:"b6b7223cf62b83f37555a94795da0d4417591169",class:"md-table-pagination__nav",part:"nav"},this.showFirstLast&&s("md-icon-button",{key:"8de3ce2fed65c8cbf460007b19d4391881429c02",part:"first-button",icon:"first_page",size:"sm","aria-label":this.labelFirstPage,disabled:t||this.disabled,onClick:this.handleFirst}),s("md-icon-button",{key:"8cf4d3293041d808231f65d88f6dcbe54cdd656a",part:"prev-button",icon:"chevron_left",size:"sm","aria-label":this.labelPreviousPage,disabled:t||this.disabled,onClick:this.handlePrev}),s("md-icon-button",{key:"82b91a148450916f7420578298be3ec074cc7db4",part:"next-button",icon:"chevron_right",size:"sm","aria-label":this.labelNextPage,disabled:a||this.disabled,onClick:this.handleNext}),this.showFirstLast&&s("md-icon-button",{key:"fdfd85fe44719334caf0cd811f638fc14a70d9ed",part:"last-button",icon:"last_page",size:"sm","aria-label":this.labelLastPage,disabled:a||this.disabled,onClick:this.handleLast}),s("slot",{key:"c63ea200bd8f9ff07b27c74da2cff3a5101303f0",name:"actions"})))}get el(){return e(this)}static get watchers(){return{count:[{clampPage:0}],rowsPerPage:[{clampPage:0}]}}};l.style=n();export{l as md_table_pagination};
|
|
2
|
+
//# sourceMappingURL=p-d2e39c6e.entry.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,c as t,h as a,H as r,g as s}from"./p-WmvQpZnM.js";const o=()=>`:host{--_gap:var(--md-breadcrumbs-gap, calc(8px + var(--md-sys-density-scale, 0) * 2px));--_separator-color:var(--md-breadcrumbs-separator-color, var(--md-sys-color-on-surface-variant, #49454F));--_text-color:var(--md-breadcrumbs-text-color, var(--md-sys-color-on-surface-variant, #49454F));--_stagger:var(--md-breadcrumbs-stagger, 40ms);--_in-duration:var(--md-sys-motion-spring-spatial-default-duration, 500ms);--_in-easing:var(--md-sys-motion-spring-spatial-default-easing, cubic-bezier(0.38, 1.21, 0.22, 1.00));--_state-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_state-easing:var(--md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.80, 0.34, 1.00));display:block;inline-size:100%;box-sizing:border-box;font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);color:var(--_text-color)}.md-breadcrumbs__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--_gap)}@keyframes md-breadcrumb-enter{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}::slotted(md-breadcrumb-item){animation:md-breadcrumb-enter var(--_in-duration) var(--_in-easing) both}::slotted(md-breadcrumb-item:nth-of-type(1)){animation-delay:calc(var(--_stagger) * 0)}::slotted(md-breadcrumb-item:nth-of-type(2)){animation-delay:calc(var(--_stagger) * 1)}::slotted(md-breadcrumb-item:nth-of-type(3)){animation-delay:calc(var(--_stagger) * 2)}::slotted(md-breadcrumb-item:nth-of-type(4)){animation-delay:calc(var(--_stagger) * 3)}::slotted(md-breadcrumb-item:nth-of-type(5)){animation-delay:calc(var(--_stagger) * 4)}::slotted(md-breadcrumb-item:nth-of-type(6)){animation-delay:calc(var(--_stagger) * 5)}::slotted(md-breadcrumb-item:nth-of-type(7)){animation-delay:calc(var(--_stagger) * 6)}::slotted(md-breadcrumb-item:nth-of-type(8)){animation-delay:calc(var(--_stagger) * 7)}::slotted(md-breadcrumb-item:nth-of-type(9)){animation-delay:calc(var(--_stagger) * 8)}::slotted(md-breadcrumb-item:nth-of-type(10)){animation-delay:calc(var(--_stagger) * 9)}::slotted(md-breadcrumb-item:nth-of-type(11)){animation-delay:calc(var(--_stagger) * 10)}::slotted(md-breadcrumb-item:nth-of-type(12)){animation-delay:calc(var(--_stagger) * 11)}:host([dir="rtl"]){}:host([dir="rtl"]) ::slotted(md-breadcrumb-item),:host-context([dir="rtl"]) ::slotted(md-breadcrumb-item){animation-name:md-breadcrumb-enter-rtl}@keyframes md-breadcrumb-enter-rtl{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}.md-breadcrumbs__overflow{display:inline-flex;align-items:center;gap:var(--md-sys-spacing-gap-xs, 4px);order:1}.md-breadcrumbs__overflow-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;inline-size:32px;block-size:32px;border:none;border-radius:var(--md-sys-shape-corner-full, 9999px);background-color:transparent;color:var(--md-sys-color-on-surface-variant, #49454F);cursor:pointer;transition:background-color var(--_state-duration) var(--_state-easing), transform var(--_state-duration) var(--_state-easing)}.md-breadcrumbs__overflow-btn:hover{background-color:color-mix(in srgb, var(--md-sys-color-on-surface-variant, #49454F) 8%, transparent)}.md-breadcrumbs__overflow-btn:focus-visible{background-color:color-mix(in srgb, var(--md-sys-color-on-surface-variant, #49454F) 12%, transparent);outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:2px}.md-breadcrumbs__overflow-btn:active{transform:scale(0.94)}.md-breadcrumbs__separator{display:inline-flex;align-items:center;color:var(--_separator-color);font-size:max(13px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));user-select:none;pointer-events:none}:host([dir="rtl"]) .md-breadcrumbs__separator,:host-context([dir="rtl"]) .md-breadcrumbs__separator{unicode-bidi:plaintext}@media (prefers-reduced-motion: reduce){::slotted(md-breadcrumb-item){animation:none !important}.md-breadcrumbs__overflow-btn{transition:none}}@media (forced-colors: active){.md-breadcrumbs__separator{color:GrayText}.md-breadcrumbs__overflow-btn{border:1px solid CanvasText}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const i=class{constructor(a){e(this,a);this.mdExpand=t(this,"mdExpand",7);this.label="Breadcrumb";this.expandLabel="Show full breadcrumb trail";this.separator="/";this.maxItems=0;this.itemsBeforeCollapse=1;this.itemsAfterCollapse=2;this.density=0;this.expanded=false;this.itemCount=0;this.toggleExpanded=()=>{this.setExpanded(!this.expanded)}}componentWillLoad(){this.refreshItems()}componentDidLoad(){const e=this.el.shadowRoot?.querySelector("slot:not([name])");e?.addEventListener("slotchange",(()=>this.refreshItems()))}onCollapseConfigChange(){this.refreshItems()}refreshItems(){const e=this.collectItems();this.itemCount=e.length;e.forEach(((t,a)=>{t.itemIndex=a;t.itemTotal=e.length}));const t=e.some(((t,a)=>t.current&&a!==e.length-1));if(!t&&e.length>0){e.forEach(((t,a)=>{t.current=a===e.length-1}))}this.applyVisibility(e)}collectItems(){const e=[];const t=this.el.children;for(let a=0;a<t.length;a+=1){const r=t[a];if(r.tagName==="MD-BREADCRUMB-ITEM"){e.push(r)}}return e}applyVisibility(e){if(this.expanded||this.maxItems<=0||e.length<=this.maxItems){e.forEach((e=>{e.collapsed=false;e.style.removeProperty("order")}));return}const t=Math.max(0,this.itemsBeforeCollapse);const a=Math.max(1,this.itemsAfterCollapse);e.forEach(((r,s)=>{const o=s<t;const i=s>=e.length-a;r.collapsed=!(o||i);if(i){r.style.order="2"}else{r.style.removeProperty("order")}}))}setExpanded(e){if(this.expanded===e)return;this.expanded=e;this.applyVisibility(this.collectItems());this.mdExpand.emit({expanded:e,itemCount:this.itemCount})}async expand(){this.setExpanded(true)}async collapse(){this.setExpanded(false)}renderSeparator(e){return a("span",{class:"md-breadcrumbs__separator",part:`separator separator-${e}`,"aria-hidden":"true"},this.separator)}render(){const e=this.maxItems>0&&this.itemCount>this.maxItems&&!this.expanded;return a(r,{key:"6f23f1df810a985f560080ffbc3ef2cc84bb6aac",class:"md-breadcrumbs",role:"navigation","aria-label":this.label},a("ol",{key:"6a8d9404fb7f69b4cc18a5d673db40bc12eecd4c",class:"md-breadcrumbs__list",part:"list"},a("slot",{key:"7be137b4ee893d169a9aacbcd6945cc7198dcea2"}),e&&a("li",{key:"c71d04eed44facd2f43ae324deebec02d3c6a3d9",class:"md-breadcrumbs__overflow",part:"overflow"},Math.max(0,this.itemsBeforeCollapse)>0?this.renderSeparator(-2):null,a("button",{key:"9b2f97c61c4260d765d7e57c82f902859fb7d6a0",type:"button",class:"md-breadcrumbs__overflow-btn",part:"overflow-button","aria-label":this.expandLabel,"aria-expanded":this.expanded?"true":"false",onClick:this.toggleExpanded},a("svg",{key:"5d98bc01fc58049d20119ffd1f2a4dd961c7075c",viewBox:"0 0 24 24",width:"20",height:"20",fill:"currentColor","aria-hidden":"true"},a("circle",{key:"7ddb80ca2c6ddc1156a347c0258a5e0edc1705ef",cx:"6",cy:"12",r:"1.6"}),a("circle",{key:"138c27a9047165cb9bb43232c15c8f8bd9fff7a3",cx:"12",cy:"12",r:"1.6"}),a("circle",{key:"5d7263f67eb5a60d0fb6a3f5e8b0bd50e45e0981",cx:"18",cy:"12",r:"1.6"}))))))}get el(){return s(this)}static get watchers(){return{maxItems:[{onCollapseConfigChange:0}],itemsBeforeCollapse:[{onCollapseConfigChange:0}],itemsAfterCollapse:[{onCollapseConfigChange:0}]}}};i.style=o();export{i as md_breadcrumbs};
|
|
2
|
+
//# sourceMappingURL=p-d8885f53.entry.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,c as e,h as a,H as s,g as n}from"./p-WmvQpZnM.js";const i=()=>`:host{display:none}`;const o=class{constructor(a){t(this,a);this.mdSelectOptionChange=e(this,"mdSelectOptionChange",7);this.value="";this.label="";this.disabled=false;this.selected=false;this.icon="";this.iconColor="";this.supportingText=""}onDataChange(){this.mdSelectOptionChange.emit()}connectedCallback(){this.mdSelectOptionChange?.emit()}disconnectedCallback(){this.mdSelectOptionChange?.emit()}render(){return a(s,{key:"0b425bb49e3918cd1be482c1ddcc76739bf58163",role:"option","aria-hidden":"true","aria-selected":String(this.selected),"aria-disabled":this.disabled?"true":"false"},a("slot",{key:"12e2c4ca36f605dbdf20c8324e197872f8009e25"}))}get el(){return n(this)}static get watchers(){return{value:[{onDataChange:0}],label:[{onDataChange:0}],disabled:[{onDataChange:0}],selected:[{onDataChange:0}],icon:[{onDataChange:0}],iconColor:[{onDataChange:0}],supportingText:[{onDataChange:0}]}}};o.style=i();export{o as md_select_option};
|
|
2
|
+
//# sourceMappingURL=p-db6fb4e1.entry.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as a,c as e,h as o,H as s,a as i}from"./p-DTaX19_O.js";import{t}from"./p-DYBUr7K_.js";const r=()=>`:host{--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary-container));--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px));--_container-elevation:var(--md-sys-elevation-3);--_state-layer-color:var(--_icon-color);--_morph-spatial-duration:var(--md-sys-motion-spring-spatial-default-duration, 500ms);--_morph-spatial-easing:var( --md-sys-motion-spring-spatial-default-easing, cubic-bezier(0.38, 1.21, 0.22, 1) );--_morph-effects-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_morph-effects-easing:var( --md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.8, 0.34, 1) );display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:pointer;user-select:none;border:none;outline:none;box-sizing:border-box;background-color:var(--_container-color);color:var(--_icon-color);border-radius:var(--_container-shape);box-shadow:var(--_container-elevation);transition:box-shadow 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)), background-color 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)), border-radius var(--md-sys-motion-duration-short4, 200ms) var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), color var(--md-sys-motion-duration-short4, 200ms) var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), min-width var(--_morph-spatial-duration) var(--_morph-spatial-easing), padding-inline-start var(--_morph-spatial-duration) var(--_morph-spatial-easing), padding-inline-end var(--_morph-spatial-duration) var(--_morph-spatial-easing);-webkit-tap-highlight-color:transparent;vertical-align:middle}:host(:not([data-ready])),:host(:not([data-ready])) .md-fab__label{transition:none}:host([data-shape="circle"]){border-radius:50%}:host(.md-fab--standard){--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));width:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px));height:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--medium){--_icon-size:var(--md-fab-icon-size, max(21px, calc(28px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-extra-large, 28px));width:max(64px, calc(80px + var(--md-sys-density-scale, 0) * 4px));height:max(64px, calc(80px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--large){--_icon-size:var(--md-fab-icon-size, max(27px, calc(36px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-extra-large, 28px));width:max(80px, calc(96px + var(--md-sys-density-scale, 0) * 4px));height:max(80px, calc(96px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--extended),:host(.md-fab--collapsed){--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));height:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px));width:auto;padding-inline:max(12px, calc(20px + var(--md-sys-density-scale, 0) * 2px));font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);font-size:max(11px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-large-font-weight, 500);letter-spacing:var(--md-sys-typescale-label-large-letter-spacing, 0.1px);line-height:var(--md-sys-typescale-label-large-line-height, 20px)}:host(.md-fab--extended){min-width:80px}:host(.md-fab--extended.md-fab--with-icon){padding-inline:var(--md-sys-spacing-inset-lg, 16px) 20px}:host(.md-fab--collapsed){min-width:56px}:host(.md-fab--collapsed.md-fab--with-icon){padding-inline:var(--md-sys-spacing-inset-lg, 16px)}:host(.md-fab--surface){--_container-color:var(--md-fab-container-color, var(--md-sys-color-surface-container-high));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-primary))}:host(.md-fab--surface.md-fab--lowered){--_container-color:var(--md-fab-container-color, var(--md-sys-color-surface-container-low))}:host(.md-fab--primary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary-container))}:host(.md-fab--secondary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-secondary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-secondary-container))}:host(.md-fab--tertiary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-tertiary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-tertiary-container))}:host(.md-fab--primary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary))}:host(.md-fab--secondary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-secondary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-secondary))}:host(.md-fab--tertiary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-tertiary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-tertiary))}:host(.md-fab--lowered){--_container-elevation:var(--md-sys-elevation-1)}:host(.md-fab--lowered:hover){--_container-elevation:var(--md-sys-elevation-2)}:host(.md-fab--lowered:focus-visible){--_container-elevation:var(--md-sys-elevation-1)}:host(.md-fab--lowered:active){--_container-elevation:var(--md-sys-elevation-1)}:host(:hover){--_container-elevation:var(--md-sys-elevation-4)}:host(:focus-visible){--_container-elevation:var(--md-sys-elevation-3)}:host(:active){--_container-elevation:var(--md-sys-elevation-3)}.md-fab__state-layer{position:absolute;inset:0;border-radius:inherit;background-color:var(--_state-layer-color);opacity:0;transition:opacity 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));pointer-events:none}:host(:hover) .md-fab__state-layer{opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08)}:host(:focus-visible) .md-fab__state-layer{opacity:var(--md-sys-state-focus-state-layer-opacity, 0.10)}:host(:active) .md-fab__state-layer{opacity:var(--md-sys-state-pressed-state-layer-opacity, 0.10)}:host(:focus-visible){outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}:host(.md-fab--disabled){cursor:default;pointer-events:none;--_container-elevation:var(--md-sys-elevation-0, none) !important;--_container-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_icon-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent)}:host([soft-disabled]){cursor:default;pointer-events:auto}:host([soft-disabled]) .md-fab__state-layer{display:none}:host(.md-fab--disabled:hover) .md-fab__state-layer,:host(.md-fab--disabled:active) .md-fab__state-layer,:host(.md-fab--disabled:focus-visible) .md-fab__state-layer{opacity:0}.md-fab__icon{color:var(--md-fab-icon-color, inherit);font-size:var(--_icon-size, 24px);width:var(--_icon-size, 24px);height:var(--_icon-size, 24px);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), transform 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1))}:host([data-icon-morphing]) .md-fab__icon{opacity:0;transform:rotate(-90deg) scale(0.6)}slot[name="icon"]{display:contents}::slotted([slot="icon"]){color:var(--md-fab-icon-color, inherit);width:var(--_icon-size, 24px);height:var(--_icon-size, 24px);display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;transition:opacity 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), transform 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1))}:host([data-icon-morphing]) ::slotted([slot="icon"]){opacity:0;transform:rotate(-90deg) scale(0.6)}.md-fab__label{color:var(--md-fab-label-color, inherit);display:flex;align-items:center;white-space:nowrap;overflow:hidden;max-inline-size:var(--_fab-label-w, 240px);opacity:1;transition:max-inline-size var(--_morph-spatial-duration) var(--_morph-spatial-easing), margin-inline-start var(--_morph-spatial-duration) var(--_morph-spatial-easing), opacity var(--_morph-effects-duration) var(--_morph-effects-easing)}:host(.md-fab--with-icon) .md-fab__label{margin-inline-start:var(--md-sys-spacing-inset-md, 12px)}:host(.md-fab--collapsed) .md-fab__label{max-inline-size:0;margin-inline-start:0;opacity:0}.material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-weight:normal;font-style:normal;font-size:var(--_icon-size, 24px);line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;overflow-wrap:normal;direction:ltr;font-feature-settings:'liga';-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion: reduce){:host{transition:none}.md-fab__state-layer{transition:none}}@media (forced-colors: active){:host{border:1px solid ButtonText;background-color:ButtonFace;color:ButtonText;forced-color-adjust:none}:host(:focus-visible){outline-color:Highlight}:host(.md-fab--disabled){border-color:GrayText;color:GrayText;opacity:1}.md-fab__state-layer{display:none}.md-fab__icon,.md-fab__label{color:inherit}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const n=class{constructor(o){a(this,o);this.mdClick=e(this,"mdClick",7);this.variant="primary-container";this.size="standard";this.disabled=false;this.softDisabled=false;this.lowered=false;this.ripple=true;this.icon="";this.label="";this.density=0;this.hasSlottedIcon=false;this.authoredAccessibleName=false;this.handleClick=a=>{if(this.isDisabled){a.preventDefault();return}this.mdClick.emit(a)};this.handleKeyDown=a=>{if(a.key==="Enter"||a.key===" "){a.preventDefault();if(!this.isDisabled){t(this.el);this.el.click()}}}}get isDisabled(){return this.disabled||this.softDisabled}componentWillLoad(){this.authoredAccessibleName=this.el.hasAttribute("aria-label")||this.el.hasAttribute("aria-labelledby");this.hasSlottedIcon=Array.from(this.el.children).some((a=>a.getAttribute("slot")==="icon"))}componentDidLoad(){const a=this.el.shadowRoot;if(!a)return;const e=a.querySelector('slot[name="icon"]');e?.addEventListener("slotchange",(()=>{this.hasSlottedIcon=e.assignedElements().length>0}));this.measureLabel();requestAnimationFrame((()=>{this.measureLabel();this.el.setAttribute("data-ready","")}));if(typeof document!=="undefined"&&"fonts"in document){document.fonts.ready.then((()=>this.measureLabel()))}if(typeof window!=="undefined"&&window.__STENCIL_DEV_MODE__!==false){this.warnMissingAccessibleName()}}componentDidRender(){this.measureLabel()}onLabelChange(){this.measureLabel()}measureLabel(){const a=this.el.shadowRoot?.querySelector(".md-fab__label");if(a&&a.scrollWidth>0){this.el.style.setProperty("--_fab-label-w",`${a.scrollWidth}px`)}}warnMissingAccessibleName(){if(!this.authoredAccessibleName&&!this.label){console.warn(`[md-fab] WCAG 1.1.1: Icon-only FAB is missing an accessible name. `+`Add aria-label or aria-labelledby to <${this.el.tagName.toLowerCase()}>.`,this.el)}}render(){const a=this.isDisabled;const e=!!this.label;const i=this.extended===undefined?e:this.extended;const t=!!this.icon;const r=this.authoredAccessibleName;return o(s,{key:"9f38d5a63ee3ff8d86b361e83917091a3550a415",class:{"md-fab":true,[`md-fab--${this.variant}`]:true,[`md-fab--${this.size}`]:!e,"md-fab--extended":e&&i,"md-fab--collapsed":e&&!i,"md-fab--with-icon":t||this.hasSlottedIcon,"md-fab--lowered":this.lowered,"md-fab--disabled":this.disabled||this.softDisabled},role:"button","aria-label":e&&!r?this.label:undefined,"aria-disabled":a?"true":"false",tabindex:this.disabled?"-1":"0",onClick:this.handleClick,onKeyDown:this.handleKeyDown},this.ripple&&o("md-ripple",{key:"5a0114263fe2817f3b7466fc4ec757403e31c203",disabled:a}),o("span",{key:"d4a45e41c4982d48212672e1ae87a3721edaf9b7",class:"md-fab__state-layer",part:"state-layer","aria-hidden":"true"}),o("slot",{key:"dddb0c1469a57e06af7fc9eea94f4acc5a9f5cf8",name:"icon"},t&&o("span",{key:"47d5415adbdfd8629f6efe67c799a59058496f7e",class:"md-fab__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon)),e&&o("span",{key:"b2cf917ff3886b0adfb909ecde641fc1bd0ce1fd",class:"md-fab__label",part:"label","aria-hidden":!i?"true":undefined},this.label))}get el(){return i(this)}static get watchers(){return{label:[{onLabelChange:0}]}}};n.style=r();export{n as md_fab};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as a,c as e,h as o,H as s,g as i}from"./p-WmvQpZnM.js";import{t}from"./p-DYBUr7K_.js";const r=()=>`:host{--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary-container));--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px));--_container-elevation:var(--md-sys-elevation-3);--_state-layer-color:var(--_icon-color);--_morph-spatial-duration:var(--md-sys-motion-spring-spatial-default-duration, 500ms);--_morph-spatial-easing:var( --md-sys-motion-spring-spatial-default-easing, cubic-bezier(0.38, 1.21, 0.22, 1) );--_morph-effects-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_morph-effects-easing:var( --md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.8, 0.34, 1) );display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:pointer;user-select:none;border:none;outline:none;box-sizing:border-box;background-color:var(--_container-color);color:var(--_icon-color);border-radius:var(--_container-shape);box-shadow:var(--_container-elevation);transition:box-shadow 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)), background-color 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)), border-radius var(--md-sys-motion-duration-short4, 200ms) var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), color var(--md-sys-motion-duration-short4, 200ms) var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), min-width var(--_morph-spatial-duration) var(--_morph-spatial-easing), padding-inline-start var(--_morph-spatial-duration) var(--_morph-spatial-easing), padding-inline-end var(--_morph-spatial-duration) var(--_morph-spatial-easing);-webkit-tap-highlight-color:transparent;vertical-align:middle}:host(:not([data-ready])),:host(:not([data-ready])) .md-fab__label{transition:none}:host([data-shape="circle"]){border-radius:50%}:host(.md-fab--standard){--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));width:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px));height:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--medium){--_icon-size:var(--md-fab-icon-size, max(21px, calc(28px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-extra-large, 28px));width:max(64px, calc(80px + var(--md-sys-density-scale, 0) * 4px));height:max(64px, calc(80px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--large){--_icon-size:var(--md-fab-icon-size, max(27px, calc(36px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-extra-large, 28px));width:max(80px, calc(96px + var(--md-sys-density-scale, 0) * 4px));height:max(80px, calc(96px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--extended),:host(.md-fab--collapsed){--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));height:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px));width:auto;padding-inline:max(12px, calc(20px + var(--md-sys-density-scale, 0) * 2px));font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);font-size:max(11px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-large-font-weight, 500);letter-spacing:var(--md-sys-typescale-label-large-letter-spacing, 0.1px);line-height:var(--md-sys-typescale-label-large-line-height, 20px)}:host(.md-fab--extended){min-width:80px}:host(.md-fab--extended.md-fab--with-icon){padding-inline:var(--md-sys-spacing-inset-lg, 16px) 20px}:host(.md-fab--collapsed){min-width:56px}:host(.md-fab--collapsed.md-fab--with-icon){padding-inline:var(--md-sys-spacing-inset-lg, 16px)}:host(.md-fab--surface){--_container-color:var(--md-fab-container-color, var(--md-sys-color-surface-container-high));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-primary))}:host(.md-fab--surface.md-fab--lowered){--_container-color:var(--md-fab-container-color, var(--md-sys-color-surface-container-low))}:host(.md-fab--primary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary-container))}:host(.md-fab--secondary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-secondary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-secondary-container))}:host(.md-fab--tertiary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-tertiary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-tertiary-container))}:host(.md-fab--primary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary))}:host(.md-fab--secondary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-secondary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-secondary))}:host(.md-fab--tertiary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-tertiary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-tertiary))}:host(.md-fab--lowered){--_container-elevation:var(--md-sys-elevation-1)}:host(.md-fab--lowered:hover){--_container-elevation:var(--md-sys-elevation-2)}:host(.md-fab--lowered:focus-visible){--_container-elevation:var(--md-sys-elevation-1)}:host(.md-fab--lowered:active){--_container-elevation:var(--md-sys-elevation-1)}:host(:hover){--_container-elevation:var(--md-sys-elevation-4)}:host(:focus-visible){--_container-elevation:var(--md-sys-elevation-3)}:host(:active){--_container-elevation:var(--md-sys-elevation-3)}.md-fab__state-layer{position:absolute;inset:0;border-radius:inherit;background-color:var(--_state-layer-color);opacity:0;transition:opacity 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));pointer-events:none}:host(:hover) .md-fab__state-layer{opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08)}:host(:focus-visible) .md-fab__state-layer{opacity:var(--md-sys-state-focus-state-layer-opacity, 0.10)}:host(:active) .md-fab__state-layer{opacity:var(--md-sys-state-pressed-state-layer-opacity, 0.10)}:host(:focus-visible){outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}:host(.md-fab--disabled){cursor:default;pointer-events:none;--_container-elevation:var(--md-sys-elevation-0, none) !important;--_container-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_icon-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent)}:host([soft-disabled]){cursor:default;pointer-events:auto}:host([soft-disabled]) .md-fab__state-layer{display:none}:host(.md-fab--disabled:hover) .md-fab__state-layer,:host(.md-fab--disabled:active) .md-fab__state-layer,:host(.md-fab--disabled:focus-visible) .md-fab__state-layer{opacity:0}.md-fab__icon{color:var(--md-fab-icon-color, inherit);font-size:var(--_icon-size, 24px);width:var(--_icon-size, 24px);height:var(--_icon-size, 24px);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), transform 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1))}:host([data-icon-morphing]) .md-fab__icon{opacity:0;transform:rotate(-90deg) scale(0.6)}slot[name="icon"]{display:contents}::slotted([slot="icon"]){color:var(--md-fab-icon-color, inherit);width:var(--_icon-size, 24px);height:var(--_icon-size, 24px);display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;transition:opacity 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), transform 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1))}:host([data-icon-morphing]) ::slotted([slot="icon"]){opacity:0;transform:rotate(-90deg) scale(0.6)}.md-fab__label{color:var(--md-fab-label-color, inherit);display:flex;align-items:center;white-space:nowrap;overflow:hidden;max-inline-size:var(--_fab-label-w, 240px);opacity:1;transition:max-inline-size var(--_morph-spatial-duration) var(--_morph-spatial-easing), margin-inline-start var(--_morph-spatial-duration) var(--_morph-spatial-easing), opacity var(--_morph-effects-duration) var(--_morph-effects-easing)}:host(.md-fab--with-icon) .md-fab__label{margin-inline-start:var(--md-sys-spacing-inset-md, 12px)}:host(.md-fab--collapsed) .md-fab__label{max-inline-size:0;margin-inline-start:0;opacity:0}.material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-weight:normal;font-style:normal;font-size:var(--_icon-size, 24px);line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;overflow-wrap:normal;direction:ltr;font-feature-settings:'liga';-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion: reduce){:host{transition:none}.md-fab__state-layer{transition:none}}@media (forced-colors: active){:host{border:1px solid ButtonText;background-color:ButtonFace;color:ButtonText;forced-color-adjust:none}:host(:focus-visible){outline-color:Highlight}:host(.md-fab--disabled){border-color:GrayText;color:GrayText;opacity:1}.md-fab__state-layer{display:none}.md-fab__icon,.md-fab__label{color:inherit}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const n=class{constructor(o){a(this,o);this.mdClick=e(this,"mdClick",7);this.variant="primary-container";this.size="standard";this.disabled=false;this.softDisabled=false;this.lowered=false;this.ripple=true;this.icon="";this.label="";this.density=0;this.hasSlottedIcon=false;this.authoredAccessibleName=false;this.handleClick=a=>{if(this.isDisabled){a.preventDefault();return}this.mdClick.emit(a)};this.handleKeyDown=a=>{if(a.key==="Enter"||a.key===" "){a.preventDefault();if(!this.isDisabled){t(this.el);this.el.click()}}}}get isDisabled(){return this.disabled||this.softDisabled}componentWillLoad(){this.authoredAccessibleName=this.el.hasAttribute("aria-label")||this.el.hasAttribute("aria-labelledby");this.hasSlottedIcon=Array.from(this.el.children).some((a=>a.getAttribute("slot")==="icon"))}componentDidLoad(){const a=this.el.shadowRoot;if(!a)return;const e=a.querySelector('slot[name="icon"]');e?.addEventListener("slotchange",(()=>{this.hasSlottedIcon=e.assignedElements().length>0}));this.measureLabel();requestAnimationFrame((()=>{this.measureLabel();this.el.setAttribute("data-ready","")}));if(typeof document!=="undefined"&&"fonts"in document){document.fonts.ready.then((()=>this.measureLabel()))}if(typeof window!=="undefined"&&window.__STENCIL_DEV_MODE__!==false){this.warnMissingAccessibleName()}}componentDidRender(){this.measureLabel()}onLabelChange(){this.measureLabel()}measureLabel(){const a=this.el.shadowRoot?.querySelector(".md-fab__label");if(a&&a.scrollWidth>0){this.el.style.setProperty("--_fab-label-w",`${a.scrollWidth}px`)}}warnMissingAccessibleName(){if(!this.authoredAccessibleName&&!this.label){console.warn(`[md-fab] WCAG 1.1.1: Icon-only FAB is missing an accessible name. `+`Add aria-label or aria-labelledby to <${this.el.tagName.toLowerCase()}>.`,this.el)}}render(){const a=this.isDisabled;const e=!!this.label;const i=this.extended===undefined?e:this.extended;const t=!!this.icon;const r=this.authoredAccessibleName;return o(s,{key:"fbd2c3ad0b52387a0560e11b68482fe84468390a",class:{"md-fab":true,[`md-fab--${this.variant}`]:true,[`md-fab--${this.size}`]:!e,"md-fab--extended":e&&i,"md-fab--collapsed":e&&!i,"md-fab--with-icon":t||this.hasSlottedIcon,"md-fab--lowered":this.lowered,"md-fab--disabled":this.disabled||this.softDisabled},role:"button","aria-label":e&&!r?this.label:undefined,"aria-disabled":a?"true":"false",tabindex:this.disabled?"-1":"0",onClick:this.handleClick,onKeyDown:this.handleKeyDown},this.ripple&&o("md-ripple",{key:"cb9339ab1f4517d6f1a20e0ab85e8a776ff02d98",disabled:a}),o("span",{key:"7b75ba2f21d7081da580edd470a7ce8a15781532",class:"md-fab__state-layer",part:"state-layer","aria-hidden":"true"}),o("slot",{key:"b2918b686e306493fdb0364322a4667934428b03",name:"icon"},t&&o("span",{key:"7a3bc8d8edfc1a1df416e4fc9799a6d3a8c26217",class:"md-fab__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon)),e&&o("span",{key:"2256df4b1377109e3f4edd843863c4bcaa3cccb4",class:"md-fab__label",part:"label","aria-hidden":!i?"true":undefined},this.label))}get el(){return i(this)}static get watchers(){return{label:[{onLabelChange:0}]}}};n.style=r();export{n as md_fab};
|
|
2
|
+
//# sourceMappingURL=p-dcba2857.entry.js.map
|