@vielzeug/refine 2.3.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/README.md +5 -18
  2. package/dist/accordion-item.cjs +1 -1
  3. package/dist/accordion-item.cjs.map +1 -1
  4. package/dist/accordion-item.js +1 -1
  5. package/dist/accordion-item.js.map +1 -1
  6. package/dist/accordion.cjs.map +1 -1
  7. package/dist/accordion.js.map +1 -1
  8. package/dist/async.cjs +1 -1
  9. package/dist/async.cjs.map +1 -1
  10. package/dist/async.js +3 -3
  11. package/dist/async.js.map +1 -1
  12. package/dist/box.cjs.map +1 -1
  13. package/dist/box.js.map +1 -1
  14. package/dist/card.cjs +1 -1
  15. package/dist/card.cjs.map +1 -1
  16. package/dist/card.js +3 -3
  17. package/dist/card.js.map +1 -1
  18. package/dist/chat-message.cjs +1 -1
  19. package/dist/chat-message.cjs.map +1 -1
  20. package/dist/chat-message.js +1 -1
  21. package/dist/chat-message.js.map +1 -1
  22. package/dist/checkbox-group.cjs +1 -1
  23. package/dist/checkbox-group.cjs.map +1 -1
  24. package/dist/checkbox-group.js +1 -1
  25. package/dist/checkbox-group.js.map +1 -1
  26. package/dist/combobox.cjs +10 -8
  27. package/dist/combobox.cjs.map +1 -1
  28. package/dist/combobox.js +62 -51
  29. package/dist/combobox.js.map +1 -1
  30. package/dist/command-palette.cjs +1 -1
  31. package/dist/command-palette.cjs.map +1 -1
  32. package/dist/command-palette.js +6 -2
  33. package/dist/command-palette.js.map +1 -1
  34. package/dist/content/card/card.css.cjs +1 -1
  35. package/dist/content/card/card.css.cjs.map +1 -1
  36. package/dist/content/card/card.css.js +1 -1
  37. package/dist/content/card/card.css.js.map +1 -1
  38. package/dist/content/card/card.d.ts +2 -2
  39. package/dist/content/card/card.d.ts.map +1 -1
  40. package/dist/content/index.d.ts +2 -0
  41. package/dist/content/index.d.ts.map +1 -1
  42. package/dist/content/list/list-item.css.cjs +1 -1
  43. package/dist/content/list/list-item.css.cjs.map +1 -1
  44. package/dist/content/list/list-item.css.js +1 -1
  45. package/dist/content/list/list-item.css.js.map +1 -1
  46. package/dist/content/list/list-item.d.ts +9 -0
  47. package/dist/content/list/list-item.d.ts.map +1 -1
  48. package/dist/content/pagination/pagination.css.cjs +1 -1
  49. package/dist/content/pagination/pagination.css.cjs.map +1 -1
  50. package/dist/content/pagination/pagination.css.js +1 -1
  51. package/dist/content/pagination/pagination.css.js.map +1 -1
  52. package/dist/content/stats/stats.css.cjs +2 -0
  53. package/dist/content/stats/stats.css.cjs.map +1 -0
  54. package/dist/content/stats/stats.css.js +6 -0
  55. package/dist/content/stats/stats.css.js.map +1 -0
  56. package/dist/content/stats/stats.d.ts +72 -0
  57. package/dist/content/stats/stats.d.ts.map +1 -0
  58. package/dist/core/auto-resize.cjs +1 -1
  59. package/dist/core/auto-resize.cjs.map +1 -1
  60. package/dist/core/auto-resize.js +1 -1
  61. package/dist/core/auto-resize.js.map +1 -1
  62. package/dist/core/field-base.cjs +1 -1
  63. package/dist/core/field-base.cjs.map +1 -1
  64. package/dist/core/field-base.d.ts +1 -1
  65. package/dist/core/field-base.js +1 -1
  66. package/dist/core/field-base.js.map +1 -1
  67. package/dist/core/nav.cjs +1 -1
  68. package/dist/core/nav.cjs.map +1 -1
  69. package/dist/core/nav.d.ts +4 -1
  70. package/dist/core/nav.d.ts.map +1 -1
  71. package/dist/core/nav.js +41 -28
  72. package/dist/core/nav.js.map +1 -1
  73. package/dist/core/option-list.cjs +1 -1
  74. package/dist/core/option-list.cjs.map +1 -1
  75. package/dist/core/option-list.d.ts.map +1 -1
  76. package/dist/core/option-list.js +30 -28
  77. package/dist/core/option-list.js.map +1 -1
  78. package/dist/core/slider.cjs +1 -1
  79. package/dist/core/slider.cjs.map +1 -1
  80. package/dist/core/slider.js +1 -1
  81. package/dist/core/slider.js.map +1 -1
  82. package/dist/core/spinner.cjs +1 -1
  83. package/dist/core/spinner.cjs.map +1 -1
  84. package/dist/core/spinner.js +1 -1
  85. package/dist/core/spinner.js.map +1 -1
  86. package/dist/custom-elements.json +5471 -4977
  87. package/dist/datagrid.cjs +219 -199
  88. package/dist/datagrid.cjs.map +1 -1
  89. package/dist/datagrid.js +415 -302
  90. package/dist/datagrid.js.map +1 -1
  91. package/dist/disclosure/accordion/accordion.css.cjs +1 -1
  92. package/dist/disclosure/accordion/accordion.css.cjs.map +1 -1
  93. package/dist/disclosure/accordion/accordion.css.js +1 -1
  94. package/dist/disclosure/accordion/accordion.css.js.map +1 -1
  95. package/dist/disclosure/accordion/accordion.d.ts +5 -5
  96. package/dist/disclosure/accordion/accordion.d.ts.map +1 -1
  97. package/dist/disclosure/accordion-item/accordion-item.css.cjs +1 -1
  98. package/dist/disclosure/accordion-item/accordion-item.css.cjs.map +1 -1
  99. package/dist/disclosure/accordion-item/accordion-item.css.js +1 -1
  100. package/dist/disclosure/accordion-item/accordion-item.css.js.map +1 -1
  101. package/dist/disclosure/accordion-item/accordion-item.d.ts +3 -3
  102. package/dist/disclosure/accordion-item/accordion-item.d.ts.map +1 -1
  103. package/dist/disclosure/tab-item/tab-item.css.cjs +1 -1
  104. package/dist/disclosure/tab-item/tab-item.css.cjs.map +1 -1
  105. package/dist/disclosure/tab-item/tab-item.css.js +1 -1
  106. package/dist/disclosure/tab-item/tab-item.css.js.map +1 -1
  107. package/dist/disclosure/tab-item/tab-item.d.ts +6 -3
  108. package/dist/disclosure/tab-item/tab-item.d.ts.map +1 -1
  109. package/dist/disclosure/tabs/tabs.css.cjs +1 -1
  110. package/dist/disclosure/tabs/tabs.css.cjs.map +1 -1
  111. package/dist/disclosure/tabs/tabs.css.js +1 -1
  112. package/dist/disclosure/tabs/tabs.css.js.map +1 -1
  113. package/dist/disclosure/tabs/tabs.d.ts +9 -5
  114. package/dist/disclosure/tabs/tabs.d.ts.map +1 -1
  115. package/dist/drawer.cjs +1 -1
  116. package/dist/drawer.cjs.map +1 -1
  117. package/dist/drawer.js +1 -1
  118. package/dist/drawer.js.map +1 -1
  119. package/dist/feedback/toast/toast.d.ts.map +1 -1
  120. package/dist/file-input.cjs +1 -1
  121. package/dist/file-input.cjs.map +1 -1
  122. package/dist/file-input.js +2 -2
  123. package/dist/file-input.js.map +1 -1
  124. package/dist/frameworks/elements.d.ts +4 -85
  125. package/dist/frameworks/react.d.ts +5 -4
  126. package/dist/frameworks/vue.d.ts +4 -4
  127. package/dist/grid.cjs +2 -2
  128. package/dist/grid.cjs.map +1 -1
  129. package/dist/grid.js +21 -18
  130. package/dist/grid.js.map +1 -1
  131. package/dist/icon.cjs +1 -1
  132. package/dist/icon.cjs.map +1 -1
  133. package/dist/icon.js +1 -1
  134. package/dist/icon.js.map +1 -1
  135. package/dist/input.cjs +5 -4
  136. package/dist/input.cjs.map +1 -1
  137. package/dist/input.js +14 -8
  138. package/dist/input.js.map +1 -1
  139. package/dist/inputs/combobox/combobox-options.cjs +1 -1
  140. package/dist/inputs/combobox/combobox-options.cjs.map +1 -1
  141. package/dist/inputs/combobox/combobox-options.d.ts.map +1 -1
  142. package/dist/inputs/combobox/combobox-options.js +1 -0
  143. package/dist/inputs/combobox/combobox-options.js.map +1 -1
  144. package/dist/inputs/combobox/combobox.css.cjs +1 -1
  145. package/dist/inputs/combobox/combobox.css.cjs.map +1 -1
  146. package/dist/inputs/combobox/combobox.css.js +1 -1
  147. package/dist/inputs/combobox/combobox.css.js.map +1 -1
  148. package/dist/inputs/combobox/combobox.d.ts +13 -1
  149. package/dist/inputs/combobox/combobox.d.ts.map +1 -1
  150. package/dist/inputs/combobox/combobox.types.d.ts +7 -0
  151. package/dist/inputs/combobox/combobox.types.d.ts.map +1 -1
  152. package/dist/inputs/datagrid/datagrid-model.cjs +1 -1
  153. package/dist/inputs/datagrid/datagrid-model.cjs.map +1 -1
  154. package/dist/inputs/datagrid/datagrid-model.d.ts +17 -3
  155. package/dist/inputs/datagrid/datagrid-model.d.ts.map +1 -1
  156. package/dist/inputs/datagrid/datagrid-model.js +93 -70
  157. package/dist/inputs/datagrid/datagrid-model.js.map +1 -1
  158. package/dist/inputs/datagrid/datagrid.css.cjs +1 -1
  159. package/dist/inputs/datagrid/datagrid.css.cjs.map +1 -1
  160. package/dist/inputs/datagrid/datagrid.css.js +1 -1
  161. package/dist/inputs/datagrid/datagrid.css.js.map +1 -1
  162. package/dist/inputs/datagrid/datagrid.d.ts +78 -36
  163. package/dist/inputs/datagrid/datagrid.d.ts.map +1 -1
  164. package/dist/inputs/file-input/file-input-upload.cjs +1 -1
  165. package/dist/inputs/file-input/file-input-upload.cjs.map +1 -1
  166. package/dist/inputs/file-input/file-input-upload.js +1 -1
  167. package/dist/inputs/file-input/file-input-upload.js.map +1 -1
  168. package/dist/inputs/index.d.ts +3 -4
  169. package/dist/inputs/index.d.ts.map +1 -1
  170. package/dist/inputs/input/input.css.cjs +1 -1
  171. package/dist/inputs/input/input.css.cjs.map +1 -1
  172. package/dist/inputs/input/input.css.js +1 -1
  173. package/dist/inputs/input/input.css.js.map +1 -1
  174. package/dist/inputs/input/input.d.ts +3 -0
  175. package/dist/inputs/input/input.d.ts.map +1 -1
  176. package/dist/inputs/select/select.css.cjs +1 -1
  177. package/dist/inputs/select/select.css.cjs.map +1 -1
  178. package/dist/inputs/select/select.css.js +1 -1
  179. package/dist/inputs/select/select.css.js.map +1 -1
  180. package/dist/inputs/select/select.d.ts +5 -0
  181. package/dist/inputs/select/select.d.ts.map +1 -1
  182. package/dist/inputs/shared/field-binding.cjs +1 -1
  183. package/dist/inputs/shared/field-binding.cjs.map +1 -1
  184. package/dist/inputs/shared/field-binding.js +6 -6
  185. package/dist/inputs/shared/field-binding.js.map +1 -1
  186. package/dist/layout/box/box.css.cjs +1 -1
  187. package/dist/layout/box/box.css.cjs.map +1 -1
  188. package/dist/layout/box/box.css.js +1 -1
  189. package/dist/layout/box/box.css.js.map +1 -1
  190. package/dist/layout/box/box.d.ts +3 -3
  191. package/dist/layout/box/box.d.ts.map +1 -1
  192. package/dist/layout/grid/grid.d.ts.map +1 -1
  193. package/dist/layout/navbar/navbar.css.cjs +1 -1
  194. package/dist/layout/navbar/navbar.css.cjs.map +1 -1
  195. package/dist/layout/navbar/navbar.css.js +1 -1
  196. package/dist/layout/navbar/navbar.css.js.map +1 -1
  197. package/dist/layout/navbar/navbar.d.ts +3 -1
  198. package/dist/layout/navbar/navbar.d.ts.map +1 -1
  199. package/dist/layout/sidebar/sidebar.css.cjs +1 -1
  200. package/dist/layout/sidebar/sidebar.css.cjs.map +1 -1
  201. package/dist/layout/sidebar/sidebar.css.js +1 -1
  202. package/dist/layout/sidebar/sidebar.css.js.map +1 -1
  203. package/dist/layout/sidebar/sidebar.d.ts +8 -0
  204. package/dist/layout/sidebar/sidebar.d.ts.map +1 -1
  205. package/dist/list-item.cjs +6 -5
  206. package/dist/list-item.cjs.map +1 -1
  207. package/dist/list-item.js +23 -17
  208. package/dist/list-item.js.map +1 -1
  209. package/dist/list.cjs +1 -1
  210. package/dist/list.cjs.map +1 -1
  211. package/dist/list.js +1 -1
  212. package/dist/list.js.map +1 -1
  213. package/dist/menu.cjs +1 -1
  214. package/dist/menu.cjs.map +1 -1
  215. package/dist/menu.js +7 -7
  216. package/dist/menu.js.map +1 -1
  217. package/dist/navbar.cjs +2 -2
  218. package/dist/navbar.cjs.map +1 -1
  219. package/dist/navbar.js +91 -87
  220. package/dist/navbar.js.map +1 -1
  221. package/dist/navigation-menu.cjs +1 -1
  222. package/dist/navigation-menu.cjs.map +1 -1
  223. package/dist/navigation-menu.js +2 -2
  224. package/dist/navigation-menu.js.map +1 -1
  225. package/dist/number-input.cjs +1 -1
  226. package/dist/number-input.cjs.map +1 -1
  227. package/dist/number-input.js +1 -1
  228. package/dist/number-input.js.map +1 -1
  229. package/dist/overlay/popover/popover.css.cjs +1 -1
  230. package/dist/overlay/popover/popover.css.cjs.map +1 -1
  231. package/dist/overlay/popover/popover.css.js +1 -1
  232. package/dist/overlay/popover/popover.css.js.map +1 -1
  233. package/dist/overlay/popover/popover.d.ts +1 -0
  234. package/dist/overlay/popover/popover.d.ts.map +1 -1
  235. package/dist/overlay/shared/use-dialog.cjs +1 -1
  236. package/dist/overlay/shared/use-dialog.cjs.map +1 -1
  237. package/dist/overlay/shared/use-dialog.js +1 -1
  238. package/dist/overlay/shared/use-dialog.js.map +1 -1
  239. package/dist/overlay/shared/use-floating-trigger.cjs +1 -1
  240. package/dist/overlay/shared/use-floating-trigger.cjs.map +1 -1
  241. package/dist/overlay/shared/use-floating-trigger.js +1 -1
  242. package/dist/overlay/shared/use-floating-trigger.js.map +1 -1
  243. package/dist/overlay/tooltip/tooltip.d.ts.map +1 -1
  244. package/dist/popover.cjs +1 -1
  245. package/dist/popover.cjs.map +1 -1
  246. package/dist/popover.js +6 -6
  247. package/dist/popover.js.map +1 -1
  248. package/dist/radio-group.cjs +1 -1
  249. package/dist/radio-group.cjs.map +1 -1
  250. package/dist/radio-group.js +1 -1
  251. package/dist/radio-group.js.map +1 -1
  252. package/dist/radio.cjs +1 -1
  253. package/dist/radio.cjs.map +1 -1
  254. package/dist/radio.js +15 -13
  255. package/dist/radio.js.map +1 -1
  256. package/dist/rating.cjs +1 -1
  257. package/dist/rating.cjs.map +1 -1
  258. package/dist/rating.js +2 -2
  259. package/dist/rating.js.map +1 -1
  260. package/dist/refine.cjs +373 -324
  261. package/dist/refine.cjs.map +1 -1
  262. package/dist/refine.iife.js +382 -333
  263. package/dist/refine.iife.js.map +1 -1
  264. package/dist/refine.js +417 -368
  265. package/dist/refine.js.map +1 -1
  266. package/dist/select.cjs +16 -14
  267. package/dist/select.cjs.map +1 -1
  268. package/dist/select.js +118 -112
  269. package/dist/select.js.map +1 -1
  270. package/dist/shared/types.d.ts +0 -2
  271. package/dist/shared/types.d.ts.map +1 -1
  272. package/dist/sidebar.cjs +28 -23
  273. package/dist/sidebar.cjs.map +1 -1
  274. package/dist/sidebar.js +143 -108
  275. package/dist/sidebar.js.map +1 -1
  276. package/dist/skeleton.cjs +1 -1
  277. package/dist/skeleton.cjs.map +1 -1
  278. package/dist/skeleton.js +11 -9
  279. package/dist/skeleton.js.map +1 -1
  280. package/dist/slider.cjs +1 -1
  281. package/dist/slider.cjs.map +1 -1
  282. package/dist/slider.js +21 -21
  283. package/dist/slider.js.map +1 -1
  284. package/dist/stats.cjs +18 -0
  285. package/dist/stats.cjs.map +1 -0
  286. package/dist/stats.js +88 -0
  287. package/dist/stats.js.map +1 -0
  288. package/dist/stepper.cjs +1 -1
  289. package/dist/stepper.cjs.map +1 -1
  290. package/dist/stepper.js +1 -1
  291. package/dist/stepper.js.map +1 -1
  292. package/dist/styles/mixins/animation.css.cjs +2 -0
  293. package/dist/styles/mixins/animation.css.cjs.map +1 -1
  294. package/dist/styles/mixins/animation.css.d.ts.map +1 -1
  295. package/dist/styles/mixins/animation.css.js +2 -0
  296. package/dist/styles/mixins/animation.css.js.map +1 -1
  297. package/dist/tab-item.cjs +1 -1
  298. package/dist/tab-item.cjs.map +1 -1
  299. package/dist/tab-item.js +3 -2
  300. package/dist/tab-item.js.map +1 -1
  301. package/dist/tabs.cjs +1 -1
  302. package/dist/tabs.cjs.map +1 -1
  303. package/dist/tabs.js +3 -1
  304. package/dist/tabs.js.map +1 -1
  305. package/dist/toast.cjs +8 -8
  306. package/dist/toast.cjs.map +1 -1
  307. package/dist/toast.js +32 -33
  308. package/dist/toast.js.map +1 -1
  309. package/dist/tooltip.cjs +1 -1
  310. package/dist/tooltip.cjs.map +1 -1
  311. package/dist/tooltip.js +2 -2
  312. package/dist/tooltip.js.map +1 -1
  313. package/dist/types/elements.d.ts +207 -0
  314. package/package.json +70 -62
