@atscript/vue-table 0.1.110 → 0.1.112

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 (99) 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-CXG6BhWe.mjs → as-action-menu-content-CVZJpVPG.mjs} +1 -1
  4. package/dist/{as-action-menu-content-B6rWBo5O.cjs → as-action-menu-content-C_-ndF6S.cjs} +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-DZawdGvY.d.cts → as-column-menu.vue-BbdaVsNi.d.cts} +1 -1
  8. package/dist/{as-column-menu.vue-csCNmAYR.d.mts → as-column-menu.vue-CwhbMgzZ.d.mts} +1 -1
  9. package/dist/{as-config-dialog-DAqSy8zx.mjs → as-config-dialog-Dvnlubkp.mjs} +2 -2
  10. package/dist/{as-config-dialog-DKYI4uQ0.cjs → as-config-dialog-ulI6e9vX.cjs} +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-BqvOf3yo.cjs → as-confirm-dialog-B7SM0zxy.cjs} +1 -1
  14. package/dist/{as-confirm-dialog-B1zuisFu.mjs → as-confirm-dialog-DLR2ejrF.mjs} +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-BIj0ABzy.mjs → as-filter-dialog-CiIPgmt8.mjs} +7 -7
  18. package/dist/{as-filter-dialog-PBy9IDBz.cjs → as-filter-dialog-DfX7ahsa.cjs} +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-9mG-alNU.mjs → as-filter-field-C3wmTg22.mjs} +3 -3
  22. package/dist/{as-filter-field-BHPZtUwd.cjs → as-filter-field-D8kv8lOm.cjs} +3 -3
  23. package/dist/as-filter-field.cjs +1 -1
  24. package/dist/as-filter-field.mjs +1 -1
  25. package/dist/{as-filters-7oIkmDHI.cjs → as-filters-BhPQXswG.cjs} +3 -3
  26. package/dist/{as-filters-BSQ3nugx.mjs → as-filters-Dmn0ykIo.mjs} +3 -3
  27. package/dist/as-filters.cjs +1 -1
  28. package/dist/as-filters.mjs +1 -1
  29. package/dist/{as-preset-dialog-CuWw5fuN.mjs → as-preset-dialog-B3fC0Eqc.mjs} +1 -1
  30. package/dist/{as-preset-dialog-BXO1O1q0.cjs → as-preset-dialog-DYxEVZ7V.cjs} +1 -1
  31. package/dist/as-preset-dialog.cjs +1 -1
  32. package/dist/as-preset-dialog.mjs +1 -1
  33. package/dist/{as-preset-picker-CyBbOnBS.mjs → as-preset-picker-B9hw2qc8.mjs} +1 -1
  34. package/dist/{as-preset-picker-BBkjl0fs.cjs → as-preset-picker-PbSNiBDr.cjs} +1 -1
  35. package/dist/as-preset-picker.cjs +1 -1
  36. package/dist/as-preset-picker.mjs +1 -1
  37. package/dist/{as-row-actions-DIpn-EYD.mjs → as-row-actions-C4mSAqeh.mjs} +2 -2
  38. package/dist/{as-row-actions-BoOAXAeW.cjs → as-row-actions-N30up8uG.cjs} +2 -2
  39. package/dist/as-row-actions.cjs +1 -1
  40. package/dist/as-row-actions.mjs +1 -1
  41. package/dist/{as-table-C3Li7WTI.cjs → as-table-3TbYx5tz.cjs} +2 -2
  42. package/dist/{as-table-QkKHAIh6.mjs → as-table-DnUc3TB1.mjs} +2 -2
  43. package/dist/{as-table-actions-Cd7KoTEK.cjs → as-table-actions-CoN68w6P.cjs} +2 -2
  44. package/dist/{as-table-actions-DQ3xaFXJ.mjs → as-table-actions-Ct3tEarY.mjs} +2 -2
  45. package/dist/as-table-actions.cjs +1 -1
  46. package/dist/as-table-actions.d.cts +1 -1
  47. package/dist/as-table-actions.d.mts +1 -1
  48. package/dist/as-table-actions.mjs +1 -1
  49. package/dist/{as-table-actions.vue-DW-zOVP0.d.cts → as-table-actions.vue-62ZjZoIa.d.cts} +2 -2
  50. package/dist/{as-table-actions.vue-CTC9xl5i.d.mts → as-table-actions.vue-B2C_nC86.d.mts} +2 -2
  51. package/dist/{as-table-base-DImVUSKt.cjs → as-table-base-CbxfXR2t.cjs} +2 -2
  52. package/dist/{as-table-base-D4Otzbe4.mjs → as-table-base-O9cMoTBL.mjs} +2 -2
  53. package/dist/{as-table-header-cell-mCOAZsjL.mjs → as-table-header-cell-BlDhjZNp.mjs} +1 -1
  54. package/dist/{as-table-header-cell-BEwpWr4m.cjs → as-table-header-cell-D025cLjb.cjs} +1 -1
  55. package/dist/as-table-header-cell.cjs +1 -1
  56. package/dist/as-table-header-cell.d.cts +1 -1
  57. package/dist/as-table-header-cell.d.mts +1 -1
  58. package/dist/as-table-header-cell.mjs +1 -1
  59. package/dist/{as-table-header-cell.vue-DsVfhlk3.d.mts → as-table-header-cell.vue-BjQUPdmH.d.cts} +2 -2
  60. package/dist/{as-table-header-cell.vue-jvtDmqhR.d.cts → as-table-header-cell.vue-PEFiv40i.d.mts} +2 -2
  61. package/dist/{as-table-root-BNJ1yqaD.cjs → as-table-root-CeypME9M.cjs} +20 -4
  62. package/dist/{as-table-root-BQNXfIvB.mjs → as-table-root-IzffHCVo.mjs} +20 -4
  63. package/dist/as-table-root.cjs +1 -1
  64. package/dist/as-table-root.d.cts +1 -1
  65. package/dist/as-table-root.d.mts +1 -1
  66. package/dist/as-table-root.mjs +1 -1
  67. package/dist/{as-table-root.vue-DFCZwH1h.d.cts → as-table-root.vue-D5Tp8U_d.d.cts} +40 -5
  68. package/dist/{as-table-root.vue-C5IrebWr.d.mts → as-table-root.vue-DtJBjtoC.d.mts} +40 -5
  69. package/dist/{as-table-status-CxkiQ_EE.mjs → as-table-status-d3iUSOoH.mjs} +4 -4
  70. package/dist/{as-table-status-C3A1WYwb.cjs → as-table-status-f4QmdAZ0.cjs} +4 -4
  71. package/dist/as-table.cjs +1 -1
  72. package/dist/as-table.d.cts +1 -1
  73. package/dist/as-table.d.mts +1 -1
  74. package/dist/as-table.mjs +1 -1
  75. package/dist/{as-table.vue-CAydq1n0.d.mts → as-table.vue-53yyA7zP.d.cts} +8 -8
  76. package/dist/{as-table.vue-COtIbUsp.d.cts → as-table.vue-CdSb4IUc.d.mts} +8 -8
  77. package/dist/{as-window-table-BBtgpJ1h.cjs → as-window-table-BzyV1iDL.cjs} +2 -2
  78. package/dist/{as-window-table-DONQh4nM.mjs → as-window-table-C3o72zaM.mjs} +2 -2
  79. package/dist/as-window-table.cjs +1 -1
  80. package/dist/as-window-table.d.cts +1 -1
  81. package/dist/as-window-table.d.mts +1 -1
  82. package/dist/as-window-table.mjs +1 -1
  83. package/dist/{as-window-table.vue-BycvdZ82.d.mts → as-window-table.vue-DQPjWA3T.d.mts} +6 -6
  84. package/dist/{as-window-table.vue-iLK4PSW_.d.cts → as-window-table.vue-DU6UdjA3.d.cts} +6 -6
  85. package/dist/index.cjs +17 -17
  86. package/dist/index.d.cts +7 -7
  87. package/dist/index.d.mts +7 -7
  88. package/dist/index.mjs +17 -17
  89. package/dist/{types-BMvxn9iU.d.mts → types-DAgdkjji.d.cts} +12 -2
  90. package/dist/{types-CDJmLD-E.d.cts → types-iSundY5p.d.mts} +12 -2
  91. package/dist/{use-table-CGxkBszK.mjs → use-table-ClKUAYU4.mjs} +4 -2
  92. package/dist/{use-table-CaegBdPZ.cjs → use-table-Dwl4JoZR.cjs} +4 -2
  93. package/dist/{use-table-component-ClgvnuRH.mjs → use-table-component-QIECHhdZ.mjs} +1 -1
  94. package/dist/{use-table-component-D-1kzctZ.cjs → use-table-component-xSoXI7Jm.cjs} +1 -1
  95. package/dist/{use-table-nav-bridge-C3gqHOIa.mjs → use-table-nav-bridge-0WVZrMv9.mjs} +1 -1
  96. package/dist/{use-table-nav-bridge-bZIH2d6Y.cjs → use-table-nav-bridge-Cs4R_6F2.cjs} +1 -1
  97. package/dist/{use-table-state-152Ejpyo.cjs → use-table-state-CI8i5m7s.cjs} +44 -4
  98. package/dist/{use-table-state-BHAwfUKw.mjs → use-table-state-kxv6_Biy.mjs} +44 -4
  99. package/package.json +7 -7
