@atscript/vue-table 0.1.90 → 0.1.92

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 (79) 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-CyUfBrWH.cjs → as-action-menu-content-CSPPMACR.cjs} +1 -1
  4. package/dist/{as-action-menu-content-CXsdPn42.mjs → as-action-menu-content-DXWuttt_.mjs} +1 -1
  5. package/dist/{as-config-dialog-vRklaKbi.mjs → as-config-dialog-BB6BDa1E.mjs} +1 -1
  6. package/dist/{as-config-dialog-d2k7_l0U.cjs → as-config-dialog-BCvtSxi6.cjs} +1 -1
  7. package/dist/as-config-dialog.cjs +1 -1
  8. package/dist/as-config-dialog.mjs +1 -1
  9. package/dist/{as-confirm-dialog-BLh3Ju4-.mjs → as-confirm-dialog-DL0mCEeX.mjs} +1 -1
  10. package/dist/{as-confirm-dialog-BgpIEE2z.cjs → as-confirm-dialog-Xtw2wE1X.cjs} +1 -1
  11. package/dist/as-confirm-dialog.cjs +1 -1
  12. package/dist/as-confirm-dialog.mjs +1 -1
  13. package/dist/{as-filter-dialog-C0HMpUPT.mjs → as-filter-dialog-KGyPqr2P.mjs} +5 -5
  14. package/dist/{as-filter-dialog-DcGvIV3h.cjs → as-filter-dialog-O62-CnIQ.cjs} +5 -5
  15. package/dist/as-filter-dialog.cjs +1 -1
  16. package/dist/as-filter-dialog.mjs +1 -1
  17. package/dist/{as-filter-field-Bqvu2ASN.mjs → as-filter-field-CkiRXHVx.mjs} +4 -3
  18. package/dist/{as-filter-field-B_tYzvvl.cjs → as-filter-field-jL7cnKUR.cjs} +4 -3
  19. package/dist/as-filter-field.cjs +1 -1
  20. package/dist/as-filter-field.mjs +1 -1
  21. package/dist/{as-filters-xRT2qv56.cjs → as-filters-BFpZKtAU.cjs} +2 -2
  22. package/dist/{as-filters-Bxa9ZEMm.mjs → as-filters-BJM-NjUn.mjs} +2 -2
  23. package/dist/as-filters.cjs +1 -1
  24. package/dist/as-filters.mjs +1 -1
  25. package/dist/{as-preset-dialog-BaTfwMnh.cjs → as-preset-dialog-1Xl8DIiN.cjs} +1 -1
  26. package/dist/{as-preset-dialog-BdDRgwf_.mjs → as-preset-dialog-DXbqMVI1.mjs} +1 -1
  27. package/dist/as-preset-dialog.cjs +1 -1
  28. package/dist/as-preset-dialog.mjs +1 -1
  29. package/dist/{as-preset-picker-Ce3crTQy.cjs → as-preset-picker-CkaaKzYB.cjs} +1 -1
  30. package/dist/{as-preset-picker-BQbNEiy9.mjs → as-preset-picker-DJTF47_V.mjs} +1 -1
  31. package/dist/as-preset-picker.cjs +1 -1
  32. package/dist/as-preset-picker.mjs +1 -1
  33. package/dist/{as-row-actions-B6Kob6gt.cjs → as-row-actions-C78cvaf3.cjs} +2 -2
  34. package/dist/{as-row-actions-CeWBBGqh.mjs → as-row-actions-CpEMa5NU.mjs} +2 -2
  35. package/dist/as-row-actions.cjs +1 -1
  36. package/dist/as-row-actions.mjs +1 -1
  37. package/dist/{as-table-Cnw2fOqZ.mjs → as-table-DDyvnBFL.mjs} +3 -3
  38. package/dist/{as-table-actions-BpMiNFni.mjs → as-table-actions-D2-MBvoy.mjs} +2 -2
  39. package/dist/{as-table-actions-BK1Thy2G.cjs → as-table-actions-DtCjMMCI.cjs} +2 -2
  40. package/dist/as-table-actions.cjs +1 -1
  41. package/dist/as-table-actions.d.cts +1 -1
  42. package/dist/as-table-actions.d.mts +1 -1
  43. package/dist/as-table-actions.mjs +1 -1
  44. package/dist/{as-table-actions.vue-BGsx5eXP.d.cts → as-table-actions.vue-B7Q-JA3z.d.cts} +1 -1
  45. package/dist/{as-table-actions.vue-D8F_3yqr.d.mts → as-table-actions.vue-Bs1Jl1ep.d.mts} +1 -1
  46. package/dist/{as-table-base-VIz-B_6_.cjs → as-table-base-CHzULili.cjs} +2 -2
  47. package/dist/{as-table-base-D0k4k7k_.mjs → as-table-base-CSrtmIN2.mjs} +2 -2
  48. package/dist/{as-table-root-DRwM_vYa.cjs → as-table-root-CbV4ou8W.cjs} +29 -11
  49. package/dist/{as-table-root-Cd_g0Lhp.mjs → as-table-root-Dx4kfEHC.mjs} +29 -11
  50. package/dist/as-table-root.cjs +1 -1
  51. package/dist/as-table-root.d.cts +1 -1
  52. package/dist/as-table-root.d.mts +1 -1
  53. package/dist/as-table-root.mjs +1 -1
  54. package/dist/{as-table-root.vue-nV-IwWvZ.d.mts → as-table-root.vue-DYu3FV1k.d.mts} +16 -1
  55. package/dist/{as-table-root.vue-B2ckpJPG.d.cts → as-table-root.vue-RER9pv0K.d.cts} +16 -1
  56. package/dist/{as-table-status-BjRGGuhC.mjs → as-table-status-B11orhFu.mjs} +1 -1
  57. package/dist/{as-table-status-DWYoJIMC.cjs → as-table-status-DKXFSCzE.cjs} +1 -1
  58. package/dist/{as-table-DlDFxdXI.cjs → as-table-v42bV1ea.cjs} +3 -3
  59. package/dist/as-table.cjs +1 -1
  60. package/dist/as-table.d.cts +1 -1
  61. package/dist/as-table.d.mts +1 -1
  62. package/dist/as-table.mjs +1 -1
  63. package/dist/{as-table.vue-B4Wwmqta.d.mts → as-table.vue-CH7WH6qe.d.mts} +1 -1
  64. package/dist/{as-table.vue--uEtwfHg.d.cts → as-table.vue-vxuudXjo.d.cts} +1 -1
  65. package/dist/{as-window-table-CKIfo3M_.mjs → as-window-table-CDTjX7W5.mjs} +2 -2
  66. package/dist/{as-window-table-DE7_NyEP.cjs → as-window-table-DuwMCDUh.cjs} +2 -2
  67. package/dist/as-window-table.cjs +1 -1
  68. package/dist/as-window-table.d.cts +1 -1
  69. package/dist/as-window-table.d.mts +1 -1
  70. package/dist/as-window-table.mjs +1 -1
  71. package/dist/{as-window-table.vue-BZTBOCbt.d.mts → as-window-table.vue-7cJ3TUZX.d.mts} +1 -1
  72. package/dist/{as-window-table.vue-yCPd4eXJ.d.cts → as-window-table.vue-DXB5Qan7.d.cts} +1 -1
  73. package/dist/index.cjs +14 -14
  74. package/dist/index.d.cts +4 -4
  75. package/dist/index.d.mts +4 -4
  76. package/dist/index.mjs +14 -14
  77. package/dist/{use-table-state-C4JbonEZ.mjs → use-table-state-CuZ2OXoY.mjs} +7 -0
  78. package/dist/{use-table-state-MU-vuzui.cjs → use-table-state-DFQ30m-j.cjs} +7 -0
  79. package/package.json +7 -7
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
2
  let _atscript_ui = require("@atscript/ui");
3
3
  let vue = require("vue");
4
4
  let _atscript_db_client = require("@atscript/db-client");
@@ -1,4 +1,4 @@
1
- import { a as useTableContext, p as intentToScope } from "./use-table-state-C4JbonEZ.mjs";
1
+ import { a as useTableContext, p as intentToScope } from "./use-table-state-CuZ2OXoY.mjs";
2
2
  import { META_LABEL, UI_FORM_SUBMIT_TEXT, createFormData, createFormDef, getFieldMeta } from "@atscript/ui";
3
3
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, normalizeClass, openBlock, ref, renderList, toDisplayString, unref, useId, watch, withCtx } from "vue";
4
4
  import { formatIdentifier } from "@atscript/db-client";
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
2
  let vue = require("vue");
3
3
  let reka_ui = require("reka-ui");
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
- import { f as intentClass, l as ariaLabelFor } from "./use-table-state-C4JbonEZ.mjs";
1
+ import { f as intentClass, l as ariaLabelFor } from "./use-table-state-CuZ2OXoY.mjs";
2
2
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, defineComponent, normalizeClass, openBlock, renderList, renderSlot, toDisplayString, unref, useSlots, withCtx } from "vue";
3
3
  import { DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator } from "reka-ui";
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
- import { a as useTableContext } from "./use-table-state-C4JbonEZ.mjs";
1
+ import { a as useTableContext } from "./use-table-state-CuZ2OXoY.mjs";
2
2
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, guardReactiveProps, mergeModels, nextTick, normalizeClass, normalizeProps, openBlock, reactive, ref, renderList, renderSlot, shallowRef, toDisplayString, unref, useModel, vModelText, watch, withCtx, withDirectives, withModifiers } from "vue";
3
3
  import { arraysEqual, sortersEqual } from "@atscript/ui-table";
4
4
  import { DialogClose, DialogContent, DialogOverlay, DialogPortal, DialogRoot, DialogTitle, ListboxContent, ListboxFilter, ListboxItem, ListboxItemIndicator, ListboxRoot, TabsContent, TabsList, TabsRoot, TabsTrigger } from "reka-ui";
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
2
  let vue = require("vue");
3
3
  let _atscript_ui_table = require("@atscript/ui-table");
4
4
  let reka_ui = require("reka-ui");