package/dist/datagrid.cjs CHANGED
@@ -1,201 +1,221 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./styles/mixins/table-base.css.cjs");require("./_dev.cjs");const t=require("./shared/prop-bundles.cjs"),n=require("./inputs/datagrid/datagrid.css.cjs"),r=require("./inputs/datagrid/datagrid-column.cjs"),i=require("./inputs/datagrid/datagrid-model.cjs"),a=require("./inputs/datagrid/datagrid-nav.cjs");let o=require("@vielzeug/ore"),s=require("@vielzeug/ripple"),c=require("@vielzeug/arsenal/function");function l(e,t){return e.key!==t||e.direction===`none`?`chevrons-up-down`:e.direction===`asc`?`chevron-up`:`chevron-down`}function u(e,t){return e.key!==t||e.direction===`none`?`none`:e.direction===`asc`?`ascending`:`descending`}var d=`ore-datagrid`;(0,o.define)(d,{props:{activeView:o.prop.string(),density:o.prop.string(),...t.disablableBundle,...t.loadableBundle,columns:o.prop.data(),emptyText:o.prop.string(`No data`),expandable:o.prop.bool(!1),filterOptions:o.prop.data(),fullwidth:o.prop.bool(!1),getRowKey:o.prop.data(),label:o.prop.string(),pageSize:o.prop.number(10),pageSizeOptions:o.prop.data(),rows:o.prop.data(),searchLabel:o.prop.data(),searchPlaceholder:o.prop.string(`Search…`),selectedKeys:o.prop.data(),selectionMode:o.prop.string(`none`),sortMode:o.prop.string(`client`),source:o.prop.data(),striped:o.prop.bool(!1),views:o.prop.data()},setup(e){let t=(0,o.getHost)(),n=(0,o.useEmit)(),d=(0,o.useSlots)(),f=(0,s.computed)(()=>e.disabled.value===!0),p=(0,s.computed)(()=>e.selectionMode.value??`none`),m=(0,s.signal)(new Set),h=(0,s.computed)(()=>e.expandable.value===!0&&y.value.some(e=>typeof e.renderExpanded==`function`)),g=(0,s.computed)(()=>+(p.value===`multi`)),_=(0,s.signal)(e.pageSize.value??10);(0,s.watch)(e.pageSize,e=>{e!=null&&(_.value=e)});let v=(0,s.signal)([]);(0,o.onMounted)(()=>{v.value=r.parseColumnChildren(t);let e=new MutationObserver(()=>{v.value=r.parseColumnChildren(t)});return e.observe(t,{attributeFilter:r.COLUMN_OBSERVED_ATTRS,attributes:!0,childList:!0,subtree:!0}),()=>e.disconnect()});let y=(0,s.computed)(()=>{let t=e.columns.value;return t===void 0?v.value:t}),b=t=>{let n=e.getRowKey.value;if(n)return n(t);let r=t.id;return r==null?`__missing_${Math.random().toString(36).slice(2)}`:String(r)},x=(0,s.computed)(()=>e.source.value!=null),S=(0,s.signal)([]),C=(0,s.signal)({error:null,isLoading:!1,pageCount:1,pageNumber:1,pageSize:_.value,totalItems:0}),w=null;(0,o.onCleanup)(()=>{w?.(),w=null}),(0,s.watch)(e.source,e=>{if(w?.(),w=null,!e){S.value=[],C.value={error:null,isLoading:!1,pageCount:1,pageNumber:1,pageSize:_.value,totalItems:0};return}let t=(t=e.snapshot)=>{S.value=t.data,C.value={error:t.error,isLoading:t.isFetching,pageCount:t.pagination.count,pageNumber:t.pagination.index,pageSize:t.pagination.size,totalItems:t.pagination.total}};t(),w=e.subscribe(t)},{immediate:!0});let T=i.createDataGridModel({clientSide:(0,s.computed)(()=>!x.value),columns:y,filterOptions:e.filterOptions,getRowKey:b,items:(0,s.computed)(()=>x.value?S.value:e.rows.value??[]),onSelectionChange:e=>{n(`selection-change`,{keys:[...e],rows:T.selectedRows.value})},onSortChange:e=>{n(`sort-change`,e)},pageSize:(0,s.computed)(()=>x.value?0:_.value),selectionMode:p,sortMode:(0,s.computed)(()=>e.sortMode.value??`client`)}),E=(0,c.debounce)(t=>{let n=e.source.value;n?.setQuery?n.setQuery({search:t}):T.setSearchQuery(t)},250);(0,s.watch)(e.selectedKeys,e=>{Array.isArray(e)&&T.setSelection(new Set(e))},{immediate:!0});let D=(0,s.signal)({}),O=(e,t)=>n=>{n.preventDefault();let r=n.clientX,i=t.getBoundingClientRect().width,a=new AbortController,{signal:o}=a;window.addEventListener(`pointermove`,t=>{D.value={...D.value,[e]:Math.max(40,i+t.clientX-r)}},{signal:o}),window.addEventListener(`pointerup`,()=>a.abort(),{signal:o})},k=T.visibleColumns,A=(e,t)=>{if(e.cell)return e.cell(t);let n=t[e.key];return n==null?``:String(n)};function j(t){let r=e.source.value;if(r){t===`prev`?r.page?.previous():r.page?.next();return}t===`prev`?T.prevPage():T.nextPage(),n(`page-change`,{pageIndex:T.pageIndex.value,pageSize:_.value})}let M=(0,s.computed)(()=>{let e=T.currentPageItems.value;return!e.length||T.isAllSelected()?!1:e.some(e=>T.selectedKeys.value.has(b(e)))}),N=(0,s.computed)(()=>k.value.length+ +(p.value===`multi`)+ +!!h.value),P=(0,s.computed)(()=>x.value?C.value.pageCount>1:_.value>0),F=(0,s.computed)(()=>{if(x.value){let{pageNumber:e,pageSize:t,totalItems:n}=C.value,r=Math.max(1,t);if(!P.value)return`${n} row${n===1?``:`s`}`;if(n===0)return`0 to 0 of 0`;let i=(e-1)*r+1;return`${i} to ${Math.min(i+r-1,n)} of ${n}`}let e=T.totalItems.value;if(!P.value)return`${e} row${e===1?``:`s`}`;if(e===0)return`0 to 0 of 0`;let t=T.pageIndex.value*_.value+1;return`${t} to ${Math.min(t+_.value-1,e)} of ${e}`}),I=(0,s.computed)(()=>e.loading.value===!0||x.value&&C.value.isLoading),L=(0,s.computed)(()=>x.value?C.value.pageNumber>1:T.hasPrevPage.value),R=(0,s.computed)(()=>x.value?C.value.pageNumber<C.value.pageCount:T.hasNextPage.value),z=(0,s.computed)(()=>x.value?C.value.totalItems===0?`0 / 0`:`${C.value.pageNumber} / ${C.value.pageCount}`:`${T.pageIndex.value+1} / ${T.pageCount.value}`),B=[`compact`,`cozy`,`comfortable`],V={comfortable:`rows-2`,compact:`rows-4`,cozy:`rows-3`},H={comfortable:`Density: Comfortable`,compact:`Density: Compact`,cozy:`Density: Cozy`},U=(0,s.signal)(e.density.value??`cozy`);(0,s.watch)(e.density,e=>{e&&(U.value=e)});let W=()=>{let e=B.indexOf(U.value),r=B[(e+1)%B.length];U.value=r,t.setAttribute(`density`,r),n(`density-change`,{density:r})},G=(0,s.signal)(!1),K=e=>{let t=new Set(m.value),r=!t.has(e);r?t.add(e):t.delete(e),m.value=t,n(`row-expand`,{expanded:r,key:e})},q={activeCell:(0,s.signal)({col:0,row:0}),focusCell:()=>{}};(0,o.onMounted)(()=>{let e=t.shadowRoot,n=e.querySelector(`.dg-table`);if(!n)return;let{cleanup:r,handle:i}=a.createGridNav(n,e);return q=i,r}),t.focusCell=e=>q.focusCell(e);let J=()=>{let t=e.views.value??[],r=e.activeView.value;return o.html`
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./styles/mixins/table-base.css.cjs"),t=require("./_dev.cjs"),n=require("./shared/prop-bundles.cjs"),r=require("./inputs/datagrid/datagrid.css.cjs"),i=require("./inputs/datagrid/datagrid-column.cjs"),a=require("./inputs/datagrid/datagrid-model.cjs"),o=require("./inputs/datagrid/datagrid-nav.cjs");let s=require("@vielzeug/ore"),c=require("@vielzeug/ripple"),l=require("@vielzeug/arsenal");var ee={activeFilters:e=>`${e} active filter${e===1?``:`s`}`,addFilter:`Add filter…`,ascending:`A → Z`,clearAllFilters:`Clear all filters`,clearFiltersAndSearch:`Clear all filters & search`,clearSort:`Clear sort`,closeSearch:`Close search`,collapseRow:`Collapse row`,columnOptions:`Column options`,columnVisibility:`Column visibility`,comfortableDensity:`Density: Comfortable`,compactDensity:`Density: Compact`,contains:`Contains`,cozyDensity:`Density: Cozy`,data:`Data`,descending:`Z → A`,emptyValue:`(empty)`,equals:`Equals`,expandRow:`Expand row`,filter:`Filter`,filterBy:`Filter by`,filterOperator:e=>`${e} operator`,greaterThan:`Greater than`,hiddenColumns:e=>`${e} hidden column${e===1?``:`s`}`,lessThan:`Less than`,nextPage:`Next page`,numericAscending:`0 → 9`,numericDescending:`9 → 0`,pageNavigation:`Page navigation`,pagination:`Pagination`,previousPage:`Previous page`,property:`Property`,range:(e,t,n)=>`${e} to ${t} of ${n}`,removeFilter:`Remove filter`,resetColumns:`Reset`,rowDetails:`Row details`,rows:e=>`${e} row${e===1?``:`s`}`,rowsPerPage:`Rows per page`,search:`Search`,selectAllRows:`Select all rows on this page`,selectRow:`Select row`,sort:`Sort`,sortBy:`Sort by`,views:`Views`,visibleColumns:(e,t)=>`${e} of ${t} visible`};function u(e,t){return e.key!==t||e.direction===`none`?`chevrons-up-down`:e.direction===`asc`?`chevron-up`:`chevron-down`}function d(e,t){return e.key!==t||e.direction===`none`?`none`:e.direction===`asc`?`ascending`:`descending`}function f(e){let t=e.detail;return Array.isArray(t?.values)?t.values:(e.target.value??``).split(`,`).filter(Boolean)}var p=`ore-datagrid`;(0,s.define)(p,{props:{activeView:s.prop.string(),density:s.prop.string(),...n.disablableBundle,...n.loadableBundle,columns:s.prop.data(),emptyText:s.prop.string(`No data`),expandable:s.prop.bool(!1),filterOptions:s.prop.data(),fullwidth:s.prop.bool(!1),getRowKey:s.prop.data(),label:s.prop.string(),labels:s.prop.data(),pageSize:s.prop.number(10),pageSizeOptions:s.prop.data(),rows:s.prop.data(),searchLabel:s.prop.data(),searchPlaceholder:s.prop.string(),selectedKeys:s.prop.data(),selectionMode:s.prop.string(`none`),sortMode:s.prop.string(`client`),source:s.prop.data(),striped:s.prop.bool(!1),views:s.prop.data()},setup(e){let n=(0,s.getHost)(),r=(0,s.useEmit)(),p=(0,s.useSlots)(),m=(0,c.computed)(()=>({...ee,...e.labels.value})),h=(0,c.computed)(()=>e.disabled.value===!0),g=(0,c.computed)(()=>e.selectionMode.value??`none`),_=(0,c.signal)(new Set),v=(0,c.computed)(()=>e.expandable.value===!0&&S.value.some(e=>typeof e.renderExpanded==`function`)),y=(0,c.computed)(()=>+(g.value===`multi`)),b=(0,c.signal)(e.pageSize.value??10);(0,c.watch)(e.pageSize,e=>{e!=null&&(b.value=e)});let x=(0,c.signal)([]);(0,s.onMounted)(()=>{x.value=i.parseColumnChildren(n);let e=new MutationObserver(()=>{x.value=i.parseColumnChildren(n)});return e.observe(n,{attributeFilter:i.COLUMN_OBSERVED_ATTRS,attributes:!0,childList:!0,subtree:!0}),()=>e.disconnect()});let S=(0,c.computed)(()=>{let t=e.columns.value;return t===void 0?x.value:t}),C=(0,c.computed)(()=>{let t=S.value.map(e=>({label:e.label,value:e.key})),n=new Set(t.map(e=>e.value));for(let r of e.filterOptions.value??[])n.has(r.key)||t.push({label:r.label,value:r.key});return t}),w=t=>{let n=e.getRowKey.value;if(n)return n(t);let r=t.id;return r==null?`__missing_${Math.random().toString(36).slice(2)}`:String(r)},T=(0,c.computed)(()=>e.source.value!=null),E=(0,c.signal)([]),D=(0,c.signal)({error:null,isLoading:!1,pageCount:1,pageNumber:1,pageSize:b.value,totalItems:0}),O=null;(0,s.onCleanup)(()=>{O?.(),O=null}),(0,c.watch)(e.source,e=>{if(O?.(),O=null,!e){E.value=[],D.value={error:null,isLoading:!1,pageCount:1,pageNumber:1,pageSize:b.value,totalItems:0};return}let t=(t=e.state)=>{E.value=t.items,D.value={error:t.error,isLoading:t.loading,pageCount:t.pagination.pageCount,pageNumber:t.pagination.page,pageSize:t.pagination.pageSize,totalItems:t.pagination.totalItems}};t(),O=e.subscribe(t)},{immediate:!0});let k=a.createDataGridModel({activeView:(0,c.computed)(()=>(e.views.value??[]).find(t=>t.id===e.activeView.value)),clientSide:(0,c.computed)(()=>!T.value),columns:S,emptyValueLabel:(0,c.computed)(()=>m.value.emptyValue),filterOperators:(0,c.computed)(()=>[{label:m.value.contains,value:`contains`},{label:m.value.equals,value:`equals`},{label:m.value.greaterThan,value:`gt`},{label:m.value.lessThan,value:`lt`}]),filterOptions:e.filterOptions,getRowKey:w,items:(0,c.computed)(()=>T.value?E.value:e.rows.value??[]),onSelectionChange:e=>{r(`selection-change`,{keys:[...e],rows:k.selectedRows.value})},onSortChange:e=>{r(`sort-change`,e)},pageSize:(0,c.computed)(()=>T.value?0:b.value),selectionMode:g,sortMode:(0,c.computed)(()=>e.sortMode.value??`client`)}),A=(0,c.computed)(()=>{let e=S.value.find(e=>e.key===k.sortState.value.key);if(e?.sortType)return e.sortType;let t=k.filteredRows.value.find(t=>t[e?.key??``]!=null);return t&&typeof t[e?.key??``]==`number`?`number`:`text`}),j=(0,c.computed)(()=>A.value===`number`?[{label:m.value.numericAscending,value:`asc`},{label:m.value.numericDescending,value:`desc`}]:[{label:m.value.ascending,value:`asc`},{label:m.value.descending,value:`desc`}]),M=e=>{e&&e.catch(e=>t.warn(`ore-datagrid: source command failed: ${String(e)}`))},N=t=>{M(e.source.value?.setParams?.(t))},P=(0,l.debounce)(t=>{e.source.value?.setParams?N(t):k.setSearchQuery(t)},250);(0,s.onCleanup)(P.cancel),(0,c.watch)(e.selectedKeys,e=>{Array.isArray(e)&&k.setSelection(new Set(e))},{immediate:!0});let F=(0,c.signal)({}),I=(e,t)=>n=>{n.preventDefault();let r=n.clientX,i=t.getBoundingClientRect().width,a=new AbortController,{signal:o}=a;window.addEventListener(`pointermove`,t=>{F.value={...F.value,[e]:Math.max(40,i+t.clientX-r)}},{signal:o}),window.addEventListener(`pointerup`,()=>a.abort(),{signal:o})},L=k.visibleColumns,te=(e,t)=>{if(e.cell)return e.cell(t);let n=t[e.key];return n==null?``:String(n)};function R(t){let n=e.source.value;if(n){M(t===`prev`?n.previous():n.next());return}t===`prev`?k.prevPage():k.nextPage(),r(`page-change`,{pageIndex:k.pageIndex.value,pageSize:b.value})}let z=(0,c.computed)(()=>{let e=k.currentPageItems.value;return!e.length||k.isAllSelected()?!1:e.some(e=>k.selectedKeys.value.has(w(e)))}),B=(0,c.computed)(()=>L.value.length+ +(g.value===`multi`)+ +!!v.value),V=(0,c.computed)(()=>T.value?D.value.pageCount>1:b.value>0),H=(0,c.computed)(()=>{if(T.value){let{pageNumber:e,pageSize:t,totalItems:n}=D.value,r=Math.max(1,t);if(!V.value)return m.value.rows(n);if(n===0)return m.value.range(0,0,0);let i=(e-1)*r+1,a=Math.min(i+r-1,n);return m.value.range(i,a,n)}let e=k.totalItems.value;if(!V.value)return m.value.rows(e);if(e===0)return m.value.range(0,0,0);let t=k.pageIndex.value*b.value+1,n=Math.min(t+b.value-1,e);return m.value.range(t,n,e)}),U=(0,c.computed)(()=>e.loading.value===!0||T.value&&D.value.isLoading),W=(0,c.computed)(()=>T.value?D.value.pageNumber>1:k.hasPrevPage.value),G=(0,c.computed)(()=>T.value?D.value.pageNumber<D.value.pageCount:k.hasNextPage.value),K=(0,c.computed)(()=>T.value?D.value.totalItems===0?`0 / 0`:`${D.value.pageNumber} / ${D.value.pageCount}`:`${k.pageIndex.value+1} / ${k.pageCount.value}`),q=[`compact`,`cozy`,`comfortable`],J={comfortable:`rows-2`,compact:`rows-4`,cozy:`rows-3`},Y=(0,c.computed)(()=>({comfortable:m.value.comfortableDensity,compact:m.value.compactDensity,cozy:m.value.cozyDensity})),X=(0,c.signal)(e.density.value??`cozy`);(0,c.watch)(e.density,e=>{e&&(X.value=e)});let Z=()=>{let e=q.indexOf(X.value),t=q[(e+1)%q.length];X.value=t,n.setAttribute(`density`,t),r(`density-change`,{density:t})},Q=e=>{let t=new Set(_.value),n=!t.has(e);n?t.add(e):t.delete(e),_.value=t,r(`row-expand`,{expanded:n,key:e})},$={activeCell:(0,c.signal)({col:0,row:0}),focusCell:()=>{}};(0,s.onMounted)(()=>{let e=n.shadowRoot,t=e.querySelector(`.dg-table`);if(!t)return;let{cleanup:r,handle:i}=o.createGridNav(t,e);return $=i,r}),n.focusCell=e=>$.focusCell(e);let ne=()=>{let t=e.views.value??[],n=e.activeView.value;return s.html`
2
2
  <div