package/dist/index.d.cts CHANGED
@@ -1,16 +1,16 @@
1
1
  import { t as _default$11 } from "./as-filters.vue-fv-tRL2H.cjs";
2
2
  import { t as _default$13 } from "./as-preset-picker.vue-DfXS3pGl.cjs";
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-CDJmLD-E.cjs";
4
- import { t as _default$16 } from "./as-table-actions.vue-DW-zOVP0.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$19, 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-DFCZwH1h.cjs";
6
- import { t as _default$15 } from "./as-table.vue-COtIbUsp.cjs";
7
- import { t as _default$20 } from "./as-window-table.vue-iLK4PSW_.cjs";
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-DAgdkjji.cjs";
4
+ import { t as _default$16 } from "./as-table-actions.vue-62ZjZoIa.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$19, 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-D5Tp8U_d.cjs";
6
+ import { t as _default$15 } from "./as-table.vue-53yyA7zP.cjs";
7
+ import { t as _default$20 } from "./as-window-table.vue-DU6UdjA3.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";
11
11
  import { t as _default$3 } from "./as-cell-number.vue-CJ2K5zeM.cjs";
12
12
  import { t as _default$4 } from "./as-cell-union.vue-CslPM_c2.cjs";
13
- import { t as _default$5 } from "./as-column-menu.vue-DZawdGvY.cjs";
13
+ import { t as _default$5 } from "./as-column-menu.vue-BbdaVsNi.cjs";
14
14
  import { t as _default$6 } from "./as-config-dialog.vue-DvvJi3xx.cjs";
15
15
  import { t as _default$7 } from "./as-confirm-dialog.vue-CXxLpzbu.cjs";
16
16
  import { t as _default$8 } from "./as-filter-dialog.vue-BV2J8PgZ.cjs";
@@ -19,5 +19,5 @@ import { t as _default$10 } from "./as-filter-input.vue-CS4nOk_Q.cjs";
19
19
  import { t as _default$12 } from "./as-preset-dialog.vue-DP9fy00Y.cjs";
20
20
  import { t as _default$14 } from "./as-row-actions.vue-Bvcc2tUN.cjs";
21
21
  import { t as _default$17 } from "./as-table-cell-value.vue-BgFDv2JQ.cjs";
