@atscript/vue-table 0.1.140 → 0.1.142

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 (113) hide show
  1. package/dist/as-action-form-dialog.cjs +1 -1
  2. package/dist/as-action-form-dialog.mjs +1 -1
  3. package/dist/{as-action-menu-content-B5RFt7Hc.cjs → as-action-menu-content-BaNFBYn3.cjs} +1 -1
  4. package/dist/{as-action-menu-content-KNJr1EkO.mjs → as-action-menu-content-miQYVP7x.mjs} +1 -1
  5. package/dist/as-column-menu.d.cts +1 -1
  6. package/dist/as-column-menu.d.mts +1 -1
  7. package/dist/{as-column-menu.vue-DKQNY5gh.d.cts → as-column-menu.vue-Ca3wSDxw.d.mts} +2 -2
  8. package/dist/{as-column-menu.vue-hOmuVcKf.d.mts → as-column-menu.vue-Co7FtiEM.d.cts} +2 -2
  9. package/dist/{as-config-dialog-B1KJJSHE.cjs → as-config-dialog-CVSOrS9O.cjs} +2 -2
  10. package/dist/{as-config-dialog-JXNkCCrh.mjs → as-config-dialog-Di02V3bs.mjs} +2 -2
  11. package/dist/as-config-dialog.cjs +1 -1
  12. package/dist/as-config-dialog.mjs +1 -1
  13. package/dist/{as-confirm-dialog-CC6U8nLZ.mjs → as-confirm-dialog-C9Qat2rG.mjs} +1 -1
  14. package/dist/{as-confirm-dialog-a736BLOm.cjs → as-confirm-dialog-fCwo1ty9.cjs} +1 -1
  15. package/dist/as-confirm-dialog.cjs +1 -1
  16. package/dist/as-confirm-dialog.mjs +1 -1
  17. package/dist/{as-filter-dialog-IflKkOd8.cjs → as-filter-dialog-DYpbsNDx.cjs} +7 -7
  18. package/dist/{as-filter-dialog-C3wltqrN.mjs → as-filter-dialog-DdtrTT5w.mjs} +7 -7
  19. package/dist/as-filter-dialog.cjs +1 -1
  20. package/dist/as-filter-dialog.mjs +1 -1
  21. package/dist/{as-filter-field-pygBjA-K.cjs → as-filter-field-4-qFRsJx.cjs} +8 -10
  22. package/dist/{as-filter-field-D_6DlFcp.mjs → as-filter-field-DEQVodKG.mjs} +8 -10
  23. package/dist/as-filter-field.cjs +1 -1
  24. package/dist/as-filter-field.mjs +1 -1
  25. package/dist/{as-filters-BIoEsPD0.cjs → as-filters-C6ZkLrf4.cjs} +68 -25
  26. package/dist/{as-filters-BDzQ2SM_.mjs → as-filters-Dd_j6_6G.mjs} +69 -26
  27. package/dist/as-filters.cjs +1 -1
  28. package/dist/as-filters.d.cts +1 -1
  29. package/dist/as-filters.d.mts +1 -1
  30. package/dist/as-filters.mjs +1 -1
  31. package/dist/{as-filters.vue-BSgUEh4D.d.mts → as-filters.vue-dHbGmcbr.d.mts} +56 -4
  32. package/dist/{as-filters.vue-DMXZhQW3.d.cts → as-filters.vue-vH1FHn9L.d.cts} +56 -4
  33. package/dist/{as-preset-dialog-D_w4cxKS.mjs → as-preset-dialog-Bap48oUv.mjs} +1 -1
  34. package/dist/{as-preset-dialog-BgZB8xyk.cjs → as-preset-dialog-SYA-6lGR.cjs} +1 -1
  35. package/dist/as-preset-dialog.cjs +1 -1
  36. package/dist/as-preset-dialog.mjs +1 -1
  37. package/dist/{as-preset-picker-XnGrqHyF.cjs → as-preset-picker-BdKTZa95.cjs} +27 -21
  38. package/dist/{as-preset-picker-B8d6l3U1.mjs → as-preset-picker-NBrvsE6s.mjs} +27 -21
  39. package/dist/as-preset-picker.cjs +1 -1
  40. package/dist/as-preset-picker.mjs +1 -1
  41. package/dist/{as-residual-filter-C65QsWxr.mjs → as-residual-filter-BFnbI3h3.mjs} +1 -1
  42. package/dist/{as-residual-filter-ihvXCtpH.cjs → as-residual-filter-CZ-Bytdj.cjs} +1 -1
  43. package/dist/as-residual-filter.cjs +1 -1
  44. package/dist/as-residual-filter.mjs +1 -1
  45. package/dist/{as-row-actions-C6N0lcZb.cjs → as-row-actions-C3xHkX53.cjs} +2 -2
  46. package/dist/{as-row-actions-xQ9M1PrO.mjs → as-row-actions-KeoHo9Ex.mjs} +2 -2
  47. package/dist/as-row-actions.cjs +1 -1
  48. package/dist/as-row-actions.d.cts +1 -1
  49. package/dist/as-row-actions.d.mts +1 -1
  50. package/dist/as-row-actions.mjs +1 -1
  51. package/dist/{as-row-actions.vue-C8vslg0n.d.mts → as-row-actions.vue-D3_z3ytk.d.cts} +1 -1
  52. package/dist/{as-row-actions.vue-B3XAxDAL.d.cts → as-row-actions.vue-nmaDuxBT.d.mts} +1 -1
  53. package/dist/{as-table-status-2rA91OFT.mjs → as-select-cell-KD_ns8DS.mjs} +149 -36
  54. package/dist/{as-table-status-UWTPJJUL.cjs → as-select-cell-XnzNuW2v.cjs} +154 -35
  55. package/dist/{as-table-B49x0hDM.mjs → as-table-NHqyekNd.mjs} +10 -11
  56. package/dist/{as-table-actions-B2Hy3h7v.mjs → as-table-actions-BpEFcsgh.mjs} +2 -2
  57. package/dist/{as-table-actions-B-jY3s6f.cjs → as-table-actions-UQmFtRdJ.cjs} +2 -2
  58. package/dist/as-table-actions.cjs +1 -1
  59. package/dist/as-table-actions.d.cts +1 -1
  60. package/dist/as-table-actions.d.mts +1 -1
  61. package/dist/as-table-actions.mjs +1 -1
  62. package/dist/{as-table-actions.vue-BgTJuXEH.d.cts → as-table-actions.vue-BG3JVaBQ.d.mts} +1 -1
  63. package/dist/{as-table-actions.vue-BnLH2NqO.d.mts → as-table-actions.vue-DcuzNZoC.d.cts} +1 -1
  64. package/dist/{as-table-ouPxssqv.cjs → as-table-ay1yel3u.cjs} +10 -11
  65. package/dist/{as-table-base-DErJfFYz.mjs → as-table-base-89DkDZ-1.mjs} +46 -60
  66. package/dist/{as-table-base-ceywcVRq.cjs → as-table-base-umzg4PBR.cjs} +51 -65
  67. package/dist/{as-table-header-cell-Ccf06b2_.mjs → as-table-header-cell-DU3ws2x9.mjs} +1 -1
  68. package/dist/{as-table-header-cell-ZCk3XD_d.cjs → as-table-header-cell-f3YpgJX1.cjs} +1 -1
  69. package/dist/as-table-header-cell.cjs +1 -1
  70. package/dist/as-table-header-cell.d.cts +1 -1
  71. package/dist/as-table-header-cell.d.mts +1 -1
  72. package/dist/as-table-header-cell.mjs +1 -1
  73. package/dist/{as-table-header-cell.vue-C7jNmdDh.d.mts → as-table-header-cell.vue-5VGRc23o.d.mts} +1 -1
  74. package/dist/{as-table-header-cell.vue-DkClJBAT.d.cts → as-table-header-cell.vue-XR90UlHO.d.cts} +1 -1
  75. package/dist/{as-table-root-CG7bLzcQ.mjs → as-table-root-47hiBEnq.mjs} +8 -5
  76. package/dist/{as-table-root-_58hdHAi.cjs → as-table-root-DDeGktcl.cjs} +8 -5
  77. package/dist/as-table-root.cjs +1 -1
  78. package/dist/as-table-root.d.cts +1 -1
  79. package/dist/as-table-root.d.mts +1 -1
  80. package/dist/as-table-root.mjs +1 -1
  81. package/dist/{as-table-root.vue-DpPRMy3v.d.mts → as-table-root.vue-BGx453_Q.d.mts} +30 -4
  82. package/dist/{as-table-root.vue-D8hH1xGK.d.cts → as-table-root.vue-yZ7ZcwdT.d.cts} +32 -6
  83. package/dist/as-table.cjs +1 -1
  84. package/dist/as-table.d.cts +1 -1
  85. package/dist/as-table.d.mts +1 -1
  86. package/dist/as-table.mjs +1 -1
  87. package/dist/{as-table.vue-CudFoZTF.d.mts → as-table.vue-CwI5Z0y5.d.cts} +13 -11
  88. package/dist/{as-table.vue-Bv6sKnL5.d.cts → as-table.vue-wdFf4hMW.d.mts} +13 -11
  89. package/dist/{as-window-table-KyS6YUpa.mjs → as-window-table-C312T_bc.mjs} +83 -62
  90. package/dist/{as-window-table-C9YtzepV.cjs → as-window-table-hOYLNhX3.cjs} +89 -68
  91. package/dist/as-window-table.cjs +1 -1
  92. package/dist/as-window-table.d.cts +1 -1
  93. package/dist/as-window-table.d.mts +1 -1
  94. package/dist/as-window-table.mjs +1 -1
  95. package/dist/{as-window-table.vue-COVl3die.d.mts → as-window-table.vue-D6UDA6td.d.cts} +9 -7
  96. package/dist/{as-window-table.vue-CRWdhOgC.d.cts → as-window-table.vue-Deg1mj3t.d.mts} +9 -7
  97. package/dist/index.cjs +18 -18
  98. package/dist/index.d.cts +10 -10
  99. package/dist/index.d.mts +10 -10
  100. package/dist/index.mjs +18 -18
  101. package/dist/{types-BCixOa8x.d.cts → types-BU7J-a1r.d.mts} +79 -10
  102. package/dist/{types-D7qVxU_y.d.mts → types-D4dK49sA.d.cts} +79 -10
  103. package/dist/{use-table-2xPxoNRX.mjs → use-table-DlqGHjPh.mjs} +3 -2
  104. package/dist/{use-table-column-handlers-p_xK-l0e.mjs → use-table-column-handlers-0myVzrZR.mjs} +1 -1
  105. package/dist/{use-table-column-handlers-rqFo9HLz.cjs → use-table-column-handlers-BHMCo_HR.cjs} +1 -1
  106. package/dist/{use-table-component-XQ-Qt_sp.cjs → use-table-component-IziAm0vk.cjs} +1 -1
  107. package/dist/{use-table-component-BYO0zMQj.mjs → use-table-component-TLwFq4rx.mjs} +1 -1
  108. package/dist/{use-table-nav-bridge-BDBnRc4C.mjs → use-table-nav-bridge-CkQqimdS.mjs} +1 -1
  109. package/dist/{use-table-nav-bridge-DvrsPanF.cjs → use-table-nav-bridge-QU4jKhqx.cjs} +1 -1
  110. package/dist/{use-table-state-pF_9gnTG.cjs → use-table-state-BiklfjP0.cjs} +243 -45
  111. package/dist/{use-table-state-BzjbnpBA.mjs → use-table-state-Cq-3tbVr.mjs} +227 -47
  112. package/dist/{use-table-B45WZLwg.cjs → use-table-yZNJTfRq.cjs} +3 -2
  113. package/package.json +9 -9
