@oneb/ui-vue 0.3.32 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/dist/ChevronLeftIcon-7505e081.cjs +1 -0
  2. package/dist/ChevronLeftIcon-bb9adb5b.js +20 -0
  3. package/dist/ChevronRightIcon-2992cf0d.cjs +1 -0
  4. package/dist/ChevronRightIcon-b0585768.js +20 -0
  5. package/dist/ChevronUpIcon-64a673e1.cjs +1 -0
  6. package/dist/{ChevronRightIcon-4549a26b.js → ChevronUpIcon-c43f27a9.js} +2 -19
  7. package/dist/LogoOneb-b6ac382e.cjs +1 -0
  8. package/dist/LogoOneb-ddb388a4.js +16 -0
  9. package/dist/MagnifyingGlassIcon-adf871ba.cjs +1 -0
  10. package/dist/MagnifyingGlassIcon-ca213d3d.js +20 -0
  11. package/dist/OneDropdownAuto.vue_vue_type_script_setup_true_lang-2c508e8a.js +79 -0
  12. package/dist/OneDropdownAuto.vue_vue_type_script_setup_true_lang-bf923b04.cjs +1 -0
  13. package/dist/OneFormInput.vue_vue_type_script_setup_true_lang-b89117e7.js +521 -0
  14. package/dist/OneFormInput.vue_vue_type_script_setup_true_lang-f6f7cd96.cjs +1 -0
  15. package/dist/{OneHelpMenu-73817f8a.js → OneHelpMenu-2a2051d7.js} +120 -214
  16. package/dist/OneHelpMenu-78d9348a.cjs +1 -0
  17. package/dist/OneMarkdown.vue_vue_type_script_setup_true_lang-05266fc3.cjs +1 -0
  18. package/dist/OneMarkdown.vue_vue_type_script_setup_true_lang-bb2219c7.js +18 -0
  19. package/dist/OneModal-02a9a173.js +189 -0
  20. package/dist/OneModal-0e92c039.cjs +1 -0
  21. package/dist/OneTooltip.vue_vue_type_script_setup_true_lang-c492c128.js +25 -0
  22. package/dist/OneTooltip.vue_vue_type_script_setup_true_lang-e83a81ea.cjs +1 -0
  23. package/dist/SpinnerIcon-01be39fe.cjs +1 -0
  24. package/dist/{SpinnerIcon-74648c98.js → SpinnerIcon-516264ba.js} +5 -6
  25. package/dist/button/index.cjs +1 -1
  26. package/dist/button/index.d.ts +1 -1
  27. package/dist/button/index.js +3 -4
  28. package/dist/checkbox/checkbox.d.ts +5 -0
  29. package/dist/checkbox/index.cjs +1 -1
  30. package/dist/checkbox/index.js +40 -34
  31. package/dist/chips/OneChips.vue.d.ts +2 -0
  32. package/dist/chips/chips.d.ts +25 -0
  33. package/dist/chips/index.cjs +1 -0
  34. package/dist/chips/index.d.ts +3 -0
  35. package/dist/chips/index.js +62 -0
  36. package/dist/clipboard-494e1513.cjs +1 -0
  37. package/dist/clipboard-733b79a1.js +22 -0
  38. package/dist/common/OneDetailsList.vue.d.ts +2 -0
  39. package/dist/common/OneDetailsRow.vue.d.ts +2 -0
  40. package/dist/common/index.cjs +1 -1
  41. package/dist/common/index.d.ts +2 -0
  42. package/dist/common/index.js +68 -16
  43. package/dist/composables/index.cjs +1 -0
  44. package/dist/composables/index.d.ts +18 -0
  45. package/dist/composables/index.js +91 -0
  46. package/dist/composables/useAsyncMethod.d.ts +17 -0
  47. package/dist/composables/useAsyncSelect.d.ts +26 -0
  48. package/dist/composables/useConfirm.d.ts +27 -0
  49. package/dist/composables/useCursorList.d.ts +42 -0
  50. package/dist/composables/useDebouncedRef.d.ts +6 -0
  51. package/dist/composables/useFileUpload.d.ts +21 -0
  52. package/dist/composables/useFormSubmit.d.ts +23 -0
  53. package/dist/composables/useIsMobile.d.ts +8 -0
  54. package/dist/confirm/OneConfirmHost.vue.d.ts +2 -0
  55. package/dist/confirm/confirm.d.ts +10 -0
  56. package/dist/confirm/index.cjs +1 -0
  57. package/dist/confirm/index.d.ts +5 -0
  58. package/dist/confirm/index.js +59 -0
  59. package/dist/cursorList/OneCursorList.vue.d.ts +2 -0
  60. package/dist/cursorList/index.cjs +1 -0
  61. package/dist/cursorList/index.d.ts +3 -0
  62. package/dist/cursorList/index.js +78 -0
  63. package/dist/dataTable/index.cjs +1 -1
  64. package/dist/dataTable/index.js +256 -301
  65. package/dist/dateTime/OneDateTime.vue.d.ts +2 -0
  66. package/dist/dateTime/dateTime.d.ts +43 -0
  67. package/dist/dateTime/index.cjs +1 -0
  68. package/dist/dateTime/index.d.ts +3 -0
  69. package/dist/dateTime/index.js +66 -0
  70. package/dist/dropdown/index.cjs +1 -1
  71. package/dist/dropdown/index.js +302 -376
  72. package/dist/dropdown-5cb64ab7.cjs +1 -0
  73. package/dist/dropdown-c81fb945.js +101 -0
  74. package/dist/entityPicker/index.cjs +1 -1
  75. package/dist/entityPicker/index.js +57 -57
  76. package/dist/entityPicker/useEntityModal.d.ts +7 -3
  77. package/dist/errorsPage/OneCrashScreen.vue.d.ts +2 -0
  78. package/dist/errorsPage/OneErrorHero.vue.d.ts +2 -0
  79. package/dist/errorsPage/OneNotFoundPage.vue.d.ts +2 -0
  80. package/dist/errorsPage/OneServerErrorPage.vue.d.ts +2 -0
  81. package/dist/errorsPage/OneSnakeGame.vue.d.ts +2 -0
  82. package/dist/errorsPage/createAppErrorHandler.d.ts +24 -0
  83. package/dist/errorsPage/errorsType.d.ts +5 -0
  84. package/dist/errorsPage/index.cjs +1 -1
  85. package/dist/errorsPage/index.d.ts +8 -0
  86. package/dist/errorsPage/index.js +543 -28
  87. package/dist/errorsPage/useCrashState.d.ts +10 -0
  88. package/dist/fileUpload/OneDropzone.vue.d.ts +2 -0
  89. package/dist/fileUpload/OneFileUpload.vue.d.ts +2 -0
  90. package/dist/fileUpload/fileUpload.d.ts +17 -0
  91. package/dist/fileUpload/index.cjs +1 -0
  92. package/dist/fileUpload/index.d.ts +6 -0
  93. package/dist/fileUpload/index.js +228 -0
  94. package/dist/filterBuilder/OneFilterBuilder.vue.d.ts +2 -0
  95. package/dist/filterBuilder/OneFilterGroup.vue.d.ts +2 -0
  96. package/dist/filterBuilder/OneFilterRule.vue.d.ts +2 -0
  97. package/dist/filterBuilder/filterBuilder.d.ts +17 -0
  98. package/dist/filterBuilder/index.cjs +1 -0
  99. package/dist/filterBuilder/index.d.ts +5 -0
  100. package/dist/filterBuilder/index.js +268 -0
  101. package/dist/form/form.d.ts +1 -1
  102. package/dist/form/index.cjs +1 -1
  103. package/dist/form/index.js +66 -574
  104. package/dist/i18n/index.cjs +1 -1
  105. package/dist/i18n/index.js +101 -15
  106. package/dist/index.cjs +1 -1
  107. package/dist/index.d.ts +18 -0
  108. package/dist/index.js +244 -104
  109. package/dist/indicators/OneStatCard.vue.d.ts +2 -0
  110. package/dist/indicators/index.cjs +1 -1
  111. package/dist/indicators/index.d.ts +1 -0
  112. package/dist/indicators/index.js +66 -29
  113. package/dist/label/index.cjs +1 -1
  114. package/dist/label/index.js +5 -5
  115. package/dist/layout/LogoOneb.vue.d.ts +2 -0
  116. package/dist/layout/OneAuthLayout.vue.d.ts +2 -0
  117. package/dist/layout/OneBackButton.vue.d.ts +2 -0
  118. package/dist/layout/OneBreadcrumbs.vue.d.ts +2 -0
  119. package/dist/layout/OneEmptyLayout.vue.d.ts +6 -0
  120. package/dist/layout/OneGridLayout.vue.d.ts +2 -0
  121. package/dist/layout/index.cjs +1 -1
  122. package/dist/layout/index.d.ts +7 -1
  123. package/dist/layout/index.js +1059 -765
  124. package/dist/layout/layout.d.ts +11 -0
  125. package/dist/modal/OneModalHost.vue.d.ts +2 -0
  126. package/dist/modal/index.cjs +1 -1
  127. package/dist/modal/index.d.ts +3 -0
  128. package/dist/modal/index.js +84 -27
  129. package/dist/modal/modal.d.ts +9 -0
  130. package/dist/modal/useModalStack.d.ts +20 -0
  131. package/dist/notifications/OneNotificationItem.vue.d.ts +2 -0
  132. package/dist/notifications/OneNotificationsBell.vue.d.ts +2 -0
  133. package/dist/notifications/OneNotificationsPanel.vue.d.ts +2 -0
  134. package/dist/notifications/index.cjs +1 -0
  135. package/dist/notifications/index.d.ts +7 -0
  136. package/dist/notifications/index.js +477 -0
  137. package/dist/notifications/notifications.d.ts +53 -0
  138. package/dist/notifications/useNotifyfeed.d.ts +32 -0
  139. package/dist/periodPicker/index.cjs +1 -1
  140. package/dist/periodPicker/index.js +126 -139
  141. package/dist/popover/OnePopover.vue.d.ts +2 -0
  142. package/dist/popover/index.cjs +1 -0
  143. package/dist/popover/index.d.ts +3 -0
  144. package/dist/popover/index.js +104 -0
  145. package/dist/popover/popover.d.ts +31 -0
  146. package/dist/progress/OneProgress.vue.d.ts +2 -0
  147. package/dist/progress/index.cjs +1 -0
  148. package/dist/progress/index.d.ts +3 -0
  149. package/dist/progress/index.js +74 -0
  150. package/dist/progress/progress.d.ts +32 -0
  151. package/dist/searchInput/OneSearchInput.vue.d.ts +2 -0
  152. package/dist/searchInput/index.cjs +1 -0
  153. package/dist/searchInput/index.d.ts +3 -0
  154. package/dist/searchInput/index.js +103 -0
  155. package/dist/searchInput/searchInput.d.ts +39 -0
  156. package/dist/settings/OneSettingsLayout.vue.d.ts +2 -0
  157. package/dist/settings/OneSettingsRow.vue.d.ts +2 -0
  158. package/dist/settings/OneSettingsSection.vue.d.ts +2 -0
  159. package/dist/settings/index.cjs +1 -0
  160. package/dist/settings/index.d.ts +4 -0
  161. package/dist/settings/index.js +116 -0
  162. package/dist/spinner/OneSpinner.vue.d.ts +2 -0
  163. package/dist/spinner/index.cjs +1 -0
  164. package/dist/spinner/index.d.ts +3 -0
  165. package/dist/spinner/index.js +30 -0
  166. package/dist/spinner/spinner.d.ts +10 -0
  167. package/dist/stageBadge/index.cjs +1 -1
  168. package/dist/stageBadge/index.js +18 -16
  169. package/dist/stepper/OneStepper.vue.d.ts +2 -0
  170. package/dist/stepper/index.cjs +1 -0
  171. package/dist/stepper/index.d.ts +3 -0
  172. package/dist/stepper/index.js +53 -0
  173. package/dist/stepper/stepper.d.ts +24 -0
  174. package/dist/style.css +1 -1
  175. package/dist/switch/index.cjs +1 -1
  176. package/dist/switch/index.js +3 -4
  177. package/dist/tabs/OneTab.vue.d.ts +2 -0
  178. package/dist/tabs/OneTabs.vue.d.ts +2 -0
  179. package/dist/tabs/index.cjs +1 -0
  180. package/dist/tabs/index.d.ts +4 -0
  181. package/dist/tabs/index.js +64 -0
  182. package/dist/tabs/tabs.d.ts +7 -0
  183. package/dist/toast/OneMascotToast.vue.d.ts +2 -0
  184. package/dist/toast/RabbitIcon.vue.d.ts +2 -0
  185. package/dist/toast/index.cjs +1 -1
  186. package/dist/toast/index.d.ts +4 -0
  187. package/dist/toast/index.js +139 -74
  188. package/dist/toast/useMascotToast.d.ts +12 -0
  189. package/dist/tooltip/OneTooltip.vue.d.ts +2 -0
  190. package/dist/tooltip/index.cjs +2 -2
  191. package/dist/tooltip/index.d.ts +1 -0
  192. package/dist/tooltip/index.js +33 -30
  193. package/dist/useConfirm-6344b49d.cjs +1 -0
  194. package/dist/useConfirm-74e99a5c.js +23 -0
  195. package/dist/useCursorList-5c1b57aa.js +62 -0
  196. package/dist/useCursorList-e1cb41e7.cjs +1 -0
  197. package/dist/useElementWidth-b36a7ce9.js +40 -0
  198. package/dist/useElementWidth-b3e53f48.cjs +1 -0
  199. package/dist/useFileUpload-228dbc07.js +24 -0
  200. package/dist/useFileUpload-f47622bb.cjs +1 -0
  201. package/dist/useIsMobile-7b1f08cf.cjs +1 -0
  202. package/dist/useIsMobile-98fc0cf9.js +7 -0
  203. package/dist/useMediaQuery-1d87df02.cjs +1 -0
  204. package/dist/useMediaQuery-77a19b18.js +37 -0
  205. package/dist/useModal-6a5d870b.js +30 -0
  206. package/dist/useModal-aa6f4a57.cjs +1 -0
  207. package/dist/userList/OneUserInviteModal.vue.d.ts +2 -0
  208. package/dist/userList/OneUserList.vue.d.ts +2 -0
  209. package/dist/userList/OneUserListItem.vue.d.ts +2 -0
  210. package/dist/userList/index.cjs +1 -0
  211. package/dist/userList/index.d.ts +4 -0
  212. package/dist/userList/index.js +559 -0
  213. package/dist/utils/clipboard.d.ts +6 -0
  214. package/dist/utils/format.d.ts +17 -0
  215. package/dist/utils/index.cjs +1 -0
  216. package/dist/utils/index.d.ts +4 -0
  217. package/dist/utils/index.js +125 -0
  218. package/dist/utils/string.d.ts +25 -0
  219. package/dist/utils/versionChecker.d.ts +26 -0
  220. package/package.json +215 -24
  221. package/dist/ChevronRightIcon-7a2f0c20.cjs +0 -1
  222. package/dist/OneHelpMenu-c6e88d8f.cjs +0 -1
  223. package/dist/OneMarkdown.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs +0 -1
  224. package/dist/OneMarkdown.vue_vue_type_style_index_0_lang-4ed993c7.js +0 -1
  225. package/dist/SpinnerIcon-ccb6f3fc.cjs +0 -1
  226. package/dist/SpinnerIcon.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs +0 -1
  227. package/dist/SpinnerIcon.vue_vue_type_style_index_0_lang-4ed993c7.js +0 -1
  228. package/dist/useModal-0c73777f.cjs +0 -1
  229. package/dist/useModal-7fe9444b.js +0 -194
