@questpie/admin 3.5.3 → 3.5.4
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.
- package/README.md +8 -0
- package/dist/client/blocks/block-renderer.d.mts +2 -2
- package/dist/client/builder/index.d.mts +1 -1
- package/dist/client/builder/types/collection-types.d.mts +80 -5
- package/dist/client/builder/types/common.d.mts +5 -0
- package/dist/client/builder/types/field-types.d.mts +41 -1
- package/dist/client/builder/view/view.d.mts +3 -2
- package/dist/client/components/admin-link.d.mts +2 -2
- package/dist/client/components/fields/boolean-field.mjs +2 -1
- package/dist/client/components/fields/date-field.mjs +2 -1
- package/dist/client/components/fields/datetime-field.mjs +2 -1
- package/dist/client/components/fields/email-field.mjs +2 -1
- package/dist/client/components/fields/field-utils.d.mts +11 -0
- package/dist/client/components/fields/field-utils.mjs +3 -1
- package/dist/client/components/fields/field-wrapper.mjs +3 -3
- package/dist/client/components/fields/number-field.mjs +2 -1
- package/dist/client/components/fields/object-field.mjs +2 -1
- package/dist/client/components/fields/relation/displays/types.mjs +3 -3
- package/dist/client/components/fields/rich-text-editor/extensions.mjs +2 -1
- package/dist/client/components/fields/rich-text-editor/image-popover.mjs +6 -2
- package/dist/client/components/fields/rich-text-editor/image-upload.mjs +2 -1
- package/dist/client/components/fields/rich-text-editor/index.d.mts +3 -2
- package/dist/client/components/fields/rich-text-editor/index.mjs +4 -3
- package/dist/client/components/fields/select-field.mjs +2 -1
- package/dist/client/components/fields/text-field.mjs +2 -1
- package/dist/client/components/fields/textarea-field.mjs +2 -1
- package/dist/client/components/fields/time-field.mjs +2 -1
- package/dist/client/components/layout/field-layout-renderer.mjs +4 -4
- package/dist/client/components/media/media-grid.mjs +2 -1
- package/dist/client/components/primitives/asset-preview.mjs +4 -2
- package/dist/client/components/primitives/dropzone.d.mts +100 -0
- package/dist/client/components/primitives/field-select-control.mjs +2 -1
- package/dist/client/components/ui/button.d.mts +23 -0
- package/dist/client/components/ui/button.mjs +2 -2
- package/dist/client/components/ui/dropdown-menu.d.mts +49 -0
- package/dist/client/components/ui/dropdown-menu.mjs +22 -1
- package/dist/client/components/ui/popover.mjs +1 -1
- package/dist/client/components/ui/search-input.d.mts +56 -0
- package/dist/client/components/ui/select.mjs +2 -2
- package/dist/client/components/ui/sheet.d.mts +40 -0
- package/dist/client/components/ui/table.d.mts +49 -0
- package/dist/client/components/ui/table.mjs +15 -1
- package/dist/client/components/ui/tooltip.d.mts +21 -0
- package/dist/client/contexts/focus-context.d.mts +2 -2
- package/dist/client/hooks/use-admin-config.mjs +20 -1
- package/dist/client/hooks/use-autosave.mjs +91 -0
- package/dist/client/hooks/use-collection.mjs +65 -23
- package/dist/client/hooks/use-upload.d.mts +40 -0
- package/dist/client/hooks/use-upload.mjs +4 -2
- package/dist/client/i18n/hooks.d.mts +20 -0
- package/dist/client/lib/utils.d.mts +6 -0
- package/dist/client/preview/block-scope-context.d.mts +2 -2
- package/dist/client/preview/preview-banner.d.mts +2 -2
- package/dist/client/preview/preview-field.d.mts +4 -4
- package/dist/client/runtime/provider.mjs +22 -3
- package/dist/client/scope/picker.d.mts +2 -2
- package/dist/client/scope/provider.d.mts +2 -2
- package/dist/client/styles/base.css +22 -18
- package/dist/client/utils/asset-url.mjs +27 -0
- package/dist/client/views/auth/accept-invite-form.d.mts +2 -2
- package/dist/client/views/auth/auth-layout.d.mts +3 -3
- package/dist/client/views/auth/forgot-password-form.d.mts +2 -2
- package/dist/client/views/auth/login-form.d.mts +2 -2
- package/dist/client/views/auth/reset-password-form.d.mts +2 -2
- package/dist/client/views/auth/setup-form.d.mts +2 -2
- package/dist/client/views/collection/auto-form-fields.mjs +4 -4
- package/dist/client/views/collection/cells/shared/asset-thumbnail.d.mts +7 -0
- package/dist/client/views/collection/cells/shared/asset-thumbnail.mjs +3 -2
- package/dist/client/views/collection/cells/shared/cell-helpers.mjs +3 -2
- package/dist/client/views/collection/cells/upload-cells.mjs +2 -1
- package/dist/client/views/collection/document-view.d.mts +30 -0
- package/dist/client/views/collection/document-view.mjs +377 -0
- package/dist/client/views/collection/field-context.mjs +3 -2
- package/dist/client/views/collection/field-renderer.mjs +2 -2
- package/dist/client/views/collection/form-view.mjs +14 -80
- package/dist/client/views/collection/list-view.mjs +19 -15
- package/dist/client/views/collection/table-view.mjs +1 -1
- package/dist/client/views/layout/admin-layout-provider.mjs +4 -3
- package/dist/client/views/layout/admin-layout.mjs +107 -20
- package/dist/client/views/layout/admin-router.mjs +19 -3
- package/dist/client/views/layout/admin-sidebar.mjs +50 -6
- package/dist/client/views/layout/admin-view-layout.d.mts +36 -0
- package/dist/client/views/pages/accept-invite-page.d.mts +2 -2
- package/dist/client/views/pages/dashboard-page.d.mts +2 -2
- package/dist/client/views/pages/forgot-password-page.d.mts +2 -2
- package/dist/client/views/pages/invite-page.d.mts +2 -2
- package/dist/client/views/pages/login-page.d.mts +2 -2
- package/dist/client/views/pages/reset-password-page.d.mts +2 -2
- package/dist/client/views/pages/setup-page.d.mts +2 -2
- package/dist/client.d.mts +17 -2
- package/dist/client.mjs +16 -1
- package/dist/components/rich-text/rich-text-renderer.d.mts +2 -2
- package/dist/factories.d.mts +4 -2
- package/dist/factories.mjs +2 -2
- package/dist/index.d.mts +17 -3
- package/dist/index.mjs +16 -1
- package/dist/server/adapters/index.d.mts +2 -0
- package/dist/server/adapters/nextjs.d.mts +1 -0
- package/dist/server/augmentation/actions.d.mts +5 -0
- package/dist/server/augmentation/form-layout.d.mts +5 -0
- package/dist/server/augmentation/views.d.mts +4 -1
- package/dist/server/auth-helpers.d.mts +1 -0
- package/dist/server/fields/blocks.mjs +4 -1
- package/dist/server/fields/reactive-runtime.mjs +3 -0
- package/dist/server/modules/admin/.generated/module.d.mts +1 -1
- package/dist/server/modules/admin/auth-helpers.mjs +7 -1
- package/dist/server/modules/admin/block/introspection.mjs +28 -4
- package/dist/server/modules/admin/block/prefetch.d.mts +11 -0
- package/dist/server/modules/admin/block/prefetch.mjs +108 -27
- package/dist/server/modules/admin/client/.generated/module.d.mts +68 -67
- package/dist/server/modules/admin/client/.generated/module.mjs +2 -0
- package/dist/server/modules/admin/client/views/collection-document.d.mts +6 -0
- package/dist/server/modules/admin/client/views/collection-document.mjs +10 -0
- package/dist/server/modules/admin/collections/account.d.mts +53 -53
- package/dist/server/modules/admin/collections/admin-locks.d.mts +57 -57
- package/dist/server/modules/admin/collections/admin-preferences.d.mts +22 -22
- package/dist/server/modules/admin/collections/admin-saved-views.d.mts +50 -50
- package/dist/server/modules/admin/collections/apikey.d.mts +79 -71
- package/dist/server/modules/admin/collections/assets.d.mts +42 -42
- package/dist/server/modules/admin/collections/session.d.mts +45 -45
- package/dist/server/modules/admin/collections/user.d.mts +66 -66
- package/dist/server/modules/admin/collections/verification.d.mts +39 -39
- package/dist/server/modules/admin/dto/admin-config.dto.mjs +34 -4
- package/dist/server/modules/admin/factories.mjs +4 -34
- package/dist/server/modules/admin/index.d.mts +1 -1
- package/dist/server/modules/admin/routes/admin-config.d.mts +4 -2
- package/dist/server/modules/admin/routes/admin-config.mjs +18 -2
- package/dist/server/modules/admin/routes/execute-action.d.mts +9 -9
- package/dist/server/modules/admin/routes/execute-action.mjs +10 -4
- package/dist/server/modules/admin/routes/locales.d.mts +2 -2
- package/dist/server/modules/admin/routes/locales.mjs +1 -1
- package/dist/server/modules/admin/routes/preview.d.mts +11 -11
- package/dist/server/modules/admin/routes/preview.mjs +6 -5
- package/dist/server/modules/admin/routes/reactive.d.mts +9 -9
- package/dist/server/modules/admin/routes/reactive.mjs +2 -2
- package/dist/server/modules/admin/routes/route-helpers.mjs +1 -1
- package/dist/server/modules/admin/routes/setup.d.mts +7 -7
- package/dist/server/modules/admin/routes/translations.d.mts +4 -4
- package/dist/server/modules/admin/routes/widget-data.d.mts +5 -5
- package/dist/server/modules/admin/routes/widget-data.mjs +1 -1
- package/dist/server/modules/admin-preferences/collections/saved-views.d.mts +41 -41
- package/dist/server/modules/audit/.generated/module.d.mts +6 -6
- package/dist/server/modules/audit/collections/audit-log.d.mts +78 -78
- package/dist/server/modules/audit/jobs/audit-cleanup.d.mts +2 -2
- package/dist/server/plugin.mjs +8 -3
- package/dist/server/proxy-factories.d.mts +8 -1
- package/dist/server/proxy-factories.mjs +33 -1
- package/dist/server.d.mts +2 -0
- package/package.json +4 -4
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { FilterOperator, FilterRule, SortConfig, ViewConfiguration } from "../../../../shared/types/saved-views.types.mjs";
|
|
2
|
-
import * as
|
|
3
|
-
import * as
|
|
2
|
+
import * as questpie_shared0 from "questpie/shared";
|
|
3
|
+
import * as questpie36 from "questpie";
|
|
4
4
|
import * as questpie_src_server_modules_core_fields_email_js1 from "questpie/src/server/modules/core/fields/email.js";
|
|
5
5
|
import * as questpie_src_server_modules_core_fields_json_js1 from "questpie/src/server/modules/core/fields/json.js";
|
|
6
|
-
import * as
|
|
7
|
-
import * as
|
|
6
|
+
import * as drizzle_orm_pg_core0 from "drizzle-orm/pg-core";
|
|
7
|
+
import * as drizzle_orm0 from "drizzle-orm";
|
|
8
8
|
|
|
9
9
|
//#region src/server/modules/admin-preferences/collections/saved-views.d.ts
|
|
10
10
|
|
|
@@ -31,61 +31,61 @@ import * as drizzle_orm5 from "drizzle-orm";
|
|
|
31
31
|
* });
|
|
32
32
|
* ```
|
|
33
33
|
*/
|
|
34
|
-
declare const savedViewsCollection:
|
|
35
|
-
readonly text: typeof
|
|
36
|
-
readonly textarea: typeof
|
|
34
|
+
declare const savedViewsCollection: questpie36.CollectionBuilder<questpie_shared0.Override<questpie_shared0.Override<questpie36.EmptyCollectionState<"admin_saved_views", undefined, {
|
|
35
|
+
readonly text: typeof questpie36.text;
|
|
36
|
+
readonly textarea: typeof questpie36.textarea;
|
|
37
37
|
readonly email: typeof questpie_src_server_modules_core_fields_email_js1.email;
|
|
38
|
-
readonly url: typeof
|
|
39
|
-
readonly number: typeof
|
|
40
|
-
readonly boolean: typeof
|
|
41
|
-
readonly date: typeof
|
|
42
|
-
readonly datetime: typeof
|
|
43
|
-
readonly time: typeof
|
|
44
|
-
readonly select: typeof
|
|
45
|
-
readonly upload: typeof
|
|
46
|
-
readonly relation: typeof
|
|
47
|
-
readonly object: typeof
|
|
38
|
+
readonly url: typeof questpie36.url;
|
|
39
|
+
readonly number: typeof questpie36.number;
|
|
40
|
+
readonly boolean: typeof questpie36.boolean;
|
|
41
|
+
readonly date: typeof questpie36.date;
|
|
42
|
+
readonly datetime: typeof questpie36.datetime;
|
|
43
|
+
readonly time: typeof questpie36.time;
|
|
44
|
+
readonly select: typeof questpie36.select;
|
|
45
|
+
readonly upload: typeof questpie36.upload;
|
|
46
|
+
readonly relation: typeof questpie36.relation;
|
|
47
|
+
readonly object: typeof questpie36.object;
|
|
48
48
|
readonly json: typeof questpie_src_server_modules_core_fields_json_js1.json;
|
|
49
|
-
readonly from: typeof
|
|
49
|
+
readonly from: typeof questpie36.from;
|
|
50
50
|
}>, {
|
|
51
51
|
fields: {
|
|
52
|
-
readonly userId:
|
|
53
|
-
readonly collectionName:
|
|
54
|
-
readonly name:
|
|
55
|
-
readonly configuration:
|
|
56
|
-
readonly isDefault:
|
|
52
|
+
readonly userId: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
|
|
53
|
+
readonly collectionName: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
|
|
54
|
+
readonly name: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
|
|
55
|
+
readonly configuration: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgJsonbBuilder>;
|
|
56
|
+
readonly isDefault: drizzle_orm0.HasDefault<drizzle_orm_pg_core0.PgBooleanBuilder>;
|
|
57
57
|
};
|
|
58
58
|
localized: readonly string[];
|
|
59
59
|
fieldDefinitions: {
|
|
60
|
-
readonly userId:
|
|
60
|
+
readonly userId: questpie36.FieldWithMethods<Omit<questpie36.TextFieldState, "notNull" | "column"> & {
|
|
61
61
|
notNull: true;
|
|
62
|
-
column:
|
|
62
|
+
column: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
|
|
63
63
|
} & {
|
|
64
|
-
label:
|
|
65
|
-
},
|
|
66
|
-
readonly collectionName:
|
|
64
|
+
label: questpie_shared0.I18nText;
|
|
65
|
+
}, questpie36.TextFieldMethods>;
|
|
66
|
+
readonly collectionName: questpie36.FieldWithMethods<Omit<questpie36.TextFieldState, "notNull" | "column"> & {
|
|
67
67
|
notNull: true;
|
|
68
|
-
column:
|
|
68
|
+
column: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
|
|
69
69
|
} & {
|
|
70
|
-
label:
|
|
71
|
-
},
|
|
72
|
-
readonly name:
|
|
70
|
+
label: questpie_shared0.I18nText;
|
|
71
|
+
}, questpie36.TextFieldMethods>;
|
|
72
|
+
readonly name: questpie36.FieldWithMethods<Omit<questpie36.TextFieldState, "notNull" | "column"> & {
|
|
73
73
|
notNull: true;
|
|
74
|
-
column:
|
|
74
|
+
column: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgVarcharBuilder<[string, ...string[]]>>;
|
|
75
75
|
} & {
|
|
76
|
-
label:
|
|
77
|
-
},
|
|
78
|
-
readonly configuration:
|
|
76
|
+
label: questpie_shared0.I18nText;
|
|
77
|
+
}, questpie36.TextFieldMethods>;
|
|
78
|
+
readonly configuration: questpie36.Field<Omit<questpie36.JsonFieldState, "notNull" | "column"> & {
|
|
79
79
|
notNull: true;
|
|
80
|
-
column:
|
|
80
|
+
column: drizzle_orm0.NotNull<drizzle_orm_pg_core0.PgJsonbBuilder>;
|
|
81
81
|
} & {
|
|
82
|
-
label:
|
|
82
|
+
label: questpie_shared0.I18nText;
|
|
83
83
|
}>;
|
|
84
|
-
readonly isDefault:
|
|
84
|
+
readonly isDefault: questpie36.Field<Omit<questpie36.BooleanFieldState, "column" | "hasDefault"> & {
|
|
85
85
|
hasDefault: true;
|
|
86
|
-
column:
|
|
86
|
+
column: drizzle_orm0.HasDefault<drizzle_orm_pg_core0.PgBooleanBuilder>;
|
|
87
87
|
} & {
|
|
88
|
-
label:
|
|
88
|
+
label: questpie_shared0.I18nText;
|
|
89
89
|
}>;
|
|
90
90
|
};
|
|
91
91
|
}>, {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { auditLogCollection } from "../collections/audit-log.mjs";
|
|
2
2
|
import { auditCleanupJob } from "../jobs/audit-cleanup.mjs";
|
|
3
|
-
import * as
|
|
3
|
+
import * as questpie146 from "questpie";
|
|
4
4
|
|
|
5
5
|
//#region src/server/modules/audit/.generated/module.d.ts
|
|
6
6
|
interface AuditCollections {
|
|
@@ -43,13 +43,13 @@ declare const _module: {
|
|
|
43
43
|
app: {
|
|
44
44
|
hooks: {
|
|
45
45
|
collections: {
|
|
46
|
-
afterChange: (ctx:
|
|
47
|
-
afterDelete: (ctx:
|
|
48
|
-
afterTransition: (ctx:
|
|
46
|
+
afterChange: (ctx: questpie146.GlobalCollectionHookContext) => Promise<void>;
|
|
47
|
+
afterDelete: (ctx: questpie146.GlobalCollectionHookContext) => Promise<void>;
|
|
48
|
+
afterTransition: (ctx: questpie146.GlobalCollectionTransitionHookContext) => Promise<void>;
|
|
49
49
|
};
|
|
50
50
|
globals: {
|
|
51
|
-
afterChange: (ctx:
|
|
52
|
-
afterTransition: (ctx:
|
|
51
|
+
afterChange: (ctx: questpie146.GlobalGlobalHookContext) => Promise<void>;
|
|
52
|
+
afterTransition: (ctx: questpie146.GlobalGlobalTransitionHookContext) => Promise<void>;
|
|
53
53
|
};
|
|
54
54
|
};
|
|
55
55
|
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import * as
|
|
3
|
-
import * as
|
|
4
|
-
import * as
|
|
5
|
-
import * as
|
|
6
|
-
import * as
|
|
1
|
+
import * as questpie_shared6 from "questpie/shared";
|
|
2
|
+
import * as questpie98 from "questpie";
|
|
3
|
+
import * as questpie_src_server_modules_core_fields_email_js2 from "questpie/src/server/modules/core/fields/email.js";
|
|
4
|
+
import * as questpie_src_server_modules_core_fields_json_js2 from "questpie/src/server/modules/core/fields/json.js";
|
|
5
|
+
import * as drizzle_orm_pg_core9 from "drizzle-orm/pg-core";
|
|
6
|
+
import * as drizzle_orm9 from "drizzle-orm";
|
|
7
7
|
import * as questpie_src_server_collection_builder_types_js0 from "questpie/src/server/collection/builder/types.js";
|
|
8
8
|
import * as questpie_src_server_fields_operators_builtin_js0 from "questpie/src/server/fields/operators/builtin.js";
|
|
9
9
|
|
|
@@ -25,138 +25,138 @@ declare const AUDIT_LOG_COLLECTION: "admin_audit_log";
|
|
|
25
25
|
* - update: disallowed
|
|
26
26
|
* - read: allowed (for admin UI display)
|
|
27
27
|
*/
|
|
28
|
-
declare const auditLogCollection:
|
|
29
|
-
readonly text: typeof
|
|
30
|
-
readonly textarea: typeof
|
|
31
|
-
readonly email: typeof
|
|
32
|
-
readonly url: typeof
|
|
33
|
-
readonly number: typeof
|
|
34
|
-
readonly boolean: typeof
|
|
35
|
-
readonly date: typeof
|
|
36
|
-
readonly datetime: typeof
|
|
37
|
-
readonly time: typeof
|
|
38
|
-
readonly select: typeof
|
|
39
|
-
readonly upload: typeof
|
|
40
|
-
readonly relation: typeof
|
|
41
|
-
readonly object: typeof
|
|
42
|
-
readonly json: typeof
|
|
43
|
-
readonly from: typeof
|
|
28
|
+
declare const auditLogCollection: questpie98.CollectionBuilder<questpie_shared6.Override<questpie_shared6.Override<questpie_shared6.Override<questpie_shared6.Override<questpie_shared6.Override<questpie_shared6.Override<questpie98.EmptyCollectionState<"admin_audit_log", undefined, {
|
|
29
|
+
readonly text: typeof questpie98.text;
|
|
30
|
+
readonly textarea: typeof questpie98.textarea;
|
|
31
|
+
readonly email: typeof questpie_src_server_modules_core_fields_email_js2.email;
|
|
32
|
+
readonly url: typeof questpie98.url;
|
|
33
|
+
readonly number: typeof questpie98.number;
|
|
34
|
+
readonly boolean: typeof questpie98.boolean;
|
|
35
|
+
readonly date: typeof questpie98.date;
|
|
36
|
+
readonly datetime: typeof questpie98.datetime;
|
|
37
|
+
readonly time: typeof questpie98.time;
|
|
38
|
+
readonly select: typeof questpie98.select;
|
|
39
|
+
readonly upload: typeof questpie98.upload;
|
|
40
|
+
readonly relation: typeof questpie98.relation;
|
|
41
|
+
readonly object: typeof questpie98.object;
|
|
42
|
+
readonly json: typeof questpie_src_server_modules_core_fields_json_js2.json;
|
|
43
|
+
readonly from: typeof questpie98.from;
|
|
44
44
|
}>, {
|
|
45
45
|
fields: {
|
|
46
|
-
readonly action:
|
|
47
|
-
readonly resourceType:
|
|
48
|
-
readonly resource:
|
|
49
|
-
readonly resourceId:
|
|
50
|
-
readonly resourceLabel:
|
|
51
|
-
readonly userId:
|
|
52
|
-
readonly userName:
|
|
53
|
-
readonly locale:
|
|
54
|
-
readonly changes:
|
|
55
|
-
readonly metadata:
|
|
56
|
-
readonly title:
|
|
46
|
+
readonly action: drizzle_orm9.NotNull<drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>>;
|
|
47
|
+
readonly resourceType: drizzle_orm9.NotNull<drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>>;
|
|
48
|
+
readonly resource: drizzle_orm9.NotNull<drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>>;
|
|
49
|
+
readonly resourceId: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
50
|
+
readonly resourceLabel: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
51
|
+
readonly userId: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
52
|
+
readonly userName: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
53
|
+
readonly locale: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
54
|
+
readonly changes: drizzle_orm_pg_core9.PgJsonbBuilder;
|
|
55
|
+
readonly metadata: drizzle_orm_pg_core9.PgJsonbBuilder;
|
|
56
|
+
readonly title: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
57
57
|
};
|
|
58
58
|
localized: readonly string[];
|
|
59
59
|
fieldDefinitions: {
|
|
60
60
|
/** Action performed: create, update, delete, transition, custom */
|
|
61
|
-
readonly action:
|
|
61
|
+
readonly action: questpie98.FieldWithMethods<Omit<questpie98.TextFieldState, "notNull" | "column"> & {
|
|
62
62
|
notNull: true;
|
|
63
|
-
column:
|
|
63
|
+
column: drizzle_orm9.NotNull<drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>>;
|
|
64
64
|
} & {
|
|
65
|
-
label:
|
|
66
|
-
},
|
|
65
|
+
label: questpie_shared6.I18nText;
|
|
66
|
+
}, questpie98.TextFieldMethods>;
|
|
67
67
|
/** Resource type: collection, global, auth, system, custom */
|
|
68
|
-
readonly resourceType:
|
|
68
|
+
readonly resourceType: questpie98.FieldWithMethods<Omit<questpie98.TextFieldState, "notNull" | "column"> & {
|
|
69
69
|
notNull: true;
|
|
70
|
-
column:
|
|
70
|
+
column: drizzle_orm9.NotNull<drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>>;
|
|
71
71
|
} & {
|
|
72
|
-
label:
|
|
73
|
-
},
|
|
72
|
+
label: questpie_shared6.I18nText;
|
|
73
|
+
}, questpie98.TextFieldMethods>;
|
|
74
74
|
/** Resource slug (collection/global name) */
|
|
75
|
-
readonly resource:
|
|
75
|
+
readonly resource: questpie98.FieldWithMethods<Omit<questpie98.TextFieldState, "notNull" | "column"> & {
|
|
76
76
|
notNull: true;
|
|
77
|
-
column:
|
|
77
|
+
column: drizzle_orm9.NotNull<drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>>;
|
|
78
78
|
} & {
|
|
79
|
-
label:
|
|
80
|
-
},
|
|
79
|
+
label: questpie_shared6.I18nText;
|
|
80
|
+
}, questpie98.TextFieldMethods>;
|
|
81
81
|
/** ID of the specific record (null for globals) */
|
|
82
|
-
readonly resourceId:
|
|
82
|
+
readonly resourceId: questpie98.FieldWithMethods<questpie98.DefaultFieldState & {
|
|
83
83
|
type: "text";
|
|
84
84
|
data: string;
|
|
85
|
-
column:
|
|
85
|
+
column: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
86
86
|
operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
|
|
87
87
|
} & {
|
|
88
|
-
label:
|
|
89
|
-
},
|
|
88
|
+
label: questpie_shared6.I18nText;
|
|
89
|
+
}, questpie98.TextFieldMethods>;
|
|
90
90
|
/** Denormalized display label for the affected record */
|
|
91
|
-
readonly resourceLabel:
|
|
91
|
+
readonly resourceLabel: questpie98.FieldWithMethods<questpie98.DefaultFieldState & {
|
|
92
92
|
type: "text";
|
|
93
93
|
data: string;
|
|
94
|
-
column:
|
|
94
|
+
column: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
95
95
|
operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
|
|
96
96
|
} & {
|
|
97
|
-
label:
|
|
98
|
-
},
|
|
97
|
+
label: questpie_shared6.I18nText;
|
|
98
|
+
}, questpie98.TextFieldMethods>;
|
|
99
99
|
/** User who performed the action */
|
|
100
|
-
readonly userId:
|
|
100
|
+
readonly userId: questpie98.FieldWithMethods<questpie98.DefaultFieldState & {
|
|
101
101
|
type: "text";
|
|
102
102
|
data: string;
|
|
103
|
-
column:
|
|
103
|
+
column: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
104
104
|
operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
|
|
105
105
|
} & {
|
|
106
|
-
label:
|
|
107
|
-
},
|
|
106
|
+
label: questpie_shared6.I18nText;
|
|
107
|
+
}, questpie98.TextFieldMethods>;
|
|
108
108
|
/** Denormalized user display name */
|
|
109
|
-
readonly userName:
|
|
109
|
+
readonly userName: questpie98.FieldWithMethods<questpie98.DefaultFieldState & {
|
|
110
110
|
type: "text";
|
|
111
111
|
data: string;
|
|
112
|
-
column:
|
|
112
|
+
column: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
113
113
|
operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
|
|
114
114
|
} & {
|
|
115
|
-
label:
|
|
116
|
-
},
|
|
115
|
+
label: questpie_shared6.I18nText;
|
|
116
|
+
}, questpie98.TextFieldMethods>;
|
|
117
117
|
/** Locale context of the operation */
|
|
118
|
-
readonly locale:
|
|
118
|
+
readonly locale: questpie98.FieldWithMethods<questpie98.DefaultFieldState & {
|
|
119
119
|
type: "text";
|
|
120
120
|
data: string;
|
|
121
|
-
column:
|
|
121
|
+
column: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
122
122
|
operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
|
|
123
123
|
} & {
|
|
124
|
-
label:
|
|
125
|
-
},
|
|
124
|
+
label: questpie_shared6.I18nText;
|
|
125
|
+
}, questpie98.TextFieldMethods>;
|
|
126
126
|
/** Field-level diffs: { field: { from, to } } or null */
|
|
127
|
-
readonly changes:
|
|
127
|
+
readonly changes: questpie98.Field<questpie98.DefaultFieldState & {
|
|
128
128
|
type: "json";
|
|
129
|
-
data:
|
|
130
|
-
column:
|
|
129
|
+
data: questpie98.JsonValue;
|
|
130
|
+
column: drizzle_orm_pg_core9.PgJsonbBuilder;
|
|
131
131
|
operators: typeof questpie_src_server_fields_operators_builtin_js0.basicOps;
|
|
132
132
|
} & {
|
|
133
|
-
label:
|
|
133
|
+
label: questpie_shared6.I18nText;
|
|
134
134
|
}>;
|
|
135
135
|
/** Extra context metadata */
|
|
136
|
-
readonly metadata:
|
|
136
|
+
readonly metadata: questpie98.Field<questpie98.DefaultFieldState & {
|
|
137
137
|
type: "json";
|
|
138
|
-
data:
|
|
139
|
-
column:
|
|
138
|
+
data: questpie98.JsonValue;
|
|
139
|
+
column: drizzle_orm_pg_core9.PgJsonbBuilder;
|
|
140
140
|
operators: typeof questpie_src_server_fields_operators_builtin_js0.basicOps;
|
|
141
141
|
} & {
|
|
142
|
-
label:
|
|
142
|
+
label: questpie_shared6.I18nText;
|
|
143
143
|
}>;
|
|
144
144
|
/** Human-readable title: "User Action ResourceType 'ResourceLabel'" */
|
|
145
|
-
readonly title:
|
|
145
|
+
readonly title: questpie98.FieldWithMethods<questpie98.DefaultFieldState & {
|
|
146
146
|
type: "text";
|
|
147
147
|
data: string;
|
|
148
|
-
column:
|
|
148
|
+
column: drizzle_orm_pg_core9.PgVarcharBuilder<[string, ...string[]]>;
|
|
149
149
|
operators: typeof questpie_src_server_fields_operators_builtin_js0.stringOps;
|
|
150
150
|
} & {
|
|
151
|
-
label:
|
|
152
|
-
},
|
|
151
|
+
label: questpie_shared6.I18nText;
|
|
152
|
+
}, questpie98.TextFieldMethods>;
|
|
153
153
|
};
|
|
154
154
|
}>, {
|
|
155
155
|
options: {
|
|
156
156
|
timestamps: true;
|
|
157
157
|
};
|
|
158
158
|
}>, {
|
|
159
|
-
indexes:
|
|
159
|
+
indexes: drizzle_orm_pg_core9.IndexBuilder[];
|
|
160
160
|
}>, {
|
|
161
161
|
access: questpie_src_server_collection_builder_types_js0.CollectionAccessStorage;
|
|
162
162
|
}>, {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as questpie466 from "questpie";
|
|
2
2
|
|
|
3
3
|
//#region src/server/modules/audit/jobs/audit-cleanup.d.ts
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@ import * as questpie151 from "questpie";
|
|
|
6
6
|
* Audit log cleanup job.
|
|
7
7
|
* Runs daily (via cron) to delete entries older than the configured retention period.
|
|
8
8
|
*/
|
|
9
|
-
declare const auditCleanupJob:
|
|
9
|
+
declare const auditCleanupJob: questpie466.JobDefinition<{
|
|
10
10
|
retentionDays: number;
|
|
11
11
|
}, void, "audit-cleanup">;
|
|
12
12
|
//#endregion
|
package/dist/server/plugin.mjs
CHANGED
|
@@ -131,12 +131,13 @@ function adminPlugin() {
|
|
|
131
131
|
from: "@questpie/admin/factories"
|
|
132
132
|
}
|
|
133
133
|
],
|
|
134
|
-
configType: "(ctx: ListViewConfigContext<TState extends { fieldDefinitions: infer F extends Record<string, unknown> } ? F : Record<string, unknown>, FilterViewsByKind<$VIEWS_RECORD, \"list\"
|
|
134
|
+
configType: "(ctx: ListViewConfigContext<TState extends { fieldDefinitions: infer F extends Record<string, unknown> } ? F : Record<string, unknown>, FilterViewsByKind<$VIEWS_RECORD, \"list\">, $COMPONENTS>) => ListViewConfig",
|
|
135
135
|
isCallback: true,
|
|
136
136
|
callbackContextParams: [
|
|
137
137
|
"v",
|
|
138
138
|
"f",
|
|
139
|
-
"a"
|
|
139
|
+
"a",
|
|
140
|
+
"c"
|
|
140
141
|
],
|
|
141
142
|
defaults: {
|
|
142
143
|
view: "collection-table",
|
|
@@ -192,7 +193,11 @@ function adminPlugin() {
|
|
|
192
193
|
"a",
|
|
193
194
|
"c",
|
|
194
195
|
"f"
|
|
195
|
-
]
|
|
196
|
+
],
|
|
197
|
+
callbackParams: { f: {
|
|
198
|
+
factory: "createActionFieldBuilderProxy",
|
|
199
|
+
from: "@questpie/admin/factories"
|
|
200
|
+
} }
|
|
196
201
|
}
|
|
197
202
|
},
|
|
198
203
|
globalExtensions: {
|
|
@@ -19,6 +19,13 @@ declare function createViewCallbackProxy(): Record<string, (config?: Record<stri
|
|
|
19
19
|
* Used as the `c` callback param: `c.icon("ph:article")` → `{ type: "icon", props: { name: "ph:article" } }`.
|
|
20
20
|
*/
|
|
21
21
|
declare function createComponentCallbackProxy(): Record<string, (...args: unknown[]) => Record<string, unknown>>;
|
|
22
|
+
/**
|
|
23
|
+
* Create a field builder proxy for action form contexts.
|
|
24
|
+
*
|
|
25
|
+
* Returns a chainable builder: `f.text().required().label({en: "Title"})` → `{ type: "text", required: true, label: {en: "Title"} }`.
|
|
26
|
+
* Used as the `f` callback param in `.actions()` for defining form fields.
|
|
27
|
+
*/
|
|
28
|
+
declare function createActionFieldBuilderProxy(): Record<string, (...args: unknown[]) => Record<string, unknown>>;
|
|
22
29
|
/**
|
|
23
30
|
* Create an action proxy for builder callback contexts.
|
|
24
31
|
*
|
|
@@ -83,4 +90,4 @@ declare function resolveSidebarCallback(value: unknown): SidebarContribution | u
|
|
|
83
90
|
*/
|
|
84
91
|
declare function resolveDashboardCallback(value: unknown): DashboardContribution | undefined;
|
|
85
92
|
//#endregion
|
|
86
|
-
export { createActionCallbackProxy, createActionProxy, createComponentCallbackProxy, createComponentProxy, createDashboardCallbackContext, createDashboardContributionProxy, createFieldProxy, createSidebarCallbackContext, createSidebarContributionProxy, createViewCallbackProxy, createViewProxy, resolveDashboardCallback, resolveSidebarCallback };
|
|
93
|
+
export { createActionCallbackProxy, createActionFieldBuilderProxy, createActionProxy, createComponentCallbackProxy, createComponentProxy, createDashboardCallbackContext, createDashboardContributionProxy, createFieldProxy, createSidebarCallbackContext, createSidebarContributionProxy, createViewCallbackProxy, createViewProxy, resolveDashboardCallback, resolveSidebarCallback };
|
|
@@ -66,6 +66,38 @@ function createComponentCallbackProxy() {
|
|
|
66
66
|
});
|
|
67
67
|
} });
|
|
68
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Create a field builder proxy for action form contexts.
|
|
71
|
+
*
|
|
72
|
+
* Returns a chainable builder: `f.text().required().label({en: "Title"})` → `{ type: "text", required: true, label: {en: "Title"} }`.
|
|
73
|
+
* Used as the `f` callback param in `.actions()` for defining form fields.
|
|
74
|
+
*/
|
|
75
|
+
function createActionFieldBuilderProxy() {
|
|
76
|
+
function chainable(def) {
|
|
77
|
+
return new Proxy(def, { get: (target, prop) => {
|
|
78
|
+
if (typeof prop !== "string") return Reflect.get(target, prop);
|
|
79
|
+
if (prop in target) return target[prop];
|
|
80
|
+
if (prop === "set") return (key, value) => chainable({
|
|
81
|
+
...target,
|
|
82
|
+
[key]: value
|
|
83
|
+
});
|
|
84
|
+
return (...args) => chainable({
|
|
85
|
+
...target,
|
|
86
|
+
[prop]: args.length === 0 ? true : args[0]
|
|
87
|
+
});
|
|
88
|
+
} });
|
|
89
|
+
}
|
|
90
|
+
return new Proxy({}, { get: (_, prop) => {
|
|
91
|
+
if (typeof prop !== "string") return void 0;
|
|
92
|
+
return (...args) => {
|
|
93
|
+
const def = { type: prop };
|
|
94
|
+
if (Array.isArray(args[0])) def.options = args[0];
|
|
95
|
+
else if (args[0] && typeof args[0] === "object") Object.assign(def, args[0]);
|
|
96
|
+
else if (args[0] !== void 0) def.value = args[0];
|
|
97
|
+
return chainable(def);
|
|
98
|
+
};
|
|
99
|
+
} });
|
|
100
|
+
}
|
|
69
101
|
function createBuiltinActionReference(name) {
|
|
70
102
|
const ref = (() => name);
|
|
71
103
|
Object.defineProperties(ref, {
|
|
@@ -325,4 +357,4 @@ function resolveDashboardCallback(value) {
|
|
|
325
357
|
}
|
|
326
358
|
|
|
327
359
|
//#endregion
|
|
328
|
-
export { createActionCallbackProxy, createActionProxy, createComponentCallbackProxy, createComponentProxy, createDashboardCallbackContext, createDashboardContributionProxy, createFieldProxy, createSidebarCallbackContext, createSidebarContributionProxy, createViewCallbackProxy, createViewProxy, resolveDashboardCallback, resolveSidebarCallback };
|
|
360
|
+
export { createActionCallbackProxy, createActionFieldBuilderProxy, createActionProxy, createComponentCallbackProxy, createComponentProxy, createDashboardCallbackContext, createDashboardContributionProxy, createFieldProxy, createSidebarCallbackContext, createSidebarContributionProxy, createViewCallbackProxy, createViewProxy, resolveDashboardCallback, resolveSidebarCallback };
|
package/dist/server.d.mts
CHANGED
|
@@ -18,8 +18,10 @@ import "./server/block/index.mjs";
|
|
|
18
18
|
import { component, editView, filterViewsByKind, listView, view } from "./server/registry-helpers.mjs";
|
|
19
19
|
import { createActionCallbackProxy, createActionProxy, createComponentCallbackProxy, createComponentProxy, createDashboardCallbackContext, createDashboardContributionProxy, createFieldProxy, createSidebarCallbackContext, createSidebarContributionProxy, createViewCallbackProxy, createViewProxy, resolveDashboardCallback, resolveSidebarCallback } from "./server/proxy-factories.mjs";
|
|
20
20
|
import { AuthSession, GetAdminSessionOptions, RequireAdminAuthOptions, getAdminSession, isAdminUser, requireAdminAuth } from "./server/modules/admin/auth-helpers.mjs";
|
|
21
|
+
import "./server/auth-helpers.mjs";
|
|
21
22
|
import { NextAuthMiddlewareOptions, createNextAuthMiddleware, getNextAdminSession } from "./server/adapters/nextjs.mjs";
|
|
22
23
|
import { BeforeLoadContext, TanStackAuthGuardOptions, createTanStackAuthGuard, createTanStackSessionLoader } from "./server/adapters/tanstack.mjs";
|
|
24
|
+
import "./server/adapters/index.mjs";
|
|
23
25
|
import { ExecuteActionRequest, ExecuteActionResponse, actionFunctions, executeAction, executeActionFn, getActionsConfig, getActionsConfigFn } from "./server/modules/admin/routes/execute-action.mjs";
|
|
24
26
|
import { PreviewTokenPayload, createPreviewFunctions, createPreviewTokenVerifier, verifyPreviewTokenDirect } from "./server/modules/admin/routes/preview.mjs";
|
|
25
27
|
import { batchReactive, fieldOptions, reactiveFunctions } from "./server/modules/admin/routes/reactive.mjs";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@questpie/admin",
|
|
3
|
-
"version": "3.5.
|
|
3
|
+
"version": "3.5.4",
|
|
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.
|
|
75
|
+
"@questpie/tanstack-query": "^3.5.4",
|
|
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.
|
|
101
|
+
"questpie": "^3.5.4",
|
|
102
102
|
"react-day-picker": "^9.12.0",
|
|
103
103
|
"react-hook-form": "^7.54.0",
|
|
104
104
|
"react-resizable-panels": "^4.4.2",
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
"@tanstack/db": "^0.x",
|
|
127
127
|
"@tanstack/react-query": "^5.x",
|
|
128
128
|
"@tanstack/react-table": "^8.x",
|
|
129
|
-
"better-auth": "^1.
|
|
129
|
+
"better-auth": "^1.6.11",
|
|
130
130
|
"drizzle-orm": "1.0.0-beta.6-4414a19",
|
|
131
131
|
"react": "^19.2.0",
|
|
132
132
|
"react-dom": "^19.2.0",
|