22
- import { t as _default$18 } from "./as-table-header-cell.vue-jvtDmqhR.cjs";
22
+ import { t as _default$18 } from "./as-table-header-cell.vue-BjQUPdmH.cjs";
23
23
  export { AS_PRESETS_APP, ActionResult, ActivePresetView, AppConfData, _default as AsCellArray, _default$1 as AsCellDate, _default$2 as AsCellJson, _default$3 as AsCellNumber, _default$4 as AsCellUnion, _default$5 as AsColumnMenu, _default$6 as AsConfigDialog, _default$7 as AsConfirmDialog, _default$8 as AsFilterDialog, _default$9 as AsFilterField, _default$10 as AsFilterInput, _default$11 as AsFilters, _default$12 as AsPresetDialog, AsPresetEntryRow, _default$13 as AsPresetPicker, _default$14 as AsRowActions, _default$15 as AsTable, _default$16 as AsTableActions, _default$17 as AsTableCellValue, _default$18 as AsTableHeaderCell, _default$19 as AsTableRoot, _default$20 as AsWindowTable, CellLocale, ClientFactory, ColumnMenuConfig, ConfigTab, CreateStaticTableStateOptions, CreateTableStateOptions, InvokeOpts, MainActionRequest, NavKeyOptions, PRESET_ASPECTS, PresetAspect, PresetCapabilities, PresetData, PresetSnapshot, PresetSnapshotWire, QueryErrorKind, ReactiveTableState, RowDeleteOpt, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, SelectionPersistence, StorageLike, SystemPreset, SystemPresetInput, TAsCellTypeComponents, TAsTableControls, TVueTableActionInfo, TableActionsState, TableContext, TableNavBridge, TableStateInternals, UrlQuerySync, UseAppPrefsOptions, UseAppPrefsReturn, UseLocalDraftOptions, UseLocalDraftReturn, UsePresetsOptions, UsePresetsReturn, UseTableOptions, UseTableUrlQueryOptions, UserConfData, clearTableCache, createDefaultCellTypes, createDefaultControls, createStaticTableState, createTableState, extractIdentifier, formatCellValue, getCellValue, getColumnWidth, getDefaultClientFactory, injectPresetsApp, isSystemPresetId, provideCellLocale, resetDefaultClientFactory, resolveSystemPresets, setDefaultClientFactory, useAppPrefs, useCellLocale, useLocalDraft, usePresets, useTable, useTableActions, useTableComponent, useTableContext, useTableContextOptional, useTableFilter, useTableNavBridge, useTableSearch, useTableSelection, useTableUrlQuery };
package/dist/index.d.mts CHANGED
@@ -1,16 +1,16 @@
1
1
  import { t as _default$11 } from "./as-filters.vue-DmECMd1v.mjs";
2
2
  import { t as _default$13 } from "./as-preset-picker.vue-BPjsiaVt.mjs";
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-BMvxn9iU.mjs";
4
- import { t as _default$16 } from "./as-table-actions.vue-CTC9xl5i.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$19, 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-C5IrebWr.mjs";
6
- import { t as _default$15 } from "./as-table.vue-CAydq1n0.mjs";
7
- import { t as _default$20 } from "./as-window-table.vue-BycvdZ82.mjs";
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-iSundY5p.mjs";
4
+ import { t as _default$16 } from "./as-table-actions.vue-B2C_nC86.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$19, 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-DtJBjtoC.mjs";
6
+ import { t as _default$15 } from "./as-table.vue-CdSb4IUc.mjs";
7
+ import { t as _default$20 } from "./as-window-table.vue-DQPjWA3T.mjs";
8
8
  import { t as _default } from "./as-cell-array.vue-D4vS7C_D.mjs";
9
9
  import { t as _default$1 } from "./as-cell-date.vue-Chs7WTZ9.mjs";
10
10
  import { t as _default$2 } from "./as-cell-json.vue-C0_LDvQw.mjs";
11
11
  import { t as _default$3 } from "./as-cell-number.vue-BBF0OuU8.mjs";
12
12
  import { t as _default$4 } from "./as-cell-union.vue-CL-Lf-Rm.mjs";
13
- import { t as _default$5 } from "./as-column-menu.vue-csCNmAYR.mjs";
13
+ import { t as _default$5 } from "./as-column-menu.vue-CwhbMgzZ.mjs";
14
14
  import { t as _default$6 } from "./as-config-dialog.vue-BvFZZRuY.mjs";
15
15
  import { t as _default$7 } from "./as-confirm-dialog.vue-Cz52-v6c.mjs";
16
16
  import { t as _default$8 } from "./as-filter-dialog.vue-likNLqzF.mjs";
@@ -19,5 +19,5 @@ import { t as _default$10 } from "./as-filter-input.vue-B9ma2l9j.mjs";
19
19
  import { t as _default$12 } from "./as-preset-dialog.vue-BRjjfPty.mjs";
20
20
  import { t as _default$14 } from "./as-row-actions.vue-DUSDuoR2.mjs";
21
21
  import { t as _default$17 } from "./as-table-cell-value.vue-kfNgVhzn.mjs";