@@ -1,2 +1,2 @@
1
- const require_as_config_dialog = require("./as-config-dialog-d2k7_l0U.cjs");
1
+ const require_as_config_dialog = require("./as-config-dialog-BCvtSxi6.cjs");
2
2
  module.exports = require_as_config_dialog.as_config_dialog_default;
@@ -1,2 +1,2 @@
1
- import { t as as_config_dialog_default } from "./as-config-dialog-vRklaKbi.mjs";
1
+ import { t as as_config_dialog_default } from "./as-config-dialog-BB6BDa1E.mjs";
2
2
  export { as_config_dialog_default as default };
@@ -1,4 +1,4 @@
1
- import { a as useTableContext } from "./use-table-state-C4JbonEZ.mjs";
1
+ import { a as useTableContext } from "./use-table-state-CuZ2OXoY.mjs";
2
2
  import { computed, createBlock, createElementVNode, createTextVNode, createVNode, defineComponent, normalizeClass, openBlock, toDisplayString, unref, withCtx } from "vue";
3
3
  import { AlertDialogContent, AlertDialogDescription, AlertDialogOverlay, AlertDialogPortal, AlertDialogRoot, AlertDialogTitle } from "reka-ui";
4
4
  //#region src/components/defaults/as-confirm-dialog.vue?vue&type=script&setup=true&lang.ts
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
2
  let vue = require("vue");
3
3
  let reka_ui = require("reka-ui");
4
4
  //#region src/components/defaults/as-confirm-dialog.vue?vue&type=script&setup=true&lang.ts
@@ -1,2 +1,2 @@
1
- const require_as_confirm_dialog = require("./as-confirm-dialog-BgpIEE2z.cjs");
1
+ const require_as_confirm_dialog = require("./as-confirm-dialog-Xtw2wE1X.cjs");
2
2
  module.exports = require_as_confirm_dialog.as_confirm_dialog_default;
@@ -1,2 +1,2 @@
1
- import { t as as_confirm_dialog_default } from "./as-confirm-dialog-BLh3Ju4-.mjs";
1
+ import { t as as_confirm_dialog_default } from "./as-confirm-dialog-DL0mCEeX.mjs";
2
2
  export { as_confirm_dialog_default as default };
@@ -1,9 +1,9 @@
1
- import { a as useTableContext, o as useTableContextOptional, r as provideTableContext, t as createStaticTableState } from "./use-table-state-C4JbonEZ.mjs";
2
- import { r as useTable } from "./as-filter-field-Bqvu2ASN.mjs";
3
- import { n as useDialogTabKeyboard, t as as_config_dialog_default } from "./as-config-dialog-vRklaKbi.mjs";
1
+ import { a as useTableContext, o as useTableContextOptional, r as provideTableContext, t as createStaticTableState } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { r as useTable } from "./as-filter-field-CkiRXHVx.mjs";
3
+ import { n as useDialogTabKeyboard, t as as_config_dialog_default } from "./as-config-dialog-BB6BDa1E.mjs";
4
4
  import { t as as_filter_input_default } from "./as-filter-input-P1i0CW2-.mjs";
5
- import { t as as_window_table_default } from "./as-window-table-CKIfo3M_.mjs";
6
- import { t as as_filters_default } from "./as-filters-Bxa9ZEMm.mjs";
5
+ import { t as as_window_table_default } from "./as-window-table-CDTjX7W5.mjs";
6
+ import { t as as_filters_default } from "./as-filters-BJM-NjUn.mjs";
7
7
  import { resolveValueHelp, valueHelpDictPaths } from "@atscript/ui";
8
8
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeModels, normalizeClass, normalizeStyle, onMounted, openBlock, ref, renderList, shallowRef, toDisplayString, unref, useModel, watch, withCtx } from "vue";
9
9
  import { columnFilterType, conditionLabel, conditionsForType, dateShortcuts, defaultCondition, filledFilterCount, formatFilterCondition, isFilled, isSimpleEq, sameColumnSet } from "@atscript/ui-table";
@@ -1,9 +1,9 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_filter_field = require("./as-filter-field-B_tYzvvl.cjs");
3
- const require_as_config_dialog = require("./as-config-dialog-d2k7_l0U.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_filter_field = require("./as-filter-field-jL7cnKUR.cjs");
3
+ const require_as_config_dialog = require("./as-config-dialog-BCvtSxi6.cjs");
4
4
  const require_as_filter_input = require("./as-filter-input--nr72iwX.cjs");
5
- const require_as_window_table = require("./as-window-table-DE7_NyEP.cjs");
6
- const require_as_filters = require("./as-filters-xRT2qv56.cjs");
5
+ const require_as_window_table = require("./as-window-table-DuwMCDUh.cjs");
6
+ const require_as_filters = require("./as-filters-BFpZKtAU.cjs");
7
7
  let _atscript_ui = require("@atscript/ui");
8
8
  let vue = require("vue");
9
9
  let _atscript_ui_table = require("@atscript/ui-table");
@@ -1,2 +1,2 @@
1
- const require_as_filter_dialog = require("./as-filter-dialog-DcGvIV3h.cjs");
1
+ const require_as_filter_dialog = require("./as-filter-dialog-O62-CnIQ.cjs");
2
2
  module.exports = require_as_filter_dialog.as_filter_dialog_default;
@@ -1,2 +1,2 @@
1
- import { t as as_filter_dialog_default } from "./as-filter-dialog-C0HMpUPT.mjs";
1
+ import { t as as_filter_dialog_default } from "./as-filter-dialog-KGyPqr2P.mjs";
2
2
  export { as_filter_dialog_default as default };
@@ -1,6 +1,6 @@
1
- import { a as useTableContext, n as createTableState, r as provideTableContext, s as DEFAULT_AVAILABLE_ASPECTS } from "./use-table-state-C4JbonEZ.mjs";
2
- import { s as useTableSelection } from "./as-table-status-BjRGGuhC.mjs";
3
- import { t as as_table_base_default } from "./as-table-base-D0k4k7k_.mjs";
1
+ import { a as useTableContext, n as createTableState, r as provideTableContext, s as DEFAULT_AVAILABLE_ASPECTS } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { s as useTableSelection } from "./as-table-status-B11orhFu.mjs";
3
+ import { t as as_table_base_default } from "./as-table-base-CSrtmIN2.mjs";
4
4
  import { ValueHelpClient, createTableDef, getMetaEntry, resetMetaCache, resolveValueHelp, valueHelpDictPaths } from "@atscript/ui";
5
5
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, inject, isRef, nextTick, onBeforeUnmount, openBlock, ref, renderList, shallowRef, toDisplayString, unref, useId, watch, withCtx, withKeys, withModifiers } from "vue";
6
6
  import { PresetsClient, STANDARD_PRESET_ID, arraysEqual, columnFilterType, debounce, deserializeDraft, formatFilterCondition, isAuthError, isEmptyDraft, isFilled, isSimpleEq, isSystemPresetId, parseFilterInput, resolveSystemPresets, serializeDraft, stableStringify } from "@atscript/ui-table";
