@cosmicdrift/kumiko-bundled-features 0.371.0 → 0.372.0
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/dist/auth-mfa/db/queries.d.ts +3 -2
- package/dist/auth-mfa/db/queries.js +2 -5
- package/dist/auth-mfa/schema/user-mfa.d.ts +10 -10
- package/dist/billing-foundation/entities.d.ts +10 -10
- package/dist/billing-foundation/projection.d.ts +10 -10
- package/dist/cap-counter/entity.d.ts +4 -4
- package/dist/cap-overview/web/cap-cards-panel.js +2 -1
- package/dist/compliance-profiles/schema/profile-selection.d.ts +4 -4
- package/dist/config/table.d.ts +6 -6
- package/dist/config/web/index.d.ts +1 -0
- package/dist/config/web/index.js +1 -0
- package/dist/crypto-shredding/handlers/forget-subject.write.js +55 -30
- package/dist/crypto-shredding/resolve-file-bytes-deleter.d.ts +3 -0
- package/dist/crypto-shredding/resolve-file-bytes-deleter.js +24 -0
- package/dist/custom-fields/entity.d.ts +9 -7
- package/dist/custom-fields/executor.d.ts +19 -1
- package/dist/data-retention/index.d.ts +1 -0
- package/dist/data-retention/index.js +1 -0
- package/dist/data-retention/run-retention-cleanup.js +27 -159
- package/dist/data-retention/schema/tenant-retention-override.d.ts +6 -6
- package/dist/delivery/delivery-service.d.ts +2 -1
- package/dist/delivery/delivery-service.js +3 -2
- package/dist/delivery/handlers/unsubscribe-page-chrome.query.js +2 -2
- package/dist/delivery/index.d.ts +1 -1
- package/dist/delivery/index.js +1 -1
- package/dist/delivery/jobs.js +21 -7
- package/dist/delivery/recipient-address-seal.d.ts +13 -0
- package/dist/delivery/recipient-address-seal.js +53 -0
- package/dist/delivery/tables.d.ts +8 -7
- package/dist/delivery/testing.d.ts +2 -1
- package/dist/delivery/testing.js +1 -0
- package/dist/delivery/unsubscribe.d.ts +13 -2
- package/dist/delivery/unsubscribe.js +9 -1
- package/dist/document-ingest-foundation/entity.d.ts +8 -8
- package/dist/document-ingest-foundation/executor.d.ts +16 -1
- package/dist/file-foundation/read-file-ref-content.js +2 -2
- package/dist/folders/entity.d.ts +8 -8
- package/dist/folders/executor.d.ts +29 -2
- package/dist/form-draft/entity.d.ts +3 -3
- package/dist/form-draft/executor.d.ts +15 -1
- package/dist/inbound-mail-foundation/entities.d.ts +31 -31
- package/dist/inbound-mail-foundation/projection.d.ts +24 -24
- package/dist/jobs/job-run-table.d.ts +10 -10
- package/dist/ledger/entity.d.ts +21 -21
- package/dist/ledger/executor.d.ts +57 -3
- package/dist/managed-pages/table.d.ts +16 -14
- package/dist/notes-history/entity.d.ts +14 -14
- package/dist/notes-history/executor.d.ts +31 -2
- package/dist/personal-access-tokens/schema/api-token.d.ts +9 -9
- package/dist/personal-access-tokens/screens.js +14 -9
- package/dist/secrets/table.d.ts +2 -2
- package/dist/sessions/schema/user-session.d.ts +8 -8
- package/dist/shared/index.d.ts +2 -0
- package/dist/shared/index.js +2 -0
- package/dist/shared/purge-files-reaching-subject.d.ts +25 -0
- package/dist/shared/purge-files-reaching-subject.js +146 -0
- package/dist/shared/purge-row-file-refs.d.ts +33 -0
- package/dist/shared/purge-row-file-refs.js +152 -0
- package/dist/tags/entity.d.ts +9 -9
- package/dist/tags/executor.d.ts +30 -2
- package/dist/template-resolver/handlers/shared.d.ts +28 -1
- package/dist/template-resolver/table.d.ts +32 -32
- package/dist/template-resolver/template-preview.js +13 -4
- package/dist/template-resolver/user-content-table.d.ts +16 -16
- package/dist/template-resolver/web/client-plugin.js +2 -1
- package/dist/template-resolver/web/document-editor-extensions.d.ts +1 -1
- package/dist/template-resolver/web/document-editor-extensions.js +2 -5
- package/dist/template-resolver/web/placeholder-line-editor.js +2 -2
- package/dist/tenant/handlers/list.query.d.ts +21 -1
- package/dist/tenant/invitation-table.d.ts +14 -14
- package/dist/tenant/membership-table.d.ts +4 -4
- package/dist/tenant/schema/tenant.d.ts +20 -18
- package/dist/tier-engine/entity.d.ts +2 -2
- package/dist/tier-engine/tier-resolver.d.ts +2 -2
- package/dist/user/handlers/me.query.d.ts +21 -0
- package/dist/user/schema/user.d.ts +24 -22
- package/dist/user-data-rights/run-export-jobs.d.ts +20 -1
- package/dist/user-data-rights/run-forget-cleanup.js +35 -1
- package/dist/user-data-rights/schema/download-attempt.d.ts +16 -16
- package/dist/user-data-rights/schema/download-token.d.ts +16 -16
- package/dist/user-data-rights/schema/export-job.d.ts +20 -20
- package/dist/user-data-rights/web/privacy-center-screen.js +2 -1
- package/dist/waitlist/entity.d.ts +24 -24
- package/dist/waitlist/lib.d.ts +24 -1
- package/package.json +11 -11
- package/src/crypto-shredding/changes.json +6 -0
- package/src/data-retention/changes.json +6 -0
- package/src/delivery/changes.json +13 -0
- package/src/files/changes.json +7 -0
- package/src/personal-access-tokens/changes.json +12 -0
- package/src/template-resolver/changes.json +6 -0
- package/src/user-data-rights/changes.json +6 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { EntityAuditColumns } from "./table.ts";
|
|
2
2
|
export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
3
|
-
ownerId: {
|
|
3
|
+
readonly ownerId: {
|
|
4
4
|
readonly type: "text";
|
|
5
5
|
readonly description?: string;
|
|
6
6
|
readonly maxLength?: number;
|
|
@@ -23,7 +23,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
23
23
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
24
24
|
required: true;
|
|
25
25
|
};
|
|
26
|
-
slug: {
|
|
26
|
+
readonly slug: {
|
|
27
27
|
readonly type: "text";
|
|
28
28
|
readonly description?: string;
|
|
29
29
|
readonly maxLength?: number;
|
|
@@ -46,7 +46,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
46
46
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
47
47
|
required: true;
|
|
48
48
|
};
|
|
49
|
-
kind: {
|
|
49
|
+
readonly kind: {
|
|
50
50
|
readonly type: "select";
|
|
51
51
|
readonly description?: string;
|
|
52
52
|
readonly options: readonly ["mail", "document-pdf", "image-snapshot", "notification", "text-block", "snippet", "ai-prompt", "mail-layout", "pdf-layout"];
|
|
@@ -75,7 +75,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
75
75
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
76
76
|
required: true;
|
|
77
77
|
};
|
|
78
|
-
locale: {
|
|
78
|
+
readonly locale: {
|
|
79
79
|
readonly type: "text";
|
|
80
80
|
readonly description?: string;
|
|
81
81
|
readonly maxLength?: number;
|
|
@@ -98,7 +98,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
98
98
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
99
99
|
required: true;
|
|
100
100
|
};
|
|
101
|
-
title: {
|
|
101
|
+
readonly title: {
|
|
102
102
|
readonly type: "text";
|
|
103
103
|
readonly description?: string;
|
|
104
104
|
readonly maxLength?: number;
|
|
@@ -121,7 +121,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
121
121
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
122
122
|
required: false;
|
|
123
123
|
};
|
|
124
|
-
folder: {
|
|
124
|
+
readonly folder: {
|
|
125
125
|
readonly type: "text";
|
|
126
126
|
readonly description?: string;
|
|
127
127
|
readonly maxLength?: number;
|
|
@@ -144,7 +144,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
144
144
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
145
145
|
required: false;
|
|
146
146
|
};
|
|
147
|
-
content: {
|
|
147
|
+
readonly content: {
|
|
148
148
|
readonly type: "longText";
|
|
149
149
|
readonly description?: string;
|
|
150
150
|
readonly maxLength?: number;
|
|
@@ -160,7 +160,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
160
160
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
161
161
|
required: false;
|
|
162
162
|
};
|
|
163
|
-
contentFormat: {
|
|
163
|
+
readonly contentFormat: {
|
|
164
164
|
readonly type: "select";
|
|
165
165
|
readonly description?: string;
|
|
166
166
|
readonly options: readonly ["markdown", "mjml", "html", "plain"];
|
|
@@ -186,7 +186,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
186
186
|
};
|
|
187
187
|
}, "tenant">;
|
|
188
188
|
export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framework/db").EntityTable<import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
189
|
-
ownerId: {
|
|
189
|
+
readonly ownerId: {
|
|
190
190
|
readonly type: "text";
|
|
191
191
|
readonly description?: string;
|
|
192
192
|
readonly maxLength?: number;
|
|
@@ -209,7 +209,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
|
|
|
209
209
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
210
210
|
required: true;
|
|
211
211
|
};
|
|
212
|
-
slug: {
|
|
212
|
+
readonly slug: {
|
|
213
213
|
readonly type: "text";
|
|
214
214
|
readonly description?: string;
|
|
215
215
|
readonly maxLength?: number;
|
|
@@ -232,7 +232,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
|
|
|
232
232
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
233
233
|
required: true;
|
|
234
234
|
};
|
|
235
|
-
kind: {
|
|
235
|
+
readonly kind: {
|
|
236
236
|
readonly type: "select";
|
|
237
237
|
readonly description?: string;
|
|
238
238
|
readonly options: readonly ["mail", "document-pdf", "image-snapshot", "notification", "text-block", "snippet", "ai-prompt", "mail-layout", "pdf-layout"];
|
|
@@ -261,7 +261,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
|
|
|
261
261
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
262
262
|
required: true;
|
|
263
263
|
};
|
|
264
|
-
locale: {
|
|
264
|
+
readonly locale: {
|
|
265
265
|
readonly type: "text";
|
|
266
266
|
readonly description?: string;
|
|
267
267
|
readonly maxLength?: number;
|
|
@@ -284,7 +284,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
|
|
|
284
284
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
285
285
|
required: true;
|
|
286
286
|
};
|
|
287
|
-
title: {
|
|
287
|
+
readonly title: {
|
|
288
288
|
readonly type: "text";
|
|
289
289
|
readonly description?: string;
|
|
290
290
|
readonly maxLength?: number;
|
|
@@ -307,7 +307,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
|
|
|
307
307
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
308
308
|
required: false;
|
|
309
309
|
};
|
|
310
|
-
folder: {
|
|
310
|
+
readonly folder: {
|
|
311
311
|
readonly type: "text";
|
|
312
312
|
readonly description?: string;
|
|
313
313
|
readonly maxLength?: number;
|
|
@@ -330,7 +330,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
|
|
|
330
330
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
331
331
|
required: false;
|
|
332
332
|
};
|
|
333
|
-
content: {
|
|
333
|
+
readonly content: {
|
|
334
334
|
readonly type: "longText";
|
|
335
335
|
readonly description?: string;
|
|
336
336
|
readonly maxLength?: number;
|
|
@@ -346,7 +346,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
|
|
|
346
346
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
347
347
|
required: false;
|
|
348
348
|
};
|
|
349
|
-
contentFormat: {
|
|
349
|
+
readonly contentFormat: {
|
|
350
350
|
readonly type: "select";
|
|
351
351
|
readonly description?: string;
|
|
352
352
|
readonly options: readonly ["markdown", "mjml", "html", "plain"];
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { EMPTY_VALUE_PLACEHOLDER } from "@cosmicdrift/kumiko-headless";
|
|
2
3
|
// @runtime client
|
|
3
4
|
// Client feature factory for the text-block content tree. Apps mount it via
|
|
4
5
|
// createKumikoApp({ clientFeatures: [textBlocksClient()] }); it loads the
|
|
@@ -270,7 +271,7 @@ function TextBlockEditor({ target, }) {
|
|
|
270
271
|
void handleSave();
|
|
271
272
|
};
|
|
272
273
|
const disabled = submitting || loading || !canWrite;
|
|
273
|
-
return (_jsxs(Form, { onSubmit: onSubmit, testId: "text-block-editor", title: title || slug ||
|
|
274
|
+
return (_jsxs(Form, { onSubmit: onSubmit, testId: "text-block-editor", title: title || slug || EMPTY_VALUE_PLACEHOLDER, subtitle: locale !== "" ? `${slug} · (${locale})` : slug, actions: canWrite ? (_jsx(Button, { type: "submit", loading: submitting, disabled: disabled, children: submitting ? t("template-resolver.editor.saving") : t("template-resolver.editor.save") })) : undefined, children: [loading && _jsx(Banner, { variant: "loading", children: t("template-resolver.editor.loading") }), loadError !== null && (_jsxs(Banner, { variant: "error", children: [t("template-resolver.editor.loadFailed"), ": ", loadError.code] })), !canWrite && !loading && (_jsx(Banner, { variant: "info", children: t("template-resolver.editor.readOnly") })), _jsx(Field, { id: "text-block-title", label: t("template-resolver.editor.titleLabel"), required: true, children: _jsx(Input, { kind: "text", id: "text-block-title", name: "text-block-title", value: title, onChange: setTitle, disabled: disabled, required: true }) }), _jsx(Field, { id: contentEditorId, label: t("template-resolver.editor.contentLabel"), labelAppendix: _jsx(Button, { type: "button", variant: "secondary", size: "sm", onClick: () => setPreviewing((p) => !p), children: previewing ? t("kumiko.contentEditor.editMode") : t("kumiko.contentEditor.preview") }), children: previewing ? (_jsx(ContentPreview, { content: content, variables: variableExamples, contentFormat: contentFormat })) : (_jsx(DocumentBlocksContext.Provider, { value: documentBlocks, children: _jsx(ContentEditor, { id: contentEditorId, value: content, onChange: setContent, variables: variables, readOnly: disabled }) })) }), saveError !== null && _jsx(Banner, { variant: "error", children: saveError }), savedMsg !== null && _jsx(Banner, { variant: "info", children: savedMsg })] }));
|
|
274
275
|
}
|
|
275
276
|
// `navId` = the QN of the r.nav({ provider: true }) node the app registers for
|
|
276
277
|
// the content tree (e.g. "publicstatus:nav:content"). The app owns the node's
|
|
@@ -15,5 +15,5 @@ export type DocumentEditorLabels = {
|
|
|
15
15
|
/** Canvas chrome labels every block with its type. */
|
|
16
16
|
readonly blockLabels?: boolean;
|
|
17
17
|
};
|
|
18
|
-
export declare function createVariableView(variableLabels: Readonly<Record<string, string>>, systemVariables: readonly string[]
|
|
18
|
+
export declare function createVariableView(variableLabels: Readonly<Record<string, string>>, systemVariables: readonly string[]): NodeViewRenderer;
|
|
19
19
|
export declare function createDocumentEditorExtensions(labels: DocumentEditorLabels): Extensions;
|
|
@@ -28,7 +28,7 @@ function repeatRowListAt(doc, position) {
|
|
|
28
28
|
}
|
|
29
29
|
// The chip is display only: the stored node carries just the name, so a
|
|
30
30
|
// label never reaches the document.
|
|
31
|
-
export function createVariableView(variableLabels, systemVariables
|
|
31
|
+
export function createVariableView(variableLabels, systemVariables) {
|
|
32
32
|
return ({ node, editor, getPos }) => {
|
|
33
33
|
const name = String(node.attrs["name"]);
|
|
34
34
|
const listName = repeatRowListAt(editor.state.doc, getPos());
|
|
@@ -41,9 +41,6 @@ export function createVariableView(variableLabels, systemVariables, labelOnly =
|
|
|
41
41
|
dom.append(document.createTextNode(hasOwnLabel ? label : name));
|
|
42
42
|
if (hasOwnLabel)
|
|
43
43
|
dom.title = name;
|
|
44
|
-
if (!labelOnly && hasOwnLabel) {
|
|
45
|
-
dom.append(createElementWithClass("small", "font-mono text-[10px] opacity-75", name));
|
|
46
|
-
}
|
|
47
44
|
return { dom };
|
|
48
45
|
};
|
|
49
46
|
}
|
|
@@ -144,7 +141,7 @@ export function createDocumentEditorExtensions(labels) {
|
|
|
144
141
|
switch (extension.name) {
|
|
145
142
|
case DocumentVariable.name:
|
|
146
143
|
return DocumentVariable.extend({
|
|
147
|
-
addNodeView: () => createVariableView(labels.variableLabels ?? {}, labels.systemVariables ?? []
|
|
144
|
+
addNodeView: () => createVariableView(labels.variableLabels ?? {}, labels.systemVariables ?? []),
|
|
148
145
|
});
|
|
149
146
|
case DocumentResource.name:
|
|
150
147
|
return DocumentResource.extend({ addNodeView: () => createResourceView(labels) });
|
|
@@ -51,12 +51,12 @@ function LineEditorBody({ id, initialValue, onChange, variableLabels, systemVari
|
|
|
51
51
|
undoRedo: false,
|
|
52
52
|
}),
|
|
53
53
|
DocumentVariable.extend({
|
|
54
|
-
addNodeView: () => createVariableView(variableLabels, systemVariables
|
|
54
|
+
addNodeView: () => createVariableView(variableLabels, systemVariables),
|
|
55
55
|
}),
|
|
56
56
|
UndoRedo,
|
|
57
57
|
BlockLineBreaks,
|
|
58
58
|
...(placeholder === undefined ? [] : [Placeholder.configure({ placeholder })]),
|
|
59
|
-
], [variableLabels, systemVariables,
|
|
59
|
+
], [variableLabels, systemVariables, placeholder]);
|
|
60
60
|
const editor = useEditor({
|
|
61
61
|
extensions,
|
|
62
62
|
content: {
|
|
@@ -4,4 +4,24 @@ export declare const listQuery: import("@cosmicdrift/kumiko-types/define-handler
|
|
|
4
4
|
limit: z.ZodOptional<z.ZodNumber>;
|
|
5
5
|
search: z.ZodOptional<z.ZodString>;
|
|
6
6
|
totalCount: z.ZodOptional<z.ZodBoolean>;
|
|
7
|
-
}, z.core.$strip>, import("@cosmicdrift/kumiko-types/cursor-types").CursorResult<
|
|
7
|
+
}, z.core.$strip>, import("@cosmicdrift/kumiko-types/cursor-types").CursorResult<{
|
|
8
|
+
readonly id: string;
|
|
9
|
+
readonly tenantId: string;
|
|
10
|
+
readonly version: number;
|
|
11
|
+
readonly insertedAt: Temporal.Instant;
|
|
12
|
+
readonly modifiedAt: Temporal.Instant | null;
|
|
13
|
+
readonly insertedById: string | null;
|
|
14
|
+
readonly modifiedById: string | null;
|
|
15
|
+
readonly isDeleted?: boolean | undefined;
|
|
16
|
+
readonly deletedAt?: Temporal.Instant | null | undefined;
|
|
17
|
+
readonly deletedById?: string | null | undefined;
|
|
18
|
+
readonly destroyRequestedAt: Temporal.Instant | null;
|
|
19
|
+
readonly destroyRequestedBy: string | null;
|
|
20
|
+
readonly destroyStartedAt: Temporal.Instant | null;
|
|
21
|
+
readonly destroyedAt: Temporal.Instant | null;
|
|
22
|
+
readonly gracePeriodEnd: Temporal.Instant | null;
|
|
23
|
+
readonly isEnabled: boolean;
|
|
24
|
+
readonly key: string;
|
|
25
|
+
readonly name: string;
|
|
26
|
+
readonly status: string;
|
|
27
|
+
}>, import("@cosmicdrift/kumiko-types/event-type-map").KumikoEventTypeMap>;
|
|
@@ -7,7 +7,7 @@ export declare const INVITATION_STATUS: {
|
|
|
7
7
|
export type InvitationStatus = (typeof INVITATION_STATUS)[keyof typeof INVITATION_STATUS];
|
|
8
8
|
export declare const INVITATION_STATUSES: readonly ["pending", "accepted", "cancelled", "expired"];
|
|
9
9
|
export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
10
|
-
email: {
|
|
10
|
+
readonly email: {
|
|
11
11
|
readonly type: "text";
|
|
12
12
|
readonly description?: string;
|
|
13
13
|
readonly maxLength?: number;
|
|
@@ -30,7 +30,7 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
30
30
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
31
31
|
required: true;
|
|
32
32
|
};
|
|
33
|
-
role: {
|
|
33
|
+
readonly role: {
|
|
34
34
|
readonly type: "text";
|
|
35
35
|
readonly description?: string;
|
|
36
36
|
readonly maxLength?: number;
|
|
@@ -53,8 +53,8 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
53
53
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
54
54
|
required: true;
|
|
55
55
|
};
|
|
56
|
-
globalRoles: import("@cosmicdrift/kumiko-types/fields").MultiSelectFieldDef<readonly ["SystemAdmin"]>;
|
|
57
|
-
status: {
|
|
56
|
+
readonly globalRoles: import("@cosmicdrift/kumiko-types/fields").MultiSelectFieldDef<readonly ["SystemAdmin"]>;
|
|
57
|
+
readonly status: {
|
|
58
58
|
readonly type: "select";
|
|
59
59
|
readonly description?: string;
|
|
60
60
|
readonly options: readonly ["pending", "accepted", "cancelled", "expired"];
|
|
@@ -78,7 +78,7 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
78
78
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
79
79
|
required: true;
|
|
80
80
|
};
|
|
81
|
-
invitedBy: {
|
|
81
|
+
readonly invitedBy: {
|
|
82
82
|
readonly type: "text";
|
|
83
83
|
readonly description?: string;
|
|
84
84
|
readonly maxLength?: number;
|
|
@@ -101,7 +101,7 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
101
101
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
102
102
|
required: true;
|
|
103
103
|
};
|
|
104
|
-
membershipVersion: {
|
|
104
|
+
readonly membershipVersion: {
|
|
105
105
|
readonly type: "number";
|
|
106
106
|
readonly description?: string;
|
|
107
107
|
readonly required?: boolean;
|
|
@@ -120,7 +120,7 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
120
120
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
121
121
|
required: false;
|
|
122
122
|
};
|
|
123
|
-
expiresAt: {
|
|
123
|
+
readonly expiresAt: {
|
|
124
124
|
readonly type: "timestamp";
|
|
125
125
|
readonly description?: string;
|
|
126
126
|
readonly required?: boolean;
|
|
@@ -137,7 +137,7 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
137
137
|
};
|
|
138
138
|
}, "tenant">;
|
|
139
139
|
export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framework/db").EntityTable<import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
140
|
-
email: {
|
|
140
|
+
readonly email: {
|
|
141
141
|
readonly type: "text";
|
|
142
142
|
readonly description?: string;
|
|
143
143
|
readonly maxLength?: number;
|
|
@@ -160,7 +160,7 @@ export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framewo
|
|
|
160
160
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
161
161
|
required: true;
|
|
162
162
|
};
|
|
163
|
-
role: {
|
|
163
|
+
readonly role: {
|
|
164
164
|
readonly type: "text";
|
|
165
165
|
readonly description?: string;
|
|
166
166
|
readonly maxLength?: number;
|
|
@@ -183,8 +183,8 @@ export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framewo
|
|
|
183
183
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
184
184
|
required: true;
|
|
185
185
|
};
|
|
186
|
-
globalRoles: import("@cosmicdrift/kumiko-types/fields").MultiSelectFieldDef<readonly ["SystemAdmin"]>;
|
|
187
|
-
status: {
|
|
186
|
+
readonly globalRoles: import("@cosmicdrift/kumiko-types/fields").MultiSelectFieldDef<readonly ["SystemAdmin"]>;
|
|
187
|
+
readonly status: {
|
|
188
188
|
readonly type: "select";
|
|
189
189
|
readonly description?: string;
|
|
190
190
|
readonly options: readonly ["pending", "accepted", "cancelled", "expired"];
|
|
@@ -208,7 +208,7 @@ export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framewo
|
|
|
208
208
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
209
209
|
required: true;
|
|
210
210
|
};
|
|
211
|
-
invitedBy: {
|
|
211
|
+
readonly invitedBy: {
|
|
212
212
|
readonly type: "text";
|
|
213
213
|
readonly description?: string;
|
|
214
214
|
readonly maxLength?: number;
|
|
@@ -231,7 +231,7 @@ export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framewo
|
|
|
231
231
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
232
232
|
required: true;
|
|
233
233
|
};
|
|
234
|
-
membershipVersion: {
|
|
234
|
+
readonly membershipVersion: {
|
|
235
235
|
readonly type: "number";
|
|
236
236
|
readonly description?: string;
|
|
237
237
|
readonly required?: boolean;
|
|
@@ -250,7 +250,7 @@ export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framewo
|
|
|
250
250
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
251
251
|
required: false;
|
|
252
252
|
};
|
|
253
|
-
expiresAt: {
|
|
253
|
+
readonly expiresAt: {
|
|
254
254
|
readonly type: "timestamp";
|
|
255
255
|
readonly description?: string;
|
|
256
256
|
readonly required?: boolean;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const tenantMembershipEntity: import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
2
|
-
userId: {
|
|
2
|
+
readonly userId: {
|
|
3
3
|
readonly type: "text";
|
|
4
4
|
readonly description?: string;
|
|
5
5
|
readonly maxLength?: number;
|
|
@@ -22,7 +22,7 @@ export declare const tenantMembershipEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
22
22
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
23
23
|
required: true;
|
|
24
24
|
};
|
|
25
|
-
roles: {
|
|
25
|
+
readonly roles: {
|
|
26
26
|
readonly type: "text";
|
|
27
27
|
readonly description?: string;
|
|
28
28
|
readonly maxLength?: number;
|
|
@@ -47,7 +47,7 @@ export declare const tenantMembershipEntity: import("@cosmicdrift/kumiko-types/f
|
|
|
47
47
|
};
|
|
48
48
|
}, "tenant">;
|
|
49
49
|
export declare const tenantMembershipsTable: import("@cosmicdrift/kumiko-framework/db").EntityTable<import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
50
|
-
userId: {
|
|
50
|
+
readonly userId: {
|
|
51
51
|
readonly type: "text";
|
|
52
52
|
readonly description?: string;
|
|
53
53
|
readonly maxLength?: number;
|
|
@@ -70,7 +70,7 @@ export declare const tenantMembershipsTable: import("@cosmicdrift/kumiko-framewo
|
|
|
70
70
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
71
71
|
required: true;
|
|
72
72
|
};
|
|
73
|
-
roles: {
|
|
73
|
+
readonly roles: {
|
|
74
74
|
readonly type: "text";
|
|
75
75
|
readonly description?: string;
|
|
76
76
|
readonly maxLength?: number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare const TENANT_LIFECYCLE_STATUSES: readonly ["active", "destroyRequested", "destroying", "destroyFailed", "destroyed"];
|
|
2
2
|
export type TenantLifecycleStatus = (typeof TENANT_LIFECYCLE_STATUSES)[number];
|
|
3
3
|
export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
4
|
-
key: {
|
|
4
|
+
readonly key: {
|
|
5
5
|
readonly type: "text";
|
|
6
6
|
readonly description?: string;
|
|
7
7
|
readonly maxLength?: number;
|
|
@@ -24,7 +24,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
|
|
|
24
24
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
25
25
|
required: true;
|
|
26
26
|
};
|
|
27
|
-
name: {
|
|
27
|
+
readonly name: {
|
|
28
28
|
readonly type: "text";
|
|
29
29
|
readonly description?: string;
|
|
30
30
|
readonly maxLength?: number;
|
|
@@ -47,10 +47,11 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
|
|
|
47
47
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
48
48
|
required: true;
|
|
49
49
|
};
|
|
50
|
-
isEnabled: import("@cosmicdrift/kumiko-types/fields").BooleanFieldDef & {
|
|
50
|
+
readonly isEnabled: import("@cosmicdrift/kumiko-types/fields").BooleanFieldDef & {
|
|
51
51
|
required: false;
|
|
52
|
+
default: boolean;
|
|
52
53
|
};
|
|
53
|
-
status: {
|
|
54
|
+
readonly status: {
|
|
54
55
|
readonly type: "select";
|
|
55
56
|
readonly description?: string;
|
|
56
57
|
readonly options: readonly ["active", "destroyRequested", "destroying", "destroyFailed", "destroyed"];
|
|
@@ -75,7 +76,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
|
|
|
75
76
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
76
77
|
required: true;
|
|
77
78
|
};
|
|
78
|
-
destroyRequestedAt: {
|
|
79
|
+
readonly destroyRequestedAt: {
|
|
79
80
|
readonly type: "timestamp";
|
|
80
81
|
readonly description?: string;
|
|
81
82
|
readonly required?: boolean;
|
|
@@ -90,7 +91,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
|
|
|
90
91
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
91
92
|
required: false;
|
|
92
93
|
};
|
|
93
|
-
destroyRequestedBy: {
|
|
94
|
+
readonly destroyRequestedBy: {
|
|
94
95
|
readonly type: "text";
|
|
95
96
|
readonly description?: string;
|
|
96
97
|
readonly maxLength?: number;
|
|
@@ -113,7 +114,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
|
|
|
113
114
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
114
115
|
required: false;
|
|
115
116
|
};
|
|
116
|
-
gracePeriodEnd: {
|
|
117
|
+
readonly gracePeriodEnd: {
|
|
117
118
|
readonly type: "timestamp";
|
|
118
119
|
readonly description?: string;
|
|
119
120
|
readonly required?: boolean;
|
|
@@ -128,7 +129,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
|
|
|
128
129
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
129
130
|
required: false;
|
|
130
131
|
};
|
|
131
|
-
destroyStartedAt: {
|
|
132
|
+
readonly destroyStartedAt: {
|
|
132
133
|
readonly type: "timestamp";
|
|
133
134
|
readonly description?: string;
|
|
134
135
|
readonly required?: boolean;
|
|
@@ -143,7 +144,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
|
|
|
143
144
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
144
145
|
required: false;
|
|
145
146
|
};
|
|
146
|
-
destroyedAt: {
|
|
147
|
+
readonly destroyedAt: {
|
|
147
148
|
readonly type: "timestamp";
|
|
148
149
|
readonly description?: string;
|
|
149
150
|
readonly required?: boolean;
|
|
@@ -160,7 +161,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
|
|
|
160
161
|
};
|
|
161
162
|
}, "tenant">;
|
|
162
163
|
export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").EntityTable<import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
163
|
-
key: {
|
|
164
|
+
readonly key: {
|
|
164
165
|
readonly type: "text";
|
|
165
166
|
readonly description?: string;
|
|
166
167
|
readonly maxLength?: number;
|
|
@@ -183,7 +184,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
|
|
|
183
184
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
184
185
|
required: true;
|
|
185
186
|
};
|
|
186
|
-
name: {
|
|
187
|
+
readonly name: {
|
|
187
188
|
readonly type: "text";
|
|
188
189
|
readonly description?: string;
|
|
189
190
|
readonly maxLength?: number;
|
|
@@ -206,10 +207,11 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
|
|
|
206
207
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
207
208
|
required: true;
|
|
208
209
|
};
|
|
209
|
-
isEnabled: import("@cosmicdrift/kumiko-types/fields").BooleanFieldDef & {
|
|
210
|
+
readonly isEnabled: import("@cosmicdrift/kumiko-types/fields").BooleanFieldDef & {
|
|
210
211
|
required: false;
|
|
212
|
+
default: boolean;
|
|
211
213
|
};
|
|
212
|
-
status: {
|
|
214
|
+
readonly status: {
|
|
213
215
|
readonly type: "select";
|
|
214
216
|
readonly description?: string;
|
|
215
217
|
readonly options: readonly ["active", "destroyRequested", "destroying", "destroyFailed", "destroyed"];
|
|
@@ -234,7 +236,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
|
|
|
234
236
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
235
237
|
required: true;
|
|
236
238
|
};
|
|
237
|
-
destroyRequestedAt: {
|
|
239
|
+
readonly destroyRequestedAt: {
|
|
238
240
|
readonly type: "timestamp";
|
|
239
241
|
readonly description?: string;
|
|
240
242
|
readonly required?: boolean;
|
|
@@ -249,7 +251,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
|
|
|
249
251
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
250
252
|
required: false;
|
|
251
253
|
};
|
|
252
|
-
destroyRequestedBy: {
|
|
254
|
+
readonly destroyRequestedBy: {
|
|
253
255
|
readonly type: "text";
|
|
254
256
|
readonly description?: string;
|
|
255
257
|
readonly maxLength?: number;
|
|
@@ -272,7 +274,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
|
|
|
272
274
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
273
275
|
required: false;
|
|
274
276
|
};
|
|
275
|
-
gracePeriodEnd: {
|
|
277
|
+
readonly gracePeriodEnd: {
|
|
276
278
|
readonly type: "timestamp";
|
|
277
279
|
readonly description?: string;
|
|
278
280
|
readonly required?: boolean;
|
|
@@ -287,7 +289,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
|
|
|
287
289
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
288
290
|
required: false;
|
|
289
291
|
};
|
|
290
|
-
destroyStartedAt: {
|
|
292
|
+
readonly destroyStartedAt: {
|
|
291
293
|
readonly type: "timestamp";
|
|
292
294
|
readonly description?: string;
|
|
293
295
|
readonly required?: boolean;
|
|
@@ -302,7 +304,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
|
|
|
302
304
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
303
305
|
required: false;
|
|
304
306
|
};
|
|
305
|
-
destroyedAt: {
|
|
307
|
+
readonly destroyedAt: {
|
|
306
308
|
readonly type: "timestamp";
|
|
307
309
|
readonly description?: string;
|
|
308
310
|
readonly required?: boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type TierAssignmentSource } from "./constants.ts";
|
|
2
2
|
export declare const tierAssignmentEntity: import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
3
|
-
tier: {
|
|
3
|
+
readonly tier: {
|
|
4
4
|
readonly type: "text";
|
|
5
5
|
readonly description?: string;
|
|
6
6
|
readonly maxLength?: number;
|
|
@@ -23,7 +23,7 @@ export declare const tierAssignmentEntity: import("@cosmicdrift/kumiko-types/fie
|
|
|
23
23
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
24
24
|
required: true;
|
|
25
25
|
};
|
|
26
|
-
source: {
|
|
26
|
+
readonly source: {
|
|
27
27
|
readonly type: "select";
|
|
28
28
|
readonly description?: string;
|
|
29
29
|
readonly options: ("billing" | "default" | "manual")[];
|
|
@@ -7,7 +7,7 @@ export type TierResolverDeps<TTier extends string, TCaps> = {
|
|
|
7
7
|
};
|
|
8
8
|
export declare function createTierResolver<TTier extends string, TCaps>(deps: TierResolverDeps<TTier, TCaps>): {
|
|
9
9
|
tierAssignmentTable: import("@cosmicdrift/kumiko-framework/db").EntityTable<import("@cosmicdrift/kumiko-types/fields").EntityDefinition<{
|
|
10
|
-
tier: {
|
|
10
|
+
readonly tier: {
|
|
11
11
|
readonly type: "text";
|
|
12
12
|
readonly description?: string;
|
|
13
13
|
readonly maxLength?: number;
|
|
@@ -30,7 +30,7 @@ export declare function createTierResolver<TTier extends string, TCaps>(deps: Ti
|
|
|
30
30
|
} & import("@cosmicdrift/kumiko-types/fields").ResolvedPiiFlags & {
|
|
31
31
|
required: true;
|
|
32
32
|
};
|
|
33
|
-
source: {
|
|
33
|
+
readonly source: {
|
|
34
34
|
readonly type: "select";
|
|
35
35
|
readonly description?: string;
|
|
36
36
|
readonly options: ("billing" | "default" | "manual")[];
|
|
@@ -1,4 +1,25 @@
|
|
|
1
1
|
import * as z from "zod";
|
|
2
2
|
export declare const meQuery: import("@cosmicdrift/kumiko-types/define-handler").QueryHandlerDefinition<"user:me", z.ZodObject<{}, z.core.$strip>, {
|
|
3
|
+
id: string;
|
|
4
|
+
tenantId: string;
|
|
5
|
+
version: number;
|
|
6
|
+
insertedAt: Temporal.Instant;
|
|
7
|
+
modifiedAt: Temporal.Instant | null;
|
|
8
|
+
insertedById: string | null;
|
|
9
|
+
modifiedById: string | null;
|
|
10
|
+
isDeleted?: boolean | undefined;
|
|
11
|
+
deletedAt?: Temporal.Instant | null | undefined;
|
|
12
|
+
deletedById?: string | null | undefined;
|
|
3
13
|
effectiveTimeZone: string;
|
|
14
|
+
displayName: string;
|
|
15
|
+
email: string;
|
|
16
|
+
emailVerified: boolean;
|
|
17
|
+
gracePeriodEnd: Temporal.Instant | null;
|
|
18
|
+
lastActiveTenantId: string | null;
|
|
19
|
+
locale: string | null;
|
|
20
|
+
passwordHash: string | null;
|
|
21
|
+
pendingDeletionRequestId: string | null;
|
|
22
|
+
roles: readonly string[];
|
|
23
|
+
status: string;
|
|
24
|
+
timezone: string | null;
|
|
4
25
|
} | null, import("@cosmicdrift/kumiko-types/event-type-map").KumikoEventTypeMap>;
|