22
- import { t as _default$18 } from "./as-table-header-cell.vue-DsVfhlk3.mjs";
22
+ import { t as _default$18 } from "./as-table-header-cell.vue-PEFiv40i.mjs";
23
23
  export { AS_PRESETS_APP, ActionResult, ActivePresetView, AppConfData, _default as AsCellArray, _default$1 as AsCellDate, _default$2 as AsCellJson, _default$3 as AsCellNumber, _default$4 as AsCellUnion, _default$5 as AsColumnMenu, _default$6 as AsConfigDialog, _default$7 as AsConfirmDialog, _default$8 as AsFilterDialog, _default$9 as AsFilterField, _default$10 as AsFilterInput, _default$11 as AsFilters, _default$12 as AsPresetDialog, AsPresetEntryRow, _default$13 as AsPresetPicker, _default$14 as AsRowActions, _default$15 as AsTable, _default$16 as AsTableActions, _default$17 as AsTableCellValue, _default$18 as AsTableHeaderCell, _default$19 as AsTableRoot, _default$20 as AsWindowTable, CellLocale, ClientFactory, ColumnMenuConfig, ConfigTab, CreateStaticTableStateOptions, CreateTableStateOptions, InvokeOpts, MainActionRequest, NavKeyOptions, PRESET_ASPECTS, PresetAspect, PresetCapabilities, PresetData, PresetSnapshot, PresetSnapshotWire, QueryErrorKind, ReactiveTableState, RowDeleteOpt, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, SelectionPersistence, StorageLike, SystemPreset, SystemPresetInput, TAsCellTypeComponents, TAsTableControls, TVueTableActionInfo, TableActionsState, TableContext, TableNavBridge, TableStateInternals, UrlQuerySync, UseAppPrefsOptions, UseAppPrefsReturn, UseLocalDraftOptions, UseLocalDraftReturn, UsePresetsOptions, UsePresetsReturn, UseTableOptions, UseTableUrlQueryOptions, UserConfData, clearTableCache, createDefaultCellTypes, createDefaultControls, createStaticTableState, createTableState, extractIdentifier, formatCellValue, getCellValue, getColumnWidth, getDefaultClientFactory, injectPresetsApp, isSystemPresetId, provideCellLocale, resetDefaultClientFactory, resolveSystemPresets, setDefaultClientFactory, useAppPrefs, useCellLocale, useLocalDraft, usePresets, useTable, useTableActions, useTableComponent, useTableContext, useTableContextOptional, useTableFilter, useTableNavBridge, useTableSearch, useTableSelection, useTableUrlQuery };
package/dist/index.mjs CHANGED
@@ -1,8 +1,8 @@
1
- import { _ as ROW_ACTIONS_TYPE, a as useTableContext, f as extractIdentifier, n as createTableState, o as useTableContextOptional, t as createStaticTableState } from "./use-table-state-BHAwfUKw.mjs";
1
+ import { _ as ROW_ACTIONS_TYPE, a as useTableContext, f as extractIdentifier, n as createTableState, o as useTableContextOptional, t as createStaticTableState } from "./use-table-state-kxv6_Biy.mjs";
2
2
  import { n as useTableSelection } from "./use-table-selection-C84z4OZy.mjs";
3
- import { a as AS_PRESETS_APP, i as useLocalDraft, n as useTable, o as injectPresetsApp, r as usePresets, t as clearTableCache } from "./use-table-CGxkBszK.mjs";
4
- import { t as useTableNavBridge } from "./use-table-nav-bridge-C3gqHOIa.mjs";
5
- import { t as useTableComponent } from "./use-table-component-ClgvnuRH.mjs";
3
+ import { a as AS_PRESETS_APP, i as useLocalDraft, n as useTable, o as injectPresetsApp, r as usePresets, t as clearTableCache } from "./use-table-ClKUAYU4.mjs";
4
+ import { t as useTableNavBridge } from "./use-table-nav-bridge-0WVZrMv9.mjs";
5
+ import { t as useTableComponent } from "./use-table-component-QIECHhdZ.mjs";
6
6
  import { t as getCellValue } from "./get-cell-value-C8LLc_Rr.mjs";
7
7
  import { t as as_cell_array_default } from "./as-cell-array-2qmJ1lT2.mjs";
8
8
  import { t as as_cell_date_default } from "./as-cell-date-BwFgi6O0.mjs";
@@ -12,21 +12,21 @@ import { t as as_cell_number_default } from "./as-cell-number-DKRaS9pM.mjs";
12
12
  import { t as formatCellValue } from "./format-cell-D1Ziv96Q.mjs";
13
13
  import { t as as_cell_union_default } from "./as-cell-union-C9FukGqF.mjs";
14
14
  import { t as as_column_menu_default } from "./as-column-menu-kTIQfLTi.mjs";
15
- import { t as as_config_dialog_default } from "./as-config-dialog-DAqSy8zx.mjs";
16
- import { t as as_confirm_dialog_default } from "./as-confirm-dialog-B1zuisFu.mjs";
15
+ import { t as as_config_dialog_default } from "./as-config-dialog-Dvnlubkp.mjs";
16
+ import { t as as_confirm_dialog_default } from "./as-confirm-dialog-DLR2ejrF.mjs";
17
17
  import { t as as_filter_input_default } from "./as-filter-input-BM23TNeh.mjs";
18
- import { t as as_filter_dialog_default } from "./as-filter-dialog-BIj0ABzy.mjs";
19
- import { t as as_table_header_cell_default } from "./as-table-header-cell-mCOAZsjL.mjs";
20
- import { t as as_window_table_default } from "./as-window-table-DONQh4nM.mjs";
21
- import { t as as_filter_field_default } from "./as-filter-field-9mG-alNU.mjs";
22
- import { t as as_filters_default } from "./as-filters-BSQ3nugx.mjs";
23
- import { t as as_preset_dialog_default } from "./as-preset-dialog-CuWw5fuN.mjs";
24
- import { t as as_row_actions_default } from "./as-row-actions-DIpn-EYD.mjs";
18
+ import { t as as_filter_dialog_default } from "./as-filter-dialog-CiIPgmt8.mjs";
19
+ import { t as as_table_header_cell_default } from "./as-table-header-cell-BlDhjZNp.mjs";
20
+ import { t as as_window_table_default } from "./as-window-table-C3o72zaM.mjs";
21
+ import { t as as_filter_field_default } from "./as-filter-field-C3wmTg22.mjs";
22
+ import { t as as_filters_default } from "./as-filters-Dmn0ykIo.mjs";
23
+ import { t as as_preset_dialog_default } from "./as-preset-dialog-B3fC0Eqc.mjs";
24
+ import { t as as_row_actions_default } from "./as-row-actions-C4mSAqeh.mjs";
25
25
  import { t as as_table_cell_value_default } from "./as-table-cell-value-CPcFxSOj.mjs";
