@questpie/admin 3.5.2 → 3.5.3

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 (100) hide show
  1. package/dist/client/blocks/block-renderer.d.mts +2 -2
  2. package/dist/client/builder/types/collection-types.d.mts +9 -0
  3. package/dist/client/components/actions/action-dialog.mjs +5 -0
  4. package/dist/client/components/fields/rich-text-editor/bubble-menu.mjs +7 -0
  5. package/dist/client/components/fields/rich-text-editor/extensions.mjs +17 -1
  6. package/dist/client/components/fields/rich-text-editor/index.d.mts +2 -1
  7. package/dist/client/components/fields/rich-text-editor/index.mjs +35 -74
  8. package/dist/client/components/fields/rich-text-editor/slash-commands.mjs +30 -7
  9. package/dist/client/components/fields/rich-text-editor/toolbar.mjs +1 -312
  10. package/dist/client/components/fields/rich-text-editor/types.d.mts +4 -0
  11. package/dist/client/components/fields/rich-text-editor/types.mjs +1 -1
  12. package/dist/client/components/fields/rich-text-editor/utils.mjs +6 -12
  13. package/dist/client/components/filter-builder/filter-builder-sheet.mjs +75 -22
  14. package/dist/client/components/ui/dropdown-menu.mjs +1 -34
  15. package/dist/client/hooks/query-access.d.mts +9 -0
  16. package/dist/client/hooks/query-access.mjs +20 -0
  17. package/dist/client/hooks/typed-hooks.d.mts +4 -2
  18. package/dist/client/hooks/typed-hooks.mjs +30 -29
  19. package/dist/client/hooks/use-reactive-fields.d.mts +1 -0
  20. package/dist/client/hooks/use-reactive-fields.mjs +16 -1
  21. package/dist/client/hooks/use-server-actions.mjs +12 -1
  22. package/dist/client/hooks/use-view-state.mjs +15 -7
  23. package/dist/client/lib/view-filter-utils.mjs +30 -0
  24. package/dist/client/preview/block-scope-context.d.mts +2 -2
  25. package/dist/client/preview/preview-banner.d.mts +2 -2
  26. package/dist/client/preview/preview-field.d.mts +4 -4
  27. package/dist/client/styles/base.css +69 -77
  28. package/dist/client/utils/build-field-definitions-from-schema.mjs +1 -0
  29. package/dist/client/views/auth/accept-invite-form.d.mts +2 -2
  30. package/dist/client/views/auth/auth-layout.d.mts +3 -3
  31. package/dist/client/views/auth/login-form.d.mts +2 -2
  32. package/dist/client/views/auth/reset-password-form.d.mts +2 -2
  33. package/dist/client/views/collection/auto-form-fields.mjs +3 -2
  34. package/dist/client/views/collection/cells/primitive-cells.mjs +9 -6
  35. package/dist/client/views/collection/columns/build-columns.mjs +3 -1
  36. package/dist/client/views/collection/field-renderer.mjs +11 -3
  37. package/dist/client/views/collection/form-view.mjs +207 -202
  38. package/dist/client/views/collection/list-view.mjs +581 -183
  39. package/dist/client/views/collection/outline.mjs +44 -19
  40. package/dist/client/views/collection/quick-filter-bar.mjs +45 -0
  41. package/dist/client/views/collection/table-view.mjs +60 -16
  42. package/dist/client/views/globals/global-form-view.mjs +12 -9
  43. package/dist/client/views/layout/admin-layout.mjs +1 -1
  44. package/dist/client/views/layout/admin-sidebar.mjs +20 -14
  45. package/dist/client/views/layout/admin-theme.mjs +5 -4
  46. package/dist/client.mjs +1 -1
  47. package/dist/components/rich-text/rich-text-renderer.d.mts +5 -5
  48. package/dist/components/rich-text/rich-text-renderer.mjs +5 -2
  49. package/dist/index.mjs +1 -1
  50. package/dist/modules/admin.d.mts +1 -1
  51. package/dist/server/augmentation/actions.d.mts +4 -3
  52. package/dist/server/augmentation/dashboard.d.mts +11 -11
  53. package/dist/server/augmentation/form-layout.d.mts +11 -6
  54. package/dist/server/augmentation/index.d.mts +7 -0
  55. package/dist/server/augmentation/sidebar.d.mts +8 -8
  56. package/dist/server/codegen/admin-client-template.mjs +7 -6
  57. package/dist/server/fields/index.d.mts +1 -1
  58. package/dist/server/fields/rich-text.d.mts +16 -17
  59. package/dist/server/fields/rich-text.mjs +18 -7
  60. package/dist/server/i18n/messages/cs.mjs +2 -0
  61. package/dist/server/i18n/messages/de.mjs +2 -0
  62. package/dist/server/i18n/messages/en.mjs +4 -0
  63. package/dist/server/i18n/messages/es.mjs +2 -0
  64. package/dist/server/i18n/messages/fr.mjs +2 -0
  65. package/dist/server/i18n/messages/pl.mjs +2 -0
  66. package/dist/server/i18n/messages/pt.mjs +2 -0
  67. package/dist/server/i18n/messages/sk.mjs +2 -0
  68. package/dist/server/modules/admin/block/block-builder.d.mts +0 -8
  69. package/dist/server/modules/admin/block/introspection.d.mts +2 -2
  70. package/dist/server/modules/admin/collections/account.d.mts +53 -52
  71. package/dist/server/modules/admin/collections/admin-locks.d.mts +4 -3
  72. package/dist/server/modules/admin/collections/admin-preferences.d.mts +38 -37
  73. package/dist/server/modules/admin/collections/admin-saved-views.d.mts +50 -49
  74. package/dist/server/modules/admin/collections/apikey.d.mts +72 -71
  75. package/dist/server/modules/admin/collections/assets.d.mts +42 -41
  76. package/dist/server/modules/admin/collections/session.d.mts +46 -45
  77. package/dist/server/modules/admin/collections/user.d.mts +67 -66
  78. package/dist/server/modules/admin/collections/verification.d.mts +39 -38
  79. package/dist/server/modules/admin/index.d.mts +3 -3
  80. package/dist/server/modules/admin/routes/admin-config.d.mts +2 -2
  81. package/dist/server/modules/admin/routes/admin-config.mjs +39 -23
  82. package/dist/server/modules/admin/routes/execute-action.mjs +28 -8
  83. package/dist/server/modules/admin/routes/locales.d.mts +2 -2
  84. package/dist/server/modules/admin/routes/preview.d.mts +11 -11
  85. package/dist/server/modules/admin/routes/reactive.d.mts +9 -9
  86. package/dist/server/modules/admin/routes/reactive.mjs +2 -2
  87. package/dist/server/modules/admin/routes/route-helpers.d.mts +11 -7
  88. package/dist/server/modules/admin/routes/setup.d.mts +7 -7
  89. package/dist/server/modules/admin/routes/translations.d.mts +4 -4
  90. package/dist/server/modules/admin/routes/widget-data.d.mts +5 -5
  91. package/dist/server/modules/admin/routes/widget-data.mjs +12 -4
  92. package/dist/server/modules/admin-preferences/collections/saved-views.d.mts +27 -27
  93. package/dist/server/modules/audit/.generated/module.d.mts +6 -6
  94. package/dist/server/modules/audit/collections/audit-log.d.mts +40 -39
  95. package/dist/server/plugin.mjs +3 -3
  96. package/dist/server.d.mts +1 -1
  97. package/dist/shared/types/index.d.mts +1 -0
  98. package/dist/shared/types/saved-views.types.d.mts +14 -7
  99. package/dist/shared.d.mts +3 -2
  100. package/package.json +4 -3
