@actabldesign/bellhop-core 0.3.0 → 0.3.1
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/components/bh-accordion-item.js +1 -1
- package/components/bh-activity-feed.js +1 -1
- package/components/bh-alert.js +1 -1
- package/components/bh-appbar.js +1 -1
- package/components/bh-avatar-add.js +1 -1
- package/components/bh-avatar-stacked.js +1 -1
- package/components/bh-avatar.js +1 -1
- package/components/bh-badge-dot.js +1 -1
- package/components/bh-badge.js +1 -1
- package/components/bh-banner.js +1 -1
- package/components/bh-bar-chart.js +1 -1
- package/components/bh-breadcrumbs.js +1 -1
- package/components/bh-button-icon.js +1 -1
- package/components/bh-button.js +1 -1
- package/components/bh-card-content.js +1 -1
- package/components/bh-card-footer.js +1 -1
- package/components/bh-card-header.js +1 -1
- package/components/bh-card.js +1 -1
- package/components/bh-chart-tooltip.js +1 -1
- package/components/bh-chat-message.js +1 -1
- package/components/bh-chat-reaction.js +1 -1
- package/components/bh-checkbox.js +1 -1
- package/components/bh-checklist-task-group.js +1 -1
- package/components/bh-close-button.js +1 -1
- package/components/bh-command-bar.d.ts +11 -0
- package/components/bh-command-bar.js +1 -0
- package/components/bh-container-footer.js +1 -1
- package/components/bh-container.js +1 -1
- package/components/bh-credit-card.js +1 -1
- package/components/bh-data-grid-body.js +1 -1
- package/components/bh-data-grid-change-preview.js +1 -1
- package/components/bh-data-grid-filter-builder.js +1 -1
- package/components/bh-data-grid-footer.js +1 -1
- package/components/bh-data-grid-header.js +1 -1
- package/components/bh-data-grid-toolbar.js +1 -1
- package/components/bh-data-grid.js +2 -2
- package/components/bh-date-picker-content.js +1 -1
- package/components/bh-date-picker.js +1 -1
- package/components/bh-date-range-picker-content.js +1 -1
- package/components/bh-date-range-picker.js +1 -1
- package/components/bh-divider.js +1 -1
- package/components/bh-dropdown-menu.js +1 -1
- package/components/bh-dropdown.js +1 -1
- package/components/bh-emoji-picker.js +1 -1
- package/components/bh-empty-state.js +1 -1
- package/components/bh-fab.js +1 -1
- package/components/bh-featured-icon.js +1 -1
- package/components/bh-feed-item.js +1 -1
- package/components/bh-gauge-chart.js +1 -1
- package/components/bh-guided-checklist.js +1 -1
- package/components/bh-html-editor-bubble-menu.js +1 -1
- package/components/bh-html-editor-toolbar.js +1 -1
- package/components/bh-html-editor.js +1 -1
- package/components/bh-illustrations.js +1 -1
- package/components/bh-inline-cta.js +1 -1
- package/components/bh-input-autocomplete.js +1 -1
- package/components/bh-input-number.js +1 -1
- package/components/bh-input-password.js +1 -1
- package/components/bh-input-text.js +1 -1
- package/components/bh-input-verification.js +1 -1
- package/components/bh-kbd.d.ts +11 -0
- package/components/bh-kbd.js +1 -0
- package/components/bh-label.js +1 -1
- package/components/bh-line-chart.js +1 -1
- package/components/bh-logo-box.js +1 -1
- package/components/bh-menu-item.js +1 -1
- package/components/bh-menu.js +1 -1
- package/components/bh-modal-actions.js +1 -1
- package/components/bh-modal-header.js +1 -1
- package/components/bh-month-picker-content.js +1 -1
- package/components/bh-month-picker.js +1 -1
- package/components/bh-multi-select.js +1 -1
- package/components/bh-nav-item.js +1 -1
- package/components/bh-notification-center.d.ts +11 -0
- package/components/bh-notification-center.js +1 -0
- package/components/bh-page-header.js +1 -1
- package/components/bh-page-navigation-child.js +1 -1
- package/components/bh-page-navigation-multi-level.js +1 -1
- package/components/bh-page-navigation-single-level.js +1 -1
- package/components/bh-page-navigation.js +1 -1
- package/components/bh-pagination.js +1 -1
- package/components/bh-picker-menu.js +1 -1
- package/components/bh-pie-chart.js +1 -1
- package/components/bh-pivot-grid-field-chooser.js +1 -1
- package/components/bh-pivot-grid.js +1 -1
- package/components/bh-progress-bar.js +1 -1
- package/components/bh-progress-ring.js +1 -1
- package/components/bh-property-switcher.js +1 -1
- package/components/bh-radar-chart.js +1 -1
- package/components/bh-radio-button.js +1 -1
- package/components/bh-radio-group.js +1 -1
- package/components/bh-range-slider.js +1 -1
- package/components/bh-section-footer.js +1 -1
- package/components/bh-section-header.js +1 -1
- package/components/bh-select.js +1 -1
- package/components/bh-selection-group-item.js +1 -1
- package/components/bh-selection-group.js +1 -1
- package/components/bh-side-panel-footer.js +1 -1
- package/components/bh-side-panel-header.js +1 -1
- package/components/bh-sidebar.js +1 -1
- package/components/bh-skeleton-loader.js +1 -1
- package/components/bh-stepper.js +1 -1
- package/components/bh-tab-item.js +1 -1
- package/components/bh-table-header.js +1 -1
- package/components/bh-tabs.js +1 -1
- package/components/bh-tag-group.js +1 -1
- package/components/bh-tag-input.js +1 -1
- package/components/bh-tag.js +1 -1
- package/components/bh-textarea.js +1 -1
- package/components/bh-toast-container.js +1 -1
- package/components/bh-toast.js +1 -1
- package/components/bh-toggle.js +1 -1
- package/components/bh-tooltip.js +1 -1
- package/components/bh-trend-chart.js +1 -1
- package/components/index.d.ts +6 -0
- package/components/index.js +1 -1
- package/components/{p-BVwh7Zds.js → p-2SnKTVal.js} +1 -1
- package/components/{p-DpyQ9_VL.js → p-6tew_a-x.js} +1 -1
- package/components/{p-BUoq_1rz.js → p-B7La6Iwp.js} +1 -1
- package/components/p-B8HxD-vO.js +1 -0
- package/components/{p-CdwBDbHF.js → p-B9--bog4.js} +1 -1
- package/components/{p-D_0aDuRr.js → p-BF5hfv7s.js} +1 -1
- package/components/{p-oaisznHL.js → p-BI2Y2Le4.js} +1 -1
- package/components/p-Be6mIKzo.js +1 -0
- package/components/p-Bh0oD_Yf.js +1 -0
- package/components/{p-nMu0IHKp.js → p-BniMhcxp.js} +1 -1
- package/components/{p-CZRjavNE.js → p-Br9M2BbM.js} +1 -1
- package/components/{p-QCa_P3zY.js → p-BwxcuFPS.js} +1 -1
- package/components/{p-Dq8Cpk56.js → p-BzHDM9Tg.js} +1 -1
- package/components/{p-D-D80sUk.js → p-C4rAmars.js} +1 -1
- package/components/{p-B2KPN863.js → p-C7fkgBQS.js} +1 -1
- package/components/{p-cD3vmu49.js → p-CClVva-u.js} +1 -1
- package/components/p-CJUnjRCe.js +1 -0
- package/components/{p--a7Uv1ky.js → p-CK_Py1Yi.js} +1 -1
- package/components/{p-DjJP-dIm.js → p-CWdw6bHR.js} +1 -1
- package/components/{p-XYHjFWDD.js → p-CZ_H3nat.js} +1 -1
- package/components/{p-CtaODgcw.js → p-C_nrq7_Y.js} +1 -1
- package/components/{p-BFL2Pm_E.js → p-CssmbrSc.js} +1 -1
- package/components/p-CvsupUaF.js +1 -0
- package/components/{p-DBAPExTG.js → p-CvwyG_Kj.js} +1 -1
- package/components/{p-Bf_iTZDv.js → p-D6aw0IK6.js} +1 -1
- package/components/{p-CzvaS9up.js → p-DBl9mNfN.js} +1 -1
- package/components/{p-DWoyQVnq.js → p-DG90uKhz.js} +1 -1
- package/components/{p-CWY9YV_9.js → p-DGWzDn9Y.js} +1 -1
- package/components/p-DJlRFgcj.js +1 -0
- package/components/p-DKWhUGrV.js +1 -0
- package/components/{p-CC_DXFwx.js → p-DSDbfC31.js} +1 -1
- package/components/{p-1SkDR91n.js → p-DUm7JrA0.js} +1 -1
- package/components/{p-C6UC_xxP.js → p-DblmzWu8.js} +1 -1
- package/components/{p-BHeNnP2q.js → p-DfCONXO0.js} +1 -1
- package/components/p-DhgfM7Wy.js +1 -0
- package/components/{p-Xa6gUVGr.js → p-DjUfsCJJ.js} +1 -1
- package/components/{p-CVSRqFZ0.js → p-DjpXtbw8.js} +1 -1
- package/components/{p-GjWzFf-V.js → p-Dzlsnb7d.js} +1 -1
- package/components/{p-Be20AcNb.js → p-S-miu3h6.js} +1 -1
- package/components/{p-DIMoIy0w.js → p-W2SGLZN7.js} +1 -1
- package/components/{p-arW9uaFJ.js → p-hhv9O2Qq.js} +1 -1
- package/components/{p-BwwSI2Fv.js → p-jNp3nckG.js} +1 -1
- package/dist/bellhop-core/bellhop-core.esm.js +1 -1
- package/dist/bellhop-core/p-009efb12.entry.js +1 -0
- package/dist/bellhop-core/p-01b505e3.entry.js +1 -0
- package/dist/bellhop-core/p-02945f90.entry.js +1 -0
- package/dist/bellhop-core/p-04d2ec72.entry.js +1 -0
- package/dist/bellhop-core/p-05867224.entry.js +1 -0
- package/dist/bellhop-core/p-05a53d3b.entry.js +1 -0
- package/dist/bellhop-core/p-0692ab72.entry.js +1 -0
- package/dist/bellhop-core/p-06f9b713.entry.js +1 -0
- package/dist/bellhop-core/p-08b8ba36.entry.js +1 -0
- package/dist/bellhop-core/p-0953e008.entry.js +1 -0
- package/dist/bellhop-core/p-0976eb7a.entry.js +1 -0
- package/dist/bellhop-core/p-097d70d9.entry.js +1 -0
- package/dist/bellhop-core/p-0a316bb6.entry.js +1 -0
- package/dist/bellhop-core/p-108ca612.entry.js +1 -0
- package/dist/bellhop-core/p-12d3c4e9.entry.js +1 -0
- package/dist/bellhop-core/p-13f15f41.entry.js +1 -0
- package/dist/bellhop-core/p-15bb1050.entry.js +1 -0
- package/dist/bellhop-core/p-16e01b81.entry.js +1 -0
- package/dist/bellhop-core/p-188980bd.entry.js +1 -0
- package/dist/bellhop-core/p-1fba0985.entry.js +1 -0
- package/dist/bellhop-core/p-24e5c52b.entry.js +1 -0
- package/dist/bellhop-core/p-29729109.entry.js +1 -0
- package/dist/bellhop-core/p-2b93b512.entry.js +1 -0
- package/dist/bellhop-core/{p-213a104c.entry.js → p-2bcd94d0.entry.js} +1 -1
- package/dist/bellhop-core/p-2bdb9784.entry.js +1 -0
- package/dist/bellhop-core/p-2ee44b97.entry.js +1 -0
- package/dist/bellhop-core/p-3348400a.entry.js +1 -0
- package/dist/bellhop-core/p-38873b75.entry.js +1 -0
- package/dist/bellhop-core/p-399be504.entry.js +1 -0
- package/dist/bellhop-core/p-3d67e55f.entry.js +1 -0
- package/dist/bellhop-core/p-3dcf8812.entry.js +1 -0
- package/dist/bellhop-core/p-42f26142.entry.js +1 -0
- package/dist/bellhop-core/p-43d94b51.entry.js +1 -0
- package/dist/bellhop-core/p-4c65d80a.entry.js +1 -0
- package/dist/bellhop-core/p-4e4b59cc.entry.js +1 -0
- package/dist/bellhop-core/p-50c00ac6.entry.js +1 -0
- package/dist/bellhop-core/p-52d0c0ac.entry.js +1 -0
- package/dist/bellhop-core/p-53ddab62.entry.js +1 -0
- package/dist/bellhop-core/p-558c1c9f.entry.js +1 -0
- package/dist/bellhop-core/{p-fb8e0e6c.entry.js → p-59feba80.entry.js} +1 -1
- package/dist/bellhop-core/{p-165b45f3.entry.js → p-5a49ebee.entry.js} +1 -1
- package/dist/bellhop-core/p-5f5648e6.entry.js +1 -0
- package/dist/bellhop-core/p-614f84ff.entry.js +1 -0
- package/dist/bellhop-core/p-6517c63b.entry.js +1 -0
- package/dist/bellhop-core/{p-c86b7e41.entry.js → p-654de2b6.entry.js} +1 -1
- package/dist/bellhop-core/p-65e10ead.entry.js +1 -0
- package/dist/bellhop-core/p-68c5a0bd.entry.js +1 -0
- package/dist/bellhop-core/p-68cf8430.entry.js +1 -0
- package/dist/bellhop-core/p-6ad1ed53.entry.js +1 -0
- package/dist/bellhop-core/p-6df539be.entry.js +1 -0
- package/dist/bellhop-core/p-6e1c1c27.entry.js +1 -0
- package/dist/bellhop-core/p-710e4da7.entry.js +1 -0
- package/dist/bellhop-core/p-7841fbc2.entry.js +1 -0
- package/dist/bellhop-core/p-7bceb793.entry.js +1 -0
- package/dist/bellhop-core/p-7bd58fae.entry.js +1 -0
- package/dist/bellhop-core/p-7c0d23d4.entry.js +1 -0
- package/dist/bellhop-core/p-7e226f98.entry.js +1 -0
- package/dist/bellhop-core/{p-4a96c207.entry.js → p-815fb83e.entry.js} +1 -1
- package/dist/bellhop-core/p-832bf58d.entry.js +1 -0
- package/dist/bellhop-core/p-8370a956.entry.js +1 -0
- package/dist/bellhop-core/{p-b992fd96.entry.js → p-858017eb.entry.js} +1 -1
- package/dist/bellhop-core/p-87c827d7.entry.js +1 -0
- package/dist/bellhop-core/p-8a38724f.entry.js +1 -0
- package/dist/bellhop-core/p-8aa87a99.entry.js +1 -0
- package/dist/bellhop-core/p-8ad4d720.entry.js +1 -0
- package/dist/bellhop-core/p-8d319614.entry.js +1 -0
- package/dist/bellhop-core/p-963e6ad9.entry.js +1 -0
- package/dist/bellhop-core/p-97bed0b0.entry.js +1 -0
- package/dist/bellhop-core/{p-df4c2032.entry.js → p-9b2d67db.entry.js} +2 -2
- package/dist/bellhop-core/p-9b935b1a.entry.js +1 -0
- package/dist/bellhop-core/p-9cf187af.entry.js +1 -0
- package/dist/bellhop-core/p-9e0b9dec.entry.js +1 -0
- package/dist/bellhop-core/p-CBTS9Vhx.js +1 -0
- package/dist/bellhop-core/{p-Dn-MvAk9.js → p-CKTtXT2O.js} +1 -1
- package/dist/bellhop-core/p-CMKOFHIa.js +1 -0
- package/dist/bellhop-core/p-Xi3uD33F.js +1 -0
- package/dist/bellhop-core/p-a57034cf.entry.js +1 -0
- package/dist/bellhop-core/p-a925a3d8.entry.js +1 -0
- package/dist/bellhop-core/p-abf0f15d.entry.js +1 -0
- package/dist/bellhop-core/p-b212b4c1.entry.js +1 -0
- package/dist/bellhop-core/p-b2380f56.entry.js +1 -0
- package/dist/bellhop-core/p-b333c85f.entry.js +1 -0
- package/dist/bellhop-core/p-b9d363b0.entry.js +1 -0
- package/dist/bellhop-core/p-b9d86b80.entry.js +1 -0
- package/dist/bellhop-core/p-baa76b6d.entry.js +1 -0
- package/dist/bellhop-core/p-bb11a7df.entry.js +1 -0
- package/dist/bellhop-core/p-bcc53e7e.entry.js +1 -0
- package/dist/bellhop-core/p-c0513194.entry.js +1 -0
- package/dist/bellhop-core/p-c1eed46c.entry.js +1 -0
- package/dist/bellhop-core/p-c2440a5a.entry.js +1 -0
- package/dist/bellhop-core/p-c338d5ed.entry.js +1 -0
- package/dist/bellhop-core/p-c4cd8445.entry.js +1 -0
- package/dist/bellhop-core/p-cd404c53.entry.js +1 -0
- package/dist/bellhop-core/p-d2fdf27a.entry.js +1 -0
- package/dist/bellhop-core/p-d89a2316.entry.js +1 -0
- package/dist/bellhop-core/p-d9903fd1.entry.js +1 -0
- package/dist/bellhop-core/p-df86ac00.entry.js +1 -0
- package/dist/bellhop-core/p-dfc61397.entry.js +1 -0
- package/dist/bellhop-core/p-e02bdcfb.entry.js +1 -0
- package/dist/bellhop-core/p-e6ad9a10.entry.js +1 -0
- package/dist/bellhop-core/p-e86b4fbf.entry.js +1 -0
- package/dist/bellhop-core/p-eed85b08.entry.js +1 -0
- package/dist/bellhop-core/p-f0a47a26.entry.js +1 -0
- package/dist/bellhop-core/p-f46e818f.entry.js +1 -0
- package/dist/bellhop-core/p-f6c8568f.entry.js +1 -0
- package/dist/bellhop-core/p-f784164a.entry.js +1 -0
- package/dist/bellhop-core/p-f8d47699.entry.js +1 -0
- package/dist/bellhop-core/{p-1323f446.entry.js → p-f8dce3b6.entry.js} +1 -1
- package/dist/bellhop-core/p-f9962334.entry.js +1 -0
- package/dist/bellhop-core/p-fb897d66.entry.js +1 -0
- package/dist/cjs/bellhop-core.cjs.js +1 -1
- package/dist/cjs/bh-accordion-item.cjs.entry.js +4 -3
- package/dist/cjs/bh-accordion.cjs.entry.js +3 -2
- package/dist/cjs/bh-activity-feed_2.cjs.entry.js +174 -0
- package/dist/cjs/bh-alert.cjs.entry.js +4 -3
- package/dist/cjs/bh-appbar.cjs.entry.js +57 -11
- package/dist/cjs/bh-autocomplete-menu.cjs.entry.js +3 -2
- package/dist/cjs/bh-avatar-add.cjs.entry.js +4 -3
- package/dist/cjs/bh-avatar-stacked.cjs.entry.js +4 -3
- package/dist/cjs/bh-avatar.cjs.entry.js +6 -5
- package/dist/cjs/bh-badge-dot_2.cjs.entry.js +8 -7
- package/dist/cjs/bh-badge.cjs.entry.js +6 -5
- package/dist/cjs/bh-banner.cjs.entry.js +5 -4
- package/dist/cjs/bh-bar-chart.cjs.entry.js +5 -4
- package/dist/cjs/bh-breadcrumbs.cjs.entry.js +16 -5
- package/dist/cjs/bh-button-icon_2.cjs.entry.js +5 -4
- package/dist/cjs/bh-button.cjs.entry.js +5 -4
- package/dist/cjs/bh-card-content.cjs.entry.js +4 -3
- package/dist/cjs/bh-card-footer.cjs.entry.js +4 -3
- package/dist/cjs/bh-card-header.cjs.entry.js +4 -3
- package/dist/cjs/bh-card.cjs.entry.js +4 -3
- package/dist/cjs/bh-chart-tooltip.cjs.entry.js +5 -4
- package/dist/cjs/bh-chat-message.cjs.entry.js +5 -4
- package/dist/cjs/bh-chat-reaction.cjs.entry.js +5 -4
- package/dist/cjs/bh-checkbox.cjs.entry.js +3 -2
- package/dist/cjs/bh-checklist-task-group_3.cjs.entry.js +6 -5
- package/dist/cjs/bh-close-button.cjs.entry.js +1 -1
- package/dist/cjs/bh-command-bar.cjs.entry.js +309 -0
- package/dist/cjs/bh-container-footer.cjs.entry.js +4 -3
- package/dist/cjs/bh-container.cjs.entry.js +4 -3
- package/dist/cjs/bh-credit-card.cjs.entry.js +4 -3
- package/dist/cjs/bh-data-grid-body.cjs.entry.js +3 -2
- package/dist/cjs/bh-data-grid-change-preview.cjs.entry.js +3 -2
- package/dist/cjs/bh-data-grid-filter-builder.cjs.entry.js +3 -2
- package/dist/cjs/bh-data-grid-footer.cjs.entry.js +4 -3
- package/dist/cjs/bh-data-grid-header.cjs.entry.js +3 -2
- package/dist/cjs/bh-data-grid-toolbar.cjs.entry.js +4 -3
- package/dist/cjs/bh-data-grid.cjs.entry.js +4 -3
- package/dist/cjs/bh-date-picker-content.cjs.entry.js +6 -5
- package/dist/cjs/bh-date-picker.cjs.entry.js +6 -5
- package/dist/cjs/bh-date-range-picker-content.cjs.entry.js +5 -4
- package/dist/cjs/bh-date-range-picker.cjs.entry.js +7 -6
- package/dist/cjs/bh-divider.cjs.entry.js +4 -3
- package/dist/cjs/bh-dropdown-menu.cjs.entry.js +1 -1
- package/dist/cjs/bh-dropdown.cjs.entry.js +13 -4
- package/dist/cjs/bh-emoji-picker.cjs.entry.js +1 -1
- package/dist/cjs/bh-empty-state_2.cjs.entry.js +6 -5
- package/dist/cjs/bh-featured-icon.cjs.entry.js +4 -3
- package/dist/cjs/bh-gauge-chart.cjs.entry.js +5 -4
- package/dist/cjs/bh-guided-checklist.cjs.entry.js +5 -4
- package/dist/cjs/bh-html-editor-bubble-menu_2.cjs.entry.js +8 -7
- package/dist/cjs/bh-html-editor.cjs.entry.js +5 -4
- package/dist/cjs/bh-illustrations.cjs.entry.js +4 -3
- package/dist/cjs/bh-inline-cta.cjs.entry.js +5 -4
- package/dist/cjs/bh-input-autocomplete.cjs.entry.js +7 -6
- package/dist/cjs/bh-input-number.cjs.entry.js +5 -4
- package/dist/cjs/bh-input-password.cjs.entry.js +6 -5
- package/dist/cjs/bh-input-text.cjs.entry.js +5 -4
- package/dist/cjs/bh-input-verification.cjs.entry.js +4 -3
- package/dist/cjs/bh-kbd.cjs.entry.js +34 -0
- package/dist/cjs/bh-label_2.cjs.entry.js +5 -4
- package/dist/cjs/bh-line-chart.cjs.entry.js +5 -4
- package/dist/cjs/bh-logo-box_2.cjs.entry.js +8 -7
- package/dist/cjs/bh-menu_2.cjs.entry.js +4 -3
- package/dist/cjs/bh-modal-actions.cjs.entry.js +4 -3
- package/dist/cjs/bh-modal-header.cjs.entry.js +7 -6
- package/dist/cjs/bh-modal.cjs.entry.js +4 -3
- package/dist/cjs/bh-month-picker-content.cjs.entry.js +4 -3
- package/dist/cjs/bh-month-picker.cjs.entry.js +6 -5
- package/dist/cjs/bh-multi-select.cjs.entry.js +8 -7
- package/dist/cjs/bh-notification-center.cjs.entry.js +210 -0
- package/dist/cjs/bh-page-header.cjs.entry.js +4 -3
- package/dist/cjs/bh-page-navigation-child.cjs.entry.js +4 -3
- package/dist/cjs/bh-page-navigation-multi-level_2.cjs.entry.js +7 -6
- package/dist/cjs/bh-page-navigation.cjs.entry.js +4 -3
- package/dist/cjs/bh-pagination_2.cjs.entry.js +10 -9
- package/dist/cjs/bh-picker-menu.cjs.entry.js +3 -2
- package/dist/cjs/bh-pie-chart.cjs.entry.js +6 -5
- package/dist/cjs/bh-pivot-grid-field-chooser.cjs.entry.js +5 -4
- package/dist/cjs/bh-pivot-grid.cjs.entry.js +20 -19
- package/dist/cjs/bh-popover.cjs.entry.js +3 -2
- package/dist/cjs/bh-product-switcher.cjs.entry.js +3 -2
- package/dist/cjs/bh-progress-bar.cjs.entry.js +7 -6
- package/dist/cjs/bh-progress-ring.cjs.entry.js +1 -1
- package/dist/cjs/bh-property-switcher.cjs.entry.js +22 -5
- package/dist/cjs/bh-radar-chart.cjs.entry.js +5 -4
- package/dist/cjs/bh-radio-button.cjs.entry.js +3 -2
- package/dist/cjs/bh-radio-group.cjs.entry.js +4 -3
- package/dist/cjs/bh-range-slider.cjs.entry.js +4 -3
- package/dist/cjs/bh-section-footer.cjs.entry.js +4 -3
- package/dist/cjs/bh-section-header.cjs.entry.js +4 -3
- package/dist/cjs/bh-selection-group-item.cjs.entry.js +3 -2
- package/dist/cjs/bh-selection-group.cjs.entry.js +4 -3
- package/dist/cjs/bh-side-panel-footer.cjs.entry.js +1 -1
- package/dist/cjs/bh-side-panel-header.cjs.entry.js +1 -1
- package/dist/cjs/bh-sidebar.cjs.entry.js +19 -5
- package/dist/cjs/bh-stepper.cjs.entry.js +3 -2
- package/dist/cjs/bh-tab-item.cjs.entry.js +5 -4
- package/dist/cjs/bh-table-header.cjs.entry.js +4 -3
- package/dist/cjs/bh-tabs.cjs.entry.js +4 -3
- package/dist/cjs/bh-tag-group.cjs.entry.js +4 -3
- package/dist/cjs/bh-tag-input.cjs.entry.js +5 -4
- package/dist/cjs/bh-textarea.cjs.entry.js +5 -4
- package/dist/cjs/bh-toast-container.cjs.entry.js +1 -1
- package/dist/cjs/bh-toast.cjs.entry.js +5 -4
- package/dist/cjs/bh-toggle.cjs.entry.js +4 -3
- package/dist/cjs/bh-trend-chart.cjs.entry.js +5 -4
- package/dist/cjs/{component-error-handler-C4vfF_Qu.js → component-error-handler-BxXlGq4E.js} +1 -1
- package/dist/cjs/error-boundary-fNUNT0lE.js +75 -0
- package/dist/cjs/hotkeys-BzAUI8Zg.js +113 -0
- package/dist/cjs/index-B6sArKsK.js +20 -12
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{error-boundary-Bf7TcT4U.js → logger-DZionBgs.js} +0 -71
- package/dist/collection/collection-manifest.json +3 -0
- package/dist/collection/components/bh-accordion/bh-accordion-item/bh-accordion-item.js +1 -1
- package/dist/collection/components/bh-activity-feed/bh-activity-feed.css +8 -0
- package/dist/collection/components/bh-activity-feed/bh-activity-feed.js +29 -2
- package/dist/collection/components/bh-appbar/bh-appbar.css +28 -1
- package/dist/collection/components/bh-appbar/bh-appbar.js +220 -9
- package/dist/collection/components/bh-appbar/bh-notification-center/bh-notification-center.css +118 -0
- package/dist/collection/components/bh-appbar/bh-notification-center/bh-notification-center.js +513 -0
- package/dist/collection/components/bh-avatar/bh-avatar-add/bh-avatar-add.js +1 -1
- package/dist/collection/components/bh-avatar/bh-avatar-stacked/bh-avatar-stacked.js +1 -1
- package/dist/collection/components/bh-avatar/bh-avatar.css +8 -2
- package/dist/collection/components/bh-avatar/bh-avatar.js +2 -2
- package/dist/collection/components/bh-badge/bh-badge-dot/bh-badge-dot.js +1 -1
- package/dist/collection/components/bh-badge/bh-badge.js +2 -2
- package/dist/collection/components/bh-banner/bh-banner.js +2 -2
- package/dist/collection/components/bh-breadcrumbs/bh-breadcrumbs.css +3 -1
- package/dist/collection/components/bh-breadcrumbs/bh-breadcrumbs.js +14 -3
- package/dist/collection/components/bh-button/bh-button-icon/bh-button-icon.js +1 -1
- package/dist/collection/components/bh-button/bh-button.js +1 -1
- package/dist/collection/components/bh-card/bh-card-content/bh-card-content.js +1 -1
- package/dist/collection/components/bh-card/bh-card-footer/bh-card-footer.js +1 -1
- package/dist/collection/components/bh-card/bh-card-header/bh-card-header.js +1 -1
- package/dist/collection/components/bh-card/bh-card.js +1 -1
- package/dist/collection/components/bh-chart/bh-bar-chart/bh-bar-chart.js +2 -2
- package/dist/collection/components/bh-chart/bh-chart-tooltip/bh-chart-tooltip.js +2 -2
- package/dist/collection/components/bh-chart/bh-gauge-chart/bh-gauge-chart.js +2 -2
- package/dist/collection/components/bh-chart/bh-line-chart/bh-line-chart.js +2 -2
- package/dist/collection/components/bh-chart/bh-pie-chart/bh-pie-chart.js +3 -3
- package/dist/collection/components/bh-chart/bh-progress-bar/bh-progress-bar.js +4 -4
- package/dist/collection/components/bh-chart/bh-radar-chart/bh-radar-chart.js +2 -2
- package/dist/collection/components/bh-chart/bh-trend-chart/bh-trend-chart.js +2 -2
- package/dist/collection/components/bh-chat/bh-chat-message/bh-chat-message.js +2 -2
- package/dist/collection/components/bh-chat/bh-chat-reaction/bh-chat-reaction.js +2 -2
- package/dist/collection/components/bh-close-button/bh-close-button.js +1 -1
- package/dist/collection/components/bh-command-bar/bh-command-bar.css +181 -0
- package/dist/collection/components/bh-command-bar/bh-command-bar.figma.js +9 -0
- package/dist/collection/components/bh-command-bar/bh-command-bar.js +663 -0
- package/dist/collection/components/bh-container/bh-container-footer/bh-container-footer.js +1 -1
- package/dist/collection/components/bh-container/bh-container.js +1 -1
- package/dist/collection/components/bh-credit-card/bh-credit-card.js +1 -1
- package/dist/collection/components/bh-data-grid/bh-data-grid-footer.js +1 -1
- package/dist/collection/components/bh-data-grid/bh-data-grid-toolbar.js +1 -1
- package/dist/collection/components/bh-divider/bh-divider.js +1 -1
- package/dist/collection/components/bh-dropdown/bh-dropdown-menu/bh-dropdown-menu.js +1 -1
- package/dist/collection/components/bh-dropdown/bh-dropdown.js +29 -1
- package/dist/collection/components/bh-emoji-picker/bh-emoji-picker.js +1 -1
- package/dist/collection/components/bh-empty-state/bh-empty-state.js +1 -1
- package/dist/collection/components/bh-fab/bh-fab.js +2 -2
- package/dist/collection/components/bh-featured-icon/bh-featured-icon.js +1 -1
- package/dist/collection/components/bh-feed-item/bh-feed-item.css +9 -2
- package/dist/collection/components/bh-feed-item/bh-feed-item.js +81 -4
- package/dist/collection/components/bh-guided-checklist/bh-guided-checklist.js +1 -1
- package/dist/collection/components/bh-html-editor/bh-html-editor-bubble-menu/bh-html-editor-bubble-menu.js +3 -3
- package/dist/collection/components/bh-html-editor/bh-html-editor-toolbar/bh-html-editor-toolbar.js +1 -1
- package/dist/collection/components/bh-html-editor/bh-html-editor.js +2 -2
- package/dist/collection/components/bh-illustrations/bh-illustrations.js +1 -1
- package/dist/collection/components/bh-inline-cta/bh-inline-cta.js +2 -2
- package/dist/collection/components/bh-input/bh-input-autocomplete/bh-input-autocomplete.js +3 -3
- package/dist/collection/components/bh-input/bh-input-number/bh-input-number.js +2 -2
- package/dist/collection/components/bh-input/bh-input-password/bh-input-password.js +3 -3
- package/dist/collection/components/bh-input/bh-input-text/bh-input-text.js +2 -2
- package/dist/collection/components/bh-input/bh-input-verification/bh-input-verification.js +1 -1
- package/dist/collection/components/bh-input/bh-tag-input/bh-tag-input.js +2 -2
- package/dist/collection/components/bh-input/bh-textarea/bh-textarea.js +2 -2
- package/dist/collection/components/bh-kbd/bh-kbd.css +33 -0
- package/dist/collection/components/bh-kbd/bh-kbd.figma.js +11 -0
- package/dist/collection/components/bh-kbd/bh-kbd.js +78 -0
- package/dist/collection/components/bh-logo-box/bh-logo-box.js +2 -2
- package/dist/collection/components/bh-modal/bh-modal-actions/bh-modal-actions.js +1 -1
- package/dist/collection/components/bh-modal/bh-modal-header/bh-modal-header.js +4 -4
- package/dist/collection/components/bh-multi-select/bh-multi-select.js +3 -3
- package/dist/collection/components/bh-page-header/bh-page-header.js +2 -2
- package/dist/collection/components/bh-page-navigation/bh-page-navigation-child/bh-page-navigation-child.js +1 -1
- package/dist/collection/components/bh-page-navigation/bh-page-navigation-multi-level/bh-page-navigation-multi-level.js +2 -2
- package/dist/collection/components/bh-page-navigation/bh-page-navigation-single-level/bh-page-navigation-single-level.js +1 -1
- package/dist/collection/components/bh-page-navigation/bh-page-navigation.js +1 -1
- package/dist/collection/components/bh-pagination/bh-pagination.js +2 -2
- package/dist/collection/components/bh-picker/bh-date-picker/bh-date-picker-content/bh-date-picker-content.js +3 -3
- package/dist/collection/components/bh-picker/bh-date-picker/bh-date-picker.js +3 -3
- package/dist/collection/components/bh-picker/bh-date-range-picker/bh-date-range-picker-content/bh-date-range-picker-content.js +2 -2
- package/dist/collection/components/bh-picker/bh-date-range-picker/bh-date-range-picker.js +4 -4
- package/dist/collection/components/bh-picker/bh-month-picker/bh-month-picker-content/bh-month-picker-content.js +1 -1
- package/dist/collection/components/bh-picker/bh-month-picker/bh-month-picker.js +3 -3
- package/dist/collection/components/bh-pivot-grid/bh-pivot-grid-field-chooser/bh-pivot-grid-field-chooser.js +2 -2
- package/dist/collection/components/bh-pivot-grid/bh-pivot-grid.js +16 -16
- package/dist/collection/components/bh-progress-ring/bh-progress-ring.js +1 -1
- package/dist/collection/components/bh-property-switcher/bh-property-switcher.js +20 -4
- package/dist/collection/components/bh-radio-group/bh-radio-group.js +1 -1
- package/dist/collection/components/bh-range-slider/bh-range-slider.js +1 -1
- package/dist/collection/components/bh-section-footer/bh-section-footer.js +1 -1
- package/dist/collection/components/bh-section-header/bh-section-header.js +1 -1
- package/dist/collection/components/bh-select/bh-select.js +4 -4
- package/dist/collection/components/bh-selection-group/bh-selection-group.js +1 -1
- package/dist/collection/components/bh-side-panel/bh-side-panel-footer/bh-side-panel-footer.js +1 -1
- package/dist/collection/components/bh-side-panel/bh-side-panel-header/bh-side-panel-header.js +1 -1
- package/dist/collection/components/bh-sidebar/bh-nav-item/bh-nav-item.js +2 -2
- package/dist/collection/components/bh-sidebar/bh-sidebar.js +79 -3
- package/dist/collection/components/bh-skeleton-loader/bh-skeleton-loader.js +1 -1
- package/dist/collection/components/bh-table-header/bh-table-header.js +1 -1
- package/dist/collection/components/bh-tabs/bh-tab-item/bh-tab-item.js +2 -2
- package/dist/collection/components/bh-tabs/bh-tabs.js +1 -1
- package/dist/collection/components/bh-tag/bh-tag-group/bh-tag-group.js +1 -1
- package/dist/collection/components/bh-tag/bh-tag.js +2 -2
- package/dist/collection/components/bh-toast/bh-toast.js +2 -2
- package/dist/collection/components/bh-toast-container/bh-toast-container.js +1 -1
- package/dist/collection/components/bh-toggle/bh-toggle.js +1 -1
- package/dist/collection/components/bh-tooltip/bh-tooltip.js +1 -1
- package/dist/collection/components/index.js +5 -0
- package/dist/collection/utils/hotkeys.js +107 -0
- package/dist/collection/utils/index.js +4 -0
- package/dist/esm/bellhop-core.js +1 -1
- package/dist/esm/bh-accordion-item.entry.js +3 -2
- package/dist/esm/bh-accordion.entry.js +2 -1
- package/dist/esm/bh-activity-feed_2.entry.js +171 -0
- package/dist/esm/bh-alert.entry.js +3 -2
- package/dist/esm/bh-appbar.entry.js +56 -10
- package/dist/esm/bh-autocomplete-menu.entry.js +2 -1
- package/dist/esm/bh-avatar-add.entry.js +3 -2
- package/dist/esm/bh-avatar-stacked.entry.js +3 -2
- package/dist/esm/bh-avatar.entry.js +5 -4
- package/dist/esm/bh-badge-dot_2.entry.js +6 -5
- package/dist/esm/bh-badge.entry.js +5 -4
- package/dist/esm/bh-banner.entry.js +4 -3
- package/dist/esm/bh-bar-chart.entry.js +4 -3
- package/dist/esm/bh-breadcrumbs.entry.js +15 -4
- package/dist/esm/bh-button-icon_2.entry.js +3 -2
- package/dist/esm/bh-button.entry.js +4 -3
- package/dist/esm/bh-card-content.entry.js +3 -2
- package/dist/esm/bh-card-footer.entry.js +3 -2
- package/dist/esm/bh-card-header.entry.js +3 -2
- package/dist/esm/bh-card.entry.js +3 -2
- package/dist/esm/bh-chart-tooltip.entry.js +4 -3
- package/dist/esm/bh-chat-message.entry.js +4 -3
- package/dist/esm/bh-chat-reaction.entry.js +4 -3
- package/dist/esm/bh-checkbox.entry.js +2 -1
- package/dist/esm/bh-checklist-task-group_3.entry.js +5 -4
- package/dist/esm/bh-close-button.entry.js +1 -1
- package/dist/esm/bh-command-bar.entry.js +307 -0
- package/dist/esm/bh-container-footer.entry.js +3 -2
- package/dist/esm/bh-container.entry.js +3 -2
- package/dist/esm/bh-credit-card.entry.js +3 -2
- package/dist/esm/bh-data-grid-body.entry.js +2 -1
- package/dist/esm/bh-data-grid-change-preview.entry.js +2 -1
- package/dist/esm/bh-data-grid-filter-builder.entry.js +2 -1
- package/dist/esm/bh-data-grid-footer.entry.js +3 -2
- package/dist/esm/bh-data-grid-header.entry.js +2 -1
- package/dist/esm/bh-data-grid-toolbar.entry.js +3 -2
- package/dist/esm/bh-data-grid.entry.js +3 -2
- package/dist/esm/bh-date-picker-content.entry.js +5 -4
- package/dist/esm/bh-date-picker.entry.js +5 -4
- package/dist/esm/bh-date-range-picker-content.entry.js +4 -3
- package/dist/esm/bh-date-range-picker.entry.js +6 -5
- package/dist/esm/bh-divider.entry.js +3 -2
- package/dist/esm/bh-dropdown-menu.entry.js +1 -1
- package/dist/esm/bh-dropdown.entry.js +12 -3
- package/dist/esm/bh-emoji-picker.entry.js +1 -1
- package/dist/esm/bh-empty-state_2.entry.js +4 -3
- package/dist/esm/bh-featured-icon.entry.js +3 -2
- package/dist/esm/bh-gauge-chart.entry.js +4 -3
- package/dist/esm/bh-guided-checklist.entry.js +4 -3
- package/dist/esm/bh-html-editor-bubble-menu_2.entry.js +6 -5
- package/dist/esm/bh-html-editor.entry.js +4 -3
- package/dist/esm/bh-illustrations.entry.js +3 -2
- package/dist/esm/bh-inline-cta.entry.js +4 -3
- package/dist/esm/bh-input-autocomplete.entry.js +6 -5
- package/dist/esm/bh-input-number.entry.js +4 -3
- package/dist/esm/bh-input-password.entry.js +5 -4
- package/dist/esm/bh-input-text.entry.js +4 -3
- package/dist/esm/bh-input-verification.entry.js +3 -2
- package/dist/esm/bh-kbd.entry.js +32 -0
- package/dist/esm/bh-label_2.entry.js +3 -2
- package/dist/esm/bh-line-chart.entry.js +4 -3
- package/dist/esm/bh-logo-box_2.entry.js +6 -5
- package/dist/esm/bh-menu_2.entry.js +2 -1
- package/dist/esm/bh-modal-actions.entry.js +3 -2
- package/dist/esm/bh-modal-header.entry.js +6 -5
- package/dist/esm/bh-modal.entry.js +3 -2
- package/dist/esm/bh-month-picker-content.entry.js +3 -2
- package/dist/esm/bh-month-picker.entry.js +5 -4
- package/dist/esm/bh-multi-select.entry.js +7 -6
- package/dist/esm/bh-notification-center.entry.js +208 -0
- package/dist/esm/bh-page-header.entry.js +3 -2
- package/dist/esm/bh-page-navigation-child.entry.js +3 -2
- package/dist/esm/bh-page-navigation-multi-level_2.entry.js +5 -4
- package/dist/esm/bh-page-navigation.entry.js +3 -2
- package/dist/esm/bh-pagination_2.entry.js +8 -7
- package/dist/esm/bh-picker-menu.entry.js +2 -1
- package/dist/esm/bh-pie-chart.entry.js +5 -4
- package/dist/esm/bh-pivot-grid-field-chooser.entry.js +4 -3
- package/dist/esm/bh-pivot-grid.entry.js +19 -18
- package/dist/esm/bh-popover.entry.js +2 -1
- package/dist/esm/bh-product-switcher.entry.js +2 -1
- package/dist/esm/bh-progress-bar.entry.js +6 -5
- package/dist/esm/bh-progress-ring.entry.js +1 -1
- package/dist/esm/bh-property-switcher.entry.js +21 -4
- package/dist/esm/bh-radar-chart.entry.js +4 -3
- package/dist/esm/bh-radio-button.entry.js +2 -1
- package/dist/esm/bh-radio-group.entry.js +3 -2
- package/dist/esm/bh-range-slider.entry.js +3 -2
- package/dist/esm/bh-section-footer.entry.js +3 -2
- package/dist/esm/bh-section-header.entry.js +3 -2
- package/dist/esm/bh-selection-group-item.entry.js +2 -1
- package/dist/esm/bh-selection-group.entry.js +3 -2
- package/dist/esm/bh-side-panel-footer.entry.js +1 -1
- package/dist/esm/bh-side-panel-header.entry.js +1 -1
- package/dist/esm/bh-sidebar.entry.js +18 -4
- package/dist/esm/bh-stepper.entry.js +2 -1
- package/dist/esm/bh-tab-item.entry.js +4 -3
- package/dist/esm/bh-table-header.entry.js +3 -2
- package/dist/esm/bh-tabs.entry.js +3 -2
- package/dist/esm/bh-tag-group.entry.js +3 -2
- package/dist/esm/bh-tag-input.entry.js +4 -3
- package/dist/esm/bh-textarea.entry.js +4 -3
- package/dist/esm/bh-toast-container.entry.js +1 -1
- package/dist/esm/bh-toast.entry.js +4 -3
- package/dist/esm/bh-toggle.entry.js +3 -2
- package/dist/esm/bh-trend-chart.entry.js +4 -3
- package/dist/esm/{component-error-handler-BVWQSuxn.js → component-error-handler-bgLpf9Pn.js} +1 -1
- package/dist/esm/error-boundary-afpK3NgJ.js +70 -0
- package/dist/esm/hotkeys-CBTS9Vhx.js +109 -0
- package/dist/esm/index-CTHvNfIu.js +20 -12
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{error-boundary-YLeLKAYJ.js → logger-CMKOFHIa.js} +1 -68
- package/dist/locales/bh-appbar/de.json +4 -1
- package/dist/locales/bh-appbar/en.json +4 -1
- package/dist/locales/bh-appbar/es.json +4 -1
- package/dist/locales/bh-appbar/fr.json +4 -1
- package/dist/locales/bh-appbar/ja.json +4 -1
- package/dist/locales/bh-appbar/pt.json +4 -1
- package/dist/locales/bh-appbar/ru.json +4 -1
- package/dist/locales/bh-appbar/zh.json +4 -1
- package/dist/locales/bh-command-bar/de.json +13 -0
- package/dist/locales/bh-command-bar/en.json +13 -0
- package/dist/locales/bh-command-bar/es.json +13 -0
- package/dist/locales/bh-command-bar/fr.json +13 -0
- package/dist/locales/bh-command-bar/ja.json +13 -0
- package/dist/locales/bh-command-bar/pt.json +13 -0
- package/dist/locales/bh-command-bar/ru.json +13 -0
- package/dist/locales/bh-command-bar/zh.json +13 -0
- package/dist/types/components/bh-activity-feed/bh-activity-feed.d.ts +6 -0
- package/dist/types/components/bh-appbar/bh-appbar.d.ts +38 -0
- package/dist/types/components/bh-appbar/bh-notification-center/bh-notification-center.d.ts +108 -0
- package/dist/types/components/bh-breadcrumbs/bh-breadcrumbs.d.ts +8 -0
- package/dist/types/components/bh-command-bar/bh-command-bar.d.ts +131 -0
- package/dist/types/components/bh-command-bar/bh-command-bar.figma.d.ts +1 -0
- package/dist/types/components/bh-dropdown/bh-dropdown.d.ts +4 -0
- package/dist/types/components/bh-feed-item/bh-feed-item.d.ts +15 -0
- package/dist/types/components/bh-kbd/bh-kbd.d.ts +13 -0
- package/dist/types/components/bh-kbd/bh-kbd.figma.d.ts +1 -0
- package/dist/types/components/bh-property-switcher/bh-property-switcher.d.ts +2 -0
- package/dist/types/components/bh-sidebar/bh-sidebar.d.ts +14 -1
- package/dist/types/components/index.d.ts +3 -0
- package/dist/types/components.d.ts +541 -4
- package/dist/types/index.d.ts +2 -0
- package/dist/types/utils/hotkeys.d.ts +23 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/hydrate/index.js +1021 -189
- package/hydrate/index.mjs +1021 -189
- package/llms.txt +4251 -286
- package/package.json +1 -1
- package/vscode-data.json +215 -0
- package/components/p-B7i48CAz.js +0 -1
- package/components/p-Bk-ipvH3.js +0 -1
- package/components/p-Cy98fCjm.js +0 -1
- package/components/p-i7ZvTRXV.js +0 -1
- package/dist/bellhop-core/p-008932dc.entry.js +0 -1
- package/dist/bellhop-core/p-03e002af.entry.js +0 -1
- package/dist/bellhop-core/p-062955a0.entry.js +0 -1
- package/dist/bellhop-core/p-0705eb78.entry.js +0 -1
- package/dist/bellhop-core/p-0a1548b0.entry.js +0 -1
- package/dist/bellhop-core/p-0a758a65.entry.js +0 -1
- package/dist/bellhop-core/p-0b3a286d.entry.js +0 -1
- package/dist/bellhop-core/p-0e60f7f5.entry.js +0 -1
- package/dist/bellhop-core/p-105d9352.entry.js +0 -1
- package/dist/bellhop-core/p-11eec77c.entry.js +0 -1
- package/dist/bellhop-core/p-1334408b.entry.js +0 -1
- package/dist/bellhop-core/p-141d68b7.entry.js +0 -1
- package/dist/bellhop-core/p-164db491.entry.js +0 -1
- package/dist/bellhop-core/p-170c4a62.entry.js +0 -1
- package/dist/bellhop-core/p-19739563.entry.js +0 -1
- package/dist/bellhop-core/p-1cfa274f.entry.js +0 -1
- package/dist/bellhop-core/p-1ddb2ef9.entry.js +0 -1
- package/dist/bellhop-core/p-22243198.entry.js +0 -1
- package/dist/bellhop-core/p-23acfc6a.entry.js +0 -1
- package/dist/bellhop-core/p-277693e6.entry.js +0 -1
- package/dist/bellhop-core/p-283eb6ee.entry.js +0 -1
- package/dist/bellhop-core/p-298d6782.entry.js +0 -1
- package/dist/bellhop-core/p-30f1e109.entry.js +0 -1
- package/dist/bellhop-core/p-31e952ed.entry.js +0 -1
- package/dist/bellhop-core/p-3254b058.entry.js +0 -1
- package/dist/bellhop-core/p-332a6b0d.entry.js +0 -1
- package/dist/bellhop-core/p-43c97303.entry.js +0 -1
- package/dist/bellhop-core/p-4b8fe1fa.entry.js +0 -1
- package/dist/bellhop-core/p-4d8b9186.entry.js +0 -1
- package/dist/bellhop-core/p-50b95dc8.entry.js +0 -1
- package/dist/bellhop-core/p-53006e0e.entry.js +0 -1
- package/dist/bellhop-core/p-53683664.entry.js +0 -1
- package/dist/bellhop-core/p-53dc8f16.entry.js +0 -1
- package/dist/bellhop-core/p-54d147b9.entry.js +0 -1
- package/dist/bellhop-core/p-56b090e1.entry.js +0 -1
- package/dist/bellhop-core/p-58eae3e6.entry.js +0 -1
- package/dist/bellhop-core/p-5d43f80b.entry.js +0 -1
- package/dist/bellhop-core/p-61aeccd7.entry.js +0 -1
- package/dist/bellhop-core/p-63303380.entry.js +0 -1
- package/dist/bellhop-core/p-63af6f45.entry.js +0 -1
- package/dist/bellhop-core/p-640aaf14.entry.js +0 -1
- package/dist/bellhop-core/p-6632ba13.entry.js +0 -1
- package/dist/bellhop-core/p-6807b97e.entry.js +0 -1
- package/dist/bellhop-core/p-6a725cbe.entry.js +0 -1
- package/dist/bellhop-core/p-6bfb6425.entry.js +0 -1
- package/dist/bellhop-core/p-6c4eb165.entry.js +0 -1
- package/dist/bellhop-core/p-72cd0a98.entry.js +0 -1
- package/dist/bellhop-core/p-74972e2e.entry.js +0 -1
- package/dist/bellhop-core/p-77a7967d.entry.js +0 -1
- package/dist/bellhop-core/p-79bc0c14.entry.js +0 -1
- package/dist/bellhop-core/p-7f2736ab.entry.js +0 -1
- package/dist/bellhop-core/p-83024333.entry.js +0 -1
- package/dist/bellhop-core/p-8c01d55f.entry.js +0 -1
- package/dist/bellhop-core/p-8d4654ea.entry.js +0 -1
- package/dist/bellhop-core/p-9429002f.entry.js +0 -1
- package/dist/bellhop-core/p-956ca990.entry.js +0 -1
- package/dist/bellhop-core/p-9b0d2d1d.entry.js +0 -1
- package/dist/bellhop-core/p-YLeLKAYJ.js +0 -1
- package/dist/bellhop-core/p-a0005573.entry.js +0 -1
- package/dist/bellhop-core/p-a26f1ec0.entry.js +0 -1
- package/dist/bellhop-core/p-a42cca95.entry.js +0 -1
- package/dist/bellhop-core/p-a7153865.entry.js +0 -1
- package/dist/bellhop-core/p-a7608d57.entry.js +0 -1
- package/dist/bellhop-core/p-a94d36ae.entry.js +0 -1
- package/dist/bellhop-core/p-a9644488.entry.js +0 -1
- package/dist/bellhop-core/p-aac0f3c1.entry.js +0 -1
- package/dist/bellhop-core/p-aae7e90e.entry.js +0 -1
- package/dist/bellhop-core/p-ac2d706c.entry.js +0 -1
- package/dist/bellhop-core/p-b21105d4.entry.js +0 -1
- package/dist/bellhop-core/p-b7995c47.entry.js +0 -1
- package/dist/bellhop-core/p-bacf8b19.entry.js +0 -1
- package/dist/bellhop-core/p-bf2f5dbd.entry.js +0 -1
- package/dist/bellhop-core/p-c10aff52.entry.js +0 -1
- package/dist/bellhop-core/p-c30fcfcb.entry.js +0 -1
- package/dist/bellhop-core/p-c581c876.entry.js +0 -1
- package/dist/bellhop-core/p-c97c166b.entry.js +0 -1
- package/dist/bellhop-core/p-cb19b35b.entry.js +0 -1
- package/dist/bellhop-core/p-cb1dde19.entry.js +0 -1
- package/dist/bellhop-core/p-cf8c9d85.entry.js +0 -1
- package/dist/bellhop-core/p-d3816b20.entry.js +0 -1
- package/dist/bellhop-core/p-d4107350.entry.js +0 -1
- package/dist/bellhop-core/p-d59fdc08.entry.js +0 -1
- package/dist/bellhop-core/p-d77016ec.entry.js +0 -1
- package/dist/bellhop-core/p-dd1e6138.entry.js +0 -1
- package/dist/bellhop-core/p-dd6f2996.entry.js +0 -1
- package/dist/bellhop-core/p-e082bce2.entry.js +0 -1
- package/dist/bellhop-core/p-e0e28b1f.entry.js +0 -1
- package/dist/bellhop-core/p-e4a47861.entry.js +0 -1
- package/dist/bellhop-core/p-e74a03e3.entry.js +0 -1
- package/dist/bellhop-core/p-e9168244.entry.js +0 -1
- package/dist/bellhop-core/p-ea1fe131.entry.js +0 -1
- package/dist/bellhop-core/p-ecf1b0c4.entry.js +0 -1
- package/dist/bellhop-core/p-f16e07ca.entry.js +0 -1
- package/dist/bellhop-core/p-f2d2abb2.entry.js +0 -1
- package/dist/bellhop-core/p-f8f6e900.entry.js +0 -1
- package/dist/bellhop-core/p-fbdeab71.entry.js +0 -1
- package/dist/bellhop-core/p-fcb058cf.entry.js +0 -1
- package/dist/cjs/bh-activity-feed.cjs.entry.js +0 -71
- package/dist/cjs/bh-feed-item.cjs.entry.js +0 -82
- package/dist/esm/bh-activity-feed.entry.js +0 -69
- package/dist/esm/bh-feed-item.entry.js +0 -80
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e,c as t,a as i,h as r,H as s}from"./p-CTHvNfIu.js";import{isFilterCondition as l,isFilterGroup as n}from"./index.esm.js";import{D as a}from"./p-gY2wiaRN.js";import{c as o,r as h}from"./p-YLeLKAYJ.js";import{m as u,M as d}from"./p-CSH9RXgl.js";import{i as c}from"./p-BqJRACkO.js";import"./p-BNVOtH-1.js";import"./p-zdFuIabL.js";let b=0;function p(){return b+=1,`filter-${b}`}function f(e,t,i,r){if(!e||"string"!=typeof e)throw new Error("field is required and must be a non-empty string");const s={type:"condition",id:p(),field:e,operator:t,value:i};return"between"===t&&void 0!==r&&(s.valueTo=r),s}function y(e,t=[]){if("and"!==e&&"or"!==e)throw new Error("logic must be 'and' or 'or'");return{type:"group",id:p(),logic:e,children:t}}const m={equals:"equals",notEquals:"does not equal",contains:"contains",notContains:"does not contain",startsWith:"starts with",endsWith:"ends with",greaterThan:"is greater than",greaterThanOrEqual:"is greater than or equal to",lessThan:"is less than",lessThanOrEqual:"is less than or equal to",between:"is between",isNull:"is empty",isNotNull:"is not empty",in:"is one of",notIn:"is not one of"};function g(e){return null==e?"(empty)":Array.isArray(e)?e.map(g).join(", "):e instanceof Date?e.toLocaleDateString():"boolean"==typeof e?e?"Yes":"No":String(e)}function v(e,t=[]){if(!e)return null;const i=[],r=function e(r,s=!1){if(l(r)){const e=function(e,t){const i=e.find((e=>e.id===t));return i?.header??t}(t,r.field),s=m[r.operator];if(i.push({type:"field",text:e,expressionId:r.id}),i.push({type:"operator",text:s,expressionId:r.id}),"isNull"!==r.operator&&"isNotNull"!==r.operator){const t="between"===r.operator?`${g(r.value)} and ${g(r.valueTo)}`:g(r.value);return i.push({type:"value",text:t,expressionId:r.id}),"between"===r.operator?`${e} ${s} ${g(r.value)} and ${g(r.valueTo)}`:`${e} ${s} ${t}`}return`${e} ${s}`}if(n(r)){const t=[],l=r.logic.toUpperCase();r.children.forEach(((s,n)=>{n>0&&i.push({type:"logic",text:l,expressionId:r.id}),t.push(e(s,!0))}));const n=t.join(` ${l} `);return s&&r.children.length>1?`(${n})`:n}return""}(e);return{text:r,parts:i}}function C(e){if(l(e))return f(e.field,e.operator,e.value,e.valueTo);if(n(e))return y(e.logic,e.children.map(C));throw new Error(`Unknown filter expression type: ${e.type}`)}function x(e,t){if(e.id===t)return e;if(n(e))for(const i of e.children){const e=x(i,t);if(e)return e}return null}function q(e){return e?l(e)?1:n(e)?e.children.reduce(((e,t)=>e+q(t)),0):0:0}const N={equals:{label:"equals",types:["text","number","date","boolean"],requiresValue:!0},notEquals:{label:"does not equal",types:["text","number","date","boolean"],requiresValue:!0},contains:{label:"contains",types:["text"],requiresValue:!0},notContains:{label:"does not contain",types:["text"],requiresValue:!0},startsWith:{label:"starts with",types:["text"],requiresValue:!0},endsWith:{label:"ends with",types:["text"],requiresValue:!0},greaterThan:{label:"is greater than",types:["number","date"],requiresValue:!0},greaterThanOrEqual:{label:"is greater than or equal to",types:["number","date"],requiresValue:!0},lessThan:{label:"is less than",types:["number","date"],requiresValue:!0},lessThanOrEqual:{label:"is less than or equal to",types:["number","date"],requiresValue:!0},between:{label:"is between",types:["number","date"],requiresValue:!0,requiresSecondValue:!0},isNull:{label:"is empty",types:["text","number","date","boolean"],requiresValue:!1},isNotNull:{label:"is not empty",types:["text","number","date","boolean"],requiresValue:!1},in:{label:"is one of",types:["text","number"],requiresValue:!0},notIn:{label:"is not one of",types:["text","number"],requiresValue:!0}},k=class{constructor(i){e(this,i),this.bhFilterExpressionChange=t(this,"bhFilterExpressionChange"),this.bhFilterPresetSaved=t(this,"bhFilterPresetSaved"),this.bhFilterBuilderClose=t(this,"bhFilterBuilderClose"),this.bhError=t(this,"bhError")}get el(){return i(this)}logger=o("bh-data-grid-filter-builder");columns;filterExpression=null;visible=!1;gridId="default";enablePresets=!0;filterLabels=a;bhFilterExpressionChange;bhFilterPresetSaved;bhFilterBuilderClose;bhError;internalExpression=null;presets=[];showPresetSaveDialog=!1;showPresetLoadDialog=!1;presetName="";componentWillLoad(){this.loadPresets(),this.internalExpression=this.filterExpression?C(this.filterExpression):null}componentDidCatch(e){this.logger.error("Component error caught",e instanceof Error?e:new Error(String(e))),u.increment(d.COMPONENT_ERROR,{component:"bh-data-grid-filter-builder",error_type:e instanceof Error?e.name:"unknown"}),h("bh-data-grid-filter-builder",e),this.bhError.emit({error:e})}handleFilterExpressionChange(e){this.internalExpression=e?C(e):null}getStorageKey(){return`bh-data-grid-filter-presets-${this.gridId}`}loadPresets(){try{const e=localStorage.getItem(this.getStorageKey());e&&(this.presets=JSON.parse(e))}catch(e){this.logger.warn("Failed to load filter presets",{error:e}),this.presets=[]}}savePresetsToStorage(){try{localStorage.setItem(this.getStorageKey(),JSON.stringify(this.presets))}catch(e){this.logger.error("Failed to save filter presets",e instanceof Error?e:new Error(String(e)))}}handleSavePreset=()=>{if(!this.presetName.trim()||!this.internalExpression)return;const e=Date.now(),t={id:`preset-${e}`,name:this.presetName.trim(),expression:C(this.internalExpression),createdAt:e,updatedAt:e};this.presets=[...this.presets,t],this.savePresetsToStorage(),this.bhFilterPresetSaved.emit({preset:t}),this.showPresetSaveDialog=!1,this.presetName=""};handleLoadPreset=e=>{this.internalExpression=C(e.expression),this.showPresetLoadDialog=!1};handleDeletePreset=e=>{this.presets=this.presets.filter((t=>t.id!==e)),this.savePresetsToStorage()};getFilterableColumns(){return this.columns.filter((e=>{const t=e.meta;return!1!==t?.filterable})).map((e=>{const t=e.meta,i="accessorKey"in e&&"string"==typeof e.accessorKey?e.accessorKey:e.id??"";return{id:i,header:"string"==typeof e.header?e.header:i,type:t?.type??"text"}}))}getOperatorsForType(e){return Object.keys(N).filter((t=>N[t].types.includes(e)))}getColumnType(e){const t=this.getFilterableColumns().find((t=>t.id===e));return t?.type??"text"}addCondition=e=>{const t=this.getFilterableColumns();if(0===t.length)return;const i=t[0],r=this.getOperatorsForType(i.type),s=f(i.id,r[0]??"equals","");this.internalExpression?e?this.internalExpression=this.addToGroup(this.internalExpression,e,s):l(this.internalExpression)?this.internalExpression=y("and",[C(this.internalExpression),s]):n(this.internalExpression)&&(this.internalExpression={...this.internalExpression,children:[...this.internalExpression.children,s]}):this.internalExpression=s};addGroup=e=>{const t=this.getFilterableColumns();if(0===t.length)return;const i=t[0],r=this.getOperatorsForType(i.type),s=y("and",[f(i.id,r[0]??"equals","")]);this.internalExpression?e?this.internalExpression=this.addToGroup(this.internalExpression,e,s):l(this.internalExpression)?this.internalExpression=y("and",[C(this.internalExpression),s]):n(this.internalExpression)&&(this.internalExpression={...this.internalExpression,children:[...this.internalExpression.children,s]}):this.internalExpression=s};addToGroup(e,t,i){return e.id===t&&n(e)?{...e,children:[...e.children,i]}:n(e)?{...e,children:e.children.map((e=>this.addToGroup(e,t,i)))}:e}updateCondition=(e,t)=>{this.internalExpression&&(this.internalExpression=this.updateExpressionById(this.internalExpression,e,(e=>l(e)?{...e,...t}:e)))};updateGroupLogic=(e,t)=>{this.internalExpression&&(this.internalExpression=this.updateExpressionById(this.internalExpression,e,(e=>n(e)?{...e,logic:t}:e)))};removeExpression=e=>{this.internalExpression&&(this.internalExpression=this.internalExpression.id!==e?this.removeFromTree(this.internalExpression,e):null)};updateExpressionById(e,t,i){return e.id===t?i(e):n(e)?{...e,children:e.children.map((e=>this.updateExpressionById(e,t,i)))}:e}removeFromTree(e,t){if(n(e)){const i=e.children.filter((e=>e.id!==t)).map((e=>this.removeFromTree(e,t))).filter((e=>null!==e));return 0===i.length?null:1===i.length&&e.id!==this.internalExpression?.id?i[0]:{...e,children:i}}return e}calculateDepth(e,t=0){return e?l(e)?t:n(e)?e.children.reduce(((e,i)=>Math.max(e,this.calculateDepth(i,t+1))),t):t:t}canAddNestedGroup(e){if(!this.internalExpression)return!0;if(!e)return this.calculateDepth(this.internalExpression)<3;const t=x(this.internalExpression,e);return!!t&&this.calculateDepth(t)<3}handleApply=()=>{const e=this.getFilterableColumns(),t=this.internalExpression?v(this.internalExpression,e):null;this.bhFilterExpressionChange.emit({expression:this.internalExpression,description:t}),this.bhFilterBuilderClose.emit()};handleClear=()=>{this.internalExpression=null};handleCancel=()=>{this.internalExpression=this.filterExpression?C(this.filterExpression):null,this.bhFilterBuilderClose.emit()};handleKeyDown=e=>{c(e)&&this.handleCancel()};renderValueInput(e,t,i){if(!t.requiresValue)return null;const s="number"===i?"number":"date"===i?"date":"text";return r("div",{class:"filter-builder-value-inputs"},r("bh-input-text",{class:"filter-builder-value-input",onBhInput:t=>this.updateCondition(e.id,{value:t.detail}),placeholder:this.filterLabels.valuePlaceholder,showLabel:!1,type:s,value:String(e.value??"")}),t.requiresSecondValue&&r("bh-input-text",{class:"filter-builder-value-input",onBhInput:t=>this.updateCondition(e.id,{valueTo:t.detail}),placeholder:this.filterLabels.toValuePlaceholder,showLabel:!1,type:s,value:String(e.valueTo??"")}))}renderCondition(e,t){const i=this.getFilterableColumns(),s=this.getColumnType(e.field),l=this.getOperatorsForType(s),n=N[e.operator];return r("div",{class:{"filter-builder-condition":!0,[`filter-builder-depth-${t}`]:!0},"data-expression-id":e.id,key:e.id},r("select",{class:"filter-builder-field-select",onChange:t=>{const i=t.target.value,r=this.getColumnType(i),s=this.getOperatorsForType(r),l=s.includes(e.operator);this.updateCondition(e.id,{field:i,operator:l?e.operator:s[0],value:"",valueTo:void 0})}},i.map((t=>r("option",{key:t.id,selected:t.id===e.field,value:t.id},t.header)))),r("select",{class:"filter-builder-operator-select",onChange:t=>this.updateCondition(e.id,{operator:t.target.value})},l.map((t=>r("option",{key:t,selected:t===e.operator,value:t},N[t].label)))),this.renderValueInput(e,n,s),r("bh-button-icon",{ariaLabel:"Remove condition",class:"filter-builder-remove-btn",hierarchy:"tertiary",iconName:"close",onClick:()=>this.removeExpression(e.id),size:"sm"}))}renderGroup(e,t){const i=this.canAddNestedGroup(e.id);return r("div",{class:{"filter-builder-group":!0,[`filter-builder-depth-${t}`]:!0},"data-expression-id":e.id,key:e.id},r("div",{class:"filter-builder-group-header"},r("div",{class:"filter-builder-logic-toggle"},r("button",{class:{"filter-builder-logic-btn":!0,"filter-builder-logic-btn-active":"and"===e.logic},onClick:()=>this.updateGroupLogic(e.id,"and"),type:"button"},"AND"),r("button",{class:{"filter-builder-logic-btn":!0,"filter-builder-logic-btn-active":"or"===e.logic},onClick:()=>this.updateGroupLogic(e.id,"or"),type:"button"},"OR")),r("div",{class:"filter-builder-group-actions"},r("bh-button",{hierarchy:"tertiary",icon:"leading",iconName:"add",label:this.filterLabels.condition,onClick:()=>this.addCondition(e.id),size:"sm"}),i&&r("bh-button",{hierarchy:"tertiary",icon:"leading",iconName:"folder_open",label:this.filterLabels.group,onClick:()=>this.addGroup(e.id),size:"sm"}),t>0&&r("bh-button-icon",{ariaLabel:"Remove group",hierarchy:"tertiary",iconName:"delete",onClick:()=>this.removeExpression(e.id),size:"sm"}))),r("div",{class:"filter-builder-group-children"},e.children.map(((i,s)=>r("div",{class:"filter-builder-child",key:i.id},s>0&&r("div",{class:"filter-builder-logic-separator"},e.logic.toUpperCase()),this.renderExpression(i,t+1))))))}renderExpression(e,t=0){return l(e)?this.renderCondition(e,t):n(e)?this.renderGroup(e,t):null}renderEmptyState(){return r("div",{class:"filter-builder-empty"},r("span",{class:"material-symbols-outlined filter-builder-empty-icon"},"filter_list"),r("p",{class:"filter-builder-empty-text"},"No filters applied. Add a condition or group to start filtering."),r("div",{class:"filter-builder-empty-actions"},r("bh-button",{hierarchy:"primary",icon:"leading",iconName:"add",label:this.filterLabels.addCondition,onClick:()=>this.addCondition(),size:"sm"}),r("bh-button",{hierarchy:"secondary",icon:"leading",iconName:"folder_open",label:this.filterLabels.addGroup,onClick:()=>this.addGroup(),size:"sm"})))}renderPresetSaveDialog(){return this.showPresetSaveDialog?r("div",{class:"filter-builder-dialog-overlay"},r("div",{class:"filter-builder-dialog"},r("div",{class:"filter-builder-dialog-header"},r("h3",null,"Save Filter Preset"),r("bh-button-icon",{ariaLabel:this.filterLabels.closeDialog,hierarchy:"tertiary",iconName:"close",onClick:()=>{this.showPresetSaveDialog=!1,this.presetName=""},size:"sm"})),r("div",{class:"filter-builder-dialog-body"},r("bh-input-text",{label:this.filterLabels.presetName,onBhInput:e=>{this.presetName=e.detail??""},placeholder:this.filterLabels.filterPresetNamePlaceholder,value:this.presetName})),r("div",{class:"filter-builder-dialog-footer"},r("bh-button",{hierarchy:"secondary",label:this.filterLabels.cancel,onClick:()=>{this.showPresetSaveDialog=!1,this.presetName=""},size:"sm"}),r("bh-button",{disabled:!this.presetName.trim(),hierarchy:"primary",label:this.filterLabels.save,onClick:this.handleSavePreset,size:"sm"})))):null}renderPresetLoadDialog(){return this.showPresetLoadDialog?r("div",{class:"filter-builder-dialog-overlay"},r("div",{class:"filter-builder-dialog filter-builder-dialog-wide"},r("div",{class:"filter-builder-dialog-header"},r("h3",null,"Load Filter Preset"),r("bh-button-icon",{ariaLabel:this.filterLabels.closeDialog,hierarchy:"tertiary",iconName:"close",onClick:()=>{this.showPresetLoadDialog=!1},size:"sm"})),r("div",{class:"filter-builder-dialog-body"},0===this.presets.length?r("p",{class:"filter-builder-no-presets"},"No saved presets. Save a filter to create a preset."):r("ul",{class:"filter-builder-preset-list"},this.presets.map((e=>r("li",{class:"filter-builder-preset-item",key:e.id},r("button",{class:"filter-builder-preset-btn",onClick:()=>this.handleLoadPreset(e),type:"button"},r("span",{class:"filter-builder-preset-name"},e.name),r("span",{class:"filter-builder-preset-info"},q(e.expression)," condition(s)")),r("bh-button-icon",{ariaLabel:`Delete preset ${e.name}`,hierarchy:"tertiary",iconName:"delete",onClick:t=>{t.stopPropagation(),this.handleDeletePreset(e.id)},size:"sm"})))))),r("div",{class:"filter-builder-dialog-footer"},r("bh-button",{hierarchy:"secondary",label:this.filterLabels.cancel,onClick:()=>{this.showPresetLoadDialog=!1},size:"sm"})))):null}renderFilterTags(){if(!this.internalExpression)return null;const e=this.getFilterableColumns(),t=v(this.internalExpression,e);return t?r("div",{class:"filter-builder-tags"},t.parts.map(((e,t)=>r("bh-tag",{dismissible:!1,key:t,label:e.text,size:"sm",variant:"text-only"})))):null}render(){if(!this.visible)return null;const e=q(this.internalExpression);return r(s,null,r("div",{"aria-label":this.filterLabels.filterBuilder,class:"filter-builder",onKeyDown:this.handleKeyDown,part:"filter-builder",role:"dialog"},r("div",{class:"filter-builder-header",part:"filter-builder-header"},r("div",{class:"filter-builder-title"},r("span",{class:"material-symbols-outlined"},"filter_list"),r("h2",null,this.filterLabels.filterBuilder),e>0&&r("bh-badge",{size:"sm",variant:"blue"},e)),r("div",{class:"filter-builder-header-actions"},this.enablePresets&&r("div",{class:"filter-builder-preset-actions"},r("bh-button",{disabled:!this.internalExpression,hierarchy:"tertiary",icon:"leading",iconName:"save",label:this.filterLabels.save,onClick:()=>{this.showPresetSaveDialog=!0},size:"sm"}),r("bh-button",{disabled:0===this.presets.length,hierarchy:"tertiary",icon:"leading",iconName:"folder_open",label:this.filterLabels.load,onClick:()=>{this.showPresetLoadDialog=!0},size:"sm"})),r("bh-button-icon",{ariaLabel:this.filterLabels.closeFilterBuilder,hierarchy:"tertiary",iconName:"close",onClick:this.handleCancel,size:"sm"}))),this.renderFilterTags(),r("div",{class:"filter-builder-body",part:"filter-builder-body"},this.internalExpression?this.renderExpression(this.internalExpression):this.renderEmptyState(),this.internalExpression&&l(this.internalExpression)&&r("div",{class:"filter-builder-root-actions"},r("bh-button",{hierarchy:"tertiary",icon:"leading",iconName:"add",label:this.filterLabels.addCondition,onClick:()=>this.addCondition(),size:"sm"}),this.canAddNestedGroup()&&r("bh-button",{hierarchy:"tertiary",icon:"leading",iconName:"folder_open",label:this.filterLabels.addGroup,onClick:()=>this.addGroup(),size:"sm"}))),r("div",{class:"filter-builder-footer",part:"filter-builder-footer"},r("bh-button",{disabled:!this.internalExpression,hierarchy:"tertiary",label:this.filterLabels.clearAll,onClick:this.handleClear,size:"sm"}),r("div",{class:"filter-builder-footer-actions"},r("bh-button",{hierarchy:"secondary",label:this.filterLabels.cancel,onClick:this.handleCancel,size:"sm"}),r("bh-button",{hierarchy:"primary",label:this.filterLabels.applyFilter,onClick:this.handleApply,size:"sm"}))),this.renderPresetSaveDialog(),this.renderPresetLoadDialog()))}static get watchers(){return{filterExpression:[{handleFilterExpressionChange:0}]}}};export{k as bh_data_grid_filter_builder}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as a,a as s,h as e,H as i}from"./p-CTHvNfIu.js";import{c as r,r as o}from"./p-YLeLKAYJ.js";import{m as n,M as b}from"./p-CSH9RXgl.js";import{K as h}from"./p-zdFuIabL.js";const l=class{constructor(s){t(this,s),this.bhChange=a(this,"bhChange"),this.bhReorder=a(this,"bhReorder"),this.bhItemClose=a(this,"bhItemClose")}logger=r("bh-tabs");get el(){return s(this)}variant="contained";orientation="horizontal";fullWidth=!1;value="";closable=!1;reorderable=!1;swipeable=!1;showScrollIndicators=!0;tablistId;ariaLevel="2";autoManagePanels=!1;bhChange;bhReorder;bhItemClose;componentDidCatch(t){this.logger.error("Component error caught",t instanceof Error?t:new Error(String(t))),n.increment(b.COMPONENT_ERROR,{component:"bh-tabs",error_type:t instanceof Error?t.name:"unknown"}),o("bh-tabs",t)}handleTabItemClick(t){t.stopPropagation();const a=t.detail.value;this.value!==a&&(this.value=a,this.bhChange.emit(a))}handleTabKeyNav(t){t.stopPropagation();const{key:a}=t.detail,s=this.getTabItems();if(0===s.length)return;const e=s.findIndex((t=>t.getAttribute("value")===this.value||t.value===this.value));let i=e;const r="horizontal"===this.orientation;switch(a){case h.ARROW_RIGHT:r&&(i=this.findAdjacentEnabledTab(s,e,1));break;case h.ARROW_LEFT:r&&(i=this.findAdjacentEnabledTab(s,e,-1));break;case h.ARROW_DOWN:r||(i=this.findAdjacentEnabledTab(s,e,1));break;case h.ARROW_UP:r||(i=this.findAdjacentEnabledTab(s,e,-1));break;case h.HOME:i=this.findNextEnabledTab(s,-1,1);break;case h.END:i=this.findNextEnabledTab(s,s.length,-1)}if(i!==e&&i>=0&&i<s.length){const t=s[i],a=t.getAttribute("value")||t.value;this.value=a,this.bhChange.emit(a);const e=t.shadowRoot?.querySelector("button");e?.focus()}}handleTabClose(t){t.target!==this.el&&(t.stopPropagation(),this.bhItemClose.emit({value:t.detail}))}handleTabReorder(t){t.target!==this.el&&(t.stopPropagation(),this.bhReorder.emit(t.detail))}componentDidLoad(){this.value||this.initializeFromActiveTab()}componentDidRender(){const t=this.getTabItems();for(const[a,s]of t.entries())s.setSize=t.length,s.posInSet=a+1,this.value&&(s.active=(s.getAttribute("value")||s.value)===this.value)}initializeFromActiveTab(){const t=this.getTabItems();if(0===t.length)return;const a=t.find((t=>{const a=t.getAttribute("active");return""===a||"true"===a}))??t[0],s=a.getAttribute("value")||a.value;s&&(this.value=s)}getTabItems(){return Array.from(this.el.querySelectorAll("bh-tab-item"))}findAdjacentEnabledTab(t,a,s){const e=t.length;for(let i=1;i<=e;i++){const r=((a+s*i)%e+e)%e,o=t[r];if("true"!==o.getAttribute("disabled")&&!o.disabled)return r}return a}findNextEnabledTab(t,a,s){let e=a+s;for(;e>=0&&e<t.length;){const a=t[e];if("true"!==a.getAttribute("disabled")&&!a.disabled)return e;e+=s}return a}render(){return e(i,{key:"7083a499e2f13500b64a6a1cb13b5fc8b83d832f",class:{tabs:!0,[`tabs-${this.variant}`]:!0,[`tabs-${this.orientation}`]:!0,"tabs-full-width":this.fullWidth}},e("div",{key:"b7e12a89ca076d2f589edd02d4cee3e8fc85ecd1",class:"tabs-container",part:"container"},e("div",{key:"67f36616e1187ae26bd67bb869b58194030e786a","aria-level":this.ariaLevel,"aria-orientation":this.orientation,class:"tabs-list",id:this.tablistId,part:"list",role:"tablist"},e("slot",{key:"b9233a03eba1530d6bf6a69f85984c7cf105932e"}))))}};l.style='@charset "UTF-8";@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}@layer bh-tokens,bh-base,bh-variants,bh-states,bh-utilities; @layer bh-tokens{:host{display:block;width:100%;--bh-tabs-border-color:var(--color-border-secondary);--bh-tabs-active-color:var(--color-text-interactive);--bh-tabs-active-border-color:var(--color-text-interactive);--bh-tabs-inactive-color:var(--color-text-tertiary)}}@layer bh-base{.tabs-container{display:flex;flex-direction:column;width:100%}.tabs-list{display:flex;gap:var(--spacing-xs);padding:var(--spacing-none);position:relative}}@layer bh-variants{:host(.tabs-full-width) .tabs-list{width:100%;gap:0}:host(.tabs-underline.tabs-horizontal) .tabs-container{border-bottom:1px solid var(--bh-tabs-border-color)}:host(.tabs-underline.tabs-horizontal) .tabs-list{gap:var(--spacing-lg)}:host(.tabs-full-width.tabs-underline.tabs-horizontal) .tabs-list,:host(.tabs-full-width.tabs-contained) .tabs-list{gap:0}:host(.tabs-contained) .tabs-list{gap:var(--spacing-xs)}:host(.tabs-vertical){width:auto}:host(.tabs-vertical) .tabs-container{width:auto}:host(.tabs-vertical) .tabs-list{flex-direction:column;gap:var(--spacing-xs);width:var(--bh-tabs-vertical-width)}:host(.tabs-underline.tabs-vertical) .tabs-container{border-bottom:none}}';export{l as bh_tabs}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,h as o,H as g}from"./p-CTHvNfIu.js";import{a as l,v as r}from"./p-DWWRC9ht.js";import{c as a}from"./p-YdVz1TeW.js";import{c as s,r as i}from"./p-YLeLKAYJ.js";import{m as h,M as n}from"./p-CSH9RXgl.js";import{a as d}from"./p-BqJRACkO.js";import"./p-zdFuIabL.js";const c=class{constructor(o){t(this,o),this.bhChange=e(this,"bhChange"),this.bhFocus=e(this,"bhFocus"),this.bhBlur=e(this,"bhBlur"),this.bhValidityChange=e(this,"bhValidityChange"),o.$hostElement$["s-ei"]?this.internals=o.$hostElement$["s-ei"]:(this.internals=o.$hostElement$.attachInternals(),o.$hostElement$["s-ei"]=this.internals)}focusState=a();logger=s("bh-toggle");internals;size="md";showText=!1;label="";supportingText="";disabled=!1;checked=!1;name="";value="on";required=!1;defaultChecked=!1;focusVersion=0;isDirty=!1;isTouched=!1;bhChange;bhFocus;bhBlur;bhValidityChange;componentDidCatch(t){this.logger.error("Component error caught",t instanceof Error?t:new Error(String(t))),h.increment(n.COMPONENT_ERROR,{component:"bh-toggle",error_type:t instanceof Error?t.name:"unknown"}),i("bh-toggle",t)}componentWillLoad(){this.focusState.onChange((()=>{this.focusVersion++}))}componentDidLoad(){l(this.internals,this.name,this.checked,this.value),r(this.internals,this.required,this.checked),this.bhValidityChange.emit(this.internals.validity)}formResetCallback(){this.checked=this.defaultChecked,this.isDirty=!1,this.isTouched=!1,l(this.internals,this.name,this.checked,this.value),r(this.internals,this.required,this.checked),this.bhValidityChange.emit(this.internals.validity)}handleToggle=()=>{this.disabled||(this.checked=!this.checked,this.isDirty||(this.isDirty=!0),l(this.internals,this.name,this.checked,this.value),r(this.internals,this.required,this.checked),this.bhValidityChange.emit(this.internals.validity),this.bhChange.emit(this.checked))};handleKeyDown=t=>{d(t)&&(t.preventDefault(),this.handleToggle())};handleMouseEnter=()=>{this.focusState.handleMouseEnter()};handleMouseLeave=()=>{this.focusState.handleMouseLeave()};handleFocus=t=>{this.isTouched=!0,this.focusState.handleFocus(t,(()=>this.bhFocus.emit()))};handleBlur=t=>{this.focusState.handleBlur(t,(()=>this.bhBlur.emit()))};render(){const t={"toggle-wrapper":!0,"toggle-with-text":this.showText,[`toggle-size-${this.size}`]:!0},e={"toggle-switch":!0,"toggle-pressed":this.checked,"toggle-unpressed":!this.checked,[`toggle-${this.size}`]:!0,"toggle-disabled":this.disabled,"toggle-focus":this.focusState.isFocused&&!this.disabled,"toggle-hover":this.focusState.isHovered&&!this.disabled},l={"toggle-button":!0,"toggle-button-pressed":this.checked,"toggle-button-unpressed":!this.checked,[`toggle-button-${this.size}`]:!0,"toggle-button-disabled":this.disabled},r={"toggle-label":!0,[`toggle-label-${this.size}`]:!0};return o(g,{key:"3e300b75de449427e12ef1beb5b303a3ec175130",onClick:this.handleToggle},o("div",{key:"7d1c465428b9d548b4ed674bca7afd4166d54012",class:t,part:"container"},o("div",{key:"e4c390a20d14596fa2eb88c349994e468933190b","aria-checked":this.checked?"true":"false","aria-disabled":this.disabled?"true":"false","aria-label":this.label||void 0,"aria-required":String(this.required),class:e,"data-dirty":String(this.isDirty),"data-touched":String(this.isTouched),onBlur:this.handleBlur,onFocus:this.handleFocus,onKeyDown:this.handleKeyDown,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,part:"track",role:"switch",tabIndex:this.disabled?-1:0},o("div",{key:"7697077fda4cacf28c3683005275be27f2d00244",class:l,part:"thumb"})),this.showText&&(this.label||this.supportingText)&&o("div",{key:"2b43347e3477689774476edfaac9fb405ef9b173",class:"toggle-text"},this.label&&o("span",{key:"b585e5804e4c728dd6f798b40fb58e21a908ab96",class:r,part:"label"},this.label),this.supportingText&&o("div",{key:"d4bb2ed7fa91a254ac5d76ada723353395a16e79",class:"toggle-supporting-text"},this.supportingText))))}static get formAssociated(){return!0}};c.style='@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } @layer bh-tokens, bh-base, bh-variants, bh-states, bh-utilities; @layer bh-tokens { :host { display: inline-block; --bh-toggle-bg-off: hsla(227, 25%, 89%, 90%); --bh-toggle-bg-off-hover: var(--color-bg-quaternary); --bh-toggle-bg-off-disabled: var(--color-bg-disabled); --bh-toggle-bg-on: var(--color-bg-interactive); --bh-toggle-bg-on-hover: var(--color-bg-interactive-hover); --bh-toggle-bg-on-disabled: var(--color-bg-disabled); --bh-toggle-handle-color: var(--color-bg-primary); --bh-toggle-handle-color-disabled: var(--color-text-disabled); --bh-toggle-label-color: var(--color-text-primary); --bh-toggle-supporting-text-color: var(--color-text-secondary); --bh-toggle-focus-ring-color: var(--color-border-interactive); --bh-toggle-focus-overlay-color: var(--color-text-secondary); --bh-toggle-gap-md: var(--spacing-md); --bh-toggle-gap-lg: var(--spacing-lg); } } @layer bh-base { .toggle-wrapper { display: flex; align-items: center; gap: 0; } .toggle-switch { position: relative; display: inline-block; border-radius: var(--radius-full); cursor: pointer; transition: background-color var(--animation-duration-normal) ease; outline: none; border: 1px solid transparent; background: transparent; overflow: visible; padding: 0; } .toggle-switch:focus { outline: none; } .toggle-button { position: absolute; top: 50%; transform: translateY(-50%); border-radius: var(--radius-full); background-color: var(--bh-toggle-handle-color); transition: left var(--animation-duration-normal) ease, width var(--animation-duration-normal) ease, height var(--animation-duration-normal) ease, background-color var(--animation-duration-normal) ease; } .toggle-text { display: flex; flex-direction: column; flex: 1; } .toggle-label { color: var(--bh-toggle-label-color); font-family: var(--font-inter); font-weight: var(--weight-medium); text-align: left; margin: 0; line-height: var(--line-height-normal); } .toggle-supporting-text { color: var(--bh-toggle-supporting-text-color); font-family: var(--font-inter); font-weight: var(--weight-regular); font-size: var(--text-sm-size); line-height: var(--line-height-normal); text-align: left; margin: 0; margin-top: var(--spacing-xxs); } } @layer bh-variants { .toggle-with-text.toggle-size-sm { gap: var(--bh-toggle-gap-md); } .toggle-with-text.toggle-size-md { gap: var(--bh-toggle-gap-lg); } .toggle-switch.toggle-sm { width: var(--bh-toggle-width-sm); height: var(--bh-toggle-height-sm); } .toggle-switch.toggle-sm.toggle-unpressed .toggle-button { width: var(--bh-toggle-handle-sm); height: var(--bh-toggle-handle-sm); left: 1px; } .toggle-switch.toggle-sm.toggle-pressed .toggle-button { width: var(--bh-toggle-handle-sm); height: var(--bh-toggle-handle-sm); left: calc(100% - var(--bh-toggle-handle-sm) - 1px); } .toggle-switch.toggle-sm.toggle-unpressed.toggle-disabled .toggle-button { width: var(--bh-toggle-handle-sm); height: var(--bh-toggle-handle-sm); left: var(--spacing-xxs); background-color: var(--bh-toggle-handle-color-disabled); } .toggle-switch.toggle-sm.toggle-pressed.toggle-disabled .toggle-button { width: var(--bh-toggle-handle-sm); height: var(--bh-toggle-handle-sm); left: calc(100% - var(--bh-toggle-handle-sm) - 1px); background-color: var(--bh-toggle-handle-color-disabled); } .toggle-switch.toggle-md { width: var(--bh-toggle-width-md); height: var(--bh-toggle-height-md); } .toggle-switch.toggle-md.toggle-unpressed .toggle-button { width: var(--bh-toggle-handle-md); height: var(--bh-toggle-handle-md); left: 1px; } .toggle-switch.toggle-md.toggle-pressed .toggle-button { width: var(--bh-toggle-handle-md); height: var(--bh-toggle-handle-md); left: calc(100% - var(--bh-toggle-handle-md) - 1px); } .toggle-switch.toggle-md.toggle-unpressed.toggle-disabled .toggle-button { width: var(--bh-toggle-handle-sm); height: var(--bh-toggle-handle-sm); left: var(--spacing-xs); background-color: var(--bh-toggle-handle-color-disabled); } .toggle-switch.toggle-md.toggle-pressed.toggle-disabled .toggle-button { width: var(--bh-toggle-handle-md); height: var(--bh-toggle-handle-md); left: calc(100% - var(--bh-toggle-handle-md) - 1px); background-color: var(--bh-toggle-handle-color); } .toggle-label.toggle-label-sm { font-size: var(--text-sm-size); line-height: var(--line-height-normal); } .toggle-label.toggle-label-md { font-size: var(--text-md-size); line-height: var(--line-height-normal); } } @layer bh-states { .toggle-switch.toggle-disabled { cursor: not-allowed; opacity: 0.38; } .toggle-switch:focus-visible .toggle-button::after { content: ""; position: absolute; top: calc(-1 * var(--spacing-sm)); left: calc(-1 * var(--spacing-sm)); right: calc(-1 * var(--spacing-sm)); bottom: calc(-1 * var(--spacing-sm)); border-radius: var(--radius-full); background: currentColor; opacity: 0.24; pointer-events: none; } .toggle-switch { } .toggle-switch.toggle-unpressed { background-color: var(--bh-toggle-bg-off); border-color: transparent; } .toggle-switch.toggle-unpressed.toggle-hover { background-color: var(--bh-toggle-bg-off-hover); border-color: transparent; } .toggle-switch.toggle-unpressed.toggle-hover .toggle-button { background-color: var(--bh-toggle-handle-color); box-shadow: var(--shadow-sm); } .toggle-switch.toggle-unpressed.toggle-focus { background-color: var(--bh-toggle-bg-off); border-color: transparent; } .toggle-switch.toggle-unpressed.toggle-focus .toggle-button::after { content: ""; position: absolute; top: calc(-1 * var(--spacing-sm)); left: calc(-1 * var(--spacing-sm)); right: calc(-1 * var(--spacing-sm)); bottom: calc(-1 * var(--spacing-sm)); border-radius: var(--radius-full); background: var(--bh-toggle-focus-overlay-color); opacity: 0.12; pointer-events: none; } .toggle-switch.toggle-unpressed.toggle-disabled { background-color: var(--bh-toggle-bg-off-disabled); border-color: transparent; } .toggle-switch.toggle-unpressed .toggle-button { background-color: var(--bh-toggle-handle-color); } .toggle-switch { } .toggle-switch.toggle-pressed { background-color: var(--bh-toggle-bg-on); border-color: var(--bh-toggle-bg-on); } .toggle-switch.toggle-pressed.toggle-hover { background-color: var(--bh-toggle-bg-on-hover); border-color: var(--bh-toggle-bg-on-hover); } .toggle-switch.toggle-pressed.toggle-hover .toggle-button { background-color: var(--bh-toggle-handle-color); } .toggle-switch.toggle-pressed.toggle-focus { background-color: var(--bh-toggle-bg-on); border-color: var(--bh-toggle-bg-on); } .toggle-switch.toggle-pressed.toggle-focus .toggle-button::after { content: ""; position: absolute; top: calc(-1 * var(--spacing-sm)); left: calc(-1 * var(--spacing-sm)); right: calc(-1 * var(--spacing-sm)); bottom: calc(-1 * var(--spacing-sm)); border-radius: var(--radius-full); background: var(--bh-toggle-focus-ring-color); opacity: 0.24; pointer-events: none; } .toggle-switch.toggle-pressed.toggle-disabled { background-color: var(--bh-toggle-bg-on-disabled); border-color: var(--bh-toggle-bg-on-disabled); } .toggle-switch.toggle-pressed.toggle-disabled .toggle-button { background-color: var(--bh-toggle-bg-off-disabled); } .toggle-switch.toggle-pressed .toggle-button { background-color: var(--bh-toggle-handle-color); } .toggle-switch.toggle-disabled .toggle-button { background-color: var(--bh-toggle-handle-color-disabled); box-shadow: none; } } @layer bh-utilities { @media (prefers-reduced-motion: reduce) { .toggle-switch, .toggle-button { transition: none; } } @media (prefers-contrast: high) { .toggle-switch.toggle-unpressed { border: 2px solid currentColor; } .toggle-switch.toggle-pressed { border: 2px solid currentColor; } } }';export{c as bh_toggle}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r,c as e,a,h as t,F as o}from"./p-CTHvNfIu.js";import{c as i,r as s}from"./p-YLeLKAYJ.js";import{c as n,h as b}from"./p-C4V7Y6N_.js";import{B as c,r as d}from"./p-BNVOtH-1.js";import{m as l,M as m}from"./p-CSH9RXgl.js";import{v as h}from"./p-R-A72b5e.js";import{a as u}from"./p-BqJRACkO.js";import"./p-zdFuIabL.js";const p={label:"Home",path:"/"},v=class{constructor(a){r(this,a),this.bhItemClick=e(this,"bhItemClick"),this.bhChange=e(this,"bhChange")}get el(){return a(this)}logger=i("bh-breadcrumbs");navState=n();i18nUnsubscribe;_i18nVersion=0;items=[];separator="chevron_right";showHome=!0;maxVisibleItems=4;breadcrumbAriaLabel="Breadcrumb";homeAriaLabel="Home";overflowAriaLabelTemplate="Show {{count}} hidden items";bhItemClick;bhChange;openDropdownIndex=null;dropdownQuery="";dropdownSelections={};componentWillLoad(){this.i18nUnsubscribe=c.onLocaleChange((()=>{this._i18nVersion++}))}disconnectedCallback(){this.i18nUnsubscribe?.()}componentDidCatch(r){this.logger.error("Component error caught",r instanceof Error?r:new Error(String(r))),l.increment(m.COMPONENT_ERROR,{component:"bh-breadcrumbs",error_type:r instanceof Error?r.name:"unknown"}),s("bh-breadcrumbs",r)}get parsedItems(){if("string"==typeof this.items){const r=h(this.items);return r.valid?r.value??[]:(this.logger.warn("Invalid items JSON:",{errors:r.errors}),[])}return this.items||[]}get displayData(){const r=this.parsedItems;if(!r||r.length<=this.maxVisibleItems)return{displayItems:r?[...r]:[],showEllipsis:!1,collapsedItems:[]};const e=r.slice(-(this.maxVisibleItems-2));return{displayItems:[r[0],...e],showEllipsis:!0,collapsedItems:r.slice(1,-(this.maxVisibleItems-2))}}handleItemClick(r){!r.isActive&&r.path&&this.bhItemClick.emit(r)}handleHomeClick=()=>{this.bhItemClick.emit(p)};handleEllipsisClick=()=>{const{collapsedItems:r}=this.displayData;r.length>0&&this.handleItemClick(r[0])};handleEllipsisKeyDown=r=>{u(r)&&(r.preventDefault(),this.handleEllipsisClick())};handleKeyDown=r=>{const e=b(r,{container:this.el?.shadowRoot??null,itemSelector:"button.breadcrumb-button:not(.breadcrumb-current)",orientation:"horizontal",wrapAround:!1},this.navState);e!==this.navState.focusedIndex&&(this.navState={...this.navState,focusedIndex:e})};toggleDropdown=r=>{this.openDropdownIndex=this.openDropdownIndex===r?null:r,this.dropdownQuery=""};handleOptionSelect=(r,e,a)=>{this.dropdownSelections={...this.dropdownSelections,[a]:e.id},this.bhChange.emit({item:r,option:e}),this.openDropdownIndex=null,this.dropdownQuery=""};selectedOption(r,e){const a=r.dropdown??[],t=this.dropdownSelections[e];if(void 0!==t){const r=a.find((r=>r.id===t));if(r)return r}return a.find((r=>r.isSelected))}filteredOptions(r){const e=r.dropdown??[],a=this.dropdownQuery.trim().toLowerCase();return a?e.filter((r=>r.label.toLowerCase().includes(a))):e}renderDropdownItem(r,e){const a=this.openDropdownIndex===e,o=this.selectedOption(r,e);return t("div",{class:"breadcrumb-dropdown",key:e},t("button",{"aria-expanded":a?"true":"false","aria-haspopup":"listbox",class:"breadcrumb-button breadcrumb-dropdown-trigger",onClick:()=>this.toggleDropdown(e),part:"dropdown-trigger",type:"button"},t("span",{class:"breadcrumb-text",part:"text"},o?.label??r.label),t("span",{class:"material-symbols-outlined breadcrumb-dropdown-chevron"},a?"expand_less":"expand_more")),a&&t("div",{class:"breadcrumb-dropdown-menu",part:"dropdown-menu",role:"listbox"},r.dropdownSearchable&&t("div",{class:"breadcrumb-dropdown-search"},t("span",{class:"material-symbols-outlined"},"search"),t("input",{onInput:r=>{this.dropdownQuery=r.target.value},placeholder:"Search",type:"text",value:this.dropdownQuery})),this.filteredOptions(r).map((a=>t("button",{"aria-selected":a.id===o?.id?"true":"false",class:{"breadcrumb-dropdown-item":!0,selected:a.id===o?.id},key:a.id,onClick:()=>this.handleOptionSelect(r,a,e),role:"option",type:"button"},a.icon&&t("span",{class:"material-symbols-outlined"},a.icon),t("span",null,a.label))))))}renderBreadcrumbItem(r,e){return r.dropdown?.length?this.renderDropdownItem(r,e):r.isActive||!r.path?t("div",{"aria-current":"page",class:"breadcrumb-button breadcrumb-current",key:e,part:"item-current"},t("span",{class:"breadcrumb-text",part:"text"},r.label)):t("button",{class:"breadcrumb-button",key:e,onClick:()=>this.handleItemClick(r),part:"item-button",type:"button"},t("span",{class:"breadcrumb-text",part:"text"},r.label))}renderSeparator(){return t("div",{"aria-hidden":"true",class:"breadcrumb-separator",part:"separator"},t("span",{class:"material-symbols-outlined"},this.separator))}render(){const{displayItems:r,showEllipsis:e,collapsedItems:a}=this.displayData,i=d("bh-breadcrumbs","overflowAriaLabelTemplate",this.overflowAriaLabelTemplate,"Show {{count}} hidden items").replace("{{count}}",String(a.length));return t("nav",{key:"56966b43b17d99a593dd49ad60fc0d58b8277e5d","aria-label":d("bh-breadcrumbs","breadcrumbAriaLabel",this.breadcrumbAriaLabel,"Breadcrumb"),class:"breadcrumbs",onKeyDown:this.handleKeyDown,part:"nav"},t("div",{key:"cc964e1c00640c648a920054a452e9cafe8a78db",class:"breadcrumbs-container",part:"container"},this.showHome&&t("div",{key:"30fa03d35c755a4a5a97b2bcc41b74acebba150f",class:"breadcrumb-item"},t("bh-button-icon",{key:"b127f1a3870d256542e6ff8e152e34f1b1093d24","aria-label":d("bh-breadcrumbs","homeAriaLabel",this.homeAriaLabel,"Home"),hierarchy:"tertiary",iconName:"cottage",onClick:this.handleHomeClick,size:"xs"})),this.showHome&&(r.length>0||e)&&this.renderSeparator(),e&&r.length>0&&t(o,{key:"07b012c3b6434053f2d5f6749d9297ddc70fe361"},t("div",{key:"eeba0b525ce5df68f869d7888840941837d02593",class:"breadcrumb-item"},this.renderBreadcrumbItem(r[0],0)),this.renderSeparator(),t("div",{key:"8a1bf31016951cabc19a979c8fa8de91a57f36c5",class:"breadcrumb-item",part:"item"},t("button",{key:"f61306ddeeb8bf9e8e6f5b47feb5ea95d3fe4948","aria-label":i,class:"breadcrumb-button breadcrumb-ellipsis",onClick:this.handleEllipsisClick,onKeyDown:this.handleEllipsisKeyDown,part:"ellipsis-button",title:i,type:"button"},t("span",{key:"0faf5dcd8c4e9ef2499fbd7910f1eb1772168d10",class:"breadcrumb-text",part:"text"},"..."))),this.renderSeparator(),r.slice(1).map(((e,a)=>t(o,null,t("div",{class:"breadcrumb-item",key:`item-${a+1}`},this.renderBreadcrumbItem(e,a+1)),a<r.slice(1).length-1&&this.renderSeparator())))),!e&&r.map(((e,a)=>t(o,null,t("div",{class:"breadcrumb-item",key:`item-${a}`},this.renderBreadcrumbItem(e,a)),a<r.length-1&&this.renderSeparator())))))}};v.style='@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } :root { --bh-breakpoint-xs: 0; --bh-breakpoint-sm: 576px; --bh-breakpoint-md: 768px; --bh-breakpoint-lg: 992px; --bh-breakpoint-xl: 1200px; --bh-breakpoint-xxl: 1400px; --bh-container-sm: 540px; --bh-container-md: 720px; --bh-container-lg: 960px; --bh-container-xl: 1140px; --bh-container-xxl: 1320px; } @layer bh-tokens, bh-base, bh-variants, bh-states, bh-utilities; @layer bh-tokens { :host { display: block; --bh-breadcrumbs-color: var(--color-text-secondary); --bh-breadcrumbs-color-hover: var(--color-text-primary); --bh-breadcrumbs-bg-hover: var(--color-bg-secondary); --bh-breadcrumbs-current-bg: var(--color-bg-secondary); --bh-breadcrumbs-current-color: var(--color-text-primary); --bh-breadcrumbs-separator-color: var(--color-border-primary); --bh-breadcrumbs-focus-ring-color: var(--color-border-interactive); } } @layer bh-base { .breadcrumbs { font-family: var(--font-inter); user-select: none; } .breadcrumbs-container { display: flex; align-items: center; gap: var(--spacing-xs); flex-wrap: wrap; } .breadcrumb-item { display: flex; align-items: center; } .breadcrumb-button { display: flex; align-items: center; justify-content: center; padding: var(--spacing-xs) var(--spacing-sm); border: none; background: transparent; border-radius: var(--radius-sm); cursor: pointer; transition: background-color var(--animation-duration-fast) ease, color var(--animation-duration-fast) ease; color: var(--bh-breadcrumbs-color); text-decoration: none; font-family: var(--font-inter); font-size: var(--text-sm-size); font-weight: var(--weight-medium); line-height: var(--line-height-normal); min-height: var(--bh-breadcrumbs-min-height); box-sizing: border-box; } .breadcrumb-text { white-space: nowrap; max-width: var(--bh-breadcrumbs-item-max-width); overflow: hidden; text-overflow: ellipsis; } .breadcrumb-icon { flex-shrink: 0; font-size: var(--bh-breadcrumbs-icon-size); width: var(--bh-breadcrumbs-icon-size); height: var(--bh-breadcrumbs-icon-size); color: var(--bh-breadcrumbs-color); } .breadcrumb-separator { display: flex; align-items: center; color: var(--bh-breadcrumbs-separator-color); font-size: var(--bh-breadcrumbs-icon-size); flex-shrink: 0; } .breadcrumb-separator .material-symbols-outlined { font-size: var(--bh-breadcrumbs-icon-size); width: var(--bh-breadcrumbs-icon-size); height: var(--bh-breadcrumbs-icon-size); } .material-symbols-outlined { font-family: "Material Symbols Outlined"; font-weight: normal; font-style: normal; line-height: 1; letter-spacing: normal; text-transform: none; display: inline-block; white-space: nowrap; word-wrap: normal; direction: ltr; font-feature-settings: "liga"; -webkit-font-smoothing: antialiased; font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24; font-size: var(--icon-size-lg); } } @layer bh-variants { .breadcrumb-home { padding: var(--spacing-xs); min-width: var(--bh-breadcrumbs-min-height); min-height: var(--bh-breadcrumbs-min-height); } .breadcrumb-home .breadcrumb-icon { font-size: var(--text-lg-size); width: var(--text-lg-size); height: var(--text-lg-size); } .breadcrumb-current { background-color: var(--bh-breadcrumbs-current-bg); color: var(--bh-breadcrumbs-current-color); font-weight: var(--weight-medium); cursor: default; } .breadcrumb-ellipsis { color: var(--bh-breadcrumbs-color); font-weight: var(--weight-medium); } } @layer bh-states { .breadcrumb-button:hover { background-color: var(--bh-breadcrumbs-bg-hover); color: var(--bh-breadcrumbs-color-hover); } .breadcrumb-button:focus-visible { outline: 2px solid var(--bh-breadcrumbs-focus-ring-color); outline-offset: 2px; } .breadcrumb-current:hover { background-color: var(--bh-breadcrumbs-current-bg); color: var(--bh-breadcrumbs-current-color); } .breadcrumb-ellipsis:hover { background-color: var(--bh-breadcrumbs-bg-hover); color: var(--bh-breadcrumbs-color-hover); } } @layer bh-utilities { @media (max-width: 640px) { .breadcrumb-text { max-width: var(--bh-breadcrumbs-item-max-width-sm); } .breadcrumbs-container { gap: var(--spacing-xxs); } .breadcrumb-button { padding: var(--spacing-xxs) var(--spacing-xs); font-size: var(--text-xs-size); } } } .breadcrumb-dropdown { position: relative; display: inline-flex; } .breadcrumb-dropdown-trigger { display: inline-flex; align-items: center; gap: var(--spacing-xs); } .breadcrumb-dropdown-chevron { font-size: var(--icon-size-base); color: var(--color-text-disabled); transition: color var(--animation-duration-normal) ease; } .breadcrumb-dropdown-trigger:hover .breadcrumb-dropdown-chevron { color: var(--color-text-secondary); } .breadcrumb-dropdown-menu { position: absolute; top: calc(100% + var(--spacing-xs)); left: 0; z-index: var(--bh-z-index-dropdown); min-width: 240px; background: var(--color-surface-elevated); border-radius: var(--radius-md); box-shadow: var(--shadow-dropdown); overflow: hidden; box-sizing: border-box; padding: var(--spacing-xs); } .breadcrumb-dropdown-search { display: flex; align-items: center; gap: var(--spacing-md); padding: var(--spacing-md); border-bottom: 1px solid var(--color-border-secondary); margin-bottom: var(--spacing-xs); } .breadcrumb-dropdown-search .material-symbols-outlined { font-size: var(--icon-size-base); color: var(--color-text-secondary); } .breadcrumb-dropdown-search input { flex: 1; min-width: 0; border: none; outline: none; background: transparent; font-family: var(--font-inter); font-size: var(--text-sm-size); color: var(--color-text-primary); } .breadcrumb-dropdown-search input::placeholder { color: var(--color-text-tertiary); } .breadcrumb-dropdown-item { display: flex; align-items: center; gap: var(--spacing-md); width: 100%; padding: var(--spacing-md); border: none; background: transparent; border-radius: var(--radius-sm); font-family: var(--font-inter); font-size: var(--text-sm-size); color: var(--color-text-primary); cursor: pointer; text-align: left; transition: background-color var(--animation-duration-fast) ease; } .breadcrumb-dropdown-item .material-symbols-outlined { font-size: var(--icon-size-base); color: var(--color-text-secondary); } .breadcrumb-dropdown-item:hover { background: var(--color-bg-secondary); } .breadcrumb-dropdown-item.selected { background: var(--color-neutral-200); }';export{v as bh_breadcrumbs}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e,c as t,a as i,h as s,H as a}from"./p-CTHvNfIu.js";import{T as r,s as h}from"./p-_HEoiOQg.js";import{P as o}from"./p-Sdr_qqWO.js";import{c as n,a as d}from"./p-CS8F5LFw.js";import{c,r as l}from"./p-YLeLKAYJ.js";import{c as p}from"./p-YdVz1TeW.js";import{m as b,M as u}from"./p-CSH9RXgl.js";import{B as m,r as g}from"./p-BNVOtH-1.js";import{i as f,a as k}from"./p-BqJRACkO.js";import{t as y}from"./p-Bf0qW3wI.js";import{A as v}from"./p-BoVgy_Ao.js";import"./p-zdFuIabL.js";const w=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],x=1900,C=2200,M=class{constructor(i){e(this,i),this.bhChange=t(this,"bhChange"),this.bhFocus=t(this,"bhFocus"),this.bhBlur=t(this,"bhBlur"),this.bhOpen=t(this,"bhOpen"),this.bhClose=t(this,"bhClose")}destroy$=n();logger=c("bh-date-picker");stateManager;closeTimerId=null;get el(){return i(this)}variant="input";minYear=1998;maxYear=2060;disabled=!1;disabledDates=[];label="Select Date";placeholder="Choose date";inputWidth="200px";showLabel=!0;showFooter=!1;showOtherMonthDays=!0;value;menuStyles={};openUpward=!1;openToLeft=!1;isMenuClosing=!1;isMenuOpen=!1;menuContainerEl;menuAnchor=new r;get safeMinYear(){return!Number.isFinite(this.minYear)||this.minYear<x?(this.logger.warn("minYear out of bounds, using default",{provided:this.minYear,using:x}),x):this.minYear>C?(this.logger.warn("minYear exceeds maximum, using max",{provided:this.minYear,using:C}),C):this.minYear}get safeMaxYear(){if(!Number.isFinite(this.maxYear)||this.maxYear>C)return this.logger.warn("maxYear out of bounds, using default",{provided:this.maxYear,using:C}),C;if(this.maxYear<x)return this.logger.warn("maxYear below minimum, using min",{provided:this.maxYear,using:x}),x;const e=this.safeMinYear;return this.maxYear<e?e:this.maxYear}bhChange;bhFocus;bhBlur;bhOpen;bhClose;focusState=p();i18nUnsubscribe;focusVersion=0;_i18nVersion=0;handleInputFocus=()=>{this.disabled||this.stateManager?.isOpen||this.handleTriggerClick()};componentDidCatch(e){this.logger.error("Component error caught",e instanceof Error?e:new Error(String(e))),b.increment(u.COMPONENT_ERROR,{component:"bh-date-picker"}),l("bh-date-picker",e)}handleValueChange(e){this.stateManager&&this.stateManager.setValue(e??null)}componentWillLoad(){this.focusState.onChange((()=>{this.focusVersion++})),this.stateManager=new o({onOpen:()=>{this.isMenuOpen=!0,this.bhOpen.emit()},onClose:()=>{this.isMenuOpen=!1,this.bhClose.emit()},onApply:e=>{this.bhChange.emit(e)}}),this.value&&this.stateManager.setValue(this.value),this.i18nUnsubscribe=m.onLocaleChange((()=>{this._i18nVersion++}))}getDisplayValue(){const e=this.stateManager?.committedValue;return e?`${w[e.month]} ${e.day}, ${e.year}`:""}getButtonLabel(){return this.getDisplayValue()||this.placeholder}handleTriggerClick=()=>{if(!this.disabled)if(this.stateManager.isOpen)this.closeMenu();else{const e=this.el.getBoundingClientRect(),t=window.innerHeight-e.bottom,i=window.innerWidth-e.left;this.openUpward=t<360&&e.top>360,this.openToLeft=i<300,this.stateManager.open()}};handleFocus=e=>{this.focusState.handleFocus(e,(e=>this.bhFocus.emit(e)))};handleBlur=e=>{this.focusState.handleBlur(e,(e=>this.bhBlur.emit(e)))};handleKeyDown=e=>{f(e)&&this.stateManager.isOpen&&(e.preventDefault(),this.closeMenu()),!this.disabled&&k(e)&&(e.preventDefault(),this.handleTriggerClick())};handleMouseEnter=()=>{this.focusState.handleMouseEnter()};handleMouseLeave=()=>{this.focusState.handleMouseLeave()};handleDateSelect=e=>{e.stopPropagation();const t=e.detail;this.showFooter&&t?this.stateManager.setTempValue(t):t&&(this.stateManager.setValue(t),this.bhChange.emit(t),this.showFooter||this.closeMenu())};handleMenuAction=e=>{"apply"===e.detail.action?this.handleMenuApply():"cancel"===e.detail.action?this.handleMenuCancel():this.handleToday()};handleMenuCancel=()=>{this.stateManager.cancel(),this.closeMenu()};handleMenuApply=()=>{this.stateManager.apply(),this.closeMenu()};handleToday=()=>{const e=new Date,t={year:e.getFullYear(),month:e.getMonth(),day:e.getDate()};this.showFooter?this.stateManager.setTempValue(t):(this.stateManager.setValue(t),this.bhChange.emit(t),this.closeMenu())};closeMenu(){this.isMenuClosing=!0,null!==this.closeTimerId&&(clearTimeout(this.closeTimerId),this.closeTimerId=null);const e=this.destroy$?y(v.MENU_CLOSE,this.destroy$):null;e?e.subscribe((()=>{this.stateManager.close(),this.isMenuClosing=!1,this.closeTimerId=null})):this.closeTimerId=setTimeout((()=>{this.stateManager.close(),this.isMenuClosing=!1,this.closeTimerId=null}),v.MENU_CLOSE)}componentDidRender(){this.menuAnchor.sync(this.isMenuOpen,this.menuContainerEl,this.el,{upward:this.openUpward,toLeft:this.openToLeft})}disconnectedCallback(){this.menuAnchor.destroy(),null!==this.closeTimerId&&(clearTimeout(this.closeTimerId),this.closeTimerId=null),d(this.destroy$),this.i18nUnsubscribe?.()}handleBackdropClick=()=>{this.handleMenuCancel()};render(){const e={"date-picker-container":!0,"date-picker-focused":this.focusState.isFocused,"date-picker-hovered":this.focusState.isHovered};return s(a,{key:"bdc89e36e319b09fe8b3e6138689f24a20506ce5"},s("div",{key:"b33f847689a5c1f170db7fb73ce1d597402c773d","aria-disabled":this.disabled?"true":void 0,"aria-expanded":String(this.isMenuOpen),"aria-haspopup":"dialog","aria-label":g("bh-date-picker","defaultLabel",this.label,"Select Date"),class:e,"data-focused":String(this.focusState.isFocused),"data-hovered":String(this.focusState.isHovered),onBlur:this.handleBlur,onFocus:this.handleFocus,onKeyDown:this.handleKeyDown,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,part:"container",role:"combobox",tabindex:this.disabled?-1:0},"dropdown-outlined"===this.variant&&s("div",{key:"186e0039f11670234bc642e3d037839a13370e27",class:"date-picker-trigger",onClick:this.handleTriggerClick,part:"trigger"},s("bh-button",{key:"ead8b633f7a0650409b320fc52647433e27e6424",disabled:this.disabled,hierarchy:"secondary",icon:"trailing",iconName:"expand_more",label:this.getButtonLabel(),size:"sm"})),"dropdown-ghost"===this.variant&&s("div",{key:"6b11aebace35b7ce5a1266825016e88c7ae8a63d",class:"date-picker-trigger",onClick:this.handleTriggerClick,part:"trigger"},s("bh-button",{key:"74ab8d177aa2b519c607385e82efa64196ea5aa6",disabled:this.disabled,hierarchy:"tertiary",icon:"trailing",iconName:"expand_more",label:this.getButtonLabel(),size:"sm"})),"input"===this.variant&&s("div",{key:"9beb49a326305ee6299024465ed7a9fceef168cb",class:"date-picker-trigger input-field-container",part:"trigger"},s("bh-input-text",{key:"4bd03000215aeab5c198f1dc810e4511918dd728",disabled:this.disabled,label:g("bh-date-picker","defaultLabel",this.label,"Select Date"),onFocus:this.handleInputFocus,placeholder:g("bh-date-picker","defaultPlaceholder",this.placeholder,"Choose date"),readOnly:!0,showHelpIcon:!1,showHintText:!1,showLabel:this.showLabel,showTrailingIcon:!0,trailingIcon:"calendar_today",value:this.getDisplayValue(),width:this.inputWidth}),s("div",{key:"012261804aa24a96a61887920913338fc93fde36",class:"calendar-icon-overlay",onClick:this.handleTriggerClick})),s("div",{key:"dc383f16e5c4bee5081148da454e7f6aaab27840",class:{"date-picker-menu-container":!0,"is-open":this.isMenuOpen&&!h,"open-upward":this.openUpward,"open-left":this.openToLeft},part:"menu",popover:h?"manual":void 0,ref:e=>this.menuContainerEl=e},s("bh-picker-menu",{key:"8065433414c804f7f95f8c9257a20d103b0c0b74",disableApply:this.showFooter&&null===this.stateManager?.tempValue,onBhAction:this.handleMenuAction,showFooter:this.showFooter,showTodayButton:this.showFooter,visible:this.isMenuOpen},s("bh-date-picker-content",{key:"50087791b84167d67105062b293368b3e7699347",disabled:this.disabled,disabledDates:this.disabledDates,maxYear:this.safeMaxYear,minYear:this.safeMinYear,onBhChange:this.handleDateSelect,showOtherMonthDays:this.showOtherMonthDays,value:this.stateManager?.tempValue??this.stateManager?.committedValue??void 0})))),(this.isMenuOpen||this.isMenuClosing)&&s("div",{key:"571aedbc8f942e4ea9332d97c870689fd26d8c0b",class:"date-picker-backdrop",onClick:this.handleBackdropClick}))}static get watchers(){return{value:[{handleValueChange:0}]}}};M.style="@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}@layer bh-tokens,bh-base,bh-variants,bh-states,bh-utilities; @layer bh-tokens{:host{display:block;position:relative;--bh-date-picker-bg:var(--color-bg-primary);--bh-date-picker-border-color:var(--color-border-primary);--bh-date-picker-border-radius:var(--radius-md);--bh-date-picker-dropdown-shadow:var(--shadow-popup);--bh-date-picker-z-index:var(--bh-z-index-dropdown)}}@layer bh-base{.date-picker-container{width:100%}.date-picker-trigger{cursor:pointer}.date-picker-trigger.input-field-container{position:relative}.calendar-icon-overlay{position:absolute;top:0;right:0;width:var(--bh-button-height-md);height:100%;cursor:pointer;z-index:1}.date-picker-menu-container{position:fixed;z-index:var(--bh-z-index-dropdown);display:none;margin-top:var(--bh-date-picker-dropdown-offset, var(--spacing-md))}.date-picker-menu-container.open-upward{margin-top:0;margin-bottom:var(--bh-date-picker-dropdown-offset, var(--spacing-md))}.date-picker-menu-container{}.date-picker-menu-container:popover-open{display:block;inset:auto;margin:0;border:none;padding:0;background:transparent;overflow:visible}.date-picker-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:var(--bh-z-index-raised);background:transparent}}@layer bh-states{.date-picker-menu-container.is-open{display:block}}";export{M as bh_date_picker}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as i,a as e,h as o,H as s}from"./p-CTHvNfIu.js";import{g as h}from"./p-CLrVoF3x.js";import{T as a,s as r}from"./p-_HEoiOQg.js";import{b as n,c as l,M as p}from"./p-R-A72b5e.js";import{c,r as u}from"./p-YLeLKAYJ.js";import{c as d,a as b}from"./p-CS8F5LFw.js";import{c as m}from"./p-Dn-MvAk9.js";import{t as f}from"./p-Bf0qW3wI.js";import{B as v,r as g}from"./p-BNVOtH-1.js";import{K as x}from"./p-zdFuIabL.js";import{A as w}from"./p-BoVgy_Ao.js";import"./p-CSH9RXgl.js";const I=class{constructor(e){t(this,e),this.bhInput=i(this,"bhInput"),this.bhChange=i(this,"bhChange"),this.bhFocus=i(this,"bhFocus"),this.bhBlur=i(this,"bhBlur"),this.bhHelpClick=i(this,"bhHelpClick")}get el(){return e(this)}static LAYOUT={DEGRADED_MAX_OPTIONS:5,MIN_TAGS_CONTAINER_WIDTH:80,TAG_CHAR_WIDTH:8,TAG_BASE_PADDING:36,MAX_TAG_WIDTH:150,SEARCH_ICON_WIDTH:40,CLEAR_BUTTON_WIDTH:32,INPUT_MIN_WIDTH:60,CONTAINER_PADDING:24,TAG_SPACING:8,COUNTER_WIDTH:40,DEFAULT_CONTAINER_WIDTH:450};logger=c("bh-input-autocomplete");destroy$=d();blurSubscription;i18nUnsubscribe;menuId=h("bh-ac-menu");listboxId=`${this.menuId}-listbox`;_errorHandler;get handleComponentError(){return this._errorHandler||(this._errorHandler=m({componentName:"bh-input-autocomplete",logger:this.logger})),this._errorHandler}state;error=!1;required=!1;disabled=!1;showHelpIcon=!1;showLeadingIcon=!0;showLabel=!0;showHintText=!0;label="";placeholder="";hintText="This is a hint text to help user.";leadingIcon="search";helpIconTooltip="Help";value="";width="450px";size="md";options=[];maxOptions=10;multiSelect=!1;minSearchLength=3;selectedItems=[];showDropdown=!1;autocompleteMenuEl;menuAnchor=new a;focusedOptionIndex=-1;isFocused=!1;isHovered=!1;isTagClickOpen=!1;filteringDegraded=!1;_i18nVersion=0;bhInput;bhChange;bhFocus;bhBlur;bhHelpClick;componentDidCatch(t){this.handleComponentError(t)}get safeWidth(){if(!this.width)return"";const t=n(this.width,50);return t.valid?t.value:(u("bh-input-autocomplete",new Error(`Invalid width: ${t.errors.map((t=>t.message)).join(", ")}`)),"450px")}handleValueChange(t){t&&t.length>=this.minSearchLength&&(this.showDropdown=!0)}get filteredOptions(){let t=[];if(this.isTagClickOpen&&this.multiSelect)t=this.selectedItems;else if(!this.showDropdown||this.value&&0!==this.value.length){if(this.value&&this.value.length>=this.minSearchLength){const i=this.value.toLowerCase();try{this.options.length>1e3?(this.filteringDegraded||(this.filteringDegraded=!0,this.logger.info("Using optimized prefix filtering for large dataset",{optionsCount:this.options.length})),t=this.options.filter((t=>t.label.toLowerCase().startsWith(i))).slice(0,Math.min(this.maxOptions,I.LAYOUT.DEGRADED_MAX_OPTIONS))):(t=this.options.filter((t=>t.label.toLowerCase().includes(i))).slice(0,this.maxOptions),this.filteringDegraded=!1)}catch(i){u("bh-input-autocomplete",i),t=this.options.slice(0,this.maxOptions)}}}else t=this.options.slice(0,this.maxOptions);return t.map((t=>({...t,selected:this.multiSelect&&this.selectedItems.some((i=>i.id===t.id))})))}get shouldShowClearButton(){return!this.disabled&&(this.multiSelect&&this.selectedItems.length>0||!this.multiSelect&&Boolean(this.value&&this.value.length>0))}get visibleTags(){if(!this.multiSelect||0===this.selectedItems.length)return{tags:[],remaining:0};const{LAYOUT:t}=I,i=Number.parseFloat(this.width.replace("px",""))||t.DEFAULT_CONTAINER_WIDTH,e=Math.max(i-((this.showLeadingIcon?t.SEARCH_ICON_WIDTH:0)+(this.shouldShowClearButton?t.CLEAR_BUTTON_WIDTH:0)+t.INPUT_MIN_WIDTH+t.CONTAINER_PADDING),t.MIN_TAGS_CONTAINER_WIDTH);let o=0;const s=[],h=this.selectedItems.toReversed();for(let i=0;i<h.length;i++){const a=h[i],r=Math.min(a.label.length*t.TAG_CHAR_WIDTH+t.TAG_BASE_PADDING,t.MAX_TAG_WIDTH);if(!(o+r+(h.length-(i+1)>0?t.COUNTER_WIDTH:0)<=e))break;s.push(a),o+=r+t.TAG_SPACING}const a=s.toReversed();return{tags:a,remaining:this.selectedItems.length-a.length}}get activeDescendantId(){if(this.showDropdown&&this.focusedOptionIndex>=0&&this.focusedOptionIndex<this.filteredOptions.length)return`${this.menuId}-option-${this.focusedOptionIndex}`}handleInputChange=t=>{const i=l(t.target.value,p);this.value=i.value,i.valid||u("bh-input-autocomplete",new Error(i.errors.map((t=>t.message)).join(", "))),this.bhInput.emit(this.value),this.isTagClickOpen=!1,this.value.length>=this.minSearchLength?this.focusedOptionIndex=-1:this.showDropdown=!1};handleInputFocus=()=>{this.isFocused=!0,this.bhFocus.emit(),this.value&&this.value.length>=this.minSearchLength&&this.filteredOptions.length>0&&(this.showDropdown=!0)};getInputTextState(){return"placeholder"===this.state?"default":"focused"===this.state?"focus":this.state}handleInputBlur=()=>{this.blurSubscription&&(this.blurSubscription.unsubscribe(),this.blurSubscription=void 0),this.destroy$&&(this.blurSubscription=f(w.BLUR_DELAY,this.destroy$)?.subscribe((()=>{this.isFocused=!1,this.showDropdown=!1,this.focusedOptionIndex=-1,this.isTagClickOpen=!1,this.bhBlur.emit(),this.blurSubscription=void 0})))};componentWillLoad(){this.i18nUnsubscribe=v.onLocaleChange((()=>{this._i18nVersion++}))}componentDidRender(){this.menuAnchor.sync(this.showDropdown,this.autocompleteMenuEl,this.el,{offset:4})}disconnectedCallback(){this.menuAnchor.destroy(),b(this.destroy$),this.blurSubscription&&(this.blurSubscription.unsubscribe(),this.blurSubscription=void 0),this.i18nUnsubscribe?.()}handleOptionSelect=t=>{const i=t.detail;if(!i.disabled)if(this.multiSelect){const t=this.selectedItems.some((t=>t.id===i.id))?this.selectedItems.filter((t=>t.id!==i.id)):[...this.selectedItems,i];this.selectedItems=t,this.bhChange.emit(t),this.value="",this.bhInput.emit(""),this.isTagClickOpen=!1,this.showDropdown=!1}else this.value=i.label,this.bhChange.emit(i),this.bhInput.emit(i.label),this.showDropdown=!1};handleTagRemove=t=>{const i=this.selectedItems.filter((i=>i.id!==t.id));this.selectedItems=i,this.bhChange.emit(i)};handleTagClick=t=>{t.target.closest(".tag-dismiss")||(t.preventDefault(),t.stopPropagation(),this.disabled||(this.isTagClickOpen=!0,this.showDropdown=!0,this.isFocused=!0))};handleClearAll=()=>{this.multiSelect&&(this.selectedItems=[],this.bhChange.emit([])),this.value="",this.bhInput.emit("")};handleKeyDown=t=>{if(this.showDropdown&&0!==this.filteredOptions.length)switch(t.key){case x.ARROW_DOWN:t.preventDefault(),this.focusedOptionIndex=this.focusedOptionIndex<this.filteredOptions.length-1?this.focusedOptionIndex+1:0;break;case x.ARROW_UP:t.preventDefault(),this.focusedOptionIndex=this.focusedOptionIndex>0?this.focusedOptionIndex-1:this.filteredOptions.length-1;break;case x.ENTER:t.preventDefault(),this.focusedOptionIndex>=0&&this.focusedOptionIndex<this.filteredOptions.length&&this.handleOptionSelect({detail:this.filteredOptions[this.focusedOptionIndex]});break;case x.ESCAPE:t.preventDefault(),this.showDropdown=!1,this.focusedOptionIndex=-1}};handleItemHover=t=>{this.focusedOptionIndex=t.detail};render(){const{tags:t,remaining:i}=this.visibleTags;return o(s,{key:"0f9850f06815fc6c90f1a9520b84e9549668b71a"},o("div",{key:"851f05c4be75e2e14ce430e25feac0951a9d8db3",class:"input-autocomplete-wrapper",onKeyDown:this.handleKeyDown,part:"wrapper",style:{width:this.safeWidth}},this.multiSelect?o("div",{class:"input-wrapper",part:"input-wrapper"},o("bh-label",{disabled:this.disabled,helpIconTooltip:g("bh-input-autocomplete","helpIconTooltip",this.helpIconTooltip,"Help"),label:this.showLabel?this.label:"",onBhHelpClick:()=>this.bhHelpClick.emit(),required:this.required,showHelpIcon:this.showHelpIcon},o("div",{class:{"input-field":!0,[`input-field-${this.size}`]:!0,"autocomplete-multi-input":!0,"input-error":this.error,"input-disabled":this.disabled,"input-focused":this.isFocused,"input-hover":this.isHovered},onMouseEnter:()=>!this.isFocused&&(this.isHovered=!0),onMouseLeave:()=>this.isHovered=!1,part:"input-field"},o("div",{class:"input-content-flow"},this.showLeadingIcon&&o("span",{class:"material-symbols-outlined leading-icon"},this.leadingIcon),t.map((t=>o("div",{class:"tag-wrapper",key:t.id,onClick:this.handleTagClick,onMouseDown:t=>t.preventDefault()},o("bh-tag",{disabled:this.disabled,dismissible:!this.disabled,label:t.label,maxWidth:150,onBhClose:()=>this.handleTagRemove(t),size:"sm",variant:"text-only"})))),i>0&&o("div",{class:"overflow-tag",onClick:this.handleTagClick,onMouseDown:t=>t.preventDefault()},o("bh-tag",{disabled:this.disabled,dismissible:!1,label:`+${i}`,size:"sm",variant:"text-only"})),o("input",{"aria-activedescendant":this.activeDescendantId,"aria-autocomplete":"list","aria-controls":this.listboxId,"aria-expanded":this.showDropdown?"true":"false","aria-invalid":this.error?"true":void 0,"aria-required":this.required?"true":void 0,class:"inline-input",disabled:this.disabled,onBlur:this.handleInputBlur,onFocus:this.handleInputFocus,onInput:this.handleInputChange,placeholder:0===t.length?this.placeholder:"",role:"combobox",type:"text",value:this.value}),this.shouldShowClearButton&&o("bh-button-icon",{disabled:this.disabled,hierarchy:"tertiary",iconName:"close",onBhClick:this.handleClearAll,size:"xs"})))),this.showHintText&&this.hintText&&o("div",{class:{"hint-text":!0,"hint-error":this.error,"hint-hidden":this.showDropdown}},this.hintText)):o("bh-input-text",{disabled:this.disabled,error:this.error,helpIconTooltip:g("bh-input-autocomplete","helpIconTooltip",this.helpIconTooltip,"Help"),hintText:this.hintText,label:this.label,leadingIcon:this.leadingIcon,onBhBlur:this.handleInputBlur,onBhFocus:this.handleInputFocus,onBhHelpClick:()=>this.bhHelpClick.emit(),onBhInput:t=>{this.value=t.detail,this.bhInput.emit(this.value),this.isTagClickOpen=!1,this.showDropdown=this.value.length>=this.minSearchLength},placeholder:this.placeholder,required:this.required,showHelpIcon:this.showHelpIcon,showHintText:this.showHintText,showLabel:this.showLabel,showLeadingIcon:this.showLeadingIcon,size:this.size,state:this.getInputTextState(),value:this.value,width:"100%"}),o("div",{key:"07d68f7c9bd66cf8ba3a13e9aa8e683753012795","aria-atomic":"true","aria-live":"polite",class:"sr-only",role:"status"},this.showDropdown&&this.filteredOptions.length>0?`${this.filteredOptions.length} result${1===this.filteredOptions.length?"":"s"} available`:""),o("bh-autocomplete-menu",{key:"88e1a14561a8467d3ffcbd04abc24f382412a59b",listboxId:this.listboxId,menuId:this.menuId,menuItems:this.filteredOptions,multiSelect:this.multiSelect,onBhItemClick:this.handleOptionSelect,onBhItemHover:this.handleItemHover,popover:r?"manual":void 0,ref:t=>this.autocompleteMenuEl=t,searchQuery:this.value,selectedIndex:this.focusedOptionIndex,visible:this.showDropdown})))}static get watchers(){return{value:[{handleValueChange:0}]}}};I.style="@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}@layer bh-tokens,bh-base,bh-variants,bh-states,bh-utilities; @layer bh-tokens{:host{display:block;position:relative;--bh-input-autocomplete-bg:var(--color-bg-primary);--bh-input-autocomplete-border-color:var(--color-border-primary);--bh-input-autocomplete-border-color-hover:var(--color-border-secondary);--bh-input-autocomplete-border-color-focus:var(--color-border-interactive);--bh-input-autocomplete-border-color-error:var(--color-border-error);--bh-input-autocomplete-focus-shadow:var(--color-brand-100);--bh-input-autocomplete-error-focus-shadow:var(--color-error-100);--bh-input-autocomplete-bg-disabled:var(--color-bg-secondary);--bh-input-autocomplete-text-color:var(--color-text-primary);--bh-input-autocomplete-text-color-disabled:var(--color-text-disabled);--bh-input-autocomplete-hint-color:var(--color-text-secondary);--bh-input-autocomplete-hint-error-color:var(--color-text-error);--bh-input-autocomplete-leading-icon-color:var(--color-text-secondary);--bh-input-autocomplete-font-family:var(--font-inter);--bh-input-autocomplete-font-size:var(--text-md-size);--bh-input-autocomplete-line-height:var(--text-md-line);--bh-input-autocomplete-hint-font-size:var(--text-sm-size);--bh-input-autocomplete-hint-line-height:var(--text-sm-line);--bh-input-autocomplete-border-radius:var(--radius-md);--bh-input-autocomplete-padding:var(--spacing-sm);--bh-input-autocomplete-padding-horizontal:var(--spacing-md);--bh-input-autocomplete-gap:var(--spacing-sm);--bh-input-autocomplete-gap-content:var(--spacing-xs)}}@layer bh-base{.input-autocomplete-wrapper{position:relative}.input-wrapper{display:flex;flex-direction:column;gap:var(--bh-input-autocomplete-gap)}.input-field{display:flex;align-items:center;min-height:44px;padding:var(--bh-input-autocomplete-padding) var(--bh-input-autocomplete-padding-horizontal);background:var(--bh-input-autocomplete-bg);border:1px solid var(--bh-input-autocomplete-border-color);border-radius:var(--bh-input-autocomplete-border-radius);transition:border-color var(--animation-duration-fast) ease, box-shadow var(--animation-duration-fast) ease}.input-content-flow{display:flex;flex-wrap:wrap;align-items:center;gap:var(--bh-input-autocomplete-gap-content);width:100%}.leading-icon{font-size:var(--icon-size-md);color:var(--bh-input-autocomplete-leading-icon-color);flex-shrink:0}.overflow-tag,.tag-wrapper{cursor:pointer}.inline-input{flex:1;min-width:60px;border:none;outline:none;background:transparent;font-family:var(--bh-input-autocomplete-font-family);font-size:var(--bh-input-autocomplete-font-size);line-height:var(--bh-input-autocomplete-line-height);color:var(--bh-input-autocomplete-text-color)}.hint-text{font-family:var(--bh-input-autocomplete-font-family);font-size:var(--bh-input-autocomplete-hint-font-size);line-height:var(--bh-input-autocomplete-hint-line-height);color:var(--bh-input-autocomplete-hint-color);transition:opacity var(--animation-duration-fast) ease}.hint-text.hint-hidden{opacity:0}}@layer bh-utilities{.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}}@layer bh-states{.input-field.input-hover{border-color:var(--bh-input-autocomplete-border-color-hover)}.input-field.input-focused{border-color:var(--bh-input-autocomplete-border-color-focus);box-shadow:0 0 0 4px var(--bh-input-autocomplete-focus-shadow)}.input-field.input-error{border-color:var(--bh-input-autocomplete-border-color-error)}.input-field.input-error.input-focused{box-shadow:0 0 0 4px var(--bh-input-autocomplete-error-focus-shadow)}.input-field.input-disabled{background:var(--bh-input-autocomplete-bg-disabled);cursor:not-allowed}.inline-input::placeholder{color:var(--bh-input-autocomplete-leading-icon-color)}.inline-input:disabled{cursor:not-allowed;color:var(--bh-input-autocomplete-text-color-disabled)}.hint-text.hint-error{color:var(--bh-input-autocomplete-hint-error-color)}}";export{I as bh_input_autocomplete}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as a,c as e,h as r,H as t}from"./p-CTHvNfIu.js";import{c as i,r as n}from"./p-YLeLKAYJ.js";import{m as s,M as h}from"./p-CSH9RXgl.js";const o="bh-page-header",l=class{constructor(r){a(this,r),this.bhItemClick=e(this,"bhItemClick")}logger=i(o);heading="";supportingText="";variant="simple";avatarSrc="";avatarAlt="";bannerSrc="";showBreadcrumbs=!0;showDivider=!0;showSearch=!0;breadcrumbItems=[];bhItemClick;componentDidCatch(a){this.logger.error("Component error caught",a instanceof Error?a:new Error(String(a))),s.increment(h.COMPONENT_ERROR,{component:o,error_type:a instanceof Error?a.name:"unknown"}),n(o,a)}get isBanner(){return this.variant.startsWith("banner")}get isCentered(){return this.variant.endsWith("centered")}get hasAvatar(){return"avatar"===this.variant||"banner-avatar"===this.variant||"banner-avatar-centered"===this.variant}renderBannerImage(){return this.isBanner?r("div",{class:"banner-image-wrap"},this.bannerSrc?r("img",{alt:"",class:"banner-image",loading:"lazy",src:this.bannerSrc}):r("div",{class:"banner-image-placeholder"})):null}renderAvatar(){return this.hasAvatar?r("div",{class:"avatar-wrap"},r("bh-avatar",{alt:this.avatarAlt||this.heading,imageSrc:this.avatarSrc,size:"avatar"===this.variant?"lg":"2xl",variant:this.avatarSrc?"image":"placeholder"})):null}renderHeadingContent(){return r("div",{class:"text-content"},this.heading&&r("h1",{class:"heading",part:"heading"},this.heading),this.supportingText&&r("p",{class:"supporting-text",part:"supporting-text"},this.supportingText))}renderActions(){return r("div",{class:"actions",part:"actions"},r("slot",{name:"actions"}))}renderSearch(){return this.showSearch?r("div",{class:"search-slot",part:"search"},r("slot",{name:"search"})):null}renderBreadcrumbs(){return this.showBreadcrumbs?r("div",{class:"breadcrumbs-slot",part:"breadcrumbs"},this.breadcrumbItems.length>0?r("bh-breadcrumbs",{items:this.breadcrumbItems,onBhItemClick:a=>this.bhItemClick.emit(a.detail),showHome:!0}):r("slot",{name:"breadcrumbs"})):null}renderDivider(){return this.showDivider?r("div",{class:"divider",part:"divider"}):null}renderTabs(){return r("div",{class:"tabs-slot",part:"tabs"},r("slot",{name:"tabs"}))}renderVariantContent(){switch(this.variant){case"banner-avatar":return r("div",{class:"avatar-and-content"},this.renderAvatar(),r("div",{class:"content-beside-avatar"},this.renderBreadcrumbs(),r("div",{class:"heading-row"},this.renderHeadingContent(),this.renderActions(),this.renderSearch())));case"banner-avatar-centered":return r("div",{class:"centered-content"},this.renderAvatar(),this.renderHeadingContent(),this.renderActions(),this.renderSearch(),this.renderBreadcrumbs());case"banner-simple-centered":return r("div",{class:"centered-content"},this.renderBreadcrumbs(),this.renderHeadingContent(),this.renderActions(),this.renderSearch());case"banner-simple":return r("div",{class:"content-block"},this.renderBreadcrumbs(),r("div",{class:"heading-row"},this.renderHeadingContent(),this.renderActions(),this.renderSearch()));case"avatar":return r("div",{class:"heading-row"},r("div",{class:"avatar-inline"},this.renderAvatar(),this.renderHeadingContent()),this.renderActions(),this.renderSearch());default:return r("div",{class:"heading-row"},this.renderHeadingContent(),this.renderActions(),this.renderSearch())}}render(){return r(t,{key:"d7b1e860bb40680faab346629adf834e8b5348f8","aria-label":this.heading||"Page header",role:"banner"},r("div",{key:"8cfbc1e96f504301d2cd5e1f891314f1ea389e5d",class:{"page-header":!0,[`variant-${this.variant}`]:!0,"is-banner":this.isBanner,"is-centered":this.isCentered,"has-avatar":this.hasAvatar},part:"base"},this.renderBannerImage(),r("div",{key:"c87b684268591133efccc1e342888cec21e3b453",class:"container"},!this.isBanner&&this.renderBreadcrumbs(),this.renderVariantContent(),this.renderTabs(),this.renderDivider())))}};l.style='@charset "UTF-8"; :root { --bh-breakpoint-xs: 0; --bh-breakpoint-sm: 576px; --bh-breakpoint-md: 768px; --bh-breakpoint-lg: 992px; --bh-breakpoint-xl: 1200px; --bh-breakpoint-xxl: 1400px; --bh-container-sm: 540px; --bh-container-md: 720px; --bh-container-lg: 960px; --bh-container-xl: 1140px; --bh-container-xxl: 1320px; } @layer bh-tokens, bh-base, bh-variants, bh-states, bh-utilities; @layer bh-tokens { :host { display: block; --bh-page-header-bg: var(--color-bg-primary); --bh-page-header-heading-color: var(--color-text-primary); --bh-page-header-supporting-color: var(--color-text-tertiary); --bh-page-header-divider-color: var(--color-border-secondary); --bh-page-header-banner-height: 240px; --bh-page-header-banner-height-mobile: 160px; --bh-page-header-avatar-size: 160px; --bh-page-header-avatar-size-mobile: 96px; --bh-page-header-avatar-border-color: var(--color-white); --bh-page-header-container-padding: var(--spacing-4xl); --bh-page-header-container-padding-mobile: var(--spacing-xl); } } @layer bh-base { .page-header { display: flex; flex-direction: column; align-items: stretch; width: 100%; font-family: var(--font-inter); } .container { display: flex; flex-direction: column; gap: var(--spacing-2xl); width: 100%; max-width: var(--sp-320); margin: 0 auto; padding: 0 var(--bh-page-header-container-padding); box-sizing: border-box; } .banner-image-wrap { width: 100%; height: var(--bh-page-header-banner-height); overflow: hidden; position: relative; } .banner-image { width: 100%; height: 100%; object-fit: cover; display: block; } .banner-image-placeholder { width: 100%; height: 100%; background: linear-gradient(135deg, var(--color-brand-400), var(--color-accent-400)); } .avatar-wrap { flex-shrink: 0; } .avatar-wrap bh-avatar { --avatar-size-2xl: var(--bh-page-header-avatar-size); display: block; border: 4px solid var(--bh-page-header-avatar-border-color); border-radius: var(--radius-full); box-shadow: var(--shadow-lg); } .avatar-wrap { } .avatar-wrap bh-avatar::part(border) { border: 1px solid var(--border-contrast-medium); } .avatar-inline bh-avatar { border: none; box-shadow: none; } .text-content { display: flex; flex-direction: column; gap: var(--spacing-xs); min-width: 0; } .heading { margin: 0; font-family: var(--font-inter); font-weight: var(--weight-medium); font-size: var(--display-xs-size); line-height: var(--text-2xl-line); color: var(--bh-page-header-heading-color); } .supporting-text { margin: 0; font-family: var(--font-inter); font-weight: var(--weight-regular); font-size: var(--text-sm-size); line-height: var(--text-sm-line); color: var(--bh-page-header-supporting-color); } .heading-row { display: flex; flex-wrap: wrap; align-items: flex-start; gap: var(--spacing-2xl) var(--spacing-xl); width: 100%; } .heading-row > .text-content { flex: 1 0 0; min-width: 320px; } .actions { display: flex; align-items: center; gap: var(--spacing-lg); flex-shrink: 0; } .search-slot { flex-shrink: 0; } .breadcrumbs-slot { display: flex; } .tabs-slot { display: contents; } .divider { width: 100%; height: 1px; background: var(--bh-page-header-divider-color); } .content-block { display: flex; flex-direction: column; gap: var(--spacing-2xl); padding-top: var(--spacing-3xl); } .avatar-inline { display: flex; align-items: center; gap: var(--spacing-2xl); flex: 1 0 0; min-width: 320px; } .avatar-inline .avatar-photo { width: var(--bh-avatar-size-lg); height: var(--bh-avatar-size-lg); box-shadow: none; border-width: 0; } .avatar-and-content { display: flex; gap: var(--spacing-3xl); align-items: flex-start; width: 100%; } .avatar-and-content > .avatar-wrap { margin-top: calc(-1 * var(--spacing-5xl)); } .content-beside-avatar { display: flex; flex-direction: column; flex: 1 0 0; min-width: 0; gap: var(--spacing-2xl); padding-top: var(--spacing-7xl); } .centered-content { display: flex; flex-direction: column; align-items: center; gap: var(--spacing-2xl); text-align: center; } .centered-content .text-content { max-width: 640px; align-items: center; } .centered-content > .avatar-wrap { margin-top: calc(-1 * var(--spacing-7xl)); } } @layer bh-variants { :host([variant=banner-avatar]) .banner-image-wrap { margin-bottom: calc(-1 * var(--spacing-5xl)); } :host([variant=banner-avatar-centered]) .banner-image-wrap { margin-bottom: calc(-1 * var(--spacing-7xl)); } :host([variant=banner-avatar-centered]) .container { padding-bottom: 0; } } @layer bh-utilities { @media (max-width: 768px) { .container { padding: 0 var(--bh-page-header-container-padding-mobile); gap: var(--spacing-xl); } .banner-image-wrap { height: var(--bh-page-header-banner-height-mobile); } .avatar-wrap bh-avatar { --avatar-size-2xl: var(--bh-page-header-avatar-size-mobile); } .heading-row > .text-content { min-width: 0; } .avatar-inline { min-width: 0; } .heading-row { flex-direction: column; gap: var(--spacing-xl); } .content-block { padding-top: 0; } } }';export{l as bh_page_header}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as a,a as i,h as s,H as e}from"./p-CTHvNfIu.js";import{M as r,A as o}from"./p-BoVgy_Ao.js";import{c as n,a as h}from"./p-CS8F5LFw.js";import{c as d}from"./p-CijzRD3j.js";import{c as l}from"./p-CtKihrmj.js";import{c}from"./p-YLeLKAYJ.js";import{C as p}from"./p-CNYUzrTZ.js";import{c as m}from"./p-Dn-MvAk9.js";import{m as b,M as f}from"./p-CSH9RXgl.js";import{t as u}from"./p-Bf0qW3wI.js";import{c as v}from"./p-CFlb5gKI.js";import{F as g}from"./p-C_OTXZLx.js";import"./p-BqJRACkO.js";import"./p-zdFuIabL.js";const y="bh-modal",x=class{constructor(i){t(this,i),this.bhClose=a(this,"bhClose"),this.bhBeforeOpen=a(this,"bhBeforeOpen"),this.bhOpen=a(this,"bhOpen"),this.bhAfterOpen=a(this,"bhAfterOpen"),this.bhBeforeClose=a(this,"bhBeforeClose"),this.bhAfterClose=a(this,"bhAfterClose")}get el(){return i(this)}destroy$=n();listeners=d();observers=l();dismissalManager;focusTrap=null;modalRef;previousActiveElement=null;pendingRafId;hasHandledVisibleChange=!1;logger=c(y);stateManager=new p("UNMOUNTED");_errorHandler;get handleComponentError(){return this._errorHandler||(this._errorHandler=m({componentName:y,logger:this.logger})),this._errorHandler}componentState="UNMOUNTED";focusTrapDegraded=!1;visible=!1;overlay=!0;width="sm";ariaLabel=null;ariaLabelledby;ariaDescribedby;ariaRoleDescription=null;ariaLevel="1";ariaActiveDescendant;ariaBusy="false";ariaDisabled="false";hideBackground=!0;portalTarget;dragEnabled=!1;dragEffect="none";grabbed=!1;bhClose;bhBeforeOpen;bhOpen;bhAfterOpen;bhBeforeClose;bhAfterClose;handleDocumentKeydown(t){this.visible&&"Escape"===t.key&&(t.defaultPrevented||(t.preventDefault(),t.stopPropagation(),this.handleClose("escape")))}componentDidCatch(t){this.handleComponentError(t)}handleDismiss=()=>{this.handleClose("escape")};handleVisibleChange(t){if(this.hasHandledVisibleChange=!0,t){const t=b.startTimer(f.ASYNC_OPERATION,{component:y,operation:"open",width:this.width});this.bhBeforeOpen.emit(),this.hideBackground&&this.hideBackgroundSiblings(),this.pendingRafId=requestAnimationFrame((()=>{this.pendingRafId=void 0,this.visible&&this.modalRef&&(this.initializeDismissalManager(),this.dismissalManager?.enable(),this.activateFocusTrap())})),this.bhOpen.emit(),this.destroy$&&u(o.IMMEDIATE,this.destroy$)?.subscribe((()=>{this.bhAfterOpen.emit(),t()}))}else{const t=b.startTimer(f.ASYNC_OPERATION,{component:y,operation:"close",width:this.width});this.hideBackground&&this.restoreBackgroundSiblings(),this.dismissalManager?.disable(),this.deactivateFocusTrap(),this.destroy$&&u(o.IMMEDIATE,this.destroy$)?.subscribe((()=>{this.bhAfterClose.emit(),t()}))}}connectedCallback(){}initializeDismissalManager(){!this.dismissalManager&&this.modalRef&&(this.dismissalManager=v(this.modalRef,{onDismiss:this.handleDismiss,escapeKey:!0,clickOutside:!1,focusLoss:!1}))}componentDidLoad(){this.modalRef&&(this.initializeDismissalManager(),this.observers.observeMutation(this.modalRef,(()=>{}),{attributes:!0,attributeFilter:["style","class"]})),this.visible&&!this.hasHandledVisibleChange&&this.handleVisibleChange(!0)}disconnectedCallback(){void 0!==this.pendingRafId&&(cancelAnimationFrame(this.pendingRafId),this.pendingRafId=void 0);const t=[()=>{this.visible&&this.hideBackground&&this.restoreBackgroundSiblings()},()=>this.dismissalManager?.destroy(),()=>this.listeners.removeAll(),()=>h(this.destroy$),()=>this.observers.disconnectAll(),()=>this.deactivateFocusTrap()];for(const a of t)try{a()}catch(t){this.logger.error("Cleanup operation failed in disconnectedCallback",t instanceof Error?t:new Error(String(t)))}}hiddenSiblings=[];hideBackgroundSiblings(){for(const t of Array.from(document.body.children))t.contains(this.el)||"SCRIPT"===t.tagName||"STYLE"===t.tagName||"true"===t.getAttribute("aria-hidden")||(t.setAttribute("aria-hidden","true"),this.hiddenSiblings.push(t))}restoreBackgroundSiblings(){for(const t of this.hiddenSiblings)t.removeAttribute("aria-hidden");this.hiddenSiblings=[]}activateFocusTrap(){if(!this.modalRef)return void this.logger.warn("Cannot activate focus trap: missing modal ref");const t=b.startTimer(f.ASYNC_OPERATION,{component:y,operation:"focus_trap_activation"}),a=this.logger.startTimer();try{this.stateManager.transition("LOADING","Activating focus trap"),this.previousActiveElement=document.activeElement,this.focusTrap=new g({container:this.el,escapeDeactivates:!1,returnFocus:!0}),this.focusTrap.activate();const i=a();i>50&&this.logger.warn("Slow focus trap activation",{duration:i,width:this.width}),this.logger.debug("Focus trap activated",{duration:i,previousElement:this.previousActiveElement?.tagName}),this.stateManager.transition("ACTIVE","Focus trap activated"),this.componentState="ACTIVE",this.focusTrapDegraded=!1,this.destroy$&&u(o.IMMEDIATE,this.destroy$)?.subscribe((()=>{t()}))}catch(t){this.stateManager.enterDegradedState({fallbackUI:"no-focus-trap",disabledFeatures:["focus-trap","auto-focus-return"],retryable:!1,maxRetries:0}),this.componentState="DEGRADED",this.focusTrapDegraded=!0,this.logger.warn("Modal degraded: focus trap failed",{reason:t instanceof Error?t.message:String(t),width:this.width,hasModalRef:!!this.modalRef}),b.increment(f.COMPONENT_ERROR,{component:y,error_type:"focus_trap_activation_failed"})}}deactivateFocusTrap(){const t=this.logger.startTimer();try{if(this.focusTrap&&(this.focusTrap.deactivate(),this.focusTrap=null),"function"==typeof this.previousActiveElement?.focus){try{this.previousActiveElement.focus();const a=t();this.logger.debug("Focus trap deactivated",{duration:a,restoredElement:this.previousActiveElement.tagName})}catch(t){this.logger.error("Failed to restore focus",t instanceof Error?t:new Error(String(t)),{previousElement:this.previousActiveElement?.tagName})}this.previousActiveElement=null}}catch(t){this.logger.error("Focus trap deactivation failed",t instanceof Error?t:new Error(String(t)),{width:this.width})}}handleClose=(t="close-button")=>{this.bhBeforeClose.emit({reason:t}),this.bhClose.emit({reason:t})};handleOverlayClick=t=>{t.target===t.currentTarget&&this.handleClose("overlay")};render(){return this.visible?s(e,null,s("div",{class:{"modal-wrapper":!0,"modal-with-overlay":this.overlay},onClick:this.handleOverlayClick,part:"wrapper"},this.overlay&&s("div",{class:"modal-overlay",part:"overlay"}),s("div",{"aria-activedescendant":this.ariaActiveDescendant,"aria-busy":String(this.ariaBusy),"aria-describedby":this.ariaDescribedby,"aria-dropeffect":this.dragEnabled?this.dragEffect:void 0,"aria-grabbed":this.dragEnabled?String(this.grabbed):void 0,"aria-label":this.ariaLabel,"aria-labelledby":this.ariaLabelledby,"aria-modal":"true","aria-roledescription":this.ariaRoleDescription,class:"modal","data-focus-trap":this.focusTrapDegraded?"degraded":"active","data-portal":this.portalTarget,part:"dialog",ref:t=>this.modalRef=t,role:"dialog",style:{maxWidth:r[this.width]}},this.focusTrapDegraded&&s("div",{class:"modal-degraded-notice",part:"degraded-notice",role:"status"},s("span",{class:"modal-degraded-icon"},"⚠️"),s("span",{class:"modal-degraded-text"},"Keyboard navigation may be limited")),s("slot",{name:"header"}),s("slot",null),s("slot",{name:"actions"})))):null}static get watchers(){return{visible:[{handleVisibleChange:0}]}}};x.style="@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } :root { --bh-breakpoint-xs: 0; --bh-breakpoint-sm: 576px; --bh-breakpoint-md: 768px; --bh-breakpoint-lg: 992px; --bh-breakpoint-xl: 1200px; --bh-breakpoint-xxl: 1400px; --bh-container-sm: 540px; --bh-container-md: 720px; --bh-container-lg: 960px; --bh-container-xl: 1140px; --bh-container-xxl: 1320px; } @layer bh-tokens, bh-base, bh-variants, bh-states, bh-utilities; @layer bh-tokens { :host { display: block; --bh-modal-bg: var(--color-surface-elevated); --bh-modal-border-radius: var(--radius-xl); --bh-modal-shadow: var(--shadow-xl); --bh-modal-overlay-bg: var(--color-surface-overlay); --bh-modal-padding: var(--spacing-2xl); } } @layer bh-base { .modal-wrapper { position: fixed; top: 0; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: center; padding: var(--bh-modal-padding); z-index: var(--bh-z-index-modal-backdrop); } .modal-overlay { position: absolute; inset: 0; background: var(--bh-modal-overlay-bg); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); animation: overlayFadeIn var(--animation-duration-normal) ease-out; } .modal { position: relative; display: flex; flex-direction: column; align-items: center; width: 100%; max-width: var(--bh-modal-max-width-md); background: var(--bh-modal-bg); border-radius: var(--bh-modal-border-radius); box-shadow: var(--bh-modal-shadow); overflow: hidden; z-index: 1; animation: modalFadeIn var(--animation-duration-normal) ease-out; } @media (max-width: 480px) { .modal-wrapper { padding: var(--spacing-xl); } .modal { max-width: 100%; } } } @layer bh-utilities { @keyframes modalFadeIn { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } } @keyframes overlayFadeIn { from { opacity: 0; } to { opacity: 1; } } }";export{x as bh_modal}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as a,h as o,H as i}from"./p-CTHvNfIu.js";import{c as e,r as n}from"./p-YLeLKAYJ.js";import{m as r,M as s}from"./p-CSH9RXgl.js";import{B as c,r as l}from"./p-BNVOtH-1.js";const d="bh-modal-actions",b=class{constructor(o){t(this,o),this.bhAction=a(this,"bhAction")}logger=e(d);i18nUnsubscribe;_i18nVersion=0;variant="fill";destructive=!1;primaryLabel="Confirm";secondaryLabel="Cancel";divider=!1;bhAction;componentDidCatch(t){const a=t instanceof Error?t:new Error(String(t));this.logger.error("Component error caught",a),r.increment(s.COMPONENT_ERROR,{component:d,error_type:a.name}),n(d,t)}componentWillLoad(){this.i18nUnsubscribe=c.onLocaleChange((()=>{this._i18nVersion++}))}disconnectedCallback(){this.i18nUnsubscribe?.()}handlePrimaryAction=()=>{this.bhAction.emit({action:"primary"})};handleSecondaryAction=()=>{this.bhAction.emit({action:"secondary"})};renderButtons(){const t="right-aligned"===this.variant,a=l("bh-modal-actions","primaryLabel",this.primaryLabel,"Confirm"),i=l("bh-modal-actions","secondaryLabel",this.secondaryLabel,"Cancel"),e=o("bh-button",{hierarchy:"primary",icon:"none",label:a,onBhClick:this.handlePrimaryAction,size:"md",variant:this.destructive?"destructive":"default"}),n=o("bh-button",{hierarchy:"secondary",icon:"none",label:i,onBhClick:this.handleSecondaryAction,size:"md"});return t?o("div",{class:"modal-actions-content modal-actions-content--right"},o("div",{class:"actions-left"},o("slot",{name:"left-content"})),o("div",{class:"actions-right"},n,e)):o("div",{class:"modal-actions-content modal-actions-content--fill"},n,e)}render(){return o(i,{key:"7a8d1b5a942a0f920697af2b8aa2b48026a7abc9"},o("div",{key:"a3622571f152b7917062f520f265da626b5a348f",class:"modal-actions",part:"actions"},this.divider&&o("div",{key:"c9ef2312fa1237f31660b97d8c005eea94809f2a",class:"divider",part:"divider"}),this.renderButtons()))}};b.style="@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } @layer bh-tokens, bh-base, bh-variants, bh-states, bh-utilities; @layer bh-tokens { :host { display: block; width: 100%; --bh-modal-actions-bg: var(--color-bg-primary); --bh-modal-actions-border-color: var(--color-border-secondary); --bh-modal-actions-padding-top: var(--spacing-2xl); --bh-modal-actions-padding-x: var(--spacing-3xl); --bh-modal-actions-padding-bottom: var(--spacing-3xl); --bh-modal-actions-gap: var(--spacing-lg); --bh-modal-actions-destructive-bg: var(--color-bg-destructive); --bh-modal-actions-destructive-bg-hover: var(--color-bg-destructive-hover); --bh-modal-actions-destructive-bg-active: var( --color-bg-destructive-active ); --bh-modal-actions-destructive-color: var(--color-text-inverse); --bh-modal-actions-destructive-focus-ring: var(--color-bg-destructive); } } @layer bh-base { .modal-actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--spacing-none); padding-top: var(--bh-modal-actions-padding-top); width: 100%; } .divider { height: 1px; width: 100%; flex-shrink: 0; background-color: var(--bh-modal-actions-border-color); margin-bottom: var(--bh-modal-actions-padding-top); } .modal-actions-content { display: flex; gap: var(--bh-modal-actions-gap); padding: 0 var(--bh-modal-actions-padding-x); padding-bottom: var(--bh-modal-actions-padding-bottom); width: 100%; box-sizing: border-box; } .actions-left { display: flex; gap: var(--bh-modal-actions-gap); align-items: center; } .actions-right { display: flex; gap: var(--bh-modal-actions-gap); align-items: center; justify-content: flex-end; } .btn-destructive { display: flex; align-items: center; justify-content: center; gap: var(--spacing-xxs); height: var(--bh-button-height-md); padding: 0 var(--spacing-lg); background-color: var(--bh-modal-actions-destructive-bg); color: var(--bh-modal-actions-destructive-color); border: none; border-radius: var(--radius-md); font-family: var(--font-inter); font-weight: var(--weight-semibold); font-size: var(--text-sm-size); line-height: var(--line-height-normal); letter-spacing: 0px; cursor: pointer; overflow: hidden; transition: background-color var(--animation-duration-fast) ease; } } @layer bh-variants { .modal-actions-content--fill { flex-direction: row; align-items: stretch; } .modal-actions-content--fill bh-button { flex: 1; display: block; width: 100%; } .modal-actions-content--fill bh-button::part(button) { width: 100%; } .modal-actions-content--fill .btn-destructive { flex: 1; } .modal-actions-content--right { flex-direction: row; align-items: center; justify-content: space-between; } @media (max-width: 480px) { .modal-actions-content--fill { flex-direction: column-reverse; align-items: stretch; } .modal-actions-content--fill bh-button, .modal-actions-content--fill .btn-destructive { flex: none; width: 100%; } } } @layer bh-states { .btn-destructive:hover { background-color: var(--bh-modal-actions-destructive-bg-hover); } .btn-destructive:focus-visible { outline: 2px solid var(--bh-modal-actions-destructive-focus-ring); outline-offset: 2px; } .btn-destructive:active { background-color: var(--bh-modal-actions-destructive-bg-active); } }";export{b as bh_modal_actions}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r,c as e,h as o,H as s}from"./p-CTHvNfIu.js";import{c as a,r as l}from"./p-YLeLKAYJ.js";import{m as t,M as c}from"./p-CSH9RXgl.js";const i=class{constructor(o){r(this,o),this.bhProgressClick=e(this,"bhProgressClick")}logger=a("bh-progress-bar");data={value:80,max:100};showPercentage=!0;showValue=!0;showLabel=!0;showSublabel=!0;color="var(--bh-progress-bar-fill-color)";trackColor="var(--bh-progress-bar-track-color)";height=8;animated=!0;ariaLabel="";bhProgressClick;componentDidCatch(r){this.logger.error("Component error caught",r instanceof Error?r:new Error(String(r))),t.increment(c.COMPONENT_ERROR,{component:"bh-progress-bar"}),l("bh-progress-bar",r)}getPercentage(){const{value:r,max:e}=this.data;return!Number.isFinite(r)||!Number.isFinite(e)||e<=0||r<0?(this.logger.warn("Invalid progress data",{value:r,max:e}),0):Math.min(Math.round(r/e*100),100)}getAriaLabel(){if(this.ariaLabel)return this.ariaLabel;const{label:r,formattedValue:e,value:o}=this.data,s=this.getPercentage(),a=e||String(o);return r?`${r}: ${a}, ${s}% complete`:`${a}, ${s}% complete`}handleClick=r=>{this.bhProgressClick.emit({value:this.data.value,percentage:this.getPercentage(),event:r})};render(){const r=this.getPercentage(),{label:e,formattedValue:a,value:l,sublabel:t}=this.data,c=a||String(l);return o(s,{key:"9a7299faa2a64f46b786a25fb409674648483bac"},o("div",{key:"4c05fe6effcc097f014d007db744ddd4542312a7","aria-label":this.getAriaLabel(),"aria-valuemax":this.data.max,"aria-valuemin":0,"aria-valuenow":this.data.value,class:{"progress-bar-container":!0,"progress-bar-animated":this.animated},onClick:this.handleClick,part:"container",role:"meter"},this.showLabel&&e&&o("div",{key:"b011d9fb700057c3210de759cd88e92f1d16c97f",class:"progress-label",part:"label"},e),this.showValue&&o("div",{key:"12e3d82a7b0db913b09092856334bd2b3849fc5f",class:"progress-value",part:"value"},c),o("div",{key:"e5f0663411ceef624cacc3b15245f01d00996d22",class:"progress-track-row"},o("div",{key:"fb4afbd4ebf62d9d51428a5166f516c7f997a5eb",class:"progress-track",part:"track",style:{height:`${this.height}px`,backgroundColor:this.trackColor}},o("div",{key:"743ee8f143f09fcc52819a41eb1c0a9ea5340db7",class:"progress-fill",part:"fill",style:{width:`${r}%`,backgroundColor:this.color}})),this.showPercentage&&o("span",{key:"76671bf3760eea5675780eeac930459b31834e1e",class:"progress-percentage",part:"percentage"},r,"%")),this.showSublabel&&t&&o("div",{key:"9093c370961d79dea8bc49584ed84e402b45d7b9",class:"progress-sublabel",part:"sublabel"},t)))}};i.style=' @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap"); @import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap"); @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } @layer bh-reset, bh-tokens, bh-base, bh-utilities; @layer bh-tokens { :root { --color-white: hsl(0, 0%, 100%); --color-black: hsl(0, 0%, 0%); --color-transparent: hsla(0, 0%, 100%, 0); --color-neutral-25: hsl(210, 20%, 99%); --color-neutral-50: hsl(225, 40%, 98%); --color-neutral-100: hsl(225, 40%, 96%); --color-neutral-200: hsl(223, 32%, 91%); --color-neutral-300: hsl(223, 29%, 84%); --color-neutral-400: hsl(224, 23%, 65%); --color-neutral-500: hsl(226, 16%, 47%); --color-neutral-600: hsl(225, 22%, 37%); --color-neutral-700: hsl(224, 25%, 27%); --color-neutral-800: hsl(226, 25%, 20%); --color-neutral-900: hsl(227, 31%, 11%); --color-neutral-950: hsl(228, 38%, 5%); --color-brand-25: hsl(220, 82%, 98%); --color-brand-50: hsl(226, 100%, 97%); --color-brand-100: hsl(223, 88%, 94%); --color-brand-200: hsl(226, 71%, 86%); --color-brand-300: hsl(227, 75%, 78%); --color-brand-400: hsl(228, 73%, 67%); --color-brand-500: hsl(230, 69%, 59%); --color-brand-600: hsl(230, 69%, 48%); --color-brand-700: hsl(230, 69%, 41%); --color-brand-800: hsl(230, 69%, 31%); --color-brand-900: hsl(230, 68%, 21%); --color-brand-950: hsl(229, 70%, 8%); --color-error-25: hsl(6, 100%, 99%); --color-error-50: hsl(6, 100%, 98%); --color-error-100: hsl(10, 100%, 93%); --color-error-200: hsl(8, 100%, 88%); --color-error-300: hsl(8, 100%, 79%); --color-error-400: hsl(10, 94%, 65%); --color-error-500: hsl(16, 100%, 48%); --color-error-600: hsl(12, 100%, 44%); --color-error-700: hsl(11, 100%, 37%); --color-error-800: hsl(10, 100%, 30%); --color-error-900: hsl(14, 100%, 25%); --color-error-950: hsl(7, 100%, 14%); --color-warning-25: hsl(47, 92%, 98%); --color-warning-50: hsl(47, 100%, 96%); --color-warning-100: hsl(48, 93%, 89%); --color-warning-200: hsl(48, 95%, 78%); --color-warning-300: hsl(46, 96%, 65%); --color-warning-400: hsl(40, 95%, 60%); --color-warning-500: hsl(33, 92%, 58%); --color-warning-600: hsl(26, 71%, 51%); --color-warning-700: hsl(21, 72%, 41%); --color-warning-800: hsl(21, 75%, 33%); --color-warning-900: hsl(21, 71%, 27%); --color-warning-950: hsl(21, 84%, 14%); --color-success-25: hsl(144, 78%, 98%); --color-success-50: hsl(138, 76%, 97%); --color-success-100: hsl(141, 78%, 93%); --color-success-200: hsl(140, 76%, 85%); --color-success-300: hsl(142, 75%, 73%); --color-success-400: hsl(143, 68%, 55%); --color-success-500: hsl(136, 57%, 49%); --color-success-600: hsl(134, 58%, 41%); --color-success-700: hsl(139, 61%, 31%); --color-success-800: hsl(143, 63%, 24%); --color-success-900: hsl(142, 54%, 19%); --color-success-950: hsl(143, 67%, 11%); --font-inter: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --weight-regular: 400; --weight-medium: 500; --weight-semibold: 600; --weight-bold: 700; --text-xl-size: 1.25rem; --text-lg-size: 1.125rem; --text-md-size: 1rem; --text-sm-size: 0.875rem; --text-xs-size: 0.75rem; --text-xl-line: 1.875rem; --text-lg-line: 1.75rem; --text-md-line: 1.5rem; --text-sm-line: 1.25rem; --text-xs-line: 1.125rem; --spacing-none: 0rem; --spacing-xxs: 0.125rem; --spacing-xs: 0.25rem; --spacing-sm: 0.375rem; --spacing-md: 0.5rem; --spacing-lg: 0.75rem; --spacing-xl: 1rem; --spacing-2xl: 1.25rem; --spacing-3xl: 1.5rem; --spacing-4xl: 2rem; --spacing-5xl: 2.5rem; --spacing-6xl: 3rem; --radius-none: 0rem; --radius-xxs: 0.125rem; --radius-xs: 0.25rem; --radius-sm: 0.375rem; --radius-md: 0.5rem; --radius-lg: 0.625rem; --radius-xl: 0.75rem; --radius-2xl: 1rem; --radius-3xl: 1.25rem; --radius-4xl: 1.5rem; --radius-full: 9999px; --shadow-xs: 0px 1px 2px rgba(16, 24, 40, 0.05); --shadow-sm: 0px 1px 3px rgba(16, 24, 40, 0.1), 0px 1px 2px rgba(16, 24, 40, 0.06); --shadow-md: 0px 4px 8px -2px rgba(16, 24, 40, 0.1), 0px 2px 4px -2px rgba(16, 24, 40, 0.06); --shadow-lg: 0px 12px 16px -4px rgba(16, 24, 40, 0.08), 0px 4px 6px -2px rgba(16, 24, 40, 0.03); --shadow-xl: 0px 20px 24px -4px rgba(16, 24, 40, 0.08), 0px 8px 8px -4px rgba(16, 24, 40, 0.03); --icon-compensation-xs-btn: calc(var(--spacing-lg) - var(--spacing-xs)); --icon-compensation-sm-btn: calc(var(--spacing-xl) - var(--spacing-xs)); --icon-compensation-md-btn: calc(var(--spacing-xl) - var(--spacing-xs)); --icon-compensation-lg-btn: calc(var(--spacing-xl) - var(--spacing-xs)); --color-bg-primary: var(--color-white); --color-bg-secondary: var(--color-neutral-50); --color-bg-tertiary: var(--color-neutral-100); --color-bg-quaternary: var(--color-neutral-200); --color-bg-inverse: var(--color-neutral-900); --color-bg-interactive: var(--color-brand-600); --color-bg-interactive-hover: var(--color-brand-700); --color-bg-interactive-active: var(--color-brand-800); --color-bg-destructive: var(--color-error-600); --color-bg-destructive-hover: var(--color-error-700); --color-bg-destructive-active: var(--color-error-800); --color-bg-success: var(--color-success-700); --color-bg-success-hover: var(--color-success-800); --color-bg-warning: var(--color-warning-500); --color-bg-disabled: var(--color-neutral-200); --color-text-primary: var(--color-neutral-900); --color-text-secondary: var(--color-neutral-600); --color-text-tertiary: var(--color-neutral-500); --color-text-inverse: var(--color-white); --color-text-interactive: var(--color-brand-600); --color-text-interactive-hover: var(--color-brand-700); --color-text-error: var(--color-error-600); --color-text-success: var(--color-success-700); --color-text-warning: var(--color-warning-700); --color-text-disabled: var(--color-neutral-400); --color-border-primary: var(--color-neutral-300); --color-border-secondary: var(--color-neutral-200); --color-border-interactive: var(--color-brand-500); --color-border-error: var(--color-error-500); --color-border-success: var(--color-success-500); --color-border-disabled: var(--color-neutral-200); --color-surface-overlay: rgba(0, 0, 0, 0.5); --color-surface-elevated: var(--color-white); } } @layer bh-reset { *, *::before, *::after { box-sizing: border-box; } } @layer bh-base { .material-symbols-outlined { font-family: "Material Symbols Outlined"; font-weight: normal; font-style: normal; font-size: 24px; line-height: 1; letter-spacing: normal; text-transform: none; display: inline-block; white-space: nowrap; word-wrap: normal; direction: ltr; font-feature-settings: "liga"; -webkit-font-feature-settings: "liga"; -webkit-font-smoothing: antialiased; } } @layer bh-tokens, bh-base, bh-variants, bh-states, bh-utilities; @layer bh-tokens { :host { display: block; --bh-progress-bar-track-color: var( --color-neutral-100, hsl(224deg 25% 89%) ); --bh-progress-bar-fill-color: var( --bh-chart-color-1, var(--color-brand-600, hsl(230deg 69% 48%)) ); --bh-progress-bar-label-color: var( --color-text-secondary, hsl(226deg 24% 48%) ); --bh-progress-bar-value-color: var( --color-text-primary, hsl(233deg 33% 10%) ); --bh-progress-bar-sublabel-color: var( --color-text-tertiary, hsl(226deg 24% 58%) ); --bh-progress-bar-percentage-color: var( --color-text-secondary, hsl(226deg 24% 48%) ); --bh-progress-bar-value-size: var(--text-2xl-size, 1.5rem); --bh-progress-bar-label-size: var(--text-sm-size, 0.875rem); --bh-progress-bar-sublabel-size: var(--text-xs-size, 0.75rem); --bh-progress-bar-percentage-size: var(--text-xs-size, 0.75rem); --bh-progress-bar-radius: var(--radius-full, 9999px); --bh-progress-bar-gap: var(--spacing-xs, 4px); } } @layer bh-base { .progress-bar-container { display: flex; flex-direction: column; gap: var(--bh-progress-bar-gap); cursor: pointer; font-family: var(--font-inter, system-ui, sans-serif); } .progress-label { font-size: var(--bh-progress-bar-label-size); color: var(--bh-progress-bar-label-color); line-height: var(--line-height-normal, 1.5); } .progress-value { font-size: var(--bh-progress-bar-value-size); font-weight: var(--weight-semibold, 600); color: var(--bh-progress-bar-value-color); line-height: var(--line-height-tight, 1.25); } .progress-track-row { display: flex; align-items: center; gap: var(--spacing-sm, 6px); } .progress-track { flex: 1; border-radius: var(--bh-progress-bar-radius); overflow: hidden; position: relative; } .progress-fill { height: 100%; border-radius: var(--bh-progress-bar-radius); transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1); } .progress-percentage { font-size: var(--bh-progress-bar-percentage-size); color: var(--bh-progress-bar-percentage-color); white-space: nowrap; min-width: 2.5em; text-align: right; } .progress-sublabel { font-size: var(--bh-progress-bar-sublabel-size); color: var(--bh-progress-bar-sublabel-color); text-align: right; } } @layer bh-variants { .progress-bar-animated .progress-fill { animation: progressFill 0.8s cubic-bezier(0.4, 0, 0.2, 1) both; } } @layer bh-states { .progress-bar-container:hover .progress-fill { filter: brightness(1.05); } } @layer bh-utilities { @keyframes progressFill { from { width: 0%; } } @media (prefers-reduced-motion: reduce) { .progress-bar-animated .progress-fill { animation: none; } .progress-fill { transition: none; } } }';export{i as bh_progress_bar}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r,c as o,h as i,H as a}from"./p-CTHvNfIu.js";import{c as t,r as d}from"./p-YLeLKAYJ.js";import{c as e}from"./p-YdVz1TeW.js";import{m as s,M as h}from"./p-CSH9RXgl.js";import{a as b}from"./p-DWWRC9ht.js";import{a as l}from"./p-BqJRACkO.js";import{g as n}from"./p-CLrVoF3x.js";import"./p-zdFuIabL.js";const c=class{constructor(i){r(this,i),this.bhChange=o(this,"bhChange"),this.bhFocus=o(this,"bhFocus"),this.bhBlur=o(this,"bhBlur"),this.bhValidityChange=o(this,"bhValidityChange"),i.$hostElement$["s-ei"]?this.internals=i.$hostElement$["s-ei"]:(this.internals=i.$hostElement$.attachInternals(),i.$hostElement$["s-ei"]=this.internals)}logger=t("bh-radio-button");focusState=e();internals;size="md";selected=!1;defaultChecked=!1;disabled=!1;required=!1;value="";name="";tabIndex=0;label="";ariaLabel=null;supportingText="";focusVersion=0;isDirty=!1;isTouched=!1;bhChange;bhFocus;bhBlur;bhValidityChange;componentDidCatch(r){this.logger.error("Component error caught",r instanceof Error?r:new Error(String(r))),s.increment(h.COMPONENT_ERROR,{component:"bh-radio-button",error_type:r instanceof Error?r.name:"unknown"}),d("bh-radio-button",r)}componentWillLoad(){this.focusState.onChange((()=>{this.focusVersion++}))}componentDidLoad(){b(this.internals,this.name,this.selected,this.value),this.bhValidityChange.emit(this.internals.validity)}formResetCallback(){this.selected=this.defaultChecked,this.isDirty=!1,this.isTouched=!1,b(this.internals,this.name,this.selected,this.value),this.bhValidityChange.emit(this.internals.validity)}handleClick=()=>{this.disabled||this.selected||(this.selected=!0,this.isDirty||(this.isDirty=!0),b(this.internals,this.name,this.selected,this.value),this.bhValidityChange.emit(this.internals.validity),this.bhChange.emit(this.value))};handleKeyDown=r=>{l(r)&&(r.preventDefault(),this.handleClick())};handleFocus=r=>{this.isTouched=!0,this.focusState.handleFocus(r,(()=>this.bhFocus.emit()))};handleBlur=r=>{this.focusState.handleBlur(r,(()=>this.bhBlur.emit()))};handleMouseEnter=()=>{this.focusState.handleMouseEnter()};handleMouseLeave=()=>{this.focusState.handleMouseLeave()};radioControlRef;handleLabelClick=r=>{this.radioControlRef&&r.composedPath().includes(this.radioControlRef)||this.radioControlRef?.click()};uniqueId=n("bh-radio");renderRadioControl(){const r={radio:!0,[`radio-${this.size}`]:!0,"radio-selected":this.selected,"radio-disabled":this.disabled,"radio-focused":this.focusState.isFocused&&!this.disabled,"radio-hover":this.focusState.isHovered&&!this.disabled};return i("div",{"aria-checked":String(this.selected),"aria-describedby":this.supportingText?`${this.uniqueId}-description`:void 0,"aria-disabled":String(this.disabled),"aria-label":this.ariaLabel||this.label||void 0,class:"radio-control","data-dirty":String(this.isDirty),"data-touched":String(this.isTouched),id:this.uniqueId,onBlur:this.handleBlur,onClick:this.handleClick,onFocus:this.handleFocus,onKeyDown:this.handleKeyDown,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,ref:r=>this.radioControlRef=r,role:"radio",tabIndex:this.disabled?-1:this.tabIndex},i("div",{class:r,part:"indicator"},this.selected&&i("div",{class:"radio-dot"})))}render(){const r=this.label||this.supportingText;return i(a,null,i("div",{class:{"radio-wrapper":!0,"radio-wrapper-with-label":!!r,"radio-wrapper-disabled":this.disabled},part:"container"},r?i("bh-label",{disabled:this.disabled,for:this.uniqueId,label:this.label,layout:"inline-start",onClick:this.handleLabelClick,required:this.required,size:this.size,supportingText:this.supportingText},this.renderRadioControl()):this.renderRadioControl()))}static get formAssociated(){return!0}};c.style="@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } @layer bh-tokens, bh-base, bh-variants, bh-states, bh-utilities; @layer bh-tokens { :host { display: inline-block; font-family: var(--font-inter); --bh-radio-bg: var(--color-bg-primary); --bh-radio-bg-selected: var(--color-bg-interactive); --bh-radio-bg-hover: var(--color-bg-tertiary); --bh-radio-bg-disabled: var(--color-bg-secondary); --bh-radio-border-color: var(--color-border-primary); --bh-radio-border-color-selected: var(--color-bg-interactive); --bh-radio-dot-color: var(--color-bg-primary); --bh-radio-dot-color-disabled: var(--color-border-primary); --bh-radio-focus-ring-color: var(--color-border-interactive); } } @layer bh-base { .radio { display: inline-flex; align-items: center; justify-content: center; cursor: pointer; outline: none; user-select: none; transition: background-color var(--animation-duration-slow) cubic-bezier(0.4, 0, 0.2, 1), border-color var(--animation-duration-slow) cubic-bezier(0.4, 0, 0.2, 1), box-shadow var(--animation-duration-normal) ease; box-sizing: border-box; background: var(--bh-radio-bg); border: 2px solid var(--bh-radio-border-color); border-radius: var(--radius-full); position: relative; flex-shrink: 0; } .radio:focus { outline: none; } .radio-dot { width: var(--bh-radio-button-dot-md); height: var(--bh-radio-button-dot-md); border-radius: var(--radius-full); background: var(--bh-radio-dot-color); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .radio-wrapper { display: inline-block; } .radio-control { display: inline-flex; align-items: flex-start; cursor: pointer; outline: none; } } @layer bh-variants { .radio-sm { width: var(--bh-radio-button-size-sm); height: var(--bh-radio-button-size-sm); } .radio-sm .radio-dot { width: var(--bh-radio-button-dot-sm); height: var(--bh-radio-button-dot-sm); } .radio-md { width: var(--bh-radio-button-size-md); height: var(--bh-radio-button-size-md); } .radio-wrapper.radio-wrapper-with-label .radio-sm { margin-top: var(--bh-radio-button-offset-sm); } .radio-wrapper.radio-wrapper-with-label .radio-md { margin-top: var(--bh-radio-button-offset-md); } } @layer bh-states { .radio { } .radio.radio-selected { background: var(--bh-radio-bg-selected); border-color: var(--bh-radio-border-color-selected); animation: fillExpand var(--animation-duration-slow) cubic-bezier(0.4, 0, 0.2, 1); } .radio.radio-selected:hover:not(.radio-disabled) { background: var(--bh-radio-bg-selected); border-color: var(--bh-radio-border-color-selected); } .radio.radio-selected.radio-focused:not(.radio-disabled) { background: var(--bh-radio-bg-selected); border-color: var(--bh-radio-border-color-selected); box-shadow: 0px 0px 0px 4px var(--bh-radio-focus-ring-color), 0px 0px 0px 2px var(--bh-radio-bg); } .radio.radio-selected.radio-disabled { background: var(--bh-radio-bg-disabled); border: 2px solid var(--bh-radio-border-color); } .radio { } .radio:hover:not(.radio-disabled) { background: var(--bh-radio-bg-hover); border-color: var(--bh-radio-border-color); } .radio { } .radio.radio-focused:not(.radio-disabled) { border-color: var(--bh-radio-border-color); box-shadow: 0px 0px 0px 4px var(--bh-radio-focus-ring-color), 0px 0px 0px 2px var(--bh-radio-bg); } .radio { } .radio.radio-disabled { background: var(--bh-radio-bg-disabled); border-color: var(--bh-radio-border-color); cursor: not-allowed; opacity: 1; } .radio.radio-disabled .radio-dot { background: var(--bh-radio-dot-color-disabled); } .radio:focus:not(.radio-disabled) { box-shadow: 0px 0px 0px 4px var(--bh-radio-focus-ring-color), 0px 0px 0px 2px var(--bh-radio-bg); } .radio-wrapper.radio-wrapper-disabled .radio-control { cursor: not-allowed; } } @layer bh-utilities { @keyframes fillExpand { 0% { transform: scale(0.95); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } } }";export{c as bh_radio_button}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
class r{context={};sampling={rate:1,errorRate:1};withContext(e){const t=new r;return t.context={...this.context,...e},t.sampling=this.sampling,t}setSampling(r,e=1){this.sampling={rate:r,errorRate:e}}shouldSample(r){const e="error"===r?this.sampling.errorRate:this.sampling.rate;return Math.random()<e}log(r,e,t){if(!this.shouldSample(r))return;const n={level:r,message:e,context:{correlationId:this.context.correlationId||`${Date.now()}-${Math.random().toString(36).slice(2,11)}`,componentName:this.context.componentName,userId:this.context.userId,sessionId:this.context.sessionId,timestamp:Date.now(),environment:this.context.environment||"development"},data:t};"error"===r?console.error(JSON.stringify(n)):console.log(JSON.stringify(n))}debug(r,e){this.log("debug",r,e)}info(r,e){this.log("info",r,e)}warn(r,e){this.log("warn",r,e)}error(r,e,t){this.log("error",r,{...t,error:e?{name:e.name,message:e.message,stack:e.stack}:void 0})}startTimer(){const r=performance.now();return()=>performance.now()-r}}const e=new r;function t(r){return e.withContext({componentName:r})}const n=t("error-boundary"),o=new Map;function s(r){const e=Date.now(),t=o.get(r);!t||e-t.windowStart>6e4?o.set(r,{count:1,windowStart:e}):(t.count++,t.count>10&&n.error(`High error rate detected for ${r}`,void 0,{errorCount:t.count,windowMs:6e4}))}function a(r,e){const t=e instanceof Error?e:new Error(String(e));return n.error(`Component error: ${r}`,t,{componentName:r}),s(r),t.message||"An unexpected error occurred."}function c(r,e,n={}){const o=e instanceof Error?e:new Error(String(e));t(r).error("Render error",o,{context:n}),s(r);const a=`${Date.now()}-${Math.random().toString(36).slice(2,11)}`;return{component:r,error:{name:o.name,message:o.message,stack:o.stack},timestamp:Date.now(),context:n,recovered:!1,correlationId:a}}function i(){return{hasError:!1,error:null,errorCount:0,lastSuccessfulRender:null}}function u(r,e){return{...r,hasError:!0,error:e,errorCount:r.errorCount+1}}export{i as a,u as b,t as c,c as d,a as r}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e,h as a,H as t}from"./p-CTHvNfIu.js";import{c as r,r as i}from"./p-YLeLKAYJ.js";import{m as s,M as o}from"./p-CSH9RXgl.js";const n="bh-table-header",l=class{constructor(a){e(this,a)}logger=r(n);heading="";itemCount;showActions=!0;showSearch=!1;showDivider=!1;componentDidCatch(e){const a=e instanceof Error?e:new Error(String(e));this.logger.error("Component error caught",a),s.increment(o.COMPONENT_ERROR,{component:n,error_type:a.name}),i(n,e)}render(){const e=!!this.itemCount;return a(t,{key:"589a3fc7be7bccdd16bd1360e912e3485c1cee4d","aria-label":this.heading||"Table header",role:"region"},a("div",{key:"ede399c8fb00fc48d0538981e3b9547bb995996a",class:"table-header",part:"table-header"},a("div",{key:"28b7affd9ba00523b8391366eb9995c55762b8e4",class:"content"},a("div",{key:"ea3ff8bdfd8b1788e0f261fd51053b623ebda1d6",class:"text-group"},this.heading&&a("h3",{key:"ba8574cecc0900ee48e43bc91487be6a55911a5e",class:"heading",part:"heading"},this.heading),e&&a("span",{key:"6b8d677f8e682be9930c248ed7b54bd2afa4a690",class:"item-count",part:"item-count"},this.itemCount)),a("div",{key:"b3b881b2093200658f73b382099c9b63f648042c",class:"controls"},this.showSearch&&a("div",{key:"4fdf364d8e52ebfa0d144a6567e2434b97282f15",class:"search",part:"search"},a("slot",{key:"422096579d570d99b40bb888f05a9ac4e90c6333",name:"search"})),this.showActions&&a("div",{key:"263c6b52b367b9d55dfd0a08d3a39d743e2f5820",class:"actions",part:"actions"},a("slot",{key:"638ad6f59a29602aaaf72a82e409a53543a965f9",name:"actions"})))),this.showDivider&&a("div",{key:"7f49b68af175acb595e4c5559b03db4a62d21b3d",class:"divider",part:"divider"})))}};l.style="@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}@layer bh-tokens,bh-base,bh-variants,bh-states,bh-utilities; @layer bh-tokens{:host{display:block;--bh-table-header-heading-color:var(--color-text-primary);--bh-table-header-count-color:var(--color-text-tertiary);--bh-table-header-divider-color:var(--color-border-secondary);--bh-table-header-gap:var(--spacing-md);--bh-table-header-controls-gap:var(--spacing-sm)}}@layer bh-base{.table-header{display:flex;flex-direction:column;gap:var(--bh-table-header-gap);width:100%}.content{display:flex;align-items:center;justify-content:space-between;gap:var(--bh-table-header-gap);width:100%;min-height:var(--bh-button-height-sm)}.text-group{display:flex;align-items:baseline;gap:var(--spacing-sm);flex:1;min-width:0}.heading{font-family:var(--font-inter);font-size:var(--text-md-size);font-weight:var(--weight-semibold);line-height:var(--line-height-normal);color:var(--bh-table-header-heading-color);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-count{font-family:var(--font-inter);font-size:var(--text-sm-size);font-weight:var(--weight-regular);line-height:var(--line-height-normal);color:var(--bh-table-header-count-color);white-space:nowrap;flex-shrink:0}.controls{display:flex;align-items:center;gap:var(--bh-table-header-controls-gap);flex-shrink:0}.search{display:flex;align-items:center}.actions{display:flex;align-items:center;gap:var(--spacing-sm)}.divider{width:100%;height:1px;background-color:var(--bh-table-header-divider-color);flex-shrink:0}}";export{l as bh_table_header}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as r,a as i,h as e,H as o}from"./p-CTHvNfIu.js";import{c as s,r as a}from"./p-YLeLKAYJ.js";import{c as n,a as c}from"./p-CS8F5LFw.js";import{m as h,M as d}from"./p-CSH9RXgl.js";import{t as l}from"./p-Bf0qW3wI.js";import{K as p}from"./p-zdFuIabL.js";import{A as u}from"./p-BoVgy_Ao.js";import{B as m,r as b}from"./p-BNVOtH-1.js";import{c as g}from"./p-CFlb5gKI.js";import{a as v}from"./p-BqJRACkO.js";const f=class{constructor(i){t(this,i),this.bhOpen=r(this,"bhOpen"),this.bhClose=r(this,"bhClose"),this.bhChange=r(this,"bhChange")}logger=s("bh-product-switcher");destroy$=n();closeTimerId=null;i18nUnsubscribe;_i18nVersion=0;get el(){return i(this)}focusedIndex=-1;menuItemsCache=null;isOpen=!1;anchorPosition={top:0,left:0};products=[];ariaLabel="Product switcher";bhOpen;bhClose;bhChange;isClosing=!1;hoveredIndex=-1;componentDidCatch(t){this.logger.error("Component error caught",t instanceof Error?t:new Error(String(t))),h.increment(d.COMPONENT_ERROR,{component:"bh-product-switcher",error_type:t instanceof Error?t.name:"unknown"}),a("bh-product-switcher",t)}handleIsOpenChange(t){t?(this.dismissalManager?.enable(),this.focusedIndex=0,this.menuItemsCache=null,this.destroy$&&l(u.FOCUS_DELAY,this.destroy$)?.subscribe((()=>{this.refreshMenuItemsCache(),this.focusProductItem(0)}))):(this.dismissalManager?.disable(),this.focusedIndex=-1,this.hoveredIndex=-1,this.menuItemsCache=null)}handleProductsChange(){this.menuItemsCache=null}dismissalManager;handleKeyDown(t){if(this.isOpen)switch(t.key){case p.ESCAPE:t.preventDefault(),this.handleClose();break;case p.ARROW_DOWN:t.preventDefault(),this.focusedIndex=(this.focusedIndex+1)%this.products.length,this.focusProductItem(this.focusedIndex);break;case p.ARROW_UP:t.preventDefault(),this.focusedIndex=this.focusedIndex<=0?this.products.length-1:this.focusedIndex-1,this.focusProductItem(this.focusedIndex);break;case p.HOME:t.preventDefault(),this.focusedIndex=0,this.focusProductItem(this.focusedIndex);break;case p.END:t.preventDefault(),this.focusedIndex=this.products.length-1,this.focusProductItem(this.focusedIndex);break;case p.ENTER:case p.SPACE:t.preventDefault(),this.focusedIndex>=0&&this.focusedIndex<this.products.length&&this.handleProductClick(this.products[this.focusedIndex])}}refreshMenuItemsCache(){const t=this.el.shadowRoot?.querySelectorAll('[role="menuitem"]');this.menuItemsCache=t?Array.from(t):null}focusProductItem(t){this.menuItemsCache||this.refreshMenuItemsCache();const r=this.menuItemsCache?.[t];r&&r.focus()}handleClose=()=>{this.isClosing=!0,null!==this.closeTimerId&&(clearTimeout(this.closeTimerId),this.closeTimerId=null);const t=this.destroy$?l(u.DISMISS,this.destroy$):null;t?t.subscribe((()=>{this.bhClose.emit(),this.isClosing=!1,this.closeTimerId=null})):this.closeTimerId=setTimeout((()=>{this.bhClose.emit(),this.isClosing=!1,this.closeTimerId=null}),u.DISMISS)};componentWillLoad(){this.i18nUnsubscribe=m.onLocaleChange((()=>{this._i18nVersion++}))}componentDidLoad(){this.dismissalManager=g(this.el,{onDismiss:this.handleClose,escapeKey:!1,clickOutside:!0,focusLoss:!1,excludeSelectors:[".logo-active"]}),this.isOpen&&this.dismissalManager.enable()}disconnectedCallback(){this.dismissalManager?.destroy(),null!==this.closeTimerId&&(clearTimeout(this.closeTimerId),this.closeTimerId=null),this.menuItemsCache=null,c(this.destroy$),this.i18nUnsubscribe?.()}handleProductClick=t=>{this.bhChange.emit(t),this.handleClose()};handleProductKeyDown=(t,r)=>{v(t)&&(t.preventDefault(),this.handleProductClick(r))};handleProductMouseEnter=t=>{this.hoveredIndex=t};handleProductMouseLeave=()=>{this.hoveredIndex=-1};handleProductFocus=t=>{this.focusedIndex=t};render(){if(!this.isOpen)return null;const t={"product-switcher-container":!0,closing:this.isClosing};return e(o,null,e("div",{class:"product-switcher-backdrop",onClick:this.handleClose}),e("div",{class:t,part:"container",style:{top:`${this.anchorPosition.top}px`,left:`${this.anchorPosition.left}px`}},e("div",{"aria-label":b("bh-product-switcher","ariaLabel",this.ariaLabel,"Product switcher"),class:"product-switcher-popover",part:"popover",role:"menu"},this.products.map(((t,r)=>e("div",{"aria-current":t.current?"true":void 0,class:{"product-item":!0,current:!0===t.current,"product-item-hovered":this.hoveredIndex===r},"data-focused":String(this.focusedIndex===r),"data-hovered":String(this.hoveredIndex===r),key:t.id,onClick:()=>this.handleProductClick(t),onFocus:()=>this.handleProductFocus(r),onKeyDown:r=>this.handleProductKeyDown(r,t),onMouseEnter:()=>this.handleProductMouseEnter(r,t),onMouseLeave:this.handleProductMouseLeave,role:"menuitem",tabIndex:0},e("div",{class:"product-icon-container"},e("img",{alt:`${t.name} logo`,class:"product-icon",src:t.logo})),e("div",{class:"product-info"},e("div",{class:"product-name"},t.name),e("div",{class:"product-description"},t.description))))))))}static get watchers(){return{isOpen:[{handleIsOpenChange:0}],products:[{handleProductsChange:0}]}}};f.style="@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } @layer bh-tokens, bh-base, bh-variants, bh-states, bh-utilities; @layer bh-tokens { :host { --bh-product-switcher-bg: var(--color-bg-primary); --bh-product-switcher-border-color: var(--color-border-secondary); --bh-product-switcher-border-radius: var(--radius-xl); --bh-product-switcher-min-width: 268px; --bh-product-switcher-item-bg-hover: var(--color-bg-tertiary); --bh-product-switcher-item-bg-current: var(--color-bg-interactive-light); } } @layer bh-base { .product-switcher-container { position: fixed; z-index: var(--bh-z-index-modal); animation: popoverSlideIn var(--animation-duration-slow) ease-out; transform-origin: top center; } .product-switcher-backdrop { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: transparent; z-index: var(--bh-z-index-modal-backdrop); } .product-switcher-popover { background: var(--bh-product-switcher-bg); border-radius: var(--bh-product-switcher-border-radius); box-shadow: var(--shadow-2xl); padding: var(--spacing-md); display: flex; flex-direction: column; gap: var(--spacing-xs); min-width: var(--bh-product-switcher-min-width); position: relative; z-index: var(--bh-z-index-popover); } .product-item { display: flex; align-items: center; gap: var(--spacing-md); width: 100%; padding: var(--spacing-md); box-sizing: border-box; border-radius: var(--radius-sm); cursor: pointer; transition: background-color var(--animation-duration-normal) ease; } .product-icon-container { width: var(--bh-product-switcher-logo-size); height: var(--bh-product-switcher-logo-size); background: var(--bh-product-switcher-bg); border: 1px solid var(--bh-product-switcher-border-color); border-radius: var(--radius-sm); box-sizing: border-box; display: flex; align-items: center; justify-content: center; flex-shrink: 0; padding: var(--spacing-xs); } .product-icon { width: 100%; height: 100%; object-fit: contain; object-position: center; } .product-info { display: flex; flex-direction: column; flex: 1; text-align: left; } .product-name { font-weight: var(--weight-medium); font-size: var(--text-sm-size); line-height: var(--text-sm-line); color: var(--color-text-primary); text-align: left; } .product-description { font-weight: var(--weight-regular); font-size: var(--text-xs-size); line-height: var(--text-xs-line); color: var(--color-text-secondary); text-align: left; transition: color var(--animation-duration-normal) ease; } } @layer bh-states { .product-switcher-container.closing { animation: popoverSlideOut var(--animation-duration-normal) ease-in forwards; } .product-item:hover, .product-item.product-item-hovered { background-color: var(--bh-product-switcher-item-bg-hover); } .product-item.current { background-color: var(--bh-product-switcher-item-bg-current); } .product-item.current .product-description { color: var(--color-text-primary); } .product-item:focus { outline: none; } .product-item:focus-visible { box-shadow: 0 0 0 2px var(--color-bg-primary), 0 0 0 4px var(--color-border-interactive); } .product-item.current:focus-visible { box-shadow: none; } } @layer bh-utilities { @keyframes popoverSlideIn { 0% { opacity: 0; transform: translateY(-12px); } 100% { opacity: 1; transform: translateY(0); } } @keyframes popoverSlideOut { 0% { opacity: 1; transform: translateY(0); } 100% { opacity: 0; transform: translateY(-12px); } } }";export{f as bh_product_switcher}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r,h as e,H as a}from"./p-CTHvNfIu.js";import{c as t,r as c}from"./p-YLeLKAYJ.js";import{m as i,M as d}from"./p-CSH9RXgl.js";const n="bh-credit-card",o=new Set(["transparent","transparent-gradient","brand-dark","brand-light-gradient"]),s=class{constructor(e){r(this,e)}logger=t(n);cardholderName="";cardNumber="";expiryDate="";issuerName="";theme="transparent";componentDidCatch(r){this.logger.error("Component error caught",r instanceof Error?r:new Error(String(r))),i.increment(d.COMPONENT_ERROR,{component:n,error_type:r instanceof Error?r.name:"unknown"}),c(n,r)}get isLightText(){return o.has(this.theme)}render(){return e(a,{key:"80c2fbbbba3126623248bda7896068fa1676c4b9","aria-label":`Credit card for ${this.cardholderName}`,role:"img"},e("div",{key:"821843aa4a02fef20ebfc62e56a1795f6e5fb438",class:{"credit-card":!0,[`theme-${this.theme}`]:!0,"light-text":this.isLightText,"dark-text":!this.isLightText},part:"base"},e("div",{key:"71f28e9ea0654a4b2b1c5b44c4013004fba4d931",class:"card-bg"}),e("span",{key:"23e93122cf6b07bba88002c3cfc52606510b45c0",class:"issuer-name"},this.issuerName),e("div",{key:"d82944cc0665b0c86b1534e8e17c839db3285753","aria-hidden":"true",class:"contactless-icon"},e("svg",{key:"120f8d8261cb89c8ae630434547d6060b73113df",fill:"none",viewBox:"0 0 20 24",xmlns:"http://www.w3.org/2000/svg"},e("path",{key:"b2df8aff9e2c32e3dd8774997fb7c82ed255099a",d:"M5.5 18C3.5 16.2 2.5 13.7 2.5 11C2.5 8.3 3.5 5.8 5.5 4",stroke:"currentColor","stroke-linecap":"round","stroke-width":"2"}),e("path",{key:"353c997156f6fb9ab36ffae7a6330df6232c3b28",d:"M9.5 15C8.3 13.8 7.5 12.5 7.5 11C7.5 9.5 8.3 8.2 9.5 7",stroke:"currentColor","stroke-linecap":"round","stroke-width":"2"}),e("path",{key:"b55b4f86719c4df25a58b8db730c3a347854ec95",d:"M13.5 12.5C13 12 12.5 11.5 12.5 11C12.5 10.5 13 10 13.5 9.5",stroke:"currentColor","stroke-linecap":"round","stroke-width":"2"}))),e("span",{key:"f574c7018802746ae0ccefb756ea7c0284c2c545",class:"cardholder-name"},this.cardholderName),e("span",{key:"58561aee04a0afa5b9ccc89cb9142d7832468c0f",class:"expiry-date"},this.expiryDate),e("span",{key:"ca1e27d1ed9b00ee9885daac5edb4bccf5ac0ff5",class:"card-number"},this.cardNumber),e("div",{key:"8c158535d05580af4229385061e205ddac4c685d","aria-hidden":"true",class:"payment-icon"},e("div",{key:"c1a542fdc819f1585748461c24653529d57c1c3a",class:"payment-circle payment-circle-left"}),e("div",{key:"c4f93ac620d56a77115a7ced7788895759fb982f",class:"payment-circle payment-circle-right"}))))}};s.style='@charset "UTF-8";@layer bh-tokens,bh-base,bh-variants,bh-states,bh-utilities; @layer bh-tokens{:host{display:inline-block;--bh-credit-card-width:307px;--bh-credit-card-height:180px;--bh-credit-card-radius:var(--radius-3xl);--bh-credit-card-shadow:8px 10px 16px 0 var(--border-contrast-light);--bh-credit-card-inset-x:19px;--bh-credit-card-inset-x-inner:15px;--bh-credit-card-inset-y-top:19px;--bh-credit-card-inset-y-bottom:127px;--bh-credit-card-number-top:151px;--bh-credit-card-expiry-right:100px;--bh-credit-card-payment-top:141px;--bh-credit-card-payment-left:254px;--bh-credit-card-contactless-width:20px;--bh-credit-card-contactless-height:24px;--bh-credit-card-payment-icon-width:34px;--bh-credit-card-payment-icon-height:24px;--bh-credit-card-payment-circle-size:14px;--bh-credit-card-payment-circle-overlap:-5px;--bh-credit-card-letter-spacing:0.6px;--bh-credit-card-number-letter-spacing:2.4px;--bh-credit-card-mastercard-red:#eb001b;--bh-credit-card-mastercard-orange:#f79e1b;--bh-credit-card-mastercard-opacity:0.85;--bh-credit-card-glass-start:rgba(255, 255, 255, 0.51);--bh-credit-card-glass-end:rgba(255, 255, 255, 0)}}@layer bh-base{.credit-card{position:relative;width:var(--bh-credit-card-width);height:var(--bh-credit-card-height);border-radius:var(--bh-credit-card-radius);border:1px solid var(--color-white);overflow:hidden;box-shadow:var(--bh-credit-card-shadow);font-family:var(--font-inter);box-sizing:border-box}.card-bg{position:absolute;inset:0;border-radius:var(--bh-credit-card-radius);pointer-events:none}.issuer-name{position:absolute;top:var(--bh-credit-card-inset-y-top);left:var(--bh-credit-card-inset-x);font-weight:var(--weight-semibold);font-size:var(--text-md-size);line-height:normal}.contactless-icon{position:absolute;top:var(--bh-credit-card-inset-y-top);right:var(--bh-credit-card-inset-x);width:var(--bh-credit-card-contactless-width);height:var(--bh-credit-card-contactless-height)}.contactless-icon svg{width:100%;height:100%}.cardholder-name{position:absolute;top:var(--bh-credit-card-inset-y-bottom);left:var(--bh-credit-card-inset-x-inner);font-family:"Manrope", var(--font-inter);font-weight:var(--weight-semibold);font-size:var(--text-xs-size);line-height:normal;letter-spacing:var(--bh-credit-card-letter-spacing);text-transform:uppercase}.expiry-date{position:absolute;top:var(--bh-credit-card-inset-y-bottom);right:var(--bh-credit-card-expiry-right);font-family:"Manrope", var(--font-inter);font-weight:var(--weight-semibold);font-size:var(--text-xs-size);line-height:normal;letter-spacing:var(--bh-credit-card-letter-spacing);text-align:right}.card-number{position:absolute;top:var(--bh-credit-card-number-top);left:var(--bh-credit-card-inset-x-inner);font-family:"Manrope", var(--font-inter);font-weight:var(--weight-semibold);font-size:var(--text-md-size);line-height:normal;letter-spacing:var(--bh-credit-card-number-letter-spacing)}.payment-icon{position:absolute;top:var(--bh-credit-card-payment-top);left:var(--bh-credit-card-payment-left);width:var(--bh-credit-card-payment-icon-width);height:var(--bh-credit-card-payment-icon-height);background:var(--color-white);border:1px solid var(--color-neutral-100);border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center}.payment-circle{width:var(--bh-credit-card-payment-circle-size);height:var(--bh-credit-card-payment-circle-size);border-radius:var(--radius-full)}.payment-circle-left{background:var(--bh-credit-card-mastercard-red)}.payment-circle-right{background:var(--bh-credit-card-mastercard-orange);margin-left:var(--bh-credit-card-payment-circle-overlap);opacity:var(--bh-credit-card-mastercard-opacity)}.light-text{color:var(--color-white)}.dark-text{color:var(--color-neutral-700)}}@layer bh-variants{.theme-transparent .card-bg{background:linear-gradient(125deg, var(--bh-credit-card-glass-start) 3.5%, var(--bh-credit-card-glass-end) 112%);backdrop-filter:blur(6px)}.theme-transparent-gradient .card-bg{background:linear-gradient(125deg, var(--bh-credit-card-glass-start) 3.5%, var(--bh-credit-card-glass-end) 112%);backdrop-filter:blur(6px)}.theme-transparent-gradient::after{content:"";position:absolute;top:-17px;left:-17px;width:160px;height:160px;background:radial-gradient(circle, var(--color-accent-400) 0%, var(--color-brand-500) 50%, transparent 70%);filter:blur(24px);opacity:0.6;pointer-events:none;z-index:-1}.theme-brand-dark .card-bg{background:linear-gradient(45deg, var(--color-brand-800) 0%, var(--color-brand-700) 100%)}.theme-brand-light .card-bg{background:var(--color-brand-100)}.theme-primary-light-gradient .card-bg{background:var(--color-brand-100)}.theme-primary-light-gradient::after{content:"";position:absolute;top:-17px;left:-17px;width:346px;height:219px;background:radial-gradient(ellipse, var(--color-accent-300) 0%, var(--color-brand-400) 50%, transparent 70%);filter:blur(64px);pointer-events:none;z-index:0}.theme-gray-light .card-bg{background:var(--color-neutral-100)}.theme-brand-light-gradient .card-bg{background:linear-gradient(45deg, var(--color-brand-700) 0%, var(--color-brand-600) 100%)}.theme-gray-light-gradient .card-bg{background:linear-gradient(180deg, var(--color-neutral-100) 0%, var(--color-neutral-300) 100%)}}';export{s as bh_credit_card}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as i,a as e,h as r,H as o}from"./p-CTHvNfIu.js";import{h as a,c as s,g as l,a as n,b as d}from"./p-D1dU_VEW.js";import{v as h}from"./p-R-A72b5e.js";import{c,r as p}from"./p-YLeLKAYJ.js";import{c as g}from"./p-Dn-MvAk9.js";import{c as v,a as f}from"./p-CS8F5LFw.js";import{c as b}from"./p-CijzRD3j.js";import{t as u}from"./p-Bf0qW3wI.js";import{m,M as x}from"./p-CSH9RXgl.js";import{B as y,r as w}from"./p-BNVOtH-1.js";import{K as k}from"./p-zdFuIabL.js";const S=["=","+","-","@","\t","\r"],C="\0";function F(t,i){if(!i.length)return t;const e=new Map(i.filter((t=>t.selectedValues.length>0)).map((t=>[t.dataField,new Set(t.selectedValues)])));return 0===e.size?t:t.filter((t=>{for(const[i,r]of e)if(!r.has(t[i]))return!1;return!0}))}function D(t,i,e){const r=e&&e.length>0?F(t,e.filter((t=>t.dataField!==i))):t,o=new Set,a=[];for(const t of r){const e=t[i];o.has(e)||(o.add(e),a.push(e))}return a.toSorted(((t,i)=>String(t).localeCompare(String(i))))}class T{sum=0;count=0;min=Number.POSITIVE_INFINITY;max=Number.NEGATIVE_INFINITY;values=[];add(t){if(null==t)return;this.count++;const i=Number(t);Number.isFinite(i)&&(this.sum+=i,i<this.min&&(this.min=i),i>this.max&&(this.max=i)),this.values.push(t)}getValue(t,i){if(0===this.count)return null;switch(t){case"sum":default:return this.sum;case"count":return this.count;case"avg":return this.sum/this.count;case"min":return this.min===Number.POSITIVE_INFINITY?null:this.min;case"max":return this.max===Number.NEGATIVE_INFINITY?null:this.max;case"custom":return i?i(this.values):null}}}function z(t,i,e,r,o,a){const s="number"==typeof t&&Number.isFinite(t)?1:Array.isArray(t)?t.length:0,l=function(t,i,e){if(null==t)return"";const r=i.format;if(r?.formatter)return String(r.formatter(t));if("currency"===r?.type){const i={style:"currency",currency:r.currency??"USD",minimumFractionDigits:r.precision??0,maximumFractionDigits:r.precision??2,...r.numberFormat};return new Intl.NumberFormat(void 0,i).format(Number(t))}if("percent"===r?.type){const i={style:"percent",minimumFractionDigits:r.precision??0,maximumFractionDigits:r.precision??2,...r.numberFormat};return new Intl.NumberFormat(void 0,i).format(Number(t))}if("decimal"===r?.type){const i={minimumFractionDigits:r.precision??0,maximumFractionDigits:r.precision??2,...r.numberFormat};return new Intl.NumberFormat(void 0,i).format(Number(t))}if("date"===r?.type||"datetime"===r?.type){const i=t instanceof Date?t:new Date(String(t));return Number.isNaN(i.getTime())?String(t):new Intl.DateTimeFormat(void 0,r.dateFormat??("datetime"===r.type?{dateStyle:"short",timeStyle:"short"}:{dateStyle:"short"})).format(i)}if("count"===e||"sum"===e||"avg"===e||"min"===e||"max"===e){const i=Number(t);if(Number.isFinite(i))return i.toFixed(r?.precision??2)}return String(t)}(t,r,o);return{value:t,formattedValue:l,rowPath:[...i],columnPath:[...e],isSummary:a,dataField:r.dataField,summaryType:o??"sum",count:s}}function M(t){return t.join(C)}function E(t,i){return i.map((i=>String(t[i.dataField]??"")))}function A(t,i){return i.map((i=>String(t[i.dataField]??"")))}const P=",";function N(t,i={}){const{fileName:e="pivot-export",includeTotals:r=!0,delimiter:o=P,includeBOM:a=!0}=i,s=function(t,i={}){const{includeTotals:e=!0}=i,r=[],o=[""];for(const i of t.columnHeaders)o.push(i.caption||"");e&&t.rowGrandTotals.length>0&&o.push("Grand Total"),r.push(o);for(const[i,o]of t.cells.entries()){const a=[t.rowHeaders[i]?.caption??""];for(const t of o)a.push(t?.formattedValue??"");e&&t.rowGrandTotals[i]&&a.push(t.rowGrandTotals[i].formattedValue??""),r.push(a)}if(e&&t.columnGrandTotals.length>0){const i=["Grand Total"];for(const e of t.columnGrandTotals)i.push(e.formattedValue??"");t.grandTotal&&i.push(t.grandTotal.formattedValue??""),r.push(i)}return r}(t,{includeTotals:r}),l=s.map((t=>t.map((t=>function(t,i){const e=function(t){if(null==t)return"";const i=String(t);return S.some((t=>i.startsWith(t)))?`'${i}`:i}(t);return e.includes(i)||e.includes('"')||e.includes("\n")||e.includes("\r")?`"${e.replace(/"/g,'""')}"`:e}(String(t),o))).join(o))).join("\n");!function(t,i){const e=URL.createObjectURL(t),r=document.createElement("a");r.href=e,r.download=i,r.style.display="none",document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(e)}(new Blob([(a?"\ufeff":"")+l],{type:"text/csv;charset=utf-8;"}),e.replace(/\.csv$/i,"")+".csv")}function H(t){return`bh-pivot-grid-state-${t}`}function $(t){if(null==t||"object"!=typeof t)return!1;const i=t;return"number"==typeof i.version&&Array.isArray(i.fields)&&Array.isArray(i.rowExpandedPaths)&&Array.isArray(i.columnExpandedPaths)&&Array.isArray(i.filters)&&Array.isArray(i.sorting)}function I(t){if(!t.enable||!t.stateStorageKey)return;const i=t.storage??("undefined"==typeof localStorage?void 0:localStorage);if(i)try{const e=H(t.stateStorageKey),r={...t.state,version:1};i.setItem(e,JSON.stringify(r)),t.onSave?.(t.state)}catch(t){}}const L={grandTotal:"Grand Total",total:"Total",noData:"No Data",dataNotAvailable:"Data not available",showFieldChooser:"Show Field Chooser",exportToExcel:"Export to CSV",expandAll:"Expand All",collapseAll:"Collapse All",allFields:"All Fields",rowFields:"Row Fields",columnFields:"Column Fields",dataFields:"Data Fields",filterFields:"Filter Fields",columnFieldArea:"Drop Column Fields Here",dataFieldArea:"Drop Data Fields Here",filterFieldArea:"Drop Filter Fields Here",rowFieldArea:"Drop Row Fields Here",removeAllSorting:"Remove All Sorting",sortColumnBySummary:"Sort {0} by This Column",sortRowBySummary:"Sort {0} by This Row",cancel:"Cancel",ok:"OK",emptyValue:"(Blanks)"},R=class{constructor(e){t(this,e),this.bhCellClick=i(this,"bhCellClick"),this.bhCellPrepared=i(this,"bhCellPrepared"),this.bhFieldChange=i(this,"bhFieldChange"),this.bhFieldDragStart=i(this,"bhFieldDragStart"),this.bhFieldDragEnd=i(this,"bhFieldDragEnd"),this.bhExpandChange=i(this,"bhExpandChange"),this.bhStateLoad=i(this,"bhStateLoad"),this.bhStateSave=i(this,"bhStateSave"),this.bhExport=i(this,"bhExport"),this.bhExporting=i(this,"bhExporting"),this.bhContextMenuPreparing=i(this,"bhContextMenuPreparing"),this.bhReady=i(this,"bhReady"),this.bhDisposing=i(this,"bhDisposing"),this.bhError=i(this,"bhError")}get el(){return e(this)}logger=c("bh-pivot-grid");handleError=g({componentName:"bh-pivot-grid",emitError:t=>this.bhError.emit({error:t}),logger:this.logger});destroy$=v();listeners=b();i18nUnsubscribe;_i18nVersion=0;data=[];dataSource;fields=[];showRowGrandTotals=!0;showColumnGrandTotals=!0;showRowTotals=!0;showColumnTotals=!0;totalPosition="after";showTotalsPrior="none";rowHeaderLayout="standard";wordWrapEnabled=!1;hideEmptySummaryCells=!1;dataFieldArea="column";showBorders=!0;disabled=!1;encodeHtml=!0;showFieldPanel=!0;showRowFields=!0;showColumnFields=!0;showDataFields=!0;showFilterFields=!0;allowFieldDragging=!0;showFieldChooserButton=!0;fieldChooserEnabled=!0;fieldChooserApplyMode="instantly";fieldChooserTitle="Field Chooser";fieldChooserWidth=400;fieldChooserHeight=500;allowFiltering=!0;showHeaderFilter=!0;headerFilterHeight=300;headerFilterWidth=250;headerFilterAllowSelectAll=!0;headerFilterShowRelevantValues=!1;headerFilterSearchEnabled=!0;headerFilterSearchMode="contains";headerFilterSearchTimeout=500;allowSorting=!0;allowSortingBySummary=!0;allowExpandAll=!0;rowExpandedPaths=[];columnExpandedPaths=[];enableExport=!0;showExportButton=!0;exportFileName="pivot-export";exportIncludeTotals=!0;enableStatePersistence=!1;stateStorageKey;stateStorageType="localStorage";stateSavingTimeout=2e3;loading=!1;loadingType="spinner";emptyTitle="No data";emptyDescription="Configure fields to see data.";ariaLabel="Pivot grid";focusTabIndex=0;texts={};fieldChooserOpen=!1;effectiveData=[];matrix=null;dragData=null;dropTargetArea=null;filters=[];sorting=[];focusedCellRow=0;focusedCellCol=0;liveAnnouncement="";contextMenuVisible=!1;contextMenuX=0;contextMenuY=0;contextMenuItems=[];headerFilterOpenField=null;headerFilterPendingValues=[];headerFilterSearchQuery="";headerFilterAnchorX=0;headerFilterAnchorY=0;activeCellEl=null;focusMovedByKeyboard=!1;contextMenuClickOutsideHandler=null;headerFilterClickOutsideHandler=null;bhCellClick;bhCellPrepared;bhFieldChange;bhFieldDragStart;bhFieldDragEnd;bhExpandChange;bhStateLoad;bhStateSave;bhExport;bhExporting;bhContextMenuPreparing;bhReady;bhDisposing;bhError;onDataChange(){this.syncEffectiveData()}onMatrixInputsChange(){this.rebuildMatrix(),this.scheduleStateSave()}syncEffectiveData(){if(this.dataSource?.store){const t=this.dataSource.store;this.effectiveData=Array.isArray(t)?t:t.data??[]}else this.effectiveData=Array.isArray(this.data)?this.data:[];this.rebuildMatrix()}scheduleStateSave(){this.enableStatePersistence&&this.stateStorageKey&&this.destroy$&&u(this.stateSavingTimeout,this.destroy$)?.subscribe((async()=>{const t=await this.getState();I({enable:!0,stateStorageKey:this.stateStorageKey,state:t,onSave:t=>this.bhStateSave.emit({state:t})})}))}rebuildMatrix(){if(this.effectiveData.length>0&&this.fields.length>0)try{this.matrix=function(t){const{data:i,fields:e,rowExpandedPaths:r=[],columnExpandedPaths:o=[],filters:a=[],sorting:s=[],showRowGrandTotals:l=!0,showColumnGrandTotals:n=!0}=t,d=a.length>0?F(i,a):i,h=e.filter((t=>"row"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))),c=e.filter((t=>"column"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))),p=e.filter((t=>"data"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0)));if(0===h.length&&0===c.length)return null;if(0===p.length)return null;if(0===d.length)return function(t,i,e){const r=e[0];return{rowHeaders:[],columnHeaders:[],cells:[],rowGrandTotals:[],columnGrandTotals:[],grandTotal:z(null,[],[],r,r?.summaryType??"sum",!0),rowCount:0,columnCount:0}}(0,0,p);const g=new Map,v=new Set(r.map((t=>M(t)))),f=new Set(o.map((t=>M(t))));for(const t of d){const i=E(t,h),e=A(t,c),r=M(i),o=M(e);let a=g.get(r);a||(a=new Map,g.set(r,a));let s=a.get(o);s||(s=new Map,a.set(o,s));for(const i of p){let e=s.get(i.dataField);e||(e=new T,s.set(i.dataField,e)),e.add(t[i.dataField])}}let b=Array.from(g.keys()).map((t=>t.split(C))).toSorted(((t,i)=>M(t).localeCompare(M(i))));const u=new Set;for(const t of g.values())for(const i of t.keys())u.add(i);let m=Array.from(u).map((t=>t.split(C))).toSorted(((t,i)=>M(t).localeCompare(M(i))));const x=h[0]?s.find((t=>t.dataField===h[0].dataField)):void 0,y=c[0]?s.find((t=>t.dataField===c[0].dataField)):void 0,w=(t,i,e)=>{const r=M(t).localeCompare(M(i));return"desc"===e?-r:r};x&&(b=b.toSorted(((t,i)=>w(t,i,x.sortOrder)))),y&&(m=m.toSorted(((t,i)=>w(t,i,y.sortOrder))));const k=[],S=[],D=[],P=new Map,N=new Map,H=new Map;for(const t of p){let i=H.get(t.dataField);i||(i=new T,H.set(t.dataField,i));for(const e of d)i.add(e[t.dataField])}for(const t of b){const i=M(t),e=g.get(i),r=[];let o=P.get(i);o||(o=new Map,P.set(i,o));for(const i of m){const a=M(i),s=e.get(a),l=p[0],n=l.summaryType??"sum";if(!s||!s.has(l.dataField)){r.push(z(null,t,i,l,n,!1));continue}const d=s.get(l.dataField).getValue(n,l.calculateCustomSummary);r.push(z(d,t,i,l,n,!1));for(const t of p){const i=s.get(t.dataField);if(i){let e=o.get(t.dataField);e||(e=new T,o.set(t.dataField,e)),e.sum+=i.sum,e.count+=i.count,e.values.push(...i.values),Number.isFinite(i.min)&&(e.min=Math.min(e.min,i.min)),Number.isFinite(i.max)&&(e.max=Math.max(e.max,i.max))}}let h=N.get(a);h||(h=new Map,N.set(a,h));for(const t of p){const i=s.get(t.dataField);if(i){let e=h.get(t.dataField);e||(e=new T,h.set(t.dataField,e)),e.sum+=i.sum,e.count+=i.count,e.values.push(...i.values),Number.isFinite(i.min)&&(e.min=Math.min(e.min,i.min)),Number.isFinite(i.max)&&(e.max=Math.max(e.max,i.max))}}}if(k.push(r),l&&p.length>0){const i=p[0],e=o.get(i.dataField),r=e?e.getValue(i.summaryType??"sum",i.calculateCustomSummary):null;S.push(z(r,t,[],i,i.summaryType??"sum",!0))}}if(n&&p.length>0){const t=p[0];for(const i of m){const e=M(i),r=N.get(e),o=r?.get(t.dataField),a=o?o.getValue(t.summaryType??"sum",t.calculateCustomSummary):null;D.push(z(a,[],i,t,t.summaryType??"sum",!0))}}const $=p.length>0?(()=>{const t=p[0],i=H.get(t.dataField);return z(i?i.getValue(t.summaryType??"sum",t.calculateCustomSummary):null,[],[],t,t.summaryType??"sum",!0)})():z(null,[],[],p[0],"sum",!0),I=function(t,i,e){if(0===i.length)return[];const r=i[0],o=new Set,a=[];let s=0;for(const i of t){const l=i.slice(0,1),n=M(l);if(o.has(n))continue;o.add(n);const d=i[0]||"",h=t.some((t=>t.length>1&&M(t.slice(0,1))===n)),c=h&&e.has(n);a.push({key:n,path:[...l],caption:d,level:0,span:1,expanded:c,expandable:h,children:[],field:r,index:s++})}return a}(b,h,v),L=function(t,i,e){if(0===i.length)return[];const r=i[0],o=new Set,a=[];let s=0;for(const i of t){const l=i.slice(0,1),n=M(l);if(o.has(n))continue;o.add(n);const d=i[0]||"",h=t.some((t=>t.length>1&&M(t.slice(0,1))===n)),c=h&&e.has(n);a.push({key:n,path:[...l],caption:d,level:0,span:1,expanded:c,expandable:h,children:[],field:r,index:s++})}return a}(m,c,f);return{rowHeaders:I,columnHeaders:L,cells:k,rowGrandTotals:S,columnGrandTotals:D,grandTotal:$,rowCount:b.length,columnCount:m.length}}({data:this.effectiveData,fields:this.fields,rowExpandedPaths:this.rowExpandedPaths,columnExpandedPaths:this.columnExpandedPaths,filters:this.filters,sorting:this.sorting,showRowGrandTotals:this.showRowGrandTotals,showColumnGrandTotals:this.showColumnGrandTotals})}catch(t){this.handleError(t),this.matrix=null}else this.matrix=null}componentWillLoad(){this.enableStatePersistence&&this.stateStorageKey&&function(t){if(!t.stateStorageKey)return null;const i=t.storage??("undefined"==typeof localStorage?void 0:localStorage);if(!i)return null;try{const e=H(t.stateStorageKey),r=i.getItem(e);if(!r)return t.onLoad(null),null;const o=h(r,$);if(!o.valid||null==o.value)return t.onLoad(null),null;const a=function(t){return(t.version??0)>=1?t:{version:1,fields:t.fields??[],rowExpandedPaths:t.rowExpandedPaths??[],columnExpandedPaths:t.columnExpandedPaths??[],filters:t.filters??[],sorting:t.sorting??[]}}(o.value);return t.onLoad(a),a}catch(i){return t.onLoad(null),null}}({enable:!0,stateStorageKey:this.stateStorageKey,storage:"sessionStorage"===this.stateStorageType&&"undefined"!=typeof sessionStorage?sessionStorage:void 0,onLoad:t=>{t&&(this.bhStateLoad.emit({state:t}),this.rowExpandedPaths=t.rowExpandedPaths??[],this.columnExpandedPaths=t.columnExpandedPaths??[],this.filters=t.filters??[],this.sorting=t.sorting??[],t.fields?.length&&this.fields.length>0&&(this.fields=this.fields.map((i=>{const e=t.fields.find((t=>t.dataField===i.dataField));return e?{...i,area:e.area,areaIndex:e.areaIndex,visible:e.visible,sortOrder:e.sortOrder}:i}))))}}),this.syncEffectiveData(),m.increment(x.EVENT_EMIT,{component:"bh-pivot-grid",event:"load"}),this.i18nUnsubscribe=y.onLocaleChange((()=>{this._i18nVersion++})),this.i18nUnsubscribe=y.onLocaleChange((()=>{this._i18nVersion++})),this.i18nUnsubscribe=y.onLocaleChange((()=>{this._i18nVersion++}))}componentDidCatch(t){this.logger.error("Component error caught",t instanceof Error?t:new Error(String(t))),m.increment(x.COMPONENT_ERROR,{component:"bh-pivot-grid",error_type:t instanceof Error?t.name:"unknown"}),p("bh-pivot-grid",t),this.bhError.emit({error:t})}componentDidLoad(){this.bhReady.emit()}disconnectedCallback(){this.bhDisposing.emit(),f(this.destroy$),this.listeners.removeAll(),this.i18nUnsubscribe?.()}async expandAll(){if(!this.matrix)return;const t=this.collectExpandablePaths(this.matrix.rowHeaders),i=this.collectExpandablePaths(this.matrix.columnHeaders);this.rowExpandedPaths=t,this.columnExpandedPaths=i,this.bhExpandChange.emit({path:[],expanded:!0,type:"row"}),this.bhExpandChange.emit({path:[],expanded:!0,type:"column"})}async collapseAll(){this.rowExpandedPaths=[],this.columnExpandedPaths=[],this.bhExpandChange.emit({path:[],expanded:!1,type:"row"}),this.bhExpandChange.emit({path:[],expanded:!1,type:"column"})}async expandRow(t){const i=t.join(C);this.rowExpandedPaths.some((t=>t.join(C)===i))||(this.rowExpandedPaths=[...this.rowExpandedPaths,t]),this.bhExpandChange.emit({path:t,expanded:!0,type:"row"})}async collapseRow(t){const i=t.join(C);this.rowExpandedPaths=this.rowExpandedPaths.filter((t=>t.join(C)!==i)),this.bhExpandChange.emit({path:t,expanded:!1,type:"row"})}async expandColumn(t){const i=t.join(C);this.columnExpandedPaths.some((t=>t.join(C)===i))||(this.columnExpandedPaths=[...this.columnExpandedPaths,t]),this.bhExpandChange.emit({path:t,expanded:!0,type:"column"})}async collapseColumn(t){const i=t.join(C);this.columnExpandedPaths=this.columnExpandedPaths.filter((t=>t.join(C)!==i)),this.bhExpandChange.emit({path:t,expanded:!1,type:"column"})}collectExpandablePaths(t){const i=[];for(const e of t)e.expandable&&i.push(e.path),e.children.length>0&&i.push(...this.collectExpandablePaths(e.children));return i}async getState(){return{version:1,fields:this.fields.map((t=>({dataField:t.dataField,area:t.area,areaIndex:t.areaIndex,visible:t.visible,sortOrder:t.sortOrder}))),rowExpandedPaths:[...this.rowExpandedPaths],columnExpandedPaths:[...this.columnExpandedPaths],filters:this.filters.map((t=>({dataField:t.dataField,selectedValues:[...t.selectedValues]}))),sorting:this.sorting.map((t=>({...t})))}}async setState(t){this.rowExpandedPaths=t.rowExpandedPaths??[],this.columnExpandedPaths=t.columnExpandedPaths??[],this.filters=t.filters??[],this.sorting=t.sorting??[],t.fields?.length&&(this.fields=t.fields.map((t=>({...this.fields.find((i=>i.dataField===t.dataField)),dataField:t.dataField,area:t.area,areaIndex:t.areaIndex,visible:t.visible,sortOrder:t.sortOrder})))),this.rebuildMatrix()}async resetState(){this.rowExpandedPaths=[],this.columnExpandedPaths=[],this.filters=[],this.sorting=[],this.rebuildMatrix()}async saveState(){const t=await this.getState();this.bhStateSave.emit({state:t})}async saveStateImmediate(){if(!this.enableStatePersistence||!this.stateStorageKey)return;const t=await this.getState();I({enable:!0,stateStorageKey:this.stateStorageKey,state:t,storage:"sessionStorage"===this.stateStorageType&&"undefined"!=typeof sessionStorage?sessionStorage:void 0,onSave:t=>this.bhStateSave.emit({state:t})})}async loadState(){this.bhStateLoad.emit({state:null})}async getFields(){return[...this.fields]}async getFieldsByArea(t){return this.fields.filter((i=>i.area===t))}async moveField(t,i,e){const r=this.fields.findIndex((i=>i.dataField===t));if(-1===r)return;const o=this.fields.map((t=>({...t}))),a=o[r];a.area=i;const s=o.toSpliced(r,1),l=s.filter((t=>t.area===i));a.areaIndex=void 0===e?l.length:Math.min(e,l.length);const n=["row","column","data","filter"],d=[...s,a].toSorted(((t,i)=>n.indexOf(t.area??"row")-n.indexOf(i.area??"row")||(t.areaIndex??0)-(i.areaIndex??0)));for(const t of n){const i=d.filter((i=>(i.area??"row")===t));for(const[t,e]of i.entries())e.areaIndex=t}this.fields=d,this.bhFieldChange.emit({fields:s,changeType:"move"}),this.scheduleStateSave()}async updateField(t,i){const e=this.fields.findIndex((i=>i.dataField===t));if(-1===e)return;const r=this.fields.map((t=>({...t})));r[e]={...r[e],...i},this.fields=r,this.bhFieldChange.emit({fields:r,changeType:"update"}),this.scheduleStateSave()}async refresh(){this.syncEffectiveData()}async getMatrix(){return this.matrix}async exportTo(t,i){const e=i?.fileName??this.exportFileName,r=i?.includeTotals??this.exportIncludeTotals;this.bhExporting.emit({format:"csv",fileName:e,includeTotals:r}),this.matrix&&N(this.matrix,{fileName:e,includeTotals:r,includeBOM:!0}),this.bhExport.emit({format:"csv",rowCount:this.matrix?.rowCount??0,columnCount:this.matrix?.columnCount??0,fileName:e,includeTotals:r})}async showFieldChooser(){this.fieldChooserOpen=!0}async hideFieldChooser(){this.fieldChooserOpen=!1}onFieldDragStart=(t,i)=>{if(!a(t,i,this.allowFieldDragging))return;const e=i.area??"row";this.dragData={dataField:i.dataField,sourceArea:e},this.bhFieldDragStart.emit({field:i,sourceArea:e,event:t})};onFieldDragEnd=t=>{const i=this.fields.find((t=>t.dataField===this.dragData?.dataField)),e=this.dragData?.sourceArea??"row";s(),this.dragData=null,this.dropTargetArea=null,i&&this.bhFieldDragEnd.emit({field:i,sourceArea:e,event:t})};onFieldDragOver=(t,i)=>{const e=this.dragData??l(t);n(t,i,e)&&(this.dropTargetArea=i)};onFieldDragLeave=()=>{this.dropTargetArea=null};onFieldDrop=(t,i)=>{const e=l(t),r=d(t,i,e,this.fields);this.dropTargetArea=null,this.dragData=null,s(),r&&(this.fields=r.fields,this.bhFieldChange.emit({fields:r.fields,changeType:r.changeType}),this.scheduleStateSave())};setFilterSelectedValues=(t,i)=>{const e=this.filters.filter((i=>i.dataField!==t));i.length>0&&e.push({dataField:t,selectedValues:i}),this.filters=e,this.rebuildMatrix(),this.scheduleStateSave()};toggleSort=t=>{const i=this.sorting.find((i=>i.dataField===t)),e=i?"asc"===i.sortOrder?"desc":void 0:"asc",r=e?this.sorting.filter((i=>i.dataField!==t)).concat([{dataField:t,sortOrder:e}]):this.sorting.filter((i=>i.dataField!==t));this.sorting=r,this.rebuildMatrix(),this.scheduleStateSave()};getSortOrder(t){const i=this.sorting.find((i=>i.dataField===t));return i?.sortOrder??null}closeContextMenu=()=>{this.contextMenuVisible=!1,this.contextMenuClickOutsideHandler&&(this.listeners.remove(document,"click",this.contextMenuClickOutsideHandler),this.contextMenuClickOutsideHandler=null)};openHeaderFilter=(t,i,e)=>{this.headerFilterOpenField=t,this.headerFilterPendingValues=[...i],this.headerFilterSearchQuery="",this.headerFilterAnchorX=e.left,this.headerFilterAnchorY=e.bottom,this.headerFilterClickOutsideHandler=t=>{const i=t.target;this.el?.shadowRoot?.querySelector(".pivot-grid-header-filter-popup")?.contains(i)||this.closeHeaderFilter()},this.destroy$&&u(0,this.destroy$)?.subscribe((()=>{this.headerFilterClickOutsideHandler&&this.listeners.add(document,"click",this.headerFilterClickOutsideHandler)}))};closeHeaderFilter=()=>{const t=this.headerFilterClickOutsideHandler;this.headerFilterOpenField=null,this.headerFilterPendingValues=[],this.headerFilterSearchQuery="",this.headerFilterClickOutsideHandler=null,t&&this.listeners.remove(document,"click",t)};applyHeaderFilter=()=>{this.headerFilterOpenField&&this.setFilterSelectedValues(this.headerFilterOpenField,this.headerFilterPendingValues),this.closeHeaderFilter()};toggleHeaderFilterValue=t=>{const i=new Set(this.headerFilterPendingValues);i.has(t)?i.delete(t):i.add(t),this.headerFilterPendingValues=Array.from(i)};setHeaderFilterSelectAll=(t,i)=>{this.headerFilterPendingValues=t?[...i]:[]};onTableContextMenu=t=>{if(this.disabled)return;t.preventDefault();const i=this.resolvedTexts,e=[];this.allowExpandAll&&(e.push({id:"expand-all",text:i.expandAll,onClick:()=>this.expandAll()}),e.push({id:"collapse-all",text:i.collapseAll,onClick:()=>this.collapseAll()})),this.allowSorting&&this.sorting.length>0&&e.push({id:"remove-sort",text:i.removeAllSorting,onClick:()=>{this.sorting=[],this.rebuildMatrix(),this.scheduleStateSave()}});const r={target:"cell",items:e,event:t,cancel:!1};this.bhContextMenuPreparing.emit(r),r.cancel||(this.contextMenuItems=r.items,this.contextMenuX=t.clientX,this.contextMenuY=t.clientY,this.contextMenuVisible=!0,this.contextMenuClickOutsideHandler=()=>this.closeContextMenu(),this.destroy$&&u(0,this.destroy$)?.subscribe((()=>{this.contextMenuClickOutsideHandler&&this.listeners.add(document,"click",this.contextMenuClickOutsideHandler)})))};handleGridKeyDown=t=>{if(this.contextMenuVisible&&t.key===k.ESCAPE)return t.preventDefault(),void this.closeContextMenu();if(this.headerFilterOpenField&&t.key===k.ESCAPE)return t.preventDefault(),void this.closeHeaderFilter();if(this.disabled||!this.matrix)return;const i=this.matrix.cells.length,e=(this.matrix.cells[0]?.length??0)+(this.showRowGrandTotals?1:0);if(0===i||0===e)return;this.focusedCellRow=Math.max(0,Math.min(this.focusedCellRow,i-1)),this.focusedCellCol=Math.max(0,Math.min(this.focusedCellCol,e-1));let r=this.focusedCellRow,o=this.focusedCellCol,a=!1;switch(t.key){case k.ARROW_UP:t.preventDefault(),r=Math.max(0,this.focusedCellRow-1),a=!0;break;case k.ARROW_DOWN:t.preventDefault(),r=Math.min(i-1,this.focusedCellRow+1),a=!0;break;case k.ARROW_LEFT:t.preventDefault(),o=Math.max(0,this.focusedCellCol-1),a=!0;break;case k.ARROW_RIGHT:t.preventDefault(),o=Math.min(e-1,this.focusedCellCol+1),a=!0;break;case k.HOME:t.preventDefault(),(t.ctrlKey||t.metaKey)&&(r=0),o=0,a=!0;break;case k.END:t.preventDefault(),(t.ctrlKey||t.metaKey)&&(r=i-1),o=e-1,a=!0;break;case k.ENTER:case k.SPACE:{t.preventDefault();const i=this.matrix.cells[this.focusedCellRow],e=i&&this.focusedCellCol<i.length?i[this.focusedCellCol]:null;return void(e&&this.bhCellClick.emit({cell:e,rowPath:e.rowPath,columnPath:e.columnPath,event:t}))}}if(a&&(r!==this.focusedCellRow||o!==this.focusedCellCol)){this.focusedCellRow=r,this.focusedCellCol=o,this.focusMovedByKeyboard=!0;const t=this.matrix.cells[r],i=t&&o<t.length+(this.showRowGrandTotals?1:0)?t[o]:null,e=i?.formattedValue??"";this.liveAnnouncement=`${this.ariaLabel}, row ${r+1}, column ${o+1}${e?`, ${e}`:""}`}};get resolvedTexts(){return{...L,...this.texts}}get rowTotalsPrior(){return"rows"===this.showTotalsPrior||"both"===this.showTotalsPrior}get colTotalsPrior(){return"columns"===this.showTotalsPrior||"both"===this.showTotalsPrior}render(){const t=this.resolvedTexts,i=!(this.effectiveData.length>0&&this.fields.length>0),e=this.matrix,a=null==e?void 0:String(e.rowCount+(this.showRowGrandTotals?1:0)+(this.showColumnGrandTotals?1:0)),s=null==e?void 0:String(e.columnCount+(this.showRowGrandTotals?1:0)+(this.showColumnGrandTotals?1:0));return r(o,{key:"4fc93ab072c0e03fbfd9d9a8bc21520f09d7d6bf","aria-disabled":this.disabled?"true":void 0,"aria-label":w("bh-pivot-grid","ariaLabel",this.ariaLabel,"Pivot grid"),class:"pivot-grid-root",onFocus:t=>{this.matrix&&t.target===this.el&&this.activeCellEl&&this.activeCellEl.focus()},onKeyDown:this.handleGridKeyDown,role:"grid",tabindex:this.disabled?-1:this.focusTabIndex},r("div",{key:"4a254af3c571045791756e3a23e42741184f6322","aria-atomic":"true","aria-live":"polite",class:"pivot-grid-live-region",role:"status"},this.liveAnnouncement),r("div",{key:"0d050f0024f35365dd91e2feef1573e942595f6f",class:"pivot-grid-root"},this.showFieldPanel&&r("div",{key:"1a3cd6c572c4acd747af775faef1ba59b062133b",class:"pivot-grid-toolbar",part:"toolbar"},r("slot",{key:"04f504dba0a53e82eb6aabf699da2a0f580dd353",name:"toolbar-start"}),this.showFieldChooserButton&&this.fieldChooserEnabled&&r("button",{key:"b961d63c05039eb4b0ae03f4fc235e401f5a0999","aria-label":t.showFieldChooser,class:"pivot-grid-toolbar-btn",disabled:this.disabled,onClick:()=>this.showFieldChooser(),type:"button"},t.showFieldChooser),this.enableExport&&this.showExportButton&&r("button",{key:"5e28936efd931998fc105e9c89c8c01906a9cfd3","aria-label":t.exportToExcel,class:"pivot-grid-toolbar-btn",disabled:this.disabled,onClick:()=>this.exportTo("csv"),type:"button"},t.exportToExcel),r("slot",{key:"98c24a2584b304ff9643ed03f50b39ab13722747",name:"toolbar-end"})),this.showFieldPanel&&r("div",{key:"eb57a40e286d1e5a28d97cafd2ba91c8b7681b48",class:"pivot-grid-field-panel",part:"field-panel"},this.showRowFields&&r("div",{key:"582a2235e1935dd87a937cbfe6184cd1addb56c4",class:{"pivot-grid-field-area":!0,"pivot-grid-drop-zone-active":"row"===this.dropTargetArea},onDragLeave:()=>this.onFieldDragLeave(),onDragOver:t=>this.onFieldDragOver(t,"row"),onDrop:t=>this.onFieldDrop(t,"row"),part:"field-area-row"},r("span",{key:"03b10fd67a23237eef9f7e962819e8d25237150d",class:"pivot-grid-field-area-label"},t.rowFields),r("div",{key:"92c89eefbd1ccbdd3162b4eff0bc03015d56613a",class:"pivot-grid-field-chips"},this.fields.filter((t=>"row"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((t=>r("span",{class:"pivot-grid-field-chip",draggable:this.allowFieldDragging&&!1!==t.allowDragging,key:t.dataField,onDragEnd:t=>this.onFieldDragEnd(t),onDragStart:i=>this.onFieldDragStart(i,t),part:"field-chip"},t.caption??t.dataField))))),this.showColumnFields&&r("div",{key:"8a7804638effbe22d6d75e9709f23d4f536bd568",class:{"pivot-grid-field-area":!0,"pivot-grid-drop-zone-active":"column"===this.dropTargetArea},onDragLeave:()=>this.onFieldDragLeave(),onDragOver:t=>this.onFieldDragOver(t,"column"),onDrop:t=>this.onFieldDrop(t,"column"),part:"field-area-column"},r("span",{key:"dd42b40f8b553ee3dffb8516cfe628c701307edb",class:"pivot-grid-field-area-label"},t.columnFields),r("div",{key:"5b93a9bfb3bebf7d822103fe688e34ef0c935229",class:"pivot-grid-field-chips"},this.fields.filter((t=>"column"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((t=>r("span",{class:"pivot-grid-field-chip",draggable:this.allowFieldDragging&&!1!==t.allowDragging,key:t.dataField,onDragEnd:t=>this.onFieldDragEnd(t),onDragStart:i=>this.onFieldDragStart(i,t),part:"field-chip"},t.caption??t.dataField))))),this.showDataFields&&r("div",{key:"3c2057c100aeaad7c9290bd01ce2e5f3ea0e89d6",class:{"pivot-grid-field-area":!0,"pivot-grid-drop-zone-active":"data"===this.dropTargetArea},onDragLeave:()=>this.onFieldDragLeave(),onDragOver:t=>this.onFieldDragOver(t,"data"),onDrop:t=>this.onFieldDrop(t,"data"),part:"field-area-data"},r("span",{key:"6ae641ddde3dd41eb0e4730e40fcf47bcd9db279",class:"pivot-grid-field-area-label"},t.dataFields),r("div",{key:"782e54f735fcbc3bc51cf5320f12e58d73a12c68",class:"pivot-grid-field-chips"},this.fields.filter((t=>"data"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((t=>r("span",{class:"pivot-grid-field-chip",draggable:this.allowFieldDragging&&!1!==t.allowDragging,key:t.dataField,onDragEnd:t=>this.onFieldDragEnd(t),onDragStart:i=>this.onFieldDragStart(i,t),part:"field-chip"},t.caption??t.dataField,t.summaryType?` (${t.summaryType})`:""))))),this.showFilterFields&&r("div",{key:"2e3b1ab475f40bc9c9befa8c3170a2fec4b4dde3",class:{"pivot-grid-field-area":!0,"pivot-grid-drop-zone-active":"filter"===this.dropTargetArea},onDragLeave:()=>this.onFieldDragLeave(),onDragOver:t=>this.onFieldDragOver(t,"filter"),onDrop:t=>this.onFieldDrop(t,"filter"),part:"field-area-filter"},r("span",{key:"15f001dcfb71562e1fe3f160f60e99075a9844d2",class:"pivot-grid-field-area-label"},t.filterFields),r("div",{key:"79b72cfc696a3af62d65cb0b3594419a5283f719",class:"pivot-grid-field-chips"},this.fields.filter((t=>"filter"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((t=>r("span",{class:"pivot-grid-field-chip",draggable:this.allowFieldDragging&&!1!==t.allowDragging,key:t.dataField,onDragEnd:t=>this.onFieldDragEnd(t),onDragStart:i=>this.onFieldDragStart(i,t),part:"field-chip"},t.caption??t.dataField)))),this.allowFiltering&&this.fields.filter((t=>"filter"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((i=>{const e=D(this.effectiveData,i.dataField,this.headerFilterShowRelevantValues?this.filters:void 0),o=this.filters.find((t=>t.dataField===i.dataField))?.selectedValues??[],a=new Set(o);return r("div",{class:"pivot-grid-filter-dropdown-wrap",key:`filter-${i.dataField}`},r("label",{class:"pivot-grid-filter-label"},i.caption??i.dataField,":"),this.showHeaderFilter?r("button",{"aria-expanded":this.headerFilterOpenField===i.dataField?"true":"false","aria-haspopup":"dialog","aria-label":`Filter by ${i.caption??i.dataField}`,class:"pivot-grid-filter-select pivot-grid-filter-trigger",disabled:this.disabled,onClick:t=>{const e=t.target.getBoundingClientRect();this.openHeaderFilter(i.dataField,o,e)},part:"filter-trigger",type:"button"},0===o.length?t.emptyValue??"(All)":`${o.length} selected`):r("select",{"aria-label":`Filter by ${i.caption??i.dataField}`,class:"pivot-grid-filter-select",disabled:this.disabled,multiple:!0,onChange:t=>{const r=Array.from(t.target.selectedOptions).map((t=>Number(t.value)));this.setFilterSelectedValues(i.dataField,r.map((t=>e[t])))},part:"filter-select"},e.map(((t,i)=>r("option",{selected:a.has(t),value:String(i)},String(t??""))))))})))),r("div",{key:"ab6357a21ac11d4522771904d70007bc4f76e5a2","aria-busy":this.loading?"true":void 0,class:"pivot-grid-content",role:"region"},this.loading?r("div",{class:"pivot-grid-loading",part:"loading"},r("slot",{name:"loading"},"skeleton"===this.loadingType?r("div",{class:"pivot-grid-skeleton"},r("bh-skeleton-loader",{height:"var(--bh-pivot-grid-header-height)",width:"100%"}),[1,2,3,4,5].map((t=>r("bh-skeleton-loader",{height:"var(--bh-pivot-grid-cell-height)",key:t,width:"100%"})))):r("bh-loader-spinner",{ariaLabel:t.dataNotAvailable,overlay:!0,overlayMessage:t.dataNotAvailable,size:"lg"}))):i?r("div",{class:"pivot-grid-empty",part:"empty",role:"status"},r("slot",{name:"empty-state"},r("div",null,r("strong",null,w("bh-pivot-grid","emptyTitle",this.emptyTitle,"No data")),r("p",null,w("bh-pivot-grid","emptyDescription",this.emptyDescription,"Configure fields to build your pivot table."))))):this.matrix?r("div",{class:"pivot-grid-table-wrapper",onContextMenu:this.onTableContextMenu,part:"table-wrapper"},r("table",{"aria-colcount":s,"aria-label":w("bh-pivot-grid","ariaLabel",this.ariaLabel,"Pivot grid"),"aria-rowcount":a,class:"pivot-grid-table",part:"table"},r("thead",{class:"pivot-grid-thead",part:"thead"},r("tr",{class:"pivot-grid-header-row",role:"row"},r("th",{"aria-sort":this.allowSorting&&this.fields.filter((t=>"row"===t.area)).length>0?"asc"===this.getSortOrder(this.fields.filter((t=>"row"===t.area))[0]?.dataField??"")?"ascending":"desc"===this.getSortOrder(this.fields.filter((t=>"row"===t.area))[0]?.dataField??"")?"descending":"none":void 0,class:{"pivot-grid-corner":!0,"pivot-grid-header-cell":!0,"pivot-grid-sortable":this.allowSorting&&this.fields.filter((t=>"row"===t.area)).length>0},onClick:()=>{const t=this.fields.filter((t=>"row"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0)))[0];this.allowSorting&&t&&!1!==t.allowSorting&&this.toggleSort(t.dataField)},part:"corner",role:"columnheader",scope:"col"},this.allowSorting&&this.fields.filter((t=>"row"===t.area)).length>0?r("span",{class:"pivot-grid-sort-indicator"},"asc"===this.getSortOrder(this.fields.filter((t=>"row"===t.area))[0]?.dataField??"")?" ↑":"desc"===this.getSortOrder(this.fields.filter((t=>"row"===t.area))[0]?.dataField??"")?" ↓":" ⇅"):""),this.colTotalsPrior&&this.showRowGrandTotals&&r("th",{class:"pivot-grid-header-cell pivot-grid-total-header",part:"grand-total-header",role:"columnheader",scope:"col"},this.resolvedTexts.grandTotal),this.matrix.columnHeaders.map(((t,i)=>{const e=this.fields.filter((t=>"column"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0)))[0],o=e&&this.getSortOrder(e.dataField);return r("th",{"aria-sort":this.allowSorting&&0===i&&e&&!1!==e.allowSorting?"asc"===o?"ascending":"desc"===o?"descending":"none":void 0,class:{"pivot-grid-header-cell":!0,"pivot-grid-sortable":this.allowSorting&&0===i&&e&&!1!==e.allowSorting},"data-column-index":String(i),key:t.key,onClick:()=>{this.allowSorting&&0===i&&e&&!1!==e.allowSorting&&this.toggleSort(e.dataField)},part:"column-header",role:"columnheader",scope:"col"},t.caption,this.allowSorting&&0===i&&e&&r("span",{class:"pivot-grid-sort-indicator"},"asc"===o?" ↑":"desc"===o?" ↓":" ⇅"))})),!this.colTotalsPrior&&this.showRowGrandTotals&&r("th",{class:"pivot-grid-header-cell pivot-grid-total-header",part:"grand-total-header",role:"columnheader",scope:"col"},this.resolvedTexts.grandTotal))),r("tbody",{class:"pivot-grid-tbody",part:"tbody"},this.rowTotalsPrior&&this.showColumnGrandTotals&&r("tr",{class:"pivot-grid-grand-total-row",role:"row"},r("th",{class:"pivot-grid-header-cell pivot-grid-total-header",part:"grand-total-label",role:"rowheader",scope:"row"},this.resolvedTexts.grandTotal),this.colTotalsPrior&&this.showRowGrandTotals&&r("td",{class:"pivot-grid-cell pivot-grid-cell-total",part:"grand-total-cell"},(()=>{const i=this.matrix.grandTotal?.formattedValue;return null==i||""===String(i).trim()?t.emptyValue:i??""})()),this.matrix.columnGrandTotals.map(((i,e)=>r("td",{class:"pivot-grid-cell pivot-grid-cell-total",key:e,part:"column-grand-total"},(()=>{const e=i.formattedValue;return null==e||""===String(e).trim()?t.emptyValue:e??""})()))),!this.colTotalsPrior&&this.showRowGrandTotals&&r("td",{class:"pivot-grid-cell pivot-grid-cell-total",part:"grand-total-cell"},(()=>{const i=this.matrix.grandTotal?.formattedValue;return null==i||""===String(i).trim()?t.emptyValue:i??""})())),this.matrix.cells.map(((i,e)=>r("tr",{class:"pivot-grid-data-row",key:i[0]?.rowPath?.join(C)??`row-${e}`,role:"row"},r("th",{class:"pivot-grid-row-header pivot-grid-header-cell","data-row-index":String(e),part:"row-header",role:"rowheader",scope:"row"},this.matrix.rowHeaders[e]?.caption??""),this.colTotalsPrior&&this.showRowGrandTotals&&r("td",{class:"pivot-grid-cell pivot-grid-cell-total",part:"row-grand-total"},(()=>{const i=this.matrix.rowGrandTotals[e]?.formattedValue;return null==i||""===String(i).trim()?t.emptyValue:i??""})()),i.map(((i,o)=>r("td",{class:{"pivot-grid-cell":!0,"pivot-grid-cell-focused":e===this.focusedCellRow&&o===this.focusedCellCol,"pivot-grid-cell-total":i.isSummary},"data-value":i.formattedValue,key:o,onClick:t=>{this.focusedCellRow=e,this.focusedCellCol=o,this.bhCellClick.emit({cell:i,rowPath:i.rowPath,columnPath:i.columnPath,event:t})},part:"cell",ref:t=>{t&&(this.bhCellPrepared.emit({cell:i,rowPath:i.rowPath,columnPath:i.columnPath,cellElement:t}),e===this.focusedCellRow&&o===this.focusedCellCol&&(this.activeCellEl=t,this.focusMovedByKeyboard&&(t.focus(),this.focusMovedByKeyboard=!1)))},tabindex:e===this.focusedCellRow&&o===this.focusedCellCol?0:-1},(()=>{const e=null==i.formattedValue||""===String(i.formattedValue).trim();return this.hideEmptySummaryCells&&i.isSummary&&e?"":e?t.emptyValue:i.formattedValue})()))),!this.colTotalsPrior&&this.showRowGrandTotals&&r("td",{class:"pivot-grid-cell pivot-grid-cell-total",part:"row-grand-total"},(()=>{const i=this.matrix.rowGrandTotals[e]?.formattedValue;return null==i||""===String(i).trim()?t.emptyValue:i??""})())))),!this.rowTotalsPrior&&this.showColumnGrandTotals&&r("tr",{class:"pivot-grid-grand-total-row",role:"row"},r("th",{class:"pivot-grid-header-cell pivot-grid-total-header",part:"grand-total-label",role:"rowheader",scope:"row"},this.resolvedTexts.grandTotal),this.colTotalsPrior&&this.showRowGrandTotals&&r("td",{class:"pivot-grid-cell pivot-grid-cell-total",part:"grand-total-cell"},(()=>{const i=this.matrix.grandTotal?.formattedValue;return null==i||""===String(i).trim()?t.emptyValue:i??""})()),this.matrix.columnGrandTotals.map(((i,e)=>r("td",{class:"pivot-grid-cell pivot-grid-cell-total",key:e,part:"column-grand-total"},(()=>{const e=i.formattedValue;return null==e||""===String(e).trim()?t.emptyValue:e??""})()))),!this.colTotalsPrior&&this.showRowGrandTotals&&r("td",{class:"pivot-grid-cell pivot-grid-cell-total",part:"grand-total-cell"},(()=>{const i=this.matrix.grandTotal?.formattedValue;return null==i||""===String(i).trim()?t.emptyValue:i??""})()))))):r("div",{class:"pivot-grid-table-wrapper",part:"table-wrapper"},r("p",{"aria-live":"polite"},this.effectiveData.length," rows, ",this.fields.length," fields configured.")))),r("bh-modal",{key:"92a636ce0bb2b3cbbd0a833852aefe56b41a781c",ariaLabel:w("bh-pivot-grid","fieldChooserTitle",this.fieldChooserTitle,"Field Chooser"),class:"pivot-grid-field-chooser-modal",onBhClose:()=>this.hideFieldChooser(),visible:this.fieldChooserOpen,width:"md"},r("div",{key:"45c3ddf29f4904075ca703958e36f8d77771040b",class:"pivot-grid-field-chooser-header",slot:"header"},r("h2",{key:"f2f1e12bef3c7b4d292060007663258d7bf3f98c",class:"pivot-grid-field-chooser-title"},w("bh-pivot-grid","fieldChooserTitle",this.fieldChooserTitle,"Field Chooser"))),r("div",{key:"034a80ec2b99b3c3c89f1487b05f915dedc6a07f",class:"pivot-grid-field-chooser-body"},r("p",{key:"f5a92ceee4dd9ac6afe0bf395102ae9a69a14268",class:"pivot-grid-field-chooser-hint"},t.rowFieldArea," • ",t.columnFieldArea," • ",t.dataFieldArea," •"," ",t.filterFieldArea),r("div",{key:"0881ce2d493747a54bcfd8836e3c307319f20d36",class:"pivot-grid-field-chooser-areas"},r("div",{key:"74943cab8043855c70f33477b861c3c256e1e8a4",class:"pivot-grid-field-chooser-area"},r("span",{key:"228993e08eb3f5aa97694c22159b5dd4cc8bce22",class:"pivot-grid-field-area-label"},t.rowFields),r("div",{key:"7101c292d3c20c021161edbcb145ef882ed4ba23",class:"pivot-grid-field-chips"},this.fields.filter((t=>"row"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((t=>r("span",{class:"pivot-grid-field-chip",key:t.dataField,part:"field-chip"},t.caption??t.dataField))))),r("div",{key:"768a4576ce13f84beee167e0e095bca80f2b21a4",class:"pivot-grid-field-chooser-area"},r("span",{key:"b4f2fc287263a7f1031ca88b545942fe8648f9c7",class:"pivot-grid-field-area-label"},t.columnFields),r("div",{key:"a6456cbf0cec9c1fa6f0b8ab679b26f97951977a",class:"pivot-grid-field-chips"},this.fields.filter((t=>"column"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((t=>r("span",{class:"pivot-grid-field-chip",key:t.dataField,part:"field-chip"},t.caption??t.dataField))))),r("div",{key:"a9bf8ff6577a24f84a69c81774cd13de43129a21",class:"pivot-grid-field-chooser-area"},r("span",{key:"87a0b94748b140a10447af5acf9583f46cbffd2c",class:"pivot-grid-field-area-label"},t.dataFields),r("div",{key:"16a667e7058cc36cc2b36909060c3ae13d5fa96a",class:"pivot-grid-field-chips"},this.fields.filter((t=>"data"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((t=>r("span",{class:"pivot-grid-field-chip",key:t.dataField,part:"field-chip"},t.caption??t.dataField,t.summaryType?` (${t.summaryType})`:""))))),r("div",{key:"4e8c4d6ac28df1320cba8b8c7df82b79fbc72e45",class:"pivot-grid-field-chooser-area"},r("span",{key:"1b57b0ecce8dccdf86b2d27cda43b409df00bdc9",class:"pivot-grid-field-area-label"},t.filterFields),r("div",{key:"735c6a71e6ee1104fd089ca9547f96679e6f5180",class:"pivot-grid-field-chips"},this.fields.filter((t=>"filter"===t.area)).toSorted(((t,i)=>(t.areaIndex??0)-(i.areaIndex??0))).map((t=>r("span",{class:"pivot-grid-field-chip",key:t.dataField,part:"field-chip"},t.caption??t.dataField))))))),r("div",{key:"09b3b9e4970d623cfe723bc6d14a891200be015b",class:"pivot-grid-field-chooser-footer",slot:"actions"},r("button",{key:"24ad1e092df089172919fdccaa13a8dd7a124dbe",class:"pivot-grid-toolbar-btn",onClick:()=>this.hideFieldChooser(),type:"button"},t.ok))),this.headerFilterOpenField&&r("div",{key:"3aca2440211ba5a0427ca8bd274585c4b40e2dee","aria-label":`Filter by ${this.fields.find((t=>t.dataField===this.headerFilterOpenField))?.caption??this.headerFilterOpenField}`,class:"pivot-grid-header-filter-popup",part:"header-filter-popup",role:"dialog",style:{left:`${this.headerFilterAnchorX}px`,top:`${this.headerFilterAnchorY}px`,width:`${this.headerFilterWidth}px`,maxHeight:`${this.headerFilterHeight}px`}},(()=>{const t=function(t,i,e){const r=i.trim().toLowerCase();return""===r?t:t.filter((t=>{const i=String(t??"").toLowerCase();switch(e){case"contains":default:return i.includes(r);case"startswith":return i.startsWith(r);case"equals":return i===r}}))}(D(this.effectiveData,this.headerFilterOpenField,this.headerFilterShowRelevantValues?this.filters:void 0),this.headerFilterSearchQuery,this.headerFilterSearchMode),i=new Set(this.headerFilterPendingValues),e=this.resolvedTexts,o=t.length>0&&t.every((t=>i.has(t)));return r("div",{class:"pivot-grid-header-filter-popup-inner"},this.headerFilterAllowSelectAll&&t.length>0&&r("label",{class:"pivot-grid-header-filter-select-all"},r("input",{checked:o,onChange:()=>this.setHeaderFilterSelectAll(!o,t),type:"checkbox"}),"Select All"),this.headerFilterSearchEnabled&&r("input",{class:"pivot-grid-header-filter-search",onInput:t=>{this.headerFilterSearchQuery=t.target.value},part:"header-filter-search",placeholder:w("bh-pivot-grid","searchPlaceholder",void 0,"Search..."),type:"search",value:this.headerFilterSearchQuery}),r("div",{class:"pivot-grid-header-filter-list",part:"header-filter-list"},t.map((t=>r("label",{class:"pivot-grid-header-filter-item",key:String(t??"")},r("input",{checked:i.has(t),onChange:()=>this.toggleHeaderFilterValue(t),type:"checkbox"}),String(t??e.emptyValue??"(Blanks)"))))),r("div",{class:"pivot-grid-header-filter-actions"},r("button",{class:"pivot-grid-toolbar-btn",onClick:()=>this.closeHeaderFilter(),type:"button"},e.cancel),r("button",{class:"pivot-grid-toolbar-btn pivot-grid-toolbar-btn-primary",onClick:()=>this.applyHeaderFilter(),type:"button"},e.ok)))})()),this.contextMenuVisible&&this.contextMenuItems.length>0&&r("div",{key:"edf1b675707df9146b83b0d96ecece8055567358",class:"pivot-grid-context-menu",part:"context-menu",role:"menu",style:{left:`${this.contextMenuX}px`,top:`${this.contextMenuY}px`}},this.contextMenuItems.map((t=>t.beginGroup?r("div",{class:"pivot-grid-context-menu-separator",key:t.id,part:"context-menu-separator",role:"separator"}):r("button",{class:"pivot-grid-context-menu-item",disabled:t.disabled,key:t.id,onClick:()=>{t.onClick?.(),this.closeContextMenu()},part:"context-menu-item",role:"menuitem",type:"button"},t.text)))))}static get watchers(){return{data:[{onDataChange:0}],dataSource:[{onDataChange:0}],fields:[{onMatrixInputsChange:0}],rowExpandedPaths:[{onMatrixInputsChange:0}],columnExpandedPaths:[{onMatrixInputsChange:0}],filters:[{onMatrixInputsChange:0}],sorting:[{onMatrixInputsChange:0}],showRowGrandTotals:[{onMatrixInputsChange:0}],showColumnGrandTotals:[{onMatrixInputsChange:0}]}}};R.style='@charset "UTF-8";@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}@layer bh-tokens,bh-base,bh-states; @layer bh-tokens{:host{display:block;--bh-pivot-grid-cell-height:40px;--bh-pivot-grid-cell-padding-x:var(--spacing-xl);--bh-pivot-grid-header-height:40px;--bh-pivot-grid-min-height:200px;--bh-pivot-grid-max-height:none;--bh-pivot-grid-header-bg:var(--color-white);--bh-pivot-grid-header-text:var(--color-neutral-600);--bh-pivot-grid-border-color:var(--color-neutral-200);--bh-pivot-grid-cell-bg:var(--color-white);--bh-pivot-grid-cell-text:var(--color-neutral-700);--bh-pivot-grid-hover-bg:var(--color-neutral-50);--bh-pivot-grid-total-bg:var(--color-neutral-50);--bh-pivot-grid-field-panel-bg:var(--color-neutral-50);--bh-pivot-grid-field-chip-bg:var(--color-white);--bh-pivot-grid-field-chip-radius:var(--radius-xs);--bh-pivot-grid-drop-zone-bg:var(--color-brand-100);--bh-pivot-grid-sort-icon-size:var(--icon-size-sm);--bh-pivot-grid-field-label-min-width:var( --pivot-grid-field-label-min-width );--bh-pivot-grid-filter-trigger-min-width:var( --pivot-grid-filter-trigger-min-width );--bh-pivot-grid-filter-select-max-height:var( --pivot-grid-filter-select-max-height );--bh-pivot-grid-context-menu-min-width:var( --pivot-grid-context-menu-min-width );--bh-pivot-grid-filter-list-max-height:var( --pivot-grid-filter-list-max-height )}}@layer bh-base{:host{min-height:var(--bh-pivot-grid-min-height);max-height:var(--bh-pivot-grid-max-height);box-sizing:border-box}.pivot-grid-root{display:flex;flex-direction:column;width:100%;min-height:var(--bh-pivot-grid-min-height);font-family:var(--font-inter);color:var(--bh-pivot-grid-cell-text)}.pivot-grid-toolbar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--bh-pivot-grid-cell-padding-x);background:var(--bh-pivot-grid-field-panel-bg);border-bottom:1px solid var(--bh-pivot-grid-border-color)}.pivot-grid-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-inter);font-size:var(--text-sm-size);line-height:var(--text-sm-line);font-weight:var(--weight-medium);border:1px solid var(--bh-pivot-grid-border-color);border-radius:var(--radius-xs);background:var(--bh-pivot-grid-cell-bg);color:var(--bh-pivot-grid-cell-text);cursor:pointer;transition:background-color var(--animation-duration-fast) ease}.pivot-grid-toolbar-btn:hover:not(:disabled){background:var(--bh-pivot-grid-hover-bg)}.pivot-grid-toolbar-btn:disabled{opacity:0.6;cursor:not-allowed}.pivot-grid-field-panel{display:flex;flex-wrap:wrap;gap:var(--spacing-lg) var(--spacing-xl);padding:var(--spacing-md) var(--bh-pivot-grid-cell-padding-x);background:var(--bh-pivot-grid-field-panel-bg);border-bottom:1px solid var(--bh-pivot-grid-border-color)}.pivot-grid-field-area{display:flex;align-items:center;gap:var(--spacing-md);min-height:var(--bh-button-height-sm)}.pivot-grid-field-area-label{font-size:var(--text-xs-size);font-weight:var(--weight-semibold);line-height:var(--text-xs-line);color:var(--bh-pivot-grid-header-text);min-width:var(--bh-pivot-grid-field-label-min-width)}.pivot-grid-field-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.pivot-grid-field-chip{display:inline-flex;align-items:center;padding:var(--spacing-xxs) var(--spacing-md);font-size:var(--text-xs-size);line-height:var(--text-xs-line);border-radius:var(--bh-pivot-grid-field-chip-radius);background:var(--bh-pivot-grid-field-chip-bg);border:1px solid var(--bh-pivot-grid-border-color);color:var(--bh-pivot-grid-cell-text);transition:background-color var(--animation-duration-fast) ease}.pivot-grid-drop-zone-active{background:var(--bh-pivot-grid-drop-zone-bg);border-radius:var(--bh-pivot-grid-field-chip-radius);min-height:var(--bh-button-height-md)}.pivot-grid-field-chip[draggable=true]{cursor:grab}.pivot-grid-field-chooser-header{display:flex;align-items:center;justify-content:space-between}.pivot-grid-field-chooser-title{font-size:var(--text-lg-size);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:0}.pivot-grid-field-chooser-body{display:flex;flex-direction:column;gap:var(--spacing-xl)}.pivot-grid-field-chooser-hint{font-size:var(--text-xs-size);line-height:var(--text-xs-line);color:var(--bh-pivot-grid-header-text);margin:0}.pivot-grid-field-chooser-areas{display:flex;flex-direction:column;gap:var(--spacing-lg)}.pivot-grid-field-chooser-area{display:flex;align-items:center;gap:var(--spacing-md);min-height:var(--bh-button-height-sm)}.pivot-grid-field-chooser-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.pivot-grid-filter-dropdown-wrap{display:inline-flex;align-items:center;gap:var(--spacing-xs);margin-left:var(--spacing-md)}.pivot-grid-filter-label{font-size:var(--text-xs-size);line-height:var(--text-xs-line);color:var(--bh-pivot-grid-header-text)}.pivot-grid-filter-select{font-family:var(--font-inter);font-size:var(--text-xs-size);line-height:var(--text-xs-line);padding:var(--spacing-xxs) var(--spacing-xs);border-radius:var(--bh-pivot-grid-field-chip-radius);border:1px solid var(--bh-pivot-grid-border-color);min-width:var(--bh-pivot-grid-filter-trigger-min-width);max-height:var(--bh-pivot-grid-filter-select-max-height)}.pivot-grid-sortable{cursor:pointer;user-select:none}.pivot-grid-sort-indicator{font-size:var(--text-xs-size);opacity:0.7;margin-left:var(--spacing-xxs)}.pivot-grid-content{flex:1;overflow:auto;display:flex;flex-direction:column}.pivot-grid-table-wrapper{overflow:auto;flex:1}.pivot-grid-table{width:100%;border-collapse:collapse;border-spacing:0;font-size:var(--text-sm-size);line-height:var(--text-sm-line)}.pivot-grid-thead{position:sticky;top:0;z-index:1;background:var(--bh-pivot-grid-header-bg)}.pivot-grid-header-row,.pivot-grid-data-row,.pivot-grid-grand-total-row{border-bottom:1px solid var(--bh-pivot-grid-border-color)}.pivot-grid-header-cell{height:var(--bh-pivot-grid-header-height);padding:0 var(--bh-pivot-grid-cell-padding-x);text-align:left;vertical-align:middle;font-size:var(--text-xs-size);font-weight:var(--weight-semibold);line-height:var(--text-xs-line);color:var(--bh-pivot-grid-header-text);background:var(--bh-pivot-grid-header-bg);border-right:1px solid var(--bh-pivot-grid-border-color);border-bottom:1px solid var(--bh-pivot-grid-border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pivot-grid-corner{min-width:var(--bh-pivot-grid-cell-min-width)}.pivot-grid-row-header{min-width:var(--bh-pivot-grid-cell-min-width);white-space:nowrap}.pivot-grid-cell{height:var(--bh-pivot-grid-cell-height);padding:0 var(--bh-pivot-grid-cell-padding-x);vertical-align:middle;font-size:var(--text-sm-size);font-weight:var(--weight-regular);line-height:var(--text-sm-line);color:var(--bh-pivot-grid-cell-text);background:var(--bh-pivot-grid-cell-bg);border-right:1px solid var(--bh-pivot-grid-border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;transition:background-color var(--animation-duration-fast) ease}.pivot-grid-cell-total,.pivot-grid-total-header{background:var(--bh-pivot-grid-total-bg);font-weight:var(--weight-semibold)}.pivot-grid-live-region{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.pivot-grid-empty,.pivot-grid-loading{display:flex;align-items:center;justify-content:center;min-height:var(--bh-pivot-grid-min-height);padding:var(--spacing-3xl);font-size:var(--text-sm-size);line-height:var(--text-sm-line);color:var(--color-text-disabled);background:var(--bh-pivot-grid-cell-bg)}.pivot-grid-skeleton{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;padding:var(--spacing-xl)}}@layer bh-states{:host([disabled]){pointer-events:none;opacity:0.6}.pivot-grid-cell:not(.pivot-grid-cell-total):hover{background:var(--bh-pivot-grid-hover-bg)}.pivot-grid-cell:focus-visible,.pivot-grid-header-cell:focus-visible,.pivot-grid-toolbar-btn:focus-visible{outline:2px solid var(--color-border-interactive);outline-offset:-2px}.pivot-grid-cell-focused.pivot-grid-cell:focus-visible{outline:2px solid var(--color-border-interactive);outline-offset:-2px}.pivot-grid-context-menu{position:fixed;z-index:var(--bh-z-index-dropdown);min-width:var(--bh-pivot-grid-context-menu-min-width);padding:var(--spacing-xs) 0;background:var(--bh-pivot-grid-cell-bg);border:1px solid var(--bh-pivot-grid-border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.pivot-grid-context-menu-item{display:block;width:100%;padding:var(--spacing-sm) var(--bh-pivot-grid-cell-padding-x);font-family:var(--font-inter);font-size:var(--text-sm-size);line-height:var(--text-sm-line);text-align:left;background:transparent;border:none;color:var(--bh-pivot-grid-cell-text);cursor:pointer;transition:background-color var(--animation-duration-fast) ease}.pivot-grid-context-menu-item:hover:not(:disabled){background:var(--bh-pivot-grid-hover-bg)}.pivot-grid-context-menu-item:disabled{opacity:0.6;cursor:not-allowed}.pivot-grid-context-menu-separator{height:1px;margin:var(--spacing-xs) 0;background:var(--bh-pivot-grid-border-color)}.pivot-grid-header-filter-popup{position:fixed;z-index:var(--bh-z-index-dropdown);display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bh-pivot-grid-cell-bg);border:1px solid var(--bh-pivot-grid-border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-popup);overflow:hidden}.pivot-grid-header-filter-select-all{display:flex;align-items:center;gap:var(--spacing-md);font-size:var(--text-sm-size);font-weight:var(--weight-semibold);line-height:var(--text-sm-line);cursor:pointer}.pivot-grid-header-filter-search{padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-inter);font-size:var(--text-sm-size);line-height:var(--text-sm-line);border:1px solid var(--bh-pivot-grid-border-color);border-radius:var(--radius-sm)}.pivot-grid-header-filter-search::placeholder{color:var(--color-text-disabled)}.pivot-grid-header-filter-search:focus{outline:none;border-color:var(--color-border-interactive)}.pivot-grid-header-filter-list{display:flex;flex-direction:column;gap:var(--spacing-xs);overflow-y:auto;max-height:var(--bh-pivot-grid-filter-list-max-height)}.pivot-grid-header-filter-item{display:flex;align-items:center;gap:var(--spacing-md);font-size:var(--text-xs-size);line-height:var(--text-xs-line);cursor:pointer;padding:var(--spacing-xxs) 0}.pivot-grid-header-filter-item:hover{color:var(--color-text-primary)}.pivot-grid-header-filter-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--bh-pivot-grid-border-color)}.pivot-grid-filter-trigger{min-width:var(--bh-pivot-grid-filter-trigger-min-width);text-align:left}.pivot-grid-toolbar-btn-primary{background:var(--color-bg-interactive);border-color:var(--color-bg-interactive);color:var(--color-text-inverse)}.pivot-grid-toolbar-btn-primary:hover:not(:disabled){background:var(--color-bg-interactive-hover);border-color:var(--color-bg-interactive-hover)}}';export{R as bh_pivot_grid}
|