@atscript/vue-table 0.1.58

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 (202) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +24 -0
  3. package/dist/as-action-form-dialog.cjs +221 -0
  4. package/dist/as-action-form-dialog.d.cts +6 -0
  5. package/dist/as-action-form-dialog.d.mts +7 -0
  6. package/dist/as-action-form-dialog.mjs +221 -0
  7. package/dist/as-action-menu-content-CXsdPn42.mjs +104 -0
  8. package/dist/as-action-menu-content-CyUfBrWH.cjs +109 -0
  9. package/dist/as-cell-array-CXeZzZqt.cjs +69 -0
  10. package/dist/as-cell-array-DOQKR6t5.mjs +64 -0
  11. package/dist/as-cell-array.cjs +3 -0
  12. package/dist/as-cell-array.d.cts +2 -0
  13. package/dist/as-cell-array.d.mts +2 -0
  14. package/dist/as-cell-array.mjs +3 -0
  15. package/dist/as-cell-array.vue-DZGM2VHh.d.mts +12 -0
  16. package/dist/as-cell-array.vue-pFs5GcCR.d.cts +12 -0
  17. package/dist/as-cell-date-CTrvxS1h.cjs +78 -0
  18. package/dist/as-cell-date-Cq49RHmL.mjs +73 -0
  19. package/dist/as-cell-date.cjs +3 -0
  20. package/dist/as-cell-date.d.cts +2 -0
  21. package/dist/as-cell-date.d.mts +2 -0
  22. package/dist/as-cell-date.mjs +3 -0
  23. package/dist/as-cell-date.vue-BBSps2B2.d.cts +12 -0
  24. package/dist/as-cell-date.vue-Zlt4mHWb.d.mts +12 -0
  25. package/dist/as-cell-json-BynWIs1d.mjs +37 -0
  26. package/dist/as-cell-json-DvHvQ6IL.cjs +42 -0
  27. package/dist/as-cell-json-popover-BWdNs1YU.cjs +70 -0
  28. package/dist/as-cell-json-popover-DUq25I0L.mjs +65 -0
  29. package/dist/as-cell-json.cjs +3 -0
  30. package/dist/as-cell-json.d.cts +2 -0
  31. package/dist/as-cell-json.d.mts +2 -0
  32. package/dist/as-cell-json.mjs +3 -0
  33. package/dist/as-cell-json.vue-C6wg4ARZ.d.cts +12 -0
  34. package/dist/as-cell-json.vue-CESWuCer.d.mts +12 -0
  35. package/dist/as-cell-number-0_WrSCzu.cjs +76 -0
  36. package/dist/as-cell-number-Bc1C97Vg.mjs +71 -0
  37. package/dist/as-cell-number.cjs +3 -0
  38. package/dist/as-cell-number.d.cts +2 -0
  39. package/dist/as-cell-number.d.mts +2 -0
  40. package/dist/as-cell-number.mjs +3 -0
  41. package/dist/as-cell-number.vue-1Oq7nVI3.d.mts +12 -0
  42. package/dist/as-cell-number.vue-CJ2K5zeM.d.cts +12 -0
  43. package/dist/as-cell-union-C1w3B38J.mjs +88 -0
  44. package/dist/as-cell-union-CFAI0utz.cjs +93 -0
  45. package/dist/as-cell-union.cjs +4 -0
  46. package/dist/as-cell-union.d.cts +2 -0
  47. package/dist/as-cell-union.d.mts +2 -0
  48. package/dist/as-cell-union.mjs +4 -0
  49. package/dist/as-cell-union.vue-CslPM_c2.d.cts +12 -0
  50. package/dist/as-cell-union.vue-NnDmQZOA.d.mts +12 -0
  51. package/dist/as-column-menu-CH9Htz0Q.cjs +220 -0
  52. package/dist/as-column-menu-DCfhorMP.mjs +215 -0
  53. package/dist/as-column-menu.cjs +2 -0
  54. package/dist/as-column-menu.d.cts +2 -0
  55. package/dist/as-column-menu.d.mts +2 -0
  56. package/dist/as-column-menu.mjs +2 -0
  57. package/dist/as-column-menu.vue-C9e6wJ3z.d.mts +47 -0
  58. package/dist/as-column-menu.vue-o0qFdzoL.d.cts +47 -0
  59. package/dist/as-config-dialog-d2k7_l0U.cjs +699 -0
  60. package/dist/as-config-dialog-vRklaKbi.mjs +688 -0
  61. package/dist/as-config-dialog.cjs +3 -0
  62. package/dist/as-config-dialog.d.cts +2 -0
  63. package/dist/as-config-dialog.d.mts +2 -0
  64. package/dist/as-config-dialog.mjs +3 -0
  65. package/dist/as-config-dialog.vue-C6Q62xF5.d.mts +7 -0
  66. package/dist/as-config-dialog.vue-DvvJi3xx.d.cts +7 -0
  67. package/dist/as-confirm-dialog-BLh3Ju4-.mjs +52 -0
  68. package/dist/as-confirm-dialog-BgpIEE2z.cjs +57 -0
  69. package/dist/as-confirm-dialog.cjs +3 -0
  70. package/dist/as-confirm-dialog.d.cts +2 -0
  71. package/dist/as-confirm-dialog.d.mts +2 -0
  72. package/dist/as-confirm-dialog.mjs +3 -0
  73. package/dist/as-confirm-dialog.vue-CXxLpzbu.d.cts +7 -0
  74. package/dist/as-confirm-dialog.vue-pas8jGhv.d.mts +7 -0
  75. package/dist/as-filter-dialog-C0HMpUPT.mjs +610 -0
  76. package/dist/as-filter-dialog-DcGvIV3h.cjs +621 -0
  77. package/dist/as-filter-dialog.cjs +15 -0
  78. package/dist/as-filter-dialog.d.cts +2 -0
  79. package/dist/as-filter-dialog.d.mts +2 -0
  80. package/dist/as-filter-dialog.mjs +15 -0
  81. package/dist/as-filter-dialog.vue-BV2J8PgZ.d.cts +7 -0
  82. package/dist/as-filter-dialog.vue-RDZjp4gJ.d.mts +7 -0
  83. package/dist/as-filter-field-B_tYzvvl.cjs +984 -0
  84. package/dist/as-filter-field-Bqvu2ASN.mjs +943 -0
  85. package/dist/as-filter-field.cjs +9 -0
  86. package/dist/as-filter-field.d.cts +2 -0
  87. package/dist/as-filter-field.d.mts +2 -0
  88. package/dist/as-filter-field.mjs +9 -0
  89. package/dist/as-filter-field.vue-ByQ8xIGq.d.cts +11 -0
  90. package/dist/as-filter-field.vue-QY8wi5S5.d.mts +11 -0
  91. package/dist/as-filter-input--nr72iwX.cjs +106 -0
  92. package/dist/as-filter-input-P1i0CW2-.mjs +101 -0
  93. package/dist/as-filter-input.cjs +2 -0
  94. package/dist/as-filter-input.d.cts +2 -0
  95. package/dist/as-filter-input.d.mts +2 -0
  96. package/dist/as-filter-input.mjs +2 -0
  97. package/dist/as-filter-input.vue-CBQ71eNg.d.mts +18 -0
  98. package/dist/as-filter-input.vue-CS4nOk_Q.d.cts +18 -0
  99. package/dist/as-filters-Bxa9ZEMm.mjs +44 -0
  100. package/dist/as-filters-xRT2qv56.cjs +49 -0
  101. package/dist/as-filters.cjs +10 -0
  102. package/dist/as-filters.d.cts +2 -0
  103. package/dist/as-filters.d.mts +2 -0
  104. package/dist/as-filters.mjs +10 -0
  105. package/dist/as-filters.vue-BsMgYUcX.d.mts +10 -0
  106. package/dist/as-filters.vue-fv-tRL2H.d.cts +10 -0
  107. package/dist/as-preset-dialog-BaTfwMnh.cjs +569 -0
  108. package/dist/as-preset-dialog-BdDRgwf_.mjs +564 -0
  109. package/dist/as-preset-dialog.cjs +4 -0
  110. package/dist/as-preset-dialog.d.cts +2 -0
  111. package/dist/as-preset-dialog.d.mts +2 -0
  112. package/dist/as-preset-dialog.mjs +4 -0
  113. package/dist/as-preset-dialog.vue-Bzv-ON9W.d.mts +7 -0
  114. package/dist/as-preset-dialog.vue-DP9fy00Y.d.cts +7 -0
  115. package/dist/as-preset-picker-BQbNEiy9.mjs +427 -0
  116. package/dist/as-preset-picker-Ce3crTQy.cjs +432 -0
  117. package/dist/as-preset-picker.cjs +4 -0
  118. package/dist/as-preset-picker.d.cts +2 -0
  119. package/dist/as-preset-picker.d.mts +2 -0
  120. package/dist/as-preset-picker.mjs +4 -0
  121. package/dist/as-preset-picker.vue-CTBk6leV.d.mts +7 -0
  122. package/dist/as-preset-picker.vue-DfXS3pGl.d.cts +7 -0
  123. package/dist/as-row-actions-B6Kob6gt.cjs +120 -0
  124. package/dist/as-row-actions-CeWBBGqh.mjs +115 -0
  125. package/dist/as-row-actions.cjs +4 -0
  126. package/dist/as-row-actions.d.cts +2 -0
  127. package/dist/as-row-actions.d.mts +2 -0
  128. package/dist/as-row-actions.mjs +4 -0
  129. package/dist/as-row-actions.vue-BPaQfGev.d.mts +11 -0
  130. package/dist/as-row-actions.vue-Bvcc2tUN.d.cts +11 -0
  131. package/dist/as-table-Cnw2fOqZ.mjs +204 -0
  132. package/dist/as-table-DlDFxdXI.cjs +209 -0
  133. package/dist/as-table-actions-BK1Thy2G.cjs +142 -0
  134. package/dist/as-table-actions-BpMiNFni.mjs +137 -0
  135. package/dist/as-table-actions.cjs +4 -0
  136. package/dist/as-table-actions.d.cts +2 -0
  137. package/dist/as-table-actions.d.mts +2 -0
  138. package/dist/as-table-actions.mjs +4 -0
  139. package/dist/as-table-actions.vue-B7Q-JA3z.d.cts +47 -0
  140. package/dist/as-table-actions.vue-Bs1Jl1ep.d.mts +47 -0
  141. package/dist/as-table-base-D0k4k7k_.mjs +646 -0
  142. package/dist/as-table-base-VIz-B_6_.cjs +651 -0
  143. package/dist/as-table-cell-value-B1CiJYFn.mjs +26 -0
  144. package/dist/as-table-cell-value-CuxRtFn9.cjs +31 -0
  145. package/dist/as-table-cell-value.cjs +3 -0
  146. package/dist/as-table-cell-value.d.cts +2 -0
  147. package/dist/as-table-cell-value.d.mts +2 -0
  148. package/dist/as-table-cell-value.mjs +3 -0
  149. package/dist/as-table-cell-value.vue-BgFDv2JQ.d.cts +12 -0
  150. package/dist/as-table-cell-value.vue-BuPCQ8YA.d.mts +12 -0
  151. package/dist/as-table-header-cell-C3zeZUZo.cjs +117 -0
  152. package/dist/as-table-header-cell-CBn_ioCe.mjs +112 -0
  153. package/dist/as-table-header-cell.cjs +3 -0
  154. package/dist/as-table-header-cell.d.cts +2 -0
  155. package/dist/as-table-header-cell.d.mts +2 -0
  156. package/dist/as-table-header-cell.mjs +3 -0
  157. package/dist/as-table-header-cell.vue-Bc_DSsGY.d.cts +31 -0
  158. package/dist/as-table-header-cell.vue-DNMOHfek.d.mts +31 -0
  159. package/dist/as-table-root-Br6WcGRo.cjs +263 -0
  160. package/dist/as-table-root-gG7pTIdD.mjs +258 -0
  161. package/dist/as-table-root.cjs +28 -0
  162. package/dist/as-table-root.d.cts +2 -0
  163. package/dist/as-table-root.d.mts +2 -0
  164. package/dist/as-table-root.mjs +28 -0
  165. package/dist/as-table-root.vue-5_OhVwse.d.mts +2258 -0
  166. package/dist/as-table-root.vue-CSqEtIll.d.cts +2258 -0
  167. package/dist/as-table-status-BjRGGuhC.mjs +683 -0
  168. package/dist/as-table-status-DWYoJIMC.cjs +724 -0
  169. package/dist/as-table.cjs +10 -0
  170. package/dist/as-table.d.cts +2 -0
  171. package/dist/as-table.d.mts +2 -0
  172. package/dist/as-table.mjs +10 -0
  173. package/dist/as-table.vue-BTYg-e3Z.d.mts +81 -0
  174. package/dist/as-table.vue-wdRARLIe.d.cts +81 -0
  175. package/dist/as-window-table-CKIfo3M_.mjs +709 -0
  176. package/dist/as-window-table-DE7_NyEP.cjs +714 -0
  177. package/dist/as-window-table.cjs +9 -0
  178. package/dist/as-window-table.d.cts +2 -0
  179. package/dist/as-window-table.d.mts +2 -0
  180. package/dist/as-window-table.mjs +9 -0
  181. package/dist/as-window-table.vue-Bf8xGC9M.d.mts +86 -0
  182. package/dist/as-window-table.vue-CA8qsrz4.d.cts +86 -0
  183. package/dist/format-cell-B2xMDYO9.mjs +27 -0
  184. package/dist/format-cell-D4mqaN0E.cjs +32 -0
  185. package/dist/get-cell-value-CZSVfDLg.cjs +19 -0
  186. package/dist/get-cell-value-DiH84HKL.mjs +14 -0
  187. package/dist/index.cjs +598 -0
  188. package/dist/index.d.cts +21 -0
  189. package/dist/index.d.mts +21 -0
  190. package/dist/index.mjs +505 -0
  191. package/dist/preset-aspect-display-BYeiSgcc.mjs +43 -0
  192. package/dist/preset-aspect-display-y8aal_EF.cjs +72 -0
  193. package/dist/types-BvvXN72P.d.mts +531 -0
  194. package/dist/types-CNMmF6W2.d.cts +531 -0
  195. package/dist/use-cell-locale-1uQaFTLQ.mjs +23 -0
  196. package/dist/use-cell-locale-B480_QYK.cjs +34 -0
  197. package/dist/use-table-column-handlers-CGYAY2xH.cjs +65 -0
  198. package/dist/use-table-column-handlers-t6xi1yCE.mjs +54 -0
  199. package/dist/use-table-state-C4JbonEZ.mjs +1822 -0
  200. package/dist/use-table-state-MU-vuzui.cjs +1917 -0
  201. package/package.json +195 -0
  202. package/styles.d.ts +2 -0