3
3
  class="dg-tabs"
4
4
  role="tablist"
5
- aria-label="Views"
5
+ aria-label="${()=>m.value.views}"
6
6
  aria-controls="dg-tabpanel"
7
7
  @keydown="${e=>{if(![`ArrowLeft`,`ArrowRight`,`Home`,`End`].includes(e.key))return;let t=Array.from(e.currentTarget.querySelectorAll(`.dg-tab`)),n=t.findIndex(e=>e.classList.contains(`dg-tab--active`)),r=n;if(e.key===`ArrowLeft`?r=Math.max(0,n-1):e.key===`ArrowRight`?r=Math.min(t.length-1,n+1):e.key===`Home`?r=0:e.key===`End`&&(r=t.length-1),r!==n){e.preventDefault();let n=t[r];n.focus(),n.click()}}}">
8
- ${t.map(e=>o.html`
8
+ ${t.map(e=>s.html`
9
9
  <ore-button
10
- class="${()=>`dg-tab${r===e.id?` dg-tab--active`:``}`}"
10
+ class="${()=>`dg-tab${n===e.id?` dg-tab--active`:``}`}"
11
11
  role="tab"
12
12
  variant="ghost"
13
13
  rounded="full"
14
14
  size="sm"
15
- tabindex="${()=>r===e.id?`0`:`-1`}"
16
- aria-selected="${()=>String(r===e.id)}"
15
+ tabindex="${()=>n===e.id?`0`:`-1`}"
16
+ aria-selected="${()=>String(n===e.id)}"
17
17
  aria-controls="dg-tabpanel"
18
- @click="${()=>{n(`view-change`,{id:e.id,label:e.label})}}">
18
+ @click="${()=>{r(`view-change`,{id:e.id,label:e.label})}}">
19
19
  ${e.label}
20
20
  </ore-button>
21
21
  `)}
22
22
  </div>
23
- `},Y=()=>o.html`
24
- <ore-popover class="dg-action-popover" placement="bottom-end" label="Sort" style="--popover-min-width:18rem">
25
- <ore-button variant="ghost" size="sm" icon-only label="Sort">
23
+ `},re=()=>s.html`
24
+ <ore-popover class="dg-action-popover" placement="bottom-end" label="${()=>m.value.sort}" style="--popover-min-width:18rem;--popover-overflow:visible">
25
+ <ore-button
26
+ class="dg-icon-btn dg-state-trigger"
27
+ variant="ghost"
28
+ size="sm"
29
+ icon-only
30
+ ?data-customized="${()=>k.sortState.value.direction!==`none`}"
31
+ label="${()=>m.value.sort}">
26
32
  <ore-icon name="arrow-up-down" size="15" stroke-width="1.75" aria-hidden="true"></ore-icon>
27
33
  </ore-button>
28
34
  <div slot="content" class="dg-pop-sort">
29
35
  <div class="dg-pop-header">
30
- <span class="dg-pop-title">Sort by</span>
31
- <ore-button
32
- class="dg-icon-btn"
33
- variant="ghost"
34
- size="sm"
35
- icon-only
36
- label="Clear sort"
37
- disabled="${()=>T.sortState.value.direction===`none`||void 0}"
38
- @click="${()=>T.sortTo(``,`none`)}">
39
- <ore-icon name="trash-2" size="14" stroke-width="1.75" aria-hidden="true"></ore-icon>
40
- </ore-button>
36
+ <span class="dg-pop-title">${()=>m.value.sortBy}</span>
37
+ ${()=>k.sortState.value.direction===`none`?s.html``:s.html`
38
+ <ore-button
39
+ class="dg-icon-btn"
40
+ variant="ghost"
41
+ size="sm"
42
+ icon-only
43
+ label="${()=>m.value.clearSort}"
44
+ @click="${()=>k.sortTo(``,`none`)}">
45
+ <ore-icon name="trash-2" size="14" stroke-width="1.75" aria-hidden="true"></ore-icon>
46
+ </ore-button>
47
+ `}
41
48
  </div>
42
49
  <div class="dg-pop-sort-row">
43
50
  <ore-select
44
51
  class="dg-pop-select"
52
+ hide-label
45
53
  variant="flat"
46
54
  size="sm"
47
55
  rounded="lg"
48
- placeholder="Property"
56
+ label="${()=>m.value.property}"
57
+ placeholder="${()=>m.value.property}"
49
58
  fullwidth
50
- value="${()=>T.sortState.value.key}"
51
- options="${()=>y.value.map(e=>({label:e.label,value:e.key}))}"
52
- @change="${e=>{let t=e.detail.values[0]??``,n=T.sortState.value.direction===`none`?`asc`:T.sortState.value.direction;T.sortTo(t,n)}}"></ore-select>
59
+ value="${()=>k.sortState.value.key}"
60
+ options="${()=>S.value.map(e=>({label:e.label,value:e.key}))}"
61
+ @change="${e=>{let t=f(e)[0]??``,n=k.sortState.value.direction===`none`?`asc`:k.sortState.value.direction;k.sortTo(t,n)}}"></ore-select>
53
62
  <ore-select
54
63
  class="dg-pop-dir-select"
64
+ hide-label
55
65
  variant="flat"
56
66
  size="sm"
57
67
  rounded="lg"
68
+ label="${()=>m.value.sort}"
58
69
  fullwidth
59
- disabled="${()=>!T.sortState.value.key||void 0}"
60
- value="${()=>T.sortState.value.direction===`none`?`asc`:T.sortState.value.direction}"
61
- options="${()=>[{label:`A → Z`,value:`asc`},{label:`Z → A`,value:`desc`}]}"
62
- @change="${e=>{T.sortState.value.key&&T.sortTo(T.sortState.value.key,e.detail.values[0]??`asc`)}}"></ore-select>
70
+ disabled="${()=>!k.sortState.value.key||void 0}"
71
+ value="${()=>k.sortState.value.direction===`none`?`asc`:k.sortState.value.direction}"
72
+ options="${j}"
73
+ @change="${e=>{k.sortState.value.key&&k.sortTo(k.sortState.value.key,f(e)[0]??`asc`)}}"></ore-select>
63
74
  </div>
64
75
  </div>
65
76
  </ore-popover>
66
- `,X=()=>o.html`
77
+ `,ie=()=>s.html`
67
78
  <ore-popover
68
79
  class="dg-action-popover"
69
80
  placement="bottom-end"
70
- label="Filter"
71
- style="--popover-min-width:16rem;--popover-max-height:min(90vh,48rem)">
72
- ${()=>T.filterDefs.value.length?o.html`
73
- <ore-badge
74
- anchor="top-end"
75
- color="primary"
76
- size="xs"
77
- count="${()=>G.value?T.filterDefs.value.length:void 0}"
78
- dot="${()=>!G.value||void 0}"
79
- label="${()=>`${T.filterDefs.value.length} active filter${T.filterDefs.value.length>1?`s`:``}`}"
80
- aria-hidden="true"
81
- @mouseenter="${()=>G.value=!0}"
82
- @mouseleave="${()=>G.value=!1}"
83
- @focusin="${()=>G.value=!0}"
84
- @focusout="${()=>G.value=!1}">
85
- <ore-button slot="target" variant="ghost" size="sm" icon-only label="Filter">
86
- <ore-icon name="filter" size="15" stroke-width="1.75" aria-hidden="true"></ore-icon>
87
- </ore-button>
88
- </ore-badge>
89
- `:o.html`
90
- <ore-button class="dg-icon-btn" variant="ghost" size="sm" icon-only label="Filter">
91
- <ore-icon name="filter" size="15" stroke-width="1.75" aria-hidden="true"></ore-icon>
92
- </ore-button>
93
- `}
81
+ label="${()=>m.value.filter}"
82
+ style="--popover-min-width:18rem;--popover-max-height:min(90vh,48rem)">
83
+ <ore-button
84
+ class="dg-icon-btn dg-state-trigger"
85
+ variant="ghost"
86
+ size="sm"
87
+ icon-only
88
+ ?data-customized="${()=>k.filterDefs.value.length>0}"
89
+ label="${()=>k.filterDefs.value.length?`${m.value.filter}: ${m.value.activeFilters(k.filterDefs.value.length)}`:m.value.filter}">
90
+ <ore-icon name="filter" size="15" stroke-width="1.75" aria-hidden="true"></ore-icon>
91
+ </ore-button>
94
92
  <div slot="content" class="dg-pop-filter">
95
93
  <div class="dg-pop-header">
96
- <span class="dg-pop-title">Filter by</span>
97
- ${()=>T.filterDefs.value.length?o.html`
94
+ <span class="dg-pop-title">${()=>m.value.filterBy}</span>
95
+ ${()=>k.filterDefs.value.length?s.html`
98
96
  <ore-button
99
97
  class="dg-icon-btn"
100
98
  variant="ghost"
101
99
  size="sm"
102
100
  icon-only
103
- label="Clear all filters"
104
- @click="${()=>T.clearAllFilters()}">
101
+ label="${()=>m.value.clearAllFilters}"
102
+ @click="${()=>k.clearAllFilters()}">
105
103
  <ore-icon name="trash-2" size="14" stroke-width="1.75" aria-hidden="true"></ore-icon>
106
104
  </ore-button>
107
- `:o.html``}
105
+ `:s.html``}
108
106
  </div>
109
107
 
110
108
  <!-- Always-visible field picker: select columns to add filter rules -->
111
109
  <div class="dg-pop-filter-fields">
112
110
  <ore-combobox
113
- placeholder="Add filter…"
111
+ hide-label
112
+ label="${()=>m.value.addFilter}"
113
+ placeholder="${()=>m.value.addFilter}"
114
114
  multiple
115
115
  fullwidth
116
116
  autoclose
117
- options="${()=>y.value.map(e=>({label:e.label,value:e.key}))}"
118
- value="${()=>T.filterDefs.value.map(e=>e.key)}"
119
- @change="${e=>{T.setActiveFilterKeys(e.detail.values)}}"></ore-combobox>
117
+ size="sm"
118
+ variant="flat"
119
+ options="${C}"
120
+ value="${()=>k.filterDefs.value.map(e=>e.key)}"
121
+ @change="${e=>{k.setActiveFilterKeys(f(e))}}"></ore-combobox>
120
122
  </div>
121
123
 
122
124
  <!-- Active filter rules (appear below the field picker as rules are added) -->
123
- <div class="dg-pop-filter-rules" ?hidden="${()=>!T.filterDefs.value.length}">
124
- ${()=>T.filterDefs.value.map(e=>o.html`
125
+ <div class="dg-pop-filter-rules" ?hidden="${()=>!k.filterDefs.value.length}">
126
+ ${()=>k.filterDefs.value.map(e=>s.html`
125
127
  <div class="dg-pop-filter-rule">
126
128
  <div class="dg-pop-filter-rule-header">
127
129
  <span class="dg-pop-filter-field">${e.label}</span>
128
130
  <ore-select
129
131
  class="dg-pop-filter-op-select"
132
+ hide-label
130
133
  variant="ghost"
131
134
  size="sm"
135
+ label="${()=>m.value.filterOperator(e.label)}"
132
136
  fullwidth
133
- value="${()=>T.filterValues.value.get(e.key)?.operator??`contains`}"
137
+ value="${()=>k.filterValues.value.get(e.key)?.operator??`contains`}"
134
138
  options="${()=>e.operators??[]}"
135
- @change="${t=>{T.setFilterOperator(e.key,t.detail.values[0])}}"></ore-select>
139
+ @change="${t=>{let n=f(t)[0];n&&k.setFilterOperator(e.key,n)}}"></ore-select>
136
140
  <ore-button
137
141
  class="dg-icon-btn"
138
142
  variant="ghost"
139
143
  size="sm"
140
144
  icon-only
141
- label="Remove filter"
142
- @click="${()=>T.removeFilter(e.key)}">
145
+ label="${()=>m.value.removeFilter}"
146
+ @click="${()=>k.removeFilter(e.key)}">
143
147
  <ore-icon name="trash-2" size="13" stroke-width="1.75" aria-hidden="true"></ore-icon>
144
148
  </ore-button>
145
149
  </div>
146
150
  <ore-combobox
147
151
  class="dg-filter"
152
+ hide-label
153
+ size="sm"
154
+ variant="flat"
155
+ label="${()=>e.label}"
148
156
  placeholder="${()=>e.label}"
149
157
  options="${()=>e.options}"
150
- value="${()=>[...T.filterValues.value.get(e.key)?.values??[]]}"
151
- disabled="${()=>f.value||void 0}"
158
+ value="${()=>[...k.filterValues.value.get(e.key)?.values??[]]}"
159
+ disabled="${()=>h.value||void 0}"
152
160
  multiple
153
161
  fullwidth
154
162
  autoclose
155
- @change="${t=>{T.setFilter(e.key,t.detail.values)}}"></ore-combobox>
163
+ @change="${t=>{k.setFilter(e.key,f(t))}}"></ore-combobox>
156
164
  </div>
157
165
  `)}
