@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.
Files changed (466) hide show
  1. package/README.md +132 -33
  2. package/components/bh-accordion-item.js +1 -1
  3. package/components/bh-avatar-add.js +1 -1
  4. package/components/bh-avatar-stacked.js +3 -3
  5. package/components/bh-avatar.js +1 -1
  6. package/components/bh-button.js +1 -1
  7. package/components/bh-card-header.js +1 -1
  8. package/components/bh-card.js +1 -1
  9. package/components/bh-checkbox-group-item.js +5 -5
  10. package/components/bh-checkbox.js +1 -1
  11. package/components/bh-data-grid.js +140 -67
  12. package/components/bh-data-grid.js.map +1 -1
  13. package/components/bh-date-picker-content.js +1 -1
  14. package/components/bh-date-picker.js +24 -19
  15. package/components/bh-date-picker.js.map +1 -1
  16. package/components/bh-date-range-picker-content.js +1 -1
  17. package/components/bh-date-range-picker.js +9 -9
  18. package/components/bh-dropdown-menu.js +1 -1
  19. package/components/bh-dropdown.js +1 -1
  20. package/components/bh-empty-state.js +1 -1
  21. package/components/bh-featured-icon.js +1 -1
  22. package/components/bh-illustrations.js +3 -3
  23. package/components/bh-input-autocomplete.js +7 -7
  24. package/components/bh-input-number.js +3 -3
  25. package/components/bh-input-password.js +3 -3
  26. package/components/bh-input-text.js +1 -1
  27. package/components/bh-input-verification.js +3 -3
  28. package/components/bh-label.js +1 -1
  29. package/components/bh-logo-box.js +1 -1
  30. package/components/bh-modal-actions.js +2 -2
  31. package/components/bh-modal-header.js +5 -5
  32. package/components/bh-month-picker-content.js +1 -1
  33. package/components/bh-month-picker.js +8 -8
  34. package/components/bh-month-picker.js.map +1 -1
  35. package/components/bh-nav-item.js +1 -1
  36. package/components/bh-notification.js +3 -3
  37. package/components/bh-page-navigation-child.js +1 -1
  38. package/components/bh-page-navigation-multi-level.js +1 -1
  39. package/components/bh-page-navigation-single-level.js +1 -1
  40. package/components/bh-page-navigation.js +5 -5
  41. package/components/bh-pagination.js +1 -1
  42. package/components/bh-picker-menu.js +1 -1
  43. package/components/bh-pie-chart.js +1 -1
  44. package/components/bh-popover.js +18 -85
  45. package/components/bh-popover.js.map +1 -1
  46. package/components/bh-property-switcher.js +1 -1
  47. package/components/bh-radio-button.js +1 -1
  48. package/components/bh-sidebar.js +7 -7
  49. package/components/bh-skeleton-loader.js +1 -1
  50. package/components/bh-tab-item.js +2 -2
  51. package/components/bh-tabs.js +1 -1
  52. package/components/bh-tag.js +1 -1
  53. package/components/bh-textarea.js +3 -3
  54. package/components/bh-toggle.js +1 -1
  55. package/components/bh-tooltip.js +1 -1
  56. package/components/bh-trend-chart.js +2 -2
  57. package/components/index.d.ts +0 -4
  58. package/components/index.js +0 -2
  59. package/components/index.js.map +1 -1
  60. package/components/{p-8bOZFmdg.js → p--S10V0sf.js} +5 -5
  61. package/components/p--S10V0sf.js.map +1 -0
  62. package/components/{p-BLCjD0ux.js → p-7nrZFsG8.js} +3 -3
  63. package/components/{p-BLCjD0ux.js.map → p-7nrZFsG8.js.map} +1 -1
  64. package/components/{p-C_wf2KGn.js → p-B0ADeWoj.js} +3 -3
  65. package/components/{p-C_wf2KGn.js.map → p-B0ADeWoj.js.map} +1 -1
  66. package/components/{p-D9aamyuM.js → p-BEm39SYP.js} +4 -4
  67. package/components/{p-D9aamyuM.js.map → p-BEm39SYP.js.map} +1 -1
  68. package/components/{p-BkK6rWZn.js → p-BYRvQ4u7.js} +4 -4
  69. package/components/{p-BkK6rWZn.js.map → p-BYRvQ4u7.js.map} +1 -1
  70. package/components/{p-D0Ba0gOA.js → p-BqYBdZ7I.js} +4 -4
  71. package/components/{p-D0Ba0gOA.js.map → p-BqYBdZ7I.js.map} +1 -1
  72. package/components/{p-Df8KgHhe.js → p-BrIid8rr.js} +3 -3
  73. package/components/{p-Df8KgHhe.js.map → p-BrIid8rr.js.map} +1 -1
  74. package/components/p-BsHlTsAN.js.map +1 -1
  75. package/components/{p-Npcwl1Z8.js → p-CDmCw7LX.js} +4 -4
  76. package/components/p-CDmCw7LX.js.map +1 -0
  77. package/components/{p-BQKx1tGq.js → p-CHYn9whC.js} +6 -6
  78. package/components/p-CHYn9whC.js.map +1 -0
  79. package/components/{p-CdwyUif-.js → p-CNwZh1xz.js} +5 -5
  80. package/components/p-CNwZh1xz.js.map +1 -0
  81. package/components/{p-B02xFf1P.js → p-CiEBtN9j.js} +3 -3
  82. package/components/{p-B02xFf1P.js.map → p-CiEBtN9j.js.map} +1 -1
  83. package/components/{p-Cmo_S3fO.js → p-CiZSLZTA.js} +4 -4
  84. package/components/{p-Cmo_S3fO.js.map → p-CiZSLZTA.js.map} +1 -1
  85. package/components/{p-DYC2IZEs.js → p-CmEb-mj5.js} +6 -6
  86. package/components/{p-DYC2IZEs.js.map → p-CmEb-mj5.js.map} +1 -1
  87. package/components/{p-Do29ZTL9.js → p-CppjlSaO.js} +3 -3
  88. package/components/{p-Do29ZTL9.js.map → p-CppjlSaO.js.map} +1 -1
  89. package/components/{p-D3FuyNC4.js → p-CyFUHAY1.js} +7 -7
  90. package/components/{p-D3FuyNC4.js.map → p-CyFUHAY1.js.map} +1 -1
  91. package/components/{p-B0vRPcr5.js → p-D8L5XpBP.js} +3 -3
  92. package/components/{p-B0vRPcr5.js.map → p-D8L5XpBP.js.map} +1 -1
  93. package/components/p-DH86TJ99.js +232 -0
  94. package/components/p-DH86TJ99.js.map +1 -0
  95. package/components/{p-BJLHKnwL.js → p-DVBd-54W.js} +5 -5
  96. package/components/{p-BJLHKnwL.js.map → p-DVBd-54W.js.map} +1 -1
  97. package/components/{p-CMoGgYqw.js → p-DmELCHDa.js} +3 -3
  98. package/components/p-DmELCHDa.js.map +1 -0
  99. package/components/{p-Bu0BcHwL.js → p-Du_cCBR7.js} +6 -6
  100. package/components/{p-Bu0BcHwL.js.map → p-Du_cCBR7.js.map} +1 -1
  101. package/components/{p-h6juyPoa.js → p-JJSN-gZI.js} +3 -3
  102. package/components/{p-h6juyPoa.js.map → p-JJSN-gZI.js.map} +1 -1
  103. package/components/{p-wPu4WTba.js → p-dsE158cF.js} +3 -3
  104. package/components/{p-wPu4WTba.js.map → p-dsE158cF.js.map} +1 -1
  105. package/components/{p-C0fcjlnS.js → p-eYcfeTFU.js} +3 -3
  106. package/components/{p-C0fcjlnS.js.map → p-eYcfeTFU.js.map} +1 -1
  107. package/components/{p-BSok41i-.js → p-oyeucMe6.js} +3 -3
  108. package/components/{p-BSok41i-.js.map → p-oyeucMe6.js.map} +1 -1
  109. package/dist/bellhop-core/bellhop-core.esm.js +1 -1
  110. package/dist/bellhop-core/bellhop-core.esm.js.map +1 -1
  111. package/dist/bellhop-core/bh-avatar.entry.esm.js.map +1 -1
  112. package/dist/bellhop-core/bh-button.bh-loader-spinner.entry.esm.js.map +1 -1
  113. package/dist/bellhop-core/bh-data-grid.entry.esm.js.map +1 -1
  114. package/dist/bellhop-core/bh-date-picker-content.entry.esm.js.map +1 -1
  115. package/dist/bellhop-core/bh-date-picker.entry.esm.js.map +1 -1
  116. package/dist/bellhop-core/bh-empty-state.bh-pagination.bh-skeleton-loader.entry.esm.js.map +1 -1
  117. package/dist/bellhop-core/bh-input-text.bh-picker-menu.entry.esm.js.map +1 -1
  118. package/dist/bellhop-core/bh-label.bh-tooltip.entry.esm.js.map +1 -1
  119. package/dist/bellhop-core/bh-month-picker-content.entry.esm.js.map +1 -1
  120. package/dist/bellhop-core/bh-month-picker.entry.esm.js.map +1 -1
  121. package/dist/bellhop-core/bh-popover.entry.esm.js.map +1 -1
  122. package/dist/bellhop-core/index.esm.js +1 -1
  123. package/dist/bellhop-core/index.esm.js.map +1 -1
  124. package/dist/bellhop-core/{p-Ck1gRAmI.js → p-04a00da6.entry.js} +2 -2
  125. package/dist/bellhop-core/p-04a00da6.entry.js.map +1 -0
  126. package/dist/bellhop-core/{p-bd00d5ad.entry.js → p-06b0ba5f.entry.js} +2 -2
  127. package/dist/bellhop-core/{p-4a8844ff.entry.js → p-0a232a85.entry.js} +2 -2
  128. package/dist/bellhop-core/p-0d5ce369.entry.js +13 -0
  129. package/dist/bellhop-core/p-0d5ce369.entry.js.map +1 -0
  130. package/dist/bellhop-core/{p-67956598.entry.js → p-0e773f4b.entry.js} +2 -2
  131. package/dist/bellhop-core/{p-df4498cd.entry.js → p-11e84742.entry.js} +2 -2
  132. package/dist/bellhop-core/{p-a41b3673.entry.js → p-20e65b2b.entry.js} +2 -2
  133. package/dist/bellhop-core/{p-a30e22f7.entry.js → p-2349cd39.entry.js} +2 -2
  134. package/dist/bellhop-core/{p-3a1c52a9.entry.js → p-2cc352e8.entry.js} +2 -2
  135. package/dist/bellhop-core/{p-defe9916.entry.js → p-31f60dac.entry.js} +2 -2
  136. package/dist/bellhop-core/{p-defe9916.entry.js.map → p-31f60dac.entry.js.map} +1 -1
  137. package/dist/bellhop-core/{p-f85a9eaa.entry.js → p-439f8477.entry.js} +2 -2
  138. package/dist/bellhop-core/{p-a42e8ddb.entry.js → p-4bc0e720.entry.js} +2 -2
  139. package/dist/bellhop-core/{p-a42e8ddb.entry.js.map → p-4bc0e720.entry.js.map} +1 -1
  140. package/dist/bellhop-core/{p-21bc4f77.entry.js → p-4cf74f24.entry.js} +2 -2
  141. package/dist/bellhop-core/p-53dbd8bd.entry.js +2 -0
  142. package/dist/bellhop-core/p-53dbd8bd.entry.js.map +1 -0
  143. package/dist/bellhop-core/p-59e4c008.entry.js +2 -0
  144. package/dist/bellhop-core/p-59e4c008.entry.js.map +1 -0
  145. package/dist/bellhop-core/{p-62235d6e.entry.js → p-5a0b2d81.entry.js} +2 -2
  146. package/dist/bellhop-core/{p-07c9b7fa.entry.js → p-6626f089.entry.js} +2 -2
  147. package/dist/bellhop-core/{p-36166900.entry.js → p-6b428841.entry.js} +2 -2
  148. package/dist/bellhop-core/{p-6bc81ebb.entry.js → p-6d4c6b6f.entry.js} +2 -2
  149. package/dist/bellhop-core/{p-c0e36166.entry.js → p-6dad737e.entry.js} +2 -2
  150. package/dist/bellhop-core/{p-5c4f74b8.entry.js → p-738f24c8.entry.js} +2 -2
  151. package/dist/bellhop-core/{p-49edd1bb.entry.js → p-7534a8d4.entry.js} +2 -2
  152. package/dist/bellhop-core/p-7b0a4c99.entry.js +2 -0
  153. package/dist/bellhop-core/{p-7a85db89.entry.js.map → p-7b0a4c99.entry.js.map} +1 -1
  154. package/dist/bellhop-core/{p-7b0cba50.entry.js → p-84ecaf3b.entry.js} +2 -2
  155. package/dist/bellhop-core/{p-DY76Ee-p.js → p-940af1e0.entry.js} +2 -2
  156. package/dist/bellhop-core/p-940af1e0.entry.js.map +1 -0
  157. package/dist/bellhop-core/p-c0dfca99.entry.js +2 -0
  158. package/dist/bellhop-core/{p-4e483d25.entry.js.map → p-c0dfca99.entry.js.map} +1 -1
  159. package/dist/bellhop-core/{p-d5bf49ab.entry.js → p-cad28e7e.entry.js} +2 -2
  160. package/dist/bellhop-core/{p-1540001e.entry.js → p-cb0e4e35.entry.js} +2 -2
  161. package/dist/bellhop-core/{p-091171da.entry.js → p-ce2aaf37.entry.js} +2 -2
  162. package/dist/bellhop-core/p-d64525f4.entry.js +2 -0
  163. package/dist/bellhop-core/p-d64525f4.entry.js.map +1 -0
  164. package/dist/bellhop-core/{p-a9c914ee.entry.js → p-e0f7b6d1.entry.js} +2 -2
  165. package/dist/bellhop-core/{p-b0dda4df.entry.js → p-e83a86d6.entry.js} +2 -2
  166. package/dist/bellhop-core/{p-2db7990e.entry.js → p-e96e5aa3.entry.js} +2 -2
  167. package/dist/bellhop-core/{p-c70d11a2.entry.js → p-ed780663.entry.js} +2 -2
  168. package/dist/bellhop-core/p-f30af956.entry.js +2 -0
  169. package/dist/bellhop-core/{p-ffb29d95.entry.js.map → p-f30af956.entry.js.map} +1 -1
  170. package/dist/bellhop-core/{p-0e34250c.entry.js → p-f4dd33af.entry.js} +2 -2
  171. package/dist/bellhop-core/{p-1be3e908.entry.js → p-fe7d5dcb.entry.js} +2 -2
  172. package/dist/bellhop-core/p-nAAobRRQ.js.map +1 -1
  173. package/dist/cjs/bellhop-core.cjs.js +1 -1
  174. package/dist/cjs/bellhop-core.cjs.js.map +1 -1
  175. package/dist/cjs/bh-accordion-item.cjs.entry.js +1 -1
  176. package/dist/cjs/bh-autocomplete-menu_2.cjs.entry.js +1 -1
  177. package/dist/cjs/bh-avatar.cjs.entry.js +1 -1
  178. package/dist/cjs/bh-avatar.entry.cjs.js.map +1 -1
  179. package/dist/cjs/bh-button.bh-loader-spinner.entry.cjs.js.map +1 -1
  180. package/dist/cjs/bh-button_2.cjs.entry.js +110 -2
  181. package/dist/cjs/bh-card.cjs.entry.js +1 -1
  182. package/dist/cjs/bh-data-grid.cjs.entry.js +132 -59
  183. package/dist/cjs/bh-data-grid.entry.cjs.js.map +1 -1
  184. package/dist/cjs/bh-date-picker-content.cjs.entry.js +2 -2
  185. package/dist/cjs/bh-date-picker-content.entry.cjs.js.map +1 -1
  186. package/dist/cjs/bh-date-picker.cjs.entry.js +15 -12
  187. package/dist/cjs/bh-date-picker.entry.cjs.js.map +1 -1
  188. package/dist/cjs/bh-date-range-picker-content.cjs.entry.js +1 -1
  189. package/dist/cjs/bh-date-range-picker.cjs.entry.js +1 -1
  190. package/dist/cjs/bh-dropdown_3.cjs.entry.js +4 -4
  191. package/dist/cjs/bh-empty-state.bh-pagination.bh-skeleton-loader.entry.cjs.js.map +1 -1
  192. package/dist/cjs/bh-empty-state_3.cjs.entry.js +199 -6
  193. package/dist/cjs/bh-featured-icon.cjs.entry.js +1 -1
  194. package/dist/cjs/bh-illustrations.cjs.entry.js +3 -3
  195. package/dist/cjs/bh-input-autocomplete.cjs.entry.js +2 -2
  196. package/dist/cjs/bh-input-number.cjs.entry.js +1 -1
  197. package/dist/cjs/bh-input-password.cjs.entry.js +1 -1
  198. package/dist/cjs/bh-input-text.bh-picker-menu.entry.cjs.js.map +1 -1
  199. package/dist/cjs/bh-input-text_2.cjs.entry.js +2 -2
  200. package/dist/cjs/bh-input-verification.cjs.entry.js +1 -1
  201. package/dist/cjs/bh-label.bh-tooltip.entry.cjs.js.map +1 -1
  202. package/dist/cjs/bh-label_2.cjs.entry.js +104 -3
  203. package/dist/cjs/bh-modal-actions.cjs.entry.js +1 -1
  204. package/dist/cjs/bh-modal-header.cjs.entry.js +4 -4
  205. package/dist/cjs/bh-month-picker-content.cjs.entry.js +2 -2
  206. package/dist/cjs/bh-month-picker-content.entry.cjs.js.map +1 -1
  207. package/dist/cjs/bh-month-picker.cjs.entry.js +2 -2
  208. package/dist/cjs/bh-month-picker.entry.cjs.js.map +1 -1
  209. package/dist/cjs/bh-notification.cjs.entry.js +1 -1
  210. package/dist/cjs/bh-page-navigation-child.cjs.entry.js +1 -1
  211. package/dist/cjs/bh-page-navigation-multi-level_2.cjs.entry.js +3 -3
  212. package/dist/cjs/bh-page-navigation.cjs.entry.js +1 -1
  213. package/dist/cjs/bh-pie-chart.cjs.entry.js +1 -1
  214. package/dist/cjs/bh-popover.cjs.entry.js +14 -76
  215. package/dist/cjs/bh-popover.entry.cjs.js.map +1 -1
  216. package/dist/cjs/bh-property-switcher.cjs.entry.js +1 -1
  217. package/dist/cjs/bh-sidebar.cjs.entry.js +1 -1
  218. package/dist/cjs/bh-tab-item.cjs.entry.js +2 -2
  219. package/dist/cjs/bh-tabs.cjs.entry.js +1 -1
  220. package/dist/cjs/bh-textarea.cjs.entry.js +1 -1
  221. package/dist/cjs/bh-toggle.cjs.entry.js +1 -1
  222. package/dist/cjs/bh-trend-chart.cjs.entry.js +2 -2
  223. package/dist/cjs/index-DQwSUT6k.js +42 -50
  224. package/dist/cjs/index-DQwSUT6k.js.map +1 -1
  225. package/dist/cjs/index.cjs.js +0 -31
  226. package/dist/cjs/index.cjs.js.map +1 -1
  227. package/dist/cjs/loader.cjs.js +1 -1
  228. package/dist/collection/collection-manifest.json +1 -3
  229. package/dist/collection/components/bh-accordion/bh-accordion.js +1 -1
  230. package/dist/collection/components/bh-accordion-item/bh-accordion-item.js +1 -1
  231. package/dist/collection/components/bh-appbar/bh-appbar.js +2 -2
  232. package/dist/collection/components/bh-autocomplete-menu/bh-autocomplete-menu.js +2 -2
  233. package/dist/collection/components/bh-avatar/bh-avatar.css +0 -1
  234. package/dist/collection/components/bh-avatar/bh-avatar.js +3 -3
  235. package/dist/collection/components/bh-avatar-add/bh-avatar-add.js +1 -1
  236. package/dist/collection/components/bh-avatar-stacked/bh-avatar-stacked.js +1 -1
  237. package/dist/collection/components/bh-badge/bh-badge.js +3 -3
  238. package/dist/collection/components/bh-badge-dot/bh-badge-dot.js +2 -2
  239. package/dist/collection/components/bh-bar-chart/bh-bar-chart.js +3 -3
  240. package/dist/collection/components/bh-breadcrumbs/bh-breadcrumbs.js +2 -2
  241. package/dist/collection/components/bh-button/bh-button.js +7 -7
  242. package/dist/collection/components/bh-button/bh-button.js.map +1 -1
  243. package/dist/collection/components/bh-button-icon/bh-button-icon.js +3 -3
  244. package/dist/collection/components/bh-card/bh-card.js +1 -1
  245. package/dist/collection/components/bh-card-footer/bh-card-footer.js +1 -1
  246. package/dist/collection/components/bh-card-header/bh-card-header.js +2 -2
  247. package/dist/collection/components/bh-chart-tooltip/bh-chart-tooltip.js +1 -1
  248. package/dist/collection/components/bh-checkbox/bh-checkbox.js +1 -1
  249. package/dist/collection/components/bh-checkbox-group/bh-checkbox-group.js +1 -1
  250. package/dist/collection/components/bh-checkbox-group-item/bh-checkbox-group-item.js +2 -2
  251. package/dist/collection/components/bh-data-grid/bh-data-grid.css +86 -68
  252. package/dist/collection/components/bh-data-grid/bh-data-grid.js +132 -59
  253. package/dist/collection/components/bh-data-grid/bh-data-grid.js.map +1 -1
  254. package/dist/collection/components/bh-date-picker/bh-date-picker.css +24 -214
  255. package/dist/collection/components/bh-date-picker/bh-date-picker.js +22 -12
  256. package/dist/collection/components/bh-date-picker/bh-date-picker.js.map +1 -1
  257. package/dist/collection/components/bh-date-picker-content/bh-date-picker-content.css +0 -206
  258. package/dist/collection/components/bh-date-picker-content/bh-date-picker-content.js +7 -7
  259. package/dist/collection/components/bh-date-range-picker/bh-date-range-picker.js +2 -2
  260. package/dist/collection/components/bh-date-range-picker-content/bh-date-range-picker-content.js +4 -4
  261. package/dist/collection/components/bh-dropdown/bh-dropdown.js +5 -5
  262. package/dist/collection/components/bh-dropdown-menu/bh-dropdown-menu.js +3 -3
  263. package/dist/collection/components/bh-empty-state/bh-empty-state.js +2 -2
  264. package/dist/collection/components/bh-featured-icon/bh-featured-icon.js +4 -4
  265. package/dist/collection/components/bh-illustrations/bh-illustrations.js +4 -4
  266. package/dist/collection/components/bh-input-autocomplete/bh-input-autocomplete.js +3 -3
  267. package/dist/collection/components/bh-input-number/bh-input-number.js +1 -1
  268. package/dist/collection/components/bh-input-password/bh-input-password.js +1 -1
  269. package/dist/collection/components/bh-input-text/bh-input-text.js +1 -1
  270. package/dist/collection/components/bh-input-verification/bh-input-verification.js +3 -3
  271. package/dist/collection/components/bh-label/bh-label.js +1 -1
  272. package/dist/collection/components/bh-loader-spinner/bh-loader-spinner.js +2 -2
  273. package/dist/collection/components/bh-logo-box/bh-logo-box.js +2 -2
  274. package/dist/collection/components/bh-modal/bh-modal.js +1 -1
  275. package/dist/collection/components/bh-modal-actions/bh-modal-actions.js +2 -2
  276. package/dist/collection/components/bh-modal-header/bh-modal-header.js +4 -4
  277. package/dist/collection/components/bh-month-picker/bh-month-picker.css +0 -206
  278. package/dist/collection/components/bh-month-picker/bh-month-picker.js +2 -2
  279. package/dist/collection/components/bh-month-picker-content/bh-month-picker-content.css +0 -206
  280. package/dist/collection/components/bh-month-picker-content/bh-month-picker-content.js +5 -5
  281. package/dist/collection/components/bh-notification/bh-notification.js +2 -2
  282. package/dist/collection/components/bh-page-navigation/bh-page-navigation.js +2 -2
  283. package/dist/collection/components/bh-page-navigation-child/bh-page-navigation-child.js +1 -1
  284. package/dist/collection/components/bh-page-navigation-multi-level/bh-page-navigation-multi-level.js +3 -3
  285. package/dist/collection/components/bh-page-navigation-single-level/bh-page-navigation-single-level.js +1 -1
  286. package/dist/collection/components/bh-pagination/bh-pagination.css +122 -58
  287. package/dist/collection/components/bh-pagination/bh-pagination.js +74 -30
  288. package/dist/collection/components/bh-pagination/bh-pagination.js.map +1 -1
  289. package/dist/collection/components/bh-picker-menu/bh-picker-menu.css +1 -3
  290. package/dist/collection/components/bh-pie-chart/bh-pie-chart.js +3 -3
  291. package/dist/collection/components/bh-popover/bh-popover.css +77 -260
  292. package/dist/collection/components/bh-popover/bh-popover.js +33 -238
  293. package/dist/collection/components/bh-popover/bh-popover.js.map +1 -1
  294. package/dist/collection/components/bh-product-switcher/bh-product-switcher.js +3 -3
  295. package/dist/collection/components/bh-property-switcher/bh-property-switcher.js +3 -3
  296. package/dist/collection/components/bh-radio-button/bh-radio-button.js +1 -1
  297. package/dist/collection/components/bh-sidebar/bh-nav-item.js +1 -1
  298. package/dist/collection/components/bh-sidebar/bh-sidebar.js +4 -4
  299. package/dist/collection/components/bh-skeleton-loader/bh-skeleton-loader.css +9 -22
  300. package/dist/collection/components/bh-skeleton-loader/bh-skeleton-loader.js +2 -2
  301. package/dist/collection/components/bh-skeleton-loader/bh-skeleton-loader.js.map +1 -1
  302. package/dist/collection/components/bh-tab-item/bh-tab-item.js +2 -2
  303. package/dist/collection/components/bh-tabs/bh-tabs.js +3 -3
  304. package/dist/collection/components/bh-tag/bh-tag.js +3 -3
  305. package/dist/collection/components/bh-textarea/bh-textarea.js +2 -2
  306. package/dist/collection/components/bh-toggle/bh-toggle.js +2 -2
  307. package/dist/collection/components/bh-tooltip/bh-tooltip.js +3 -3
  308. package/dist/collection/components/bh-trend-chart/bh-trend-chart.js +4 -4
  309. package/dist/collection/index.js +1 -23
  310. package/dist/collection/index.js.map +1 -1
  311. package/dist/esm/bellhop-core.js +1 -1
  312. package/dist/esm/bellhop-core.js.map +1 -1
  313. package/dist/esm/bh-accordion-item.entry.js +1 -1
  314. package/dist/esm/bh-autocomplete-menu_2.entry.js +1 -1
  315. package/dist/esm/bh-avatar.entry.js +1 -1
  316. package/dist/esm/bh-avatar.entry.js.map +1 -1
  317. package/dist/esm/bh-button.bh-loader-spinner.entry.js.map +1 -1
  318. package/dist/esm/bh-button_2.entry.js +111 -3
  319. package/dist/esm/bh-card.entry.js +1 -1
  320. package/dist/esm/bh-data-grid.entry.js +132 -59
  321. package/dist/esm/bh-data-grid.entry.js.map +1 -1
  322. package/dist/esm/bh-date-picker-content.entry.js +2 -2
  323. package/dist/esm/bh-date-picker-content.entry.js.map +1 -1
  324. package/dist/esm/bh-date-picker.entry.js +16 -13
  325. package/dist/esm/bh-date-picker.entry.js.map +1 -1
  326. package/dist/esm/bh-date-range-picker-content.entry.js +1 -1
  327. package/dist/esm/bh-date-range-picker.entry.js +1 -1
  328. package/dist/esm/bh-dropdown_3.entry.js +4 -4
  329. package/dist/esm/bh-empty-state.bh-pagination.bh-skeleton-loader.entry.js.map +1 -1
  330. package/dist/esm/bh-empty-state_3.entry.js +199 -6
  331. package/dist/esm/bh-featured-icon.entry.js +1 -1
  332. package/dist/esm/bh-illustrations.entry.js +3 -3
  333. package/dist/esm/bh-input-autocomplete.entry.js +2 -2
  334. package/dist/esm/bh-input-number.entry.js +1 -1
  335. package/dist/esm/bh-input-password.entry.js +1 -1
  336. package/dist/esm/bh-input-text.bh-picker-menu.entry.js.map +1 -1
  337. package/dist/esm/bh-input-text_2.entry.js +2 -2
  338. package/dist/esm/bh-input-verification.entry.js +1 -1
  339. package/dist/esm/bh-label.bh-tooltip.entry.js.map +1 -1
  340. package/dist/esm/bh-label_2.entry.js +105 -4
  341. package/dist/esm/bh-modal-actions.entry.js +1 -1
  342. package/dist/esm/bh-modal-header.entry.js +4 -4
  343. package/dist/esm/bh-month-picker-content.entry.js +2 -2
  344. package/dist/esm/bh-month-picker-content.entry.js.map +1 -1
  345. package/dist/esm/bh-month-picker.entry.js +2 -2
  346. package/dist/esm/bh-month-picker.entry.js.map +1 -1
  347. package/dist/esm/bh-notification.entry.js +1 -1
  348. package/dist/esm/bh-page-navigation-child.entry.js +1 -1
  349. package/dist/esm/bh-page-navigation-multi-level_2.entry.js +3 -3
  350. package/dist/esm/bh-page-navigation.entry.js +1 -1
  351. package/dist/esm/bh-pie-chart.entry.js +1 -1
  352. package/dist/esm/bh-popover.entry.js +15 -77
  353. package/dist/esm/bh-popover.entry.js.map +1 -1
  354. package/dist/esm/bh-property-switcher.entry.js +1 -1
  355. package/dist/esm/bh-sidebar.entry.js +1 -1
  356. package/dist/esm/bh-tab-item.entry.js +2 -2
  357. package/dist/esm/bh-tabs.entry.js +1 -1
  358. package/dist/esm/bh-textarea.entry.js +1 -1
  359. package/dist/esm/bh-toggle.entry.js +1 -1
  360. package/dist/esm/bh-trend-chart.entry.js +2 -2
  361. package/dist/esm/index-nAAobRRQ.js +42 -50
  362. package/dist/esm/index-nAAobRRQ.js.map +1 -1
  363. package/dist/esm/index.js +1 -15
  364. package/dist/esm/index.js.map +1 -1
  365. package/dist/esm/loader.js +1 -1
  366. package/dist/types/components/bh-date-picker/bh-date-picker.d.ts +11 -1
  367. package/dist/types/components/bh-pagination/bh-pagination.d.ts +7 -7
  368. package/dist/types/components/bh-popover/bh-popover.d.ts +9 -49
  369. package/dist/types/components.d.ts +43 -193
  370. package/dist/types/index.d.ts +13 -13
  371. package/hydrate/index.js +283 -297
  372. package/hydrate/index.mjs +283 -297
  373. package/llms.txt +22000 -1428
  374. package/package.json +1 -1
  375. package/components/bh-container-footer.d.ts +0 -11
  376. package/components/bh-container-footer.js +0 -73
  377. package/components/bh-container-footer.js.map +0 -1
  378. package/components/bh-container.d.ts +0 -11
  379. package/components/bh-container.js +0 -48
  380. package/components/bh-container.js.map +0 -1
  381. package/components/p-8bOZFmdg.js.map +0 -1
  382. package/components/p-BQKx1tGq.js.map +0 -1
  383. package/components/p-CMoGgYqw.js.map +0 -1
  384. package/components/p-CdwyUif-.js.map +0 -1
  385. package/components/p-Npcwl1Z8.js.map +0 -1
  386. package/components/p-WibqGBGu.js +0 -182
  387. package/components/p-WibqGBGu.js.map +0 -1
  388. package/dist/bellhop-core/bh-container-footer.entry.esm.js.map +0 -1
  389. package/dist/bellhop-core/bh-container.entry.esm.js.map +0 -1
  390. package/dist/bellhop-core/p-233540f9.entry.js +0 -13
  391. package/dist/bellhop-core/p-233540f9.entry.js.map +0 -1
  392. package/dist/bellhop-core/p-3194a87d.entry.js +0 -2
  393. package/dist/bellhop-core/p-3194a87d.entry.js.map +0 -1
  394. package/dist/bellhop-core/p-43c41dfb.entry.js +0 -2
  395. package/dist/bellhop-core/p-43c41dfb.entry.js.map +0 -1
  396. package/dist/bellhop-core/p-4e483d25.entry.js +0 -2
  397. package/dist/bellhop-core/p-5514d7fb.entry.js +0 -2
  398. package/dist/bellhop-core/p-5514d7fb.entry.js.map +0 -1
  399. package/dist/bellhop-core/p-7a85db89.entry.js +0 -2
  400. package/dist/bellhop-core/p-80e07b3d.entry.js +0 -2
  401. package/dist/bellhop-core/p-80e07b3d.entry.js.map +0 -1
  402. package/dist/bellhop-core/p-8962e1a6.entry.js +0 -2
  403. package/dist/bellhop-core/p-8962e1a6.entry.js.map +0 -1
  404. package/dist/bellhop-core/p-CSYwm_Ke.js +0 -2
  405. package/dist/bellhop-core/p-CSYwm_Ke.js.map +0 -1
  406. package/dist/bellhop-core/p-Ck1gRAmI.js.map +0 -1
  407. package/dist/bellhop-core/p-DY76Ee-p.js.map +0 -1
  408. package/dist/bellhop-core/p-b878539a.entry.js +0 -2
  409. package/dist/bellhop-core/p-b878539a.entry.js.map +0 -1
  410. package/dist/bellhop-core/p-c33f6e73.entry.js +0 -2
  411. package/dist/bellhop-core/p-c33f6e73.entry.js.map +0 -1
  412. package/dist/bellhop-core/p-ffb29d95.entry.js +0 -2
  413. package/dist/cjs/bh-button-DD0c0ODJ.js +0 -117
  414. package/dist/cjs/bh-button-DD0c0ODJ.js.map +0 -1
  415. package/dist/cjs/bh-container-footer.cjs.entry.js +0 -38
  416. package/dist/cjs/bh-container-footer.entry.cjs.js.map +0 -1
  417. package/dist/cjs/bh-container.cjs.entry.js +0 -26
  418. package/dist/cjs/bh-container.entry.cjs.js.map +0 -1
  419. package/dist/cjs/bh-label-MpXjm9k0.js +0 -110
  420. package/dist/cjs/bh-label-MpXjm9k0.js.map +0 -1
  421. package/dist/cjs/bh-pagination-CgER63yz.js +0 -152
  422. package/dist/cjs/bh-pagination-CgER63yz.js.map +0 -1
  423. package/dist/collection/components/bh-container/bh-container.css +0 -21
  424. package/dist/collection/components/bh-container/bh-container.js +0 -51
  425. package/dist/collection/components/bh-container/bh-container.js.map +0 -1
  426. package/dist/collection/components/bh-container-footer/bh-container-footer.css +0 -22
  427. package/dist/collection/components/bh-container-footer/bh-container-footer.js +0 -106
  428. package/dist/collection/components/bh-container-footer/bh-container-footer.js.map +0 -1
  429. package/dist/esm/bh-button-ImGVvXaj.js +0 -115
  430. package/dist/esm/bh-button-ImGVvXaj.js.map +0 -1
  431. package/dist/esm/bh-container-footer.entry.js +0 -36
  432. package/dist/esm/bh-container-footer.entry.js.map +0 -1
  433. package/dist/esm/bh-container.entry.js +0 -24
  434. package/dist/esm/bh-container.entry.js.map +0 -1
  435. package/dist/esm/bh-label-PLT7t4We.js +0 -108
  436. package/dist/esm/bh-label-PLT7t4We.js.map +0 -1
  437. package/dist/esm/bh-pagination-CUeRSYsV.js +0 -150
  438. package/dist/esm/bh-pagination-CUeRSYsV.js.map +0 -1
  439. package/dist/types/components/bh-container/bh-container.d.ts +0 -7
  440. package/dist/types/components/bh-container-footer/bh-container-footer.d.ts +0 -18
  441. /package/dist/bellhop-core/{p-bd00d5ad.entry.js.map → p-06b0ba5f.entry.js.map} +0 -0
  442. /package/dist/bellhop-core/{p-4a8844ff.entry.js.map → p-0a232a85.entry.js.map} +0 -0
  443. /package/dist/bellhop-core/{p-67956598.entry.js.map → p-0e773f4b.entry.js.map} +0 -0
  444. /package/dist/bellhop-core/{p-df4498cd.entry.js.map → p-11e84742.entry.js.map} +0 -0
  445. /package/dist/bellhop-core/{p-a41b3673.entry.js.map → p-20e65b2b.entry.js.map} +0 -0
  446. /package/dist/bellhop-core/{p-a30e22f7.entry.js.map → p-2349cd39.entry.js.map} +0 -0
  447. /package/dist/bellhop-core/{p-3a1c52a9.entry.js.map → p-2cc352e8.entry.js.map} +0 -0
  448. /package/dist/bellhop-core/{p-f85a9eaa.entry.js.map → p-439f8477.entry.js.map} +0 -0
  449. /package/dist/bellhop-core/{p-21bc4f77.entry.js.map → p-4cf74f24.entry.js.map} +0 -0
  450. /package/dist/bellhop-core/{p-62235d6e.entry.js.map → p-5a0b2d81.entry.js.map} +0 -0
  451. /package/dist/bellhop-core/{p-07c9b7fa.entry.js.map → p-6626f089.entry.js.map} +0 -0
  452. /package/dist/bellhop-core/{p-36166900.entry.js.map → p-6b428841.entry.js.map} +0 -0
  453. /package/dist/bellhop-core/{p-6bc81ebb.entry.js.map → p-6d4c6b6f.entry.js.map} +0 -0
  454. /package/dist/bellhop-core/{p-c0e36166.entry.js.map → p-6dad737e.entry.js.map} +0 -0
  455. /package/dist/bellhop-core/{p-5c4f74b8.entry.js.map → p-738f24c8.entry.js.map} +0 -0
  456. /package/dist/bellhop-core/{p-49edd1bb.entry.js.map → p-7534a8d4.entry.js.map} +0 -0
  457. /package/dist/bellhop-core/{p-7b0cba50.entry.js.map → p-84ecaf3b.entry.js.map} +0 -0
  458. /package/dist/bellhop-core/{p-d5bf49ab.entry.js.map → p-cad28e7e.entry.js.map} +0 -0
  459. /package/dist/bellhop-core/{p-1540001e.entry.js.map → p-cb0e4e35.entry.js.map} +0 -0
  460. /package/dist/bellhop-core/{p-091171da.entry.js.map → p-ce2aaf37.entry.js.map} +0 -0
  461. /package/dist/bellhop-core/{p-a9c914ee.entry.js.map → p-e0f7b6d1.entry.js.map} +0 -0
  462. /package/dist/bellhop-core/{p-b0dda4df.entry.js.map → p-e83a86d6.entry.js.map} +0 -0
  463. /package/dist/bellhop-core/{p-2db7990e.entry.js.map → p-e96e5aa3.entry.js.map} +0 -0
  464. /package/dist/bellhop-core/{p-c70d11a2.entry.js.map → p-ed780663.entry.js.map} +0 -0
  465. /package/dist/bellhop-core/{p-0e34250c.entry.js.map → p-f4dd33af.entry.js.map} +0 -0
  466. /package/dist/bellhop-core/{p-1be3e908.entry.js.map → p-fe7d5dcb.entry.js.map} +0 -0