@@ -0,0 +1,109 @@
1
+ const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
+ let vue = require("vue");
3
+ let reka_ui = require("reka-ui");
4
+ //#endregion
5
+ //#region src/components/internal/as-action-menu-item.vue
6
+ var as_action_menu_item_default = /* @__PURE__ */ (0, vue.defineComponent)({
7
+ __name: "as-action-menu-item",
8
+ props: {
9
+ action: {
10
+ type: Object,
11
+ required: true
12
+ },
13
+ prefix: {
14
+ type: String,
15
+ required: true
16
+ },
17
+ default: {
18
+ type: Boolean,
19
+ required: false
20
+ }
21
+ },
22
+ emits: ["select"],
23
+ setup(__props) {
24
+ const props = __props;
25
+ return (_ctx, _cache) => {
26
+ return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.DropdownMenuItem), {
27
+ class: (0, vue.normalizeClass)([`${__props.prefix}-menu-item`, (0, vue.unref)(require_use_table_state.intentClass)(__props.prefix, __props.action)]),
28
+ "data-default": props.default || void 0,
29
+ "aria-label": (0, vue.unref)(require_use_table_state.ariaLabelFor)(__props.action),
30
+ onSelect: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("select", $event))
31
+ }, {
32
+ default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default", { action: __props.action }, () => [__props.action.icon ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
33
+ key: 0,
34
+ class: (0, vue.normalizeClass)([`${__props.prefix}-menu-item-icon`, __props.action.icon]),
35
+ "aria-hidden": "true"
36
+ }, null, 2)) : (0, vue.createCommentVNode)("v-if", true), (0, vue.createElementVNode)("span", { class: (0, vue.normalizeClass)(`${__props.prefix}-menu-item-label`) }, (0, vue.toDisplayString)(__props.action.label || __props.action.name), 3)])]),
37
+ _: 3
38
+ }, 8, [
39
+ "class",
40
+ "data-default",
41
+ "aria-label"
42
+ ]);
43
+ };
44
+ }
45
+ });
46
+ //#endregion
47
+ //#region src/components/internal/as-action-menu-content.vue
48
+ var as_action_menu_content_default = /* @__PURE__ */ (0, vue.defineComponent)({
49
+ __name: "as-action-menu-content",
50
+ props: {
51
+ groups: {
52
+ type: Array,
53
+ required: true
54
+ },
55
+ defaultMarker: {
56
+ type: Object,
57
+ required: false
58
+ },
59
+ prefix: {
60
+ type: String,
61
+ required: true
62
+ }
63
+ },
64
+ emits: ["select"],
65
+ setup(__props) {
66
+ const props = __props;
67
+ const slots = (0, vue.useSlots)();
68
+ const visibleGroups = (0, vue.computed)(() => props.groups.filter((g) => g.length > 0));
69
+ return (_ctx, _cache) => {
70
+ return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.DropdownMenuContent), {
71
+ class: (0, vue.normalizeClass)(`${__props.prefix}-menu`),
72
+ "side-offset": 4,
73
+ align: "end"
74
+ }, {
75
+ default: (0, vue.withCtx)(() => [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(visibleGroups.value, (group, gIdx) => {
76
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: gIdx }, [gIdx > 0 ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.DropdownMenuSeparator), {
77
+ key: 0,
78
+ class: (0, vue.normalizeClass)(`${__props.prefix}-menu-separator`)
79
+ }, null, 8, ["class"])) : (0, vue.createCommentVNode)("v-if", true), ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(group, (action, aIdx) => {
80
+ return (0, vue.openBlock)(), (0, vue.createBlock)(as_action_menu_item_default, {
81
+ key: `${gIdx}-${action.name}-${aIdx}`,
82
+ action,
83
+ prefix: __props.prefix,
84
+ default: action === __props.defaultMarker,
85
+ onSelect: ($event) => _ctx.$emit("select", action, $event)
86
+ }, (0, vue.createSlots)({ _: 2 }, [(0, vue.unref)(slots)["menu-item"] ? {
87
+ name: "default",
88
+ fn: (0, vue.withCtx)((slotProps) => [(0, vue.renderSlot)(_ctx.$slots, "menu-item", { action: slotProps.action })]),
89
+ key: "0"
90
+ } : void 0]), 1032, [
91
+ "action",
92
+ "prefix",
93
+ "default",
94
+ "onSelect"
95
+ ]);
96
+ }), 128))], 64);
97
+ }), 128))]),
98
+ _: 3
99
+ }, 8, ["class"]);
100
+ };
101
+ }
102
+ });
103
+ //#endregion
104
+ Object.defineProperty(exports, "as_action_menu_content_default", {
105
+ enumerable: true,
106
+ get: function() {
107
+ return as_action_menu_content_default;
108
+ }
109
+ });
@@ -0,0 +1,69 @@
1
+ const require_get_cell_value = require("./get-cell-value-CZSVfDLg.cjs");
2
+ const require_as_cell_json_popover = require("./as-cell-json-popover-BWdNs1YU.cjs");
3
+ let vue = require("vue");
4
+ //#region src/components/defaults/as-cell-array.vue?vue&type=script&setup=true&lang.ts
5
+ const _hoisted_1 = {
6
+ key: 0,
7
+ class: "as-cell-chips"
8
+ };
9
+ const _hoisted_2 = ["aria-label"];
10
+ const _hoisted_3 = { class: "as-cell-json-trigger-count" };
11
+ //#endregion
12
+ //#region src/components/defaults/as-cell-array.vue
13
+ var as_cell_array_default = /* @__PURE__ */ (0, vue.defineComponent)({
14
+ __name: "as-cell-array",
15
+ props: {
16
+ row: {
17
+ type: Object,
18
+ required: true
19
+ },
20
+ column: {
21
+ type: Object,
22
+ required: true
23
+ }
24
+ },
25
+ setup(__props) {
26
+ const props = __props;
27
+ const view = (0, vue.computed)(() => {
28
+ const v = require_get_cell_value.getCellValue(props.row, props.column.path);
29
+ if (!Array.isArray(v) || v.length === 0) return void 0;
30
+ let primitive = true;
31
+ for (const el of v) {
32
+ const t = typeof el;
33
+ if (t !== "string" && t !== "number" && t !== "boolean") {
34
+ primitive = false;
35
+ break;
36
+ }
37
+ }
38
+ return {
39
+ items: v,
40
+ primitive
41
+ };
42
+ });
43
+ return (_ctx, _cache) => {
44
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)("td", null, [view.value && view.value.primitive ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_1, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(view.value.items, (item, i) => {
45
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
46
+ key: i,
47
+ class: "as-cell-chip"
48
+ }, (0, vue.toDisplayString)(item), 1);
49
+ }), 128))])) : view.value ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_as_cell_json_popover.as_cell_json_popover_default, {
50
+ key: 1,
51
+ value: view.value.items
52
+ }, {
53
+ trigger: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("button", {
54
+ type: "button",
55
+ class: "as-cell-json-trigger",
56
+ "aria-label": `View ${view.value.items.length} items`
57
+ }, [_cache[0] || (_cache[0] = (0, vue.createElementVNode)("span", { class: "as-cell-json-trigger-glyph" }, "{}", -1)), (0, vue.createElementVNode)("span", _hoisted_3, "[" + (0, vue.toDisplayString)(view.value.items.length) + "]", 1)], 8, _hoisted_2)]),
58
+ _: 1
59
+ }, 8, ["value"])) : (0, vue.createCommentVNode)("v-if", true)]);
60
+ };
61
+ }
62
+ });
63
+ //#endregion
64
+ Object.defineProperty(exports, "as_cell_array_default", {
65
+ enumerable: true,
66
+ get: function() {
67
+ return as_cell_array_default;
68
+ }
69
+ });
@@ -0,0 +1,64 @@
1
+ import { t as getCellValue } from "./get-cell-value-DiH84HKL.mjs";
2
+ import { t as as_cell_json_popover_default } from "./as-cell-json-popover-DUq25I0L.mjs";
3
+ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, openBlock, renderList, toDisplayString, withCtx } from "vue";
4
+ //#region src/components/defaults/as-cell-array.vue?vue&type=script&setup=true&lang.ts
5
+ const _hoisted_1 = {
6
+ key: 0,
7
+ class: "as-cell-chips"
8
+ };
9
+ const _hoisted_2 = ["aria-label"];
10
+ const _hoisted_3 = { class: "as-cell-json-trigger-count" };
11
+ //#endregion
12
+ //#region src/components/defaults/as-cell-array.vue
13
+ var as_cell_array_default = /* @__PURE__ */ defineComponent({
14
+ __name: "as-cell-array",
15
+ props: {
16
+ row: {
17
+ type: Object,
18
+ required: true
19
+ },
20
+ column: {
21
+ type: Object,
22
+ required: true
23
+ }
24
+ },
25
+ setup(__props) {
26
+ const props = __props;
27
+ const view = computed(() => {
28
+ const v = getCellValue(props.row, props.column.path);
29
+ if (!Array.isArray(v) || v.length === 0) return void 0;
30
+ let primitive = true;
31
+ for (const el of v) {
32
+ const t = typeof el;
33
+ if (t !== "string" && t !== "number" && t !== "boolean") {
34
+ primitive = false;
35
+ break;
36
+ }
37
+ }
38
+ return {
39
+ items: v,
40
+ primitive
41
+ };
42
+ });
43
+ return (_ctx, _cache) => {
44
+ return openBlock(), createElementBlock("td", null, [view.value && view.value.primitive ? (openBlock(), createElementBlock("span", _hoisted_1, [(openBlock(true), createElementBlock(Fragment, null, renderList(view.value.items, (item, i) => {
45
+ return openBlock(), createElementBlock("span", {
46
+ key: i,
47
+ class: "as-cell-chip"
48
+ }, toDisplayString(item), 1);
49
+ }), 128))])) : view.value ? (openBlock(), createBlock(as_cell_json_popover_default, {
50
+ key: 1,
51
+ value: view.value.items
52
+ }, {
53
+ trigger: withCtx(() => [createElementVNode("button", {
54
+ type: "button",
55
+ class: "as-cell-json-trigger",
56
+ "aria-label": `View ${view.value.items.length} items`
57
+ }, [_cache[0] || (_cache[0] = createElementVNode("span", { class: "as-cell-json-trigger-glyph" }, "{}", -1)), createElementVNode("span", _hoisted_3, "[" + toDisplayString(view.value.items.length) + "]", 1)], 8, _hoisted_2)]),
58
+ _: 1
59
+ }, 8, ["value"])) : createCommentVNode("v-if", true)]);
60
+ };
61
+ }
62
+ });
63
+ //#endregion
64
+ export { as_cell_array_default as t };
@@ -0,0 +1,3 @@
1
+ require("./as-cell-json-popover-BWdNs1YU.cjs");
2
+ const require_as_cell_array = require("./as-cell-array-CXeZzZqt.cjs");
3
+ module.exports = require_as_cell_array.as_cell_array_default;
@@ -0,0 +1,2 @@
1
+ import { t as _default } from "./as-cell-array.vue-pFs5GcCR.cjs";
2
+ export = _default;
@@ -0,0 +1,2 @@
1
+ import { t as _default } from "./as-cell-array.vue-DZGM2VHh.mjs";
2
+ export { _default as default };
@@ -0,0 +1,3 @@
1
+ import "./as-cell-json-popover-DUq25I0L.mjs";
2
+ import { t as as_cell_array_default } from "./as-cell-array-DOQKR6t5.mjs";
3
+ export { as_cell_array_default as default };
@@ -0,0 +1,12 @@
1
+ import { ColumnDef } from "@atscript/ui";
2
+ import * as vue from "vue";
3
+
4
+ //#region src/components/defaults/as-cell-array.vue.d.ts
5
+ type __VLS_Props = {
6
+ row: Record<string, unknown>;
7
+ column: ColumnDef;
8
+ };
9
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ //#endregion
12
+ export { _default as t };
@@ -0,0 +1,12 @@
1
+ import * as vue from "vue";
2
+ import { ColumnDef } from "@atscript/ui";
3
+
4
+ //#region src/components/defaults/as-cell-array.vue.d.ts
5
+ type __VLS_Props = {
6
+ row: Record<string, unknown>;
7
+ column: ColumnDef;
8
+ };
9
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ //#endregion
12
+ export { _default as t };
@@ -0,0 +1,78 @@
1
+ const require_get_cell_value = require("./get-cell-value-CZSVfDLg.cjs");
2
+ const require_use_cell_locale = require("./use-cell-locale-B480_QYK.cjs");
3
+ let vue = require("vue");
4
+ let _vueuse_core = require("@vueuse/core");
5
+ //#region src/utils/intl-cache.ts
6
+ const dateTimeCache = /* @__PURE__ */ new Map();
7
+ function getDateTimeFormat(locale, opts = {}) {
8
+ const key = `${locale}|${opts.timeZone ?? ""}|${opts.year ?? ""}|${opts.month ?? ""}|${opts.day ?? ""}|${opts.hour ?? ""}|${opts.minute ?? ""}`;
9
+ let f = dateTimeCache.get(key);
10
+ if (!f) {
11
+ f = new Intl.DateTimeFormat(locale, opts);
12
+ dateTimeCache.set(key, f);
13
+ }
14
+ return f;
15
+ }
16
+ //#endregion
17
+ //#region src/components/defaults/as-cell-date.vue?vue&type=script&setup=true&lang.ts
18
+ const _hoisted_1 = ["title"];
19
+ //#endregion
20
+ //#region src/components/defaults/as-cell-date.vue
21
+ var as_cell_date_default = /* @__PURE__ */ (0, vue.defineComponent)({
22
+ __name: "as-cell-date",
23
+ props: {
24
+ row: {
25
+ type: Object,
26
+ required: true
27
+ },
28
+ column: {
29
+ type: Object,
30
+ required: true
31
+ }
32
+ },
33
+ setup(__props) {
34
+ const props = __props;
35
+ const { locale, timezone } = require_use_cell_locale.useCellLocale();
36
+ const DATE_OPTS = {
37
+ year: "numeric",
38
+ month: "short",
39
+ day: "2-digit"
40
+ };
41
+ const DATETIME_OPTS = {
42
+ ...DATE_OPTS,
43
+ hour: "2-digit",
44
+ minute: "2-digit"
45
+ };
46
+ const date = (0, vue.computed)(() => {
47
+ const v = require_get_cell_value.getCellValue(props.row, props.column.path);
48
+ if (v === null || v === void 0 || v === "") return void 0;
49
+ if (v instanceof Date) return Number.isFinite(v.getTime()) ? v : void 0;
50
+ if (typeof v === "number" || typeof v === "string") {
51
+ const d = new Date(v);
52
+ return Number.isFinite(d.getTime()) ? d : void 0;
53
+ }
54
+ });
55
+ const formatted = (0, vue.computed)(() => {
56
+ const d = date.value;
57
+ if (!d) return "";
58
+ if (props.column.type === "relative") return (0, _vueuse_core.formatTimeAgoIntl)(d, { locale: locale.value });
59
+ const tz = timezone.value;
60
+ const base = props.column.type === "datetime" ? DATETIME_OPTS : DATE_OPTS;
61
+ const opts = tz ? {
62
+ ...base,
63
+ timeZone: tz
64
+ } : base;
65
+ return getDateTimeFormat(locale.value, opts).format(d);
66
+ });
67
+ return (_ctx, _cache) => {
68
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)("td", { title: date.value?.toISOString() ?? "" }, (0, vue.toDisplayString)(formatted.value), 9, _hoisted_1);
69
+ };
70
+ }
71
+ });
72
+ //#endregion
73
+ Object.defineProperty(exports, "as_cell_date_default", {
74
+ enumerable: true,
75
+ get: function() {
76
+ return as_cell_date_default;
77
+ }
78
+ });
@@ -0,0 +1,73 @@
1
+ import { t as getCellValue } from "./get-cell-value-DiH84HKL.mjs";
2
+ import { n as useCellLocale } from "./use-cell-locale-1uQaFTLQ.mjs";
3
+ import { computed, createElementBlock, defineComponent, openBlock, toDisplayString } from "vue";
4
+ import { formatTimeAgoIntl } from "@vueuse/core";
5
+ //#region src/utils/intl-cache.ts
6
+ const dateTimeCache = /* @__PURE__ */ new Map();
7
+ function getDateTimeFormat(locale, opts = {}) {
8
+ const key = `${locale}|${opts.timeZone ?? ""}|${opts.year ?? ""}|${opts.month ?? ""}|${opts.day ?? ""}|${opts.hour ?? ""}|${opts.minute ?? ""}`;
9
+ let f = dateTimeCache.get(key);
10
+ if (!f) {
11
+ f = new Intl.DateTimeFormat(locale, opts);
12
+ dateTimeCache.set(key, f);
13
+ }
14
+ return f;
15
+ }
16
+ //#endregion
17
+ //#region src/components/defaults/as-cell-date.vue?vue&type=script&setup=true&lang.ts
18
+ const _hoisted_1 = ["title"];
19
+ //#endregion
20
+ //#region src/components/defaults/as-cell-date.vue
21
+ var as_cell_date_default = /* @__PURE__ */ defineComponent({
22
+ __name: "as-cell-date",
23
+ props: {
24
+ row: {
25
+ type: Object,
26
+ required: true
27
+ },
28
+ column: {
29
+ type: Object,
30
+ required: true
31
+ }
32
+ },
33
+ setup(__props) {
34
+ const props = __props;
35
+ const { locale, timezone } = useCellLocale();
36
+ const DATE_OPTS = {
37
+ year: "numeric",
38
+ month: "short",
39
+ day: "2-digit"
40
+ };
41
+ const DATETIME_OPTS = {
42
+ ...DATE_OPTS,
43
+ hour: "2-digit",
44
+ minute: "2-digit"
45
+ };
46
+ const date = computed(() => {
47
+ const v = getCellValue(props.row, props.column.path);
48
+ if (v === null || v === void 0 || v === "") return void 0;
49
+ if (v instanceof Date) return Number.isFinite(v.getTime()) ? v : void 0;
50
+ if (typeof v === "number" || typeof v === "string") {
51
+ const d = new Date(v);
52
+ return Number.isFinite(d.getTime()) ? d : void 0;
53
+ }
54
+ });
55
+ const formatted = computed(() => {
56
+ const d = date.value;
57
+ if (!d) return "";
58
+ if (props.column.type === "relative") return formatTimeAgoIntl(d, { locale: locale.value });
59
+ const tz = timezone.value;
60
+ const base = props.column.type === "datetime" ? DATETIME_OPTS : DATE_OPTS;
61
+ const opts = tz ? {
62
+ ...base,
63
+ timeZone: tz
64
+ } : base;
65
+ return getDateTimeFormat(locale.value, opts).format(d);
66
+ });
67
+ return (_ctx, _cache) => {
68
+ return openBlock(), createElementBlock("td", { title: date.value?.toISOString() ?? "" }, toDisplayString(formatted.value), 9, _hoisted_1);
69
+ };
70
+ }
71
+ });
72
+ //#endregion
73
+ export { as_cell_date_default as t };
@@ -0,0 +1,3 @@
1
+ const require_as_cell_date = require("./as-cell-date-CTrvxS1h.cjs");
2
+ require("./use-cell-locale-B480_QYK.cjs");
3
+ module.exports = require_as_cell_date.as_cell_date_default;
@@ -0,0 +1,2 @@
1
+ import { t as _default } from "./as-cell-date.vue-BBSps2B2.cjs";
2
+ export = _default;
@@ -0,0 +1,2 @@
1
+ import { t as _default } from "./as-cell-date.vue-Zlt4mHWb.mjs";
2
+ export { _default as default };
@@ -0,0 +1,3 @@
1
+ import { t as as_cell_date_default } from "./as-cell-date-Cq49RHmL.mjs";
2
+ import "./use-cell-locale-1uQaFTLQ.mjs";
3
+ export { as_cell_date_default as default };
@@ -0,0 +1,12 @@
1
+ import * as vue from "vue";
2
+ import { ColumnDef } from "@atscript/ui";
3
+
4
+ //#region src/components/defaults/as-cell-date.vue.d.ts
5
+ type __VLS_Props = {
6
+ row: Record<string, unknown>;
7
+ column: ColumnDef;
8
+ };
9
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ //#endregion
12
+ export { _default as t };
@@ -0,0 +1,12 @@
1
+ import { ColumnDef } from "@atscript/ui";
2
+ import * as vue from "vue";
3
+
4
+ //#region src/components/defaults/as-cell-date.vue.d.ts
5
+ type __VLS_Props = {
6
+ row: Record<string, unknown>;
7
+ column: ColumnDef;
8
+ };
9
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ //#endregion
12
+ export { _default as t };
@@ -0,0 +1,37 @@
1
+ import { t as getCellValue } from "./get-cell-value-DiH84HKL.mjs";
2
+ import { t as as_cell_json_popover_default } from "./as-cell-json-popover-DUq25I0L.mjs";
3
+ import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, openBlock, withCtx } from "vue";
4
+ //#endregion
5
+ //#region src/components/defaults/as-cell-json.vue
6
+ var as_cell_json_default = /* @__PURE__ */ defineComponent({
7
+ __name: "as-cell-json",
8
+ props: {
9
+ row: {
10
+ type: Object,
11
+ required: true
12
+ },
13
+ column: {
14
+ type: Object,
15
+ required: true
16
+ }
17
+ },
18
+ setup(__props) {
19
+ const props = __props;
20
+ const value = computed(() => getCellValue(props.row, props.column.path));
21
+ return (_ctx, _cache) => {
22
+ return openBlock(), createElementBlock("td", null, [value.value && typeof value.value === "object" ? (openBlock(), createBlock(as_cell_json_popover_default, {
23
+ key: 0,
24
+ value: value.value
25
+ }, {
26
+ trigger: withCtx(() => [..._cache[0] || (_cache[0] = [createElementVNode("button", {
27
+ type: "button",
28
+ class: "as-cell-json-trigger",
29
+ "aria-label": "View object"
30
+ }, [createElementVNode("span", { class: "as-cell-json-trigger-glyph" }, "{}")], -1)])]),
31
+ _: 1
32
+ }, 8, ["value"])) : createCommentVNode("v-if", true)]);
33
+ };
34
+ }
35
+ });
36
+ //#endregion
37
+ export { as_cell_json_default as t };
@@ -0,0 +1,42 @@
1
+ const require_get_cell_value = require("./get-cell-value-CZSVfDLg.cjs");
2
+ const require_as_cell_json_popover = require("./as-cell-json-popover-BWdNs1YU.cjs");
3
+ let vue = require("vue");
4
+ //#endregion
5
+ //#region src/components/defaults/as-cell-json.vue
6
+ var as_cell_json_default = /* @__PURE__ */ (0, vue.defineComponent)({
7
+ __name: "as-cell-json",
8
+ props: {
9
+ row: {
10
+ type: Object,
11
+ required: true
12
+ },
13
+ column: {
14
+ type: Object,
15
+ required: true
16
+ }
17
+ },
18
+ setup(__props) {
19
+ const props = __props;
20
+ const value = (0, vue.computed)(() => require_get_cell_value.getCellValue(props.row, props.column.path));
21
+ return (_ctx, _cache) => {
22
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)("td", null, [value.value && typeof value.value === "object" ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_as_cell_json_popover.as_cell_json_popover_default, {
23
+ key: 0,
24
+ value: value.value
25
+ }, {
26
+ trigger: (0, vue.withCtx)(() => [..._cache[0] || (_cache[0] = [(0, vue.createElementVNode)("button", {
27
+ type: "button",
28
+ class: "as-cell-json-trigger",
29
+ "aria-label": "View object"
30
+ }, [(0, vue.createElementVNode)("span", { class: "as-cell-json-trigger-glyph" }, "{}")], -1)])]),
31
+ _: 1
32
+ }, 8, ["value"])) : (0, vue.createCommentVNode)("v-if", true)]);
33
+ };
34
+ }
35
+ });
36
+ //#endregion
37
+ Object.defineProperty(exports, "as_cell_json_default", {
38
+ enumerable: true,
39
+ get: function() {
40
+ return as_cell_json_default;
41
+ }
42
+ });
@@ -0,0 +1,70 @@
1
+ let vue = require("vue");
2
+ let reka_ui = require("reka-ui");
3
+ //#region src/components/internal/as-cell-json-body.vue?vue&type=script&setup=true&lang.ts
4
+ const _hoisted_1 = { class: "as-cell-json-pre" };
5
+ //#endregion
6
+ //#region src/components/internal/as-cell-json-body.vue
7
+ var as_cell_json_body_default = /* @__PURE__ */ (0, vue.defineComponent)({
8
+ __name: "as-cell-json-body",
9
+ props: { value: {
10
+ type: null,
11
+ required: true
12
+ } },
13
+ setup(__props) {
14
+ const props = __props;
15
+ const pretty = (0, vue.computed)(() => {
16
+ const v = props.value;
17
+ if (v === null || v === void 0) return "";
18
+ try {
19
+ return JSON.stringify(v, null, 2);
20
+ } catch {
21
+ return String(v);
22
+ }
23
+ });
24
+ return (_ctx, _cache) => {
25
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)("pre", _hoisted_1, [(0, vue.createElementVNode)("code", null, (0, vue.toDisplayString)(pretty.value), 1)]);
26
+ };
27
+ }
28
+ });
29
+ //#endregion
30
+ //#region src/components/internal/as-cell-json-popover.vue
31
+ var as_cell_json_popover_default = /* @__PURE__ */ (0, vue.defineComponent)({
32
+ __name: "as-cell-json-popover",
33
+ props: { value: {
34
+ type: null,
35
+ required: true
36
+ } },
37
+ setup(__props) {
38
+ const open = (0, vue.ref)(false);
39
+ return (_ctx, _cache) => {
40
+ return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.PopoverRoot), {
41
+ open: open.value,
42
+ "onUpdate:open": _cache[0] || (_cache[0] = ($event) => open.value = $event)
43
+ }, {
44
+ default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(reka_ui.PopoverTrigger), { "as-child": "" }, {
45
+ default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "trigger")]),
46
+ _: 3
47
+ }), (0, vue.createVNode)((0, vue.unref)(reka_ui.PopoverPortal), null, {
48
+ default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(reka_ui.PopoverContent), {
49
+ class: "as-cell-json-popup",
50
+ align: "start",
51
+ "side-offset": 4,
52
+ "collision-padding": 8
53
+ }, {
54
+ default: (0, vue.withCtx)(() => [(0, vue.createVNode)(as_cell_json_body_default, { value: __props.value }, null, 8, ["value"])]),
55
+ _: 1
56
+ })]),
57
+ _: 1
58
+ })]),
59
+ _: 3
60
+ }, 8, ["open"]);
61
+ };
62
+ }
63
+ });
64
+ //#endregion
65
+ Object.defineProperty(exports, "as_cell_json_popover_default", {
66
+ enumerable: true,
67
+ get: function() {
68
+ return as_cell_json_popover_default;
69
+ }
70
+ });