@@ -1,8 +1,9 @@
1
+ import { ColumnDef } from "@atscript/ui";
1
2
  import * as vue from "vue";
2
3
 
3
4
  //#region src/components/as-filters.vue.d.ts
4
5
  declare const _default: typeof __VLS_export;
5
- declare const __VLS_export: vue.DefineComponent<{
6
+ declare const __VLS_export: __VLS_WithSlots<vue.DefineComponent<{
6
7
  filterFields?: string[];
7
8
  /**
8
9
  * Hard cap on how many filter fields render inline. Deterministic and
@@ -41,7 +42,21 @@ declare const __VLS_export: vue.DefineComponent<{
41
42
  * @since 0.1.140
42
43
  */
43
44
  residual?: boolean;
44
- }, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{
45
+ } & {
46
+ /**
47
+ * Open state of the overflow popover — `v-model:overflow-open` to drive or
48
+ * observe it (e.g. close it before the host opens its own dialog). Unbound →
49
+ * the popover keeps its own state.
50
+ *
51
+ * @since 0.1.142
52
+ */
53
+ overflowOpen?: boolean;
54
+ }, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
55
+ "update:overflowOpen": (value: boolean) => any;
56
+ } & {
57
+ "overflow-open-auto-focus": (event: Event) => any;
58
+ "overflow-close-auto-focus": (event: Event) => any;
59
+ }, string, vue.PublicProps, Readonly<{
45
60
  filterFields?: string[];
46
61
  /**
47
62
  * Hard cap on how many filter fields render inline. Deterministic and
@@ -80,8 +95,45 @@ declare const __VLS_export: vue.DefineComponent<{
80
95
  * @since 0.1.140
81
96
  */
82
97
  residual?: boolean;
83
- }> & Readonly<{}>, {
98
+ } & {
99
+ /**
100
+ * Open state of the overflow popover — `v-model:overflow-open` to drive or
101
+ * observe it (e.g. close it before the host opens its own dialog). Unbound →
102
+ * the popover keeps its own state.
103
+ *
104
+ * @since 0.1.142
105
+ */
106
+ overflowOpen?: boolean;
107
+ }> & Readonly<{
108
+ "onUpdate:overflowOpen"?: ((value: boolean) => any) | undefined;
109
+ "onOverflow-open-auto-focus"?: ((event: Event) => any) | undefined;
110
+ "onOverflow-close-auto-focus"?: ((event: Event) => any) | undefined;
111
+ }>, {
84
112
  residual: boolean;
85
- }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
113
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>, {
114
+ /**
115
+ * Replaces the overflow trigger. Render ONE focusable element (a `<button>`
116
+ * or a component that forwards attrs): the popover merges its ARIA
117
+ * attributes, ref and click handler onto it. `activeCount` = active filters
118
+ * among the overflowed fields. Since 0.1.142.
119
+ */
120
+ "overflow-trigger"?: (props: {
121
+ activeCount: number;
122
+ open: boolean;
123
+ }) => unknown;
124
+ /**
125
+ * Replaces the popover body. `columns` = the overflowed fields' columns,
126
+ * `close()` closes the popover. Since 0.1.142.
127
+ */
128
+ overflow?: (props: {
129
+ columns: ColumnDef[];
130
+ close: () => void;
131
+ }) => unknown;
132
+ }>;
133
+ type __VLS_WithSlots<T, S> = T & {
134
+ new (): {
135
+ $slots: S;
136
+ };
137
+ };
86
138
  //#endregion
