@questpie/admin 3.2.0 → 3.2.2

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 (86) hide show
  1. package/dist/client/blocks/block-renderer.d.mts +12 -2
  2. package/dist/client/blocks/block-renderer.mjs +357 -49
  3. package/dist/client/components/blocks/block-editor-context.mjs +11 -1
  4. package/dist/client/components/blocks/block-editor-provider.mjs +68 -26
  5. package/dist/client/components/blocks/block-item.mjs +181 -170
  6. package/dist/client/components/blocks/utils/tree-utils.mjs +13 -1
  7. package/dist/client/components/fields/array-field.mjs +177 -118
  8. package/dist/client/components/filter-builder/filter-builder-sheet.mjs +305 -310
  9. package/dist/client/components/filter-builder/filters-tab.mjs +1 -1
  10. package/dist/client/components/history-sidebar.mjs +121 -114
  11. package/dist/client/components/preview/live-preview-mode.mjs +210 -175
  12. package/dist/client/components/preview/preview-pane.mjs +288 -333
  13. package/dist/client/components/primitives/option-label.mjs +44 -0
  14. package/dist/client/components/primitives/select-multi.mjs +408 -383
  15. package/dist/client/components/primitives/select-single.mjs +387 -357
  16. package/dist/client/components/widgets/chart-widget.mjs +168 -143
  17. package/dist/client/contexts/focus-context.d.mts +16 -1
  18. package/dist/client/contexts/focus-context.mjs +90 -38
  19. package/dist/client/hooks/use-brand.mjs +2 -1
  20. package/dist/client/preview/block-scope-context.d.mts +2 -2
  21. package/dist/client/preview/block-scope-context.mjs +10 -20
  22. package/dist/client/preview/index.d.mts +1 -1
  23. package/dist/client/preview/patch.mjs +100 -0
  24. package/dist/client/preview/preview-banner.d.mts +2 -2
  25. package/dist/client/preview/preview-field.d.mts +34 -5
  26. package/dist/client/preview/preview-field.mjs +385 -118
  27. package/dist/client/preview/types.d.mts +82 -3
  28. package/dist/client/preview/types.mjs +85 -6
  29. package/dist/client/preview/use-collection-preview.d.mts +19 -1
  30. package/dist/client/preview/use-collection-preview.mjs +182 -58
  31. package/dist/client/runtime/index.d.mts +2 -2
  32. package/dist/client/runtime/index.mjs +2 -2
  33. package/dist/client/runtime/provider.d.mts +5 -5
  34. package/dist/client/utils/build-field-definitions-from-schema.mjs +8 -3
  35. package/dist/client/views/auth/accept-invite-form.d.mts +2 -2
  36. package/dist/client/views/auth/auth-layout.d.mts +3 -3
  37. package/dist/client/views/auth/login-form.d.mts +2 -2
  38. package/dist/client/views/auth/reset-password-form.d.mts +2 -2
  39. package/dist/client/views/auth/setup-form.d.mts +2 -2
  40. package/dist/client/views/collection/bulk-action-toolbar.mjs +23 -25
  41. package/dist/client/views/collection/cells/primitive-cells.mjs +63 -13
  42. package/dist/client/views/collection/columns/build-columns.mjs +1 -0
  43. package/dist/client/views/collection/form-view.mjs +262 -33
  44. package/dist/client/views/collection/table-view.mjs +16 -11
  45. package/dist/client/views/layout/admin-layout-provider.d.mts +5 -5
  46. package/dist/client/views/layout/admin-layout-provider.mjs +107 -16
  47. package/dist/client/views/pages/accept-invite-page.d.mts +2 -2
  48. package/dist/client/views/pages/dashboard-page.d.mts +2 -2
  49. package/dist/client/views/pages/forgot-password-page.d.mts +2 -2
  50. package/dist/client/views/pages/reset-password-page.d.mts +2 -2
  51. package/dist/client/views/pages/setup-page.d.mts +2 -2
  52. package/dist/client.d.mts +2 -2
  53. package/dist/client.mjs +1 -1
  54. package/dist/index.d.mts +2 -2
  55. package/dist/index.mjs +1 -1
  56. package/dist/server/augmentation/common.d.mts +8 -4
  57. package/dist/server/augmentation/form-layout.d.mts +1 -1
  58. package/dist/server/i18n/messages/cs.mjs +11 -0
  59. package/dist/server/i18n/messages/de.mjs +11 -0
  60. package/dist/server/i18n/messages/en.mjs +11 -0
  61. package/dist/server/i18n/messages/es.mjs +11 -0
  62. package/dist/server/i18n/messages/fr.mjs +11 -0
  63. package/dist/server/i18n/messages/pl.mjs +11 -0
  64. package/dist/server/i18n/messages/pt.mjs +11 -0
  65. package/dist/server/i18n/messages/sk.mjs +11 -0
  66. package/dist/server/modules/admin/block/block-builder.d.mts +7 -10
  67. package/dist/server/modules/admin/block/block-builder.mjs +7 -10
  68. package/dist/server/modules/admin/collections/apikey.d.mts +64 -64
  69. package/dist/server/modules/admin/collections/assets.d.mts +57 -20
  70. package/dist/server/modules/admin/collections/session.d.mts +38 -38
  71. package/dist/server/modules/admin/collections/user.d.mts +100 -34
  72. package/dist/server/modules/admin/collections/user.mjs +4 -4
  73. package/dist/server/modules/admin/collections/verification.d.mts +31 -31
  74. package/dist/server/modules/admin/index.d.mts +3 -3
  75. package/dist/server/modules/admin/routes/admin-config.d.mts +2 -2
  76. package/dist/server/modules/admin/routes/admin-config.mjs +9 -12
  77. package/dist/server/modules/admin/routes/execute-action.d.mts +9 -9
  78. package/dist/server/modules/admin/routes/locales.d.mts +2 -2
  79. package/dist/server/modules/admin/routes/preview.d.mts +11 -11
  80. package/dist/server/modules/admin/routes/reactive.d.mts +9 -9
  81. package/dist/server/modules/admin/routes/translations.d.mts +4 -4
  82. package/dist/server/modules/admin/routes/translations.mjs +1 -1
  83. package/dist/server/modules/admin-preferences/collections/admin-preferences.mjs +4 -6
  84. package/dist/server/modules/admin-preferences/collections/saved-views.d.mts +4 -6
  85. package/dist/server/modules/admin-preferences/collections/saved-views.mjs +4 -6
  86. package/package.json +3 -3