@@ -1,5 +1,113 @@
1
- export { B as bh_button } from './bh-button-ImGVvXaj.js';
2
- import { r as registerInstance, h } from './index-nAAobRRQ.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-nAAobRRQ.js';
2
+
3
+ const bhButtonCss = ":host{display:inline-block}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);font-family:var(--font-inter);font-weight:var(--weight-medium);border:1px solid transparent;cursor:pointer;text-align:center;white-space:nowrap;transition:all 0.2s ease-in-out;text-decoration:none;outline:none}.btn-xs{padding:0 var(--spacing-lg);height:24px;border-radius:var(--radius-md);font-size:var(--text-sm-size)}.btn-sm{padding:0 var(--spacing-xl);height:32px;border-radius:var(--radius-md);font-size:var(--text-sm-size)}.btn-md{padding:0 var(--spacing-xl);height:40px;border-radius:var(--radius-md);font-size:var(--text-sm-size)}.btn-lg{padding:0 var(--spacing-xl);height:48px;border-radius:var(--radius-md);gap:var(--spacing-sm);font-size:var(--text-md-size)}.btn-xs.btn-icon-leading{padding-left:var(\n --icon-compensation-xs-btn,\n calc(var(--spacing-lg) - var(--spacing-xs))\n )}.btn-sm.btn-icon-leading{padding-left:var(\n --icon-compensation-sm-btn,\n calc(var(--spacing-xl) - var(--spacing-xs))\n )}.btn-md.btn-icon-leading{padding-left:var(\n --icon-compensation-md-btn,\n calc(var(--spacing-xl) - var(--spacing-xs))\n )}.btn-lg.btn-icon-leading{padding-left:var(\n --icon-compensation-lg-btn,\n calc(var(--spacing-xl) - var(--spacing-xs))\n )}.btn-xs.btn-icon-trailing{padding-right:var(\n --icon-compensation-xs-btn,\n calc(var(--spacing-lg) - var(--spacing-xs))\n )}.btn-sm.btn-icon-trailing{padding-right:var(\n --icon-compensation-sm-btn,\n calc(var(--spacing-xl) - var(--spacing-xs))\n )}.btn-md.btn-icon-trailing{padding-right:var(\n --icon-compensation-md-btn,\n calc(var(--spacing-xl) - var(--spacing-xs))\n )}.btn-lg.btn-icon-trailing{padding-right:var(\n --icon-compensation-lg-btn,\n calc(var(--spacing-xl) - var(--spacing-xs))\n )}.btn-primary.btn-default{background-color:var(--color-brand-600);color:var(--color-white);border-color:var(--color-brand-600)}.btn-secondary.btn-default{background-color:var(--color-white);color:var(--color-neutral-600);border-color:var(--color-neutral-300)}.btn-tertiary.btn-default{background-color:transparent;color:var(--color-neutral-600);border-color:transparent}.btn-quaternary.btn-default{background-color:transparent;color:var(--color-brand-600);border-color:transparent}.btn-primary.btn-destructive{background-color:var(--color-error-600);color:var(--color-white);border-color:var(--color-error-600)}.btn-secondary.btn-destructive{background-color:var(--color-white);color:var(--color-error-600);border-color:var(--color-error-300)}.btn-tertiary.btn-destructive{background-color:transparent;color:var(--color-error-600);border-color:transparent}.btn-quaternary.btn-destructive{background-color:transparent;color:var(--color-error-600);border-color:transparent}.btn-primary.btn-success{background-color:var(--color-success-600);color:var(--color-white);border-color:var(--color-success-600)}.btn-secondary.btn-success{background-color:var(--color-white);color:var(--color-success-600);border-color:var(--color-success-300)}.btn-tertiary.btn-success{background-color:transparent;color:var(--color-success-600);border-color:transparent}.btn-quaternary.btn-success{background-color:transparent;color:var(--color-success-600);border-color:transparent}.btn-primary.btn-default:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-brand-700);border-color:var(--color-brand-700)}.btn-secondary.btn-default:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-neutral-50);color:var(--color-neutral-700);border-color:var(--color-neutral-400)}.btn-tertiary.btn-default:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-neutral-100);color:var(--color-neutral-700)}.btn-quaternary.btn-default:hover:not(:disabled):not(.btn-disabled){color:var(--color-brand-700)}.btn-primary.btn-destructive:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-error-700);border-color:var(--color-error-700)}.btn-secondary.btn-destructive:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-error-50);border-color:var(--color-error-300)}.btn-tertiary.btn-destructive:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-error-50)}.btn-quaternary.btn-destructive:hover:not(:disabled):not(.btn-disabled){color:var(--color-error-700)}.btn-primary.btn-success:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-success-700);border-color:var(--color-success-700)}.btn-secondary.btn-success:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-success-50);border-color:var(--color-success-300)}.btn-tertiary.btn-success:hover:not(:disabled):not(.btn-disabled){background-color:var(--color-success-50)}.btn-quaternary.btn-success:hover:not(:disabled):not(.btn-disabled){color:var(--color-success-700)}.btn-primary.btn-default:active:not(:disabled):not(.btn-disabled){background-color:var(--color-brand-800);border-color:var(--color-brand-800)}.btn-secondary.btn-default:active:not(:disabled):not(.btn-disabled){background-color:var(--color-neutral-100);border-color:var(--color-neutral-500)}.btn-tertiary.btn-default:active:not(:disabled):not(.btn-disabled){background-color:var(--color-neutral-100)}.btn-quaternary.btn-default:active:not(:disabled):not(.btn-disabled){color:var(--color-brand-800)}.btn-primary.btn-destructive:active:not(:disabled):not(.btn-disabled){background-color:var(--color-error-800);border-color:var(--color-error-800)}.btn-secondary.btn-destructive:active:not(:disabled):not(.btn-disabled){background-color:var(--color-error-100);border-color:var(--color-error-400)}.btn-tertiary.btn-destructive:active:not(:disabled):not(.btn-disabled){background-color:var(--color-error-100)}.btn-quaternary.btn-destructive:active:not(:disabled):not(.btn-disabled){color:var(--color-error-800)}.btn-primary.btn-success:active:not(:disabled):not(.btn-disabled){background-color:var(--color-success-800);border-color:var(--color-success-800)}.btn-secondary.btn-success:active:not(:disabled):not(.btn-disabled){background-color:var(--color-success-100);border-color:var(--color-success-400)}.btn-tertiary.btn-success:active:not(:disabled):not(.btn-disabled){background-color:var(--color-success-100)}.btn-quaternary.btn-success:active:not(:disabled):not(.btn-disabled){color:var(--color-success-800)}.btn.btn-default:focus,.btn.btn-default:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:2px}.btn.btn-destructive:focus,.btn.btn-destructive:focus-visible{outline:2px solid var(--color-error-500);outline-offset:2px}.btn.btn-success:focus,.btn.btn-success:focus-visible{outline:2px solid var(--color-success-500);outline-offset:2px}.btn:disabled,.btn-disabled{cursor:not-allowed;pointer-events:none}.btn-primary:disabled,.btn-primary.btn-disabled{background-color:var(--color-neutral-200);color:var(--color-neutral-400);border-color:var(--color-neutral-200)}.btn-secondary:disabled,.btn-secondary.btn-disabled,.btn-tertiary:disabled,.btn-tertiary.btn-disabled,.btn-quaternary:disabled,.btn-quaternary.btn-disabled{opacity:0.5}.btn-loading{cursor:wait;pointer-events:none}.btn-loading .btn-label{opacity:0.7}.btn-label{display:inline-block;line-height:inherit}.btn-quaternary .btn-label{text-decoration:underline}.btn-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-icon-material{line-height:1;vertical-align:middle;color:inherit !important}.btn-xs .btn-icon-material{font-size:var(--text-sm-size)}.btn-sm .btn-icon-material{font-size:var(--text-md-size)}.btn-md .btn-icon-material{font-size:var(--text-lg-size)}.btn-lg .btn-icon-material{font-size:var(--text-lg-size)}.btn-icon-only{padding:0}.btn-icon-only.btn-xs{width:24px;height:24px}.btn-icon-only.btn-sm{width:32px;height:32px}.btn-icon-only.btn-md{width:40px;height:40px}.btn-icon-only.btn-lg{width:48px;height:48px}.btn-icon-only .btn-icon-material{margin:0}.btn-loading-icon{line-height:1;vertical-align:middle;color:inherit;animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.text-sm{font-size:var(--text-sm-size);line-height:var(--text-sm-line)}.text-md{font-size:var(--text-md-size);line-height:var(--text-md-line)}.icon-md{width:20px;height:20px}.icon-lg{width:24px;height:24px}";
4
+
5
+ const BhButton = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.bhClick = createEvent(this, "bhClick");
9
+ }
10
+ /**
11
+ * The visual hierarchy of the button
12
+ */
13
+ hierarchy = 'primary';
14
+ /**
15
+ * The kind/semantic meaning of the button
16
+ */
17
+ kind = 'default';
18
+ /**
19
+ * Icon position relative to the label
20
+ */
21
+ icon = 'none';
22
+ /**
23
+ * The size of the button
24
+ */
25
+ size = 'sm';
26
+ /**
27
+ * Fallback text label (used only if no slot content is provided)
28
+ */
29
+ label;
30
+ /**
31
+ * Material Symbols icon name (e.g., 'add', 'edit', 'delete')
32
+ */
33
+ iconName;
34
+ /**
35
+ * Whether the button is disabled
36
+ */
37
+ disabled = false;
38
+ /**
39
+ * Whether the button is in a loading state
40
+ */
41
+ loading = false;
42
+ /**
43
+ * The type of button for form submission
44
+ * - 'button': No form submission (default)
45
+ * - 'submit': Submits the form
46
+ * - 'reset': Resets the form
47
+ */
48
+ type = 'button';
49
+ /**
50
+ * Emitted when the button is clicked
51
+ */
52
+ bhClick;
53
+ handleClick = (event) => {
54
+ if (!this.disabled && !this.loading) {
55
+ this.bhClick.emit(event);
56
+ }
57
+ };
58
+ getIconSizeClass() {
59
+ switch (this.size) {
60
+ case 'sm':
61
+ case 'md':
62
+ return 'icon-md';
63
+ case 'lg':
64
+ return 'icon-lg';
65
+ default:
66
+ return 'icon-md';
67
+ }
68
+ }
69
+ getTextSizeClass() {
70
+ switch (this.size) {
71
+ case 'sm':
72
+ case 'md':
73
+ return 'text-sm';
74
+ case 'lg':
75
+ return 'text-md';
76
+ default:
77
+ return 'text-sm';
78
+ }
79
+ }
80
+ getLoaderSize() {
81
+ switch (this.size) {
82
+ case 'xs':
83
+ case 'sm':
84
+ return 'sm';
85
+ default:
86
+ return 'sm';
87
+ }
88
+ }
89
+ getLoaderVariant() {
90
+ // Primary buttons (all kinds) have dark background, so use white spinner
91
+ return this.hierarchy === 'primary' ? 'white' : 'default';
92
+ }
93
+ render() {
94
+ const showLabel = this.icon !== 'only';
95
+ const showLeadingIcon = this.icon === 'leading' && (this.iconName || this.loading);
96
+ const showTrailingIcon = this.icon === 'trailing' && this.iconName && !this.loading;
97
+ const showOnlyIcon = this.icon === 'only' && (this.iconName || this.loading);
98
+ const buttonClasses = {
99
+ btn: true,
100
+ [`btn-${this.hierarchy}`]: true,
101
+ [`btn-${this.kind}`]: true,
102
+ [`btn-${this.size}`]: true,
103
+ [`btn-icon-${this.icon}`]: true,
104
+ 'btn-disabled': this.disabled,
105
+ 'btn-loading': this.loading,
106
+ };
107
+ return (h("button", { key: 'f2f54633cb42a7fea15c38aa8bc24be085320dc9', type: this.type, class: buttonClasses, disabled: this.disabled, onClick: this.handleClick, part: "button" }, showLeadingIcon && (h("span", { key: '682a4704e4f874b4f3d051aab4738829cbd47778', class: `btn-icon ${this.getIconSizeClass()}` }, this.loading ? (h("bh-loader-spinner", { size: this.getLoaderSize(), variant: this.getLoaderVariant() })) : (h("span", { class: "btn-icon-material material-symbols-outlined" }, this.iconName)))), showOnlyIcon && (h("span", { key: '767e0ee41843e2ef8b3a45ec82f15602848ad751', class: `btn-icon ${this.getIconSizeClass()}` }, this.loading ? (h("bh-loader-spinner", { size: this.getLoaderSize(), variant: this.getLoaderVariant() })) : (h("span", { class: "btn-icon-material material-symbols-outlined" }, this.iconName)))), showLabel && (h("span", { key: 'bb2ddbcf7eb35dd5af688a6fc6d61d07f67d90ba', class: `btn-label ${this.getTextSizeClass()}` }, h("slot", { key: '010690eeab4cea1205d2ebca5cc2e1bfc95048c7' }, this.label))), showTrailingIcon && (h("span", { key: '9de8df1ab10e9035affbd766fea95896762e2bca', class: `btn-icon ${this.getIconSizeClass()}` }, h("span", { key: 'b50370274c0513a7885eae4bf40235c3e7e245aa', class: "btn-icon-material material-symbols-outlined" }, this.iconName)))));
108
+ }
109
+ };
110
+ BhButton.style = bhButtonCss;
3
111
 