87
139
  export { _default as t };
@@ -1,8 +1,9 @@
1
1
  import * as vue from "vue";
2
+ import { ColumnDef } from "@atscript/ui";
2
3
 
3
4
  //#region src/components/as-filters.vue.d.ts
4
5
  declare const _default: typeof __VLS_export;
5
- declare const __VLS_export: vue.DefineComponent<{
6
+ declare const __VLS_export: __VLS_WithSlots<vue.DefineComponent<{
6
7
  filterFields?: string[];
7
8
  /**
8
9
  * Hard cap on how many filter fields render inline. Deterministic and
@@ -41,7 +42,21 @@ declare const __VLS_export: vue.DefineComponent<{
41
42
  * @since 0.1.140
42
43
  */
43
44
  residual?: boolean;
44
- }, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{
45
+ } & {
46
+ /**
47
+ * Open state of the overflow popover — `v-model:overflow-open` to drive or
48
+ * observe it (e.g. close it before the host opens its own dialog). Unbound →
49
+ * the popover keeps its own state.
50
+ *
51
+ * @since 0.1.142
52
+ */
53
+ overflowOpen?: boolean;
54
+ }, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
55
+ "update:overflowOpen": (value: boolean) => any;
56
+ } & {
57
+ "overflow-open-auto-focus": (event: Event) => any;
58
+ "overflow-close-auto-focus": (event: Event) => any;
59
+ }, string, vue.PublicProps, Readonly<{
45
60
  filterFields?: string[];
46
61
  /**
47
62
  * Hard cap on how many filter fields render inline. Deterministic and
@@ -80,8 +95,45 @@ declare const __VLS_export: vue.DefineComponent<{
80
95
  * @since 0.1.140
81
96
  */
82
97
  residual?: boolean;
83
- }> & Readonly<{}>, {
98
+ } & {
99
+ /**
100
+ * Open state of the overflow popover — `v-model:overflow-open` to drive or
101
+ * observe it (e.g. close it before the host opens its own dialog). Unbound →
102
+ * the popover keeps its own state.
103
+ *
104
+ * @since 0.1.142
105
+ */
106
+ overflowOpen?: boolean;
107
+ }> & Readonly<{
108
+ "onUpdate:overflowOpen"?: ((value: boolean) => any) | undefined;
109
+ "onOverflow-open-auto-focus"?: ((event: Event) => any) | undefined;
110
+ "onOverflow-close-auto-focus"?: ((event: Event) => any) | undefined;
111
+ }>, {
84
112
  residual: boolean;
85
- }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
113
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>, {
114
+ /**
115
+ * Replaces the overflow trigger. Render ONE focusable element (a `<button>`
116
+ * or a component that forwards attrs): the popover merges its ARIA
117
+ * attributes, ref and click handler onto it. `activeCount` = active filters
118
+ * among the overflowed fields. Since 0.1.142.
119
+ */
120
+ "overflow-trigger"?: (props: {
121
+ activeCount: number;
122
+ open: boolean;
123
+ }) => unknown;
124
+ /**
125
+ * Replaces the popover body. `columns` = the overflowed fields' columns,
126
+ * `close()` closes the popover. Since 0.1.142.
127
+ */
128
+ overflow?: (props: {
129
+ columns: ColumnDef[];
130
+ close: () => void;
131
+ }) => unknown;
132
+ }>;
133
+ type __VLS_WithSlots<T, S> = T & {
134
+ new (): {
135
+ $slots: S;
136
+ };
137
+ };
86
138
  //#endregion