158
166
  </div>
159
167
  </div>
160
168
  </ore-popover>
161
- `,Z=()=>o.html`
169
+ `,ae=()=>s.html`
162
170
  <ore-popover
163
171
  class="dg-action-popover"
164
172
  placement="bottom-end"
165
- label="Column options"
173
+ label="${()=>m.value.columnOptions}"
166
174
  style="--popover-min-width:18rem">
167
- <ore-button class="dg-icon-btn" variant="ghost" size="sm" icon-only label="Column options">
175
+ <ore-button
176
+ class="dg-icon-btn dg-state-trigger dg-column-trigger"
177
+ variant="ghost"
178
+ size="sm"
179
+ icon-only
180
+ ?data-customized="${()=>k.hiddenColumns.value.size>0}"
181
+ label="${()=>k.hiddenColumns.value.size?`${m.value.columnOptions}: ${m.value.hiddenColumns(k.hiddenColumns.value.size)}`:m.value.columnOptions}">
168
182
  <ore-icon name="columns-2" size="15" stroke-width="1.75" aria-hidden="true"></ore-icon>
169
183
  </ore-button>
170
- <div slot="content" class="dg-pop-col-list" role="menu" aria-label="Column visibility">
171
- ${()=>y.value.map(e=>o.html`
172
- <ore-button
173
- class="dg-pop-col-item"
174
- role="menuitemcheckbox"
175
- variant="ghost"
176
- size="sm"
177
- aria-checked="${()=>String(!T.hiddenColumns.value.has(e.key))}"
178
- @click="${()=>T.toggleColumnVisibility(e.key)}">
179
- <ore-icon
180
- slot="prefix"
181
- name="${()=>T.hiddenColumns.value.has(e.key)?`eye-off`:`eye`}"
182
- size="13"
183
- stroke-width="2"
184
- aria-hidden="true"></ore-icon>
185
- ${e.label}
186
- </ore-button>
187
- `)}
184
+ <div slot="content" class="dg-pop-col">
185
+ <div class="dg-pop-header">
186
+ <span class="dg-pop-heading"><strong class="dg-pop-title">${()=>m.value.columnVisibility}</strong><small>${()=>m.value.visibleColumns(k.visibleColumns.value.length,S.value.length)}</small></span>
187
+ ${()=>k.hiddenColumns.value.size?s.html`
188
+ <ore-button
189
+ class="dg-icon-btn"
190
+ variant="ghost"
191
+ size="sm"
192
+ icon-only
193
+ label="${()=>m.value.resetColumns}"
194
+ @click="${()=>k.resetColumnVisibility()}">
195
+ <ore-icon name="trash-2" size="14" stroke-width="1.75" aria-hidden="true"></ore-icon>
196
+ </ore-button>
197
+ `:s.html``}
198
+ </div>
199
+ <div class="dg-pop-col-list" role="group" aria-label="${()=>m.value.columnVisibility}">
200
+ ${()=>S.value.map(e=>s.html`
201
+ <ore-checkbox
202
+ class="dg-pop-col-item"
203
+ checked="${()=>!k.hiddenColumns.value.has(e.key)}"
204
+ disabled="${()=>!k.hiddenColumns.value.has(e.key)&&k.visibleColumns.value.length===1||void 0}"
205
+ @change="${()=>k.toggleColumnVisibility(e.key)}">${e.label}</ore-checkbox>
206
+ `)}
207
+ </div>
188
208
  </div>