@@ -1,9 +1,10 @@
1
1
  import * as questpie_shared0 from "questpie/shared";
2
- import * as questpie16 from "questpie";
2
+ import * as questpie21 from "questpie";
3
3
  import * as questpie_src_server_modules_core_fields_email_js0 from "questpie/src/server/modules/core/fields/email.js";
4
4
  import * as questpie_src_server_modules_core_fields_json_js0 from "questpie/src/server/modules/core/fields/json.js";
5
5
  import * as drizzle_orm_pg_core0 from "drizzle-orm/pg-core";
6
6
  import * as drizzle_orm0 from "drizzle-orm";
7
+ import * as questpie_src_server_collection_builder_types_js0 from "questpie/src/server/collection/builder/types.js";
7
8
  import * as questpie_src_server_fields_operators_builtin_js0 from "questpie/src/server/fields/operators/builtin.js";
8
9
 
9
10
  //#region src/server/modules/audit/collections/audit-log.d.ts
@@ -24,22 +25,22 @@ declare const AUDIT_LOG_COLLECTION: "admin_audit_log";
24
25
  * - update: disallowed
25
26
  * - read: allowed (for admin UI display)
26
27
  */
27
- declare const auditLogCollection: questpie16.CollectionBuilder<questpie_shared0.Override<questpie_shared0.Override<questpie_shared0.Override<questpie_shared0.Override<questpie_shared0.Override<questpie_shared0.Override<questpie16.EmptyCollectionState<"admin_audit_log", undefined, {
28
- readonly text: typeof questpie16.text;
29
- readonly textarea: typeof questpie16.textarea;
28
+ declare const auditLogCollection: questpie21.CollectionBuilder<questpie_shared0.Override<questpie_shared0.Override<questpie_shared0.Override<questpie_shared0.Override<questpie_shared0.Override<questpie_shared0.Override<questpie21.EmptyCollectionState<"admin_audit_log", undefined, {
29
+ readonly text: typeof questpie21.text;
30
+ readonly textarea: typeof questpie21.textarea;
30
31
  readonly email: typeof questpie_src_server_modules_core_fields_email_js0.email;
31
- readonly url: typeof questpie16.url;
32
- readonly number: typeof questpie16.number;
33
- readonly boolean: typeof questpie16.boolean;
34
- readonly date: typeof questpie16.date;
35
- readonly datetime: typeof questpie16.datetime;
36
- readonly time: typeof questpie16.time;
37
- readonly select: typeof questpie16.select;
38
- readonly upload: typeof questpie16.upload;
39
- readonly relation: typeof questpie16.relation;
40
- readonly object: typeof questpie16.object;
32
+ readonly url: typeof questpie21.url;
33
+ readonly number: typeof questpie21.number;
34
+ readonly boolean: typeof questpie21.boolean;
35
+ readonly date: typeof questpie21.date;
36
+ readonly datetime: typeof questpie21.datetime;
37
+ readonly time: typeof questpie21.time;
38
+ readonly select: typeof questpie21.select;
39
+ readonly upload: typeof questpie21.upload;
40
+ readonly relation: typeof questpie21.relation;
41
+ readonly object: typeof questpie21.object;
41
42
  readonly json: typeof questpie_src_server_modules_core_fields_json_js0.json;
42
- readonly from: typeof questpie16.from;
43
+ readonly from: typeof questpie21.from;
43
44
  }>, {
44
45
  fields: {
45
46
  readonly action: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
@@ -57,98 +58,98 @@ declare const auditLogCollection: questpie16.CollectionBuilder<questpie_shared0.
57
58
  localized: readonly string[];
58
59
  fieldDefinitions: {
59
60
  /** Action performed: create, update, delete, transition, custom */
60
- readonly action: questpie16.FieldWithMethods<Omit<questpie16.TextFieldState, "notNull" | "column"> & {
61
+ readonly action: questpie21.FieldWithMethods<Omit<questpie21.TextFieldState, "notNull" | "column"> & {
61
62
  notNull: true;
62
63
  column: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
63
64
  } & {
64
65
  label: questpie_shared0.I18nText;
65
- }, questpie16.TextFieldMethods>;
66
+ }, questpie21.TextFieldMethods>;
66
67
  /** Resource type: collection, global, auth, system, custom */
67
- readonly resourceType: questpie16.FieldWithMethods<Omit<questpie16.TextFieldState, "notNull" | "column"> & {
68
+ readonly resourceType: questpie21.FieldWithMethods<Omit<questpie21.TextFieldState, "notNull" | "column"> & {
68
69
  notNull: true;
69
70
  column: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
70
71
  } & {
71
72
  label: questpie_shared0.I18nText;
72
- }, questpie16.TextFieldMethods>;
73
+ }, questpie21.TextFieldMethods>;
73
74
  /** Resource slug (collection/global name) */
74
- readonly resource: questpie16.FieldWithMethods<Omit<questpie16.TextFieldState, "notNull" | "column"> & {
75
+ readonly resource: questpie21.FieldWithMethods<Omit<questpie21.TextFieldState, "notNull" | "column"> & {
75
76
  notNull: true;
76
77
  column: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
77
78
  } & {
78
79
  label: questpie_shared0.I18nText;
79
- }, questpie16.TextFieldMethods>;
80
+ }, questpie21.TextFieldMethods>;
80
81
  /** ID of the specific record (null for globals) */
81
- readonly resourceId: questpie16.FieldWithMethods<questpie16.DefaultFieldState & {
82
+ readonly resourceId: questpie21.FieldWithMethods<questpie21.DefaultFieldState & {
82
83
  type: "text";
83
84
  data: string;
84
85
  column: drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>;
85
86
  operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
86
87
  } & {
87
88
  label: questpie_shared0.I18nText;
88
- }, questpie16.TextFieldMethods>;
89
+ }, questpie21.TextFieldMethods>;
89
90
  /** Denormalized display label for the affected record */
90
- readonly resourceLabel: questpie16.FieldWithMethods<questpie16.DefaultFieldState & {
91
+ readonly resourceLabel: questpie21.FieldWithMethods<questpie21.DefaultFieldState & {
91
92
  type: "text";
92
93
  data: string;
93
94
  column: drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>;
94
95
  operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
95
96
  } & {
96
97
  label: questpie_shared0.I18nText;
97
- }, questpie16.TextFieldMethods>;
98
+ }, questpie21.TextFieldMethods>;
98
99
  /** User who performed the action */
99
- readonly userId: questpie16.FieldWithMethods<questpie16.DefaultFieldState & {
100
+ readonly userId: questpie21.FieldWithMethods<questpie21.DefaultFieldState & {
100
101
  type: "text";
101
102
  data: string;
102
103
  column: drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>;
103
104
  operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
104
105
  } & {
105
106
  label: questpie_shared0.I18nText;
106
- }, questpie16.TextFieldMethods>;
107
+ }, questpie21.TextFieldMethods>;
107
108
  /** Denormalized user display name */
108
- readonly userName: questpie16.FieldWithMethods<questpie16.DefaultFieldState & {
109
+ readonly userName: questpie21.FieldWithMethods<questpie21.DefaultFieldState & {
109
110
  type: "text";
110
111
  data: string;
111
112
  column: drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>;
112
113
  operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
113
114
  } & {
114
115
  label: questpie_shared0.I18nText;
115
- }, questpie16.TextFieldMethods>;
116
+ }, questpie21.TextFieldMethods>;
116
117
  /** Locale context of the operation */
117
- readonly locale: questpie16.FieldWithMethods<questpie16.DefaultFieldState & {
118
+ readonly locale: questpie21.FieldWithMethods<questpie21.DefaultFieldState & {
118
119
  type: "text";
119
120
  data: string;
120
121
  column: drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>;
121
122
  operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
122
123
  } & {
123
124
  label: questpie_shared0.I18nText;
124
- }, questpie16.TextFieldMethods>;
125
+ }, questpie21.TextFieldMethods>;
125
126
  /** Field-level diffs: { field: { from, to } } or null */
126
- readonly changes: questpie16.Field<questpie16.DefaultFieldState & {
127
+ readonly changes: questpie21.Field<questpie21.DefaultFieldState & {
127
128
  type: "json";
128
- data: questpie16.JsonValue;
129
+ data: questpie21.JsonValue;
129
130
  column: drizzle_orm_pg_core0.PgJsonbBuilder;
130
131
  operators: typeof questpie_src_server_fields_operators_builtin_js0.basicOps;
131
132
  } & {
132
133
  label: questpie_shared0.I18nText;
133
134
  }>;
134
135
  /** Extra context metadata */
135
- readonly metadata: questpie16.Field<questpie16.DefaultFieldState & {
136
+ readonly metadata: questpie21.Field<questpie21.DefaultFieldState & {
136
137
  type: "json";
137
- data: questpie16.JsonValue;
138
+ data: questpie21.JsonValue;
138
139
  column: drizzle_orm_pg_core0.PgJsonbBuilder;
139
140
  operators: typeof questpie_src_server_fields_operators_builtin_js0.basicOps;
140
141
  } & {
141
142
  label: questpie_shared0.I18nText;
142
143
  }>;
143
144
  /** Human-readable title: "User Action ResourceType 'ResourceLabel'" */
144
- readonly title: questpie16.FieldWithMethods<questpie16.DefaultFieldState & {
145
+ readonly title: questpie21.FieldWithMethods<questpie21.DefaultFieldState & {
145
146
  type: "text";
146
147
  data: string;
147
148
  column: drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>;
148
149
  operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
149
150
  } & {
150
151
  label: questpie_shared0.I18nText;
151
- }, questpie16.TextFieldMethods>;
152
+ }, questpie21.TextFieldMethods>;
152
153
  };
153
154
  }>, {
154
155
  options: {
@@ -157,9 +158,9 @@ declare const auditLogCollection: questpie16.CollectionBuilder<questpie_shared0.
157
158
  }>, {
158
159
  indexes: drizzle_orm_pg_core0.IndexBuilder[];
159
160
  }>, {
160
- access: Record<string, any>;
161
+ access: questpie_src_server_collection_builder_types_js0.CollectionAccessStorage;
161
162
  }>, {
162
- hooks: Record<string, any>;
163
+ hooks: questpie_src_server_collection_builder_types_js0.CollectionHooksStorage;
163
164
  }> & Record<"admin", {
164
165
  label: {
165
166
  key: string;
@@ -131,7 +131,7 @@ function adminPlugin() {
131
131
  from: "@questpie/admin/factories"
132
132
  }
133
133
  ],
134
- configType: "(ctx: ListViewConfigContext<TState extends { fieldDefinitions: infer F extends Record<string, any> } ? F : Record<string, any>, FilterViewsByKind<$VIEWS_RECORD, \"list\">>) => ListViewConfig",
134
+ configType: "(ctx: ListViewConfigContext<TState extends { fieldDefinitions: infer F extends Record<string, unknown> } ? F : Record<string, unknown>, FilterViewsByKind<$VIEWS_RECORD, \"list\">>) => ListViewConfig",
135
135
  isCallback: true,
136
136
  callbackContextParams: [
137
137
  "v",
@@ -161,7 +161,7 @@ function adminPlugin() {
161
161
  from: "@questpie/admin/factories"
162
162
  }
163
163
  ],
164
- configType: "(ctx: FormViewConfigContext<TState extends { fieldDefinitions: infer F extends Record<string, any> } ? F : Record<string, any>, FilterViewsByKind<$VIEWS_RECORD, \"form\">>) => FormViewConfig",
164
+ configType: "(ctx: FormViewConfigContext<TState extends { fieldDefinitions: infer F extends Record<string, unknown> } ? F : Record<string, unknown>, FilterViewsByKind<$VIEWS_RECORD, \"form\">>) => FormViewConfig",
165
165
  isCallback: true,
166
166
  callbackContextParams: ["v", "f"],
167
167
  defaults: {
@@ -225,7 +225,7 @@ function adminPlugin() {
225
225
  from: "@questpie/admin/factories"
226
226
  }
227
227
  ],
228
- configType: "(ctx: FormViewConfigContext<TState extends { fieldDefinitions: infer F extends Record<string, any> } ? F : Record<string, any>, FilterViewsByKind<$VIEWS_RECORD, \"form\">>) => FormViewConfig",
228
+ configType: "(ctx: FormViewConfigContext<TState extends { fieldDefinitions: infer F extends Record<string, unknown> } ? F : Record<string, unknown>, FilterViewsByKind<$VIEWS_RECORD, \"form\">>) => FormViewConfig",
229
229
  isCallback: true,
230
230
  callbackContextParams: ["v", "f"],
231
231
  defaults: {
package/dist/server.d.mts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { ActionReference, AdminLocaleConfig, ComponentReference, ComponentType, ComponentTypeRegistry } from "./server/augmentation/common.mjs";
2
+ import { FilterOperator, FilterRule, SortConfig, ViewConfiguration } from "./shared/types/saved-views.types.mjs";
2
3
  import { AdminBlockConfig, AdminCollectionConfig, AdminGlobalConfig, BlockCategoryConfig, FieldLayoutItem, FormFieldLayoutItem, FormReactiveConfig, FormReactiveContext, FormSectionLayout, FormSidebarConfig, FormTabConfig, FormTabsLayout, FormViewConfig, ListViewConfig, PreviewConfig } from "./server/augmentation/form-layout.mjs";
3
4
  import { AdminConfigContext, ComponentDefinition, ComponentFactory, EditViewDefinition, EditViewFactory, FilterViewsByKind, FormViewConfigContext, ListViewConfigContext, ListViewDefinition, ListViewFactory, ViewDefinition, ViewKind, ViewKindRegistry } from "./server/augmentation/views.mjs";
4
5
  import { DashboardActionFactory, DashboardActionProxy, DashboardCallback, DashboardCallbackContext, DashboardConfigContext, DashboardContribution, DashboardItemDef, DashboardProxy, DashboardSectionDef, ServerBrandingConfig, ServerChartWidget, ServerCustomWidget, ServerDashboardAction, ServerDashboardConfig, ServerDashboardItem, ServerDashboardSection, ServerDashboardTab, ServerDashboardTabs, ServerDashboardWidget, ServerProgressWidget, ServerQuickAction, ServerQuickActionsWidget, ServerRecentItemsWidget, ServerStatsWidget, ServerTableWidget, ServerTimelineWidget, ServerValueWidget, WidgetAccessRule, WidgetFetchContext } from "./server/augmentation/dashboard.mjs";
@@ -24,7 +25,6 @@ import { PreviewTokenPayload, createPreviewFunctions, createPreviewTokenVerifier
24
25
  import { batchReactive, fieldOptions, reactiveFunctions } from "./server/modules/admin/routes/reactive.mjs";
25
26
  import { createFirstAdmin, isSetupRequired, setupFunctions } from "./server/modules/admin/routes/setup.mjs";
26
27
  import { fetchWidgetData, widgetDataFunctions } from "./server/modules/admin/routes/widget-data.mjs";
27
- import { FilterOperator, FilterRule, SortConfig, ViewConfiguration } from "./shared/types/saved-views.types.mjs";
28
28
  import { savedViewsCollection } from "./server/modules/admin-preferences/collections/saved-views.mjs";
29
29
  import { AdminModule, adminModule, adminRoutes } from "./server/modules/admin/index.mjs";
30
30
  import { auditLogCollection } from "./server/modules/audit/collections/audit-log.mjs";
@@ -0,0 +1 @@
1
+ import { FilterOperator, FilterRule, QuickFilterConfig, SortConfig, ViewConfiguration } from "./saved-views.types.mjs";
@@ -1,10 +1,7 @@
1
+ import { ComponentReference, I18nText } from "questpie/shared";
2
+
1
3
  //#region src/shared/types/saved-views.types.d.ts
2
- /**
3
- * Saved Views Types
4
- *
5
- * Shared types used by both server and client code.
6
- * This file must NOT import any server-only dependencies like drizzle-orm.
7
- */
4
+
8
5
  /**
9
6
  * Filter operator types supported by the saved views filter builder
10
7
  */
@@ -22,6 +19,16 @@ interface FilterRule {
22
19
  operator: FilterOperator;
23
20
  value: FilterValue;
24
21
  }
22
+ /**
23
+ * Serializable quick filter preset for collection list views.
24
+ */
25
+ interface QuickFilterConfig {
26
+ id: string;
27
+ label: I18nText;
28
+ description?: I18nText;
29
+ icon?: ComponentReference;
30
+ filters: FilterRule[];
31
+ }
25
32
  /**
26
33
  * Sort configuration for a view
27
34
  */
@@ -46,4 +53,4 @@ interface ViewConfiguration {
46
53
  };
47
54
  }
48
55
  //#endregion
49
- export { FilterOperator, FilterRule, SortConfig, ViewConfiguration };
56
+ export { FilterOperator, FilterRule, QuickFilterConfig, SortConfig, ViewConfiguration };
package/dist/shared.d.mts CHANGED
@@ -1,3 +1,4 @@
1
- import { FilterOperator, FilterRule, SortConfig, ViewConfiguration } from "./shared/types/saved-views.types.mjs";
1
+ import { FilterOperator, FilterRule, QuickFilterConfig, SortConfig, ViewConfiguration } from "./shared/types/saved-views.types.mjs";
2
2
  import { ADMIN_API_PREFIX, DRAFT_MODE_COOKIE, createDraftModeCookie, getPreviewSecret, isAdminRequest, isDraftMode } from "./shared/preview-utils.mjs";
3
- export { ADMIN_API_PREFIX, DRAFT_MODE_COOKIE, type FilterOperator, type FilterRule, type SortConfig, type ViewConfiguration, createDraftModeCookie, getPreviewSecret, isAdminRequest, isDraftMode };
3
+ import "./shared/types/index.mjs";
4
+ export { ADMIN_API_PREFIX, DRAFT_MODE_COOKIE, type FilterOperator, type FilterRule, type QuickFilterConfig, type SortConfig, type ViewConfiguration, createDraftModeCookie, getPreviewSecret, isAdminRequest, isDraftMode };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@questpie/admin",
3
- "version": "3.5.2",
3
+ "version": "3.5.3",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/questpie/questpie.git",
@@ -72,7 +72,7 @@
72
72
  "@fontsource-variable/jetbrains-mono": "^5.2.8",
73
73
  "@hookform/resolvers": "^5.1.0",
74
74
  "@iconify/react": "^6.0.2",
75
- "@questpie/tanstack-query": "^3.5.2",
75
+ "@questpie/tanstack-query": "^3.5.3",
76
76
  "@tailwindcss/vite": "^4.0.6",
77
77
  "@tiptap/core": "^2.x",
78
78
  "@tiptap/extension-character-count": "^2.x",
@@ -98,7 +98,7 @@
98
98
  "date-fns": "^4.1.0",
99
99
  "lowlight": "^3.x",
100
100
  "next-themes": "^0.4.6",
101
- "questpie": "^3.5.2",
101
+ "questpie": "^3.5.3",
102
102
  "react-day-picker": "^9.12.0",
103
103
  "react-hook-form": "^7.54.0",
104
104
  "react-resizable-panels": "^4.4.2",
@@ -107,6 +107,7 @@
107
107
  "tailwind-merge": "^3.4.0",
108
108
  "tailwindcss": "^4.0.6",
109
109
  "tippy.js": "^6.3.7",
110
+ "tiptap-markdown": "^0.9.0",
110
111
  "tw-animate-css": "^1.4.0",
111
112
  "vaul": "^1.1.2",
112
113
  "zustand": "^5.0.10"