@@ -398,6 +398,7 @@ function useTable(url, opts) {
398
398
  fn: opts?.queryFn,
399
399
  forceFilters: opts?.forceFilters,
400
400
  forceSorters: opts?.forceSorters,
401
+ alwaysSelected: opts?.alwaysSelected,
401
402
  blockQuery: opts?.blockQuery,
402
403
  queryOnMount: opts?.queryOnMount,
403
404
  urlQueryReady: opts?.urlQueryReady,
@@ -1,6 +1,6 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_table_status = require("./as-table-status-DWYoJIMC.cjs");
3
- const require_as_table_base = require("./as-table-base-VIz-B_6_.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_table_status = require("./as-table-status-DKXFSCzE.cjs");
3
+ const require_as_table_base = require("./as-table-base-CHzULili.cjs");
4
4
  let _atscript_ui = require("@atscript/ui");
5
5
  let vue = require("vue");
6
6
  let _atscript_ui_table = require("@atscript/ui-table");
@@ -398,6 +398,7 @@ function useTable(url, opts) {
398
398
  fn: opts?.queryFn,
399
399
  forceFilters: opts?.forceFilters,
400
400
  forceSorters: opts?.forceSorters,
401
+ alwaysSelected: opts?.alwaysSelected,
401
402
  blockQuery: opts?.blockQuery,
402
403
  queryOnMount: opts?.queryOnMount,
403
404
  urlQueryReady: opts?.urlQueryReady,
@@ -1,2 +1,2 @@
1
- const require_as_filter_field = require("./as-filter-field-B_tYzvvl.cjs");
1
+ const require_as_filter_field = require("./as-filter-field-jL7cnKUR.cjs");
2
2
  module.exports = require_as_filter_field.as_filter_field_default;
@@ -1,2 +1,2 @@
1
- import { t as as_filter_field_default } from "./as-filter-field-Bqvu2ASN.mjs";
1
+ import { t as as_filter_field_default } from "./as-filter-field-CkiRXHVx.mjs";
2
2
  export { as_filter_field_default as default };
@@ -1,5 +1,5 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_filter_field = require("./as-filter-field-B_tYzvvl.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_filter_field = require("./as-filter-field-jL7cnKUR.cjs");
3
3
  let vue = require("vue");
4
4
  //#endregion
5
5
  //#region src/components/as-filters.vue
@@ -1,5 +1,5 @@
1
- import { a as useTableContext } from "./use-table-state-C4JbonEZ.mjs";
2
- import { t as as_filter_field_default } from "./as-filter-field-Bqvu2ASN.mjs";
1
+ import { a as useTableContext } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { t as as_filter_field_default } from "./as-filter-field-CkiRXHVx.mjs";
3
3
  import { Fragment, computed, createBlock, createElementBlock, defineComponent, mergeProps, openBlock, renderList } from "vue";
4
4
  //#endregion
5
5
  //#region src/components/as-filters.vue
@@ -1,2 +1,2 @@
1
- const require_as_filters = require("./as-filters-xRT2qv56.cjs");
1
+ const require_as_filters = require("./as-filters-BFpZKtAU.cjs");
2
2
  module.exports = require_as_filters.as_filters_default;
@@ -1,2 +1,2 @@
1
- import { t as as_filters_default } from "./as-filters-Bxa9ZEMm.mjs";
1
+ import { t as as_filters_default } from "./as-filters-BJM-NjUn.mjs";
2
2
  export { as_filters_default as default };
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
2
  const require_preset_aspect_display = require("./preset-aspect-display-y8aal_EF.cjs");
3
3
  let vue = require("vue");
4
4
  let _atscript_ui_table = require("@atscript/ui-table");
@@ -1,4 +1,4 @@
1
- import { a as useTableContext } from "./use-table-state-C4JbonEZ.mjs";
1
+ import { a as useTableContext } from "./use-table-state-CuZ2OXoY.mjs";
2
2
  import { a as readPresetLabel, i as ownerNameOf, n as ASPECT_LABELS, r as aspectsOf, t as ASPECT_ICONS } from "./preset-aspect-display-BYeiSgcc.mjs";
3
3
  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";
4
4
  import { isSystemPresetId, setsEqual } from "@atscript/ui-table";
@@ -1,2 +1,2 @@
1
- const require_as_preset_dialog = require("./as-preset-dialog-BaTfwMnh.cjs");
1
+ const require_as_preset_dialog = require("./as-preset-dialog-1Xl8DIiN.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-BdDRgwf_.mjs";
1
+ import { t as as_preset_dialog_default } from "./as-preset-dialog-DXbqMVI1.mjs";
2
2
  export { as_preset_dialog_default as default };
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
2
  const require_preset_aspect_display = require("./preset-aspect-display-y8aal_EF.cjs");
3
3
  let vue = require("vue");
4
4
  let _atscript_ui_table = require("@atscript/ui-table");
@@ -1,4 +1,4 @@
1
- import { a as useTableContext } from "./use-table-state-C4JbonEZ.mjs";
1
+ import { a as useTableContext } from "./use-table-state-CuZ2OXoY.mjs";
2
2
  import { a as readPresetLabel, i as ownerNameOf, n as ASPECT_LABELS, r as aspectsOf, t as ASPECT_ICONS } from "./preset-aspect-display-BYeiSgcc.mjs";
3
3
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, nextTick, normalizeClass, onScopeDispose, openBlock, ref, renderList, toDisplayString, unref, vModelCheckbox, vModelText, watch, withCtx, withDirectives, withKeys, withModifiers } from "vue";
4
4
  import { isSystemPresetId } from "@atscript/ui-table";
@@ -1,2 +1,2 @@
1
- const require_as_preset_picker = require("./as-preset-picker-Ce3crTQy.cjs");
1
+ const require_as_preset_picker = require("./as-preset-picker-CkaaKzYB.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-BQbNEiy9.mjs";
1
+ import { t as as_preset_picker_default } from "./as-preset-picker-DJTF47_V.mjs";
2
2
  export { as_preset_picker_default as default };
@@ -1,5 +1,5 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_action_menu_content = require("./as-action-menu-content-CyUfBrWH.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_action_menu_content = require("./as-action-menu-content-CSPPMACR.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 { a as useTableContext, c as applyRowGate, d as extractIdentifier, f as intentClass, l as ariaLabelFor, m as triggerAction } from "./use-table-state-C4JbonEZ.mjs";
2
- import { t as as_action_menu_content_default } from "./as-action-menu-content-CXsdPn42.mjs";
1
+ import { a as useTableContext, c as applyRowGate, d as extractIdentifier, f as intentClass, l as ariaLabelFor, m as triggerAction } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { t as as_action_menu_content_default } from "./as-action-menu-content-DXWuttt_.mjs";
3
3
  import { Fragment, computed, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, normalizeClass, openBlock, 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-B6Kob6gt.cjs");
1
+ const require_as_row_actions = require("./as-row-actions-C78cvaf3.cjs");
2
2
  module.exports = require_as_row_actions.as_row_actions_default;
@@ -1,2 +1,2 @@
1
- import { t as as_row_actions_default } from "./as-row-actions-CeWBBGqh.mjs";
1
+ import { t as as_row_actions_default } from "./as-row-actions-CpEMa5NU.mjs";
2
2
  export { as_row_actions_default as default };
@@ -1,7 +1,7 @@
1
- import { a as useTableContext, g as ROW_ACTIONS_TYPE, h as ROW_ACTIONS_PATH, i as useRegisterMainActionListener } from "./use-table-state-C4JbonEZ.mjs";
2
- import { o as useSelectModeReset } from "./as-table-status-BjRGGuhC.mjs";
1
+ import { a as useTableContext, g as ROW_ACTIONS_TYPE, h as ROW_ACTIONS_PATH, i as useRegisterMainActionListener } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { o as useSelectModeReset } from "./as-table-status-B11orhFu.mjs";
3
3
  import { n as useHasEmitListener, t as useTableColumnHandlers } from "./use-table-column-handlers-t6xi1yCE.mjs";
4
- import { t as as_table_base_default } from "./as-table-base-D0k4k7k_.mjs";
4
+ import { t as as_table_base_default } from "./as-table-base-CSrtmIN2.mjs";
5
5
  import { computed, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, guardReactiveProps, normalizeProps, openBlock, renderList, renderSlot, unref, watch, withCtx } from "vue";
6
6
  import { rowsToPks } from "@atscript/ui-table";
7
7
  //#region src/components/as-table.vue?vue&type=script&setup=true&lang.ts
@@ -1,5 +1,5 @@
1
- import { a as useTableContext, c as applyRowGate, f as intentClass, l as ariaLabelFor, m as triggerAction, u as collectIdentifiers } from "./use-table-state-C4JbonEZ.mjs";
2
- import { t as as_action_menu_content_default } from "./as-action-menu-content-CXsdPn42.mjs";
1
+ import { a as useTableContext, c as applyRowGate, f as intentClass, l as ariaLabelFor, m as triggerAction, u as collectIdentifiers } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { t as as_action_menu_content_default } from "./as-action-menu-content-DXWuttt_.mjs";
3
3
  import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, normalizeClass, openBlock, renderSlot, toDisplayString, unref, withCtx } from "vue";
4
4
  import { DropdownMenuPortal, DropdownMenuRoot, DropdownMenuTrigger } from "reka-ui";
5
5
  //#region src/components/as-table-actions.vue?vue&type=script&setup=true&lang.ts
@@ -1,5 +1,5 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_action_menu_content = require("./as-action-menu-content-CyUfBrWH.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_action_menu_content = require("./as-action-menu-content-CSPPMACR.cjs");
3
3
  let vue = require("vue");
4
4
  let reka_ui = require("reka-ui");
5
5
  //#region src/components/as-table-actions.vue?vue&type=script&setup=true&lang.ts
@@ -1,2 +1,2 @@
1
- const require_as_table_actions = require("./as-table-actions-BK1Thy2G.cjs");
1
+ const require_as_table_actions = require("./as-table-actions-DtCjMMCI.cjs");
2
2
  module.exports = require_as_table_actions.as_table_actions_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-actions.vue-BGsx5eXP.cjs";
1
+ import { t as _default } from "./as-table-actions.vue-B7Q-JA3z.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-actions.vue-D8F_3yqr.mjs";
1
+ import { t as _default } from "./as-table-actions.vue-Bs1Jl1ep.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_table_actions_default } from "./as-table-actions-BpMiNFni.mjs";
1
+ import { t as as_table_actions_default } from "./as-table-actions-D2-MBvoy.mjs";
2
2
  export { as_table_actions_default as default };
@@ -18,7 +18,7 @@ declare var __VLS_1: {
18
18
  defaultAction: TVueTableActionInfo | undefined;
19
19
  otherActions: TVueTableActionInfo[];
20
20
  trailingRowActions: TVueTableActionInfo[];
21
- level: "rows" | "table" | "row";
21
+ level: "table" | "rows" | "row";
22
22
  ids: Record<string, unknown>[];
23
23
  invoke: typeof invokeWith;
24
24
  }, __VLS_3: {
@@ -18,7 +18,7 @@ declare var __VLS_1: {
18
18
  defaultAction: TVueTableActionInfo | undefined;
19
19
  otherActions: TVueTableActionInfo[];
20
20
  trailingRowActions: TVueTableActionInfo[];
21
- level: "rows" | "table" | "row";
21
+ level: "table" | "rows" | "row";
22
22
  ids: Record<string, unknown>[];
23
23
  invoke: typeof invokeWith;
24
24
  }, __VLS_3: {
@@ -1,5 +1,5 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_table_status = require("./as-table-status-DWYoJIMC.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_table_status = require("./as-table-status-DKXFSCzE.cjs");
3
3
  const require_get_cell_value = require("./get-cell-value-CZSVfDLg.cjs");
4
4
  let vue = require("vue");
5
5
  let _atscript_ui_table = require("@atscript/ui-table");
@@ -1,5 +1,5 @@
1
- import { o as useTableContextOptional } from "./use-table-state-C4JbonEZ.mjs";
2
- import { a as useCellResolver, i as useCellComponents, n as as_table_header_default, t as as_table_status_default } from "./as-table-status-BjRGGuhC.mjs";
1
+ import { o as useTableContextOptional } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { a as useCellResolver, i as useCellComponents, n as as_table_header_default, t as as_table_status_default } from "./as-table-status-B11orhFu.mjs";
3
3
  import { t as getCellValue } from "./get-cell-value-DiH84HKL.mjs";
4
4
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, guardReactiveProps, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onMounted, openBlock, ref, renderList, renderSlot, resolveDynamicComponent, unref, useSlots, watch, withCtx } from "vue";
5
5
  import { DEFAULT_ROW_HEIGHT_PX, filledFilterCount } from "@atscript/ui-table";
@@ -1,6 +1,6 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_filter_field = require("./as-filter-field-B_tYzvvl.cjs");
3
- const require_as_filter_dialog = require("./as-filter-dialog-DcGvIV3h.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_filter_field = require("./as-filter-field-jL7cnKUR.cjs");
3
+ const require_as_filter_dialog = require("./as-filter-dialog-O62-CnIQ.cjs");
4
4
  const require_use_table_column_handlers = require("./use-table-column-handlers-CGYAY2xH.cjs");
5
5
  require("./as-cell-array-CXeZzZqt.cjs");
6
6
  require("./as-cell-date-CTrvxS1h.cjs");
@@ -8,13 +8,13 @@ require("./as-cell-json-DvHvQ6IL.cjs");
8
8
  require("./as-cell-number-0_WrSCzu.cjs");
9
9
  require("./as-cell-union-CFAI0utz.cjs");
10
10
  require("./as-column-menu-CH9Htz0Q.cjs");
11
- const require_as_config_dialog = require("./as-config-dialog-d2k7_l0U.cjs");
12
- const require_as_confirm_dialog = require("./as-confirm-dialog-BgpIEE2z.cjs");
11
+ require("./as-config-dialog-BCvtSxi6.cjs");
12
+ const require_as_confirm_dialog = require("./as-confirm-dialog-Xtw2wE1X.cjs");
13
13
  require("./as-filter-input--nr72iwX.cjs");
14
14
  require("./as-table-cell-value-CuxRtFn9.cjs");
15
15
  require("./as-table-header-cell-C3zeZUZo.cjs");
16
- const require_as_preset_dialog = require("./as-preset-dialog-BaTfwMnh.cjs");
17
- require("./as-row-actions-B6Kob6gt.cjs");
16
+ require("./as-preset-dialog-1Xl8DIiN.cjs");
17
+ require("./as-row-actions-C78cvaf3.cjs");
18
18
  let vue = require("vue");
19
19
  //#endregion
20
20
  //#region src/components/as-table-root.vue
@@ -61,6 +61,10 @@ var as_table_root_default = /* @__PURE__ */ (0, vue.defineComponent)({
61
61
  type: Array,
62
62
  required: false
63
63
  },
64
+ alwaysSelected: {
65
+ type: Array,
66
+ required: false
67
+ },
64
68
  queryOnMount: {
65
69
  type: Boolean,
66
70
  required: false,
@@ -145,6 +149,9 @@ var as_table_root_default = /* @__PURE__ */ (0, vue.defineComponent)({
145
149
  "update:urlQuery"
146
150
  ]),
147
151
  setup(__props, { expose: __expose, emit: __emit }) {
152
+ const AsConfigDialog = (0, vue.defineAsyncComponent)(() => Promise.resolve().then(() => require("./as-config-dialog.cjs")));
153
+ const AsFilterDialog = (0, vue.defineAsyncComponent)(() => Promise.resolve().then(() => require("./as-filter-dialog.cjs")));
154
+ const AsPresetDialog = (0, vue.defineAsyncComponent)(() => Promise.resolve().then(() => require("./as-preset-dialog.cjs")));
148
155
  const LazyActionFormDialog = (0, vue.defineAsyncComponent)(() => Promise.resolve().then(() => require("./as-action-form-dialog.cjs")));
149
156
  const props = __props;
150
157
  const emit = __emit;
@@ -167,6 +174,7 @@ var as_table_root_default = /* @__PURE__ */ (0, vue.defineComponent)({
167
174
  selectionPersistence: props.selectionPersistence,
168
175
  forceFilters: props.forceFilters,
169
176
  forceSorters: props.forceSorters,
177
+ alwaysSelected: props.alwaysSelected,
170
178
  queryFn: props.queryFn,
171
179
  queryOnMount: props.queryOnMount,
172
180
  blockQuery: props.blockQuery,
@@ -203,6 +211,16 @@ var as_table_root_default = /* @__PURE__ */ (0, vue.defineComponent)({
203
211
  }, { immediate: true });
204
212
  require_use_table_state.useRegisterMainActionListener(state, (req) => emit("main-action", req.row, req.absIndex, req.event), require_use_table_column_handlers.useHasEmitListener("onMainAction"));
205
213
  const navBridge = require_as_filter_dialog.useTableNavBridge(state);
214
+ function latchOpened(source) {
215
+ const latched = (0, vue.ref)(false);
216
+ (0, vue.watch)(source, (v) => {
217
+ if (v) latched.value = true;
218
+ });
219
+ return latched;
220
+ }
221
+ const everOpenedConfig = latchOpened(() => state.configDialogOpen.value);
222
+ const everOpenedFilter = latchOpened(() => state.filterDialogColumn.value);
223
+ const everOpenedPreset = latchOpened(() => state.preset.dialogOpen.value);
206
224
  const hasInputFormActions = (0, vue.computed)(() => {
207
225
  const a = state.tableDef.value?.actions;
208
226
  if (!a) return false;
@@ -255,11 +273,11 @@ var as_table_root_default = /* @__PURE__ */ (0, vue.defineComponent)({
255
273
  actions: (0, vue.unref)(state).actions,
256
274
  prompt: (0, vue.unref)(state).prompt
257
275
  }),
258
- ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.filterDialog ?? (0, vue.unref)(require_as_filter_dialog.as_filter_dialog_default)))),
259
- ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.configDialog ?? (0, vue.unref)(require_as_config_dialog.as_config_dialog_default)))),
276
+ (0, vue.unref)(everOpenedFilter) || props.controls?.filterDialog ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.filterDialog ?? (0, vue.unref)(AsFilterDialog)), { key: 0 })) : (0, vue.createCommentVNode)("v-if", true),
277
+ (0, vue.unref)(everOpenedConfig) || props.controls?.configDialog ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.configDialog ?? (0, vue.unref)(AsConfigDialog)), { key: 1 })) : (0, vue.createCommentVNode)("v-if", true),
260
278
  ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.confirmDialog ?? (0, vue.unref)(require_as_confirm_dialog.as_confirm_dialog_default)))),
261
- (0, vue.unref)(state).preset.available.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.presetDialog ?? (0, vue.unref)(require_as_preset_dialog.as_preset_dialog_default)), { key: 0 })) : (0, vue.createCommentVNode)("v-if", true),
262
- hasInputFormActions.value || props.controls?.actionFormDialog ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.actionFormDialog ?? (0, vue.unref)(LazyActionFormDialog)), { key: 1 })) : (0, vue.createCommentVNode)("v-if", true)
279
+ (0, vue.unref)(state).preset.available.value && ((0, vue.unref)(everOpenedPreset) || props.controls?.presetDialog) ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.presetDialog ?? (0, vue.unref)(AsPresetDialog)), { key: 2 })) : (0, vue.createCommentVNode)("v-if", true),
280
+ hasInputFormActions.value || props.controls?.actionFormDialog ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(props.controls?.actionFormDialog ?? (0, vue.unref)(LazyActionFormDialog)), { key: 3 })) : (0, vue.createCommentVNode)("v-if", true)
263
281
  ], 64);