189
209
  </ore-popover>
190
- `;return o.html`
210
+ `;return s.html`
191
211
  <!-- ── Controls Bar ────────────────────────────────────────────────── -->
192
212
  <div class="dg-controls" part="controls">
193
213
  <!-- Left: view tabs -->
194
- ${()=>J()}
214
+ ${()=>ne()}
195
215
 
196
216
  <!-- Right: Action bar -->
197
217
  <div class="dg-actions">
198
- ${()=>Y()} ${()=>X()} ${()=>Z()}
218
+ ${()=>re()} ${()=>ie()} ${()=>ae()}
199
219
 
200
220
  <!-- Density toggle -->
201
221
  <ore-button
@@ -203,44 +223,45 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=requi
203
223
  variant="ghost"
204
224
  size="sm"
205
225
  icon-only
206
- label="${()=>H[U.value]}"
207
- @click="${W}">
226
+ label="${()=>Y.value[X.value]}"
227
+ @click="${Z}">
208
228
  <ore-icon
209
- name="${()=>V[U.value]}"
229
+ name="${()=>J[X.value]}"
210
230
  size="15"
211
231
  stroke-width="1.75"
212
232
  aria-hidden="true"></ore-icon>
213
233
  </ore-button>
214
234
 
215
- <span class="dg-action-divider" aria-hidden="true" ?hidden="${()=>!d.has(`actions`).value}"></span>
235
+ <span class="dg-action-divider" aria-hidden="true" ?hidden="${()=>!p.has(`actions`).value}"></span>
216
236
 