4
112
  const bhLoaderSpinnerCss = ":host{display:inline-block}.loader-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.3);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999}.loader-overlay-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.loader-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.loader-spinner{position:relative;display:inline-block}.loader-message{color:var(--color-neutral-700);font-size:var(--text-sm-size);line-height:var(--text-sm-line);font-weight:var(--weight-medium);text-align:center;margin-top:var(--spacing-xs)}.loader-overlay .loader-message{color:var(--color-white)}.spinner-gradient{animation:gradient-rotate 2s linear infinite;will-change:transform}.gradient-svg{display:block;transform-origin:50% 50%}.gradient-path{stroke-dasharray:90, 150;stroke-dashoffset:0;animation:gradient-dash 1.5s ease-in-out infinite;transform-origin:50% 50%}.size-sm .gradient-svg{width:20px;height:20px}.size-sm .gradient-path{stroke-width:5}.size-md .gradient-svg{width:30px;height:30px}.size-md .gradient-path{stroke-width:5}.size-lg .gradient-svg{width:40px;height:40px}.size-lg .gradient-path{stroke-width:5}.size-xl .gradient-svg{width:60px;height:60px}.size-xl .gradient-path{stroke-width:6}@keyframes gradient-rotate{100%{transform:rotate(360deg)}}@keyframes gradient-dash{0%{stroke-dasharray:1, 150;stroke-dashoffset:0}50%{stroke-dasharray:90, 150;stroke-dashoffset:-35}100%{stroke-dasharray:90, 150;stroke-dashoffset:-124}}.loader-container:hover .spinner-gradient{animation-duration:1s}.loader-container:hover .gradient-path{animation-duration:0.6s}.spinner-gradient{backface-visibility:hidden;perspective:1000px}.gradient-svg{transform:translateZ(0)}";