264
282
  };
265
283
  }
@@ -1,6 +1,6 @@
1
- import { i as useRegisterMainActionListener } from "./use-table-state-C4JbonEZ.mjs";
2
- import { r as useTable } from "./as-filter-field-Bqvu2ASN.mjs";
3
- import { n as useTableNavBridge, t as as_filter_dialog_default } from "./as-filter-dialog-C0HMpUPT.mjs";
1
+ import { i as useRegisterMainActionListener } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { r as useTable } from "./as-filter-field-CkiRXHVx.mjs";
3
+ import { n as useTableNavBridge } from "./as-filter-dialog-KGyPqr2P.mjs";
4
4
  import { n as useHasEmitListener } from "./use-table-column-handlers-t6xi1yCE.mjs";
5
5
  import "./as-cell-array-DOQKR6t5.mjs";
6
6
  import "./as-cell-date-Cq49RHmL.mjs";
@@ -8,13 +8,13 @@ import "./as-cell-json-BynWIs1d.mjs";
8
8
  import "./as-cell-number-Bc1C97Vg.mjs";
9
9
  import "./as-cell-union-C1w3B38J.mjs";
10
10
  import "./as-column-menu-DCfhorMP.mjs";
11
- import { t as as_config_dialog_default } from "./as-config-dialog-vRklaKbi.mjs";
12
- import { t as as_confirm_dialog_default } from "./as-confirm-dialog-BLh3Ju4-.mjs";
11
+ import "./as-config-dialog-BB6BDa1E.mjs";
12
+ import { t as as_confirm_dialog_default } from "./as-confirm-dialog-DL0mCEeX.mjs";
13
13
  import "./as-filter-input-P1i0CW2-.mjs";
14
14
  import "./as-table-cell-value-B1CiJYFn.mjs";
15
15
  import "./as-table-header-cell-CBn_ioCe.mjs";
16
- import { t as as_preset_dialog_default } from "./as-preset-dialog-BdDRgwf_.mjs";
17
- import "./as-row-actions-CeWBBGqh.mjs";
16
+ import "./as-preset-dialog-DXbqMVI1.mjs";
17
+ import "./as-row-actions-CpEMa5NU.mjs";
18
18
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, defineAsyncComponent, defineComponent, mergeModels, openBlock, ref, renderSlot, resolveDynamicComponent, unref, useModel, watch } from "vue";
19
19
  //#endregion
20
20
  //#region src/components/as-table-root.vue
@@ -61,6 +61,10 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
61
61
  type: Array,
62
62
  required: false
63
63
  },
64
+ alwaysSelected: {
65
+ type: Array,
66
+ required: false
67
+ },
64
68
  queryOnMount: {
65
69
  type: Boolean,
66
70
  required: false,
@@ -145,6 +149,9 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
145
149
  "update:urlQuery"
146
150
  ]),
147
151
  setup(__props, { expose: __expose, emit: __emit }) {
152
+ const AsConfigDialog = defineAsyncComponent(() => import("./as-config-dialog.mjs"));
153
+ const AsFilterDialog = defineAsyncComponent(() => import("./as-filter-dialog.mjs"));
154
+ const AsPresetDialog = defineAsyncComponent(() => import("./as-preset-dialog.mjs"));
148
155
  const LazyActionFormDialog = defineAsyncComponent(() => import("./as-action-form-dialog.mjs"));
149
156
  const props = __props;
150
157
  const emit = __emit;
@@ -167,6 +174,7 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
167
174
  selectionPersistence: props.selectionPersistence,
168
175
  forceFilters: props.forceFilters,
169
176
  forceSorters: props.forceSorters,
177
+ alwaysSelected: props.alwaysSelected,
170
178
  queryFn: props.queryFn,
171
179
  queryOnMount: props.queryOnMount,
172
180
  blockQuery: props.blockQuery,
@@ -203,6 +211,16 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
203
211
  }, { immediate: true });