217
237
  <slot name="actions"></slot>
218
238
 
219
239
  <!-- Search toggle: rightmost, expands in-place -->
220
- <div class="${()=>`dg-search${T.searchActive.value?` dg-search--open`:``}`}">
221
- ${()=>T.searchActive.value?o.html`
240
+ <div class="${()=>`dg-search${k.searchActive.value?` dg-search--open`:``}`}">
241
+ ${()=>k.searchActive.value?s.html`
222
242
  <ore-input
223
243
  class="dg-search-input"
224
244
  type="search"
225
245
  variant="flat"
226
246
  size="sm"
227
247
  rounded="full"
228
- placeholder="${()=>e.searchPlaceholder.value??`Search…`}"
229
- disabled="${()=>f.value||void 0}"
248
+ aria-label="${()=>m.value.search}"
249
+ placeholder="${()=>e.searchPlaceholder.value??`${m.value.search}…`}"
250
+ disabled="${()=>h.value||void 0}"
230
251
  ref="${e=>{e&&requestAnimationFrame(()=>e.focus())}}"
231
- @input="${e=>{E(e.detail.value)}}"
232
- @keydown="${t=>{if(t.key===`Escape`){let t=e.source.value;t?.setQuery&&t.setQuery({search:``}),T.toggleSearch()}}}">
252
+ @input="${e=>{P(e.currentTarget.value)}}"
253
+ @keydown="${t=>{t.key===`Escape`&&(e.source.value?.setParams&&N(``),k.toggleSearch())}}">
233
254
  <ore-icon slot="prefix" name="search" size="13" stroke-width="1.75" aria-hidden="true"></ore-icon>
234
255
  </ore-input>
235
- `:o.html``}
256
+ `:s.html``}
236
257
  <ore-button