26
- import { t as as_table_root_default } from "./as-table-root-BQNXfIvB.mjs";
27
- import { t as as_table_default } from "./as-table-QkKHAIh6.mjs";
28
- import { t as as_table_actions_default } from "./as-table-actions-DQ3xaFXJ.mjs";
29
- import { t as as_preset_picker_default } from "./as-preset-picker-CyBbOnBS.mjs";
26
+ import { t as as_table_root_default } from "./as-table-root-IzffHCVo.mjs";
27
+ import { t as as_table_default } from "./as-table-DnUc3TB1.mjs";
28
+ import { t as as_table_actions_default } from "./as-table-actions-Ct3tEarY.mjs";
29
+ import { t as as_preset_picker_default } from "./as-preset-picker-B9hw2qc8.mjs";
30
30
  import { getDefaultClientFactory, resetDefaultClientFactory, setDefaultClientFactory } from "@atscript/ui";
31
31
  import { computed, effectScope, ref, shallowRef } from "vue";
32
32
  import { AppPrefsClient, PRESET_ASPECTS, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, columnFilterType, conditionsForType, defaultCondition, isAuthError, isFilled, isSystemPresetId, resolveSystemPresets } from "@atscript/ui-table";
@@ -1,7 +1,7 @@
1
- import { ColumnDef, PaginationControl, SortControl, TableDef } from "@atscript/ui";
2
1
  import { Component, ComputedRef, Ref, ShallowRef } from "vue";
3
- import { AsPresetEntryRow, AspectMask, ColumnWidthsMap, ConfigTab, FieldFilters, PresetAspect, PresetCapabilities, PresetSnapshot, SelectionMode, SystemPreset, SystemPresetInput, TableStateMethods } from "@atscript/ui-table";
4
2
  import { ClientError, TDbActionInfo, TDbActionProcessor, TDbDeleteResult } from "@atscript/db-client";
3
+ import { ColumnDef, PaginationControl, SortControl, TableDef } from "@atscript/ui";
4
+ import { AsPresetEntryRow, AspectMask, ColumnWidthsMap, ConfigTab, FieldFilters, PresetAspect, PresetCapabilities, PresetSnapshot, SelectionMode, SystemPreset, SystemPresetInput, TableStateMethods } from "@atscript/ui-table";
5
5
 
6
6
  //#region src/types.d.ts
7
7
  /** UI-side sentinel for the synthesised row-delete processor. */
@@ -325,6 +325,16 @@ interface ReactiveTableState extends TableStateMethods {
325
325
  } | null>;
326
326
  mustRefresh: Ref<boolean>;
327
327
  searchTerm: Ref<string>;
328
+ /**
329
+ * Runtime "preserve search relevance" flag (a model — read/write). While
330
+ * `true` AND `searchTerm` is non-empty, user `sorters` are omitted from the
331
+ * query so the backend's relevance ranking survives; `forceSorters` still
332
+ * apply and `sorters` itself is never mutated (suppression is query-time
333
+ * only). Any write to `sorters` during an active search flips this to
334
+ * `false` for the current search session; a new session (empty →
335
+ * non-empty `searchTerm`) resets it to the configured default.
336
+ */
337
+ ignoreSortersWhenSearched: Ref<boolean>;
328
338
  configDialogOpen: Ref<boolean>;
329
339
  configTab: Ref<ConfigTab>;
330
340
  /** Selected row values (PKs extracted via `rowValueFn`). */
@@ -1,7 +1,7 @@
1
- import { Component, ComputedRef, Ref, ShallowRef } from "vue";
2
- import { ClientError, TDbActionInfo, TDbActionProcessor, TDbDeleteResult } from "@atscript/db-client";
3
1
  import { ColumnDef, PaginationControl, SortControl, TableDef } from "@atscript/ui";
2
+ import { Component, ComputedRef, Ref, ShallowRef } from "vue";
4
3
  import { AsPresetEntryRow, AspectMask, ColumnWidthsMap, ConfigTab, FieldFilters, PresetAspect, PresetCapabilities, PresetSnapshot, SelectionMode, SystemPreset, SystemPresetInput, TableStateMethods } from "@atscript/ui-table";
4
+ import { ClientError, TDbActionInfo, TDbActionProcessor, TDbDeleteResult } from "@atscript/db-client";
5
5
 
6
6
  //#region src/types.d.ts
7
7
  /** UI-side sentinel for the synthesised row-delete processor. */
@@ -325,6 +325,16 @@ interface ReactiveTableState extends TableStateMethods {
325
325
  } | null>;
326
326
  mustRefresh: Ref<boolean>;
327
327
  searchTerm: Ref<string>;
328
+ /**
329
+ * Runtime "preserve search relevance" flag (a model — read/write). While
330
+ * `true` AND `searchTerm` is non-empty, user `sorters` are omitted from the
331
+ * query so the backend's relevance ranking survives; `forceSorters` still
332
+ * apply and `sorters` itself is never mutated (suppression is query-time
333
+ * only). Any write to `sorters` during an active search flips this to
334
+ * `false` for the current search session; a new session (empty →
335
+ * non-empty `searchTerm`) resets it to the configured default.
336
+ */
337
+ ignoreSortersWhenSearched: Ref<boolean>;
328
338
  configDialogOpen: Ref<boolean>;
329
339
  configTab: Ref<ConfigTab>;
330
340
  /** Selected row values (PKs extracted via `rowValueFn`). */
@@ -1,4 +1,4 @@
1
- import { n as createTableState, r as provideTableContext, s as DEFAULT_AVAILABLE_ASPECTS } from "./use-table-state-BHAwfUKw.mjs";
1
+ import { n as createTableState, r as provideTableContext, s as DEFAULT_AVAILABLE_ASPECTS } from "./use-table-state-kxv6_Biy.mjs";
2
2
  import { n as useTableSelection } from "./use-table-selection-C84z4OZy.mjs";
3
3
  import { createTableDef, getMetaEntry, resetMetaCache } from "@atscript/ui";
4
4
  import { computed, inject, isRef, ref, shallowRef, watch } from "vue";
@@ -389,7 +389,8 @@ function useTable(url, opts) {
389
389
  filterFields: opts?.filterFields,
390
390
  columnNames: opts?.columnNames,
391
391
  columnWidths: opts?.columnWidths,
392
- sorters: opts?.sorters
392
+ sorters: opts?.sorters,
393
+ ignoreSortersWhenSearched: typeof opts?.ignoreSortersWhenSearched === "object" ? opts.ignoreSortersWhenSearched : void 0
393
394
  },