@@ -0,0 +1,78 @@
1
+ import { u as T } from "../useCursorList-5c1b57aa.js";
2
+ import { defineComponent as p, computed as k, ref as L, onMounted as O, onBeforeUnmount as h, openBlock as s, createElementBlock as o, renderSlot as u, createElementVNode as d, createVNode as f, unref as y, toDisplayString as x, Fragment as v, renderList as b, createCommentVNode as C } from "vue";
3
+ import { OneButton as $ } from "../button/index.js";
4
+ import { OneSkeleton as B } from "../skeleton/index.js";
5
+ import { useOnebI18n as N } from "../i18n/index.js";
6
+ import "../SpinnerIcon-516264ba.js";
7
+ import "../_plugin-vue_export-helper-dad06003.js";
8
+ const S = { class: "space-y-2 p-2" }, I = { class: "p-6 text-center text-sm text-gray-500" }, j = {
9
+ key: 0,
10
+ class: "flex justify-center py-3"
11
+ }, z = /* @__PURE__ */ p({
12
+ __name: "OneCursorList",
13
+ props: {
14
+ /** Return value of useCursorList. */
15
+ list: {
16
+ type: Object,
17
+ required: !0
18
+ },
19
+ /** Key field for v-for (falls back to index). */
20
+ itemKey: {
21
+ type: String,
22
+ default: void 0
23
+ },
24
+ /** Load the next page automatically when the end scrolls into view. */
25
+ autoLoad: {
26
+ type: Boolean,
27
+ default: !1
28
+ },
29
+ t: {
30
+ type: Function,
31
+ default: void 0
32
+ }
33
+ },
34
+ setup(e) {
35
+ const l = e, g = N(), m = k(() => l.t ?? g), r = L(null);
36
+ let t = null;
37
+ return O(() => {
38
+ !l.autoLoad || typeof IntersectionObserver > "u" || (t = new IntersectionObserver((n) => {
39
+ n.some((i) => i.isIntersecting) && l.list.next();
40
+ }), r.value && t.observe(r.value));
41
+ }), h(() => t == null ? void 0 : t.disconnect()), (n, i) => (s(), o("div", null, [
42
+ e.list.isLoading.value ? u(n.$slots, "loading", { key: 0 }, () => [
43
+ d("div", S, [
44
+ f(y(B), {
45
+ count: 3,
46
+ height: "h-12"
47
+ })
48
+ ])
49
+ ]) : e.list.items.value.length === 0 ? u(n.$slots, "empty", { key: 1 }, () => [
50
+ d("div", I, x(m.value("ui.cursor_list.empty")), 1)
51
+ ]) : (s(), o(v, { key: 2 }, [
52
+ (s(!0), o(v, null, b(e.list.items.value, (a, c) => u(n.$slots, "item", {
53
+ key: e.itemKey ? String(a[e.itemKey]) : c,
54
+ item: a,
55
+ index: c
56
+ })), 128)),
57
+ d("div", {
58
+ ref_key: "sentinel",
59
+ ref: r
60
+ }, null, 512),
61
+ e.list.hasNext.value ? (s(), o("div", j, [
62
+ f(y($), {
63
+ variant: "secondary",
64
+ size: "sm",
65
+ label: m.value("ui.cursor_list.load_more"),
66
+ "is-loading": e.list.isLoadingNext.value,
67
+ "data-test": "load-more",
68
+ onClick: i[0] || (i[0] = (a) => e.list.next())
69
+ }, null, 8, ["label", "is-loading"])
70
+ ])) : C("", !0)
71
+ ], 64))
72
+ ]));
73
+ }
74
+ });
75
+ export {
76
+ z as OneCursorList,
77
+ T as useCursorList
78
+ };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),pe=require("../i18n/index.cjs"),j=require("../ChevronRightIcon-7a2f0c20.cjs"),P=require("../SpinnerIcon-ccb6f3fc.cjs"),G=require("../ChevronDownIcon-6889ac87.cjs"),T=require("../CheckIcon-09b84cf5.cjs"),Fe=require("../_plugin-vue_export-helper-f246444f.cjs");require("../SpinnerIcon.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs");function Me(c,a){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.8",stroke:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15.75 19.5L8.25 12l7.5-7.5"})])}function ce(c,a){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.8",stroke:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M8.25 15L12 18.75 15.75 15m-7.5-6L12 5.25 15.75 9"})])}const qe={field:{type:String,required:!1},header:{type:String,required:!1},sortable:{type:Boolean,default:!1},sortField:{type:String,required:!1},filterable:{type:Boolean,default:!1},filterField:{type:String,required:!1},expander:{type:Boolean,default:!1},width:{type:String,required:!1},headerClass:{type:String,required:!1},bodyClass:{type:String,required:!1},headerStyle:{type:[String,Object],required:!1},bodyStyle:{type:[String,Object],required:!1},visibleFrom:{type:String,required:!1}},ze={value:{type:Array,default:()=>[]},dataKey:{type:String,required:!1},lazy:{type:Boolean,default:!1},paginator:{type:Boolean,default:!1},rows:{type:Number,default:10},first:{type:Number,default:0},totalRecords:{type:Number,required:!1},rowsPerPageOptions:{type:Array,default:()=>[10,25,50,100]},sortField:{type:String,required:!1},sortOrder:{type:Number,default:null},selectionMode:{type:String,required:!1},selection:{type:[Object,Array],required:!1},expandedRows:{type:[Array,Object],default:()=>[]},filters:{type:Object,required:!1},filterDisplay:{type:String,default:null},globalFilterFields:{type:Array,required:!1},loading:{type:Boolean,default:!1},striped:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!0},bordered:{type:Boolean,default:!1},size:{type:String,default:"md"},tableClass:{type:String,required:!1},hasNextPage:{type:Boolean,default:!1},loadingNext:{type:Boolean,default:!1},loadMoreLabel:{type:String,default:""},colWidths:{type:[Array,Function],required:!1},verticalBorders:{type:String,default:"none"},headerVariant:{type:String,default:"default"},headerBgClass:{type:String,required:!1},bodyBgClass:{type:String,required:!1},wrapperClass:{type:String,required:!1},wrapperBordered:{type:Boolean,default:!0},cardBreakpoint:{type:String,required:!1},disabledRows:{type:Function,required:!1}},fe=Symbol("OneDataTable"),de={contains:(c,a)=>String(c??"").toLowerCase().includes(String(a).toLowerCase()),startsWith:(c,a)=>String(c??"").toLowerCase().startsWith(String(a).toLowerCase()),endsWith:(c,a)=>String(c??"").toLowerCase().endsWith(String(a).toLowerCase()),equals:(c,a)=>String(c??"").toLowerCase()===String(a).toLowerCase(),notEquals:(c,a)=>String(c??"").toLowerCase()!==String(a).toLowerCase()},Le={sm:640,md:768,lg:1024,xl:1280,"2xl":1536};function Oe(c){const a=e.ref(!1);let d=null,r=null;const i=()=>{d&&r&&d.removeEventListener("change",r),d=null,r=null},u=p=>{i(),!(typeof window>"u")&&(d=window.matchMedia(p),a.value=d.matches,r=C=>{a.value=C.matches},d.addEventListener("change",r))};return e.onMounted(()=>{u(e.toValue(c)),e.watch(()=>e.toValue(c),p=>{u(p)})}),e.onBeforeUnmount(()=>{i()}),a}function _(c){return Oe(`(min-width: ${Le[c]}px)`)}const Pe=(c=!0)=>{const a=["overflow-x-auto","w-full"];return c&&a.push("border","border-gray-100","rounded"),a},Te=c=>{const a=["min-w-full","text-left","relative"];return c==="sm"?a.push("text-xs"):c==="lg"?a.push("text-base"):a.push("text-sm"),a},J=(c,a,d="none",r="default",i)=>{const u=[];return r==="minimal"?u.push(i||"bg-gray-50","text-gray-700","font-medium","text-sm","normal-case","border-b","border-gray-200"):u.push(i||"bg-gray-100","text-gray-600","font-semibold","text-xs","uppercase","tracking-wide","border-b","border-gray-200","whitespace-nowrap"),a&&u.push("cursor-pointer","select-none","hover:text-primary-base","transition-colors"),d==="always"?u.push("border-r","border-r-gray-200","last:border-r-0"):(d==="hover"||d==="hover-table")&&u.push("border-r","border-r-transparent","last:border-r-0"),c==="sm"?u.push("px-1.5","py-1"):c==="lg"?u.push("px-4","py-3"):u.push("p-2"),u},X=(c,a,d="none",r)=>{const i=["border-b","border-gray-100","text-gray-900"];return r&&i.push(r),a&&i.push("border-r"),d==="always"?i.push("border-r","border-r-gray-200","last:border-r-0"):(d==="hover"||d==="hover-table")&&i.push("border-r","border-r-transparent","last:border-r-0"),c==="sm"?i.push("px-1.5","py-1"):c==="lg"?i.push("px-4","py-3"):i.push("px-2","py-1.5"),i},$e=(c,a,d,r,i=!1,u=!1)=>{const p=[];return i&&p.push("group"),u?(p.push("opacity-50"),p):(r?p.push("bg-primary-25"):c&&d&&p.push("bg-gray-50"),a&&(r?p.push("hover:bg-primary-25-hover","transition-colors"):p.push("hover:bg-gray-50","transition-colors")),p)},$=c=>{const a=["w-3.5","h-3.5","inline-block","ml-1"];return c?a.push("text-primary-base"):a.push("text-gray-400"),a.push("transition-transform","duration-200"),a},Z=c=>{const a=["text-center"];return c==="sm"?a.push("w-8"):c==="lg"?a.push("w-14"):a.push("w-12"),a},ue=c=>Z(c),je=()=>["flex","items-center","justify-between","px-2","py-2","border-t","border-gray-100","bg-white","text-sm"],Ke=(c,a,d=!1)=>{const r=["rounded","border","p-3"];return d?(r.push("bg-white","border-gray-100","opacity-50"),r):(a?r.push("bg-primary-25","border-primary-base/20"):r.push("bg-white","border-gray-100"),c&&(a?r.push("hover:bg-primary-25-hover","transition-colors"):r.push("hover:bg-gray-50","transition-colors")),r)},Ae=c=>{const a=["flex","items-start","justify-between","gap-2"];return c==="sm"?a.push("py-0.5"):c==="lg"?a.push("py-2"):a.push("py-1"),a},Y=c=>{const a=["bg-gray-100","border-b","border-gray-200"];return c==="sm"?a.push("px-1.5","py-1"):c==="lg"?a.push("px-4","py-2"):a.push("px-2","py-1.5"),a},We={class:"flex items-center gap-4"},Ie={class:"text-gray-600"},Ue=["value"],He=["value"],Qe={class:"flex items-center gap-1"},Ge=["disabled"],Je={class:"px-2 text-gray-600"},Xe=["disabled"],me=e.defineComponent({__name:"OneDataTablePaginator",props:{first:{type:Number,required:!0},rows:{type:Number,required:!0},totalRecords:{type:Number,required:!0},rowsPerPageOptions:{type:Array,default:()=>[10,25,50,100]}},emits:["update:first","update:rows","page"],setup(c,{emit:a}){const d=c,r=a,i=pe.useOnebI18n(),u=e.computed(()=>Math.ceil(d.totalRecords/d.rows)),p=e.computed(()=>Math.floor(d.first/d.rows)+1),C=e.computed(()=>d.totalRecords===0?0:d.first+1),K=e.computed(()=>Math.min(d.first+d.rows,d.totalRecords)),A=e.computed(()=>d.first===0),w=e.computed(()=>d.first+d.rows>=d.totalRecords),R=e.computed(()=>je()),x=g=>{g<0||g>=d.totalRecords||(r("update:first",g),r("page",{first:g,rows:d.rows,page:Math.floor(g/d.rows),pageCount:u.value}))},F=()=>{x(Math.max(0,d.first-d.rows))},m=()=>{x(d.first+d.rows)},q=g=>{const v=parseInt(g.target.value);r("update:rows",v),r("update:first",0),r("page",{first:0,rows:v,page:0,pageCount:Math.ceil(d.totalRecords/v)})};return(g,v)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(R.value)},[e.createElementVNode("div",We,[e.createElementVNode("span",Ie,e.toDisplayString(C.value)+"–"+e.toDisplayString(K.value)+" of "+e.toDisplayString(c.totalRecords),1),c.rowsPerPageOptions.length>1?(e.openBlock(),e.createElementBlock("select",{key:0,value:c.rows,class:"border border-gray-300 rounded px-2 py-1 text-sm bg-white focus:outline-none focus:ring-1 focus:ring-primary-glow",onChange:q},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.rowsPerPageOptions,b=>(e.openBlock(),e.createElementBlock("option",{key:b,value:b},e.toDisplayString(e.unref(i)("ui.dataTable.perPage",{count:b})),9,He))),128))],40,Ue)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Qe,[e.createElementVNode("button",{disabled:A.value,class:"p-1.5 rounded hover:bg-gray-100 disabled:opacity-30 disabled:cursor-default transition-colors",onClick:F},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Me)),{class:"w-4 h-4 text-gray-600"}))],8,Ge),e.createElementVNode("span",Je,e.toDisplayString(p.value)+" / "+e.toDisplayString(u.value),1),e.createElementVNode("button",{disabled:w.value,class:"p-1.5 rounded hover:bg-gray-100 disabled:opacity-30 disabled:cursor-default transition-colors",onClick:m},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(j.render$1)),{class:"w-4 h-4 text-gray-600"}))],8,Xe)])],2))}}),Ye={key:0,class:"mb-3"},Ze={key:0},De={key:0,class:"w-5 h-5 rounded bg-primary-base flex items-center justify-center text-white"},et={key:1,class:"w-5 h-5 rounded border border-gray-300 bg-white"},tt=["onClick"],ot={key:1,class:"inline-flex items-center gap-1"},rt={key:0},lt=["value","placeholder","onInput"],st={key:1},nt=["onClick"],at=["onClick"],it={key:0,class:"w-5 h-5 rounded bg-primary-base flex items-center justify-center text-white"},ct={key:1,class:"w-5 h-5 rounded border border-gray-300 bg-white"},dt=["onClick"],ut={key:0,class:"w-5 h-5 rounded-full bg-primary-base flex items-center justify-center"},pt={key:1,class:"w-5 h-5 rounded-full border border-gray-300 bg-white"},ft=["disabled","onClick"],mt={key:0},yt=["colspan"],kt={key:2},gt=["colspan"],ht={class:"flex items-center justify-center gap-2 text-gray-500"},vt={key:3},bt=["colspan"],Bt={class:"text-gray-400"},Ct={key:4},wt=["colspan"],Et=["disabled"],St={key:2},xt={key:0,class:"text-center py-12"},Nt={class:"flex items-center justify-center gap-2 text-gray-500"},Vt={key:1,class:"text-center py-12"},_t={class:"text-gray-400"},Rt={key:2,class:"space-y-2"},Ft={key:0,class:"flex items-center gap-2 px-3 py-2"},Mt={key:0,class:"w-5 h-5 rounded bg-primary-base flex items-center justify-center text-white"},qt={key:1,class:"w-5 h-5 rounded border border-gray-300 bg-white"},zt={class:"text-sm text-gray-500"},Lt=["onClick"],Ot={key:0,class:"flex items-center justify-between mb-2"},Pt={key:0},Tt=["onClick"],$t={key:0,class:"w-5 h-5 rounded bg-primary-base flex items-center justify-center text-white"},jt={key:1,class:"w-5 h-5 rounded border border-gray-300 bg-white"},Kt=["onClick"],At={key:0,class:"w-5 h-5 rounded-full bg-primary-base flex items-center justify-center"},Wt={key:1,class:"w-5 h-5 rounded-full border border-gray-300 bg-white"},It={key:1},Ut=["disabled","onClick"],Ht={class:"text-gray-500 text-xs font-medium shrink-0"},Qt={class:"text-right"},Gt={key:1,class:"mt-2 pt-2 border-t border-gray-100"},Jt=["disabled"],Xt={key:4,class:"mt-3"},Yt=e.defineComponent({__name:"OneDataTable",props:ze,emits:["update:value","update:selection","update:expandedRows","update:first","update:rows","update:sortField","update:sortOrder","update:filters","sort","page","filter","row-click","row-select","row-unselect","row-expand","row-collapse","load:next"],setup(c,{expose:a,emit:d}){const r=c,i=d,u=e.useSlots(),p=pe.useOnebI18n(),C=e.ref([]),K=t=>{C.value.push(t)},A=t=>{const l=C.value.indexOf(t);l>-1&&C.value.splice(l,1)};e.provide(fe,{registerColumn:K,unregisterColumn:A});const w=e.ref(r.first),R=e.ref(r.rows),x=e.ref(r.sortField),F=e.ref(r.sortOrder);e.watch(()=>r.first,t=>{w.value=t}),e.watch(()=>r.rows,t=>{R.value=t}),e.watch(()=>r.sortField,t=>{x.value=t}),e.watch(()=>r.sortOrder,t=>{F.value=t});const m=e.ref([...r.value]);e.watch(()=>r.value,t=>{m.value=[...t]});const q=e.computed(()=>w.value),g=e.computed(()=>R.value),v=e.computed(()=>x.value),b=e.computed(()=>F.value),y=(t,l)=>l?l.split(".").reduce((o,n)=>o==null?void 0:o[n],t):t,D=t=>r.dataKey?y(t,r.dataKey):t,B=(t,l)=>t==null||l==null?t===l:r.dataKey?y(t,r.dataKey)===y(l,r.dataKey):t===l,ee=(t,l)=>r.dataKey?y(t,r.dataKey):l,k=t=>{var l;return((l=r.disabledRows)==null?void 0:l.call(r,t))??!1};a({updateRow:t=>{if(!r.dataKey)return console.warn("[OneDataTable] updateRow requires dataKey to be set"),!1;const l=y(t,r.dataKey),o=m.value.findIndex(s=>y(s,r.dataKey)===l);if(o===-1)return!1;const n=[...m.value];return n[o]=t,m.value=n,i("update:value",n),!0},addItems:(t,l="append")=>{const o=l==="prepend"?[...t,...m.value]:[...m.value,...t];m.value=o,i("update:value",o)},removeRow:t=>{if(!r.dataKey)return console.warn("[OneDataTable] removeRow requires dataKey to be set"),!1;const l=m.value.findIndex(n=>y(n,r.dataKey)===t);if(l===-1)return!1;const o=[...m.value];return o.splice(l,1),m.value=o,i("update:value",o),!0}});const h=e.computed(()=>C.value.some(t=>t.props.expander)),E=e.computed(()=>!!r.selectionMode),z=e.computed(()=>r.selectionMode==="multiple"),W=e.computed(()=>C.value.filter(t=>!t.props.expander)),L=e.computed(()=>M.value.length+(E.value?1:0)+(h.value?1:0)),te=e.computed(()=>{var o,n;if(r.lazy||!r.filters)return m.value;let t=[...m.value];const l=r.filters;if((o=l.global)!=null&&o.value&&((n=r.globalFilterFields)!=null&&n.length)){const s=l.global.value;t=t.filter(f=>r.globalFilterFields.some(Q=>de.contains(y(f,Q),s)))}for(const[s,f]of Object.entries(l)){if(s==="global"||!f.value)continue;const Q=f.matchMode||"contains",ie=de[Q];ie&&(t=t.filter(Re=>ie(y(Re,s),f.value)))}return t}),ye=e.computed(()=>{const t=te.value;return r.lazy||!v.value||!b.value?t:[...t].sort((l,o)=>{const n=y(l,v.value),s=y(o,v.value);if(n==null&&s==null)return 0;if(n==null)return 1;if(s==null)return-1;let f;return typeof n=="number"&&typeof s=="number"?f=n-s:f=String(n).localeCompare(String(s)),b.value===1?f:-f})}),oe=e.computed(()=>r.totalRecords??te.value.length),N=e.computed(()=>{const t=ye.value;if(r.paginator&&!r.lazy){const l=q.value,o=l+g.value;return t.slice(l,o)}return t}),ke=t=>{let l;v.value===t?b.value===1?l=-1:b.value===-1?l=null:l=1:l=1,x.value=t,F.value=l,i("update:sortField",t),i("update:sortOrder",l),i("sort",{field:t,order:l}),!r.lazy&&r.paginator&&(w.value=0,i("update:first",0))},re=t=>t.props.sortField||t.props.field,ge=t=>v.value===re(t),S=t=>r.selection?r.selectionMode==="single"?B(r.selection,t):r.selectionMode==="multiple"?r.selection.some(l=>B(l,t)):!1:!1,O=(t,l,o)=>{if(i("row-click",{originalEvent:t,data:l,index:o}),!k(l)&&r.selectionMode==="single"){const n=B(r.selection,l)?null:l;i("update:selection",n),n?i("row-select",{originalEvent:t,data:l}):i("row-unselect",{originalEvent:t,data:l})}},I=(t,l)=>{if(t.stopPropagation(),!k(l)&&r.selectionMode==="multiple"){const o=r.selection||[],n=o.some(f=>B(f,l));let s;n?(s=o.filter(f=>!B(f,l)),i("row-unselect",{originalEvent:t,data:l})):(s=[...o,l],i("row-select",{originalEvent:t,data:l})),i("update:selection",s)}},U=e.computed(()=>{if(r.selectionMode!=="multiple"||!r.selection)return!1;const t=r.selection,l=N.value.filter(o=>!k(o));return l.length>0&&l.every(o=>t.some(n=>B(n,o)))}),le=t=>{t.stopPropagation();const l=r.selection||[],o=N.value.filter(n=>!k(n));if(U.value){const n=l.filter(s=>!o.some(f=>B(s,f)));i("update:selection",n)}else{const n=[...l];o.forEach(s=>{n.some(f=>B(f,s))||n.push(s)}),i("update:selection",n)}},V=t=>{if(!r.expandedRows)return!1;if(Array.isArray(r.expandedRows))return r.expandedRows.some(l=>B(l,t));if(r.dataKey){const l=String(D(t));return!!r.expandedRows[l]}return!1},H=(t,l)=>{if(t.stopPropagation(),k(l))return;const o=V(l);if(Array.isArray(r.expandedRows)){let n;o?(n=r.expandedRows.filter(s=>!B(s,l)),i("row-collapse",{originalEvent:t,data:l})):(n=[...r.expandedRows,l],i("row-expand",{originalEvent:t,data:l})),i("update:expandedRows",n)}else if(r.dataKey){const n=String(D(l)),s={...r.expandedRows};o?(delete s[n],i("row-collapse",{originalEvent:t,data:l})):(s[n]=!0,i("row-expand",{originalEvent:t,data:l})),i("update:expandedRows",s)}},he=(t,l,o)=>{var s;if(!r.filters)return;const n={...r.filters,[t]:{value:l,matchMode:o||((s=r.filters[t])==null?void 0:s.matchMode)||"contains"}};i("update:filters",n),r.lazy&&i("filter",{filters:n}),r.paginator&&(w.value=0,i("update:first",0))},se=t=>{var l;return((l=r.filters)==null?void 0:l[t])||{value:null}},ve=t=>()=>{r.filters&&(i("update:filters",{...r.filters}),r.lazy&&i("filter",{filters:r.filters}),r.paginator&&(w.value=0,i("update:first",0)))},be=t=>{w.value=t,i("update:first",t)},Be=t=>{R.value=t,i("update:rows",t)},ne=e.computed(()=>{const t=[];if(r.colWidths){if(typeof r.colWidths=="function"){const l=r.colWidths(W.value),o=[];return E.value&&o.push(""),h.value&&o.push(""),[...o,...l]}return r.colWidths}return E.value&&t.push(""),h.value&&t.push(""),W.value.forEach(l=>{t.push(l.props.width||"")}),t}),ae=e.computed(()=>ne.value.some(t=>t!==""&&t!=null)),Ce=e.computed(()=>r.wrapperClass?["overflow-x-auto","w-full",r.wrapperClass]:r.verticalBorders==="hover-table"?["overflow-x-auto","w-full","border","border-transparent","rounded"]:Pe(r.wrapperBordered)),we=e.computed(()=>{const t=Te(r.size);return r.tableClass&&t.push(r.tableClass),r.bordered&&t.push("border","border-gray-100"),t}),Ee=r.cardBreakpoint?_(r.cardBreakpoint):e.ref(!0),Se=e.computed(()=>!!r.cardBreakpoint&&!Ee.value),xe={sm:_("sm"),md:_("md"),lg:_("lg"),xl:_("xl"),"2xl":_("2xl")},Ne=t=>{var o;if(!t.props.visibleFrom)return!0;const l=t.props.visibleFrom;return((o=xe[l])==null?void 0:o.value)??!0},M=e.computed(()=>W.value.filter(Ne)),Ve=t=>l=>H(l,t),_e=t=>l=>I(l,t);return(t,l)=>(e.openBlock(),e.createElementBlock("div",null,[e.withDirectives(e.createElementVNode("div",null,[e.renderSlot(t.$slots,"default",{},void 0,!0)],512),[[e.vShow,!1]]),e.unref(u).header?(e.openBlock(),e.createElementBlock("div",Ye,[e.renderSlot(t.$slots,"header",{},void 0,!0)])):e.createCommentVNode("",!0),Se.value?(e.openBlock(),e.createElementBlock("div",St,[t.loading?(e.openBlock(),e.createElementBlock("div",xt,[e.renderSlot(t.$slots,"loading",{},()=>[e.createElementVNode("div",Nt,[e.createVNode(P.SpinnerIcon,{class:"w-5 h-5"}),e.createElementVNode("span",null,e.toDisplayString(e.unref(p)("ui.dataTable.loading")),1)])],!0)])):N.value.length===0?(e.openBlock(),e.createElementBlock("div",Vt,[e.renderSlot(t.$slots,"empty",{},()=>[e.createElementVNode("span",_t,e.toDisplayString(e.unref(p)("ui.dataTable.noRecords")),1)],!0)])):(e.openBlock(),e.createElementBlock("div",Rt,[z.value?(e.openBlock(),e.createElementBlock("div",Ft,[e.createElementVNode("div",{class:"cursor-pointer",onClick:l[2]||(l[2]=o=>le(o))},[U.value?(e.openBlock(),e.createElementBlock("div",Mt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(T.render)),{class:"w-3.5 h-3.5"}))])):(e.openBlock(),e.createElementBlock("div",qt))]),e.createElementVNode("span",zt,e.toDisplayString(e.unref(p)("ui.dataTable.selectAll")),1)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(o,n)=>(e.openBlock(),e.createElementBlock("div",{key:ee(o,n),class:e.normalizeClass([...e.unref(Ke)(t.hoverable,S(o),k(o)),t.selectionMode&&!k(o)?"cursor-pointer":""]),onClick:s=>O(s,o,n)},[e.unref(u).card?e.renderSlot(t.$slots,"card",{key:0,data:o,index:n,selected:S(o),expanded:h.value&&V(o),toggleExpansion:Ve(o),toggleSelection:_e(o),disabled:k(o)},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[E.value||h.value?(e.openBlock(),e.createElementBlock("div",Ot,[E.value?(e.openBlock(),e.createElementBlock("div",Pt,[z.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"cursor-pointer",onClick:e.withModifiers(s=>I(s,o),["stop"])},[S(o)?(e.openBlock(),e.createElementBlock("div",$t,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(T.render)),{class:"w-3.5 h-3.5"}))])):(e.openBlock(),e.createElementBlock("div",jt))],8,Tt)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"cursor-pointer",onClick:e.withModifiers(s=>O(s,o,n),["stop"])},[S(o)?(e.openBlock(),e.createElementBlock("div",At,[...l[6]||(l[6]=[e.createElementVNode("div",{class:"w-2 h-2 rounded-full bg-white"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",Wt))],8,Kt))])):(e.openBlock(),e.createElementBlock("div",It)),h.value?(e.openBlock(),e.createElementBlock("button",{key:2,class:"p-1 rounded hover:bg-gray-100 transition-colors disabled:opacity-50 disabled:cursor-default disabled:hover:bg-transparent",disabled:k(o),onClick:e.withModifiers(s=>H(s,o),["stop"])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(V(o)?e.unref(G.render):e.unref(j.render$1)),{class:"w-4 h-4 text-gray-500"}))],8,Ut)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.value,(s,f)=>(e.openBlock(),e.createElementBlock("div",{key:f,class:e.normalizeClass(e.unref(Ae)(t.size))},[e.createElementVNode("span",Ht,e.toDisplayString(s.props.header),1),e.createElementVNode("div",Qt,[s.slots.body?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.slots.body),{key:0,data:o,field:s.props.field,index:n},null,8,["data","field","index"])):s.props.field?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y(o,s.props.field)),1)],64)):e.createCommentVNode("",!0)])],2))),128)),h.value&&V(o)?(e.openBlock(),e.createElementBlock("div",Gt,[e.renderSlot(t.$slots,"expansion",{data:o,index:n},void 0,!0)])):e.createCommentVNode("",!0)],64))],10,Lt))),128)),t.hasNextPage&&!t.loading?(e.openBlock(),e.createElementBlock("button",{key:1,class:"w-full p-2 rounded bg-primary-base bg-opacity-10 text-primary-base text-sm font-medium hover:bg-opacity-20 transition-colors disabled:opacity-50 disabled:cursor-default flex items-center justify-center gap-2",disabled:t.loadingNext,onClick:l[3]||(l[3]=o=>i("load:next"))},[t.loadingNext?(e.openBlock(),e.createBlock(P.SpinnerIcon,{key:0,class:"w-4 h-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.loadMoreLabel||e.unref(p)("ui.dataTable.showMore")),1)],8,Jt)):e.createCommentVNode("",!0)]))])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass([...Ce.value,t.verticalBorders==="hover-table"?"vb-hover":""])},[e.createElementVNode("table",{class:e.normalizeClass([...we.value,t.verticalBorders!=="none"?"border-separate border-spacing-0":"border-collapse",t.verticalBorders==="hover"?"vb-hover":"",ae.value?"table-fixed":""])},[ae.value?(e.openBlock(),e.createElementBlock("colgroup",Ze,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ne.value,(o,n)=>(e.openBlock(),e.createElementBlock("col",{key:`col-${n}`,style:e.normalizeStyle(o?{width:o}:{})},null,4))),128))])):e.createCommentVNode("",!0),e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[E.value?(e.openBlock(),e.createElementBlock("th",{key:0,class:e.normalizeClass([...e.unref(J)(t.size,!1,t.verticalBorders,t.headerVariant,t.headerBgClass),...e.unref(Z)(t.size)])},[z.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex items-center justify-center cursor-pointer",onClick:l[0]||(l[0]=o=>le(o))},[U.value?(e.openBlock(),e.createElementBlock("div",De,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(T.render)),{class:"w-3.5 h-3.5"}))])):(e.openBlock(),e.createElementBlock("div",et))])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("th",{key:1,class:e.normalizeClass([...e.unref(J)(t.size,!1,t.verticalBorders,t.headerVariant,t.headerBgClass),...e.unref(ue)(t.size)])},null,2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.value,(o,n)=>(e.openBlock(),e.createElementBlock("th",{key:n,class:e.normalizeClass([...e.unref(J)(t.size,o.props.sortable,t.verticalBorders,t.headerVariant,t.headerBgClass),o.props.headerClass]),style:e.normalizeStyle([o.props.headerStyle,o.props.width?{width:o.props.width}:{}]),onClick:s=>o.props.sortable?ke(re(o)):void 0},[o.slots.header?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.slots.header),{key:0})):(e.openBlock(),e.createElementBlock("span",ot,[e.createTextVNode(e.toDisplayString(o.props.header)+" ",1),o.props.sortable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[ge(o)?b.value===1?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(j.render)),{key:1,class:e.normalizeClass(e.unref($)(!0))},null,8,["class"])):b.value===-1?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(G.render)),{key:2,class:e.normalizeClass(e.unref($)(!0))},null,8,["class"])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ce)),{key:3,class:e.normalizeClass(e.unref($)(!1))},null,8,["class"])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ce)),{key:0,class:e.normalizeClass(e.unref($)(!1))},null,8,["class"]))],64)):e.createCommentVNode("",!0)]))],14,tt))),128))]),t.filterDisplay==="row"?(e.openBlock(),e.createElementBlock("tr",rt,[E.value?(e.openBlock(),e.createElementBlock("th",{key:0,class:e.normalizeClass(e.unref(Y)(t.size))},null,2)):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("th",{key:1,class:e.normalizeClass(e.unref(Y)(t.size))},null,2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.value,(o,n)=>(e.openBlock(),e.createElementBlock("th",{key:`filter-${n}`,class:e.normalizeClass(e.unref(Y)(t.size))},[o.props.filterable&&o.slots.filter?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.slots.filter),{key:0,filterModel:se(o.props.filterField||o.props.field),filterCallback:ve(o.props.filterField||o.props.field)},null,8,["filterModel","filterCallback"])):o.props.filterable&&o.props.field?(e.openBlock(),e.createElementBlock("input",{key:1,type:"text",value:se(o.props.filterField||o.props.field).value||"",class:"w-full border border-gray-300 rounded px-2 py-1 text-sm focus:outline-none focus:ring-1 focus:ring-primary-glow",placeholder:`Filter ${o.props.header||o.props.field}`,onInput:s=>he(o.props.filterField||o.props.field,s.target.value)},null,40,lt)):e.createCommentVNode("",!0)],2))),128))])):e.createCommentVNode("",!0)]),!t.loading&&N.value.length>0?(e.openBlock(),e.createElementBlock("tbody",st,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(o,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:ee(o,n)},[e.createElementVNode("tr",{class:e.normalizeClass([...e.unref($e)(t.striped,t.hoverable,n%2===1,S(o),!1,k(o)),t.selectionMode&&!k(o)?"cursor-pointer":""]),onClick:s=>O(s,o,n)},[E.value?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass([...e.unref(X)(t.size,t.bordered,t.verticalBorders,t.bodyBgClass),...e.unref(Z)(t.size)])},[z.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex items-center justify-center cursor-pointer",onClick:e.withModifiers(s=>I(s,o),["stop"])},[S(o)?(e.openBlock(),e.createElementBlock("div",it,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(T.render)),{class:"w-3.5 h-3.5"}))])):(e.openBlock(),e.createElementBlock("div",ct))],8,at)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"flex items-center justify-center cursor-pointer",onClick:e.withModifiers(s=>O(s,o,n),["stop"])},[S(o)?(e.openBlock(),e.createElementBlock("div",ut,[...l[5]||(l[5]=[e.createElementVNode("div",{class:"w-2 h-2 rounded-full bg-white"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",pt))],8,dt))],2)):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass([...e.unref(X)(t.size,t.bordered,t.verticalBorders,t.bodyBgClass),...e.unref(ue)(t.size)])},[e.createElementVNode("button",{class:"p-1 rounded hover:bg-gray-100 transition-colors disabled:opacity-50 disabled:cursor-default disabled:hover:bg-transparent",disabled:k(o),onClick:s=>H(s,o)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(V(o)?e.unref(G.render):e.unref(j.render$1)),{class:"w-4 h-4 text-gray-500"}))],8,ft)],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.value,(s,f)=>(e.openBlock(),e.createElementBlock("td",{key:f,class:e.normalizeClass([...e.unref(X)(t.size,t.bordered,t.verticalBorders,t.bodyBgClass),s.props.bodyClass]),style:e.normalizeStyle(s.props.bodyStyle)},[s.slots.body?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.slots.body),{key:0,data:o,field:s.props.field,index:n,disabled:k(o)},null,8,["data","field","index","disabled"])):s.props.field?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y(o,s.props.field)),1)],64)):e.createCommentVNode("",!0)],6))),128))],10,nt),h.value&&V(o)?(e.openBlock(),e.createElementBlock("tr",mt,[e.createElementVNode("td",{colspan:L.value,class:"p-0"},[e.renderSlot(t.$slots,"expansion",{data:o,index:n},void 0,!0)],8,yt)])):e.createCommentVNode("",!0)],64))),128))])):t.loading?(e.openBlock(),e.createElementBlock("tbody",kt,[e.createElementVNode("tr",null,[e.createElementVNode("td",{colspan:L.value,class:"text-center py-12"},[e.renderSlot(t.$slots,"loading",{},()=>[e.createElementVNode("div",ht,[e.createVNode(P.SpinnerIcon,{class:"w-5 h-5"}),e.createElementVNode("span",null,e.toDisplayString(e.unref(p)("ui.dataTable.loading")),1)])],!0)],8,gt)])])):(e.openBlock(),e.createElementBlock("tbody",vt,[e.createElementVNode("tr",null,[e.createElementVNode("td",{colspan:L.value,class:"text-center py-12"},[e.renderSlot(t.$slots,"empty",{},()=>[e.createElementVNode("span",Bt,e.toDisplayString(e.unref(p)("ui.dataTable.noRecords")),1)],!0)],8,bt)])])),t.hasNextPage&&!t.loading?(e.openBlock(),e.createElementBlock("tfoot",Ct,[e.createElementVNode("tr",null,[e.createElementVNode("td",{colspan:L.value,class:"px-3 pb-3 pt-2"},[e.createElementVNode("button",{class:"w-full p-2 rounded bg-primary-base bg-opacity-10 text-primary-base text-sm font-medium hover:bg-opacity-20 transition-colors disabled:opacity-50 disabled:cursor-default flex items-center justify-center gap-2",disabled:t.loadingNext,onClick:l[1]||(l[1]=o=>i("load:next"))},[t.loadingNext?(e.openBlock(),e.createBlock(P.SpinnerIcon,{key:0,class:"w-4 h-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.loadMoreLabel||e.unref(p)("ui.dataTable.showMore")),1)],8,Et)],8,wt)])])):e.createCommentVNode("",!0)],2)],2)),t.paginator&&oe.value>0?(e.openBlock(),e.createBlock(me,{key:3,first:q.value,rows:g.value,"total-records":oe.value,"rows-per-page-options":t.rowsPerPageOptions,"onUpdate:first":be,"onUpdate:rows":Be,onPage:l[4]||(l[4]=o=>i("page",o))},null,8,["first","rows","total-records","rows-per-page-options"])):e.createCommentVNode("",!0),e.unref(u).footer?(e.openBlock(),e.createElementBlock("div",Xt,[e.renderSlot(t.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)]))}});const Zt=Fe._export_sfc(Yt,[["__scopeId","data-v-9359fb0b"]]),Dt=e.defineComponent({__name:"OneColumn",props:qe,setup(c){const a=c,d=e.useSlots(),r=e.inject(fe),i={props:a,slots:d};return r&&r.registerColumn(i),e.onBeforeUnmount(()=>{r&&r.unregisterColumn(i)}),(u,p)=>e.renderSlot(u.$slots,"default")}});exports.OneColumn=Dt;exports.OneDataTable=Zt;exports.OneDataTablePaginator=me;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),pe=require("../i18n/index.cjs"),_=require("../useMediaQuery-1d87df02.cjs"),Fe=require("../ChevronLeftIcon-7505e081.cjs"),Y=require("../ChevronRightIcon-2992cf0d.cjs"),P=require("../SpinnerIcon-01be39fe.cjs"),Q=require("../ChevronDownIcon-6889ac87.cjs"),qe=require("../ChevronUpIcon-64a673e1.cjs"),T=require("../CheckIcon-09b84cf5.cjs"),Me=require("../_plugin-vue_export-helper-f246444f.cjs");function ce(c,a){return e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.8",stroke:"currentColor","aria-hidden":"true"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M8.25 15L12 18.75 15.75 15m-7.5-6L12 5.25 15.75 9"})])}const ze={field:{type:String,required:!1},header:{type:String,required:!1},sortable:{type:Boolean,default:!1},sortField:{type:String,required:!1},filterable:{type:Boolean,default:!1},filterField:{type:String,required:!1},expander:{type:Boolean,default:!1},width:{type:String,required:!1},headerClass:{type:String,required:!1},bodyClass:{type:String,required:!1},headerStyle:{type:[String,Object],required:!1},bodyStyle:{type:[String,Object],required:!1},visibleFrom:{type:String,required:!1}},Le={value:{type:Array,default:()=>[]},dataKey:{type:String,required:!1},lazy:{type:Boolean,default:!1},paginator:{type:Boolean,default:!1},rows:{type:Number,default:10},first:{type:Number,default:0},totalRecords:{type:Number,required:!1},rowsPerPageOptions:{type:Array,default:()=>[10,25,50,100]},sortField:{type:String,required:!1},sortOrder:{type:Number,default:null},selectionMode:{type:String,required:!1},selection:{type:[Object,Array],required:!1},expandedRows:{type:[Array,Object],default:()=>[]},filters:{type:Object,required:!1},filterDisplay:{type:String,default:null},globalFilterFields:{type:Array,required:!1},loading:{type:Boolean,default:!1},striped:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!0},bordered:{type:Boolean,default:!1},size:{type:String,default:"md"},tableClass:{type:String,required:!1},hasNextPage:{type:Boolean,default:!1},loadingNext:{type:Boolean,default:!1},loadMoreLabel:{type:String,default:""},colWidths:{type:[Array,Function],required:!1},verticalBorders:{type:String,default:"none"},headerVariant:{type:String,default:"default"},headerBgClass:{type:String,required:!1},bodyBgClass:{type:String,required:!1},wrapperClass:{type:String,required:!1},wrapperBordered:{type:Boolean,default:!0},cardBreakpoint:{type:String,required:!1},disabledRows:{type:Function,required:!1}},fe=Symbol("OneDataTable"),de={contains:(c,a)=>String(c??"").toLowerCase().includes(String(a).toLowerCase()),startsWith:(c,a)=>String(c??"").toLowerCase().startsWith(String(a).toLowerCase()),endsWith:(c,a)=>String(c??"").toLowerCase().endsWith(String(a).toLowerCase()),equals:(c,a)=>String(c??"").toLowerCase()===String(a).toLowerCase(),notEquals:(c,a)=>String(c??"").toLowerCase()!==String(a).toLowerCase()},Oe=(c=!0)=>{const a=["overflow-x-auto","w-full"];return c&&a.push("border","border-gray-100","rounded"),a},Pe=c=>{const a=["min-w-full","text-left","relative"];return c==="sm"?a.push("text-xs"):c==="lg"?a.push("text-base"):a.push("text-sm"),a},G=(c,a,d="none",o="default",i)=>{const p=[];return o==="minimal"?p.push(i||"bg-gray-50","text-gray-700","font-medium","text-sm","normal-case","border-b","border-gray-200"):p.push(i||"bg-gray-100","text-gray-600","font-semibold","text-xs","uppercase","tracking-wide","border-b","border-gray-200","whitespace-nowrap"),a&&p.push("cursor-pointer","select-none","hover:text-primary-base","transition-colors"),d==="always"?p.push("border-r","border-r-gray-200","last:border-r-0"):(d==="hover"||d==="hover-table")&&p.push("border-r","border-r-transparent","last:border-r-0"),c==="sm"?p.push("px-1.5","py-1"):c==="lg"?p.push("px-4","py-3"):p.push("p-2"),p},J=(c,a,d="none",o)=>{const i=["border-b","border-gray-100","text-gray-900"];return o&&i.push(o),a&&i.push("border-r"),d==="always"?i.push("border-r","border-r-gray-200","last:border-r-0"):(d==="hover"||d==="hover-table")&&i.push("border-r","border-r-transparent","last:border-r-0"),c==="sm"?i.push("px-1.5","py-1"):c==="lg"?i.push("px-4","py-3"):i.push("px-2","py-1.5"),i},Te=(c,a,d,o,i=!1,p=!1)=>{const f=[];return i&&f.push("group"),p?(f.push("opacity-50"),f):(o?f.push("bg-primary-25"):c&&d&&f.push("bg-gray-50"),a&&(o?f.push("hover:bg-primary-25-hover","transition-colors"):f.push("hover:bg-gray-50","transition-colors")),f)},$=c=>{const a=["w-3.5","h-3.5","inline-block","ml-1"];return c?a.push("text-primary-base"):a.push("text-gray-400"),a.push("transition-transform","duration-200"),a},Z=c=>{const a=["text-center"];return c==="sm"?a.push("w-8"):c==="lg"?a.push("w-14"):a.push("w-12"),a},ue=c=>Z(c),$e=()=>["flex","items-center","justify-between","px-2","py-2","border-t","border-gray-100","bg-white","text-sm"],je=(c,a,d=!1)=>{const o=["rounded","border","p-3"];return d?(o.push("bg-white","border-gray-100","opacity-50"),o):(a?o.push("bg-primary-25","border-primary-base/20"):o.push("bg-white","border-gray-100"),c&&(a?o.push("hover:bg-primary-25-hover","transition-colors"):o.push("hover:bg-gray-50","transition-colors")),o)},Ke=c=>{const a=["flex","items-start","justify-between","gap-2"];return c==="sm"?a.push("py-0.5"):c==="lg"?a.push("py-2"):a.push("py-1"),a},X=c=>{const a=["bg-gray-100","border-b","border-gray-200"];return c==="sm"?a.push("px-1.5","py-1"):c==="lg"?a.push("px-4","py-2"):a.push("px-2","py-1.5"),a},Ae={class:"flex items-center gap-4"},We={class:"text-gray-600"},Ie=["value"],Ue=["value"],He={class:"flex items-center gap-1"},Qe=["disabled"],Ge={class:"px-2 text-gray-600"},Je=["disabled"],me=e.defineComponent({__name:"OneDataTablePaginator",props:{first:{type:Number,required:!0},rows:{type:Number,required:!0},totalRecords:{type:Number,required:!0},rowsPerPageOptions:{type:Array,default:()=>[10,25,50,100]}},emits:["update:first","update:rows","page"],setup(c,{emit:a}){const d=c,o=a,i=pe.useOnebI18n(),p=e.computed(()=>Math.ceil(d.totalRecords/d.rows)),f=e.computed(()=>Math.floor(d.first/d.rows)+1),E=e.computed(()=>d.totalRecords===0?0:d.first+1),j=e.computed(()=>Math.min(d.first+d.rows,d.totalRecords)),K=e.computed(()=>d.first===0),C=e.computed(()=>d.first+d.rows>=d.totalRecords),R=e.computed(()=>$e()),x=g=>{g<0||g>=d.totalRecords||(o("update:first",g),o("page",{first:g,rows:d.rows,page:Math.floor(g/d.rows),pageCount:p.value}))},F=()=>{x(Math.max(0,d.first-d.rows))},m=()=>{x(d.first+d.rows)},M=g=>{const b=parseInt(g.target.value);o("update:rows",b),o("update:first",0),o("page",{first:0,rows:b,page:0,pageCount:Math.ceil(d.totalRecords/b)})};return(g,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(R.value)},[e.createElementVNode("div",Ae,[e.createElementVNode("span",We,e.toDisplayString(E.value)+"–"+e.toDisplayString(j.value)+" of "+e.toDisplayString(c.totalRecords),1),c.rowsPerPageOptions.length>1?(e.openBlock(),e.createElementBlock("select",{key:0,value:c.rows,class:"border border-gray-300 rounded px-2 py-1 text-sm bg-white focus:outline-none focus:ring-1 focus:ring-primary-glow",onChange:M},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.rowsPerPageOptions,v=>(e.openBlock(),e.createElementBlock("option",{key:v,value:v},e.toDisplayString(e.unref(i)("ui.dataTable.perPage",{count:v})),9,Ue))),128))],40,Ie)):e.createCommentVNode("",!0)]),e.createElementVNode("div",He,[e.createElementVNode("button",{disabled:K.value,class:"p-1.5 rounded hover:bg-gray-100 disabled:opacity-30 disabled:cursor-default transition-colors",onClick:F},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Fe.render)),{class:"w-4 h-4 text-gray-600"}))],8,Qe),e.createElementVNode("span",Ge,e.toDisplayString(f.value)+" / "+e.toDisplayString(p.value),1),e.createElementVNode("button",{disabled:C.value,class:"p-1.5 rounded hover:bg-gray-100 disabled:opacity-30 disabled:cursor-default transition-colors",onClick:m},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Y.render)),{class:"w-4 h-4 text-gray-600"}))],8,Je)])],2))}}),Xe={key:0,class:"mb-3"},Ye={key:0},Ze={key:0,class:"w-5 h-5 rounded bg-primary-base flex items-center justify-center text-white"},De={key:1,class:"w-5 h-5 rounded border border-gray-300 bg-white"},et=["onClick"],tt={key:1,class:"inline-flex items-center gap-1"},rt={key:0},ot=["value","placeholder","onInput"],lt={key:1},st=["onClick"],nt=["onClick"],at={key:0,class:"w-5 h-5 rounded bg-primary-base flex items-center justify-center text-white"},it={key:1,class:"w-5 h-5 rounded border border-gray-300 bg-white"},ct=["onClick"],dt={key:0,class:"w-5 h-5 rounded-full bg-primary-base flex items-center justify-center"},ut={key:1,class:"w-5 h-5 rounded-full border border-gray-300 bg-white"},pt=["disabled","onClick"],ft={key:0},mt=["colspan"],yt={key:2},kt=["colspan"],gt={class:"flex items-center justify-center gap-2 text-gray-500"},ht={key:3},bt=["colspan"],vt={class:"text-gray-400"},Bt={key:4},Ct=["colspan"],wt=["disabled"],Et={key:2},St={key:0,class:"text-center py-12"},xt={class:"flex items-center justify-center gap-2 text-gray-500"},Nt={key:1,class:"text-center py-12"},Vt={class:"text-gray-400"},_t={key:2,class:"space-y-2"},Rt={key:0,class:"flex items-center gap-2 px-3 py-2"},Ft={key:0,class:"w-5 h-5 rounded bg-primary-base flex items-center justify-center text-white"},qt={key:1,class:"w-5 h-5 rounded border border-gray-300 bg-white"},Mt={class:"text-sm text-gray-500"},zt=["onClick"],Lt={key:0,class:"flex items-center justify-between mb-2"},Ot={key:0},Pt=["onClick"],Tt={key:0,class:"w-5 h-5 rounded bg-primary-base flex items-center justify-center text-white"},$t={key:1,class:"w-5 h-5 rounded border border-gray-300 bg-white"},jt=["onClick"],Kt={key:0,class:"w-5 h-5 rounded-full bg-primary-base flex items-center justify-center"},At={key:1,class:"w-5 h-5 rounded-full border border-gray-300 bg-white"},Wt={key:1},It=["disabled","onClick"],Ut={class:"text-gray-500 text-xs font-medium shrink-0"},Ht={class:"text-right"},Qt={key:1,class:"mt-2 pt-2 border-t border-gray-100"},Gt=["disabled"],Jt={key:4,class:"mt-3"},Xt=e.defineComponent({__name:"OneDataTable",props:Le,emits:["update:value","update:selection","update:expandedRows","update:first","update:rows","update:sortField","update:sortOrder","update:filters","sort","page","filter","row-click","row-select","row-unselect","row-expand","row-collapse","load:next"],setup(c,{expose:a,emit:d}){const o=c,i=d,p=e.useSlots(),f=pe.useOnebI18n(),E=e.ref([]),j=t=>{E.value.push(t)},K=t=>{const l=E.value.indexOf(t);l>-1&&E.value.splice(l,1)};e.provide(fe,{registerColumn:j,unregisterColumn:K});const C=e.ref(o.first),R=e.ref(o.rows),x=e.ref(o.sortField),F=e.ref(o.sortOrder);e.watch(()=>o.first,t=>{C.value=t}),e.watch(()=>o.rows,t=>{R.value=t}),e.watch(()=>o.sortField,t=>{x.value=t}),e.watch(()=>o.sortOrder,t=>{F.value=t});const m=e.ref([...o.value]);e.watch(()=>o.value,t=>{m.value=[...t]});const M=e.computed(()=>C.value),g=e.computed(()=>R.value),b=e.computed(()=>x.value),v=e.computed(()=>F.value),y=(t,l)=>l?l.split(".").reduce((r,n)=>r==null?void 0:r[n],t):t,D=t=>o.dataKey?y(t,o.dataKey):t,B=(t,l)=>t==null||l==null?t===l:o.dataKey?y(t,o.dataKey)===y(l,o.dataKey):t===l,ee=(t,l)=>o.dataKey?y(t,o.dataKey):l,k=t=>{var l;return((l=o.disabledRows)==null?void 0:l.call(o,t))??!1};a({updateRow:t=>{if(!o.dataKey)return console.warn("[OneDataTable] updateRow requires dataKey to be set"),!1;const l=y(t,o.dataKey),r=m.value.findIndex(s=>y(s,o.dataKey)===l);if(r===-1)return!1;const n=[...m.value];return n[r]=t,m.value=n,i("update:value",n),!0},addItems:(t,l="append")=>{const r=l==="prepend"?[...t,...m.value]:[...m.value,...t];m.value=r,i("update:value",r)},removeRow:t=>{if(!o.dataKey)return console.warn("[OneDataTable] removeRow requires dataKey to be set"),!1;const l=m.value.findIndex(n=>y(n,o.dataKey)===t);if(l===-1)return!1;const r=[...m.value];return r.splice(l,1),m.value=r,i("update:value",r),!0}});const h=e.computed(()=>E.value.some(t=>t.props.expander)),w=e.computed(()=>!!o.selectionMode),z=e.computed(()=>o.selectionMode==="multiple"),A=e.computed(()=>E.value.filter(t=>!t.props.expander)),L=e.computed(()=>q.value.length+(w.value?1:0)+(h.value?1:0)),te=e.computed(()=>{var r,n;if(o.lazy||!o.filters)return m.value;let t=[...m.value];const l=o.filters;if((r=l.global)!=null&&r.value&&((n=o.globalFilterFields)!=null&&n.length)){const s=l.global.value;t=t.filter(u=>o.globalFilterFields.some(H=>de.contains(y(u,H),s)))}for(const[s,u]of Object.entries(l)){if(s==="global"||!u.value)continue;const H=u.matchMode||"contains",ie=de[H];ie&&(t=t.filter(Re=>ie(y(Re,s),u.value)))}return t}),ye=e.computed(()=>{const t=te.value;return o.lazy||!b.value||!v.value?t:[...t].sort((l,r)=>{const n=y(l,b.value),s=y(r,b.value);if(n==null&&s==null)return 0;if(n==null)return 1;if(s==null)return-1;let u;return typeof n=="number"&&typeof s=="number"?u=n-s:u=String(n).localeCompare(String(s)),v.value===1?u:-u})}),re=e.computed(()=>o.totalRecords??te.value.length),N=e.computed(()=>{const t=ye.value;if(o.paginator&&!o.lazy){const l=M.value,r=l+g.value;return t.slice(l,r)}return t}),ke=t=>{let l;b.value===t?v.value===1?l=-1:v.value===-1?l=null:l=1:l=1,x.value=t,F.value=l,i("update:sortField",t),i("update:sortOrder",l),i("sort",{field:t,order:l}),!o.lazy&&o.paginator&&(C.value=0,i("update:first",0))},oe=t=>t.props.sortField||t.props.field,ge=t=>b.value===oe(t),S=t=>o.selection?o.selectionMode==="single"?B(o.selection,t):o.selectionMode==="multiple"?o.selection.some(l=>B(l,t)):!1:!1,O=(t,l,r)=>{if(i("row-click",{originalEvent:t,data:l,index:r}),!k(l)&&o.selectionMode==="single"){const n=B(o.selection,l)?null:l;i("update:selection",n),n?i("row-select",{originalEvent:t,data:l}):i("row-unselect",{originalEvent:t,data:l})}},W=(t,l)=>{if(t.stopPropagation(),!k(l)&&o.selectionMode==="multiple"){const r=o.selection||[],n=r.some(u=>B(u,l));let s;n?(s=r.filter(u=>!B(u,l)),i("row-unselect",{originalEvent:t,data:l})):(s=[...r,l],i("row-select",{originalEvent:t,data:l})),i("update:selection",s)}},I=e.computed(()=>{if(o.selectionMode!=="multiple"||!o.selection)return!1;const t=o.selection,l=N.value.filter(r=>!k(r));return l.length>0&&l.every(r=>t.some(n=>B(n,r)))}),le=t=>{t.stopPropagation();const l=o.selection||[],r=N.value.filter(n=>!k(n));if(I.value){const n=l.filter(s=>!r.some(u=>B(s,u)));i("update:selection",n)}else{const n=[...l];r.forEach(s=>{n.some(u=>B(u,s))||n.push(s)}),i("update:selection",n)}},V=t=>{if(!o.expandedRows)return!1;if(Array.isArray(o.expandedRows))return o.expandedRows.some(l=>B(l,t));if(o.dataKey){const l=String(D(t));return!!o.expandedRows[l]}return!1},U=(t,l)=>{if(t.stopPropagation(),k(l))return;const r=V(l);if(Array.isArray(o.expandedRows)){let n;r?(n=o.expandedRows.filter(s=>!B(s,l)),i("row-collapse",{originalEvent:t,data:l})):(n=[...o.expandedRows,l],i("row-expand",{originalEvent:t,data:l})),i("update:expandedRows",n)}else if(o.dataKey){const n=String(D(l)),s={...o.expandedRows};r?(delete s[n],i("row-collapse",{originalEvent:t,data:l})):(s[n]=!0,i("row-expand",{originalEvent:t,data:l})),i("update:expandedRows",s)}},he=(t,l,r)=>{var s;if(!o.filters)return;const n={...o.filters,[t]:{value:l,matchMode:r||((s=o.filters[t])==null?void 0:s.matchMode)||"contains"}};i("update:filters",n),o.lazy&&i("filter",{filters:n}),o.paginator&&(C.value=0,i("update:first",0))},se=t=>{var l;return((l=o.filters)==null?void 0:l[t])||{value:null}},be=t=>()=>{o.filters&&(i("update:filters",{...o.filters}),o.lazy&&i("filter",{filters:o.filters}),o.paginator&&(C.value=0,i("update:first",0)))},ve=t=>{C.value=t,i("update:first",t)},Be=t=>{R.value=t,i("update:rows",t)},ne=e.computed(()=>{const t=[];if(o.colWidths){if(typeof o.colWidths=="function"){const l=o.colWidths(A.value),r=[];return w.value&&r.push(""),h.value&&r.push(""),[...r,...l]}return o.colWidths}return w.value&&t.push(""),h.value&&t.push(""),A.value.forEach(l=>{t.push(l.props.width||"")}),t}),ae=e.computed(()=>ne.value.some(t=>t!==""&&t!=null)),Ce=e.computed(()=>o.wrapperClass?["overflow-x-auto","w-full",o.wrapperClass]:o.verticalBorders==="hover-table"?["overflow-x-auto","w-full","border","border-transparent","rounded"]:Oe(o.wrapperBordered)),we=e.computed(()=>{const t=Pe(o.size);return o.tableClass&&t.push(o.tableClass),o.bordered&&t.push("border","border-gray-100"),t}),Ee=o.cardBreakpoint?_.useBreakpoint(o.cardBreakpoint):e.ref(!0),Se=e.computed(()=>!!o.cardBreakpoint&&!Ee.value),xe={sm:_.useBreakpoint("sm"),md:_.useBreakpoint("md"),lg:_.useBreakpoint("lg"),xl:_.useBreakpoint("xl"),"2xl":_.useBreakpoint("2xl")},Ne=t=>{var r;if(!t.props.visibleFrom)return!0;const l=t.props.visibleFrom;return((r=xe[l])==null?void 0:r.value)??!0},q=e.computed(()=>A.value.filter(Ne)),Ve=t=>l=>U(l,t),_e=t=>l=>W(l,t);return(t,l)=>(e.openBlock(),e.createElementBlock("div",null,[e.withDirectives(e.createElementVNode("div",null,[e.renderSlot(t.$slots,"default",{},void 0,!0)],512),[[e.vShow,!1]]),e.unref(p).header?(e.openBlock(),e.createElementBlock("div",Xe,[e.renderSlot(t.$slots,"header",{},void 0,!0)])):e.createCommentVNode("",!0),Se.value?(e.openBlock(),e.createElementBlock("div",Et,[t.loading?(e.openBlock(),e.createElementBlock("div",St,[e.renderSlot(t.$slots,"loading",{},()=>[e.createElementVNode("div",xt,[e.createVNode(P.SpinnerIcon,{class:"w-5 h-5"}),e.createElementVNode("span",null,e.toDisplayString(e.unref(f)("ui.dataTable.loading")),1)])],!0)])):N.value.length===0?(e.openBlock(),e.createElementBlock("div",Nt,[e.renderSlot(t.$slots,"empty",{},()=>[e.createElementVNode("span",Vt,e.toDisplayString(e.unref(f)("ui.dataTable.noRecords")),1)],!0)])):(e.openBlock(),e.createElementBlock("div",_t,[z.value?(e.openBlock(),e.createElementBlock("div",Rt,[e.createElementVNode("div",{class:"cursor-pointer",onClick:l[2]||(l[2]=r=>le(r))},[I.value?(e.openBlock(),e.createElementBlock("div",Ft,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(T.render)),{class:"w-3.5 h-3.5"}))])):(e.openBlock(),e.createElementBlock("div",qt))]),e.createElementVNode("span",Mt,e.toDisplayString(e.unref(f)("ui.dataTable.selectAll")),1)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(r,n)=>(e.openBlock(),e.createElementBlock("div",{key:ee(r,n),class:e.normalizeClass([...e.unref(je)(t.hoverable,S(r),k(r)),t.selectionMode&&!k(r)?"cursor-pointer":""]),onClick:s=>O(s,r,n)},[e.unref(p).card?e.renderSlot(t.$slots,"card",{key:0,data:r,index:n,selected:S(r),expanded:h.value&&V(r),toggleExpansion:Ve(r),toggleSelection:_e(r),disabled:k(r)},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[w.value||h.value?(e.openBlock(),e.createElementBlock("div",Lt,[w.value?(e.openBlock(),e.createElementBlock("div",Ot,[z.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"cursor-pointer",onClick:e.withModifiers(s=>W(s,r),["stop"])},[S(r)?(e.openBlock(),e.createElementBlock("div",Tt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(T.render)),{class:"w-3.5 h-3.5"}))])):(e.openBlock(),e.createElementBlock("div",$t))],8,Pt)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"cursor-pointer",onClick:e.withModifiers(s=>O(s,r,n),["stop"])},[S(r)?(e.openBlock(),e.createElementBlock("div",Kt,[...l[6]||(l[6]=[e.createElementVNode("div",{class:"w-2 h-2 rounded-full bg-white"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",At))],8,jt))])):(e.openBlock(),e.createElementBlock("div",Wt)),h.value?(e.openBlock(),e.createElementBlock("button",{key:2,class:"p-1 rounded hover:bg-gray-100 transition-colors disabled:opacity-50 disabled:cursor-default disabled:hover:bg-transparent",disabled:k(r),onClick:e.withModifiers(s=>U(s,r),["stop"])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(V(r)?e.unref(Q.render):e.unref(Y.render)),{class:"w-4 h-4 text-gray-500"}))],8,It)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(q.value,(s,u)=>(e.openBlock(),e.createElementBlock("div",{key:u,class:e.normalizeClass(e.unref(Ke)(t.size))},[e.createElementVNode("span",Ut,e.toDisplayString(s.props.header),1),e.createElementVNode("div",Ht,[s.slots.body?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.slots.body),{key:0,data:r,field:s.props.field,index:n},null,8,["data","field","index"])):s.props.field?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y(r,s.props.field)),1)],64)):e.createCommentVNode("",!0)])],2))),128)),h.value&&V(r)?(e.openBlock(),e.createElementBlock("div",Qt,[e.renderSlot(t.$slots,"expansion",{data:r,index:n},void 0,!0)])):e.createCommentVNode("",!0)],64))],10,zt))),128)),t.hasNextPage&&!t.loading?(e.openBlock(),e.createElementBlock("button",{key:1,class:"w-full p-2 rounded bg-primary-base bg-opacity-10 text-primary-base text-sm font-medium hover:bg-opacity-20 transition-colors disabled:opacity-50 disabled:cursor-default flex items-center justify-center gap-2",disabled:t.loadingNext,onClick:l[3]||(l[3]=r=>i("load:next"))},[t.loadingNext?(e.openBlock(),e.createBlock(P.SpinnerIcon,{key:0,class:"w-4 h-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.loadMoreLabel||e.unref(f)("ui.dataTable.showMore")),1)],8,Gt)):e.createCommentVNode("",!0)]))])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass([...Ce.value,t.verticalBorders==="hover-table"?"vb-hover":""])},[e.createElementVNode("table",{class:e.normalizeClass([...we.value,t.verticalBorders!=="none"?"border-separate border-spacing-0":"border-collapse",t.verticalBorders==="hover"?"vb-hover":"",ae.value?"table-fixed":""])},[ae.value?(e.openBlock(),e.createElementBlock("colgroup",Ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ne.value,(r,n)=>(e.openBlock(),e.createElementBlock("col",{key:`col-${n}`,style:e.normalizeStyle(r?{width:r}:{})},null,4))),128))])):e.createCommentVNode("",!0),e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[w.value?(e.openBlock(),e.createElementBlock("th",{key:0,class:e.normalizeClass([...e.unref(G)(t.size,!1,t.verticalBorders,t.headerVariant,t.headerBgClass),...e.unref(Z)(t.size)])},[z.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex items-center justify-center cursor-pointer",onClick:l[0]||(l[0]=r=>le(r))},[I.value?(e.openBlock(),e.createElementBlock("div",Ze,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(T.render)),{class:"w-3.5 h-3.5"}))])):(e.openBlock(),e.createElementBlock("div",De))])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("th",{key:1,class:e.normalizeClass([...e.unref(G)(t.size,!1,t.verticalBorders,t.headerVariant,t.headerBgClass),...e.unref(ue)(t.size)])},null,2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(q.value,(r,n)=>(e.openBlock(),e.createElementBlock("th",{key:n,class:e.normalizeClass([...e.unref(G)(t.size,r.props.sortable,t.verticalBorders,t.headerVariant,t.headerBgClass),r.props.headerClass]),style:e.normalizeStyle([r.props.headerStyle,r.props.width?{width:r.props.width}:{}]),onClick:s=>r.props.sortable?ke(oe(r)):void 0},[r.slots.header?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.slots.header),{key:0})):(e.openBlock(),e.createElementBlock("span",tt,[e.createTextVNode(e.toDisplayString(r.props.header)+" ",1),r.props.sortable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[ge(r)?v.value===1?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(qe.render)),{key:1,class:e.normalizeClass(e.unref($)(!0))},null,8,["class"])):v.value===-1?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Q.render)),{key:2,class:e.normalizeClass(e.unref($)(!0))},null,8,["class"])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ce)),{key:3,class:e.normalizeClass(e.unref($)(!1))},null,8,["class"])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ce)),{key:0,class:e.normalizeClass(e.unref($)(!1))},null,8,["class"]))],64)):e.createCommentVNode("",!0)]))],14,et))),128))]),t.filterDisplay==="row"?(e.openBlock(),e.createElementBlock("tr",rt,[w.value?(e.openBlock(),e.createElementBlock("th",{key:0,class:e.normalizeClass(e.unref(X)(t.size))},null,2)):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("th",{key:1,class:e.normalizeClass(e.unref(X)(t.size))},null,2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(q.value,(r,n)=>(e.openBlock(),e.createElementBlock("th",{key:`filter-${n}`,class:e.normalizeClass(e.unref(X)(t.size))},[r.props.filterable&&r.slots.filter?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.slots.filter),{key:0,filterModel:se(r.props.filterField||r.props.field),filterCallback:be(r.props.filterField||r.props.field)},null,8,["filterModel","filterCallback"])):r.props.filterable&&r.props.field?(e.openBlock(),e.createElementBlock("input",{key:1,type:"text",value:se(r.props.filterField||r.props.field).value||"",class:"w-full border border-gray-300 rounded px-2 py-1 text-sm focus:outline-none focus:ring-1 focus:ring-primary-glow",placeholder:`Filter ${r.props.header||r.props.field}`,onInput:s=>he(r.props.filterField||r.props.field,s.target.value)},null,40,ot)):e.createCommentVNode("",!0)],2))),128))])):e.createCommentVNode("",!0)]),!t.loading&&N.value.length>0?(e.openBlock(),e.createElementBlock("tbody",lt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(r,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:ee(r,n)},[e.createElementVNode("tr",{class:e.normalizeClass([...e.unref(Te)(t.striped,t.hoverable,n%2===1,S(r),!1,k(r)),t.selectionMode&&!k(r)?"cursor-pointer":""]),onClick:s=>O(s,r,n)},[w.value?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass([...e.unref(J)(t.size,t.bordered,t.verticalBorders,t.bodyBgClass),...e.unref(Z)(t.size)])},[z.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex items-center justify-center cursor-pointer",onClick:e.withModifiers(s=>W(s,r),["stop"])},[S(r)?(e.openBlock(),e.createElementBlock("div",at,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(T.render)),{class:"w-3.5 h-3.5"}))])):(e.openBlock(),e.createElementBlock("div",it))],8,nt)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"flex items-center justify-center cursor-pointer",onClick:e.withModifiers(s=>O(s,r,n),["stop"])},[S(r)?(e.openBlock(),e.createElementBlock("div",dt,[...l[5]||(l[5]=[e.createElementVNode("div",{class:"w-2 h-2 rounded-full bg-white"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",ut))],8,ct))],2)):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass([...e.unref(J)(t.size,t.bordered,t.verticalBorders,t.bodyBgClass),...e.unref(ue)(t.size)])},[e.createElementVNode("button",{class:"p-1 rounded hover:bg-gray-100 transition-colors disabled:opacity-50 disabled:cursor-default disabled:hover:bg-transparent",disabled:k(r),onClick:s=>U(s,r)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(V(r)?e.unref(Q.render):e.unref(Y.render)),{class:"w-4 h-4 text-gray-500"}))],8,pt)],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(q.value,(s,u)=>(e.openBlock(),e.createElementBlock("td",{key:u,class:e.normalizeClass([...e.unref(J)(t.size,t.bordered,t.verticalBorders,t.bodyBgClass),s.props.bodyClass]),style:e.normalizeStyle(s.props.bodyStyle)},[s.slots.body?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.slots.body),{key:0,data:r,field:s.props.field,index:n,disabled:k(r)},null,8,["data","field","index","disabled"])):s.props.field?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(y(r,s.props.field)),1)],64)):e.createCommentVNode("",!0)],6))),128))],10,st),h.value&&V(r)?(e.openBlock(),e.createElementBlock("tr",ft,[e.createElementVNode("td",{colspan:L.value,class:"p-0"},[e.renderSlot(t.$slots,"expansion",{data:r,index:n},void 0,!0)],8,mt)])):e.createCommentVNode("",!0)],64))),128))])):t.loading?(e.openBlock(),e.createElementBlock("tbody",yt,[e.createElementVNode("tr",null,[e.createElementVNode("td",{colspan:L.value,class:"text-center py-12"},[e.renderSlot(t.$slots,"loading",{},()=>[e.createElementVNode("div",gt,[e.createVNode(P.SpinnerIcon,{class:"w-5 h-5"}),e.createElementVNode("span",null,e.toDisplayString(e.unref(f)("ui.dataTable.loading")),1)])],!0)],8,kt)])])):(e.openBlock(),e.createElementBlock("tbody",ht,[e.createElementVNode("tr",null,[e.createElementVNode("td",{colspan:L.value,class:"text-center py-12"},[e.renderSlot(t.$slots,"empty",{},()=>[e.createElementVNode("span",vt,e.toDisplayString(e.unref(f)("ui.dataTable.noRecords")),1)],!0)],8,bt)])])),t.hasNextPage&&!t.loading?(e.openBlock(),e.createElementBlock("tfoot",Bt,[e.createElementVNode("tr",null,[e.createElementVNode("td",{colspan:L.value,class:"px-3 pb-3 pt-2"},[e.createElementVNode("button",{class:"w-full p-2 rounded bg-primary-base bg-opacity-10 text-primary-base text-sm font-medium hover:bg-opacity-20 transition-colors disabled:opacity-50 disabled:cursor-default flex items-center justify-center gap-2",disabled:t.loadingNext,onClick:l[1]||(l[1]=r=>i("load:next"))},[t.loadingNext?(e.openBlock(),e.createBlock(P.SpinnerIcon,{key:0,class:"w-4 h-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.loadMoreLabel||e.unref(f)("ui.dataTable.showMore")),1)],8,wt)],8,Ct)])])):e.createCommentVNode("",!0)],2)],2)),t.paginator&&re.value>0?(e.openBlock(),e.createBlock(me,{key:3,first:M.value,rows:g.value,"total-records":re.value,"rows-per-page-options":t.rowsPerPageOptions,"onUpdate:first":ve,"onUpdate:rows":Be,onPage:l[4]||(l[4]=r=>i("page",r))},null,8,["first","rows","total-records","rows-per-page-options"])):e.createCommentVNode("",!0),e.unref(p).footer?(e.openBlock(),e.createElementBlock("div",Jt,[e.renderSlot(t.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)]))}});const Yt=Me._export_sfc(Xt,[["__scopeId","data-v-9359fb0b"]]),Zt=e.defineComponent({__name:"OneColumn",props:ze,setup(c){const a=c,d=e.useSlots(),o=e.inject(fe),i={props:a,slots:d};return o&&o.registerColumn(i),e.onBeforeUnmount(()=>{o&&o.unregisterColumn(i)}),(p,f)=>e.renderSlot(p.$slots,"default")}});exports.OneColumn=Zt;exports.OneDataTable=Yt;exports.OneDataTablePaginator=me;