87
139
  export { _default as t };
@@ -1,4 +1,4 @@
1
- import { a as useTableContext, d as ownerNameOf, f as readPresetLabel, l as ASPECT_ICONS, u as ASPECT_LABELS } from "./use-table-state-BzjbnpBA.mjs";
1
+ import { a as useTableContext, d as ASPECT_LABELS, f as ownerNameOf, p as readPresetLabel, u as ASPECT_ICONS } from "./use-table-state-Cq-3tbVr.mjs";
2
2
  import { t as useSeedOnOpen } from "./use-seed-on-open-DO3A1kIb.mjs";
3
3
  import { t as errorMessage } from "./error-message-gNEXnnbb.mjs";
4
4
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, isRef, nextTick, normalizeClass, openBlock, ref, renderList, toDisplayString, unref, vModelText, watch, withCtx, withDirectives, withKeys, withModifiers } from "vue";
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-pF_9gnTG.cjs");
1
+ const require_use_table_state = require("./use-table-state-BiklfjP0.cjs");
2
2
  const require_use_seed_on_open = require("./use-seed-on-open-Dg9I89fU.cjs");
3
3
  const require_error_message = require("./error-message-CfKpn_5w.cjs");
4
4
  let vue = require("vue");
@@ -1,2 +1,2 @@
1
- const require_as_preset_dialog = require("./as-preset-dialog-BgZB8xyk.cjs");
1
+ const require_as_preset_dialog = require("./as-preset-dialog-SYA-6lGR.cjs");
2
2
  module.exports = require_as_preset_dialog.as_preset_dialog_default;
@@ -1,2 +1,2 @@
1
- import { t as as_preset_dialog_default } from "./as-preset-dialog-D_w4cxKS.mjs";
1
+ import { t as as_preset_dialog_default } from "./as-preset-dialog-Bap48oUv.mjs";
2
2
  export { as_preset_dialog_default as default };
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-pF_9gnTG.cjs");
1
+ const require_use_table_state = require("./use-table-state-BiklfjP0.cjs");
2
2
  const require_error_message = require("./error-message-CfKpn_5w.cjs");
3
3
  let vue = require("vue");
4
4
  let _atscript_ui_table = require("@atscript/ui-table");
@@ -28,18 +28,23 @@ const _hoisted_7 = {
28
28
  };
29
29
  const _hoisted_8 = { class: "as-preset-picker-item-aspects" };
30
30
  const _hoisted_9 = ["data-on", "title"];
31
- const _hoisted_10 = { class: "as-preset-picker-popover-body" };
32
- const _hoisted_11 = { class: "as-preset-picker-popover-field" };
33
- const _hoisted_12 = ["onKeydown"];
34
- const _hoisted_13 = { class: "as-preset-picker-popover-aspects" };
35
- const _hoisted_14 = ["checked", "onChange"];
36
- const _hoisted_15 = {
31
+ const _hoisted_10 = {
32
+ key: 0,
33
+ class: "as-preset-picker-note",
34
+ role: "note"
35
+ };
36
+ const _hoisted_11 = { class: "as-preset-picker-popover-body" };
37
+ const _hoisted_12 = { class: "as-preset-picker-popover-field" };
38
+ const _hoisted_13 = ["onKeydown"];
39
+ const _hoisted_14 = { class: "as-preset-picker-popover-aspects" };
40
+ const _hoisted_15 = ["checked", "onChange"];
41
+ const _hoisted_16 = {
37
42
  key: 0,
38
43
  class: "as-preset-picker-popover-note"
39
44
  };
40
- const _hoisted_16 = { class: "as-preset-picker-popover-public" };
41
- const _hoisted_17 = { class: "as-preset-picker-popover-footer" };
42
- const _hoisted_18 = ["disabled"];
45
+ const _hoisted_17 = { class: "as-preset-picker-popover-public" };
46
+ const _hoisted_18 = { class: "as-preset-picker-popover-footer" };
47
+ const _hoisted_19 = ["disabled"];
43
48
  //#endregion
44
49
  //#region src/components/as-preset-picker.vue
45
50
  var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -318,9 +323,10 @@ var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
318
323
  }), 128)),