204
212
  useRegisterMainActionListener(state, (req) => emit("main-action", req.row, req.absIndex, req.event), useHasEmitListener("onMainAction"));
205
213
  const navBridge = useTableNavBridge(state);
214
+ function latchOpened(source) {
215
+ const latched = ref(false);
216
+ watch(source, (v) => {
217
+ if (v) latched.value = true;
218
+ });
219
+ return latched;
220
+ }
221
+ const everOpenedConfig = latchOpened(() => state.configDialogOpen.value);
222
+ const everOpenedFilter = latchOpened(() => state.filterDialogColumn.value);
223
+ const everOpenedPreset = latchOpened(() => state.preset.dialogOpen.value);
206
224
  const hasInputFormActions = computed(() => {
207
225
  const a = state.tableDef.value?.actions;
208
226
  if (!a) return false;
@@ -255,11 +273,11 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
255
273
  actions: unref(state).actions,
256
274
  prompt: unref(state).prompt
257
275
  }),
258
- (openBlock(), createBlock(resolveDynamicComponent(props.controls?.filterDialog ?? unref(as_filter_dialog_default)))),
259
- (openBlock(), createBlock(resolveDynamicComponent(props.controls?.configDialog ?? unref(as_config_dialog_default)))),
276
+ unref(everOpenedFilter) || props.controls?.filterDialog ? (openBlock(), createBlock(resolveDynamicComponent(props.controls?.filterDialog ?? unref(AsFilterDialog)), { key: 0 })) : createCommentVNode("v-if", true),
277
+ unref(everOpenedConfig) || props.controls?.configDialog ? (openBlock(), createBlock(resolveDynamicComponent(props.controls?.configDialog ?? unref(AsConfigDialog)), { key: 1 })) : createCommentVNode("v-if", true),
260
278
  (openBlock(), createBlock(resolveDynamicComponent(props.controls?.confirmDialog ?? unref(as_confirm_dialog_default)))),
261
- unref(state).preset.available.value ? (openBlock(), createBlock(resolveDynamicComponent(props.controls?.presetDialog ?? unref(as_preset_dialog_default)), { key: 0 })) : createCommentVNode("v-if", true),
262
- hasInputFormActions.value || props.controls?.actionFormDialog ? (openBlock(), createBlock(resolveDynamicComponent(props.controls?.actionFormDialog ?? unref(LazyActionFormDialog)), { key: 1 })) : createCommentVNode("v-if", true)
279
+ unref(state).preset.available.value && (unref(everOpenedPreset) || props.controls?.presetDialog) ? (openBlock(), createBlock(resolveDynamicComponent(props.controls?.presetDialog ?? unref(AsPresetDialog)), { key: 2 })) : createCommentVNode("v-if", true),
280
+ hasInputFormActions.value || props.controls?.actionFormDialog ? (openBlock(), createBlock(resolveDynamicComponent(props.controls?.actionFormDialog ?? unref(LazyActionFormDialog)), { key: 3 })) : createCommentVNode("v-if", true)
263
281
  ], 64);
264
282
  };
265
283
  }
@@ -1,2 +1,2 @@
1
- const require_as_table_root = require("./as-table-root-DRwM_vYa.cjs");
1
+ const require_as_table_root = require("./as-table-root-CbV4ou8W.cjs");
2
2
  module.exports = require_as_table_root.as_table_root_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-root.vue-B2ckpJPG.cjs";
1
+ import { t as _default } from "./as-table-root.vue-RER9pv0K.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-root.vue-nV-IwWvZ.mjs";
1
+ import { t as _default } from "./as-table-root.vue-DYu3FV1k.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_table_root_default } from "./as-table-root-Cd_g0Lhp.mjs";
1
+ import { t as as_table_root_default } from "./as-table-root-Dx4kfEHC.mjs";
2
2
  export { as_table_root_default as default };