394
395
  query: {
395
396
  fn: opts?.queryFn,
@@ -398,6 +399,7 @@ function useTable(url, opts) {
398
399
  alwaysSelected: opts?.alwaysSelected,
399
400
  blockQuery: opts?.blockQuery,
400
401
  queryOnMount: opts?.queryOnMount,
402
+ ignoreSortersWhenSearched: typeof opts?.ignoreSortersWhenSearched === "boolean" ? opts.ignoreSortersWhenSearched : void 0,
401
403
  urlQueryReady: opts?.urlQueryReady,
402
404
  onUrlQueryChange: opts?.onUrlQueryChange,
403
405
  urlQuerySync: opts?.urlQuerySync
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-152Ejpyo.cjs");
1
+ const require_use_table_state = require("./use-table-state-CI8i5m7s.cjs");
2
2
  const require_use_table_selection = require("./use-table-selection-Cmiu1h4S.cjs");
3
3
  let _atscript_ui = require("@atscript/ui");
4
4
  let vue = require("vue");
@@ -389,7 +389,8 @@ function useTable(url, opts) {
389
389
  filterFields: opts?.filterFields,
390
390
  columnNames: opts?.columnNames,
391
391
  columnWidths: opts?.columnWidths,
392
- sorters: opts?.sorters
392
+ sorters: opts?.sorters,
393
+ ignoreSortersWhenSearched: typeof opts?.ignoreSortersWhenSearched === "object" ? opts.ignoreSortersWhenSearched : void 0
393
394
  },
394
395
  query: {
395
396
  fn: opts?.queryFn,
@@ -398,6 +399,7 @@ function useTable(url, opts) {
398
399
  alwaysSelected: opts?.alwaysSelected,
399
400
  blockQuery: opts?.blockQuery,
400
401
  queryOnMount: opts?.queryOnMount,
402
+ ignoreSortersWhenSearched: typeof opts?.ignoreSortersWhenSearched === "boolean" ? opts.ignoreSortersWhenSearched : void 0,
401
403
  urlQueryReady: opts?.urlQueryReady,
402
404
  onUrlQueryChange: opts?.onUrlQueryChange,
403
405
  urlQuerySync: opts?.urlQuerySync
@@ -1,4 +1,4 @@
1
- import { o as useTableContextOptional } from "./use-table-state-BHAwfUKw.mjs";
1
+ import { o as useTableContextOptional } from "./use-table-state-kxv6_Biy.mjs";
2
2
  //#region src/composables/use-table-component.ts
3
3
  /**
4
4
  * Resolve a single skin-slot component from the injected `controls` map,
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-152Ejpyo.cjs");
1
+ const require_use_table_state = require("./use-table-state-CI8i5m7s.cjs");
2
2
  //#region src/composables/use-table-component.ts
3
3
  /**
4
4
  * Resolve a single skin-slot component from the injected `controls` map,
@@ -1,4 +1,4 @@
1
- import { o as useTableContextOptional } from "./use-table-state-BHAwfUKw.mjs";
1
+ import { o as useTableContextOptional } from "./use-table-state-kxv6_Biy.mjs";
2
2
  //#region src/composables/use-table-nav-bridge.ts
3
3
  function isPassthroughKey(event) {
4
4
  const key = event.key;
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-152Ejpyo.cjs");
1
+ const require_use_table_state = require("./use-table-state-CI8i5m7s.cjs");
2
2
  //#region src/composables/use-table-nav-bridge.ts
3
3
  function isPassthroughKey(event) {
4
4
  const key = event.key;
@@ -1264,6 +1264,19 @@ function createTableState(opts) {
1264
1264
  }
1265
1265
  const mustRefresh = (0, vue.ref)(false);
1266
1266
  const searchTerm = (0, vue.ref)("");
1267
+ const ignoreSortersDefault = modelOpts?.ignoreSortersWhenSearched?.value ?? queryOpts?.ignoreSortersWhenSearched ?? false;
1268
+ const ignoreSortersWhenSearched = modelOpts?.ignoreSortersWhenSearched ?? (0, vue.ref)(ignoreSortersDefault);
1269
+ let internalIgnoreSortersWrite = false;
1270
+ function setIgnoreSortersInternal(v) {
1271
+ if (ignoreSortersWhenSearched.value === v) return;
1272
+ if (!internalIgnoreSortersWrite) {
1273
+ internalIgnoreSortersWrite = true;
1274
+ (0, vue.nextTick)(() => {
1275
+ internalIgnoreSortersWrite = false;
1276
+ });
1277
+ }
1278
+ ignoreSortersWhenSearched.value = v;
1279
+ }
1267
1280
  const configDialogOpen = (0, vue.ref)(false);
1268
1281
  const configTab = (0, vue.ref)("columns");
1269
1282
  const filterDialogColumn = (0, vue.ref)(null);
@@ -1325,6 +1338,7 @@ function createTableState(opts) {
1325
1338
  filters: filters.value,
1326
1339
  forceFilters: queryOpts?.forceFilters,
1327
1340
  search: searchTerm.value || void 0,
1341
+ ignoreSorters: ignoreSortersWhenSearched.value && !!searchTerm.value,
1328
1342
  includeActions: includeActions.value
1329
1343
  });
1330
1344
  }
@@ -1510,6 +1524,7 @@ function createTableState(opts) {
1510
1524
  lastError,
1511
1525
  mustRefresh,
1512
1526
  searchTerm,
1527
+ ignoreSortersWhenSearched,
1513
1528
  configDialogOpen,
1514
1529
  configTab,
1515
1530
  filterDialogColumn,
@@ -1603,9 +1618,11 @@ function createTableState(opts) {
1603
1618
  sorters: sorters.value,
1604
1619
  page: pagination.value.page,
1605
1620
  itemsPerPage: pagination.value.itemsPerPage,
1606
- searchTerm: searchTerm.value
1621
+ searchTerm: searchTerm.value,
1622
+ ignoreSorters: ignoreSortersWhenSearched.value
1607
1623
  }, {
1608
1624
  defaultItemsPerPage: urlDefaultItemsPerPage,
1625
+ defaultIgnoreSorters: ignoreSortersDefault,
1609
1626
  sync: urlQuerySync
1610
1627
  });
1611
1628
  }
@@ -1644,15 +1661,25 @@ function createTableState(opts) {
1644
1661
  for (const path in parsed.filters) next[path] = parsed.filters[path];
1645
1662
  filters.value = next;
1646
1663
  }
1647
- if ((0, _atscript_ui_table.resolveAspectGate)(urlQuerySync?.sorters) !== "none") {
1664
+ const sortersGate = (0, _atscript_ui_table.resolveAspectGate)(urlQuerySync?.sorters);
1665
+ let urlSortersChanged = false;
1666
+ if (sortersGate !== "none") {
1648
1667
  const urlFields = /* @__PURE__ */ new Set();
1649
1668
  for (const s of parsed.sorters) urlFields.add(s.field);
1650
1669
  const merged = [...sorters.value.filter((s) => !urlFields.has(s.field)), ...parsed.sorters];
1651
- if (!(0, _atscript_ui_table.sortersEqual)(sorters.value, merged)) sorters.value = merged;
1670
+ if (!(0, _atscript_ui_table.sortersEqual)(sorters.value, merged)) {
1671
+ sorters.value = merged;
1672
+ urlSortersChanged = true;
1673
+ }
1652
1674
  }
1675
+ const searchWasActive = !!searchTerm.value;
1653
1676
  if (urlQuerySync?.search !== false) {
1654
1677
  if (searchTerm.value !== parsed.searchTerm) searchTerm.value = parsed.searchTerm;
1655
1678
  }
1679
+ const searchNowActive = !!searchTerm.value;
1680
+ if (!searchWasActive && searchNowActive) setIgnoreSortersInternal(ignoreSortersDefault);
1681
+ else if (urlSortersChanged && searchWasActive && searchNowActive) setIgnoreSortersInternal(false);
1682
+ if (parsed.ignoreSorters !== void 0) setIgnoreSortersInternal(parsed.ignoreSorters);
1656
1683
  if (urlQuerySync?.pagination !== false) {
1657
1684
  if (pagination.value.page !== nextPage) pagination.value = {
1658
1685
  ...pagination.value,
@@ -1688,9 +1715,21 @@ function createTableState(opts) {
1688
1715
  (0, vue.watch)(() => sorters.value, (next, prev) => {
1689
1716
  if (hydratingFromUrl) return;
1690
1717
  if ((0, _atscript_ui_table.sortersEqual)(prev, next)) return;
1718
+ if (searchTerm.value) setIgnoreSortersInternal(false);
1691
1719
  if (!queryDetected) return;
1692
1720
  requestRefresh();
1693
1721
  }, { immediate: false });
1722
+ (0, vue.watch)(() => searchTerm.value, (next, prev) => {
1723
+ if (hydratingFromUrl) return;
1724
+ if (!prev && next) setIgnoreSortersInternal(ignoreSortersDefault);
1725
+ });
1726
+ (0, vue.watch)(() => ignoreSortersWhenSearched.value, () => {
1727
+ if (internalIgnoreSortersWrite) return;
1728
+ if (hydratingFromUrl) return;
1729
+ if (!queryDetected) return;
1730
+ if (!searchTerm.value) return;
1731
+ requestRefresh();
1732
+ });
1694
1733
  (0, vue.watch)(() => columnNames.value, (next, prev) => {
1695
1734
  if (!queryDetected) return;
1696
1735
  if ((0, _atscript_ui_table.sameColumnSet)(prev, next)) return;
@@ -1710,7 +1749,8 @@ function createTableState(opts) {
1710
1749
  () => filters.value,
1711
1750
  () => sorters.value,
1712
1751
  () => searchTerm.value,
1713
- () => pagination.value
1752
+ () => pagination.value,
1753
+ () => ignoreSortersWhenSearched.value
1714
1754
  ], () => emitUrlIfChanged());
1715
1755
  (0, vue.watch)(() => includeActions.value, () => {
1716
1756
  if (!queryDetected) return;
@@ -1264,6 +1264,19 @@ function createTableState(opts) {
1264
1264
  }
1265
1265
  const mustRefresh = ref(false);
1266
1266
  const searchTerm = ref("");
1267
+ const ignoreSortersDefault = modelOpts?.ignoreSortersWhenSearched?.value ?? queryOpts?.ignoreSortersWhenSearched ?? false;
1268
+ const ignoreSortersWhenSearched = modelOpts?.ignoreSortersWhenSearched ?? ref(ignoreSortersDefault);
1269
+ let internalIgnoreSortersWrite = false;
1270
+ function setIgnoreSortersInternal(v) {
1271
+ if (ignoreSortersWhenSearched.value === v) return;
1272
+ if (!internalIgnoreSortersWrite) {
1273
+ internalIgnoreSortersWrite = true;
1274
+ nextTick(() => {
1275
+ internalIgnoreSortersWrite = false;
1276
+ });
1277
+ }
1278
+ ignoreSortersWhenSearched.value = v;
1279
+ }
1267
1280
  const configDialogOpen = ref(false);
1268
1281
  const configTab = ref("columns");
1269
1282
  const filterDialogColumn = ref(null);
@@ -1325,6 +1338,7 @@ function createTableState(opts) {
1325
1338
  filters: filters.value,
1326
1339
  forceFilters: queryOpts?.forceFilters,
1327
1340
  search: searchTerm.value || void 0,
1341
+ ignoreSorters: ignoreSortersWhenSearched.value && !!searchTerm.value,
1328
1342
  includeActions: includeActions.value
1329
1343
  });
1330
1344
  }
@@ -1510,6 +1524,7 @@ function createTableState(opts) {
1510
1524
  lastError,
1511
1525
  mustRefresh,
1512
1526
  searchTerm,
1527
+ ignoreSortersWhenSearched,
1513
1528
  configDialogOpen,
1514
1529
  configTab,
1515
1530
  filterDialogColumn,
@@ -1603,9 +1618,11 @@ function createTableState(opts) {
1603
1618
  sorters: sorters.value,
1604
1619
  page: pagination.value.page,
1605
1620
  itemsPerPage: pagination.value.itemsPerPage,
1606
- searchTerm: searchTerm.value
1621
+ searchTerm: searchTerm.value,
1622
+ ignoreSorters: ignoreSortersWhenSearched.value
1607
1623
  }, {
1608
1624
  defaultItemsPerPage: urlDefaultItemsPerPage,
1625
+ defaultIgnoreSorters: ignoreSortersDefault,
1609
1626
  sync: urlQuerySync
1610
1627
  });
1611
1628
  }
@@ -1644,15 +1661,25 @@ function createTableState(opts) {
1644
1661
  for (const path in parsed.filters) next[path] = parsed.filters[path];
1645
1662
  filters.value = next;
1646
1663
  }
1647
- if (resolveAspectGate(urlQuerySync?.sorters) !== "none") {
1664
+ const sortersGate = resolveAspectGate(urlQuerySync?.sorters);
1665
+ let urlSortersChanged = false;
1666
+ if (sortersGate !== "none") {
1648
1667
  const urlFields = /* @__PURE__ */ new Set();
1649
1668
  for (const s of parsed.sorters) urlFields.add(s.field);
1650
1669
  const merged = [...sorters.value.filter((s) => !urlFields.has(s.field)), ...parsed.sorters];
1651
- if (!sortersEqual(sorters.value, merged)) sorters.value = merged;
1670
+ if (!sortersEqual(sorters.value, merged)) {
1671
+ sorters.value = merged;
1672
+ urlSortersChanged = true;
1673
+ }
1652
1674
  }
1675
+ const searchWasActive = !!searchTerm.value;
1653
1676
  if (urlQuerySync?.search !== false) {
1654
1677
  if (searchTerm.value !== parsed.searchTerm) searchTerm.value = parsed.searchTerm;
1655
1678
  }
1679
+ const searchNowActive = !!searchTerm.value;
1680
+ if (!searchWasActive && searchNowActive) setIgnoreSortersInternal(ignoreSortersDefault);
1681
+ else if (urlSortersChanged && searchWasActive && searchNowActive) setIgnoreSortersInternal(false);
1682
+ if (parsed.ignoreSorters !== void 0) setIgnoreSortersInternal(parsed.ignoreSorters);
1656
1683
  if (urlQuerySync?.pagination !== false) {
1657
1684
  if (pagination.value.page !== nextPage) pagination.value = {
1658
1685
  ...pagination.value,
@@ -1688,9 +1715,21 @@ function createTableState(opts) {
1688
1715
  watch(() => sorters.value, (next, prev) => {
1689
1716
  if (hydratingFromUrl) return;
1690
1717
  if (sortersEqual(prev, next)) return;
1718
+ if (searchTerm.value) setIgnoreSortersInternal(false);
1691
1719
  if (!queryDetected) return;
1692
1720
  requestRefresh();
1693
1721
  }, { immediate: false });
1722
+ watch(() => searchTerm.value, (next, prev) => {
1723
+ if (hydratingFromUrl) return;
1724
+ if (!prev && next) setIgnoreSortersInternal(ignoreSortersDefault);
1725
+ });
1726
+ watch(() => ignoreSortersWhenSearched.value, () => {
1727
+ if (internalIgnoreSortersWrite) return;
1728
+ if (hydratingFromUrl) return;
1729
+ if (!queryDetected) return;
1730
+ if (!searchTerm.value) return;
1731
+ requestRefresh();
1732
+ });
1694
1733
  watch(() => columnNames.value, (next, prev) => {
1695
1734
  if (!queryDetected) return;
1696
1735
  if (sameColumnSet(prev, next)) return;
@@ -1710,7 +1749,8 @@ function createTableState(opts) {
1710
1749
  () => filters.value,
1711
1750
  () => sorters.value,
1712
1751
  () => searchTerm.value,
1713
- () => pagination.value
1752
+ () => pagination.value,
1753
+ () => ignoreSortersWhenSearched.value
1714
1754
  ], () => emitUrlIfChanged());
1715
1755
  watch(() => includeActions.value, () => {
1716
1756
  if (!queryDetected) return;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atscript/vue-table",
3
- "version": "0.1.110",
3
+ "version": "0.1.112",
4
4
  "description": "Type-driven table components for Atscript with Vue 3",
5
5
  "keywords": [
6
6
  "atscript",
@@ -162,13 +162,13 @@
162
162
  "access": "public"
163
163
  },
164
164
  "dependencies": {
165
- "@atscript/ui": "^0.1.110",
166
- "@atscript/ui-table": "^0.1.110",
167
- "@atscript/vue-form": "^0.1.110"
165
+ "@atscript/ui": "^0.1.112",
166
+ "@atscript/ui-table": "^0.1.112",
167
+ "@atscript/vue-form": "^0.1.112"
168
168
  },
169
169
  "devDependencies": {
170
- "@atscript/db-client": "^0.1.110",
171
- "@atscript/typescript": "^0.1.78",
170
+ "@atscript/db-client": "^0.1.111",
171
+ "@atscript/typescript": "^0.1.79",
172
172
  "@tanstack/vue-virtual": "^3.13.26",
173
173
  "@uniqu/core": "^0.1.6",
174
174
  "@vitejs/plugin-vue": "^6",
@@ -183,7 +183,7 @@
183
183
  "vunor": "^0.2.1"
184
184
  },
185
185
  "peerDependencies": {
186
- "@atscript/db-client": "^0.1.110",
186
+ "@atscript/db-client": "^0.1.111",
187
187
  "@tanstack/vue-virtual": "^3.13.26",
188
188
  "@vueuse/core": "^14.3.0",
189
189
  "reka-ui": "^2.9.8",