237
258
  variant="ghost"
238
259
  size="sm"
239
260
  icon-only
240
- label="${()=>{let[t,n]=e.searchLabel.value??[`Search`,`Close search`];return T.searchActive.value?n:t}}"
241
- @click="${()=>{let t=e.source.value;t?.setQuery&&T.searchActive.value&&t.setQuery({search:``}),T.toggleSearch()}}">
261
+ label="${()=>{let[t,n]=e.searchLabel.value??[m.value.search,m.value.closeSearch];return k.searchActive.value?n:t}}"
262
+ @click="${()=>{e.source.value?.setParams&&k.searchActive.value&&N(``),k.toggleSearch()}}">
242
263
  <ore-icon
243
- name="${()=>T.searchActive.value?`x`:`search`}"
264
+ name="${()=>k.searchActive.value?`x`:`search`}"
244
265
  size="15"
245
266
  stroke-width="1.75"
246
267
  aria-hidden="true"></ore-icon>
@@ -249,7 +270,7 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=requi
249
270
  </div>
250
271
  </div>
251
272
 
252
- <div id="dg-tabpanel" class="dg-scroll" role="tabpanel" aria-label="Data">
273
+ <div id="dg-tabpanel" class="dg-scroll" role="tabpanel" aria-label="${()=>m.value.data}">
253
274
  <div class="dg-loading-overlay">
254
275
  <ore-icon name="loader-2" size="24" class="dg-spin" aria-hidden="true"></ore-icon>
255
276
  </div>
@@ -258,203 +279,203 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=requi
258
279
  part="table"
259
280
  role="grid"
260
281
  aria-label="${()=>e.label.value??void 0}"
261
- aria-busy="${()=>I.value?`true`:null}"
262
- aria-disabled="${()=>f.value?`true`:null}">
282
+ aria-busy="${()=>U.value?`true`:null}"
283
+ aria-disabled="${()=>h.value?`true`:null}">
263
284
  <!-- Head -->
264
285
  <thead class="dg-head" part="thead">
265
286
  <tr role="row">
266
- ${()=>p.value===`multi`?o.html`
287
+ ${()=>g.value===`multi`?s.html`
267
288
  <th
268
289
  class="dg-th dg-th-check"
269
290
  role="columnheader"
270
291
  scope="col"
271
- tabindex="${()=>q.activeCell.value.row===0&&q.activeCell.value.col===0&&g.value>=1?`0`:`-1`}">
292
+ tabindex="${()=>$.activeCell.value.row===0&&$.activeCell.value.col===0&&y.value>=1?`0`:`-1`}">
272
293
  <ore-checkbox
273
294
  class="dg-check"
274
- checked="${()=>T.isAllSelected()}"
275
- indeterminate="${M}"
276
- ?disabled="${f}"
277
- aria-label="Select all rows on this page"
278
- @change="${()=>{f.value||T.selectAll()}}"></ore-checkbox>
295
+ checked="${()=>k.isAllSelected()}"
296
+ indeterminate="${z}"
297
+ ?disabled="${h}"
298
+ aria-label="${()=>m.value.selectAllRows}"
299
+ @change="${()=>{h.value||k.selectAll()}}"></ore-checkbox>
279
300
  </th>
280
- `:o.html``}
281
- ${()=>k.value.map((e,t)=>{let n=t===k.value.length-1;return o.html`
301
+ `:s.html``}
302
+ ${()=>L.value.map((e,t)=>{let n=t===L.value.length-1;return s.html`
282
303
  <th
283
- class="${`dg-th${n&&h.value?` dg-th-last`:``}`}"
304
+ class="${`dg-th${n&&v.value?` dg-th-last`:``}`}"
284
305
  role="columnheader"
285
306
  scope="col"
286
- tabindex="${()=>{let e=q.activeCell.value;return e.row===0&&e.col===t+g.value?`0`:`-1`}}"
307
+ tabindex="${()=>{let e=$.activeCell.value;return e.row===0&&e.col===t+y.value?`0`:`-1`}}"
287
308
  data-align="${e.align??`left`}"
288
- aria-sort="${()=>e.sortable?u(T.sortState.value,e.key):void 0}"
309
+ aria-sort="${()=>e.sortable?d(k.sortState.value,e.key):void 0}"
289
310
  aria-label="${e.sortable?void 0:e.headerLabel??e.label}"
290
- style="${()=>{let t=D.value[e.key];return t?`width:${t}px`:e.width?`width:${e.width}`:``}}">
311
+ style="${()=>{let t=F.value[e.key];return t?`width:${t}px`:e.width?`width:${e.width}`:``}}">
291
312
  <div class="dg-th-inner">
292
- ${()=>e.sortable?o.html`
313
+ ${()=>e.sortable?s.html`
293
314
  <ore-button
294
315
  class="dg-sort-btn"
295
316
  variant="text"
296
317
  size="sm"
297
318
  fullwidth
298
319
  label="${e.headerLabel??e.label}"
299
- disabled="${()=>f.value||void 0}"
300
- @click="${()=>{f.value||T.sortBy(e.key)}}">
320
+ disabled="${()=>h.value||void 0}"
321
+ @click="${()=>{h.value||k.sortBy(e.key)}}">
301
322
  ${e.label}
302
323
  <ore-icon
303
324
  slot="suffix"
304
325
  class="dg-sort-icon"
305
- name="${()=>l(T.sortState.value,e.key)}"
326
+ name="${()=>u(k.sortState.value,e.key)}"
306
327
  size="14"
307
328
  stroke-width="2"></ore-icon>
308
329
  </ore-button>
309
330
  `:e.label}
310
- ${e.resizable?o.html`
331
+ ${e.resizable?s.html`
311
332
  <span
312
333
  class="dg-col-resize"
313
334
  aria-hidden="true"
314
- ref="${t=>{if(!t)return;let n=t.closest(`th`);n&&t.addEventListener(`pointerdown`,O(e.key,n))}}"></span>
315
- `:o.html``}
335
+ ref="${t=>{if(!t)return;let n=t.closest(`th`);n&&t.addEventListener(`pointerdown`,I(e.key,n))}}"></span>
336
+ `:s.html``}
316
337
  </div>
317
338
  </th>
318
339
  `})}
319
- ${()=>h.value?o.html`
340
+ ${()=>v.value?s.html`
320
341
  <th
321
342
  class="dg-th dg-th-expand"
322
343
  role="columnheader"
323
344
  scope="col"
324
- aria-label="Row details"
345
+ aria-label="${()=>m.value.rowDetails}"
325
346
  tabindex="-1"></th>
326
- `:o.html``}
347
+ `:s.html``}
327
348
  </tr>
328
349
  </thead>
329
350
 
330
351
  <!-- Body -->
331
352
  <tbody class="dg-body" part="tbody">