5
113
 
@@ -40,5 +148,5 @@ const BhLoaderSpinner = class {
40
148
  };
41
149
  BhLoaderSpinner.style = bhLoaderSpinnerCss;
42
150
 
43
- export { BhLoaderSpinner as bh_loader_spinner };
151
+ export { BhButton as bh_button, BhLoaderSpinner as bh_loader_spinner };
44
152
  //# sourceMappingURL=bh-button.bh-loader-spinner.entry.js.map
@@ -37,7 +37,7 @@ const BhCard = class {
37
37
  const contentStyle = {
38
38
  minHeight: `${this.contentMinHeight}px`,
39
39
  };
40
- return (h(Host, { key: '2f01aa3ee4b9cdeb1d5f0f16a961af880e11d0fb' }, h("div", { key: '4f4542a1f24dc9db216fef1e361efff54cb5f538', class: "card" }, this.showHeader && (h("div", { key: 'c290615fb8b36c965ac6a032963f2b4e78c22a29', class: "card-header-slot" }, h("slot", { key: '35d78f934a0a8486a62ff17897537cc0afd355a7', name: "header" }))), h("div", { key: 'bfd8a8827ea13baad0862ed5d962853ceed4be4e', class: "card-content", style: contentStyle }, h("slot", { key: 'b43aad6dfb675e4fd32f9614ba83f67aac264aa0' }), !this.hasContent && (h("div", { key: 'a9cf30bb2b1a9a0ab4baf6fa9d8514181f1e79c5', class: "card-content-placeholder" }, h("span", { key: '7d46bf5c2246cd8d9bd2d73695d9b55a1ba6112c', class: "card-placeholder-text" }, this.placeholderText)))), this.showFooter && (h("div", { key: '5588ba1dcc017c899909917f31961414dc4ffd9e', class: "card-footer-slot" }, h("slot", { key: 'ff28528d0090a67061fc7cd63f7df68662d908a8', name: "footer" }))))));
40
+ return (h(Host, { key: '31c722ab510a95909c875f389116ff547f3fb119' }, h("div", { key: 'b5390ca668bd29974154f7b0b831a4ce98b45394', class: "card" }, this.showHeader && (h("div", { key: 'df7f16b333cb5b8f651175c6c8299b35b90e16f2', class: "card-header-slot" }, h("slot", { key: '978b518b1ae6087bcb96846aa5c802524748bd14', name: "header" }))), h("div", { key: '7a1b7437e801d9b547d7bcd45639baf0774c34d7', class: "card-content", style: contentStyle }, h("slot", { key: '6c22feff58b21f0aec25c6f547d1443bf1f88f9d' }), !this.hasContent && (h("div", { key: '4b42011a00526f859a967a07fefd028cf9903f41', class: "card-content-placeholder" }, h("span", { key: '25fc157be159aae504164dd4dcb0faa9df632756', class: "card-placeholder-text" }, this.placeholderText)))), this.showFooter && (h("div", { key: '115e111772a1446b874e6f02f025fde54becd0a3', class: "card-footer-slot" }, h("slot", { key: '2cd029465310d2db438a684a3f6009e234b14c1b', name: "footer" }))))));
41
41
  }