@@ -201,6 +201,11 @@ interface TableQueryOptions {
201
201
  forceFilters?: FilterExpr;
202
202
  /** Always-applied sorters (prepended before user sorters). */
203
203
  forceSorters?: SortControl[];
204
+ /**
205
+ * Leaf field paths always added to `$select` (deduped, gated by available
206
+ * meta), regardless of which columns are visible. Additive only.
207
+ */
208
+ alwaysSelected?: string[];
204
209
  /** When true, all triggers (query/queryNext/loadRange) early-return. */
205
210
  blockQuery?: boolean;
206
211
  /** Auto-query when metadata loads (default: true). */
@@ -376,6 +381,11 @@ interface UseTableOptions {
376
381
  forceFilters?: FilterExpr;
377
382
  /** Always-applied sorters (prepended before user sorters). */
378
383
  forceSorters?: SortControl[];
384
+ /**
385
+ * Leaf field paths always added to `$select` (deduped, gated by available
386
+ * meta), regardless of which columns are visible. Additive only.
387
+ */
388
+ alwaysSelected?: string[];
379
389
  /** Override the default query function. */
380
390
  queryFn?: QueryFn;
381
391
  /** Auto-query when metadata loads (default: true). */
@@ -2133,6 +2143,11 @@ type __VLS_Props = {
2133
2143
  limit?: number;
2134
2144
  forceFilters?: FilterExpr;
2135
2145
  forceSorters?: SortControl[];
2146
+ /**
2147
+ * Leaf field paths always added to `$select` (deduped, gated by available
2148
+ * meta), regardless of which columns are visible. Additive only.
2149
+ */
2150
+ alwaysSelected?: string[];
2136
2151
  queryOnMount?: boolean;
2137
2152
  queryFn?: (query: Uniquery, page: number, size: number) => Promise<PageResult<Record<string, unknown>>>;
2138
2153
  blockQuery?: boolean;
@@ -2234,13 +2249,13 @@ declare const __VLS_base: vue.DefineComponent<__VLS_PublicProps, {
2234
2249
  action: (action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?: KeyboardEvent | MouseEvent | undefined) => any;
2235
2250
  "main-action": (row: Record<string, unknown>, absIndex: number, event: KeyboardEvent | MouseEvent) => any;
2236
2251
  }, string, vue.PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
2252
+ onAction?: ((action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?: KeyboardEvent | MouseEvent | undefined) => any) | undefined;
2237
2253
  "onUpdate:filterFields"?: ((value: string[]) => any) | undefined;
2238
2254
  "onUpdate:columnNames"?: ((value: string[]) => any) | undefined;
2239
2255
  "onUpdate:columnWidths"?: ((value: ColumnWidthsMap) => any) | undefined;
2240
2256
  "onUpdate:sorters"?: ((value: SortControl[]) => any) | undefined;
2241
2257
  "onUpdate:selectedRows"?: ((value: unknown[]) => any) | undefined;
2242
2258
  "onUpdate:urlQuery"?: ((value: string | undefined) => any) | undefined;
2243
- onAction?: ((action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?: KeyboardEvent | MouseEvent | undefined) => any) | undefined;
2244
2259
  "onMain-action"?: ((row: Record<string, unknown>, absIndex: number, event: KeyboardEvent | MouseEvent) => any) | undefined;
2245
2260
  }>, {
2246
2261
  queryOnMount: boolean;
@@ -201,6 +201,11 @@ interface TableQueryOptions {
201
201
  forceFilters?: FilterExpr;
202
202
  /** Always-applied sorters (prepended before user sorters). */
203
203
  forceSorters?: SortControl[];
204
+ /**
205
+ * Leaf field paths always added to `$select` (deduped, gated by available
206
+ * meta), regardless of which columns are visible. Additive only.
207
+ */
208
+ alwaysSelected?: string[];
204
209
  /** When true, all triggers (query/queryNext/loadRange) early-return. */
205
210
  blockQuery?: boolean;
206
211
  /** Auto-query when metadata loads (default: true). */
@@ -376,6 +381,11 @@ interface UseTableOptions {
376
381
  forceFilters?: FilterExpr;
377
382
  /** Always-applied sorters (prepended before user sorters). */
378
383
  forceSorters?: SortControl[];
384
+ /**
385
+ * Leaf field paths always added to `$select` (deduped, gated by available
386
+ * meta), regardless of which columns are visible. Additive only.
387
+ */
388
+ alwaysSelected?: string[];
379
389
  /** Override the default query function. */
380
390
  queryFn?: QueryFn;
381
391
  /** Auto-query when metadata loads (default: true). */
@@ -2133,6 +2143,11 @@ type __VLS_Props = {
2133
2143
  limit?: number;
2134
2144
  forceFilters?: FilterExpr;
2135
2145
  forceSorters?: SortControl[];
2146
+ /**
2147
+ * Leaf field paths always added to `$select` (deduped, gated by available
2148
+ * meta), regardless of which columns are visible. Additive only.
2149
+ */
2150
+ alwaysSelected?: string[];
2136
2151
  queryOnMount?: boolean;
2137
2152
  queryFn?: (query: Uniquery, page: number, size: number) => Promise<PageResult<Record<string, unknown>>>;
2138
2153
  blockQuery?: boolean;
@@ -2234,13 +2249,13 @@ declare const __VLS_base: vue.DefineComponent<__VLS_PublicProps, {
2234
2249
  action: (action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?: KeyboardEvent | MouseEvent | undefined) => any;
2235
2250
  "main-action": (row: Record<string, unknown>, absIndex: number, event: KeyboardEvent | MouseEvent) => any;
2236
2251
  }, string, vue.PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
2252
+ onAction?: ((action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?: KeyboardEvent | MouseEvent | undefined) => any) | undefined;
2237
2253
  "onUpdate:filterFields"?: ((value: string[]) => any) | undefined;
2238
2254
  "onUpdate:columnNames"?: ((value: string[]) => any) | undefined;
2239
2255
  "onUpdate:columnWidths"?: ((value: ColumnWidthsMap) => any) | undefined;
2240
2256
  "onUpdate:sorters"?: ((value: SortControl[]) => any) | undefined;
2241
2257
  "onUpdate:selectedRows"?: ((value: unknown[]) => any) | undefined;
2242
2258
  "onUpdate:urlQuery"?: ((value: string | undefined) => any) | undefined;
2243
- onAction?: ((action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?: KeyboardEvent | MouseEvent | undefined) => any) | undefined;
2244
2259
  "onMain-action"?: ((row: Record<string, unknown>, absIndex: number, event: KeyboardEvent | MouseEvent) => any) | undefined;
2245
2260
  }>, {
2246
2261
  queryOnMount: boolean;
@@ -1,4 +1,4 @@
1
- import { o as useTableContextOptional } from "./use-table-state-C4JbonEZ.mjs";
1
+ import { o as useTableContextOptional } from "./use-table-state-CuZ2OXoY.mjs";
2
2
  import { t as as_table_cell_value_default } from "./as-table-cell-value-B1CiJYFn.mjs";
3
3
  import { t as as_table_header_cell_default } from "./as-table-header-cell-CBn_ioCe.mjs";
4
4
  import { UI_TABLE_ATTR, UI_TABLE_CLASSES, UI_TABLE_FN_ATTR, UI_TABLE_FN_CLASSES, UI_TABLE_FN_STYLES, UI_TABLE_STYLES, getFieldMeta, parseStaticAttrs, resolveAttrs, resolveFieldProp } from "@atscript/ui";
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
2
  const require_as_table_cell_value = require("./as-table-cell-value-CuxRtFn9.cjs");
3
3
  const require_as_table_header_cell = require("./as-table-header-cell-C3zeZUZo.cjs");
4
4
  let _atscript_ui = require("@atscript/ui");
@@ -1,7 +1,7 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_table_status = require("./as-table-status-DWYoJIMC.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_table_status = require("./as-table-status-DKXFSCzE.cjs");
3
3
  const require_use_table_column_handlers = require("./use-table-column-handlers-CGYAY2xH.cjs");
4
- const require_as_table_base = require("./as-table-base-VIz-B_6_.cjs");
4
+ const require_as_table_base = require("./as-table-base-CHzULili.cjs");
5
5
  let vue = require("vue");
6
6
  let _atscript_ui_table = require("@atscript/ui-table");
7
7
  //#region src/components/as-table.vue?vue&type=script&setup=true&lang.ts
package/dist/as-table.cjs CHANGED
@@ -1,2 +1,2 @@
1
- const require_as_table = require("./as-table-DlDFxdXI.cjs");
1
+ const require_as_table = require("./as-table-v42bV1ea.cjs");
2
2
  module.exports = require_as_table.as_table_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table.vue--uEtwfHg.cjs";
1
+ import { t as _default } from "./as-table.vue-vxuudXjo.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table.vue-B4Wwmqta.mjs";
1
+ import { t as _default } from "./as-table.vue-CH7WH6qe.mjs";
2
2
  export { _default as default };
package/dist/as-table.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import { t as as_table_default } from "./as-table-Cnw2fOqZ.mjs";
1
+ import { t as as_table_default } from "./as-table-DDyvnBFL.mjs";
2
2
  export { as_table_default as default };
@@ -61,12 +61,12 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.C
61
61
  "onRow-click"?: ((row: Record<string, unknown>, event: MouseEvent) => any) | undefined;
62
62
  "onRow-dblclick"?: ((row: Record<string, unknown>, event: MouseEvent) => any) | undefined;
63
63
  }>, {
64
+ select: SelectionMode;
64
65
  stickyHeader: boolean;
65
66
  virtualOverscan: number;
66
67
  reorderable: boolean;
67
68
  resizable: boolean;
68
69
  columnMinWidth: number;
69
- select: SelectionMode;
70
70
  rowDelete: boolean | RowDeleteOpt;
71
71
  rowActionsColumn: "first" | "last" | "merge-select" | false;
72
72
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -61,12 +61,12 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.C
61
61
  "onRow-click"?: ((row: Record<string, unknown>, event: MouseEvent) => any) | undefined;
62
62
  "onRow-dblclick"?: ((row: Record<string, unknown>, event: MouseEvent) => any) | undefined;
63
63
  }>, {
64
+ select: SelectionMode;
64
65
  stickyHeader: boolean;
65
66
  virtualOverscan: number;
66
67
  reorderable: boolean;
67
68
  resizable: boolean;
68
69
  columnMinWidth: number;
69
- select: SelectionMode;
70
70
  rowDelete: boolean | RowDeleteOpt;
71
71
  rowActionsColumn: "first" | "last" | "merge-select" | false;
72
72
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -1,5 +1,5 @@
1
- import { a as useTableContext, i as useRegisterMainActionListener } from "./use-table-state-C4JbonEZ.mjs";
2
- import { a as useCellResolver, i as useCellComponents, n as as_table_header_default, o as useSelectModeReset, r as useRafBatch, t as as_table_status_default } from "./as-table-status-BjRGGuhC.mjs";
1
+ import { a as useTableContext, i as useRegisterMainActionListener } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { a as useCellResolver, i as useCellComponents, n as as_table_header_default, o as useSelectModeReset, r as useRafBatch, t as as_table_status_default } from "./as-table-status-B11orhFu.mjs";
3
3
  import { n as useHasEmitListener, t as useTableColumnHandlers } from "./use-table-column-handlers-t6xi1yCE.mjs";
4
4
  import { t as getCellValue } from "./get-cell-value-DiH84HKL.mjs";
5
5
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, guardReactiveProps, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onMounted, openBlock, ref, renderList, renderSlot, resolveDynamicComponent, unref, useSlots, watch, withCtx, withModifiers } from "vue";
@@ -1,5 +1,5 @@
1
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
2
- const require_as_table_status = require("./as-table-status-DWYoJIMC.cjs");
1
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
2
+ const require_as_table_status = require("./as-table-status-DKXFSCzE.cjs");
3
3
  const require_use_table_column_handlers = require("./use-table-column-handlers-CGYAY2xH.cjs");
4
4
  const require_get_cell_value = require("./get-cell-value-CZSVfDLg.cjs");
5
5
  let vue = require("vue");
@@ -1,2 +1,2 @@
1
- const require_as_window_table = require("./as-window-table-DE7_NyEP.cjs");
1
+ const require_as_window_table = require("./as-window-table-DuwMCDUh.cjs");
2
2
  module.exports = require_as_window_table.as_window_table_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-window-table.vue-yCPd4eXJ.cjs";
1
+ import { t as _default } from "./as-window-table.vue-DXB5Qan7.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-window-table.vue-BZTBOCbt.mjs";
1
+ import { t as _default } from "./as-window-table.vue-7cJ3TUZX.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_window_table_default } from "./as-window-table-CKIfo3M_.mjs";
1
+ import { t as as_window_table_default } from "./as-window-table-CDTjX7W5.mjs";
2
2
  export { as_window_table_default as default };
@@ -67,10 +67,10 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.C
67
67
  "onRow-dblclick"?: ((row: Row, event: MouseEvent) => any) | undefined;
68
68
  onError?: ((error: Error, kind: QueryErrorKind) => any) | undefined;
69
69
  }>, {
70
+ select: SelectionMode;
70
71
  reorderable: boolean;
71
72
  resizable: boolean;
72
73
  columnMinWidth: number;
73
- select: SelectionMode;
74
74
  rowDelete: boolean | RowDeleteOpt;
75
75
  rowHeight: number;
76
76
  wheelRowsPerTick: number;
@@ -67,10 +67,10 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.C
67
67
  "onRow-dblclick"?: ((row: Row, event: MouseEvent) => any) | undefined;
68
68
  onError?: ((error: Error, kind: QueryErrorKind) => any) | undefined;
69
69
  }>, {
70
+ select: SelectionMode;
70
71
  reorderable: boolean;
71
72
  resizable: boolean;
72
73
  columnMinWidth: number;
73
- select: SelectionMode;
74
74
  rowDelete: boolean | RowDeleteOpt;
75
75
  rowHeight: number;
76
76
  wheelRowsPerTick: number;
package/dist/index.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_use_table_state = require("./use-table-state-MU-vuzui.cjs");
3
- const require_as_table_status = require("./as-table-status-DWYoJIMC.cjs");
4
- const require_as_filter_field = require("./as-filter-field-B_tYzvvl.cjs");
5
- const require_as_filter_dialog = require("./as-filter-dialog-DcGvIV3h.cjs");
2
+ const require_use_table_state = require("./use-table-state-DFQ30m-j.cjs");
3
+ const require_as_table_status = require("./as-table-status-DKXFSCzE.cjs");
4
+ const require_as_filter_field = require("./as-filter-field-jL7cnKUR.cjs");
5
+ const require_as_filter_dialog = require("./as-filter-dialog-O62-CnIQ.cjs");
6
6
  const require_get_cell_value = require("./get-cell-value-CZSVfDLg.cjs");
7
7
  const require_as_cell_array = require("./as-cell-array-CXeZzZqt.cjs");
8
8
  const require_as_cell_date = require("./as-cell-date-CTrvxS1h.cjs");
@@ -12,19 +12,19 @@ const require_as_cell_number = require("./as-cell-number-0_WrSCzu.cjs");
12
12
  const require_format_cell = require("./format-cell-D4mqaN0E.cjs");
13
13
  const require_as_cell_union = require("./as-cell-union-CFAI0utz.cjs");
14
14
  const require_as_column_menu = require("./as-column-menu-CH9Htz0Q.cjs");
15
- const require_as_config_dialog = require("./as-config-dialog-d2k7_l0U.cjs");
16
- const require_as_confirm_dialog = require("./as-confirm-dialog-BgpIEE2z.cjs");
15
+ const require_as_config_dialog = require("./as-config-dialog-BCvtSxi6.cjs");
16
+ const require_as_confirm_dialog = require("./as-confirm-dialog-Xtw2wE1X.cjs");
17
17
  const require_as_filter_input = require("./as-filter-input--nr72iwX.cjs");
18
18
  const require_as_table_cell_value = require("./as-table-cell-value-CuxRtFn9.cjs");
19
19
  const require_as_table_header_cell = require("./as-table-header-cell-C3zeZUZo.cjs");
20
- const require_as_window_table = require("./as-window-table-DE7_NyEP.cjs");
21
- const require_as_filters = require("./as-filters-xRT2qv56.cjs");
22
- const require_as_preset_dialog = require("./as-preset-dialog-BaTfwMnh.cjs");
23
- const require_as_row_actions = require("./as-row-actions-B6Kob6gt.cjs");
24
- const require_as_table_root = require("./as-table-root-DRwM_vYa.cjs");
25
- const require_as_table = require("./as-table-DlDFxdXI.cjs");
26
- const require_as_table_actions = require("./as-table-actions-BK1Thy2G.cjs");
27
- const require_as_preset_picker = require("./as-preset-picker-Ce3crTQy.cjs");
20
+ const require_as_window_table = require("./as-window-table-DuwMCDUh.cjs");
21
+ const require_as_filters = require("./as-filters-BFpZKtAU.cjs");
22
+ const require_as_preset_dialog = require("./as-preset-dialog-1Xl8DIiN.cjs");
23
+ const require_as_row_actions = require("./as-row-actions-C78cvaf3.cjs");
24
+ const require_as_table_root = require("./as-table-root-CbV4ou8W.cjs");
25
+ const require_as_table = require("./as-table-v42bV1ea.cjs");
26
+ const require_as_table_actions = require("./as-table-actions-DtCjMMCI.cjs");
27
+ const require_as_preset_picker = require("./as-preset-picker-CkaaKzYB.cjs");
28
28
  let _atscript_ui = require("@atscript/ui");
29
29
  let vue = require("vue");
30
30
  let _atscript_ui_table = require("@atscript/ui-table");
package/dist/index.d.cts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { t as _default$9 } from "./as-filters.vue-fv-tRL2H.cjs";
2
2
  import { t as _default$11 } from "./as-preset-picker.vue-DfXS3pGl.cjs";
3
3
  import { _ as TableNavBridge, c as NavKeyOptions, d as ReactiveTableState, f as RowDeleteOpt, g as TableActionsState, h as TVueTableActionInfo, m as TAsTableControls, n as ColumnMenuConfig, o as InvokeOpts, p as TAsCellTypeComponents, r as ConfigTab, s as MainActionRequest, t as ActionResult, u as QueryErrorKind } from "./types-CNMmF6W2.cjs";
4
- import { t as _default$14 } from "./as-table-actions.vue-BGsx5eXP.cjs";
5
- import { $ as createTableState, A as createDefaultControls, B as useTableSearch, C as formatCellValue, D as provideCellLocale, E as CellLocale, F as AS_PRESETS_APP, G as useTable, H as useTableNavBridge, I as injectPresetsApp, J as CreateStaticTableStateOptions, K as SelectionPersistence, L as UseTableUrlQueryOptions, M as UseAppPrefsOptions, N as UseAppPrefsReturn, O as useCellLocale, P as useAppPrefs, Q as createStaticTableState, R as useTableUrlQuery, S as extractIdentifier, T as getColumnWidth, U as UseTableOptions, V as useTableFilter, W as clearTableCache, X as TableContext, Y as CreateTableStateOptions, Z as TableStateInternals, _ as getDefaultClientFactory, a as PRESET_ASPECTS, at as usePresets, b as resolveSystemPresets, c as PresetData, ct as UseLocalDraftReturn, d as STANDARD_PRESET_ID, et as useTableContext, f as SYSTEM_PRESET_PREFIX, g as UserConfData, h as UrlQuerySync, i as ClientFactory, it as UsePresetsReturn, j as useTableComponent, k as createDefaultCellTypes, l as PresetSnapshot, lt as useLocalDraft, m as SystemPresetInput, n as AppConfData, nt as ActivePresetView, o as PresetAspect, ot as StorageLike, p as SystemPreset, q as useTableSelection, r as AsPresetEntryRow, rt as UsePresetsOptions, s as PresetCapabilities, st as UseLocalDraftOptions, t as _default$17, tt as useTableContextOptional, u as PresetSnapshotWire, v as isSystemPresetId, w as getCellValue, x as setDefaultClientFactory, y as resetDefaultClientFactory, z as useTableActions } from "./as-table-root.vue-B2ckpJPG.cjs";
6
- import { t as _default$13 } from "./as-table.vue--uEtwfHg.cjs";
7
- import { t as _default$18 } from "./as-window-table.vue-yCPd4eXJ.cjs";
4
+ import { t as _default$14 } from "./as-table-actions.vue-B7Q-JA3z.cjs";
5
+ import { $ as createTableState, A as createDefaultControls, B as useTableSearch, C as formatCellValue, D as provideCellLocale, E as CellLocale, F as AS_PRESETS_APP, G as useTable, H as useTableNavBridge, I as injectPresetsApp, J as CreateStaticTableStateOptions, K as SelectionPersistence, L as UseTableUrlQueryOptions, M as UseAppPrefsOptions, N as UseAppPrefsReturn, O as useCellLocale, P as useAppPrefs, Q as createStaticTableState, R as useTableUrlQuery, S as extractIdentifier, T as getColumnWidth, U as UseTableOptions, V as useTableFilter, W as clearTableCache, X as TableContext, Y as CreateTableStateOptions, Z as TableStateInternals, _ as getDefaultClientFactory, a as PRESET_ASPECTS, at as usePresets, b as resolveSystemPresets, c as PresetData, ct as UseLocalDraftReturn, d as STANDARD_PRESET_ID, et as useTableContext, f as SYSTEM_PRESET_PREFIX, g as UserConfData, h as UrlQuerySync, i as ClientFactory, it as UsePresetsReturn, j as useTableComponent, k as createDefaultCellTypes, l as PresetSnapshot, lt as useLocalDraft, m as SystemPresetInput, n as AppConfData, nt as ActivePresetView, o as PresetAspect, ot as StorageLike, p as SystemPreset, q as useTableSelection, r as AsPresetEntryRow, rt as UsePresetsOptions, s as PresetCapabilities, st as UseLocalDraftOptions, t as _default$17, tt as useTableContextOptional, u as PresetSnapshotWire, v as isSystemPresetId, w as getCellValue, x as setDefaultClientFactory, y as resetDefaultClientFactory, z as useTableActions } from "./as-table-root.vue-RER9pv0K.cjs";
6
+ import { t as _default$13 } from "./as-table.vue-vxuudXjo.cjs";
7
+ import { t as _default$18 } from "./as-window-table.vue-DXB5Qan7.cjs";
8
8
  import { t as _default } from "./as-cell-array.vue-pFs5GcCR.cjs";
9
9
  import { t as _default$1 } from "./as-cell-date.vue-BBSps2B2.cjs";
10
10
  import { t as _default$2 } from "./as-cell-json.vue-C6wg4ARZ.cjs";
package/dist/index.d.mts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { t as _default$9 } from "./as-filters.vue-BsMgYUcX.mjs";
2
2
  import { t as _default$11 } from "./as-preset-picker.vue-CTBk6leV.mjs";
3
3
  import { _ as TableNavBridge, c as NavKeyOptions, d as ReactiveTableState, f as RowDeleteOpt, g as TableActionsState, h as TVueTableActionInfo, m as TAsTableControls, n as ColumnMenuConfig, o as InvokeOpts, p as TAsCellTypeComponents, r as ConfigTab, s as MainActionRequest, t as ActionResult, u as QueryErrorKind } from "./types-BvvXN72P.mjs";
4
- import { t as _default$14 } from "./as-table-actions.vue-D8F_3yqr.mjs";
5
- import { $ as createTableState, A as createDefaultControls, B as useTableSearch, C as formatCellValue, D as provideCellLocale, E as CellLocale, F as AS_PRESETS_APP, G as useTable, H as useTableNavBridge, I as injectPresetsApp, J as CreateStaticTableStateOptions, K as SelectionPersistence, L as UseTableUrlQueryOptions, M as UseAppPrefsOptions, N as UseAppPrefsReturn, O as useCellLocale, P as useAppPrefs, Q as createStaticTableState, R as useTableUrlQuery, S as extractIdentifier, T as getColumnWidth, U as UseTableOptions, V as useTableFilter, W as clearTableCache, X as TableContext, Y as CreateTableStateOptions, Z as TableStateInternals, _ as getDefaultClientFactory, a as PRESET_ASPECTS, at as usePresets, b as resolveSystemPresets, c as PresetData, ct as UseLocalDraftReturn, d as STANDARD_PRESET_ID, et as useTableContext, f as SYSTEM_PRESET_PREFIX, g as UserConfData, h as UrlQuerySync, i as ClientFactory, it as UsePresetsReturn, j as useTableComponent, k as createDefaultCellTypes, l as PresetSnapshot, lt as useLocalDraft, m as SystemPresetInput, n as AppConfData, nt as ActivePresetView, o as PresetAspect, ot as StorageLike, p as SystemPreset, q as useTableSelection, r as AsPresetEntryRow, rt as UsePresetsOptions, s as PresetCapabilities, st as UseLocalDraftOptions, t as _default$17, tt as useTableContextOptional, u as PresetSnapshotWire, v as isSystemPresetId, w as getCellValue, x as setDefaultClientFactory, y as resetDefaultClientFactory, z as useTableActions } from "./as-table-root.vue-nV-IwWvZ.mjs";
6
- import { t as _default$13 } from "./as-table.vue-B4Wwmqta.mjs";
7
- import { t as _default$18 } from "./as-window-table.vue-BZTBOCbt.mjs";
4
+ import { t as _default$14 } from "./as-table-actions.vue-Bs1Jl1ep.mjs";
5
+ import { $ as createTableState, A as createDefaultControls, B as useTableSearch, C as formatCellValue, D as provideCellLocale, E as CellLocale, F as AS_PRESETS_APP, G as useTable, H as useTableNavBridge, I as injectPresetsApp, J as CreateStaticTableStateOptions, K as SelectionPersistence, L as UseTableUrlQueryOptions, M as UseAppPrefsOptions, N as UseAppPrefsReturn, O as useCellLocale, P as useAppPrefs, Q as createStaticTableState, R as useTableUrlQuery, S as extractIdentifier, T as getColumnWidth, U as UseTableOptions, V as useTableFilter, W as clearTableCache, X as TableContext, Y as CreateTableStateOptions, Z as TableStateInternals, _ as getDefaultClientFactory, a as PRESET_ASPECTS, at as usePresets, b as resolveSystemPresets, c as PresetData, ct as UseLocalDraftReturn, d as STANDARD_PRESET_ID, et as useTableContext, f as SYSTEM_PRESET_PREFIX, g as UserConfData, h as UrlQuerySync, i as ClientFactory, it as UsePresetsReturn, j as useTableComponent, k as createDefaultCellTypes, l as PresetSnapshot, lt as useLocalDraft, m as SystemPresetInput, n as AppConfData, nt as ActivePresetView, o as PresetAspect, ot as StorageLike, p as SystemPreset, q as useTableSelection, r as AsPresetEntryRow, rt as UsePresetsOptions, s as PresetCapabilities, st as UseLocalDraftOptions, t as _default$17, tt as useTableContextOptional, u as PresetSnapshotWire, v as isSystemPresetId, w as getCellValue, x as setDefaultClientFactory, y as resetDefaultClientFactory, z as useTableActions } from "./as-table-root.vue-DYu3FV1k.mjs";
6
+ import { t as _default$13 } from "./as-table.vue-CH7WH6qe.mjs";
7
+ import { t as _default$18 } from "./as-window-table.vue-7cJ3TUZX.mjs";
8
8
  import { t as _default } from "./as-cell-array.vue-DZGM2VHh.mjs";
9
9
  import { t as _default$1 } from "./as-cell-date.vue-Zlt4mHWb.mjs";
10
10
  import { t as _default$2 } from "./as-cell-json.vue-CESWuCer.mjs";
package/dist/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
- import { a as useTableContext, d as extractIdentifier, g as ROW_ACTIONS_TYPE, n as createTableState, o as useTableContextOptional, t as createStaticTableState } from "./use-table-state-C4JbonEZ.mjs";
2
- import { s as useTableSelection } from "./as-table-status-BjRGGuhC.mjs";
3
- import { a as useLocalDraft, i as usePresets, n as clearTableCache, o as AS_PRESETS_APP, r as useTable, s as injectPresetsApp, t as as_filter_field_default } from "./as-filter-field-Bqvu2ASN.mjs";
4
- import { n as useTableNavBridge, t as as_filter_dialog_default } from "./as-filter-dialog-C0HMpUPT.mjs";
1
+ import { a as useTableContext, d as extractIdentifier, g as ROW_ACTIONS_TYPE, n as createTableState, o as useTableContextOptional, t as createStaticTableState } from "./use-table-state-CuZ2OXoY.mjs";
2
+ import { s as useTableSelection } from "./as-table-status-B11orhFu.mjs";
3
+ import { a as useLocalDraft, i as usePresets, n as clearTableCache, o as AS_PRESETS_APP, r as useTable, s as injectPresetsApp, t as as_filter_field_default } from "./as-filter-field-CkiRXHVx.mjs";
4
+ import { n as useTableNavBridge, t as as_filter_dialog_default } from "./as-filter-dialog-KGyPqr2P.mjs";
5
5
  import { t as getCellValue } from "./get-cell-value-DiH84HKL.mjs";
6
6
  import { t as as_cell_array_default } from "./as-cell-array-DOQKR6t5.mjs";
7
7
  import { t as as_cell_date_default } from "./as-cell-date-Cq49RHmL.mjs";
@@ -11,19 +11,19 @@ import { t as as_cell_number_default } from "./as-cell-number-Bc1C97Vg.mjs";
11
11
  import { t as formatCellValue } from "./format-cell-B2xMDYO9.mjs";
12
12
  import { t as as_cell_union_default } from "./as-cell-union-C1w3B38J.mjs";
13
13
  import { t as as_column_menu_default } from "./as-column-menu-DCfhorMP.mjs";
14
- import { t as as_config_dialog_default } from "./as-config-dialog-vRklaKbi.mjs";
15
- import { t as as_confirm_dialog_default } from "./as-confirm-dialog-BLh3Ju4-.mjs";
14
+ import { t as as_config_dialog_default } from "./as-config-dialog-BB6BDa1E.mjs";
15
+ import { t as as_confirm_dialog_default } from "./as-confirm-dialog-DL0mCEeX.mjs";
16
16
  import { t as as_filter_input_default } from "./as-filter-input-P1i0CW2-.mjs";
17
17
  import { t as as_table_cell_value_default } from "./as-table-cell-value-B1CiJYFn.mjs";
18
18
  import { t as as_table_header_cell_default } from "./as-table-header-cell-CBn_ioCe.mjs";
19
- import { t as as_window_table_default } from "./as-window-table-CKIfo3M_.mjs";
20
- import { t as as_filters_default } from "./as-filters-Bxa9ZEMm.mjs";
21
- import { t as as_preset_dialog_default } from "./as-preset-dialog-BdDRgwf_.mjs";
22
- import { t as as_row_actions_default } from "./as-row-actions-CeWBBGqh.mjs";
23
- import { t as as_table_root_default } from "./as-table-root-Cd_g0Lhp.mjs";
24
- import { t as as_table_default } from "./as-table-Cnw2fOqZ.mjs";
25
- import { t as as_table_actions_default } from "./as-table-actions-BpMiNFni.mjs";
26
- import { t as as_preset_picker_default } from "./as-preset-picker-BQbNEiy9.mjs";
19
+ import { t as as_window_table_default } from "./as-window-table-CDTjX7W5.mjs";
20
+ import { t as as_filters_default } from "./as-filters-BJM-NjUn.mjs";
21
+ import { t as as_preset_dialog_default } from "./as-preset-dialog-DXbqMVI1.mjs";
22
+ import { t as as_row_actions_default } from "./as-row-actions-CpEMa5NU.mjs";
23
+ import { t as as_table_root_default } from "./as-table-root-Dx4kfEHC.mjs";
24
+ import { t as as_table_default } from "./as-table-DDyvnBFL.mjs";
25
+ import { t as as_table_actions_default } from "./as-table-actions-D2-MBvoy.mjs";
26
+ import { t as as_preset_picker_default } from "./as-preset-picker-DJTF47_V.mjs";
27
27
  import { getDefaultClientFactory, resetDefaultClientFactory, setDefaultClientFactory } from "@atscript/ui";
28
28
  import { computed, effectScope, ref, shallowRef } from "vue";
29
29
  import { AppPrefsClient, PRESET_ASPECTS, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, columnFilterType, conditionsForType, defaultCondition, isAuthError, isFilled, isSystemPresetId, resolveSystemPresets } from "@atscript/ui-table";
@@ -1265,8 +1265,15 @@ function createTableState(opts) {
1265
1265
  let queryDetected = false;
1266
1266
  let skipPaginationWatch = 0;
1267
1267
  function buildCurrentQuery() {
1268
+ const available = new Set(allColumns.value.map((c) => c.path));
1269
+ const extra = /* @__PURE__ */ new Set();
1270
+ for (const c of columns.value) for (const p of c.selectWith ?? []) if (available.has(p)) extra.add(p);
1271
+ if (queryOpts?.alwaysSelected) {
1272
+ for (const p of queryOpts.alwaysSelected) if (available.has(p)) extra.add(p);
1273
+ }
1268
1274
  return buildTableQuery({
1269
1275
  visibleColumnPaths: columnNames.value,
1276
+ extraSelect: extra.size ? [...extra] : void 0,
1270
1277
  sorters: sorters.value,
1271
1278
  forceSorters: queryOpts?.forceSorters,
1272
1279
  filters: filters.value,
@@ -1265,8 +1265,15 @@ function createTableState(opts) {
1265
1265
  let queryDetected = false;
1266
1266
  let skipPaginationWatch = 0;
1267
1267
  function buildCurrentQuery() {
1268
+ const available = new Set(allColumns.value.map((c) => c.path));
1269
+ const extra = /* @__PURE__ */ new Set();
1270
+ for (const c of columns.value) for (const p of c.selectWith ?? []) if (available.has(p)) extra.add(p);
1271
+ if (queryOpts?.alwaysSelected) {
1272
+ for (const p of queryOpts.alwaysSelected) if (available.has(p)) extra.add(p);
1273
+ }
1268
1274
  return (0, _atscript_ui_table.buildTableQuery)({
1269
1275
  visibleColumnPaths: columnNames.value,
1276
+ extraSelect: extra.size ? [...extra] : void 0,
1270
1277
  sorters: sorters.value,
1271
1278
  forceSorters: queryOpts?.forceSorters,
1272
1279
  filters: filters.value,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atscript/vue-table",
3
- "version": "0.1.90",
3
+ "version": "0.1.92",
4
4
  "description": "Type-driven table components for Atscript with Vue 3",
5
5
  "keywords": [
6
6
  "atscript",
@@ -159,13 +159,13 @@
159
159
  "access": "public"
160
160
  },
161
161
  "dependencies": {
162
- "@atscript/ui": "^0.1.90",
163
- "@atscript/vue-form": "^0.1.90",
164
- "@atscript/ui-table": "^0.1.90"
162
+ "@atscript/ui-table": "^0.1.92",
163
+ "@atscript/vue-form": "^0.1.92",
164
+ "@atscript/ui": "^0.1.92"
165
165
  },
166
166
  "devDependencies": {
167
- "@atscript/db-client": "^0.1.97",
168
- "@atscript/typescript": "^0.1.70",
167
+ "@atscript/db-client": "^0.1.98",
168
+ "@atscript/typescript": "^0.1.71",
169
169
  "@tanstack/vue-virtual": "^3.13.26",
170
170
  "@uniqu/core": "^0.1.6",
171
171
  "@vitejs/plugin-vue": "^6",
@@ -180,7 +180,7 @@
180
180
  "vunor": "^0.2.1"
181
181
  },
182
182
  "peerDependencies": {
183
- "@atscript/db-client": "^0.1.97",
183
+ "@atscript/db-client": "^0.1.98",
184
184
  "@tanstack/vue-virtual": "^3.13.26",
185
185
  "@vueuse/core": "^14.3.0",
186
186
  "reka-ui": "^2.9.8",