319
324
  (0, vue.createCommentVNode)(" Action row "),
320
325
  (0, vue.createVNode)((0, vue.unref)(reka_ui.DropdownMenuSeparator), { class: "as-preset-picker-separator" }),
326
+ (0, vue.unref)(state).preset.droppedFields.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_10, " Some fields in this preset aren't available to you. ")) : (0, vue.createCommentVNode)("v-if", true),
321
327
  (0, vue.createVNode)(ErrorNote),
322
328
  (0, vue.unref)(state).preset.isDirty.value && (0, vue.unref)(state).preset.canSaveActive.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.DropdownMenuItem), {
323
- key: 0,
329
+ key: 1,
324
330
  class: "as-preset-picker-action as-preset-picker-action-primary",
325
331
  onSelect: saveActive
326
332
  }, {
@@ -352,7 +358,7 @@ var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
352
358
  _: 1
353
359
  }),
354
360
  (0, vue.unref)(state).preset.isDirty.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.DropdownMenuItem), {
355
- key: 1,
361
+ key: 2,
356
362
  class: "as-preset-picker-action",
357
363
  onSelect: resetActive
358
364
  }, {
@@ -392,8 +398,8 @@ var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
392
398
  }, [
393
399
  _cache[16] || (_cache[16] = (0, vue.createElementVNode)("h3", { class: "as-preset-picker-popover-title" }, "Save as new preset", -1)),
394
400
  (0, vue.createCommentVNode)(" Only the form body scrolls. The title, the error note and the\n Cancel/Save footer stay pinned, so a short viewport (or a long\n aspect list) can never put the buttons — or the reason a save\n just failed — out of reach behind a scroll. "),
395
- (0, vue.createElementVNode)("div", _hoisted_10, [
396
- (0, vue.createElementVNode)("div", _hoisted_11, [_cache[11] || (_cache[11] = (0, vue.createElementVNode)("label", {
401
+ (0, vue.createElementVNode)("div", _hoisted_11, [
402
+ (0, vue.createElementVNode)("div", _hoisted_12, [_cache[11] || (_cache[11] = (0, vue.createElementVNode)("label", {
397
403
  class: "as-preset-picker-popover-label",
398
404
  for: "as-preset-picker-label"
399
405
  }, "Name", -1)), (0, vue.withDirectives)((0, vue.createElementVNode)("input", {
@@ -404,8 +410,8 @@ var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
404
410
  class: "as-preset-picker-popover-input",
405
411
  type: "text",
406
412
  onKeydown: (0, vue.withKeys)((0, vue.withModifiers)(commitSaveAs, ["prevent"]), ["enter"])
407
- }, null, 40, _hoisted_12), [[vue.vModelText, saveAsLabel.value]])]),
408
- (0, vue.createElementVNode)("div", _hoisted_13, [_cache[12] || (_cache[12] = (0, vue.createElementVNode)("span", { class: "as-preset-picker-popover-label" }, "Save:", -1)), ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(aspects.value, (a) => {
413
+ }, null, 40, _hoisted_13), [[vue.vModelText, saveAsLabel.value]])]),
414
+ (0, vue.createElementVNode)("div", _hoisted_14, [_cache[12] || (_cache[12] = (0, vue.createElementVNode)("span", { class: "as-preset-picker-popover-label" }, "Save:", -1)), ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(aspects.value, (a) => {
409
415
  return (0, vue.openBlock)(), (0, vue.createElementBlock)("label", {
410
416
  key: a,
411
417
  class: "as-preset-picker-popover-aspect"
@@ -414,7 +420,7 @@ var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
414
420
  type: "checkbox",
415
421
  checked: saveAsAspectsMask.value[a] === true,
416
422
  onChange: (ev) => toggleAspect(a, ev)
417
- }, null, 40, _hoisted_14),
423
+ }, null, 40, _hoisted_15),
418
424
  (0, vue.createElementVNode)("span", {
419
425
  class: (0, vue.normalizeClass)([(0, vue.unref)(require_use_table_state.ASPECT_ICONS)[a], "as-preset-picker-popover-aspect-icon"]),
420
426
  "aria-hidden": "true"
@@ -422,8 +428,8 @@ var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
422
428
  (0, vue.createTextVNode)(" " + (0, vue.toDisplayString)((0, vue.unref)(require_use_table_state.ASPECT_LABELS)[a]), 1)
423
429
  ]);
424
430
  }), 128))]),
425
- (0, vue.unref)(state).residualFilters.value.length > 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_15, " Custom filter conditions are not saved with presets. ")) : (0, vue.createCommentVNode)("v-if", true),
426
- (0, vue.unref)(state).preset.capabilities.value === null || (0, vue.unref)(state).preset.capabilities.value.canPublish ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, [_cache[15] || (_cache[15] = (0, vue.createElementVNode)("div", { class: "as-preset-picker-popover-separator" }, null, -1)), (0, vue.createElementVNode)("label", _hoisted_16, [
431
+ (0, vue.unref)(state).residualFilters.value.length > 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_16, " Custom filter conditions are not saved with presets. ")) : (0, vue.createCommentVNode)("v-if", true),
432
+ (0, vue.unref)(state).preset.capabilities.value === null || (0, vue.unref)(state).preset.capabilities.value.canPublish ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, [_cache[15] || (_cache[15] = (0, vue.createElementVNode)("div", { class: "as-preset-picker-popover-separator" }, null, -1)), (0, vue.createElementVNode)("label", _hoisted_17, [
427
433
  (0, vue.withDirectives)((0, vue.createElementVNode)("input", {
428
434
  "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => saveAsPublic.value = $event),
429
435
  type: "checkbox"
@@ -436,7 +442,7 @@ var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
436
442
  ])], 64)) : (0, vue.createCommentVNode)("v-if", true)
437
443
  ]),
438
444
  (0, vue.createVNode)(ErrorNote),
439
- (0, vue.createElementVNode)("div", _hoisted_17, [(0, vue.createElementVNode)("button", {
445
+ (0, vue.createElementVNode)("div", _hoisted_18, [(0, vue.createElementVNode)("button", {
440
446
  type: "button",
441
447
  class: "as-preset-picker-popover-cancel",
442
448
  onClick: cancelSaveAs
@@ -445,7 +451,7 @@ var as_preset_picker_default = /* @__PURE__ */ (0, vue.defineComponent)({
445
451
  class: "as-preset-picker-popover-save",
446
452
  disabled: !saveAsLabel.value.trim(),
447
453
  onClick: commitSaveAs
448
- }, " Save ", 8, _hoisted_18)])
454
+ }, " Save ", 8, _hoisted_19)])
449
455
  ], 32)]),
450
456
  _: 1
451
457
  })], 2112))]),