42
42
  };
43
43
  BhCard.style = bhCardCss;
@@ -3409,7 +3409,7 @@ function getSortedRowModel() {
3409
3409
  }, getMemoOptions(table.options, 'debugTable', 'getSortedRowModel', () => table._autoResetPageIndex()));
3410
3410
  }
3411
3411
 
3412
- const bhDataGridCss = ":host{display:block;font-family:var(--font-family-body, 'Inter', sans-serif)}.data-grid{display:flex;flex-direction:column;background-color:var(--color-white, #fff);border:1px solid var(--color-neutral-200, #e2e4eb);border-radius:var(--radius-lg, 8px);overflow:hidden}.data-grid-container{position:relative;overflow:auto}.data-grid-table{display:table;width:100%;border-collapse:collapse}.data-grid-compact .data-grid-header-cell,.data-grid-compact .data-grid-cell,.data-grid-compact .data-grid-filter-cell{padding:var(--sp-1-5, 6px) var(--sp-2, 8px);font-size:0.75rem}.data-grid-compact .data-grid-row{height:32px}.data-grid-default .data-grid-header-cell,.data-grid-default .data-grid-cell,.data-grid-default .data-grid-filter-cell{padding:var(--sp-2, 8px) var(--sp-3, 12px);font-size:0.875rem}.data-grid-default .data-grid-row{height:44px}.data-grid-relaxed .data-grid-header-cell,.data-grid-relaxed .data-grid-cell,.data-grid-relaxed .data-grid-filter-cell{padding:var(--sp-3, 12px) var(--sp-4, 16px);font-size:0.875rem}.data-grid-relaxed .data-grid-row{height:56px}.data-grid-bordered .data-grid-cell,.data-grid-bordered .data-grid-header-cell,.data-grid-bordered .data-grid-filter-cell{border:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-bordered .data-grid-header-cell{border-bottom-width:2px}.data-grid-striped .data-grid-row-striped{background-color:var(--color-neutral-50, #fafafc)}.data-grid-caption{padding:var(--sp-3, 12px) var(--sp-4, 16px);font-size:0.875rem;font-weight:500;color:var(--color-neutral-700, #4d5266)}.data-grid-caption-top{border-bottom:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-caption-bottom{border-top:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-global-filter{display:flex;align-items:center;gap:var(--sp-2, 8px);padding:var(--sp-3, 12px) var(--sp-4, 16px);border-bottom:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-search-icon{font-size:20px;color:var(--color-neutral-400, #939ab4)}.data-grid-global-filter-input{flex:1;padding:var(--sp-2, 8px) var(--sp-3, 12px);border:1px solid var(--color-neutral-300, #c0c4d4);border-radius:var(--radius-md, 6px);font-size:0.875rem;color:var(--color-neutral-900, #141624);background-color:var(--color-white, #fff);transition:border-color 0.15s ease, box-shadow 0.15s ease}.data-grid-global-filter-input:focus{outline:none;border-color:var(--color-brand-500, #6366f1);box-shadow:0 0 0 3px var(--color-brand-100, #e0e1fc)}.data-grid-global-filter-input::placeholder{color:var(--color-neutral-400, #939ab4)}.data-grid-header{display:table-header-group;background-color:var(--color-neutral-50, #fafafc)}.data-grid-header-sticky{position:sticky;top:0;z-index:10}.data-grid-header-row{display:table-row}.data-grid-header-cell{display:table-cell;vertical-align:middle;text-align:left;font-weight:600;color:var(--color-neutral-700, #4d5266);border-bottom:1px solid var(--color-neutral-200, #e2e4eb);white-space:nowrap;user-select:none}.data-grid-header-cell-sortable{cursor:pointer;transition:background-color 0.15s ease}.data-grid-header-cell-sortable:hover{background-color:var(--color-neutral-100, #f0f1f5)}.data-grid-header-cell-sorted{color:var(--color-brand-600, #4f46e5)}.data-grid-header-text{display:inline-flex;align-items:center;gap:var(--sp-1, 4px)}.data-grid-sort-icon{font-size:16px;color:var(--color-brand-600, #4f46e5)}.data-grid-filter-row{display:table-row;background-color:var(--color-neutral-25, #fcfcfe)}.data-grid-filter-cell{display:table-cell;vertical-align:middle;border-bottom:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-filter-input{width:100%;padding:var(--sp-1-5, 6px) var(--sp-2, 8px);border:1px solid var(--color-neutral-300, #c0c4d4);border-radius:var(--radius-sm, 4px);font-size:0.75rem;color:var(--color-neutral-900, #141624);background-color:var(--color-white, #fff);transition:border-color 0.15s ease}.data-grid-filter-input:focus{outline:none;border-color:var(--color-brand-500, #6366f1)}.data-grid-filter-input::placeholder{color:var(--color-neutral-400, #939ab4)}.data-grid-body{display:table-row-group}.data-grid-row{display:table-row;transition:background-color 0.1s ease}.data-grid-row-hover,.data-grid-row:hover{background-color:var(--color-neutral-50, #fafafc)}.data-grid-row-selected{background-color:var(--color-brand-50, #eef2ff) !important}.data-grid-row-selected:hover{background-color:var(--color-brand-100, #e0e7ff) !important}.data-grid-row-clickable{cursor:pointer}.data-grid-row-editing{background-color:var(--color-warning-50, #fffbeb) !important}.data-grid-cell{display:table-cell;vertical-align:middle;color:var(--color-neutral-900, #141624);border-bottom:1px solid var(--color-neutral-100, #f0f1f5)}.data-grid-cell-align-left{text-align:left}.data-grid-cell-align-center{text-align:center}.data-grid-cell-align-right{text-align:right}.data-grid-cell-type-number{font-variant-numeric:tabular-nums}.data-grid-cell-editable{cursor:cell}.data-grid-cell-editable:hover{background-color:var(--color-brand-25, #f5f8ff)}.data-grid-cell-editing{padding:var(--sp-1, 4px) !important}.data-grid-cell-error{position:relative}.data-grid-cell-error-text{position:absolute;bottom:2px;left:4px;font-size:0.625rem;color:var(--color-error-600, #dc2626)}.data-grid-cell-select{width:40px;min-width:40px;max-width:40px;text-align:center}.data-grid-cell-expand{width:40px;min-width:40px;max-width:40px;text-align:center}.data-grid-cell-actions{width:80px;min-width:80px;max-width:80px;text-align:center}.data-grid-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md, 6px);background-color:transparent;color:var(--color-neutral-500, #6b7280);cursor:pointer;transition:background-color 0.15s ease, color 0.15s ease}.data-grid-expand-btn:hover{background-color:var(--color-neutral-100, #f0f1f5);color:var(--color-neutral-700, #4d5266)}.data-grid-expand-btn .material-symbols-outlined{font-size:20px;transition:transform 0.15s ease}.data-grid-row-expanded .data-grid-expand-btn .material-symbols-outlined{transform:rotate(90deg)}.data-grid-row-expansion{display:table-row;background-color:var(--color-neutral-50, #fafafc)}.data-grid-row-expansion>*{display:table-cell;padding:var(--sp-4, 16px);border-bottom:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-row-group{background-color:var(--color-neutral-100, #f0f1f5);cursor:pointer}.data-grid-row-group:hover{background-color:var(--color-neutral-200, #e2e4eb)}.data-grid-cell-group-label{display:flex;align-items:center;gap:var(--sp-2, 8px);font-weight:500}.data-grid-group-toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-neutral-600, #5c627a);cursor:pointer}.data-grid-group-toggle .material-symbols-outlined{font-size:20px;transition:transform 0.15s ease}.data-grid-row-group-expanded .data-grid-group-toggle .material-symbols-outlined{transform:rotate(90deg)}.data-grid-group-label{display:inline-flex;align-items:center;gap:var(--sp-1, 4px)}.data-grid-group-column{color:var(--color-neutral-500, #6b7280)}.data-grid-group-value{color:var(--color-neutral-900, #141624);font-weight:600}.data-grid-group-count{color:var(--color-neutral-400, #939ab4);font-size:0.75rem;font-weight:400}.data-grid-edit-input{width:100%;padding:var(--sp-1-5, 6px) var(--sp-2, 8px);border:1px solid var(--color-brand-400, #818cf8);border-radius:var(--radius-sm, 4px);font-size:inherit;color:var(--color-neutral-900, #141624);background-color:var(--color-white, #fff);box-shadow:0 0 0 3px var(--color-brand-100, #e0e1fc)}.data-grid-edit-input:focus{outline:none;border-color:var(--color-brand-500, #6366f1)}.data-grid-edit-actions{display:flex;align-items:center;justify-content:center;gap:var(--sp-1, 4px)}.data-grid-action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md, 6px);background-color:transparent;color:var(--color-neutral-600, #5c627a);cursor:pointer;transition:background-color 0.15s ease, color 0.15s ease}.data-grid-action-btn:hover{background-color:var(--color-neutral-100, #f0f1f5);color:var(--color-neutral-900, #141624)}.data-grid-action-btn .material-symbols-outlined{font-size:18px}.data-grid-empty{display:flex;align-items:center;justify-content:center;padding:var(--sp-12, 48px) var(--sp-4, 16px)}.data-grid-loading{position:relative}.data-grid-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background-color:rgba(255, 255, 255, 0.8);z-index:20}.data-grid-skeleton .data-grid-cell{padding:var(--sp-2, 8px) var(--sp-3, 12px)}.data-grid-row-skeleton{animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%,100%{opacity:1}50%{opacity:0.5}}.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;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:'liga';font-variation-settings:'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24}@media (max-width: 640px){.data-grid-global-filter{padding:var(--sp-2, 8px)}.data-grid-header-cell,.data-grid-cell,.data-grid-filter-cell{padding:var(--sp-2, 8px) !important;font-size:0.75rem !important}.data-grid-cell-select,.data-grid-cell-expand{width:32px;min-width:32px;max-width:32px}.data-grid-cell-actions{width:60px;min-width:60px;max-width:60px}}";
3412
+ const bhDataGridCss = ":host{display:block;font-family:var(--font-family-body, 'Inter', sans-serif)}.data-grid{display:flex;flex-direction:column;background-color:var(--color-white, #fff);overflow:hidden}.data-grid-container{position:relative;overflow:auto}.data-grid-table{display:table;width:100%;border-collapse:collapse}.data-grid-compact .data-grid-header-cell,.data-grid-compact .data-grid-cell{padding:var(--sp-1-5, 6px) var(--sp-2, 8px);font-size:0.875rem}.data-grid-compact .data-grid-row{height:40px}.data-grid-default .data-grid-header-cell,.data-grid-default .data-grid-cell{padding:var(--sp-2, 8px) var(--sp-3, 12px);font-size:0.875rem}.data-grid-default .data-grid-row{height:48px}.data-grid-relaxed .data-grid-header-cell,.data-grid-relaxed .data-grid-cell{padding:var(--sp-3, 12px) var(--sp-4, 16px);font-size:0.875rem}.data-grid-relaxed .data-grid-row{height:64px}.data-grid-bordered .data-grid-cell,.data-grid-bordered .data-grid-header-cell,.data-grid-bordered .data-grid-filter-cell{border:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-bordered .data-grid-header-cell{border-bottom-width:2px}.data-grid-striped .data-grid-row-striped{background-color:var(--color-neutral-50, #fafafc)}.data-grid-caption{padding:var(--sp-3, 12px) var(--sp-4, 16px);font-size:0.875rem;font-weight:500;color:var(--color-neutral-700, #4d5266)}.data-grid-caption-top{border-bottom:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-caption-bottom{border-top:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-global-filter{position:relative;display:flex;align-items:center;gap:var(--sp-2, 8px);padding:var(--sp-3, 12px) var(--sp-4, 16px);border-bottom:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-search-icon{position:absolute;font-size:20px;color:var(--color-neutral-400, #939ab4);left:var(--sp-5);top:50%;transform:translateY(-50%);pointer-events:none}.data-grid-global-filter-input{padding:var(--sp-2, 8px) var(--sp-3, 12px) var(--sp-2, 8px) var(--sp-8, 32px);border:1px solid var(--color-neutral-300, #c0c4d4);border-radius:var(--radius-sm, 4px);font-size:0.875rem;color:var(--color-neutral-900, #141624);background-color:var(--color-white, #fff);transition:border-color 0.15s ease, box-shadow 0.15s ease}.data-grid-global-filter-input:focus{outline:none;border-color:var(--color-brand-500, #6366f1);box-shadow:0 0 0 3px var(--color-brand-100, #e0e1fc)}.data-grid-global-filter-input::placeholder{color:var(--color-neutral-400, #939ab4);padding-right:var(--sp-10, 40px)}.data-grid-header{display:table-header-group;background-color:var(--color-white, #ffffff)}.data-grid-header-sticky{position:sticky;top:0;z-index:10}.data-grid-header-row{display:table-row}.data-grid-header-cell{display:table-cell;vertical-align:middle;text-align:left;font-weight:600;color:var(--color-neutral-700, #4d5266);border-bottom:1px solid var(--color-neutral-200, #e2e4eb);white-space:nowrap;user-select:none}.data-grid-header-cell-sortable{cursor:pointer;transition:background-color 0.2s ease}.data-grid-header-cell-sortable:hover{background-color:var(--color-neutral-50, #fafafc)}.data-grid-header-cell-sorted{color:var(--color-neutral-900, #141624)}.data-grid-header-text{display:inline-flex;align-items:center;gap:var(--sp-2)}.data-grid-sort-icon.material-symbols-outlined{font-size:16px !important;color:var(--color-neutral-700, #4d5266);vertical-align:middle;padding:var(--sp-0) var(--sp-0) var(--sp-0-5) var(--sp-0-5)}.data-grid-filter-row{display:table-row;background:var(--color-white, #ffffff);height:28px}.data-grid-filter-cell{position:relative;height:28px;padding:var(--sp-0, 0px);display:table-cell;vertical-align:middle;border-bottom:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-filter-input{width:100%;height:100%;padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-8);border:none;outline:none;font-size:0.875rem;color:var(--color-neutral-900, #141624);background:var(--color-white, #ffffff);transition:background 0.15s ease}.data-grid-filter-icon{position:absolute;font-size:20px !important;color:var(--color-neutral-400, #939ab4);left:var(--sp-2);top:50%;transform:translateY(-50%);pointer-events:none}.data-grid-filter-input:focus{background:var(--color-brand-25)}.data-grid-filter-input::placeholder{color:var(--color-neutral-400, #939ab4);padding-right:var(--sp-8)}.data-grid-body{display:table-row-group}.data-grid-row{display:table-row;transition:background-color 0.1s ease}.data-grid-row-hover,.data-grid-row:hover{background-color:var(--color-neutral-25)}.data-grid-row-selected{background-color:var(--color-brand-50, #eef2ff) !important}.data-grid-row-selected:hover{background-color:var(--color-brand-100, #e0e7ff) !important}.data-grid-row-clickable{cursor:pointer}.data-grid-row-editing{background-color:var(--color-brand-50) !important}.data-grid-cell{display:table-cell;vertical-align:middle;color:var(--color-neutral-900, #141624);border-bottom:1px solid var(--color-neutral-100, #f0f1f5)}.data-grid-cell-align-left{text-align:left}.data-grid-cell-align-center{text-align:center}.data-grid-cell-align-right{text-align:right}.data-grid-cell-type-number{font-variant-numeric:tabular-nums}.data-grid-cell-editable{cursor:cell}.data-grid-cell-editable:hover{background-color:var(--color-brand-25, #f5f8ff)}.data-grid-cell-editing{padding:var(--sp-1, 4px) !important}.data-grid-cell-error{position:relative}.data-grid-cell-error-text{position:absolute;bottom:2px;left:4px;font-size:0.625rem;color:var(--color-error-600, #dc2626)}.data-grid-cell-select{width:40px;min-width:40px;max-width:40px;text-align:center}.data-grid-cell-expand{width:40px;min-width:40px;max-width:40px;text-align:center}.data-grid-cell-actions{width:80px;min-width:80px;max-width:80px;text-align:center}.data-grid-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md, 6px);background-color:transparent;color:var(--color-neutral-500, #6b7280);cursor:pointer;transition:background-color 0.15s ease, color 0.15s ease}.data-grid-expand-btn:hover{background-color:var(--color-neutral-100, #f0f1f5);color:var(--color-neutral-700, #4d5266)}.data-grid-expand-btn .material-symbols-outlined{font-size:20px;transition:transform 0.15s ease}.data-grid-row-expanded .data-grid-expand-btn .material-symbols-outlined{transform:rotate(45deg)}.data-grid-row-expansion{display:table-row;background-color:var(--color-neutral-50, #fafafc)}.data-grid-row-expansion>*{display:table-cell;padding:var(--sp-4, 16px);border-bottom:1px solid var(--color-neutral-200, #e2e4eb)}.data-grid-row-group{background-color:var(--color-neutral-50);cursor:pointer}.data-grid-row-group:hover{background-color:var(--color-neutral-100)}.data-grid-cell-group-label{display:flex;align-items:center;gap:var(--sp-2, 8px);font-weight:500}.data-grid-group-toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-neutral-600, #5c627a);cursor:pointer}.data-grid-group-toggle .material-symbols-outlined{font-size:20px;transition:transform 0.15s ease}.data-grid-row-group-expanded .data-grid-group-toggle .material-symbols-outlined{transform:rotate(90deg)}.data-grid-group-label{display:inline-flex;align-items:center;gap:var(--sp-1, 4px)}.data-grid-group-column{color:var(--color-neutral-600, #5c627a)}.data-grid-group-value{color:var(--color-neutral-900, #141624);font-weight:600}.data-grid-group-count{color:var(--color-neutral-400, #939ab4);font-size:0.75rem;font-weight:400}.data-grid-edit-input{width:100%;padding:var(--sp-1-5, 6px) var(--sp-2, 8px);border:1px solid var(--color-brand-400, #818cf8);border-radius:var(--radius-sm, 4px);font-size:inherit;color:var(--color-neutral-900, #141624);background-color:var(--color-white, #fff);box-shadow:0 0 0 3px var(--color-brand-100, #e0e1fc)}.data-grid-edit-input:focus{outline:none;border-color:var(--color-brand-500, #6366f1)}.data-grid-edit-actions{display:flex;align-items:center;justify-content:center;gap:var(--sp-1, 4px)}.data-grid-empty{display:table-row;width:100%}.data-grid-empty>*{display:table-cell;text-align:center;padding:var(--sp-12, 48px) var(--sp-4, 16px);width:100%}.data-grid-empty .empty-state-wrapper{display:flex;justify-content:center;align-items:center;width:100%;padding:20px 0;}.data-grid-loading{position:relative}.data-grid-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background-color:rgba(255, 255, 255, 0.8);z-index:20}.data-grid-skeleton .data-grid-cell{position:relative;padding:var(--sp-2, 8px) var(--sp-3, 12px)}.data-grid-skeleton-bar{display:inline-block;height:12px;background-color:var(--color-neutral-200, #e2e4eb);border-radius:var(--radius-sm, 4px);animation:skeleton-pulse 1.5s ease-in-out infinite}.data-grid-row-skeleton .hydrated{width:80%}@keyframes skeleton-pulse{0%,100%{opacity:1}50%{opacity:0.4}}.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;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:'liga';font-variation-settings:'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24}@media (max-width: 640px){.data-grid-global-filter{padding:var(--sp-2, 8px)}.data-grid-header-cell,.data-grid-cell,.data-grid-filter-cell{padding:var(--sp-2, 8px) !important;font-size:0.75rem !important}.data-grid-cell-select,.data-grid-cell-expand{width:32px;min-width:32px;max-width:32px}.data-grid-cell-actions{width:60px;min-width:60px;max-width:60px}}";
3413
3413
 
