@actabldesign/bellhop-core 0.0.8 → 0.0.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +132 -33
- package/components/bh-accordion-item.js +1 -1
- package/components/bh-avatar-add.js +1 -1
- package/components/bh-avatar-stacked.js +3 -3
- package/components/bh-avatar.js +1 -1
- package/components/bh-button.js +1 -1
- package/components/bh-card-header.js +1 -1
- package/components/bh-card.js +1 -1
- package/components/bh-checkbox-group-item.js +5 -5
- package/components/bh-checkbox.js +1 -1
- package/components/bh-data-grid.js +140 -67
- package/components/bh-data-grid.js.map +1 -1
- package/components/bh-date-picker-content.js +1 -1
- package/components/bh-date-picker.js +24 -19
- package/components/bh-date-picker.js.map +1 -1
- package/components/bh-date-range-picker-content.js +1 -1
- package/components/bh-date-range-picker.js +9 -9
- package/components/bh-dropdown-menu.js +1 -1
- package/components/bh-dropdown.js +1 -1
- package/components/bh-empty-state.js +1 -1
- package/components/bh-featured-icon.js +1 -1
- package/components/bh-illustrations.js +3 -3
- package/components/bh-input-autocomplete.js +7 -7
- package/components/bh-input-number.js +3 -3
- package/components/bh-input-password.js +3 -3
- package/components/bh-input-text.js +1 -1
- package/components/bh-input-verification.js +3 -3
- package/components/bh-label.js +1 -1
- package/components/bh-logo-box.js +1 -1
- package/components/bh-modal-actions.js +2 -2
- package/components/bh-modal-header.js +5 -5
- package/components/bh-month-picker-content.js +1 -1
- package/components/bh-month-picker.js +8 -8
- package/components/bh-month-picker.js.map +1 -1
- package/components/bh-nav-item.js +1 -1
- package/components/bh-notification.js +3 -3
- 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 +5 -5
- 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-popover.js +18 -85
- package/components/bh-popover.js.map +1 -1
- package/components/bh-property-switcher.js +1 -1
- package/components/bh-radio-button.js +1 -1
- package/components/bh-sidebar.js +7 -7
- package/components/bh-skeleton-loader.js +1 -1
- package/components/bh-tab-item.js +2 -2
- package/components/bh-tabs.js +1 -1
- package/components/bh-tag.js +1 -1
- package/components/bh-textarea.js +3 -3
- package/components/bh-toggle.js +1 -1
- package/components/bh-tooltip.js +1 -1
- package/components/bh-trend-chart.js +2 -2
- package/components/index.d.ts +0 -4
- package/components/index.js +0 -2
- package/components/index.js.map +1 -1
- package/components/{p-8bOZFmdg.js → p--S10V0sf.js} +5 -5
- package/components/p--S10V0sf.js.map +1 -0
- package/components/{p-BLCjD0ux.js → p-7nrZFsG8.js} +3 -3
- package/components/{p-BLCjD0ux.js.map → p-7nrZFsG8.js.map} +1 -1
- package/components/{p-C_wf2KGn.js → p-B0ADeWoj.js} +3 -3
- package/components/{p-C_wf2KGn.js.map → p-B0ADeWoj.js.map} +1 -1
- package/components/{p-D9aamyuM.js → p-BEm39SYP.js} +4 -4
- package/components/{p-D9aamyuM.js.map → p-BEm39SYP.js.map} +1 -1
- package/components/{p-BkK6rWZn.js → p-BYRvQ4u7.js} +4 -4
- package/components/{p-BkK6rWZn.js.map → p-BYRvQ4u7.js.map} +1 -1
- package/components/{p-D0Ba0gOA.js → p-BqYBdZ7I.js} +4 -4
- package/components/{p-D0Ba0gOA.js.map → p-BqYBdZ7I.js.map} +1 -1
- package/components/{p-Df8KgHhe.js → p-BrIid8rr.js} +3 -3
- package/components/{p-Df8KgHhe.js.map → p-BrIid8rr.js.map} +1 -1
- package/components/p-BsHlTsAN.js.map +1 -1
- package/components/{p-Npcwl1Z8.js → p-CDmCw7LX.js} +4 -4
- package/components/p-CDmCw7LX.js.map +1 -0
- package/components/{p-BQKx1tGq.js → p-CHYn9whC.js} +6 -6
- package/components/p-CHYn9whC.js.map +1 -0
- package/components/{p-CdwyUif-.js → p-CNwZh1xz.js} +5 -5
- package/components/p-CNwZh1xz.js.map +1 -0
- package/components/{p-B02xFf1P.js → p-CiEBtN9j.js} +3 -3
- package/components/{p-B02xFf1P.js.map → p-CiEBtN9j.js.map} +1 -1
- package/components/{p-Cmo_S3fO.js → p-CiZSLZTA.js} +4 -4
- package/components/{p-Cmo_S3fO.js.map → p-CiZSLZTA.js.map} +1 -1
- package/components/{p-DYC2IZEs.js → p-CmEb-mj5.js} +6 -6
- package/components/{p-DYC2IZEs.js.map → p-CmEb-mj5.js.map} +1 -1
- package/components/{p-Do29ZTL9.js → p-CppjlSaO.js} +3 -3
- package/components/{p-Do29ZTL9.js.map → p-CppjlSaO.js.map} +1 -1
- package/components/{p-D3FuyNC4.js → p-CyFUHAY1.js} +7 -7
- package/components/{p-D3FuyNC4.js.map → p-CyFUHAY1.js.map} +1 -1
- package/components/{p-B0vRPcr5.js → p-D8L5XpBP.js} +3 -3
- package/components/{p-B0vRPcr5.js.map → p-D8L5XpBP.js.map} +1 -1
- package/components/p-DH86TJ99.js +232 -0
- package/components/p-DH86TJ99.js.map +1 -0
- package/components/{p-BJLHKnwL.js → p-DVBd-54W.js} +5 -5
- package/components/{p-BJLHKnwL.js.map → p-DVBd-54W.js.map} +1 -1
- package/components/{p-CMoGgYqw.js → p-DmELCHDa.js} +3 -3
- package/components/p-DmELCHDa.js.map +1 -0
- package/components/{p-Bu0BcHwL.js → p-Du_cCBR7.js} +6 -6
- package/components/{p-Bu0BcHwL.js.map → p-Du_cCBR7.js.map} +1 -1
- package/components/{p-h6juyPoa.js → p-JJSN-gZI.js} +3 -3
- package/components/{p-h6juyPoa.js.map → p-JJSN-gZI.js.map} +1 -1
- package/components/{p-wPu4WTba.js → p-dsE158cF.js} +3 -3
- package/components/{p-wPu4WTba.js.map → p-dsE158cF.js.map} +1 -1
- package/components/{p-C0fcjlnS.js → p-eYcfeTFU.js} +3 -3
- package/components/{p-C0fcjlnS.js.map → p-eYcfeTFU.js.map} +1 -1
- package/components/{p-BSok41i-.js → p-oyeucMe6.js} +3 -3
- package/components/{p-BSok41i-.js.map → p-oyeucMe6.js.map} +1 -1
- package/dist/bellhop-core/bellhop-core.esm.js +1 -1
- package/dist/bellhop-core/bellhop-core.esm.js.map +1 -1
- package/dist/bellhop-core/bh-avatar.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-button.bh-loader-spinner.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-data-grid.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-date-picker-content.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-date-picker.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-empty-state.bh-pagination.bh-skeleton-loader.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-input-text.bh-picker-menu.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-label.bh-tooltip.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-month-picker-content.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-month-picker.entry.esm.js.map +1 -1
- package/dist/bellhop-core/bh-popover.entry.esm.js.map +1 -1
- package/dist/bellhop-core/index.esm.js +1 -1
- package/dist/bellhop-core/index.esm.js.map +1 -1
- package/dist/bellhop-core/{p-Ck1gRAmI.js → p-04a00da6.entry.js} +2 -2
- package/dist/bellhop-core/p-04a00da6.entry.js.map +1 -0
- package/dist/bellhop-core/{p-bd00d5ad.entry.js → p-06b0ba5f.entry.js} +2 -2
- package/dist/bellhop-core/{p-4a8844ff.entry.js → p-0a232a85.entry.js} +2 -2
- package/dist/bellhop-core/p-0d5ce369.entry.js +13 -0
- package/dist/bellhop-core/p-0d5ce369.entry.js.map +1 -0
- package/dist/bellhop-core/{p-67956598.entry.js → p-0e773f4b.entry.js} +2 -2
- package/dist/bellhop-core/{p-df4498cd.entry.js → p-11e84742.entry.js} +2 -2
- package/dist/bellhop-core/{p-a41b3673.entry.js → p-20e65b2b.entry.js} +2 -2
- package/dist/bellhop-core/{p-a30e22f7.entry.js → p-2349cd39.entry.js} +2 -2
- package/dist/bellhop-core/{p-3a1c52a9.entry.js → p-2cc352e8.entry.js} +2 -2
- package/dist/bellhop-core/{p-defe9916.entry.js → p-31f60dac.entry.js} +2 -2
- package/dist/bellhop-core/{p-defe9916.entry.js.map → p-31f60dac.entry.js.map} +1 -1
- package/dist/bellhop-core/{p-f85a9eaa.entry.js → p-439f8477.entry.js} +2 -2
- package/dist/bellhop-core/{p-a42e8ddb.entry.js → p-4bc0e720.entry.js} +2 -2
- package/dist/bellhop-core/{p-a42e8ddb.entry.js.map → p-4bc0e720.entry.js.map} +1 -1
- package/dist/bellhop-core/{p-21bc4f77.entry.js → p-4cf74f24.entry.js} +2 -2
- package/dist/bellhop-core/p-53dbd8bd.entry.js +2 -0
- package/dist/bellhop-core/p-53dbd8bd.entry.js.map +1 -0
- package/dist/bellhop-core/p-59e4c008.entry.js +2 -0
- package/dist/bellhop-core/p-59e4c008.entry.js.map +1 -0
- package/dist/bellhop-core/{p-62235d6e.entry.js → p-5a0b2d81.entry.js} +2 -2
- package/dist/bellhop-core/{p-07c9b7fa.entry.js → p-6626f089.entry.js} +2 -2
- package/dist/bellhop-core/{p-36166900.entry.js → p-6b428841.entry.js} +2 -2
- package/dist/bellhop-core/{p-6bc81ebb.entry.js → p-6d4c6b6f.entry.js} +2 -2
- package/dist/bellhop-core/{p-c0e36166.entry.js → p-6dad737e.entry.js} +2 -2
- package/dist/bellhop-core/{p-5c4f74b8.entry.js → p-738f24c8.entry.js} +2 -2
- package/dist/bellhop-core/{p-49edd1bb.entry.js → p-7534a8d4.entry.js} +2 -2
- package/dist/bellhop-core/p-7b0a4c99.entry.js +2 -0
- package/dist/bellhop-core/{p-7a85db89.entry.js.map → p-7b0a4c99.entry.js.map} +1 -1
- package/dist/bellhop-core/{p-7b0cba50.entry.js → p-84ecaf3b.entry.js} +2 -2
- package/dist/bellhop-core/{p-DY76Ee-p.js → p-940af1e0.entry.js} +2 -2
- package/dist/bellhop-core/p-940af1e0.entry.js.map +1 -0
- package/dist/bellhop-core/p-c0dfca99.entry.js +2 -0
- package/dist/bellhop-core/{p-4e483d25.entry.js.map → p-c0dfca99.entry.js.map} +1 -1
- package/dist/bellhop-core/{p-d5bf49ab.entry.js → p-cad28e7e.entry.js} +2 -2
- package/dist/bellhop-core/{p-1540001e.entry.js → p-cb0e4e35.entry.js} +2 -2
- package/dist/bellhop-core/{p-091171da.entry.js → p-ce2aaf37.entry.js} +2 -2
- package/dist/bellhop-core/p-d64525f4.entry.js +2 -0
- package/dist/bellhop-core/p-d64525f4.entry.js.map +1 -0
- package/dist/bellhop-core/{p-a9c914ee.entry.js → p-e0f7b6d1.entry.js} +2 -2
- package/dist/bellhop-core/{p-b0dda4df.entry.js → p-e83a86d6.entry.js} +2 -2
- package/dist/bellhop-core/{p-2db7990e.entry.js → p-e96e5aa3.entry.js} +2 -2
- package/dist/bellhop-core/{p-c70d11a2.entry.js → p-ed780663.entry.js} +2 -2
- package/dist/bellhop-core/p-f30af956.entry.js +2 -0
- package/dist/bellhop-core/{p-ffb29d95.entry.js.map → p-f30af956.entry.js.map} +1 -1
- package/dist/bellhop-core/{p-0e34250c.entry.js → p-f4dd33af.entry.js} +2 -2
- package/dist/bellhop-core/{p-1be3e908.entry.js → p-fe7d5dcb.entry.js} +2 -2
- package/dist/bellhop-core/p-nAAobRRQ.js.map +1 -1
- package/dist/cjs/bellhop-core.cjs.js +1 -1
- package/dist/cjs/bellhop-core.cjs.js.map +1 -1
- package/dist/cjs/bh-accordion-item.cjs.entry.js +1 -1
- package/dist/cjs/bh-autocomplete-menu_2.cjs.entry.js +1 -1
- package/dist/cjs/bh-avatar.cjs.entry.js +1 -1
- package/dist/cjs/bh-avatar.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-button.bh-loader-spinner.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-button_2.cjs.entry.js +110 -2
- package/dist/cjs/bh-card.cjs.entry.js +1 -1
- package/dist/cjs/bh-data-grid.cjs.entry.js +132 -59
- package/dist/cjs/bh-data-grid.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-date-picker-content.cjs.entry.js +2 -2
- package/dist/cjs/bh-date-picker-content.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-date-picker.cjs.entry.js +15 -12
- package/dist/cjs/bh-date-picker.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-date-range-picker-content.cjs.entry.js +1 -1
- package/dist/cjs/bh-date-range-picker.cjs.entry.js +1 -1
- package/dist/cjs/bh-dropdown_3.cjs.entry.js +4 -4
- package/dist/cjs/bh-empty-state.bh-pagination.bh-skeleton-loader.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-empty-state_3.cjs.entry.js +199 -6
- package/dist/cjs/bh-featured-icon.cjs.entry.js +1 -1
- package/dist/cjs/bh-illustrations.cjs.entry.js +3 -3
- package/dist/cjs/bh-input-autocomplete.cjs.entry.js +2 -2
- package/dist/cjs/bh-input-number.cjs.entry.js +1 -1
- package/dist/cjs/bh-input-password.cjs.entry.js +1 -1
- package/dist/cjs/bh-input-text.bh-picker-menu.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-input-text_2.cjs.entry.js +2 -2
- package/dist/cjs/bh-input-verification.cjs.entry.js +1 -1
- package/dist/cjs/bh-label.bh-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-label_2.cjs.entry.js +104 -3
- package/dist/cjs/bh-modal-actions.cjs.entry.js +1 -1
- package/dist/cjs/bh-modal-header.cjs.entry.js +4 -4
- package/dist/cjs/bh-month-picker-content.cjs.entry.js +2 -2
- package/dist/cjs/bh-month-picker-content.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-month-picker.cjs.entry.js +2 -2
- package/dist/cjs/bh-month-picker.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-notification.cjs.entry.js +1 -1
- package/dist/cjs/bh-page-navigation-child.cjs.entry.js +1 -1
- package/dist/cjs/bh-page-navigation-multi-level_2.cjs.entry.js +3 -3
- package/dist/cjs/bh-page-navigation.cjs.entry.js +1 -1
- package/dist/cjs/bh-pie-chart.cjs.entry.js +1 -1
- package/dist/cjs/bh-popover.cjs.entry.js +14 -76
- package/dist/cjs/bh-popover.entry.cjs.js.map +1 -1
- package/dist/cjs/bh-property-switcher.cjs.entry.js +1 -1
- package/dist/cjs/bh-sidebar.cjs.entry.js +1 -1
- package/dist/cjs/bh-tab-item.cjs.entry.js +2 -2
- package/dist/cjs/bh-tabs.cjs.entry.js +1 -1
- package/dist/cjs/bh-textarea.cjs.entry.js +1 -1
- package/dist/cjs/bh-toggle.cjs.entry.js +1 -1
- package/dist/cjs/bh-trend-chart.cjs.entry.js +2 -2
- package/dist/cjs/index-DQwSUT6k.js +42 -50
- package/dist/cjs/index-DQwSUT6k.js.map +1 -1
- package/dist/cjs/index.cjs.js +0 -31
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -3
- package/dist/collection/components/bh-accordion/bh-accordion.js +1 -1
- package/dist/collection/components/bh-accordion-item/bh-accordion-item.js +1 -1
- package/dist/collection/components/bh-appbar/bh-appbar.js +2 -2
- package/dist/collection/components/bh-autocomplete-menu/bh-autocomplete-menu.js +2 -2
- package/dist/collection/components/bh-avatar/bh-avatar.css +0 -1
- package/dist/collection/components/bh-avatar/bh-avatar.js +3 -3
- package/dist/collection/components/bh-avatar-add/bh-avatar-add.js +1 -1
- package/dist/collection/components/bh-avatar-stacked/bh-avatar-stacked.js +1 -1
- package/dist/collection/components/bh-badge/bh-badge.js +3 -3
- package/dist/collection/components/bh-badge-dot/bh-badge-dot.js +2 -2
- package/dist/collection/components/bh-bar-chart/bh-bar-chart.js +3 -3
- package/dist/collection/components/bh-breadcrumbs/bh-breadcrumbs.js +2 -2
- package/dist/collection/components/bh-button/bh-button.js +7 -7
- package/dist/collection/components/bh-button/bh-button.js.map +1 -1
- package/dist/collection/components/bh-button-icon/bh-button-icon.js +3 -3
- package/dist/collection/components/bh-card/bh-card.js +1 -1
- package/dist/collection/components/bh-card-footer/bh-card-footer.js +1 -1
- package/dist/collection/components/bh-card-header/bh-card-header.js +2 -2
- package/dist/collection/components/bh-chart-tooltip/bh-chart-tooltip.js +1 -1
- package/dist/collection/components/bh-checkbox/bh-checkbox.js +1 -1
- package/dist/collection/components/bh-checkbox-group/bh-checkbox-group.js +1 -1
- package/dist/collection/components/bh-checkbox-group-item/bh-checkbox-group-item.js +2 -2
- package/dist/collection/components/bh-data-grid/bh-data-grid.css +86 -68
- package/dist/collection/components/bh-data-grid/bh-data-grid.js +132 -59
- package/dist/collection/components/bh-data-grid/bh-data-grid.js.map +1 -1
- package/dist/collection/components/bh-date-picker/bh-date-picker.css +24 -214
- package/dist/collection/components/bh-date-picker/bh-date-picker.js +22 -12
- package/dist/collection/components/bh-date-picker/bh-date-picker.js.map +1 -1
- package/dist/collection/components/bh-date-picker-content/bh-date-picker-content.css +0 -206
- package/dist/collection/components/bh-date-picker-content/bh-date-picker-content.js +7 -7
- package/dist/collection/components/bh-date-range-picker/bh-date-range-picker.js +2 -2
- package/dist/collection/components/bh-date-range-picker-content/bh-date-range-picker-content.js +4 -4
- package/dist/collection/components/bh-dropdown/bh-dropdown.js +5 -5
- package/dist/collection/components/bh-dropdown-menu/bh-dropdown-menu.js +3 -3
- package/dist/collection/components/bh-empty-state/bh-empty-state.js +2 -2
- package/dist/collection/components/bh-featured-icon/bh-featured-icon.js +4 -4
- package/dist/collection/components/bh-illustrations/bh-illustrations.js +4 -4
- package/dist/collection/components/bh-input-autocomplete/bh-input-autocomplete.js +3 -3
- package/dist/collection/components/bh-input-number/bh-input-number.js +1 -1
- package/dist/collection/components/bh-input-password/bh-input-password.js +1 -1
- package/dist/collection/components/bh-input-text/bh-input-text.js +1 -1
- package/dist/collection/components/bh-input-verification/bh-input-verification.js +3 -3
- package/dist/collection/components/bh-label/bh-label.js +1 -1
- package/dist/collection/components/bh-loader-spinner/bh-loader-spinner.js +2 -2
- package/dist/collection/components/bh-logo-box/bh-logo-box.js +2 -2
- package/dist/collection/components/bh-modal/bh-modal.js +1 -1
- package/dist/collection/components/bh-modal-actions/bh-modal-actions.js +2 -2
- package/dist/collection/components/bh-modal-header/bh-modal-header.js +4 -4
- package/dist/collection/components/bh-month-picker/bh-month-picker.css +0 -206
- package/dist/collection/components/bh-month-picker/bh-month-picker.js +2 -2
- package/dist/collection/components/bh-month-picker-content/bh-month-picker-content.css +0 -206
- package/dist/collection/components/bh-month-picker-content/bh-month-picker-content.js +5 -5
- package/dist/collection/components/bh-notification/bh-notification.js +2 -2
- package/dist/collection/components/bh-page-navigation/bh-page-navigation.js +2 -2
- package/dist/collection/components/bh-page-navigation-child/bh-page-navigation-child.js +1 -1
- package/dist/collection/components/bh-page-navigation-multi-level/bh-page-navigation-multi-level.js +3 -3
- package/dist/collection/components/bh-page-navigation-single-level/bh-page-navigation-single-level.js +1 -1
- package/dist/collection/components/bh-pagination/bh-pagination.css +122 -58
- package/dist/collection/components/bh-pagination/bh-pagination.js +74 -30
- package/dist/collection/components/bh-pagination/bh-pagination.js.map +1 -1
- package/dist/collection/components/bh-picker-menu/bh-picker-menu.css +1 -3
- package/dist/collection/components/bh-pie-chart/bh-pie-chart.js +3 -3
- package/dist/collection/components/bh-popover/bh-popover.css +77 -260
- package/dist/collection/components/bh-popover/bh-popover.js +33 -238
- package/dist/collection/components/bh-popover/bh-popover.js.map +1 -1
- package/dist/collection/components/bh-product-switcher/bh-product-switcher.js +3 -3
- package/dist/collection/components/bh-property-switcher/bh-property-switcher.js +3 -3
- package/dist/collection/components/bh-radio-button/bh-radio-button.js +1 -1
- package/dist/collection/components/bh-sidebar/bh-nav-item.js +1 -1
- package/dist/collection/components/bh-sidebar/bh-sidebar.js +4 -4
- package/dist/collection/components/bh-skeleton-loader/bh-skeleton-loader.css +9 -22
- package/dist/collection/components/bh-skeleton-loader/bh-skeleton-loader.js +2 -2
- package/dist/collection/components/bh-skeleton-loader/bh-skeleton-loader.js.map +1 -1
- package/dist/collection/components/bh-tab-item/bh-tab-item.js +2 -2
- package/dist/collection/components/bh-tabs/bh-tabs.js +3 -3
- package/dist/collection/components/bh-tag/bh-tag.js +3 -3
- package/dist/collection/components/bh-textarea/bh-textarea.js +2 -2
- package/dist/collection/components/bh-toggle/bh-toggle.js +2 -2
- package/dist/collection/components/bh-tooltip/bh-tooltip.js +3 -3
- package/dist/collection/components/bh-trend-chart/bh-trend-chart.js +4 -4
- package/dist/collection/index.js +1 -23
- package/dist/collection/index.js.map +1 -1
- package/dist/esm/bellhop-core.js +1 -1
- package/dist/esm/bellhop-core.js.map +1 -1
- package/dist/esm/bh-accordion-item.entry.js +1 -1
- package/dist/esm/bh-autocomplete-menu_2.entry.js +1 -1
- package/dist/esm/bh-avatar.entry.js +1 -1
- package/dist/esm/bh-avatar.entry.js.map +1 -1
- package/dist/esm/bh-button.bh-loader-spinner.entry.js.map +1 -1
- package/dist/esm/bh-button_2.entry.js +111 -3
- package/dist/esm/bh-card.entry.js +1 -1
- package/dist/esm/bh-data-grid.entry.js +132 -59
- package/dist/esm/bh-data-grid.entry.js.map +1 -1
- package/dist/esm/bh-date-picker-content.entry.js +2 -2
- package/dist/esm/bh-date-picker-content.entry.js.map +1 -1
- package/dist/esm/bh-date-picker.entry.js +16 -13
- package/dist/esm/bh-date-picker.entry.js.map +1 -1
- package/dist/esm/bh-date-range-picker-content.entry.js +1 -1
- package/dist/esm/bh-date-range-picker.entry.js +1 -1
- package/dist/esm/bh-dropdown_3.entry.js +4 -4
- package/dist/esm/bh-empty-state.bh-pagination.bh-skeleton-loader.entry.js.map +1 -1
- package/dist/esm/bh-empty-state_3.entry.js +199 -6
- package/dist/esm/bh-featured-icon.entry.js +1 -1
- package/dist/esm/bh-illustrations.entry.js +3 -3
- package/dist/esm/bh-input-autocomplete.entry.js +2 -2
- package/dist/esm/bh-input-number.entry.js +1 -1
- package/dist/esm/bh-input-password.entry.js +1 -1
- package/dist/esm/bh-input-text.bh-picker-menu.entry.js.map +1 -1
- package/dist/esm/bh-input-text_2.entry.js +2 -2
- package/dist/esm/bh-input-verification.entry.js +1 -1
- package/dist/esm/bh-label.bh-tooltip.entry.js.map +1 -1
- package/dist/esm/bh-label_2.entry.js +105 -4
- package/dist/esm/bh-modal-actions.entry.js +1 -1
- package/dist/esm/bh-modal-header.entry.js +4 -4
- package/dist/esm/bh-month-picker-content.entry.js +2 -2
- package/dist/esm/bh-month-picker-content.entry.js.map +1 -1
- package/dist/esm/bh-month-picker.entry.js +2 -2
- package/dist/esm/bh-month-picker.entry.js.map +1 -1
- package/dist/esm/bh-notification.entry.js +1 -1
- package/dist/esm/bh-page-navigation-child.entry.js +1 -1
- package/dist/esm/bh-page-navigation-multi-level_2.entry.js +3 -3
- package/dist/esm/bh-page-navigation.entry.js +1 -1
- package/dist/esm/bh-pie-chart.entry.js +1 -1
- package/dist/esm/bh-popover.entry.js +15 -77
- package/dist/esm/bh-popover.entry.js.map +1 -1
- package/dist/esm/bh-property-switcher.entry.js +1 -1
- package/dist/esm/bh-sidebar.entry.js +1 -1
- package/dist/esm/bh-tab-item.entry.js +2 -2
- package/dist/esm/bh-tabs.entry.js +1 -1
- package/dist/esm/bh-textarea.entry.js +1 -1
- package/dist/esm/bh-toggle.entry.js +1 -1
- package/dist/esm/bh-trend-chart.entry.js +2 -2
- package/dist/esm/index-nAAobRRQ.js +42 -50
- package/dist/esm/index-nAAobRRQ.js.map +1 -1
- package/dist/esm/index.js +1 -15
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/bh-date-picker/bh-date-picker.d.ts +11 -1
- package/dist/types/components/bh-pagination/bh-pagination.d.ts +7 -7
- package/dist/types/components/bh-popover/bh-popover.d.ts +9 -49
- package/dist/types/components.d.ts +43 -193
- package/dist/types/index.d.ts +13 -13
- package/hydrate/index.js +283 -297
- package/hydrate/index.mjs +283 -297
- package/llms.txt +22000 -1428
- package/package.json +1 -1
- package/components/bh-container-footer.d.ts +0 -11
- package/components/bh-container-footer.js +0 -73
- package/components/bh-container-footer.js.map +0 -1
- package/components/bh-container.d.ts +0 -11
- package/components/bh-container.js +0 -48
- package/components/bh-container.js.map +0 -1
- package/components/p-8bOZFmdg.js.map +0 -1
- package/components/p-BQKx1tGq.js.map +0 -1
- package/components/p-CMoGgYqw.js.map +0 -1
- package/components/p-CdwyUif-.js.map +0 -1
- package/components/p-Npcwl1Z8.js.map +0 -1
- package/components/p-WibqGBGu.js +0 -182
- package/components/p-WibqGBGu.js.map +0 -1
- package/dist/bellhop-core/bh-container-footer.entry.esm.js.map +0 -1
- package/dist/bellhop-core/bh-container.entry.esm.js.map +0 -1
- package/dist/bellhop-core/p-233540f9.entry.js +0 -13
- package/dist/bellhop-core/p-233540f9.entry.js.map +0 -1
- package/dist/bellhop-core/p-3194a87d.entry.js +0 -2
- package/dist/bellhop-core/p-3194a87d.entry.js.map +0 -1
- package/dist/bellhop-core/p-43c41dfb.entry.js +0 -2
- package/dist/bellhop-core/p-43c41dfb.entry.js.map +0 -1
- package/dist/bellhop-core/p-4e483d25.entry.js +0 -2
- package/dist/bellhop-core/p-5514d7fb.entry.js +0 -2
- package/dist/bellhop-core/p-5514d7fb.entry.js.map +0 -1
- package/dist/bellhop-core/p-7a85db89.entry.js +0 -2
- package/dist/bellhop-core/p-80e07b3d.entry.js +0 -2
- package/dist/bellhop-core/p-80e07b3d.entry.js.map +0 -1
- package/dist/bellhop-core/p-8962e1a6.entry.js +0 -2
- package/dist/bellhop-core/p-8962e1a6.entry.js.map +0 -1
- package/dist/bellhop-core/p-CSYwm_Ke.js +0 -2
- package/dist/bellhop-core/p-CSYwm_Ke.js.map +0 -1
- package/dist/bellhop-core/p-Ck1gRAmI.js.map +0 -1
- package/dist/bellhop-core/p-DY76Ee-p.js.map +0 -1
- package/dist/bellhop-core/p-b878539a.entry.js +0 -2
- package/dist/bellhop-core/p-b878539a.entry.js.map +0 -1
- package/dist/bellhop-core/p-c33f6e73.entry.js +0 -2
- package/dist/bellhop-core/p-c33f6e73.entry.js.map +0 -1
- package/dist/bellhop-core/p-ffb29d95.entry.js +0 -2
- package/dist/cjs/bh-button-DD0c0ODJ.js +0 -117
- package/dist/cjs/bh-button-DD0c0ODJ.js.map +0 -1
- package/dist/cjs/bh-container-footer.cjs.entry.js +0 -38
- package/dist/cjs/bh-container-footer.entry.cjs.js.map +0 -1
- package/dist/cjs/bh-container.cjs.entry.js +0 -26
- package/dist/cjs/bh-container.entry.cjs.js.map +0 -1
- package/dist/cjs/bh-label-MpXjm9k0.js +0 -110
- package/dist/cjs/bh-label-MpXjm9k0.js.map +0 -1
- package/dist/cjs/bh-pagination-CgER63yz.js +0 -152
- package/dist/cjs/bh-pagination-CgER63yz.js.map +0 -1
- package/dist/collection/components/bh-container/bh-container.css +0 -21
- package/dist/collection/components/bh-container/bh-container.js +0 -51
- package/dist/collection/components/bh-container/bh-container.js.map +0 -1
- package/dist/collection/components/bh-container-footer/bh-container-footer.css +0 -22
- package/dist/collection/components/bh-container-footer/bh-container-footer.js +0 -106
- package/dist/collection/components/bh-container-footer/bh-container-footer.js.map +0 -1
- package/dist/esm/bh-button-ImGVvXaj.js +0 -115
- package/dist/esm/bh-button-ImGVvXaj.js.map +0 -1
- package/dist/esm/bh-container-footer.entry.js +0 -36
- package/dist/esm/bh-container-footer.entry.js.map +0 -1
- package/dist/esm/bh-container.entry.js +0 -24
- package/dist/esm/bh-container.entry.js.map +0 -1
- package/dist/esm/bh-label-PLT7t4We.js +0 -108
- package/dist/esm/bh-label-PLT7t4We.js.map +0 -1
- package/dist/esm/bh-pagination-CUeRSYsV.js +0 -150
- package/dist/esm/bh-pagination-CUeRSYsV.js.map +0 -1
- package/dist/types/components/bh-container/bh-container.d.ts +0 -7
- package/dist/types/components/bh-container-footer/bh-container-footer.d.ts +0 -18
- /package/dist/bellhop-core/{p-bd00d5ad.entry.js.map → p-06b0ba5f.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-4a8844ff.entry.js.map → p-0a232a85.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-67956598.entry.js.map → p-0e773f4b.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-df4498cd.entry.js.map → p-11e84742.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-a41b3673.entry.js.map → p-20e65b2b.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-a30e22f7.entry.js.map → p-2349cd39.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-3a1c52a9.entry.js.map → p-2cc352e8.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-f85a9eaa.entry.js.map → p-439f8477.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-21bc4f77.entry.js.map → p-4cf74f24.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-62235d6e.entry.js.map → p-5a0b2d81.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-07c9b7fa.entry.js.map → p-6626f089.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-36166900.entry.js.map → p-6b428841.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-6bc81ebb.entry.js.map → p-6d4c6b6f.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-c0e36166.entry.js.map → p-6dad737e.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-5c4f74b8.entry.js.map → p-738f24c8.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-49edd1bb.entry.js.map → p-7534a8d4.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-7b0cba50.entry.js.map → p-84ecaf3b.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-d5bf49ab.entry.js.map → p-cad28e7e.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-1540001e.entry.js.map → p-cb0e4e35.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-091171da.entry.js.map → p-ce2aaf37.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-a9c914ee.entry.js.map → p-e0f7b6d1.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-b0dda4df.entry.js.map → p-e83a86d6.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-2db7990e.entry.js.map → p-e96e5aa3.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-c70d11a2.entry.js.map → p-ed780663.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-0e34250c.entry.js.map → p-f4dd33af.entry.js.map} +0 -0
- /package/dist/bellhop-core/{p-1be3e908.entry.js.map → p-fe7d5dcb.entry.js.map} +0 -0
|
@@ -21,63 +21,6 @@
|
|
|
21
21
|
border-top: 1px solid var(--color-neutral-200, #e2e4eb);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
/* -----------------------------------------------------------------------------
|
|
25
|
-
Size Variants
|
|
26
|
-
----------------------------------------------------------------------------- */
|
|
27
|
-
|
|
28
|
-
.pagination-sm {
|
|
29
|
-
padding: var(--sp-2, 0.5rem) var(--sp-3, 0.75rem);
|
|
30
|
-
gap: var(--sp-3, 0.75rem);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
.pagination-sm .pagination-info-text,
|
|
34
|
-
.pagination-sm .pagination-page-size-label {
|
|
35
|
-
font-size: 0.75rem;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
.pagination-sm .pagination-btn {
|
|
39
|
-
width: 28px;
|
|
40
|
-
height: 28px;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
.pagination-sm .pagination-btn .material-symbols-outlined {
|
|
44
|
-
font-size: 18px;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.pagination-sm .pagination-select {
|
|
48
|
-
height: 28px;
|
|
49
|
-
font-size: 0.75rem;
|
|
50
|
-
padding: 0 var(--sp-5, 1.25rem) 0 var(--sp-2, 0.5rem);
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
.pagination-md {
|
|
54
|
-
/* Default - no changes needed */
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.pagination-lg {
|
|
58
|
-
padding: var(--sp-4, 1rem) var(--sp-5, 1.25rem);
|
|
59
|
-
gap: var(--sp-5, 1.25rem);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
.pagination-lg .pagination-info-text,
|
|
63
|
-
.pagination-lg .pagination-page-size-label {
|
|
64
|
-
font-size: 0.9375rem;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
.pagination-lg .pagination-btn {
|
|
68
|
-
width: 40px;
|
|
69
|
-
height: 40px;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
.pagination-lg .pagination-btn .material-symbols-outlined {
|
|
73
|
-
font-size: 24px;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
.pagination-lg .pagination-select {
|
|
77
|
-
height: 40px;
|
|
78
|
-
font-size: 0.9375rem;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
24
|
/* -----------------------------------------------------------------------------
|
|
82
25
|
Disabled State
|
|
83
26
|
----------------------------------------------------------------------------- */
|
|
@@ -108,7 +51,9 @@
|
|
|
108
51
|
|
|
109
52
|
.pagination-controls {
|
|
110
53
|
display: flex;
|
|
54
|
+
justify-content: space-between;
|
|
111
55
|
align-items: center;
|
|
56
|
+
width: 100%;
|
|
112
57
|
gap: var(--sp-4, 1rem);
|
|
113
58
|
}
|
|
114
59
|
|
|
@@ -155,7 +100,7 @@
|
|
|
155
100
|
|
|
156
101
|
.pagination-select:focus {
|
|
157
102
|
outline: none;
|
|
158
|
-
border-color: var(--color-brand-
|
|
103
|
+
border-color: var(--color-brand-600);
|
|
159
104
|
box-shadow: 0 0 0 3px var(--color-brand-100, #e0e1fc);
|
|
160
105
|
}
|
|
161
106
|
|
|
@@ -213,6 +158,125 @@
|
|
|
213
158
|
cursor: not-allowed;
|
|
214
159
|
}
|
|
215
160
|
|
|
161
|
+
/* -----------------------------------------------------------------------------
|
|
162
|
+
Page Numbers Display
|
|
163
|
+
----------------------------------------------------------------------------- */
|
|
164
|
+
|
|
165
|
+
.pagination-pages {
|
|
166
|
+
display: flex;
|
|
167
|
+
align-items: center;
|
|
168
|
+
gap: var(--sp-1, 0.25rem);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.pagination-page-btn {
|
|
172
|
+
display: inline-flex;
|
|
173
|
+
align-items: center;
|
|
174
|
+
justify-content: center;
|
|
175
|
+
min-width: 32px;
|
|
176
|
+
height: 32px;
|
|
177
|
+
padding: 0 var(--sp-2, 0.5rem);
|
|
178
|
+
border: 1px solid transparent;
|
|
179
|
+
border-radius: var(--radius-md, 6px);
|
|
180
|
+
background-color: transparent;
|
|
181
|
+
color: var(--color-neutral-700, #4d5266);
|
|
182
|
+
font-size: 0.875rem;
|
|
183
|
+
font-weight: 500;
|
|
184
|
+
cursor: pointer;
|
|
185
|
+
transition: all 0.15s ease;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
.pagination-page-btn:hover:not(:disabled) {
|
|
189
|
+
background-color: var(--color-neutral-100, #f0f1f5);
|
|
190
|
+
color: var(--color-neutral-900, #141624);
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
.pagination-page-btn-active {
|
|
194
|
+
background-color: var(--color-brand-600);
|
|
195
|
+
color: var(--color-white, #fff);
|
|
196
|
+
border-color: var(--color-brand-600);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
.pagination-page-btn-active:hover:not(:disabled) {
|
|
200
|
+
background-color: var(--color-brand-600);
|
|
201
|
+
border-color: var(--color-brand-600);
|
|
202
|
+
color: var(--color-white, #fff);
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
.pagination-page-btn:focus {
|
|
206
|
+
outline: none;
|
|
207
|
+
box-shadow: 0 0 0 2px var(--color-brand-400);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
.pagination-page-btn:disabled {
|
|
211
|
+
opacity: 0.4;
|
|
212
|
+
cursor: not-allowed;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
.pagination-ellipsis {
|
|
216
|
+
display: inline-flex;
|
|
217
|
+
align-items: center;
|
|
218
|
+
justify-content: center;
|
|
219
|
+
min-width: 24px;
|
|
220
|
+
color: var(--color-neutral-400, #939ab4);
|
|
221
|
+
font-size: 0.875rem;
|
|
222
|
+
user-select: none;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
/* -----------------------------------------------------------------------------
|
|
226
|
+
Compact Mode - Page Input
|
|
227
|
+
----------------------------------------------------------------------------- */
|
|
228
|
+
|
|
229
|
+
.pagination-page-display {
|
|
230
|
+
display: flex;
|
|
231
|
+
align-items: center;
|
|
232
|
+
gap: var(--sp-2, 0.5rem);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
.pagination-page-text {
|
|
236
|
+
font-size: 0.875rem;
|
|
237
|
+
color: var(--color-neutral-700, #4d5266);
|
|
238
|
+
white-space: nowrap;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.pagination-page-input {
|
|
242
|
+
width: 60px;
|
|
243
|
+
height: 32px;
|
|
244
|
+
padding: 0 var(--sp-2, 0.5rem);
|
|
245
|
+
border: 1px solid var(--color-neutral-300, #c0c4d4);
|
|
246
|
+
border-radius: var(--radius-md, 6px);
|
|
247
|
+
font-size: 0.875rem;
|
|
248
|
+
text-align: center;
|
|
249
|
+
color: var(--color-neutral-900, #141624);
|
|
250
|
+
background-color: var(--color-white, #fff);
|
|
251
|
+
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
.pagination-page-input:hover:not(:disabled) {
|
|
255
|
+
border-color: var(--color-neutral-400, #939ab4);
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
.pagination-page-input:focus {
|
|
259
|
+
outline: none;
|
|
260
|
+
border-color: var(--color-brand-500, #6366f1);
|
|
261
|
+
box-shadow: 0 0 0 3px var(--color-brand-100, #e0e1fc);
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
.pagination-page-input:disabled {
|
|
265
|
+
background-color: var(--color-neutral-100, #f0f1f5);
|
|
266
|
+
cursor: not-allowed;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
/* Remove number input spinners */
|
|
270
|
+
.pagination-page-input::-webkit-inner-spin-button,
|
|
271
|
+
.pagination-page-input::-webkit-outer-spin-button {
|
|
272
|
+
-webkit-appearance: none;
|
|
273
|
+
margin: 0;
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
.pagination-page-input[type='number'] {
|
|
277
|
+
-moz-appearance: textfield;
|
|
278
|
+
}
|
|
279
|
+
|
|
216
280
|
/* -----------------------------------------------------------------------------
|
|
217
281
|
Responsive Adjustments
|
|
218
282
|
----------------------------------------------------------------------------- */
|
|
@@ -25,13 +25,13 @@ export class BhPagination {
|
|
|
25
25
|
*/
|
|
26
26
|
showItemCount = true;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* Compact mode - shows input field instead of page numbers
|
|
29
29
|
*/
|
|
30
|
-
|
|
30
|
+
compact = false;
|
|
31
31
|
/**
|
|
32
|
-
*
|
|
32
|
+
* Maximum number of page numbers to show (for non-compact mode)
|
|
33
33
|
*/
|
|
34
|
-
|
|
34
|
+
maxPageNumbers = 5;
|
|
35
35
|
/**
|
|
36
36
|
* Whether the pagination is disabled
|
|
37
37
|
*/
|
|
@@ -104,13 +104,41 @@ export class BhPagination {
|
|
|
104
104
|
this.internalPage = newPage;
|
|
105
105
|
this.page = newPage;
|
|
106
106
|
}
|
|
107
|
-
this.bhPageSizeChange.emit({
|
|
107
|
+
this.bhPageSizeChange.emit({
|
|
108
|
+
page: this.internalPage,
|
|
109
|
+
pageSize: newPageSize,
|
|
110
|
+
});
|
|
108
111
|
}
|
|
109
112
|
}
|
|
110
|
-
goToFirst = () => this.goToPage(1);
|
|
111
113
|
goToPrevious = () => this.goToPage(this.internalPage - 1);
|
|
112
114
|
goToNext = () => this.goToPage(this.internalPage + 1);
|
|
113
|
-
|
|
115
|
+
handlePageInputChange(event) {
|
|
116
|
+
const input = event.target;
|
|
117
|
+
const pageNumber = parseInt(input.value, 10);
|
|
118
|
+
if (!isNaN(pageNumber)) {
|
|
119
|
+
this.goToPage(pageNumber);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
getPageNumbers() {
|
|
123
|
+
const totalPages = this.totalPages;
|
|
124
|
+
const currentPage = this.internalPage;
|
|
125
|
+
const maxPages = this.maxPageNumbers;
|
|
126
|
+
if (totalPages <= maxPages) {
|
|
127
|
+
return Array.from({ length: totalPages }, (_, i) => i + 1);
|
|
128
|
+
}
|
|
129
|
+
const pages = [];
|
|
130
|
+
const half = Math.floor(maxPages / 2);
|
|
131
|
+
let start = Math.max(1, currentPage - half);
|
|
132
|
+
let end = Math.min(totalPages, start + maxPages - 1);
|
|
133
|
+
// Adjust start if we're near the end
|
|
134
|
+
if (end - start < maxPages - 1) {
|
|
135
|
+
start = Math.max(1, end - maxPages + 1);
|
|
136
|
+
}
|
|
137
|
+
for (let i = start; i <= end; i++) {
|
|
138
|
+
pages.push(i);
|
|
139
|
+
}
|
|
140
|
+
return pages;
|
|
141
|
+
}
|
|
114
142
|
getInfoText() {
|
|
115
143
|
if (this.totalItems === 0) {
|
|
116
144
|
return 'No results';
|
|
@@ -125,13 +153,35 @@ export class BhPagination {
|
|
|
125
153
|
.replace('{page}', String(this.internalPage))
|
|
126
154
|
.replace('{totalPages}', String(this.totalPages));
|
|
127
155
|
}
|
|
156
|
+
renderPageNumbers() {
|
|
157
|
+
if (this.compact) {
|
|
158
|
+
// Compact mode: Page X of Y
|
|
159
|
+
return (h("div", { class: "pagination-page-display" }, h("span", { class: "pagination-page-text" }, "Page"), h("input", { type: "number", class: "pagination-page-input", value: String(this.internalPage), min: "1", max: String(this.totalPages), disabled: this.disabled, onChange: (e) => this.handlePageInputChange(e), "aria-label": "Page number" }), h("span", { class: "pagination-page-text" }, "of ", this.totalPages)));
|
|
160
|
+
}
|
|
161
|
+
// Non-compact mode: numbered buttons
|
|
162
|
+
const pageNumbers = this.getPageNumbers();
|
|
163
|
+
const showStartEllipsis = pageNumbers[0] > 1;
|
|
164
|
+
const showEndEllipsis = pageNumbers[pageNumbers.length - 1] < this.totalPages;
|
|
165
|
+
return (h("div", { class: "pagination-pages" }, showStartEllipsis &&
|
|
166
|
+
pageNumbers[0] > 2 && [
|
|
167
|
+
h("button", { type: "button", class: "pagination-page-btn", onClick: () => this.goToPage(1), disabled: this.disabled, "aria-label": "Go to page 1", key: "page-1" }, "1"),
|
|
168
|
+
h("span", { class: "pagination-ellipsis", key: "ellipsis-start" }, "..."),
|
|
169
|
+
], pageNumbers.map((pageNum) => (h("button", { type: "button", class: {
|
|
170
|
+
'pagination-page-btn': true,
|
|
171
|
+
'pagination-page-btn-active': pageNum === this.internalPage,
|
|
172
|
+
}, onClick: () => this.goToPage(pageNum), disabled: this.disabled, "aria-label": `Go to page ${pageNum}`, "aria-current": pageNum === this.internalPage ? 'page' : undefined, key: `page-${pageNum}` }, pageNum))), showEndEllipsis &&
|
|
173
|
+
pageNumbers[pageNumbers.length - 1] < this.totalPages - 1 && [
|
|
174
|
+
h("span", { class: "pagination-ellipsis", key: "ellipsis-end" }, "..."),
|
|
175
|
+
h("button", { type: "button", class: "pagination-page-btn", onClick: () => this.goToPage(this.totalPages), disabled: this.disabled, "aria-label": `Go to page ${this.totalPages}`, key: `page-${this.totalPages}` }, this.totalPages),
|
|
176
|
+
]));
|
|
177
|
+
}
|
|
128
178
|
render() {
|
|
129
179
|
const paginationClasses = {
|
|
130
|
-
|
|
131
|
-
[`pagination-${this.size}`]: true,
|
|
180
|
+
pagination: true,
|
|
132
181
|
'pagination-disabled': this.disabled,
|
|
182
|
+
'pagination-compact': this.compact,
|
|
133
183
|
};
|
|
134
|
-
return (h("div", { key: '
|
|
184
|
+
return (h("div", { key: '6d6af19e9b034f162c8aa0cb68d6e9ecdb8b4379', class: paginationClasses, role: "navigation", "aria-label": "Pagination" }, h("div", { key: 'db25c2a72f58170e01c056e3bebb7ecdb2c542d4', class: "pagination-controls" }, this.showPageSizeSelector && (h("div", { key: '70c08c54eb6466cecf11e847a260fc2fc7cfc5d7', class: "pagination-page-size" }, h("span", { key: 'f4440ea7825c078475859f3ea4c61dcffa1c5377', class: "pagination-page-size-label" }, this.rowsPerPageLabel), h("select", { key: '00afde5da29dcb405be13ae72e1964a9b35d8b37', class: "pagination-select", onChange: (e) => this.handlePageSizeChange(e), disabled: this.disabled, "aria-label": "Select page size" }, this.pageSizeOptions.map((size) => (h("option", { key: size, value: String(size), selected: size === this.internalPageSize }, size)))))), h("div", { key: '9a67b12e3f99ac14d78c258d152a5520f93d4578', class: "pagination-nav" }, h("button", { key: '7df0dcc92fe17ee8be2dd01c1b09b7781a5b4909', type: "button", class: "pagination-btn", onClick: this.goToPrevious, disabled: !this.canGoPrevious, "aria-label": "Go to previous page" }, h("span", { key: '28a2db05556dd973ec0418e116f5773e669a2066', class: "material-symbols-outlined" }, "chevron_left")), this.renderPageNumbers(), h("button", { key: 'ebf00789de88ee1e40d658dd8a874f0fb36eec70', type: "button", class: "pagination-btn", onClick: this.goToNext, disabled: !this.canGoNext, "aria-label": "Go to next page" }, h("span", { key: '9f8865e63ec0f68fecaa7475b76118857d263f67', class: "material-symbols-outlined" }, "chevron_right")))), this.showItemCount && (h("div", { key: 'ec5b745d761b38953654a7127d8f714c40e9de9d', class: "pagination-info" }, h("span", { key: 'abf649c0642981cdd0e7dfba0065735a0ed2cdf2', class: "pagination-info-text" }, this.getInfoText())))));
|
|
135
185
|
}
|
|
136
186
|
static get is() { return "bh-pagination"; }
|
|
137
187
|
static get encapsulation() { return "shadow"; }
|
|
@@ -265,7 +315,7 @@ export class BhPagination {
|
|
|
265
315
|
"attribute": "show-item-count",
|
|
266
316
|
"defaultValue": "true"
|
|
267
317
|
},
|
|
268
|
-
"
|
|
318
|
+
"compact": {
|
|
269
319
|
"type": "boolean",
|
|
270
320
|
"mutable": false,
|
|
271
321
|
"complexType": {
|
|
@@ -277,39 +327,33 @@ export class BhPagination {
|
|
|
277
327
|
"optional": false,
|
|
278
328
|
"docs": {
|
|
279
329
|
"tags": [],
|
|
280
|
-
"text": "
|
|
330
|
+
"text": "Compact mode - shows input field instead of page numbers"
|
|
281
331
|
},
|
|
282
332
|
"getter": false,
|
|
283
333
|
"setter": false,
|
|
284
334
|
"reflect": false,
|
|
285
|
-
"attribute": "
|
|
286
|
-
"defaultValue": "
|
|
335
|
+
"attribute": "compact",
|
|
336
|
+
"defaultValue": "false"
|
|
287
337
|
},
|
|
288
|
-
"
|
|
289
|
-
"type": "
|
|
338
|
+
"maxPageNumbers": {
|
|
339
|
+
"type": "number",
|
|
290
340
|
"mutable": false,
|
|
291
341
|
"complexType": {
|
|
292
|
-
"original": "
|
|
293
|
-
"resolved": "
|
|
294
|
-
"references": {
|
|
295
|
-
"PaginationSize": {
|
|
296
|
-
"location": "local",
|
|
297
|
-
"path": "/Users/brunabites/localsites/bellhopOS/packages/bellhop-core/src/components/bh-pagination/bh-pagination.tsx",
|
|
298
|
-
"id": "src/components/bh-pagination/bh-pagination.tsx::PaginationSize"
|
|
299
|
-
}
|
|
300
|
-
}
|
|
342
|
+
"original": "number",
|
|
343
|
+
"resolved": "number",
|
|
344
|
+
"references": {}
|
|
301
345
|
},
|
|
302
346
|
"required": false,
|
|
303
347
|
"optional": false,
|
|
304
348
|
"docs": {
|
|
305
349
|
"tags": [],
|
|
306
|
-
"text": "
|
|
350
|
+
"text": "Maximum number of page numbers to show (for non-compact mode)"
|
|
307
351
|
},
|
|
308
352
|
"getter": false,
|
|
309
353
|
"setter": false,
|
|
310
354
|
"reflect": false,
|
|
311
|
-
"attribute": "
|
|
312
|
-
"defaultValue": "
|
|
355
|
+
"attribute": "max-page-numbers",
|
|
356
|
+
"defaultValue": "5"
|
|
313
357
|
},
|
|
314
358
|
"disabled": {
|
|
315
359
|
"type": "boolean",
|
|
@@ -416,7 +460,7 @@ export class BhPagination {
|
|
|
416
460
|
"references": {
|
|
417
461
|
"PaginationChangeEvent": {
|
|
418
462
|
"location": "local",
|
|
419
|
-
"path": "/
|
|
463
|
+
"path": "/home/runner/work/bellhopos/bellhopos/packages/bellhop-core/src/components/bh-pagination/bh-pagination.tsx",
|
|
420
464
|
"id": "src/components/bh-pagination/bh-pagination.tsx::PaginationChangeEvent"
|
|
421
465
|
}
|
|
422
466
|
}
|
|
@@ -437,7 +481,7 @@ export class BhPagination {
|
|
|
437
481
|
"references": {
|
|
438
482
|
"PaginationChangeEvent": {
|
|
439
483
|
"location": "local",
|
|
440
|
-
"path": "/
|
|
484
|
+
"path": "/home/runner/work/bellhopos/bellhopos/packages/bellhop-core/src/components/bh-pagination/bh-pagination.tsx",
|
|
441
485
|
"id": "src/components/bh-pagination/bh-pagination.tsx::PaginationChangeEvent"
|
|
442
486
|
}
|
|
443
487
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bh-pagination.js","sourceRoot":"","sources":["../../../src/components/bh-pagination/bh-pagination.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, Event, EventEmitter, h, State } from '@stencil/core';\n\nexport type PaginationSize = 'sm' | 'md' | 'lg';\n\nexport interface PaginationChangeEvent {\n page: number;\n pageSize: number;\n}\n\n@Component({\n tag: 'bh-pagination',\n styleUrl: 'bh-pagination.css',\n shadow: true,\n})\nexport class BhPagination {\n /**\n * Current page (1-indexed)\n */\n @Prop({ mutable: true }) page: number = 1;\n\n /**\n * Total number of items\n */\n @Prop() totalItems: number = 0;\n\n /**\n * Number of items per page\n */\n @Prop({ mutable: true }) pageSize: number = 10;\n\n /**\n * Available page size options\n */\n @Prop() pageSizeOptions: number[] = [10, 25, 50, 100];\n\n /**\n * Show page size selector\n */\n @Prop() showPageSizeSelector: boolean = true;\n\n /**\n * Show item count info (e.g., \"Showing 1 to 10 of 100 results\")\n */\n @Prop() showItemCount: boolean = true;\n\n /**\n * Show first/last page buttons\n */\n @Prop() showFirstLastButtons: boolean = true;\n\n /**\n * Size variant of the pagination\n */\n @Prop() size: PaginationSize = 'md';\n\n /**\n * Whether the pagination is disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Label for \"Rows per page\" text (for i18n)\n */\n @Prop() rowsPerPageLabel: string = 'Rows per page:';\n\n /**\n * Label template for showing results (use {start}, {end}, {total} placeholders)\n */\n @Prop() showingResultsLabel: string = 'Showing {start} to {end} of {total} results';\n\n /**\n * Label template for page info when total items unknown (use {page}, {totalPages} placeholders)\n */\n @Prop() pageInfoLabel: string = 'Page {page} of {totalPages}';\n\n @State() internalPage: number = 1;\n @State() internalPageSize: number = 10;\n\n /**\n * Emitted when the page changes\n */\n @Event() bhPageChange!: EventEmitter<PaginationChangeEvent>;\n\n /**\n * Emitted when page size changes\n */\n @Event() bhPageSizeChange!: EventEmitter<PaginationChangeEvent>;\n\n componentWillLoad() {\n this.internalPage = this.page;\n this.internalPageSize = this.pageSize;\n }\n\n private get totalPages(): number {\n return Math.max(1, Math.ceil(this.totalItems / this.internalPageSize));\n }\n\n private get startItem(): number {\n if (this.totalItems === 0) return 0;\n return (this.internalPage - 1) * this.internalPageSize + 1;\n }\n\n private get endItem(): number {\n return Math.min(this.internalPage * this.internalPageSize, this.totalItems);\n }\n\n private get canGoPrevious(): boolean {\n return this.internalPage > 1 && !this.disabled;\n }\n\n private get canGoNext(): boolean {\n return this.internalPage < this.totalPages && !this.disabled;\n }\n\n private goToPage(newPage: number) {\n if (this.disabled) return;\n\n const page = Math.max(1, Math.min(newPage, this.totalPages));\n if (page !== this.internalPage) {\n this.internalPage = page;\n this.page = page;\n this.bhPageChange.emit({ page, pageSize: this.internalPageSize });\n }\n }\n\n private handlePageSizeChange(event: Event) {\n if (this.disabled) return;\n\n const select = event.target as HTMLSelectElement;\n const newPageSize = parseInt(select.value, 10);\n\n if (newPageSize !== this.internalPageSize) {\n this.internalPageSize = newPageSize;\n this.pageSize = newPageSize;\n\n // Reset to page 1 when page size changes, or adjust if current page is now out of bounds\n const newTotalPages = Math.max(1, Math.ceil(this.totalItems / newPageSize));\n const newPage = Math.min(this.internalPage, newTotalPages);\n\n if (newPage !== this.internalPage) {\n this.internalPage = newPage;\n this.page = newPage;\n }\n\n this.bhPageSizeChange.emit({ page: this.internalPage, pageSize: newPageSize });\n }\n }\n\n private goToFirst = () => this.goToPage(1);\n private goToPrevious = () => this.goToPage(this.internalPage - 1);\n private goToNext = () => this.goToPage(this.internalPage + 1);\n private goToLast = () => this.goToPage(this.totalPages);\n\n private getInfoText(): string {\n if (this.totalItems === 0) {\n return 'No results';\n }\n\n if (this.showItemCount && this.totalItems > 0) {\n return this.showingResultsLabel\n .replace('{start}', String(this.startItem))\n .replace('{end}', String(this.endItem))\n .replace('{total}', String(this.totalItems));\n }\n\n return this.pageInfoLabel\n .replace('{page}', String(this.internalPage))\n .replace('{totalPages}', String(this.totalPages));\n }\n\n render() {\n const paginationClasses = {\n 'pagination': true,\n [`pagination-${this.size}`]: true,\n 'pagination-disabled': this.disabled,\n };\n\n return (\n <div class={paginationClasses} role=\"navigation\" aria-label=\"Pagination\">\n {/* Info section */}\n <div class=\"pagination-info\">\n <span class=\"pagination-info-text\">{this.getInfoText()}</span>\n </div>\n\n {/* Controls section */}\n <div class=\"pagination-controls\">\n {/* Page size selector */}\n {this.showPageSizeSelector && (\n <div class=\"pagination-page-size\">\n <span class=\"pagination-page-size-label\">{this.rowsPerPageLabel}</span>\n <select\n class=\"pagination-select\"\n onChange={(e) => this.handlePageSizeChange(e)}\n disabled={this.disabled}\n aria-label=\"Select page size\"\n >\n {this.pageSizeOptions.map((size) => (\n <option key={size} value={String(size)} selected={size === this.internalPageSize}>\n {size}\n </option>\n ))}\n </select>\n </div>\n )}\n\n {/* Navigation buttons */}\n <div class=\"pagination-nav\">\n {this.showFirstLastButtons && (\n <button\n type=\"button\"\n class=\"pagination-btn\"\n onClick={this.goToFirst}\n disabled={!this.canGoPrevious}\n aria-label=\"Go to first page\"\n >\n <span class=\"material-symbols-outlined\">first_page</span>\n </button>\n )}\n\n <button\n type=\"button\"\n class=\"pagination-btn\"\n onClick={this.goToPrevious}\n disabled={!this.canGoPrevious}\n aria-label=\"Go to previous page\"\n >\n <span class=\"material-symbols-outlined\">chevron_left</span>\n </button>\n\n <button\n type=\"button\"\n class=\"pagination-btn\"\n onClick={this.goToNext}\n disabled={!this.canGoNext}\n aria-label=\"Go to next page\"\n >\n <span class=\"material-symbols-outlined\">chevron_right</span>\n </button>\n\n {this.showFirstLastButtons && (\n <button\n type=\"button\"\n class=\"pagination-btn\"\n onClick={this.goToLast}\n disabled={!this.canGoNext}\n aria-label=\"Go to last page\"\n >\n <span class=\"material-symbols-outlined\">last_page</span>\n </button>\n )}\n </div>\n </div>\n </div>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"bh-pagination.js","sourceRoot":"","sources":["../../../src/components/bh-pagination/bh-pagination.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, Event, EventEmitter, h, State } from '@stencil/core';\n\nexport interface PaginationChangeEvent {\n page: number;\n pageSize: number;\n}\n\n@Component({\n tag: 'bh-pagination',\n styleUrl: 'bh-pagination.css',\n shadow: true,\n})\nexport class BhPagination {\n /**\n * Current page (1-indexed)\n */\n @Prop({ mutable: true }) page: number = 1;\n\n /**\n * Total number of items\n */\n @Prop() totalItems: number = 0;\n\n /**\n * Number of items per page\n */\n @Prop({ mutable: true }) pageSize: number = 10;\n\n /**\n * Available page size options\n */\n @Prop() pageSizeOptions: number[] = [10, 25, 50, 100];\n\n /**\n * Show page size selector\n */\n @Prop() showPageSizeSelector: boolean = true;\n\n /**\n * Show item count info (e.g., \"Showing 1 to 10 of 100 results\")\n */\n @Prop() showItemCount: boolean = true;\n\n /**\n * Compact mode - shows input field instead of page numbers\n */\n @Prop() compact: boolean = false;\n\n /**\n * Maximum number of page numbers to show (for non-compact mode)\n */\n @Prop() maxPageNumbers: number = 5;\n\n /**\n * Whether the pagination is disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Label for \"Rows per page\" text (for i18n)\n */\n @Prop() rowsPerPageLabel: string = 'Rows per page:';\n\n /**\n * Label template for showing results (use {start}, {end}, {total} placeholders)\n */\n @Prop() showingResultsLabel: string =\n 'Showing {start} to {end} of {total} results';\n\n /**\n * Label template for page info when total items unknown (use {page}, {totalPages} placeholders)\n */\n @Prop() pageInfoLabel: string = 'Page {page} of {totalPages}';\n\n @State() internalPage: number = 1;\n @State() internalPageSize: number = 10;\n\n /**\n * Emitted when the page changes\n */\n @Event() bhPageChange!: EventEmitter<PaginationChangeEvent>;\n\n /**\n * Emitted when page size changes\n */\n @Event() bhPageSizeChange!: EventEmitter<PaginationChangeEvent>;\n\n componentWillLoad() {\n this.internalPage = this.page;\n this.internalPageSize = this.pageSize;\n }\n\n private get totalPages(): number {\n return Math.max(1, Math.ceil(this.totalItems / this.internalPageSize));\n }\n\n private get startItem(): number {\n if (this.totalItems === 0) return 0;\n return (this.internalPage - 1) * this.internalPageSize + 1;\n }\n\n private get endItem(): number {\n return Math.min(this.internalPage * this.internalPageSize, this.totalItems);\n }\n\n private get canGoPrevious(): boolean {\n return this.internalPage > 1 && !this.disabled;\n }\n\n private get canGoNext(): boolean {\n return this.internalPage < this.totalPages && !this.disabled;\n }\n\n private goToPage(newPage: number) {\n if (this.disabled) return;\n\n const page = Math.max(1, Math.min(newPage, this.totalPages));\n if (page !== this.internalPage) {\n this.internalPage = page;\n this.page = page;\n this.bhPageChange.emit({ page, pageSize: this.internalPageSize });\n }\n }\n\n private handlePageSizeChange(event: Event) {\n if (this.disabled) return;\n\n const select = event.target as HTMLSelectElement;\n const newPageSize = parseInt(select.value, 10);\n\n if (newPageSize !== this.internalPageSize) {\n this.internalPageSize = newPageSize;\n this.pageSize = newPageSize;\n\n // Reset to page 1 when page size changes, or adjust if current page is now out of bounds\n const newTotalPages = Math.max(\n 1,\n Math.ceil(this.totalItems / newPageSize)\n );\n const newPage = Math.min(this.internalPage, newTotalPages);\n\n if (newPage !== this.internalPage) {\n this.internalPage = newPage;\n this.page = newPage;\n }\n\n this.bhPageSizeChange.emit({\n page: this.internalPage,\n pageSize: newPageSize,\n });\n }\n }\n\n private goToPrevious = () => this.goToPage(this.internalPage - 1);\n private goToNext = () => this.goToPage(this.internalPage + 1);\n\n private handlePageInputChange(event: Event) {\n const input = event.target as HTMLInputElement;\n const pageNumber = parseInt(input.value, 10);\n\n if (!isNaN(pageNumber)) {\n this.goToPage(pageNumber);\n }\n }\n\n private getPageNumbers(): number[] {\n const totalPages = this.totalPages;\n const currentPage = this.internalPage;\n const maxPages = this.maxPageNumbers;\n\n if (totalPages <= maxPages) {\n return Array.from({ length: totalPages }, (_, i) => i + 1);\n }\n\n const pages: number[] = [];\n const half = Math.floor(maxPages / 2);\n\n let start = Math.max(1, currentPage - half);\n let end = Math.min(totalPages, start + maxPages - 1);\n\n // Adjust start if we're near the end\n if (end - start < maxPages - 1) {\n start = Math.max(1, end - maxPages + 1);\n }\n\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n return pages;\n }\n\n private getInfoText(): string {\n if (this.totalItems === 0) {\n return 'No results';\n }\n\n if (this.showItemCount && this.totalItems > 0) {\n return this.showingResultsLabel\n .replace('{start}', String(this.startItem))\n .replace('{end}', String(this.endItem))\n .replace('{total}', String(this.totalItems));\n }\n\n return this.pageInfoLabel\n .replace('{page}', String(this.internalPage))\n .replace('{totalPages}', String(this.totalPages));\n }\n\n private renderPageNumbers() {\n if (this.compact) {\n // Compact mode: Page X of Y\n return (\n <div class=\"pagination-page-display\">\n <span class=\"pagination-page-text\">Page</span>\n <input\n type=\"number\"\n class=\"pagination-page-input\"\n value={String(this.internalPage)}\n min=\"1\"\n max={String(this.totalPages)}\n disabled={this.disabled}\n onChange={(e) => this.handlePageInputChange(e)}\n aria-label=\"Page number\"\n />\n <span class=\"pagination-page-text\">of {this.totalPages}</span>\n </div>\n );\n }\n\n // Non-compact mode: numbered buttons\n const pageNumbers = this.getPageNumbers();\n const showStartEllipsis = pageNumbers[0] > 1;\n const showEndEllipsis =\n pageNumbers[pageNumbers.length - 1] < this.totalPages;\n\n return (\n <div class=\"pagination-pages\">\n {showStartEllipsis &&\n pageNumbers[0] > 2 && [\n <button\n type=\"button\"\n class=\"pagination-page-btn\"\n onClick={() => this.goToPage(1)}\n disabled={this.disabled}\n aria-label=\"Go to page 1\"\n key=\"page-1\"\n >\n 1\n </button>,\n <span class=\"pagination-ellipsis\" key=\"ellipsis-start\">\n ...\n </span>,\n ]}\n\n {pageNumbers.map((pageNum) => (\n <button\n type=\"button\"\n class={{\n 'pagination-page-btn': true,\n 'pagination-page-btn-active': pageNum === this.internalPage,\n }}\n onClick={() => this.goToPage(pageNum)}\n disabled={this.disabled}\n aria-label={`Go to page ${pageNum}`}\n aria-current={pageNum === this.internalPage ? 'page' : undefined}\n key={`page-${pageNum}`}\n >\n {pageNum}\n </button>\n ))}\n\n {showEndEllipsis &&\n pageNumbers[pageNumbers.length - 1] < this.totalPages - 1 && [\n <span class=\"pagination-ellipsis\" key=\"ellipsis-end\">\n ...\n </span>,\n <button\n type=\"button\"\n class=\"pagination-page-btn\"\n onClick={() => this.goToPage(this.totalPages)}\n disabled={this.disabled}\n aria-label={`Go to page ${this.totalPages}`}\n key={`page-${this.totalPages}`}\n >\n {this.totalPages}\n </button>,\n ]}\n </div>\n );\n }\n\n render() {\n const paginationClasses = {\n pagination: true,\n 'pagination-disabled': this.disabled,\n 'pagination-compact': this.compact,\n };\n\n return (\n <div class={paginationClasses} role=\"navigation\" aria-label=\"Pagination\">\n {/* Controls section - reordered */}\n <div class=\"pagination-controls\">\n {/* Page size selector - now first */}\n {this.showPageSizeSelector && (\n <div class=\"pagination-page-size\">\n <span class=\"pagination-page-size-label\">\n {this.rowsPerPageLabel}\n </span>\n <select\n class=\"pagination-select\"\n onChange={(e) => this.handlePageSizeChange(e)}\n disabled={this.disabled}\n aria-label=\"Select page size\"\n >\n {this.pageSizeOptions.map((size) => (\n <option\n key={size}\n value={String(size)}\n selected={size === this.internalPageSize}\n >\n {size}\n </option>\n ))}\n </select>\n </div>\n )}\n\n {/* Navigation with page numbers/input in middle */}\n <div class=\"pagination-nav\">\n <button\n type=\"button\"\n class=\"pagination-btn\"\n onClick={this.goToPrevious}\n disabled={!this.canGoPrevious}\n aria-label=\"Go to previous page\"\n >\n <span class=\"material-symbols-outlined\">chevron_left</span>\n </button>\n\n {/* Page numbers or input */}\n {this.renderPageNumbers()}\n\n <button\n type=\"button\"\n class=\"pagination-btn\"\n onClick={this.goToNext}\n disabled={!this.canGoNext}\n aria-label=\"Go to next page\"\n >\n <span class=\"material-symbols-outlined\">chevron_right</span>\n </button>\n </div>\n </div>\n\n {/* Info section - now on right */}\n {this.showItemCount && (\n <div class=\"pagination-info\">\n <span class=\"pagination-info-text\">{this.getInfoText()}</span>\n </div>\n )}\n </div>\n );\n }\n}\n"]}
|
|
@@ -214,9 +214,7 @@
|
|
|
214
214
|
min-width: 320px;
|
|
215
215
|
background: var(--color-white);
|
|
216
216
|
border-radius: var(--radius-md);
|
|
217
|
-
box-shadow:
|
|
218
|
-
0px 0px 1px 1px rgba(64, 73, 104, 0.1);
|
|
219
|
-
border: 1px solid var(--color-neutral-200);
|
|
217
|
+
box-shadow: var(--shadow-lg);
|
|
220
218
|
overflow: hidden;
|
|
221
219
|
flex-shrink: 0;
|
|
222
220
|
position: relative;
|
|
@@ -132,7 +132,7 @@ export class BhPieChart {
|
|
|
132
132
|
render() {
|
|
133
133
|
const segments = this.getSegments();
|
|
134
134
|
const innerRadius = this.getInnerRadius();
|
|
135
|
-
return (h(Host, { key: '
|
|
135
|
+
return (h(Host, { key: '0bd86f47684f8fa73b3460af4d245337136fc319' }, h("div", { key: '9a7c0944d029a7065735ff647f1e2502af2bb783', class: "pie-chart-container", style: { width: `${this.size}px`, height: `${this.size}px` } }, h("svg", { key: 'c272bad8a5050cbc28ac803ea68b27b7179f1d1a', width: this.size, height: this.size, viewBox: "0 0 160 160", class: "pie-chart-svg" }, h("circle", { key: '21503d47d3ad7976bc2c2b5926785c2144d579ea', cx: "80", cy: "80", r: "80", fill: "transparent", class: "pie-background" }), segments.map((segment, index) => (h("g", { key: index, class: "pie-segment-group" }, h("path", { d: segment.path, fill: segment.color, class: { 'pie-segment': true, animated: this.animated }, style: { animationDelay: this.animated ? `${index * 0.03}s` : '0s' }, onMouseEnter: (e) => this.handleSegmentHover(e, segment), onMouseLeave: this.handleSegmentLeave })))), this.hole !== 'none' && (h("circle", { key: 'f42c781fc5378af859f7a460ac0665cfd3360599', cx: "80", cy: "80", r: innerRadius, fill: "white", class: "pie-inner-hole" })))), h("bh-chart-tooltip", { key: '179c0d15c9895199dc6d169e400c6f4ff832215b', visible: this.tooltipVisible, x: this.tooltipX, y: this.tooltipY, items: this.tooltipSegment
|
|
136
136
|
? [
|
|
137
137
|
{
|
|
138
138
|
label: this.tooltipSegment.name,
|
|
@@ -165,7 +165,7 @@ export class BhPieChart {
|
|
|
165
165
|
"references": {
|
|
166
166
|
"PieChartData": {
|
|
167
167
|
"location": "local",
|
|
168
|
-
"path": "/
|
|
168
|
+
"path": "/home/runner/work/bellhopos/bellhopos/packages/bellhop-core/src/components/bh-pie-chart/bh-pie-chart.tsx",
|
|
169
169
|
"id": "src/components/bh-pie-chart/bh-pie-chart.tsx::PieChartData"
|
|
170
170
|
}
|
|
171
171
|
}
|
|
@@ -189,7 +189,7 @@ export class BhPieChart {
|
|
|
189
189
|
"references": {
|
|
190
190
|
"PieChartHole": {
|
|
191
191
|
"location": "local",
|
|
192
|
-
"path": "/
|
|
192
|
+
"path": "/home/runner/work/bellhopos/bellhopos/packages/bellhop-core/src/components/bh-pie-chart/bh-pie-chart.tsx",
|
|
193
193
|
"id": "src/components/bh-pie-chart/bh-pie-chart.tsx::PieChartHole"
|
|
194
194
|
}
|
|
195
195
|
}
|