@@ -1,4 +1,4 @@
1
- import { a as useTableContext, d as ownerNameOf, f as readPresetLabel, l as ASPECT_ICONS, u as ASPECT_LABELS } from "./use-table-state-BzjbnpBA.mjs";
1
+ import { a as useTableContext, d as ASPECT_LABELS, f as ownerNameOf, p as readPresetLabel, u as ASPECT_ICONS } from "./use-table-state-Cq-3tbVr.mjs";
2
2
  import { t as errorMessage } from "./error-message-gNEXnnbb.mjs";
3
3
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, h, nextTick, normalizeClass, onScopeDispose, openBlock, ref, renderList, shallowRef, toDisplayString, unref, vModelCheckbox, vModelText, watch, withCtx, withDirectives, withKeys, withModifiers } from "vue";
4
4
  import { isSystemPresetId } from "@atscript/ui-table";
@@ -28,18 +28,23 @@ const _hoisted_7 = {
28
28
  };
29
29
  const _hoisted_8 = { class: "as-preset-picker-item-aspects" };
30
30
  const _hoisted_9 = ["data-on", "title"];
31
- const _hoisted_10 = { class: "as-preset-picker-popover-body" };
32
- const _hoisted_11 = { class: "as-preset-picker-popover-field" };
33
- const _hoisted_12 = ["onKeydown"];
34
- const _hoisted_13 = { class: "as-preset-picker-popover-aspects" };
35
- const _hoisted_14 = ["checked", "onChange"];
36
- const _hoisted_15 = {
31
+ const _hoisted_10 = {
32
+ key: 0,
33
+ class: "as-preset-picker-note",
34
+ role: "note"
35
+ };
36
+ const _hoisted_11 = { class: "as-preset-picker-popover-body" };
37
+ const _hoisted_12 = { class: "as-preset-picker-popover-field" };
38
+ const _hoisted_13 = ["onKeydown"];
39
+ const _hoisted_14 = { class: "as-preset-picker-popover-aspects" };
40
+ const _hoisted_15 = ["checked", "onChange"];
41
+ const _hoisted_16 = {
37
42
  key: 0,
38
43
  class: "as-preset-picker-popover-note"
39
44
  };
40
- const _hoisted_16 = { class: "as-preset-picker-popover-public" };
41
- const _hoisted_17 = { class: "as-preset-picker-popover-footer" };
42
- const _hoisted_18 = ["disabled"];
45
+ const _hoisted_17 = { class: "as-preset-picker-popover-public" };
46
+ const _hoisted_18 = { class: "as-preset-picker-popover-footer" };
47
+ const _hoisted_19 = ["disabled"];
43
48
  //#endregion
44
49
  //#region src/components/as-preset-picker.vue
45
50
  var as_preset_picker_default = /* @__PURE__ */ defineComponent({
@@ -318,9 +323,10 @@ var as_preset_picker_default = /* @__PURE__ */ defineComponent({
318
323
  }), 128)),
319
324
  createCommentVNode(" Action row "),
320
325
  createVNode(unref(DropdownMenuSeparator), { class: "as-preset-picker-separator" }),
326
+ unref(state).preset.droppedFields.value ? (openBlock(), createElementBlock("p", _hoisted_10, " Some fields in this preset aren't available to you. ")) : createCommentVNode("v-if", true),
321
327
  createVNode(ErrorNote),
322
328
  unref(state).preset.isDirty.value && unref(state).preset.canSaveActive.value ? (openBlock(), createBlock(unref(DropdownMenuItem), {
323
- key: 0,
329
+ key: 1,
324
330
  class: "as-preset-picker-action as-preset-picker-action-primary",
325
331
  onSelect: saveActive
326
332
  }, {
@@ -352,7 +358,7 @@ var as_preset_picker_default = /* @__PURE__ */ defineComponent({
352
358
  _: 1
353
359
  }),
354
360
  unref(state).preset.isDirty.value ? (openBlock(), createBlock(unref(DropdownMenuItem), {
355
- key: 1,
361
+ key: 2,
356
362
  class: "as-preset-picker-action",
357
363
  onSelect: resetActive
358
364
  }, {
@@ -392,8 +398,8 @@ var as_preset_picker_default = /* @__PURE__ */ defineComponent({
392
398
  }, [
393
399
  _cache[16] || (_cache[16] = createElementVNode("h3", { class: "as-preset-picker-popover-title" }, "Save as new preset", -1)),
394
400
  createCommentVNode(" Only the form body scrolls. The title, the error note and the\n Cancel/Save footer stay pinned, so a short viewport (or a long\n aspect list) can never put the buttons — or the reason a save\n just failed — out of reach behind a scroll. "),
395
- createElementVNode("div", _hoisted_10, [
396
- createElementVNode("div", _hoisted_11, [_cache[11] || (_cache[11] = createElementVNode("label", {
401
+ createElementVNode("div", _hoisted_11, [
402
+ createElementVNode("div", _hoisted_12, [_cache[11] || (_cache[11] = createElementVNode("label", {
397
403
  class: "as-preset-picker-popover-label",
398
404
  for: "as-preset-picker-label"
399
405
  }, "Name", -1)), withDirectives(createElementVNode("input", {
@@ -404,8 +410,8 @@ var as_preset_picker_default = /* @__PURE__ */ defineComponent({
404
410
  class: "as-preset-picker-popover-input",
405
411
  type: "text",
406
412
  onKeydown: withKeys(withModifiers(commitSaveAs, ["prevent"]), ["enter"])
407
- }, null, 40, _hoisted_12), [[vModelText, saveAsLabel.value]])]),
408
- createElementVNode("div", _hoisted_13, [_cache[12] || (_cache[12] = createElementVNode("span", { class: "as-preset-picker-popover-label" }, "Save:", -1)), (openBlock(true), createElementBlock(Fragment, null, renderList(aspects.value, (a) => {
413
+ }, null, 40, _hoisted_13), [[vModelText, saveAsLabel.value]])]),
414
+ createElementVNode("div", _hoisted_14, [_cache[12] || (_cache[12] = createElementVNode("span", { class: "as-preset-picker-popover-label" }, "Save:", -1)), (openBlock(true), createElementBlock(Fragment, null, renderList(aspects.value, (a) => {
409
415
  return openBlock(), createElementBlock("label", {
410
416
  key: a,
411
417
  class: "as-preset-picker-popover-aspect"
@@ -414,7 +420,7 @@ var as_preset_picker_default = /* @__PURE__ */ defineComponent({
414
420
  type: "checkbox",
415
421
  checked: saveAsAspectsMask.value[a] === true,
416
422
  onChange: (ev) => toggleAspect(a, ev)
417
- }, null, 40, _hoisted_14),
423
+ }, null, 40, _hoisted_15),
418
424
  createElementVNode("span", {
419
425
  class: normalizeClass([unref(ASPECT_ICONS)[a], "as-preset-picker-popover-aspect-icon"]),
420
426
  "aria-hidden": "true"
@@ -422,8 +428,8 @@ var as_preset_picker_default = /* @__PURE__ */ defineComponent({
422
428
  createTextVNode(" " + toDisplayString(unref(ASPECT_LABELS)[a]), 1)
423
429
  ]);
424
430
  }), 128))]),
425
- unref(state).residualFilters.value.length > 0 ? (openBlock(), createElementBlock("p", _hoisted_15, " Custom filter conditions are not saved with presets. ")) : createCommentVNode("v-if", true),
426
- unref(state).preset.capabilities.value === null || unref(state).preset.capabilities.value.canPublish ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [_cache[15] || (_cache[15] = createElementVNode("div", { class: "as-preset-picker-popover-separator" }, null, -1)), createElementVNode("label", _hoisted_16, [
431
+ unref(state).residualFilters.value.length > 0 ? (openBlock(), createElementBlock("p", _hoisted_16, " Custom filter conditions are not saved with presets. ")) : createCommentVNode("v-if", true),
432
+ unref(state).preset.capabilities.value === null || unref(state).preset.capabilities.value.canPublish ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [_cache[15] || (_cache[15] = createElementVNode("div", { class: "as-preset-picker-popover-separator" }, null, -1)), createElementVNode("label", _hoisted_17, [
427
433
  withDirectives(createElementVNode("input", {
428
434
  "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => saveAsPublic.value = $event),
429
435
  type: "checkbox"
@@ -436,7 +442,7 @@ var as_preset_picker_default = /* @__PURE__ */ defineComponent({
436
442
  ])], 64)) : createCommentVNode("v-if", true)
437
443
  ]),
438
444
  createVNode(ErrorNote),
439
- createElementVNode("div", _hoisted_17, [createElementVNode("button", {
445
+ createElementVNode("div", _hoisted_18, [createElementVNode("button", {
440
446
  type: "button",
441
447
  class: "as-preset-picker-popover-cancel",
442
448
  onClick: cancelSaveAs
@@ -445,7 +451,7 @@ var as_preset_picker_default = /* @__PURE__ */ defineComponent({
445
451
  class: "as-preset-picker-popover-save",
446
452
  disabled: !saveAsLabel.value.trim(),
447
453
  onClick: commitSaveAs
448
- }, " Save ", 8, _hoisted_18)])
454
+ }, " Save ", 8, _hoisted_19)])
449
455
  ], 32)]),
450
456
  _: 1
451
457
  })], 2112))]),
@@ -1,2 +1,2 @@
1
- const require_as_preset_picker = require("./as-preset-picker-XnGrqHyF.cjs");
1
+ const require_as_preset_picker = require("./as-preset-picker-BdKTZa95.cjs");
2
2
  module.exports = require_as_preset_picker.as_preset_picker_default;
@@ -1,2 +1,2 @@
1
- import { t as as_preset_picker_default } from "./as-preset-picker-B8d6l3U1.mjs";
1
+ import { t as as_preset_picker_default } from "./as-preset-picker-NBrvsE6s.mjs";
2
2
  export { as_preset_picker_default as default };
@@ -1,4 +1,4 @@
1
- import { a as useTableContext } from "./use-table-state-BzjbnpBA.mjs";
1
+ import { a as useTableContext } from "./use-table-state-Cq-3tbVr.mjs";
2
2
  import { computed, createElementBlock, createElementVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
3
3
  import { formatFilterExpr } from "@atscript/ui-table";
4
4
  //#region src/components/defaults/as-residual-filter.vue?vue&type=script&setup=true&lang.ts
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-pF_9gnTG.cjs");
1
+ const require_use_table_state = require("./use-table-state-BiklfjP0.cjs");
2
2
  let vue = require("vue");
3
3
  let _atscript_ui_table = require("@atscript/ui-table");
4
4
  //#region src/components/defaults/as-residual-filter.vue?vue&type=script&setup=true&lang.ts
@@ -1,2 +1,2 @@
1
- const require_as_residual_filter = require("./as-residual-filter-ihvXCtpH.cjs");
1
+ const require_as_residual_filter = require("./as-residual-filter-CZ-Bytdj.cjs");
2
2
  module.exports = require_as_residual_filter.as_residual_filter_default;
@@ -1,2 +1,2 @@
1
- import { t as as_residual_filter_default } from "./as-residual-filter-C65QsWxr.mjs";
1
+ import { t as as_residual_filter_default } from "./as-residual-filter-BFnbI3h3.mjs";
2
2
  export { as_residual_filter_default as default };
@@ -1,5 +1,5 @@
1
- const require_use_table_state = require("./use-table-state-pF_9gnTG.cjs");
2
- const require_as_action_menu_content = require("./as-action-menu-content-B5RFt7Hc.cjs");
1
+ const require_use_table_state = require("./use-table-state-BiklfjP0.cjs");
2
+ const require_as_action_menu_content = require("./as-action-menu-content-BaNFBYn3.cjs");
3
3
  let vue = require("vue");
4
4
  let reka_ui = require("reka-ui");
5
5
  //#region src/components/defaults/as-row-actions.vue?vue&type=script&setup=true&lang.ts
@@ -1,5 +1,5 @@
1
- import { E as triggerAction, S as intentClass, a as useTableContext, b as createNavigateGestures, g as applyRowGate, h as rowActionHref, v as ariaLabelFor, x as extractIdentifier } from "./use-table-state-BzjbnpBA.mjs";
2
- import { t as as_action_menu_content_default } from "./as-action-menu-content-KNJr1EkO.mjs";
1
+ import { C as createNavigateGestures, T as intentClass, a as useTableContext, k as triggerAction, v as rowActionHref, w as extractIdentifier, x as ariaLabelFor, y as applyRowGate } from "./use-table-state-Cq-3tbVr.mjs";
2
+ import { t as as_action_menu_content_default } from "./as-action-menu-content-miQYVP7x.mjs";
3
3
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, normalizeClass, openBlock, resolveDynamicComponent, toDisplayString, unref, withCtx, withModifiers } from "vue";
4
4
  import { DropdownMenuPortal, DropdownMenuRoot, DropdownMenuTrigger } from "reka-ui";
5
5
  //#region src/components/defaults/as-row-actions.vue?vue&type=script&setup=true&lang.ts
@@ -1,2 +1,2 @@
1
- const require_as_row_actions = require("./as-row-actions-C6N0lcZb.cjs");
1
+ const require_as_row_actions = require("./as-row-actions-C3xHkX53.cjs");
2
2
  module.exports = require_as_row_actions.as_row_actions_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-row-actions.vue-B3XAxDAL.cjs";
1
+ import { t as _default } from "./as-row-actions.vue-D3_z3ytk.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-row-actions.vue-C8vslg0n.mjs";
1
+ import { t as _default } from "./as-row-actions.vue-nmaDuxBT.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_row_actions_default } from "./as-row-actions-xQ9M1PrO.mjs";
1
+ import { t as as_row_actions_default } from "./as-row-actions-KeoHo9Ex.mjs";
2
2
  export { as_row_actions_default as default };
@@ -1,4 +1,4 @@
1
- import { w as TVueTableActionInfo } from "./types-D7qVxU_y.mjs";
1
+ import { D as TVueTableActionInfo } from "./types-D4dK49sA.cjs";
2
2
  import * as vue from "vue";
3
3
 
4
4
  //#region src/components/defaults/as-row-actions.vue.d.ts
@@ -1,4 +1,4 @@
1
- import { w as TVueTableActionInfo } from "./types-BCixOa8x.cjs";
1
+ import { D as TVueTableActionInfo } from "./types-BU7J-a1r.mjs";
2
2
  import * as vue from "vue";
3
3
 
4
4
  //#region src/components/defaults/as-row-actions.vue.d.ts