3414
3414
  const BhDataGrid = class {
3415
3415
  constructor(hostRef) {
@@ -3580,7 +3580,9 @@ const BhDataGrid = class {
3580
3580
  handleSelectedRowIdsChange(newValue) {
3581
3581
  if (this.table) {
3582
3582
  const selection = {};
3583
- newValue.forEach(id => { selection[id] = true; });
3583
+ newValue.forEach((id) => {
3584
+ selection[id] = true;
3585
+ });
3584
3586
  this.table.setRowSelection(selection);
3585
3587
  }
3586
3588
  }
@@ -3595,7 +3597,9 @@ const BhDataGrid = class {
3595
3597
  handleExpandedRowIdsChange(newValue) {
3596
3598
  if (this.table) {
3597
3599
  const expanded = {};
3598
- newValue.forEach(id => { expanded[id] = true; });
3600
+ newValue.forEach((id) => {
3601
+ expanded[id] = true;
3602
+ });
3599
3603
  this.table.setExpanded(expanded);
3600
3604
  }
3601
3605
  }
@@ -3645,14 +3649,24 @@ const BhDataGrid = class {
3645
3649
  },
3646
3650
  getCoreRowModel: getCoreRowModel(),
3647
3651
  getSortedRowModel: this.enableSorting ? getSortedRowModel() : undefined,
3648
- getFilteredRowModel: this.enableFiltering || this.enableGlobalFilter ? getFilteredRowModel() : undefined,
3649
- getPaginationRowModel: this.enablePagination ? getPaginationRowModel() : undefined,
3650
- getExpandedRowModel: this.enableExpansion || this.enableGrouping ? getExpandedRowModel() : undefined,
3651
- getGroupedRowModel: this.enableGrouping ? getGroupedRowModel() : undefined,
3652
- getRowId: this.getRowId || ((row, index) => String(row.id ?? index)),
3652
+ getFilteredRowModel: this.enableFiltering || this.enableGlobalFilter
3653
+ ? getFilteredRowModel()
3654
+ : undefined,
3655
+ getPaginationRowModel: this.enablePagination
3656
+ ? getPaginationRowModel()
3657
+ : undefined,
3658
+ getExpandedRowModel: this.enableExpansion || this.enableGrouping
3659
+ ? getExpandedRowModel()
3660
+ : undefined,
3661
+ getGroupedRowModel: this.enableGrouping
3662
+ ? getGroupedRowModel()
3663
+ : undefined,
3664
+ getRowId: this.getRowId ||
3665
+ ((row, index) => String(row.id ?? index)),
3653
3666
  getSubRows: this.getSubRows,
3654
3667
  enableRowSelection: this.selectionMode !== 'none',
3655
- enableMultiRowSelection: this.selectionMode === 'multiple-click' || this.selectionMode === 'multiple-checkbox',
3668
+ enableMultiRowSelection: this.selectionMode === 'multiple-click' ||
3669
+ this.selectionMode === 'multiple-checkbox',
3656
3670
  enableSorting: this.enableSorting,
3657
3671
  enableFilters: this.enableFiltering || this.enableGlobalFilter,
3658
3672
  enableExpanding: this.enableExpansion || this.enableGrouping,
@@ -3669,7 +3683,7 @@ const BhDataGrid = class {
3669
3683
  this.tableState = newState;
3670
3684
  // Update table options with new state
3671
3685
  if (this.table) {
3672
- this.table.setOptions(prev => ({
3686
+ this.table.setOptions((prev) => ({
3673
3687
  ...prev,
3674
3688
  state: newState,
3675
3689
  }));
@@ -3679,7 +3693,8 @@ const BhDataGrid = class {
3679
3693
  this.sortState = newState.sorting;
3680
3694
  this.bhSortChange.emit({ sorting: newState.sorting });
3681
3695
  }
3682
- if (JSON.stringify(oldState.columnFilters) !== JSON.stringify(newState.columnFilters) ||
3696
+ if (JSON.stringify(oldState.columnFilters) !==
3697
+ JSON.stringify(newState.columnFilters) ||
3683
3698
  oldState.globalFilter !== newState.globalFilter) {
3684
3699
  this.filterState = newState.columnFilters;
3685
3700
  this.globalFilter = newState.globalFilter;
@@ -3688,10 +3703,11 @@ const BhDataGrid = class {
3688
3703
  globalFilter: newState.globalFilter,
3689
3704
  });
3690
3705
  }
3691
- if (JSON.stringify(oldState.rowSelection) !== JSON.stringify(newState.rowSelection)) {
3692
- const selectedIds = Object.keys(newState.rowSelection).filter(id => newState.rowSelection[id]);
3706
+ if (JSON.stringify(oldState.rowSelection) !==
3707
+ JSON.stringify(newState.rowSelection)) {
3708
+ const selectedIds = Object.keys(newState.rowSelection).filter((id) => newState.rowSelection[id]);
3693
3709
  this.selectedRowIds = selectedIds;
3694
- const selectedRows = this.table?.getSelectedRowModel().rows.map(r => r.original) ?? [];
3710
+ const selectedRows = this.table?.getSelectedRowModel().rows.map((r) => r.original) ?? [];
3695
3711
  this.bhSelectionChange.emit({
3696
3712
  selectedRowIds: selectedIds,
3697
3713
  selectedRows,
@@ -3711,19 +3727,25 @@ const BhDataGrid = class {
3711
3727
  }
3712
3728
  buildRowSelection() {
3713
3729
  const selection = {};
3714
- this.selectedRowIds.forEach(id => { selection[id] = true; });
3730
+ this.selectedRowIds.forEach((id) => {
3731
+ selection[id] = true;
3732
+ });
3715
3733
  return selection;
3716
3734
  }
3717
3735
  buildExpanded() {
3718
3736
  const expanded = {};
3719
- this.expandedRowIds.forEach(id => { expanded[id] = true; });
3737
+ this.expandedRowIds.forEach((id) => {
3738
+ expanded[id] = true;
3739
+ });
3720
3740
  return expanded;
3721
3741
  }
3722
3742
  buildColumnVisibility() {
3723
3743
  // Hide grouped columns
3724
3744
  const visibility = {};
3725
3745
  if (this.enableGrouping) {
3726
- this.groupBy.forEach(colId => { visibility[colId] = false; });
3746
+ this.groupBy.forEach((colId) => {
3747
+ visibility[colId] = false;
3748
+ });
3727
3749
  }
3728
3750
  return visibility;
3729
3751
  }
@@ -3803,10 +3825,10 @@ const BhDataGrid = class {
3803
3825
  if (!this.enableEditing)
3804
3826
  return;
3805
3827
  this.editingRowId = row.id;
3806
- this.editingColumnId = this.editMode === 'cell' ? (columnId || null) : null;
3828
+ this.editingColumnId = this.editMode === 'cell' ? columnId || null : null;
3807
3829
  // Initialize editing values from current row
3808
3830
  const values = {};
3809
- this.columns.forEach(col => {
3831
+ this.columns.forEach((col) => {
3810
3832
  const colId = col.accessorKey || col.id;
3811
3833
  if (colId) {
3812
3834
  values[colId] = row.original[colId];
@@ -3917,8 +3939,8 @@ const BhDataGrid = class {
3917
3939
  }
3918
3940
  };
3919
3941
  moveToNextEditableCell = (currentColumnId, reverse) => {
3920
- const editableColumns = this.columns.filter(col => col.meta?.editable !== false);
3921
- const currentIndex = editableColumns.findIndex(col => {
3942
+ const editableColumns = this.columns.filter((col) => col.meta?.editable !== false);
3943
+ const currentIndex = editableColumns.findIndex((col) => {
3922
3944
  const colId = col.accessorKey || col.id;
3923
3945
  return colId === currentColumnId;
3924
3946
  });
@@ -3997,23 +4019,30 @@ const BhDataGrid = class {
3997
4019
  if (!this.table)
3998
4020
  return null;
3999
4021
  const headerGroups = this.table.getHeaderGroups();
4000
- return (h("div", { class: { 'data-grid-header': true, 'data-grid-header-sticky': this.stickyHeader } }, headerGroups.map(headerGroup => (h("div", { class: "data-grid-header-row", role: "row", key: headerGroup.id }, this.renderSelectionHeader(), this.enableExpansion && !this.enableGrouping && (h("div", { class: "data-grid-header-cell data-grid-cell-expand", role: "columnheader" })), headerGroup.headers.map(header => this.renderHeaderCell(header)), this.enableEditing && this.showEditActions && this.editMode === 'row' && (h("div", { class: "data-grid-header-cell data-grid-cell-actions", role: "columnheader" }))))), this.showFilterRow && this.renderFilterRow()));
4022
+ return (h("thead", { class: {
4023
+ 'data-grid-header': true,
4024
+ 'data-grid-header-sticky': this.stickyHeader,
4025
+ } }, headerGroups.map((headerGroup) => (h("tr", { class: "data-grid-header-row", role: "row", key: headerGroup.id }, this.renderSelectionHeader(), this.enableExpansion && !this.enableGrouping && (h("th", { class: "data-grid-header-cell data-grid-cell-expand", role: "columnheader" })), headerGroup.headers.map((header) => this.renderHeaderCell(header)), this.enableEditing &&
4026
+ this.showEditActions &&
4027
+ this.editMode === 'row' && (h("th", { class: "data-grid-header-cell data-grid-cell-actions", role: "columnheader", colSpan: 1 }))))), this.showFilterRow && this.renderFilterRow()));
4001
4028
  }
4002
4029
  renderSelectionHeader() {
4003
- if (this.selectionMode === 'none' || this.selectionMode === 'single-click' || this.selectionMode === 'multiple-click') {
4030
+ if (this.selectionMode === 'none' ||
4031
+ this.selectionMode === 'single-click' ||
4032
+ this.selectionMode === 'multiple-click') {
4004
4033
  return null;
4005
4034
  }
4006
4035
  if (this.selectionMode === 'single-radio') {
4007
- return h("div", { class: "data-grid-header-cell data-grid-cell-select", role: "columnheader" });
4036
+ return (h("th", { class: "data-grid-header-cell data-grid-cell-select", role: "columnheader", colSpan: 1 }));
4008
4037
  }
4009
4038
  // Multiple checkbox - show select all
4010
4039
  const isAllSelected = this.table?.getIsAllRowsSelected();
4011
4040
  const isSomeSelected = this.table?.getIsSomeRowsSelected();
4012
- return (h("div", { class: "data-grid-header-cell data-grid-cell-select", role: "columnheader" }, h("bh-checkbox", { size: "sm", checked: isAllSelected, indeterminate: isSomeSelected && !isAllSelected, onBhChange: () => this.table?.toggleAllRowsSelected() })));
4041
+ return (h("th", { class: "data-grid-header-cell data-grid-cell-select", role: "columnheader", colSpan: 1 }, h("bh-checkbox", { size: "sm", checked: isAllSelected, indeterminate: isSomeSelected && !isAllSelected, onBhChange: () => this.table?.toggleAllRowsSelected() })));
4013
4042
  }
4014
4043
  renderHeaderCell(header) {
4015
4044
  if (header.isPlaceholder) {
4016
- return h("div", { class: "data-grid-header-cell", role: "columnheader", key: header.id });
4045
+ return (h("th", { class: "data-grid-header-cell", role: "columnheader", key: header.id, colSpan: 1 }));
4017
4046
  }
4018
4047
  const canSort = header.column.getCanSort();
4019
4048
  const sortDirection = header.column.getIsSorted();
@@ -4027,21 +4056,32 @@ const BhDataGrid = class {
4027
4056
  const style = header.column.getSize()
4028
4057
  ? { width: `${header.column.getSize()}px` }
4029
4058
  : {};
4030
- return (h("div", { class: cellClasses, style: style, role: "columnheader", "aria-sort": sortDirection === 'asc' ? 'ascending' : sortDirection === 'desc' ? 'descending' : 'none', onClick: () => canSort && this.handleHeaderClick(header), key: header.id }, h("span", { class: "data-grid-header-text" }, this.flexRender(header.column.columnDef.header, header.getContext())), canSort && sortDirection && (h("span", { class: "data-grid-sort-icon material-symbols-outlined" }, sortDirection === 'asc' ? 'arrow_upward' : 'arrow_downward'))));
4059
+ return (h("th", { class: cellClasses, style: style, role: "columnheader", "aria-sort": sortDirection === 'asc'
4060
+ ? 'ascending'
4061
+ : sortDirection === 'desc'
4062
+ ? 'descending'
4063
+ : 'none', onClick: () => canSort && this.handleHeaderClick(header), key: header.id, colSpan: 1 }, h("span", { class: "data-grid-header-text" }, this.flexRender(header.column.columnDef.header, header.getContext())), canSort && sortDirection && (h("span", { class: "data-grid-sort-icon material-symbols-outlined" }, sortDirection === 'asc' ? 'north' : 'south'))));
4031
4064
  }
4032
4065
  renderFilterRow() {
4033
4066
  if (!this.table)
4034
4067
  return null;
4035
4068
  const headers = this.table.getHeaderGroups()[0]?.headers || [];
4036
- return (h("div", { class: "data-grid-filter-row", role: "row" }, (this.selectionMode === 'single-radio' || this.selectionMode === 'multiple-checkbox') && (h("div", { class: "data-grid-filter-cell data-grid-cell-select", role: "cell" })), this.enableExpansion && !this.enableGrouping && (h("div", { class: "data-grid-filter-cell data-grid-cell-expand", role: "cell" })), headers.map(header => {
4069
+ return (h("tr", { class: "data-grid-filter-row", role: "row" }, (this.selectionMode === 'single-radio' ||
4070
+ this.selectionMode === 'multiple-checkbox') && (h("td", { class: "data-grid-filter-cell data-grid-cell-select", role: "cell" })), this.enableExpansion && !this.enableGrouping && (h("td", { class: "data-grid-filter-cell data-grid-cell-expand", role: "cell" })), headers.map((header) => {
4037
4071
  const canFilter = header.column.getCanFilter();
4038
4072
  const meta = header.column.columnDef.meta;
4039
4073
  if (!canFilter || meta?.filterable === false) {
4040
- return h("div", { class: "data-grid-filter-cell", role: "cell", key: header.id });
4074
+ return (h("div", { class: "data-grid-filter-cell", role: "cell", key: header.id }));
4041
4075
  }
4042
4076
  const filterValue = header.column.getFilterValue() ?? '';
4043
- return (h("div", { class: "data-grid-filter-cell", role: "cell", key: header.id }, h("input", { type: meta?.type === 'number' ? 'number' : meta?.type === 'date' ? 'date' : 'text', class: "data-grid-filter-input", placeholder: `Filter...`, value: filterValue, onInput: (e) => this.handleColumnFilterChange(header.column.id, e.target.value) })));
4044
- }), this.enableEditing && this.showEditActions && this.editMode === 'row' && (h("div", { class: "data-grid-filter-cell data-grid-cell-actions", role: "cell" }))));
4077
+ return (h("td", { class: "data-grid-filter-cell", role: "cell", key: header.id }, h("span", { class: "data-grid-filter-icon material-symbols-outlined" }, "search"), h("input", { type: meta?.type === 'number'
4078
+ ? 'number'
4079
+ : meta?.type === 'date'
4080
+ ? 'date'
4081
+ : 'text', class: "data-grid-filter-input", placeholder: ``, value: filterValue, onInput: (e) => this.handleColumnFilterChange(header.column.id, e.target.value) })));
4082
+ }), this.enableEditing &&
4083
+ this.showEditActions &&
4084
+ this.editMode === 'row' && (h("td", { class: "data-grid-filter-cell data-grid-cell-actions", role: "cell" }))));
4045
4085
  }
4046
4086
  renderBody() {
4047
4087
  if (!this.table)
@@ -4055,7 +4095,7 @@ const BhDataGrid = class {
4055
4095
  if (rows.length === 0) {
4056
4096
  return this.renderEmptyState();
4057
4097
  }
4058
- return (h("div", { class: "data-grid-body", role: "rowgroup" }, rows.map(row => {
4098
+ return (h("tbody", { class: "data-grid-body", role: "rowgroup" }, rows.map((row) => {
4059
4099
  if (row.getIsGrouped()) {
4060
4100
  return this.renderGroupRow(row);
4061
4101
  }
@@ -4073,27 +4113,38 @@ const BhDataGrid = class {
4073
4113
  'data-grid-row-editing': isRowEditing,
4074
4114
  'data-grid-row-hover': this.hoveredRowId === row.id,
4075
4115
  'data-grid-row-striped': this.striped && row.index % 2 === 1,
4076
- 'data-grid-row-clickable': this.selectionMode === 'single-click' || this.selectionMode === 'multiple-click',
4116
+ 'data-grid-row-clickable': this.selectionMode === 'single-click' ||
4117
+ this.selectionMode === 'multiple-click',
4077
4118
  };
4078
4119
  return [
4079
- h("div", { class: rowClasses, role: "row", "aria-selected": isSelected ? 'true' : 'false', key: row.id, onClick: () => this.handleRowClick(row), onMouseEnter: () => { this.hoveredRowId = row.id; }, onMouseLeave: () => { this.hoveredRowId = null; } }, this.renderSelectionCell(row), this.enableExpansion && !this.enableGrouping && (h("div", { class: "data-grid-cell data-grid-cell-expand", role: "cell", onClick: (e) => { e.stopPropagation(); } }, row.getCanExpand() && (h("button", { class: "data-grid-expand-btn", onClick: () => this.handleRowExpand(row), "aria-label": isExpanded ? 'Collapse row' : 'Expand row' }, h("span", { class: "material-symbols-outlined" }, isExpanded ? 'expand_more' : 'chevron_right'))))), row.getVisibleCells().map(cell => this.renderCell(row, cell)), this.enableEditing && this.showEditActions && this.editMode === 'row' && (h("div", { class: "data-grid-cell data-grid-cell-actions", role: "cell", onClick: (e) => e.stopPropagation() }, isRowEditing ? (h("div", { class: "data-grid-edit-actions" }, h("button", { class: "data-grid-action-btn", onClick: () => this.saveEditing(), title: "Save" }, h("span", { class: "material-symbols-outlined" }, "check")), h("button", { class: "data-grid-action-btn", onClick: () => this.cancelEditing(), title: "Cancel" }, h("span", { class: "material-symbols-outlined" }, "close")))) : (h("button", { class: "data-grid-action-btn", onClick: () => this.startEditing(row), title: "Edit" }, h("span", { class: "material-symbols-outlined" }, "edit")))))),
4120
+ h("tr", { class: rowClasses, role: "row", "aria-selected": isSelected ? 'true' : 'false', key: row.id, onClick: () => this.handleRowClick(row), onMouseEnter: () => {
4121
+ this.hoveredRowId = row.id;
4122
+ }, onMouseLeave: () => {
4123
+ this.hoveredRowId = null;
4124
+ } }, this.renderSelectionCell(row), this.enableExpansion && !this.enableGrouping && (h("td", { class: "data-grid-cell data-grid-cell-expand", role: "cell", onClick: (e) => {
4125
+ e.stopPropagation();
4126
+ } }, row.getCanExpand() && (h("button", { class: "data-grid-expand-btn", onClick: () => this.handleRowExpand(row), "aria-label": isExpanded ? 'Collapse row' : 'Expand row' }, h("span", { class: "material-symbols-outlined" }, isExpanded ? 'expand_more' : 'chevron_right'))))), row.getVisibleCells().map((cell) => this.renderCell(row, cell)), this.enableEditing &&
4127
+ this.showEditActions &&
4128
+ this.editMode === 'row' && (h("td", { class: "data-grid-cell data-grid-cell-actions", role: "cell", onClick: (e) => e.stopPropagation() }, isRowEditing ? (h("div", { class: "data-grid-edit-actions" }, h("bh-button", { hierarchy: "tertiary", kind: "success", size: "sm", icon: "only", iconName: "check", onClick: () => this.saveEditing(), title: "Save" }, "Save"), h("bh-button", { hierarchy: "tertiary", kind: "destructive", size: "sm", icon: "only", iconName: "close", onClick: () => this.cancelEditing(), title: "Cancel" }, "Cancel"))) : (h("bh-button", { hierarchy: "tertiary", size: "sm", icon: "only", iconName: "edit", onClick: () => this.startEditing(row), title: "Edit" }, h("span", { class: "material-symbols-outlined" }, "edit")))))),
4080
4129
  // Expanded content
4081
4130
  isExpanded && this.enableExpansion && !this.enableGrouping && (h("div", { class: "data-grid-row-expansion", key: `${row.id}-expansion` }, h("slot", { name: "expanded-row" }))),
4082
4131
  ];
4083
4132
  }
4084
4133
  renderSelectionCell(row) {
4085
- if (this.selectionMode === 'none' || this.selectionMode === 'single-click' || this.selectionMode === 'multiple-click') {
4134
+ if (this.selectionMode === 'none' ||
4135
+ this.selectionMode === 'single-click' ||
4136
+ this.selectionMode === 'multiple-click') {
4086
4137
  return null;
4087
4138
  }
4088
4139
  const isSelected = row.getIsSelected();
4089
4140
  if (this.selectionMode === 'single-radio') {
4090
- return (h("div", { class: "data-grid-cell data-grid-cell-select", role: "cell", onClick: (e) => e.stopPropagation() }, h("bh-radio-button", { selected: isSelected, onBhChange: () => {
4141
+ return (h("td", { class: "data-grid-cell data-grid-cell-select", role: "cell", onClick: (e) => e.stopPropagation() }, h("bh-radio-button", { selected: isSelected, onBhChange: () => {
4091
4142
  this.table?.resetRowSelection();
4092
4143
  row.toggleSelected(true);
4093
4144
  } })));
4094
4145
  }
4095
4146
  // Multiple checkbox
4096
- return (h("div", { class: "data-grid-cell data-grid-cell-select", role: "cell", onClick: (e) => e.stopPropagation() }, h("bh-checkbox", { size: "sm", checked: isSelected, onBhChange: () => row.toggleSelected() })));
4147
+ return (h("td", { class: "data-grid-cell data-grid-cell-select", role: "cell", onClick: (e) => e.stopPropagation() }, h("bh-checkbox", { size: "sm", checked: isSelected, onBhChange: () => row.toggleSelected() })));
4097
4148
  }
4098
4149
  renderCell(row, cell) {
4099
4150
  const meta = cell.column.columnDef.meta;
@@ -4112,18 +4163,22 @@ const BhDataGrid = class {
4112
4163
  const style = cell.column.getSize()
4113
4164
  ? { width: `${cell.column.getSize()}px` }
4114
4165
  : {};
4115
- return (h("div", { class: cellClasses, style: style, role: "cell", key: cell.id, onClick: (e) => {
4166
+ return (h("td", { class: cellClasses, style: style, role: "cell", key: cell.id, onClick: (e) => {
4116
4167
  e.stopPropagation();
4117
4168
  this.handleCellClick(row, cell);
4118
4169
  }, onDblClick: (e) => {
4119
4170
  e.stopPropagation();
4120
4171
  this.handleCellDoubleClick(row, cell);
4121
- } }, isCellEditing ? this.renderEditInput(cell) : this.renderCellContent(cell), hasError && (h("span", { class: "data-grid-cell-error-text" }, this.validationErrors[columnId]))));
4172
+ } }, isCellEditing
4173
+ ? this.renderEditInput(cell)
4174
+ : this.renderCellContent(cell), hasError && (h("span", { class: "data-grid-cell-error-text" }, this.validationErrors[columnId]))));
4122
4175
  }
4123
4176
  renderCellContent(cell) {
4124
4177
  const rendered = this.flexRender(cell.column.columnDef.cell, cell.getContext());
4125
4178
  // If custom cell renderer returns something, use it
4126
- if (rendered !== undefined && rendered !== null && rendered !== cell.getValue()) {
4179
+ if (rendered !== undefined &&
4180
+ rendered !== null &&
4181
+ rendered !== cell.getValue()) {
4127
4182
  return rendered;
4128
4183
  }
4129
4184
  // Default formatting
@@ -4133,9 +4188,12 @@ const BhDataGrid = class {
4133
4188
  const columnId = cell.column.id;
4134
4189
  const meta = cell.column.columnDef.meta;
4135
4190
  const currentValue = this.editingValues[columnId] ?? cell.getValue();
4136
- const inputType = meta?.type === 'number' ? 'number'
4137
- : meta?.type === 'date' ? 'date'
4138
- : meta?.type === 'boolean' ? 'checkbox'
4191
+ const inputType = meta?.type === 'number'
4192
+ ? 'number'
4193
+ : meta?.type === 'date'
4194
+ ? 'date'
4195
+ : meta?.type === 'boolean'
4196
+ ? 'checkbox'
4139
4197
  : 'text';
4140
4198
  if (meta?.type === 'boolean') {
4141
4199
  return (h("bh-checkbox", { size: "sm", checked: Boolean(currentValue), onBhChange: (e) => this.handleEditValueChange(columnId, e.detail.checked) }));
@@ -4152,36 +4210,51 @@ const BhDataGrid = class {
4152
4210
  const groupValue = row.groupingValue;
4153
4211
  const leafRows = row.getLeafRows();
4154
4212
  // Check if all leaf rows are selected for group selection
4155
- const allSelected = leafRows.every(r => r.getIsSelected());
4156
- const someSelected = leafRows.some(r => r.getIsSelected());
4213
+ const allSelected = leafRows.every((r) => r.getIsSelected());
4214
+ const someSelected = leafRows.some((r) => r.getIsSelected());
4157
4215
  const rowClasses = {
4158
4216
  'data-grid-row': true,
4159
4217
  'data-grid-row-group': true,
4160
4218
  'data-grid-row-group-expanded': isExpanded,
4161
4219
  };
4162
4220
  return [
4163
- h("div", { class: rowClasses, role: "row", "aria-expanded": isExpanded ? 'true' : 'false', key: row.id, onClick: () => this.handleGroupToggle(row) }, this.selectionMode === 'multiple-checkbox' && (h("div", { class: "data-grid-cell data-grid-cell-select", role: "cell", onClick: (e) => e.stopPropagation() }, h("bh-checkbox", { size: "sm", checked: allSelected, indeterminate: someSelected && !allSelected, onBhChange: () => {
4164
- leafRows.forEach(r => r.toggleSelected(!allSelected));
4221
+ h("tr", { class: rowClasses, role: "row", "aria-expanded": isExpanded ? 'true' : 'false', key: row.id, onClick: () => this.handleGroupToggle(row) }, this.selectionMode === 'multiple-checkbox' && (h("div", { class: "data-grid-cell data-grid-cell-select", role: "cell", onClick: (e) => e.stopPropagation() }, h("bh-checkbox", { size: "sm", checked: allSelected, indeterminate: someSelected && !allSelected, onBhChange: () => {
4222
+ leafRows.forEach((r) => r.toggleSelected(!allSelected));
4165
4223
  } }))), h("div", { class: "data-grid-cell data-grid-cell-group-label", role: "cell" }, h("button", { class: "data-grid-group-toggle", "aria-label": isExpanded ? 'Collapse group' : 'Expand group' }, h("span", { class: "material-symbols-outlined" }, isExpanded ? 'expand_more' : 'chevron_right')), h("span", { class: "data-grid-group-label" }, h("span", { class: "data-grid-group-column" }, groupingColumnId, ": "), h("span", { class: "data-grid-group-value" }, String(groupValue))), h("span", { class: "data-grid-group-count" }, "(", leafRows.length, " ", leafRows.length === 1 ? 'item' : 'items', ")"))),
4166
4224
  // Render child rows if expanded
4167
- isExpanded && row.subRows.map(subRow => {
4168
- if (subRow.getIsGrouped()) {
4169
- return this.renderGroupRow(subRow);
4170
- }
4171
- return this.renderDataRow(subRow);
4172
- }),
4225
+ isExpanded &&
4226
+ row.subRows.map((subRow) => {
4227
+ if (subRow.getIsGrouped()) {
4228
+ return this.renderGroupRow(subRow);
4229
+ }
4230
+ return this.renderDataRow(subRow);
4231
+ }),
4173
4232
  ];
4174
4233
  }
4175
4234
  renderEmptyState() {
4176
- return (h("div", { class: "data-grid-empty" }, h("bh-empty-state", { emptyTitle: this.emptyTitle, description: this.emptyDescription })));
4235
+ const columnCount = this.columns.length +
4236
+ (this.selectionMode === 'single-radio' ||
4237
+ this.selectionMode === 'multiple-checkbox'
4238
+ ? 1
4239
+ : 0) +
4240
+ (this.enableExpansion && !this.enableGrouping ? 1 : 0) +
4241
+ (this.enableEditing && this.showEditActions && this.editMode === 'row'
4242
+ ? 1
4243
+ : 0);
4244
+ return (h("tbody", { class: "data-grid-body", role: "rowgroup" }, h("tr", { class: "data-grid-empty", role: "row" }, h("td", { role: "cell", colSpan: columnCount }, h("div", { class: "empty-state-wrapper" }, h("bh-empty-state", { emptyTitle: this.emptyTitle, description: this.emptyDescription }))))));
4177
4245
  }
4178
4246
  renderSkeleton() {
4179
4247
  const skeletonRows = Array.from({ length: this.skeletonRowCount }, (_, i) => i);
4180
4248
  const columnCount = this.columns.length +
4181
- (this.selectionMode === 'single-radio' || this.selectionMode === 'multiple-checkbox' ? 1 : 0) +
4249
+ (this.selectionMode === 'single-radio' ||
4250
+ this.selectionMode === 'multiple-checkbox'
4251
+ ? 1
4252
+ : 0) +
4182
4253
  (this.enableExpansion && !this.enableGrouping ? 1 : 0) +
4183
- (this.enableEditing && this.showEditActions && this.editMode === 'row' ? 1 : 0);
4184
- return (h("div", { class: "data-grid-body data-grid-skeleton", role: "rowgroup" }, skeletonRows.map(i => (h("div", { class: "data-grid-row data-grid-row-skeleton", role: "row", key: i }, Array.from({ length: columnCount }, (_, j) => (h("div", { class: "data-grid-cell", role: "cell", key: j }, h("bh-skeleton-loader", { width: "80%", height: "16px" })))))))));
4254
+ (this.enableEditing && this.showEditActions && this.editMode === 'row'
4255
+ ? 1
4256
+ : 0);
4257
+ return (h("div", { class: "data-grid-body data-grid-skeleton", role: "rowgroup" }, skeletonRows.map((i) => (h("div", { class: "data-grid-row data-grid-row-skeleton", role: "row", key: i }, Array.from({ length: columnCount }, (_, j) => (h("div", { class: "data-grid-cell", role: "cell", key: j }, h("bh-skeleton-loader", { width: "80%", height: "16px" })))))))));
4185
4258
  }
4186
4259
  renderLoadingOverlay() {
4187
4260
  if (!this.loading || this.loadingType !== 'spinner')
@@ -4192,7 +4265,7 @@ const BhDataGrid = class {
4192
4265
  if (!this.enablePagination || !this.table)
4193
4266
  return null;
4194
4267
  const rowCount = this.table.getFilteredRowModel().rows.length;
4195
- return (h("bh-pagination", { page: this.page, totalItems: rowCount, pageSize: this.pageSize, pageSizeOptions: this.pageSizeOptions, onBhPageChange: this.handlePaginationChange, onBhPageSizeChange: this.handlePaginationChange }));
4268
+ return (h("bh-pagination", { page: this.page, totalItems: rowCount, pageSize: this.pageSize, pageSizeOptions: this.pageSizeOptions, showItemCount: false, compact: true, onBhPageChange: this.handlePaginationChange, onBhPageSizeChange: this.handlePaginationChange }));
4196
4269
  }
4197
4270
  // ===========================================================================
4198
4271
  // Main Render
@@ -4208,7 +4281,7 @@ const BhDataGrid = class {
4208
4281
  const containerStyle = this.maxHeight
4209
4282
  ? { maxHeight: this.maxHeight, overflowY: 'auto' }
4210
4283
  : {};
4211
- return (h("div", { key: 'aa7f1e09699fb99be7625f90b3b94fa9e6927498', class: gridClasses, role: "grid", "aria-busy": this.loading ? 'true' : 'false' }, this.captionPosition === 'top' && this.renderCaption(), this.renderGlobalFilter(), h("div", { key: '2929257ae04c88f8d225edac899fe7ec5f195fb2', class: "data-grid-container", style: containerStyle }, h("div", { key: '66bfba27da2199fbb1735229ea07e522b0f83dd1', class: "data-grid-table" }, this.renderHeader(), this.renderBody()), this.renderLoadingOverlay()), this.captionPosition === 'bottom' && this.renderCaption(), this.renderPagination()));
4284
+ return (h("div", { key: '42e71a54dc147533e05938275bf747919b89aed6', class: gridClasses, role: "grid", "aria-busy": this.loading ? 'true' : 'false' }, this.captionPosition === 'top' && this.renderCaption(), this.renderGlobalFilter(), h("div", { key: 'f8aede627ce62a8195f439ff81aad478aa1544ba', class: "data-grid-container", style: containerStyle }, h("table", { key: '528f578c5a756960d139a5a1a5cd171961c97ceb', class: "data-grid-table" }, this.renderHeader(), this.renderBody()), this.renderLoadingOverlay()), this.captionPosition === 'bottom' && this.renderCaption(), this.renderPagination()));
4212
4285
  }
4213
4286
  static get watchers() { return {
4214
4287
  "data": ["handleDataChange"],