@@ -34,6 +34,7 @@ function viewConfigEqual(a, b) {
34
34
  return filtersEqual(a.filters, b.filters) && sortConfigEqual(a.sortConfig, b.sortConfig) && arraysEqual(a.visibleColumns, b.visibleColumns, (x, y) => x === y) && a.groupBy === b.groupBy && arraysEqual(a.collapsedGroups ?? [], b.collapsedGroups ?? [], (x, y) => x === y) && a.realtime === b.realtime && a.includeDeleted === b.includeDeleted;
35
35
  }
36
36
  const EMPTY_SAVED_VIEWS = [];
37
+ const EMPTY_GROUPABLE_FIELDS = [];
37
38
  function normalizeSavedViewConfig(config) {
38
39
  return {
39
40
  filters: config.filters ?? [],
@@ -102,32 +103,26 @@ function ViewOptionRow(t0) {
102
103
  return t5;
103
104
  }
104
105
  function FilterBuilderSheet(t0) {
105
- const $ = c(126);
106
+ const $ = c(124);
106
107
  const { collection, availableFields, currentConfig, onConfigChange, isOpen, onOpenChange, defaultColumns, savedViews, savedViewsLoading: t1, onSaveView, onDeleteView, supportsSoftDelete: t2, groupableFields: t3, defaultGroupBy: t4 } = t0;
107
108
  const savedViewsLoading = t1 === void 0 ? false : t1;
108
109
  const supportsSoftDelete = t2 === void 0 ? false : t2;
109
- let t5;
110
- if ($[0] !== t3) {
111
- t5 = t3 === void 0 ? [] : t3;
112
- $[0] = t3;
113
- $[1] = t5;
114
- } else t5 = $[1];
115
- const groupableFields = t5;
110
+ const groupableFields = t3 === void 0 ? EMPTY_GROUPABLE_FIELDS : t3;
116
111
  const defaultGroupBy = t4 === void 0 ? null : t4;
117
112
  const resolvedSavedViews = savedViews ?? EMPTY_SAVED_VIEWS;
118
113
  const { t } = useTranslation();
119
114
  const [localConfig, setLocalConfig] = useState(currentConfig);
120
- let t6;
121
- if ($[2] !== currentConfig || $[3] !== isOpen) {
122
- t6 = {
115
+ let t5;
116
+ if ($[0] !== currentConfig || $[1] !== isOpen) {
117
+ t5 = {
123
118
  isOpen,
124
119
  currentConfig
125
120
  };
126
- $[2] = currentConfig;
127
- $[3] = isOpen;
128
- $[4] = t6;
129
- } else t6 = $[4];
130
- const [prev, setPrev] = useState(t6);
121
+ $[0] = currentConfig;
122
+ $[1] = isOpen;
123
+ $[2] = t5;
124
+ } else t5 = $[2];
125
+ const [prev, setPrev] = useState(t5);
131
126
  if (prev.isOpen !== isOpen || prev.currentConfig !== currentConfig) {
132
127
  setPrev({
133
128
  isOpen,
@@ -135,39 +130,39 @@ function FilterBuilderSheet(t0) {
135
130
  });
136
131
  if (isOpen) setLocalConfig(currentConfig);
137
132
  }
138
- let t7;
139
- if ($[5] === Symbol.for("react.memo_cache_sentinel")) {
140
- t7 = (view) => {
133
+ let t6;
134
+ if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
135
+ t6 = (view) => {
141
136
  setLocalConfig(normalizeSavedViewConfig(view.configuration));
142
137
  };
143
- $[5] = t7;
144
- } else t7 = $[5];
145
- const handleLoadView = t7;
146
- let t8;
147
- if ($[6] !== localConfig || $[7] !== onSaveView) {
148
- t8 = (name) => {
138
+ $[3] = t6;
139
+ } else t6 = $[3];
140
+ const handleLoadView = t6;
141
+ let t7;
142
+ if ($[4] !== localConfig || $[5] !== onSaveView) {
143
+ t7 = (name) => {
149
144
  onSaveView?.(name, normalizeSavedViewConfig(localConfig));
150
145
  };
151
- $[6] = localConfig;
152
- $[7] = onSaveView;
153
- $[8] = t8;
154
- } else t8 = $[8];
155
- const handleSaveView = t8;
156
- let t9;
157
- if ($[9] !== localConfig || $[10] !== onConfigChange || $[11] !== onOpenChange) {
158
- t9 = () => {
146
+ $[4] = localConfig;
147
+ $[5] = onSaveView;
148
+ $[6] = t7;
149
+ } else t7 = $[6];
150
+ const handleSaveView = t7;
151
+ let t8;
152
+ if ($[7] !== localConfig || $[8] !== onConfigChange || $[9] !== onOpenChange) {
153
+ t8 = () => {
159
154
  onConfigChange(localConfig);
160
155
  onOpenChange(false);
161
156
  };
162
- $[9] = localConfig;
163
- $[10] = onConfigChange;
164
- $[11] = onOpenChange;
165
- $[12] = t9;
166
- } else t9 = $[12];
167
- const handleApply = t9;
168
- let t10;
169
- if ($[13] !== availableFields || $[14] !== defaultColumns || $[15] !== defaultGroupBy) {
170
- t10 = () => {
157
+ $[7] = localConfig;
158
+ $[8] = onConfigChange;
159
+ $[9] = onOpenChange;
160
+ $[10] = t8;
161
+ } else t8 = $[10];
162
+ const handleApply = t8;
163
+ let t9;
164
+ if ($[11] !== availableFields || $[12] !== defaultColumns || $[13] !== defaultGroupBy) {
165
+ t9 = () => {
171
166
  setLocalConfig({
172
167
  filters: [],
173
168
  sortConfig: null,
@@ -178,114 +173,114 @@ function FilterBuilderSheet(t0) {
178
173
  includeDeleted: false
179
174
  });
180
175
  };
181
- $[13] = availableFields;
182
- $[14] = defaultColumns;
183
- $[15] = defaultGroupBy;
184
- $[16] = t10;
185
- } else t10 = $[16];
186
- const handleReset = t10;
176
+ $[11] = availableFields;
177
+ $[12] = defaultColumns;
178
+ $[13] = defaultGroupBy;
179
+ $[14] = t9;
180
+ } else t9 = $[14];
181
+ const handleReset = t9;
182
+ let t10;
183
+ if ($[15] !== currentConfig || $[16] !== localConfig) {
184
+ t10 = viewConfigEqual(localConfig, currentConfig);
185
+ $[15] = currentConfig;
186
+ $[16] = localConfig;
187
+ $[17] = t10;
188
+ } else t10 = $[17];
189
+ const hasChanges = !t10;
187
190
  let t11;
188
- if ($[17] !== currentConfig || $[18] !== localConfig) {
189
- t11 = viewConfigEqual(localConfig, currentConfig);
190
- $[17] = currentConfig;
191
- $[18] = localConfig;
191
+ if ($[18] !== t) {
192
+ t11 = t("viewOptions.noGrouping");
193
+ $[18] = t;
192
194
  $[19] = t11;
193
195
  } else t11 = $[19];
194
- const hasChanges = !t11;
195
196
  let t12;
196
- if ($[20] !== t) {
197
- t12 = t("viewOptions.noGrouping");
198
- $[20] = t;
199
- $[21] = t12;
200
- } else t12 = $[21];
201
- let t13;
202
- if ($[22] === Symbol.for("react.memo_cache_sentinel")) {
203
- t13 = /* @__PURE__ */ jsx(Icon, {
197
+ if ($[20] === Symbol.for("react.memo_cache_sentinel")) {
198
+ t12 = /* @__PURE__ */ jsx(Icon, {
204
199
  icon: "ph:stack-simple",
205
200
  className: "size-4 opacity-60"
206
201
  });
202
+ $[20] = t12;
203
+ } else t12 = $[20];
204
+ let t13;
205
+ if ($[21] !== t11) {
206
+ t13 = {
207
+ value: NO_GROUPING_VALUE,
208
+ label: t11,
209
+ icon: t12
210
+ };
211
+ $[21] = t11;
207
212
  $[22] = t13;
208
213
  } else t13 = $[22];
209
214
  let t14;
210
- if ($[23] !== t12) {
211
- t14 = {
212
- value: NO_GROUPING_VALUE,
213
- label: t12,
214
- icon: t13
215
- };
216
- $[23] = t12;
217
- $[24] = t14;
218
- } else t14 = $[24];
215
+ if ($[23] !== groupableFields || $[24] !== t13) {
216
+ t14 = [t13, ...groupableFields.map(_temp2)];
217
+ $[23] = groupableFields;
218
+ $[24] = t13;
219
+ $[25] = t14;
220
+ } else t14 = $[25];
221
+ const groupByOptions = t14;
219
222
  let t15;
220
- if ($[25] !== groupableFields || $[26] !== t14) {
221
- t15 = [t14, ...groupableFields.map(_temp2)];
222
- $[25] = groupableFields;
223
- $[26] = t14;
223
+ if ($[26] !== t) {
224
+ t15 = t("viewOptions.title");
225
+ $[26] = t;
224
226
  $[27] = t15;
225
227
  } else t15 = $[27];
226
- const groupByOptions = t15;
227
228
  let t16;
228
- if ($[28] !== t) {
229
- t16 = t("viewOptions.title");
230
- $[28] = t;
229
+ if ($[28] !== t15) {
230
+ t16 = /* @__PURE__ */ jsx(SheetHeader, {
231
+ className: "px-6 pt-6",
232
+ children: /* @__PURE__ */ jsx(SheetTitle, { children: t15 })
233
+ });
234
+ $[28] = t15;
231
235
  $[29] = t16;
232
236
  } else t16 = $[29];
233
237
  let t17;
234
- if ($[30] !== t16) {
235
- t17 = /* @__PURE__ */ jsx(SheetHeader, {
236
- className: "px-6 pt-6",
237
- children: /* @__PURE__ */ jsx(SheetTitle, { children: t16 })
238
- });
239
- $[30] = t16;
238
+ if ($[30] !== t) {
239
+ t17 = t("viewOptions.realtime");
240
+ $[30] = t;
240
241
  $[31] = t17;
241
242
  } else t17 = $[31];
242
243
  let t18;
243
244
  if ($[32] !== t) {
244
- t18 = t("viewOptions.realtime");
245
+ t18 = t("viewOptions.realtimeDescription");
245
246
  $[32] = t;
246
247
  $[33] = t18;
247
248
  } else t18 = $[33];
248
- let t19;
249
- if ($[34] !== t) {
250
- t19 = t("viewOptions.realtimeDescription");
251
- $[34] = t;
252
- $[35] = t19;
253
- } else t19 = $[35];
254
- const t20 = localConfig.realtime ?? true;
255
- let t21;
256
- if ($[36] !== localConfig) {
257
- t21 = (checked) => setLocalConfig({
249
+ const t19 = localConfig.realtime ?? true;
250
+ let t20;
251
+ if ($[34] !== localConfig) {
252
+ t20 = (checked) => setLocalConfig({
258
253
  ...localConfig,
259
254
  realtime: checked
260
255
  });
261
- $[36] = localConfig;
262
- $[37] = t21;
263
- } else t21 = $[37];
256
+ $[34] = localConfig;
257
+ $[35] = t20;
258
+ } else t20 = $[35];
259
+ let t21;
260
+ if ($[36] !== t19 || $[37] !== t20) {
261
+ t21 = /* @__PURE__ */ jsx(Switch, {
262
+ checked: t19,
263
+ onCheckedChange: t20
264
+ });
265
+ $[36] = t19;
266
+ $[37] = t20;
267
+ $[38] = t21;
268
+ } else t21 = $[38];
264
269
  let t22;
265
- if ($[38] !== t20 || $[39] !== t21) {
266
- t22 = /* @__PURE__ */ jsx(Switch, {
267
- checked: t20,
268
- onCheckedChange: t21
270
+ if ($[39] !== t17 || $[40] !== t18 || $[41] !== t21) {
271
+ t22 = /* @__PURE__ */ jsx(ViewOptionRow, {
272
+ title: t17,
273
+ description: t18,
274
+ control: t21
269
275
  });
270
- $[38] = t20;
271
- $[39] = t21;
272
- $[40] = t22;
273
- } else t22 = $[40];
276
+ $[39] = t17;
277
+ $[40] = t18;
278
+ $[41] = t21;
279
+ $[42] = t22;
280
+ } else t22 = $[42];
274
281
  let t23;
275
- if ($[41] !== t18 || $[42] !== t19 || $[43] !== t22) {
276
- t23 = /* @__PURE__ */ jsx(ViewOptionRow, {
277
- title: t18,
278
- description: t19,
279
- control: t22
280
- });
281
- $[41] = t18;
282
- $[42] = t19;
283
- $[43] = t22;
284
- $[44] = t23;
285
- } else t23 = $[44];
286
- let t24;
287
- if ($[45] !== localConfig || $[46] !== supportsSoftDelete || $[47] !== t) {
288
- t24 = supportsSoftDelete && /* @__PURE__ */ jsx(ViewOptionRow, {
282
+ if ($[43] !== localConfig || $[44] !== supportsSoftDelete || $[45] !== t) {
283
+ t23 = supportsSoftDelete && /* @__PURE__ */ jsx(ViewOptionRow, {
289
284
  title: t("viewOptions.showDeleted"),
290
285
  description: t("viewOptions.showDeletedDescription"),
291
286
  control: /* @__PURE__ */ jsx(Switch, {
@@ -296,14 +291,14 @@ function FilterBuilderSheet(t0) {
296
291
  })
297
292
  })
298
293
  });
299
- $[45] = localConfig;
300
- $[46] = supportsSoftDelete;
301
- $[47] = t;
302
- $[48] = t24;
303
- } else t24 = $[48];
304
- let t25;
305
- if ($[49] !== groupByOptions || $[50] !== groupableFields.length || $[51] !== localConfig || $[52] !== t) {
306
- t25 = groupableFields.length > 0 && /* @__PURE__ */ jsx(ViewOptionRow, {
294
+ $[43] = localConfig;
295
+ $[44] = supportsSoftDelete;
296
+ $[45] = t;
297
+ $[46] = t23;
298
+ } else t23 = $[46];
299
+ let t24;
300
+ if ($[47] !== groupByOptions || $[48] !== groupableFields.length || $[49] !== localConfig || $[50] !== t) {
301
+ t24 = groupableFields.length > 0 && /* @__PURE__ */ jsx(ViewOptionRow, {
307
302
  title: t("viewOptions.groupBy"),
308
303
  description: t("viewOptions.groupByDescription"),
309
304
  control: /* @__PURE__ */ jsx(SelectSingle, {
@@ -329,152 +324,152 @@ function FilterBuilderSheet(t0) {
329
324
  className: "h-9 w-48"
330
325
  })
331
326
  });
332
- $[49] = groupByOptions;
333
- $[50] = groupableFields.length;
334
- $[51] = localConfig;
335
- $[52] = t;
336
- $[53] = t25;
337
- } else t25 = $[53];
338
- let t26;
339
- if ($[54] !== t23 || $[55] !== t24 || $[56] !== t25) {
340
- t26 = /* @__PURE__ */ jsxs("div", {
327
+ $[47] = groupByOptions;
328
+ $[48] = groupableFields.length;
329
+ $[49] = localConfig;
330
+ $[50] = t;
331
+ $[51] = t24;
332
+ } else t24 = $[51];
333
+ let t25;
334
+ if ($[52] !== t22 || $[53] !== t23 || $[54] !== t24) {
335
+ t25 = /* @__PURE__ */ jsxs("div", {
341
336
  className: "mt-4",
342
337
  children: [
338
+ t22,
343
339
  t23,
344
- t24,
345
- t25
340
+ t24
346
341
  ]
347
342
  });
348
- $[54] = t23;
349
- $[55] = t24;
350
- $[56] = t25;
343
+ $[52] = t22;
344
+ $[53] = t23;
345
+ $[54] = t24;
346
+ $[55] = t25;
347
+ } else t25 = $[55];
348
+ let t26;
349
+ if ($[56] !== t) {
350
+ t26 = t("viewOptions.columns");
351
+ $[56] = t;
351
352
  $[57] = t26;
352
353
  } else t26 = $[57];
353
354
  let t27;
354
- if ($[58] !== t) {
355
- t27 = t("viewOptions.columns");
356
- $[58] = t;
357
- $[59] = t27;
358
- } else t27 = $[59];
359
- let t28;
360
- if ($[60] !== t27) {
361
- t28 = /* @__PURE__ */ jsx(TabsTrigger, {
355
+ if ($[58] !== t26) {
356
+ t27 = /* @__PURE__ */ jsx(TabsTrigger, {
362
357
  value: "columns",
363
358
  className: "flex-1",
364
- children: t27
359
+ children: t26
365
360
  });
366
- $[60] = t27;
361
+ $[58] = t26;
362
+ $[59] = t27;
363
+ } else t27 = $[59];
364
+ let t28;
365
+ if ($[60] !== t) {
366
+ t28 = t("viewOptions.filters");
367
+ $[60] = t;
367
368
  $[61] = t28;
368
369
  } else t28 = $[61];
369
370
  let t29;
370
- if ($[62] !== t) {
371
- t29 = t("viewOptions.filters");
372
- $[62] = t;
373
- $[63] = t29;
374
- } else t29 = $[63];
375
- let t30;
376
- if ($[64] !== localConfig.filters.length) {
377
- t30 = localConfig.filters.length > 0 && /* @__PURE__ */ jsx("span", {
371
+ if ($[62] !== localConfig.filters.length) {
372
+ t29 = localConfig.filters.length > 0 && /* @__PURE__ */ jsx("span", {
378
373
  className: "bg-foreground text-background ml-1.5 rounded-full px-1.5 py-0.5 text-xs tabular-nums",
379
374
  children: localConfig.filters.length
380
375
  });
381
- $[64] = localConfig.filters.length;
382
- $[65] = t30;
383
- } else t30 = $[65];
384
- let t31;
385
- if ($[66] !== t29 || $[67] !== t30) {
386
- t31 = /* @__PURE__ */ jsxs(TabsTrigger, {
376
+ $[62] = localConfig.filters.length;
377
+ $[63] = t29;
378
+ } else t29 = $[63];
379
+ let t30;
380
+ if ($[64] !== t28 || $[65] !== t29) {
381
+ t30 = /* @__PURE__ */ jsxs(TabsTrigger, {
387
382
  value: "filters",
388
383
  className: "flex-1",
389
- children: [t29, t30]
384
+ children: [t28, t29]
390
385
  });
391
- $[66] = t29;
392
- $[67] = t30;
386
+ $[64] = t28;
387
+ $[65] = t29;
388
+ $[66] = t30;
389
+ } else t30 = $[66];
390
+ let t31;
391
+ if ($[67] !== t) {
392
+ t31 = t("viewOptions.savedViews");
393
+ $[67] = t;
393
394
  $[68] = t31;
394
395
  } else t31 = $[68];
395
396
  let t32;
396
- if ($[69] !== t) {
397
- t32 = t("viewOptions.savedViews");
398
- $[69] = t;
399
- $[70] = t32;
400
- } else t32 = $[70];
401
- let t33;
402
- if ($[71] !== t32) {
403
- t33 = /* @__PURE__ */ jsx(TabsTrigger, {
397
+ if ($[69] !== t31) {
398
+ t32 = /* @__PURE__ */ jsx(TabsTrigger, {
404
399
  value: "views",
405
400
  className: "flex-1",
406
- children: t32
401
+ children: t31
407
402
  });
408
- $[71] = t32;
409
- $[72] = t33;
410
- } else t33 = $[72];
411
- let t34;
412
- if ($[73] !== t28 || $[74] !== t31 || $[75] !== t33) {
413
- t34 = /* @__PURE__ */ jsxs(TabsList, {
403
+ $[69] = t31;
404
+ $[70] = t32;
405
+ } else t32 = $[70];
406
+ let t33;
407
+ if ($[71] !== t27 || $[72] !== t30 || $[73] !== t32) {
408
+ t33 = /* @__PURE__ */ jsxs(TabsList, {
414
409
  className: "w-full",
415
410
  children: [
416
- t28,
417
- t31,
418
- t33
411
+ t27,
412
+ t30,
413
+ t32
419
414
  ]
420
415
  });
421
- $[73] = t28;
422
- $[74] = t31;
423
- $[75] = t33;
424
- $[76] = t34;
425
- } else t34 = $[76];
426
- let t35;
427
- if ($[77] !== localConfig) {
428
- t35 = (columns) => setLocalConfig({
416
+ $[71] = t27;
417
+ $[72] = t30;
418
+ $[73] = t32;
419
+ $[74] = t33;
420
+ } else t33 = $[74];
421
+ let t34;
422
+ if ($[75] !== localConfig) {
423
+ t34 = (columns) => setLocalConfig({
429
424
  ...localConfig,
430
425
  visibleColumns: columns
431
426
  });
432
- $[77] = localConfig;
433
- $[78] = t35;
434
- } else t35 = $[78];
435
- let t36;
436
- if ($[79] !== availableFields || $[80] !== localConfig.visibleColumns || $[81] !== t35) {
437
- t36 = /* @__PURE__ */ jsx(TabsContent, {
427
+ $[75] = localConfig;
428
+ $[76] = t34;
429
+ } else t34 = $[76];
430
+ let t35;
431
+ if ($[77] !== availableFields || $[78] !== localConfig.visibleColumns || $[79] !== t34) {
432
+ t35 = /* @__PURE__ */ jsx(TabsContent, {
438
433
  value: "columns",
439
434
  children: /* @__PURE__ */ jsx(ColumnsTab, {
440
435
  fields: availableFields,
441
436
  visibleColumns: localConfig.visibleColumns,
442
- onVisibleColumnsChange: t35
437
+ onVisibleColumnsChange: t34
443
438
  })
444
439
  });
445
- $[79] = availableFields;
446
- $[80] = localConfig.visibleColumns;
447
- $[81] = t35;
448
- $[82] = t36;
449
- } else t36 = $[82];
450
- let t37;
451
- if ($[83] !== localConfig) {
452
- t37 = (filters) => setLocalConfig({
440
+ $[77] = availableFields;
441
+ $[78] = localConfig.visibleColumns;
442
+ $[79] = t34;
443
+ $[80] = t35;
444
+ } else t35 = $[80];
445
+ let t36;
446
+ if ($[81] !== localConfig) {
447
+ t36 = (filters) => setLocalConfig({
453
448
  ...localConfig,
454
449
  filters
455
450
  });
456
- $[83] = localConfig;
457
- $[84] = t37;
458
- } else t37 = $[84];
459
- let t38;
460
- if ($[85] !== availableFields || $[86] !== localConfig.filters || $[87] !== t37) {
461
- t38 = /* @__PURE__ */ jsx(TabsContent, {
451
+ $[81] = localConfig;
452
+ $[82] = t36;
453
+ } else t36 = $[82];
454
+ let t37;
455
+ if ($[83] !== availableFields || $[84] !== localConfig.filters || $[85] !== t36) {
456
+ t37 = /* @__PURE__ */ jsx(TabsContent, {
462
457
  value: "filters",
463
458
  children: /* @__PURE__ */ jsx(FiltersTab, {
464
459
  fields: availableFields,
465
460
  filters: localConfig.filters,
466
- onFiltersChange: t37
461
+ onFiltersChange: t36
467
462
  })
468
463
  });
469
- $[85] = availableFields;
470
- $[86] = localConfig.filters;
471
- $[87] = t37;
472
- $[88] = t38;
473
- } else t38 = $[88];
474
- const t39 = onDeleteView || _temp3;
475
- let t40;
476
- if ($[89] !== collection || $[90] !== handleSaveView || $[91] !== localConfig || $[92] !== resolvedSavedViews || $[93] !== savedViewsLoading || $[94] !== t39) {
477
- t40 = /* @__PURE__ */ jsx(TabsContent, {
464
+ $[83] = availableFields;
465
+ $[84] = localConfig.filters;
466
+ $[85] = t36;
467
+ $[86] = t37;
468
+ } else t37 = $[86];
469
+ const t38 = onDeleteView || _temp3;
470
+ let t39;
471
+ if ($[87] !== collection || $[88] !== handleSaveView || $[89] !== localConfig || $[90] !== resolvedSavedViews || $[91] !== savedViewsLoading || $[92] !== t38) {
472
+ t39 = /* @__PURE__ */ jsx(TabsContent, {
478
473
  value: "views",
479
474
  children: /* @__PURE__ */ jsx(SavedViewsTab, {
480
475
  collection,
@@ -483,124 +478,124 @@ function FilterBuilderSheet(t0) {
483
478
  isLoading: savedViewsLoading,
484
479
  onLoadView: handleLoadView,
485
480
  onSaveView: handleSaveView,
486
- onDeleteView: t39
481
+ onDeleteView: t38
487
482
  })
488
483
  });
489
- $[89] = collection;
490
- $[90] = handleSaveView;
491
- $[91] = localConfig;
492
- $[92] = resolvedSavedViews;
493
- $[93] = savedViewsLoading;
494
- $[94] = t39;
495
- $[95] = t40;
496
- } else t40 = $[95];
497
- let t41;
498
- if ($[96] !== t34 || $[97] !== t36 || $[98] !== t38 || $[99] !== t40) {
499
- t41 = /* @__PURE__ */ jsxs(Tabs, {
484
+ $[87] = collection;
485
+ $[88] = handleSaveView;
486
+ $[89] = localConfig;
487
+ $[90] = resolvedSavedViews;
488
+ $[91] = savedViewsLoading;
489
+ $[92] = t38;
490
+ $[93] = t39;
491
+ } else t39 = $[93];
492
+ let t40;
493
+ if ($[94] !== t33 || $[95] !== t35 || $[96] !== t37 || $[97] !== t39) {
494
+ t40 = /* @__PURE__ */ jsxs(Tabs, {
500
495
  defaultValue: "columns",
501
496
  className: "mt-4",
502
497
  children: [
503
- t34,
504
- t36,
505
- t38,
506
- t40
498
+ t33,
499
+ t35,
500
+ t37,
501
+ t39
507
502
  ]
508
503
  });
509
- $[96] = t34;
510
- $[97] = t36;
511
- $[98] = t38;
512
- $[99] = t40;
513
- $[100] = t41;
514
- } else t41 = $[100];
515
- let t42;
516
- if ($[101] !== t26 || $[102] !== t41) {
517
- t42 = /* @__PURE__ */ jsxs("div", {
504
+ $[94] = t33;
505
+ $[95] = t35;
506
+ $[96] = t37;
507
+ $[97] = t39;
508
+ $[98] = t40;
509
+ } else t40 = $[98];
510
+ let t41;
511
+ if ($[99] !== t25 || $[100] !== t40) {
512
+ t41 = /* @__PURE__ */ jsxs("div", {
518
513
  className: "flex-1 overflow-y-auto px-6",
519
- children: [t26, t41]
514
+ children: [t25, t40]
520
515
  });
521
- $[101] = t26;
522
- $[102] = t41;
516
+ $[99] = t25;
517
+ $[100] = t40;
518
+ $[101] = t41;
519
+ } else t41 = $[101];
520
+ let t42;
521
+ if ($[102] !== t) {
522
+ t42 = t("viewOptions.reset");
523
+ $[102] = t;
523
524
  $[103] = t42;
524
525
  } else t42 = $[103];
525
526
  let t43;
526
- if ($[104] !== t) {
527
- t43 = t("viewOptions.reset");
528
- $[104] = t;
529
- $[105] = t43;
530
- } else t43 = $[105];
531
- let t44;
532
- if ($[106] !== handleReset || $[107] !== t43) {
533
- t44 = /* @__PURE__ */ jsx(Button, {
527
+ if ($[104] !== handleReset || $[105] !== t42) {
528
+ t43 = /* @__PURE__ */ jsx(Button, {
534
529
  variant: "outline",
535
530
  onClick: handleReset,
536
531
  className: "flex-1",
537
- children: t43
532
+ children: t42
538
533
  });
539
- $[106] = handleReset;
540
- $[107] = t43;
534
+ $[104] = handleReset;
535
+ $[105] = t42;
536
+ $[106] = t43;
537
+ } else t43 = $[106];
538
+ let t44;
539
+ if ($[107] !== t) {
540
+ t44 = t("viewOptions.apply");
541
+ $[107] = t;
541
542
  $[108] = t44;
542
543
  } else t44 = $[108];
543
- let t45;
544
- if ($[109] !== t) {
545
- t45 = t("viewOptions.apply");
546
- $[109] = t;
547
- $[110] = t45;
548
- } else t45 = $[110];
549
- const t46 = hasChanges && " *";
550
- let t47;
551
- if ($[111] !== handleApply || $[112] !== t45 || $[113] !== t46) {
552
- t47 = /* @__PURE__ */ jsxs(Button, {
544
+ const t45 = hasChanges && " *";
545
+ let t46;
546
+ if ($[109] !== handleApply || $[110] !== t44 || $[111] !== t45) {
547
+ t46 = /* @__PURE__ */ jsxs(Button, {
553
548
  onClick: handleApply,
554
549
  className: "flex-1",
555
- children: [t45, t46]
550
+ children: [t44, t45]
556
551
  });
557
- $[111] = handleApply;
558
- $[112] = t45;
559
- $[113] = t46;
560
- $[114] = t47;
561
- } else t47 = $[114];
562
- let t48;
563
- if ($[115] !== t44 || $[116] !== t47) {
564
- t48 = /* @__PURE__ */ jsx(SheetFooter, {
552
+ $[109] = handleApply;
553
+ $[110] = t44;
554
+ $[111] = t45;
555
+ $[112] = t46;
556
+ } else t46 = $[112];
557
+ let t47;
558
+ if ($[113] !== t43 || $[114] !== t46) {
559
+ t47 = /* @__PURE__ */ jsx(SheetFooter, {
565
560
  className: "mt-4 border-t px-6 py-4",
566
561
  children: /* @__PURE__ */ jsxs("div", {
567
562
  className: "flex w-full gap-2",
568
- children: [t44, t47]
563
+ children: [t43, t46]
569
564
  })
570
565
  });
571
- $[115] = t44;
572
- $[116] = t47;
573
- $[117] = t48;
574
- } else t48 = $[117];
575
- let t49;
576
- if ($[118] !== t17 || $[119] !== t42 || $[120] !== t48) {
577
- t49 = /* @__PURE__ */ jsxs(SheetContent, {
566
+ $[113] = t43;
567
+ $[114] = t46;
568
+ $[115] = t47;
569
+ } else t47 = $[115];
570
+ let t48;
571
+ if ($[116] !== t16 || $[117] !== t41 || $[118] !== t47) {
572
+ t48 = /* @__PURE__ */ jsxs(SheetContent, {
578
573
  side: "right",
579
574
  className: "qa-filter-builder flex flex-col p-0 sm:max-w-md",
580
575
  children: [
581
- t17,
582
- t42,
583
- t48
576
+ t16,
577
+ t41,
578
+ t47
584
579
  ]
585
580
  });
586
- $[118] = t17;
587
- $[119] = t42;
588
- $[120] = t48;
589
- $[121] = t49;
590
- } else t49 = $[121];
591
- let t50;
592
- if ($[122] !== isOpen || $[123] !== onOpenChange || $[124] !== t49) {
593
- t50 = /* @__PURE__ */ jsx(Sheet, {
581
+ $[116] = t16;
582
+ $[117] = t41;
583
+ $[118] = t47;
584
+ $[119] = t48;
585
+ } else t48 = $[119];
586
+ let t49;
587
+ if ($[120] !== isOpen || $[121] !== onOpenChange || $[122] !== t48) {
588
+ t49 = /* @__PURE__ */ jsx(Sheet, {
594
589
  open: isOpen,
595
590
  onOpenChange,
596
- children: t49
591
+ children: t48
597
592
  });
598
- $[122] = isOpen;
599
- $[123] = onOpenChange;
600
- $[124] = t49;
601
- $[125] = t50;
602
- } else t50 = $[125];
603
- return t50;
593
+ $[120] = isOpen;
594
+ $[121] = onOpenChange;
595
+ $[122] = t48;
596
+ $[123] = t49;
597
+ } else t49 = $[123];
598
+ return t49;
604
599
  }
605
600
  function _temp3() {}
606
601
  function _temp2(field) {