332
- ${()=>T.currentPageItems.value.length===0?o.html`
353
+ ${()=>k.currentPageItems.value.length===0?s.html`
333
354
  <tr role="row">
334
- <td class="dg-empty" role="gridcell" colspan="${()=>String(N.value)}">
355
+ <td class="dg-empty" role="gridcell" colspan="${()=>String(B.value)}">
335
356
  <div class="dg-empty-content">
336
357
  ${()=>e.emptyText.value??`No data`}
337
- ${()=>T.searchQuery.value||T.filterValues.value.size?o.html`
358
+ ${()=>k.searchQuery.value||k.filterValues.value.size?s.html`
338
359
  <div class="dg-empty-actions">
339
360
  <ore-button
340
361
  variant="text"
341
362
  size="sm"
342
- @click="${()=>{T.resetSearch(),T.resetFilters()}}">
343
- Clear all filters & search
363
+ @click="${()=>{k.resetSearch(),k.resetFilters()}}">
364
+ ${()=>m.value.clearFiltersAndSearch}
344
365
  </ore-button>
345
366
  </div>
346
- `:o.html``}
367
+ `:s.html``}
347
368
  </div>
348
369
  </td>
349
370
  </tr>
350
- `:T.currentPageItems.value.map((e,t)=>{let n=b(e),r=p.value!==`none`&&!f.value,i=t+1;return o.html`
371
+ `:k.currentPageItems.value.map((e,t)=>{let n=w(e),r=g.value!==`none`&&!h.value,i=t+1;return s.html`
351
372
  <tr
352
373
  class="dg-tr"
353
374
  part="row"
354
375
  role="row"
355
- aria-selected="${()=>p.value===`none`?null:String(T.selectedKeys.value.has(n))}"
356
- aria-expanded="${()=>h.value?String(m.value.has(n)):null}"
376
+ aria-selected="${()=>g.value===`none`?null:String(k.selectedKeys.value.has(n))}"
377
+ aria-expanded="${()=>v.value?String(_.value.has(n)):null}"
357
378
  ?data-selectable="${r}"
358
- ?data-disabled="${f}"
359
- @click="${()=>{r&&p.value===`single`&&T.toggleRow(n)}}"
360
- @keydown="${e=>{(e.key===`Enter`||e.key===` `)&&r&&p.value===`single`&&(e.preventDefault(),T.toggleRow(n))}}">
361
- ${()=>p.value===`multi`?o.html`
379
+ ?data-disabled="${h}"
380
+ @click="${()=>{r&&g.value===`single`&&k.toggleRow(n)}}"
381
+ @keydown="${e=>{(e.key===`Enter`||e.key===` `)&&r&&g.value===`single`&&(e.preventDefault(),k.toggleRow(n))}}">
382
+ ${()=>g.value===`multi`?s.html`
362
383
  <td
363
384
  class="dg-td dg-td-check"
364
385
  role="gridcell"
365
- tabindex="${()=>{let e=q.activeCell.value;return e.row===i&&e.col===0?`0`:`-1`}}"
366
- @keydown="${e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),f.value||T.toggleRow(n))}}">
386
+ tabindex="${()=>{let e=$.activeCell.value;return e.row===i&&e.col===0?`0`:`-1`}}"
387
+ @keydown="${e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),h.value||k.toggleRow(n))}}">
367
388
  <ore-checkbox
368
389
  class="dg-check"
369
- checked="${()=>T.selectedKeys.value.has(n)}"
370
- ?disabled="${f}"
371
- aria-label="Select row"
390
+ checked="${()=>k.selectedKeys.value.has(n)}"
391
+ ?disabled="${h}"
392
+ aria-label="${()=>m.value.selectRow}"
372
393
  tabindex="-1"
373
394
  @click="${e=>e.stopPropagation()}"
374
- @change="${()=>{f.value||T.toggleRow(n)}}"></ore-checkbox>
395
+ @change="${()=>{h.value||k.toggleRow(n)}}"></ore-checkbox>
375
396
  </td>
376
- `:o.html``}
377
- ${k.value.map((t,n)=>{let r=A(t,e),a=n===k.value.length-1;return o.html`
397
+ `:s.html``}
398
+ ${L.value.map((t,n)=>{let r=e,a=te(t,r),o=t.renderCell?.(r)??a,c=n===L.value.length-1;return s.html`
378
399
  <td
379
- class="${`dg-td${a&&h.value?` dg-td-last`:``}`}"
400
+ class="${`dg-td${c&&v.value?` dg-td-last`:``}`}"
380
401
  part="cell"
381
402
  role="gridcell"
382
403
  data-align="${t.align??`left`}"
383
- tabindex="${()=>{let e=q.activeCell.value;return e.row===i&&e.col===n+g.value?`0`:`-1`}}"
384
- title="${r}">
385
- ${r}
404
+ tabindex="${()=>{let e=$.activeCell.value;return e.row===i&&e.col===n+y.value?`0`:`-1`}}"
405
+ title="${a}">
406
+ ${o}
386
407
  </td>
387
408
  `})}
388
- ${()=>h.value?o.html`
409
+ ${()=>v.value?s.html`
389
410
  <td
390
411
  class="dg-td dg-td-expand"
391
412
  role="gridcell"
392
- tabindex="${()=>{let e=q.activeCell.value;return e.row===i&&e.col===N.value-1?`0`:`-1`}}"
393
- @keydown="${e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),f.value||K(n))}}">
413
+ tabindex="${()=>{let e=$.activeCell.value;return e.row===i&&e.col===B.value-1?`0`:`-1`}}"
414
+ @keydown="${e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),h.value||Q(n))}}">
394
415
  <ore-button
395
416
  class="dg-expand-btn"
396
417
  variant="ghost"
397
418
  size="sm"
398
419
  icon-only
399
420
  tabindex="-1"
400
- label="${()=>m.value.has(n)?`Collapse row`:`Expand row`}"
401
- aria-expanded="${()=>String(m.value.has(n))}"
402
- disabled="${()=>f.value||void 0}"
403
- @click="${e=>{e.stopPropagation(),f.value||K(n)}}">
421
+ label="${()=>_.value.has(n)?m.value.collapseRow:m.value.expandRow}"
422
+ aria-expanded="${()=>String(_.value.has(n))}"
423
+ disabled="${()=>h.value||void 0}"
424
+ @click="${e=>{e.stopPropagation(),h.value||Q(n)}}">
404
425
  <ore-icon
405
- name="${()=>m.value.has(n)?`chevron-up`:`chevron-down`}"
426
+ name="${()=>_.value.has(n)?`chevron-up`:`chevron-down`}"
406
427
  size="14"
407
428
  stroke-width="2"
408
429
  aria-hidden="true"></ore-icon>
409
430
  </ore-button>
410
431
  </td>
411
- `:o.html``}
432
+ `:s.html``}
412
433
  </tr>
413
- ${()=>h.value&&m.value.has(n)?o.html`
434
+ ${()=>v.value&&_.value.has(n)?s.html`
414
435
  <tr class="dg-tr-expanded" role="row">
415
436
  <td
416
437
  class="dg-td-expanded"
417
438
  role="gridcell"
418
- colspan="${()=>String(N.value)}">
419
- ${(0,o.unsafeHtml)(()=>y.value.find(e=>typeof e.renderExpanded==`function`)?.renderExpanded?.(e)??``)}
439
+ colspan="${()=>String(B.value)}">
440
+ ${(0,s.unsafeHtml)(()=>S.value.find(e=>typeof e.renderExpanded==`function`)?.renderExpanded?.(e)??``)}
420
441
  </td>
421
442
  </tr>
422
- `:o.html``}
443
+ `:s.html``}
423
444
  `})}
424
445
  </tbody>
425
446
  </table>
426
447
  </div>
427
448
 
428
449
  <!-- Footer / Pagination -->
429
- ${()=>P.value?o.html`
430
- <div class="dg-footer" part="footer" role="navigation" aria-label="Pagination">
431
- ${()=>(e.pageSizeOptions.value??[]).length?o.html``:o.html`
432
- <span class="dg-footer-info" dir="ltr" aria-live="polite" aria-atomic="true">
433
- ${F}
434
- </span>
435
- `}
436
- <div class="dg-footer-end">
437
- ${()=>{let t=e.pageSizeOptions.value??[];return t.length?o.html`
450
+ ${()=>V.value?s.html`
451
+ <div class="dg-footer" part="footer" role="navigation" aria-label="${()=>m.value.pagination}">
452
+ <div class="dg-footer-start">
453
+ <span class="dg-footer-info" dir="ltr" aria-live="polite" aria-atomic="true">
454
+ ${H}
455
+ </span>
456
+ ${()=>{let t=e.pageSizeOptions.value??[];return t.length?s.html`
438
457
  <div class="dg-page-size-wrap">
439
458
  <ore-select
440
459
  class="dg-page-size-select"
441
460
  fullwidth
442
- aria-label="Rows per page"
443
- value="${()=>String(_.value)}"
461
+ hide-label
462
+ label="${()=>m.value.rowsPerPage}"
463
+ value="${()=>String(b.value)}"
444
464
  options="${()=>t.map(e=>({label:String(e),value:String(e)}))}"
445
- disabled="${()=>f.value||void 0}"
446
- @change="${e=>{let t=parseInt(e.detail.values[0],10);Number.isNaN(t)||(_.value=t,T.goToPage(0),n(`page-change`,{pageIndex:0,pageSize:t}))}}"></ore-select>
465
+ disabled="${()=>h.value||void 0}"
466
+ @change="${e=>{let t=parseInt(f(e)[0]??``,10);Number.isNaN(t)||(b.value=t,k.goToPage(0),r(`page-change`,{pageIndex:0,pageSize:t}))}}"></ore-select>
447
467
  </div>
448
- `:o.html``}}
449
- <div class="dg-pagination" role="group" aria-label="Page navigation">
468
+ `:s.html``}}
469
+ </div>
470
+ <div class="dg-pagination" role="group" aria-label="${()=>m.value.pageNavigation}">
450
471
  <ore-button
451
472
  class="dg-page-btn"
452
473
  variant="ghost"
453
474
  size="sm"
454
475
  icon-only
455
- label="Previous page"
456
- disabled="${()=>!L.value||f.value}"
457
- @click="${()=>j(`prev`)}">
476
+ label="${()=>m.value.previousPage}"
477
+ disabled="${()=>!W.value||h.value}"
478
+ @click="${()=>R(`prev`)}">
458
479
  <ore-icon name="chevron-left" size="14" stroke-width="2" aria-hidden="true"></ore-icon>
459
480
  </ore-button>
460
481
  <span
@@ -464,21 +485,20 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=requi
464
485
  role="status"
465
486
  aria-live="polite"
466
487
  aria-atomic="true">
467
- ${()=>z.value}
488
+ ${()=>K.value}
468
489
  </span>
469
490
  <ore-button
470
491
  class="dg-page-btn"
471
492
  variant="ghost"
472
493
  size="sm"
473
494
  icon-only
474
- label="Next page"
475
- disabled="${()=>!R.value||f.value}"
476
- @click="${()=>j(`next`)}">
495
+ label="${()=>m.value.nextPage}"
496
+ disabled="${()=>!G.value||h.value}"
497
+ @click="${()=>R(`next`)}">
477
498
  <ore-icon name="chevron-right" size="14" stroke-width="2" aria-hidden="true"></ore-icon>
478
499
  </ore-button>
479
- </div>
480
500
  </div>
481
501
  </div>
482
- `:o.html``}
483
- `},shadow:{delegatesFocus:!0},styles:[e.tableBaseMixin(`datagrid`),n.default]}),exports.COLUMN_TAG=r.COLUMN_TAG,exports.DATAGRID_TAG=d,exports.ariaSortValue=u,exports.sortIconName=l;
502
+ `:s.html``}
503
+ `},shadow:{delegatesFocus:!0},styles:[e.tableBaseMixin(`datagrid`),r.default]}),exports.COLUMN_TAG=i.COLUMN_TAG,exports.DATAGRID_TAG=p,exports.ariaSortValue=d,exports.sortIconName=u;
484
504
  //# sourceMappingURL=datagrid.cjs.map