@dyrected/core 2.5.56 → 2.5.58
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/app-config-BqhrBrSM.d.cts +1522 -0
- package/dist/app-config-BqhrBrSM.d.ts +1522 -0
- package/dist/app-config-oU1EGHND.d.cts +1538 -0
- package/dist/app-config-oU1EGHND.d.ts +1538 -0
- package/dist/index.cjs +79 -0
- package/dist/index.d.cts +129 -7
- package/dist/index.d.ts +129 -7
- package/dist/index.js +55 -0
- package/dist/server.cjs +428 -84
- package/dist/server.d.cts +26 -5
- package/dist/server.d.ts +26 -5
- package/dist/server.js +428 -84
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -27,9 +27,33 @@ __export(index_exports, {
|
|
|
27
27
|
canViewWorkflowDraft: () => canViewWorkflowDraft,
|
|
28
28
|
createLifecycleEvent: () => createLifecycleEvent,
|
|
29
29
|
createWorkflowDocument: () => createWorkflowDocument,
|
|
30
|
+
defineArrayField: () => defineArrayField,
|
|
31
|
+
defineBlock: () => defineBlock,
|
|
32
|
+
defineBlocksField: () => defineBlocksField,
|
|
33
|
+
defineBooleanField: () => defineBooleanField,
|
|
30
34
|
defineCollection: () => defineCollection,
|
|
31
35
|
defineConfig: () => defineConfig,
|
|
36
|
+
defineDateField: () => defineDateField,
|
|
37
|
+
defineDateTimeField: () => defineDateTimeField,
|
|
38
|
+
defineEmailField: () => defineEmailField,
|
|
39
|
+
defineField: () => defineField,
|
|
32
40
|
defineGlobal: () => defineGlobal,
|
|
41
|
+
defineIconField: () => defineIconField,
|
|
42
|
+
defineImageField: () => defineImageField,
|
|
43
|
+
defineJoinField: () => defineJoinField,
|
|
44
|
+
defineJsonField: () => defineJsonField,
|
|
45
|
+
defineMultiSelectField: () => defineMultiSelectField,
|
|
46
|
+
defineNumberField: () => defineNumberField,
|
|
47
|
+
defineObjectField: () => defineObjectField,
|
|
48
|
+
defineRadioField: () => defineRadioField,
|
|
49
|
+
defineRelationshipField: () => defineRelationshipField,
|
|
50
|
+
defineRichTextField: () => defineRichTextField,
|
|
51
|
+
defineRowField: () => defineRowField,
|
|
52
|
+
defineSelectField: () => defineSelectField,
|
|
53
|
+
defineTextField: () => defineTextField,
|
|
54
|
+
defineTextareaField: () => defineTextareaField,
|
|
55
|
+
defineTimeField: () => defineTimeField,
|
|
56
|
+
defineUrlField: () => defineUrlField,
|
|
33
57
|
dispatchLifecycleEvent: () => dispatchLifecycleEvent,
|
|
34
58
|
dispatchPendingLifecycleEvents: () => dispatchPendingLifecycleEvents,
|
|
35
59
|
executeFieldAfterRead: () => executeFieldAfterRead,
|
|
@@ -1757,6 +1781,37 @@ function defineGlobal(config) {
|
|
|
1757
1781
|
function defineConfig(config) {
|
|
1758
1782
|
return config;
|
|
1759
1783
|
}
|
|
1784
|
+
function defineField(field) {
|
|
1785
|
+
return field;
|
|
1786
|
+
}
|
|
1787
|
+
function defineBlock(block) {
|
|
1788
|
+
return block;
|
|
1789
|
+
}
|
|
1790
|
+
function createFieldDefiner(type) {
|
|
1791
|
+
return (field) => ({ ...field, type });
|
|
1792
|
+
}
|
|
1793
|
+
var defineTextField = createFieldDefiner("text");
|
|
1794
|
+
var defineTextareaField = createFieldDefiner("textarea");
|
|
1795
|
+
var defineRichTextField = createFieldDefiner("richText");
|
|
1796
|
+
var defineNumberField = createFieldDefiner("number");
|
|
1797
|
+
var defineBooleanField = createFieldDefiner("boolean");
|
|
1798
|
+
var defineDateField = createFieldDefiner("date");
|
|
1799
|
+
var defineDateTimeField = createFieldDefiner("datetime");
|
|
1800
|
+
var defineTimeField = createFieldDefiner("time");
|
|
1801
|
+
var defineSelectField = createFieldDefiner("select");
|
|
1802
|
+
var defineMultiSelectField = createFieldDefiner("multiSelect");
|
|
1803
|
+
var defineRadioField = createFieldDefiner("radio");
|
|
1804
|
+
var defineRelationshipField = createFieldDefiner("relationship");
|
|
1805
|
+
var defineArrayField = createFieldDefiner("array");
|
|
1806
|
+
var defineObjectField = createFieldDefiner("object");
|
|
1807
|
+
var defineJsonField = createFieldDefiner("json");
|
|
1808
|
+
var defineBlocksField = createFieldDefiner("blocks");
|
|
1809
|
+
var defineImageField = createFieldDefiner("image");
|
|
1810
|
+
var defineEmailField = createFieldDefiner("email");
|
|
1811
|
+
var defineUrlField = createFieldDefiner("url");
|
|
1812
|
+
var defineIconField = createFieldDefiner("icon");
|
|
1813
|
+
var defineJoinField = createFieldDefiner("join");
|
|
1814
|
+
var defineRowField = createFieldDefiner("row");
|
|
1760
1815
|
// Annotate the CommonJS export names for ESM import in node:
|
|
1761
1816
|
0 && (module.exports = {
|
|
1762
1817
|
LIFECYCLE_EVENTS_COLLECTION,
|
|
@@ -1766,9 +1821,33 @@ function defineConfig(config) {
|
|
|
1766
1821
|
canViewWorkflowDraft,
|
|
1767
1822
|
createLifecycleEvent,
|
|
1768
1823
|
createWorkflowDocument,
|
|
1824
|
+
defineArrayField,
|
|
1825
|
+
defineBlock,
|
|
1826
|
+
defineBlocksField,
|
|
1827
|
+
defineBooleanField,
|
|
1769
1828
|
defineCollection,
|
|
1770
1829
|
defineConfig,
|
|
1830
|
+
defineDateField,
|
|
1831
|
+
defineDateTimeField,
|
|
1832
|
+
defineEmailField,
|
|
1833
|
+
defineField,
|
|
1771
1834
|
defineGlobal,
|
|
1835
|
+
defineIconField,
|
|
1836
|
+
defineImageField,
|
|
1837
|
+
defineJoinField,
|
|
1838
|
+
defineJsonField,
|
|
1839
|
+
defineMultiSelectField,
|
|
1840
|
+
defineNumberField,
|
|
1841
|
+
defineObjectField,
|
|
1842
|
+
defineRadioField,
|
|
1843
|
+
defineRelationshipField,
|
|
1844
|
+
defineRichTextField,
|
|
1845
|
+
defineRowField,
|
|
1846
|
+
defineSelectField,
|
|
1847
|
+
defineTextField,
|
|
1848
|
+
defineTextareaField,
|
|
1849
|
+
defineTimeField,
|
|
1850
|
+
defineUrlField,
|
|
1772
1851
|
dispatchLifecycleEvent,
|
|
1773
1852
|
dispatchPendingLifecycleEvents,
|
|
1774
1853
|
executeFieldAfterRead,
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { F as Field, B as Block, D as DyrectedConfig, C as CollectionConfig, A as AdminAuthConfig, P as PublicAdminAuthConfig, W as WorkflowConfig, a as AuthenticatedUser, b as WorkflowTransition, L as LifecycleEventName, c as LifecycleEvent, d as BaseDocument, H as HookRequestContext, G as GlobalConfig } from './app-config-
|
|
2
|
-
export {
|
|
1
|
+
import { F as Field, B as Block, D as DyrectedConfig, C as CollectionConfig, A as AdminAuthConfig, P as PublicAdminAuthConfig, W as WorkflowConfig, a as AuthenticatedUser, b as WorkflowTransition, L as LifecycleEventName, c as LifecycleEvent, d as BaseDocument, H as HookRequestContext, e as ArrayField, f as BlocksField, g as BooleanField, h as DateField, i as DateTimeField, E as EmailField, G as GlobalConfig, I as IconField, j as ImageField, J as JoinField, k as JsonField, M as MultiSelectField, N as NumberField, O as ObjectField, R as RadioField, l as RelationshipField, m as RichTextField, n as RowField, S as SelectField, T as TextField, o as TextareaField, p as TimeField, U as UrlField } from './app-config-oU1EGHND.cjs';
|
|
2
|
+
export { q as AccessFunction, r as AccessFunctionArgs, s as AccessPolicyResolver, t as AccessResult, u as AccessRule, v as AdminAuthAccessResolution, w as AdminAuthClaimMapping, x as AdminAuthMember, y as AdminAuthProvider, z as AdminAuthProviderMembersConfig, K as AdminAuthProvisioningMode, Q as AdminAuthResolveAccessArgs, V as AdminAuthResolvedIdentity, X as AdminConfig, Y as AdminDashboardComponentSlots, Z as AdminIconName, _ as BaseAdminAuthProvider, $ as BaseFieldAdmin, a0 as BlockVariant, a1 as BooleanFieldAdmin, a2 as CharacterLimitFieldAdmin, a3 as CharacterLimitFieldConfig, a4 as CollectionAfterChangeHook, a5 as CollectionAfterDeleteHook, a6 as CollectionAfterReadHook, a7 as CollectionAfterTransitionHook, a8 as CollectionBeforeChangeHook, a9 as CollectionBeforeDeleteHook, aa as CollectionBeforeReadHook, ab as CollectionBeforeTransitionHook, ac as CollectionListComponentSlots, ad as CustomAdminAuthProvider, ae as DatabaseAdapter, af as DynamicOptionItem, ag as DynamicOptionsConfig, ah as DynamicOptionsResolver, ai as DynamicOptionsResolverArgs, aj as EmailFieldAdmin, ak as FieldAdminHooks, al as FieldAdminOnChangeHook, am as FieldAdminOnChangeHookArgs, an as FieldAdminOptionsHook, ao as FieldAdminOptionsHookArgs, ap as FieldAdminOptionsHookResult, aq as FieldAfterReadHook, ar as FieldAfterReadHookArgs, as as FieldBase, at as FieldBeforeChangeHook, au as FieldBeforeChangeHookArgs, av as FieldHook, aw as FieldHooks, ax as FieldType, ay as FileData, az as GlobalAfterChangeHook, aA as GlobalAfterReadHook, aB as GlobalBeforeChangeHook, aC as GlobalBeforeReadHook, aD as HeadingLevel, aE as HookFunction, aF as IconFieldAdmin, aG as ImageService, aH as LIFECYCLE_EVENT_NAMES, aI as LifecycleEventHandler, aJ as MultiSelectFieldAdmin, aK as NamedAccessPolicy, aL as OIDCAdminAuthProvider, aM as PaginatedResult, aN as PublicAdminAuthProvider, aO as RadioFieldAdmin, aP as ReadonlyDatabaseAdapter, aQ as RichTextFeature, aR as RichTextFieldConfig, aS as SelectFieldAdmin, aT as StorageAdapter, aU as TextFieldAdmin, aV as TextareaFieldAdmin, aW as TypedField, aX as UploadConfig, aY as UrlFieldAdmin, aZ as WordLimitFieldAdmin, a_ as WordLimitFieldConfig, a$ as WorkflowMetadata, b0 as WorkflowRole, b1 as WorkflowState, b2 as WorkflowTransitionContext } from './app-config-oU1EGHND.cjs';
|
|
3
3
|
import 'lucide-react';
|
|
4
4
|
|
|
5
5
|
type Prettify<T> = {
|
|
@@ -260,8 +260,8 @@ declare function transitionWorkflow(args: {
|
|
|
260
260
|
* export const Posts = defineCollection({
|
|
261
261
|
* slug: 'posts',
|
|
262
262
|
* fields: [
|
|
263
|
-
* { name: 'title',
|
|
264
|
-
* { name: 'status',
|
|
263
|
+
* defineTextField({ name: 'title', required: true }),
|
|
264
|
+
* defineSelectField({ name: 'status', options: ['draft', 'published'], required: true }),
|
|
265
265
|
* ],
|
|
266
266
|
* hooks: {
|
|
267
267
|
* beforeChange: [({ data }) => {
|
|
@@ -313,8 +313,8 @@ declare function defineCollection<TDoc extends object>(config: CollectionConfig<
|
|
|
313
313
|
* export const Settings = defineGlobal({
|
|
314
314
|
* slug: 'site-settings',
|
|
315
315
|
* fields: [
|
|
316
|
-
* { name: 'siteName',
|
|
317
|
-
* { name: 'maintenanceMode'
|
|
316
|
+
* defineTextField({ name: 'siteName', required: true }),
|
|
317
|
+
* defineBooleanField({ name: 'maintenanceMode' }),
|
|
318
318
|
* ],
|
|
319
319
|
* hooks: {
|
|
320
320
|
* afterChange: [({ doc }) => {
|
|
@@ -341,5 +341,127 @@ declare function defineGlobal<TDoc extends object>(config: GlobalConfig<TDoc>):
|
|
|
341
341
|
* server-level configuration.
|
|
342
342
|
*/
|
|
343
343
|
declare function defineConfig(config: DyrectedConfig): DyrectedConfig;
|
|
344
|
+
/**
|
|
345
|
+
* Define a single field of any type. This is an identity helper: it returns the
|
|
346
|
+
* field unchanged at runtime but preserves the exact literal type, so document
|
|
347
|
+
* shapes still infer correctly when the field is placed in a `defineCollection`
|
|
348
|
+
* or `defineGlobal` `fields` array.
|
|
349
|
+
*
|
|
350
|
+
* Use it when you want autocomplete and type-checking on a field written on its
|
|
351
|
+
* own — for example a shared field reused across collections:
|
|
352
|
+
*
|
|
353
|
+
* ```ts
|
|
354
|
+
* const slug = defineField({ name: 'slug', type: 'text', required: true, unique: true })
|
|
355
|
+
*
|
|
356
|
+
* export const Posts = defineCollection({ slug: 'posts', fields: [slug, ...] })
|
|
357
|
+
* ```
|
|
358
|
+
*
|
|
359
|
+
* For a field of a known type, prefer the dedicated helper (e.g.
|
|
360
|
+
* {@link defineTextField}) so you don't have to repeat the `type`.
|
|
361
|
+
*/
|
|
362
|
+
declare function defineField<const T extends Field>(field: T): T;
|
|
363
|
+
/**
|
|
364
|
+
* Define a {@link Block} for use in a `blocks` field. Identity helper that
|
|
365
|
+
* preserves the block's literal type (slug + fields) so `blocks`-field values
|
|
366
|
+
* stay fully inferred.
|
|
367
|
+
*
|
|
368
|
+
* ```ts
|
|
369
|
+
* const Hero = defineBlock({
|
|
370
|
+
* slug: 'hero',
|
|
371
|
+
* fields: [defineTextField({ name: 'heading', required: true })],
|
|
372
|
+
* })
|
|
373
|
+
*
|
|
374
|
+
* defineBlocksField({ name: 'layout', blocks: [Hero] })
|
|
375
|
+
* ```
|
|
376
|
+
*/
|
|
377
|
+
declare function defineBlock<const T extends Block>(block: T): T;
|
|
378
|
+
/** Define a `text` field. */
|
|
379
|
+
declare const defineTextField: <const T extends Omit<TextField, "type">>(field: T) => T & {
|
|
380
|
+
type: "text";
|
|
381
|
+
};
|
|
382
|
+
/** Define a `textarea` field. */
|
|
383
|
+
declare const defineTextareaField: <const T extends Omit<TextareaField, "type">>(field: T) => T & {
|
|
384
|
+
type: "textarea";
|
|
385
|
+
};
|
|
386
|
+
/** Define a `richText` field, including its editor `features` and `headingLevels`. */
|
|
387
|
+
declare const defineRichTextField: <const T extends Omit<RichTextField, "type">>(field: T) => T & {
|
|
388
|
+
type: "richText";
|
|
389
|
+
};
|
|
390
|
+
/** Define a `number` field. */
|
|
391
|
+
declare const defineNumberField: <const T extends Omit<NumberField, "type">>(field: T) => T & {
|
|
392
|
+
type: "number";
|
|
393
|
+
};
|
|
394
|
+
/** Define a `boolean` field. */
|
|
395
|
+
declare const defineBooleanField: <const T extends Omit<BooleanField, "type">>(field: T) => T & {
|
|
396
|
+
type: "boolean";
|
|
397
|
+
};
|
|
398
|
+
/** Define a `date` field. */
|
|
399
|
+
declare const defineDateField: <const T extends Omit<DateField, "type">>(field: T) => T & {
|
|
400
|
+
type: "date";
|
|
401
|
+
};
|
|
402
|
+
/** Define a `datetime` field. */
|
|
403
|
+
declare const defineDateTimeField: <const T extends Omit<DateTimeField, "type">>(field: T) => T & {
|
|
404
|
+
type: "datetime";
|
|
405
|
+
};
|
|
406
|
+
/** Define a `time` field. */
|
|
407
|
+
declare const defineTimeField: <const T extends Omit<TimeField, "type">>(field: T) => T & {
|
|
408
|
+
type: "time";
|
|
409
|
+
};
|
|
410
|
+
/** Define a `select` field. */
|
|
411
|
+
declare const defineSelectField: <const T extends Omit<SelectField, "type">>(field: T) => T & {
|
|
412
|
+
type: "select";
|
|
413
|
+
};
|
|
414
|
+
/** Define a `multiSelect` field. */
|
|
415
|
+
declare const defineMultiSelectField: <const T extends Omit<MultiSelectField, "type">>(field: T) => T & {
|
|
416
|
+
type: "multiSelect";
|
|
417
|
+
};
|
|
418
|
+
/** Define a `radio` field. */
|
|
419
|
+
declare const defineRadioField: <const T extends Omit<RadioField, "type">>(field: T) => T & {
|
|
420
|
+
type: "radio";
|
|
421
|
+
};
|
|
422
|
+
/** Define a `relationship` field. */
|
|
423
|
+
declare const defineRelationshipField: <const T extends Omit<RelationshipField, "type">>(field: T) => T & {
|
|
424
|
+
type: "relationship";
|
|
425
|
+
};
|
|
426
|
+
/** Define an `array` field. */
|
|
427
|
+
declare const defineArrayField: <const T extends Omit<ArrayField, "type">>(field: T) => T & {
|
|
428
|
+
type: "array";
|
|
429
|
+
};
|
|
430
|
+
/** Define an `object` field. */
|
|
431
|
+
declare const defineObjectField: <const T extends Omit<ObjectField, "type">>(field: T) => T & {
|
|
432
|
+
type: "object";
|
|
433
|
+
};
|
|
434
|
+
/** Define a `json` field. */
|
|
435
|
+
declare const defineJsonField: <const T extends Omit<JsonField, "type">>(field: T) => T & {
|
|
436
|
+
type: "json";
|
|
437
|
+
};
|
|
438
|
+
/** Define a `blocks` field. */
|
|
439
|
+
declare const defineBlocksField: <const T extends Omit<BlocksField, "type">>(field: T) => T & {
|
|
440
|
+
type: "blocks";
|
|
441
|
+
};
|
|
442
|
+
/** Define an `image` field. */
|
|
443
|
+
declare const defineImageField: <const T extends Omit<ImageField, "type">>(field: T) => T & {
|
|
444
|
+
type: "image";
|
|
445
|
+
};
|
|
446
|
+
/** Define an `email` field. */
|
|
447
|
+
declare const defineEmailField: <const T extends Omit<EmailField, "type">>(field: T) => T & {
|
|
448
|
+
type: "email";
|
|
449
|
+
};
|
|
450
|
+
/** Define a `url` field. */
|
|
451
|
+
declare const defineUrlField: <const T extends Omit<UrlField, "type">>(field: T) => T & {
|
|
452
|
+
type: "url";
|
|
453
|
+
};
|
|
454
|
+
/** Define an `icon` field. */
|
|
455
|
+
declare const defineIconField: <const T extends Omit<IconField, "type">>(field: T) => T & {
|
|
456
|
+
type: "icon";
|
|
457
|
+
};
|
|
458
|
+
/** Define a `join` field. */
|
|
459
|
+
declare const defineJoinField: <const T extends Omit<JoinField, "type">>(field: T) => T & {
|
|
460
|
+
type: "join";
|
|
461
|
+
};
|
|
462
|
+
/** Define a layout-only `row` field. */
|
|
463
|
+
declare const defineRowField: <const T extends Omit<RowField, "type">>(field: T) => T & {
|
|
464
|
+
type: "row";
|
|
465
|
+
};
|
|
344
466
|
|
|
345
|
-
export { AdminAuthConfig, type AuthDocFields, AuthenticatedUser, BaseDocument, Block, CollectionConfig, DyrectedConfig, Field, GlobalConfig, HookRequestContext, type InferDocShape, LIFECYCLE_EVENTS_COLLECTION, LifecycleEvent, LifecycleEventName, type Prettify, PublicAdminAuthConfig, type SortClause, type SortDirection, type SqlWhereResult, type SystemDocFields, type UploadDocFields, WORKFLOW_HISTORY_COLLECTION, type WhereClause, type WhereOperator, type WhereOperatorName, WorkflowConfig, WorkflowTransition, availableWorkflowTransitions, canViewWorkflowDraft, createLifecycleEvent, createWorkflowDocument, defineCollection, defineConfig, defineGlobal, dispatchLifecycleEvent, dispatchPendingLifecycleEvents, executeFieldAfterRead, executeFieldBeforeChange, generateOpenApi, getAdminAuthCollection, getPublicAdminAuthConfig, initializeWorkflowDocument, materializeWorkflowDocument, normalizeConfig, parseMongoWhere, parseSort, parseSqlWhere, publishingWorkflow, resolveAdminAuthCollection, runCollectionHooks, saveWorkflowDraft, transitionWorkflow, workflowCapabilities };
|
|
467
|
+
export { AdminAuthConfig, ArrayField, type AuthDocFields, AuthenticatedUser, BaseDocument, Block, BlocksField, BooleanField, CollectionConfig, DateField, DateTimeField, DyrectedConfig, EmailField, Field, GlobalConfig, HookRequestContext, IconField, ImageField, type InferDocShape, JoinField, JsonField, LIFECYCLE_EVENTS_COLLECTION, LifecycleEvent, LifecycleEventName, MultiSelectField, NumberField, ObjectField, type Prettify, PublicAdminAuthConfig, RadioField, RelationshipField, RichTextField, RowField, SelectField, type SortClause, type SortDirection, type SqlWhereResult, type SystemDocFields, TextField, TextareaField, TimeField, type UploadDocFields, UrlField, WORKFLOW_HISTORY_COLLECTION, type WhereClause, type WhereOperator, type WhereOperatorName, WorkflowConfig, WorkflowTransition, availableWorkflowTransitions, canViewWorkflowDraft, createLifecycleEvent, createWorkflowDocument, defineArrayField, defineBlock, defineBlocksField, defineBooleanField, defineCollection, defineConfig, defineDateField, defineDateTimeField, defineEmailField, defineField, defineGlobal, defineIconField, defineImageField, defineJoinField, defineJsonField, defineMultiSelectField, defineNumberField, defineObjectField, defineRadioField, defineRelationshipField, defineRichTextField, defineRowField, defineSelectField, defineTextField, defineTextareaField, defineTimeField, defineUrlField, dispatchLifecycleEvent, dispatchPendingLifecycleEvents, executeFieldAfterRead, executeFieldBeforeChange, generateOpenApi, getAdminAuthCollection, getPublicAdminAuthConfig, initializeWorkflowDocument, materializeWorkflowDocument, normalizeConfig, parseMongoWhere, parseSort, parseSqlWhere, publishingWorkflow, resolveAdminAuthCollection, runCollectionHooks, saveWorkflowDraft, transitionWorkflow, workflowCapabilities };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { F as Field, B as Block, D as DyrectedConfig, C as CollectionConfig, A as AdminAuthConfig, P as PublicAdminAuthConfig, W as WorkflowConfig, a as AuthenticatedUser, b as WorkflowTransition, L as LifecycleEventName, c as LifecycleEvent, d as BaseDocument, H as HookRequestContext, G as GlobalConfig } from './app-config-
|
|
2
|
-
export {
|
|
1
|
+
import { F as Field, B as Block, D as DyrectedConfig, C as CollectionConfig, A as AdminAuthConfig, P as PublicAdminAuthConfig, W as WorkflowConfig, a as AuthenticatedUser, b as WorkflowTransition, L as LifecycleEventName, c as LifecycleEvent, d as BaseDocument, H as HookRequestContext, e as ArrayField, f as BlocksField, g as BooleanField, h as DateField, i as DateTimeField, E as EmailField, G as GlobalConfig, I as IconField, j as ImageField, J as JoinField, k as JsonField, M as MultiSelectField, N as NumberField, O as ObjectField, R as RadioField, l as RelationshipField, m as RichTextField, n as RowField, S as SelectField, T as TextField, o as TextareaField, p as TimeField, U as UrlField } from './app-config-oU1EGHND.js';
|
|
2
|
+
export { q as AccessFunction, r as AccessFunctionArgs, s as AccessPolicyResolver, t as AccessResult, u as AccessRule, v as AdminAuthAccessResolution, w as AdminAuthClaimMapping, x as AdminAuthMember, y as AdminAuthProvider, z as AdminAuthProviderMembersConfig, K as AdminAuthProvisioningMode, Q as AdminAuthResolveAccessArgs, V as AdminAuthResolvedIdentity, X as AdminConfig, Y as AdminDashboardComponentSlots, Z as AdminIconName, _ as BaseAdminAuthProvider, $ as BaseFieldAdmin, a0 as BlockVariant, a1 as BooleanFieldAdmin, a2 as CharacterLimitFieldAdmin, a3 as CharacterLimitFieldConfig, a4 as CollectionAfterChangeHook, a5 as CollectionAfterDeleteHook, a6 as CollectionAfterReadHook, a7 as CollectionAfterTransitionHook, a8 as CollectionBeforeChangeHook, a9 as CollectionBeforeDeleteHook, aa as CollectionBeforeReadHook, ab as CollectionBeforeTransitionHook, ac as CollectionListComponentSlots, ad as CustomAdminAuthProvider, ae as DatabaseAdapter, af as DynamicOptionItem, ag as DynamicOptionsConfig, ah as DynamicOptionsResolver, ai as DynamicOptionsResolverArgs, aj as EmailFieldAdmin, ak as FieldAdminHooks, al as FieldAdminOnChangeHook, am as FieldAdminOnChangeHookArgs, an as FieldAdminOptionsHook, ao as FieldAdminOptionsHookArgs, ap as FieldAdminOptionsHookResult, aq as FieldAfterReadHook, ar as FieldAfterReadHookArgs, as as FieldBase, at as FieldBeforeChangeHook, au as FieldBeforeChangeHookArgs, av as FieldHook, aw as FieldHooks, ax as FieldType, ay as FileData, az as GlobalAfterChangeHook, aA as GlobalAfterReadHook, aB as GlobalBeforeChangeHook, aC as GlobalBeforeReadHook, aD as HeadingLevel, aE as HookFunction, aF as IconFieldAdmin, aG as ImageService, aH as LIFECYCLE_EVENT_NAMES, aI as LifecycleEventHandler, aJ as MultiSelectFieldAdmin, aK as NamedAccessPolicy, aL as OIDCAdminAuthProvider, aM as PaginatedResult, aN as PublicAdminAuthProvider, aO as RadioFieldAdmin, aP as ReadonlyDatabaseAdapter, aQ as RichTextFeature, aR as RichTextFieldConfig, aS as SelectFieldAdmin, aT as StorageAdapter, aU as TextFieldAdmin, aV as TextareaFieldAdmin, aW as TypedField, aX as UploadConfig, aY as UrlFieldAdmin, aZ as WordLimitFieldAdmin, a_ as WordLimitFieldConfig, a$ as WorkflowMetadata, b0 as WorkflowRole, b1 as WorkflowState, b2 as WorkflowTransitionContext } from './app-config-oU1EGHND.js';
|
|
3
3
|
import 'lucide-react';
|
|
4
4
|
|
|
5
5
|
type Prettify<T> = {
|
|
@@ -260,8 +260,8 @@ declare function transitionWorkflow(args: {
|
|
|
260
260
|
* export const Posts = defineCollection({
|
|
261
261
|
* slug: 'posts',
|
|
262
262
|
* fields: [
|
|
263
|
-
* { name: 'title',
|
|
264
|
-
* { name: 'status',
|
|
263
|
+
* defineTextField({ name: 'title', required: true }),
|
|
264
|
+
* defineSelectField({ name: 'status', options: ['draft', 'published'], required: true }),
|
|
265
265
|
* ],
|
|
266
266
|
* hooks: {
|
|
267
267
|
* beforeChange: [({ data }) => {
|
|
@@ -313,8 +313,8 @@ declare function defineCollection<TDoc extends object>(config: CollectionConfig<
|
|
|
313
313
|
* export const Settings = defineGlobal({
|
|
314
314
|
* slug: 'site-settings',
|
|
315
315
|
* fields: [
|
|
316
|
-
* { name: 'siteName',
|
|
317
|
-
* { name: 'maintenanceMode'
|
|
316
|
+
* defineTextField({ name: 'siteName', required: true }),
|
|
317
|
+
* defineBooleanField({ name: 'maintenanceMode' }),
|
|
318
318
|
* ],
|
|
319
319
|
* hooks: {
|
|
320
320
|
* afterChange: [({ doc }) => {
|
|
@@ -341,5 +341,127 @@ declare function defineGlobal<TDoc extends object>(config: GlobalConfig<TDoc>):
|
|
|
341
341
|
* server-level configuration.
|
|
342
342
|
*/
|
|
343
343
|
declare function defineConfig(config: DyrectedConfig): DyrectedConfig;
|
|
344
|
+
/**
|
|
345
|
+
* Define a single field of any type. This is an identity helper: it returns the
|
|
346
|
+
* field unchanged at runtime but preserves the exact literal type, so document
|
|
347
|
+
* shapes still infer correctly when the field is placed in a `defineCollection`
|
|
348
|
+
* or `defineGlobal` `fields` array.
|
|
349
|
+
*
|
|
350
|
+
* Use it when you want autocomplete and type-checking on a field written on its
|
|
351
|
+
* own — for example a shared field reused across collections:
|
|
352
|
+
*
|
|
353
|
+
* ```ts
|
|
354
|
+
* const slug = defineField({ name: 'slug', type: 'text', required: true, unique: true })
|
|
355
|
+
*
|
|
356
|
+
* export const Posts = defineCollection({ slug: 'posts', fields: [slug, ...] })
|
|
357
|
+
* ```
|
|
358
|
+
*
|
|
359
|
+
* For a field of a known type, prefer the dedicated helper (e.g.
|
|
360
|
+
* {@link defineTextField}) so you don't have to repeat the `type`.
|
|
361
|
+
*/
|
|
362
|
+
declare function defineField<const T extends Field>(field: T): T;
|
|
363
|
+
/**
|
|
364
|
+
* Define a {@link Block} for use in a `blocks` field. Identity helper that
|
|
365
|
+
* preserves the block's literal type (slug + fields) so `blocks`-field values
|
|
366
|
+
* stay fully inferred.
|
|
367
|
+
*
|
|
368
|
+
* ```ts
|
|
369
|
+
* const Hero = defineBlock({
|
|
370
|
+
* slug: 'hero',
|
|
371
|
+
* fields: [defineTextField({ name: 'heading', required: true })],
|
|
372
|
+
* })
|
|
373
|
+
*
|
|
374
|
+
* defineBlocksField({ name: 'layout', blocks: [Hero] })
|
|
375
|
+
* ```
|
|
376
|
+
*/
|
|
377
|
+
declare function defineBlock<const T extends Block>(block: T): T;
|
|
378
|
+
/** Define a `text` field. */
|
|
379
|
+
declare const defineTextField: <const T extends Omit<TextField, "type">>(field: T) => T & {
|
|
380
|
+
type: "text";
|
|
381
|
+
};
|
|
382
|
+
/** Define a `textarea` field. */
|
|
383
|
+
declare const defineTextareaField: <const T extends Omit<TextareaField, "type">>(field: T) => T & {
|
|
384
|
+
type: "textarea";
|
|
385
|
+
};
|
|
386
|
+
/** Define a `richText` field, including its editor `features` and `headingLevels`. */
|
|
387
|
+
declare const defineRichTextField: <const T extends Omit<RichTextField, "type">>(field: T) => T & {
|
|
388
|
+
type: "richText";
|
|
389
|
+
};
|
|
390
|
+
/** Define a `number` field. */
|
|
391
|
+
declare const defineNumberField: <const T extends Omit<NumberField, "type">>(field: T) => T & {
|
|
392
|
+
type: "number";
|
|
393
|
+
};
|
|
394
|
+
/** Define a `boolean` field. */
|
|
395
|
+
declare const defineBooleanField: <const T extends Omit<BooleanField, "type">>(field: T) => T & {
|
|
396
|
+
type: "boolean";
|
|
397
|
+
};
|
|
398
|
+
/** Define a `date` field. */
|
|
399
|
+
declare const defineDateField: <const T extends Omit<DateField, "type">>(field: T) => T & {
|
|
400
|
+
type: "date";
|
|
401
|
+
};
|
|
402
|
+
/** Define a `datetime` field. */
|
|
403
|
+
declare const defineDateTimeField: <const T extends Omit<DateTimeField, "type">>(field: T) => T & {
|
|
404
|
+
type: "datetime";
|
|
405
|
+
};
|
|
406
|
+
/** Define a `time` field. */
|
|
407
|
+
declare const defineTimeField: <const T extends Omit<TimeField, "type">>(field: T) => T & {
|
|
408
|
+
type: "time";
|
|
409
|
+
};
|
|
410
|
+
/** Define a `select` field. */
|
|
411
|
+
declare const defineSelectField: <const T extends Omit<SelectField, "type">>(field: T) => T & {
|
|
412
|
+
type: "select";
|
|
413
|
+
};
|
|
414
|
+
/** Define a `multiSelect` field. */
|
|
415
|
+
declare const defineMultiSelectField: <const T extends Omit<MultiSelectField, "type">>(field: T) => T & {
|
|
416
|
+
type: "multiSelect";
|
|
417
|
+
};
|
|
418
|
+
/** Define a `radio` field. */
|
|
419
|
+
declare const defineRadioField: <const T extends Omit<RadioField, "type">>(field: T) => T & {
|
|
420
|
+
type: "radio";
|
|
421
|
+
};
|
|
422
|
+
/** Define a `relationship` field. */
|
|
423
|
+
declare const defineRelationshipField: <const T extends Omit<RelationshipField, "type">>(field: T) => T & {
|
|
424
|
+
type: "relationship";
|
|
425
|
+
};
|
|
426
|
+
/** Define an `array` field. */
|
|
427
|
+
declare const defineArrayField: <const T extends Omit<ArrayField, "type">>(field: T) => T & {
|
|
428
|
+
type: "array";
|
|
429
|
+
};
|
|
430
|
+
/** Define an `object` field. */
|
|
431
|
+
declare const defineObjectField: <const T extends Omit<ObjectField, "type">>(field: T) => T & {
|
|
432
|
+
type: "object";
|
|
433
|
+
};
|
|
434
|
+
/** Define a `json` field. */
|
|
435
|
+
declare const defineJsonField: <const T extends Omit<JsonField, "type">>(field: T) => T & {
|
|
436
|
+
type: "json";
|
|
437
|
+
};
|
|
438
|
+
/** Define a `blocks` field. */
|
|
439
|
+
declare const defineBlocksField: <const T extends Omit<BlocksField, "type">>(field: T) => T & {
|
|
440
|
+
type: "blocks";
|
|
441
|
+
};
|
|
442
|
+
/** Define an `image` field. */
|
|
443
|
+
declare const defineImageField: <const T extends Omit<ImageField, "type">>(field: T) => T & {
|
|
444
|
+
type: "image";
|
|
445
|
+
};
|
|
446
|
+
/** Define an `email` field. */
|
|
447
|
+
declare const defineEmailField: <const T extends Omit<EmailField, "type">>(field: T) => T & {
|
|
448
|
+
type: "email";
|
|
449
|
+
};
|
|
450
|
+
/** Define a `url` field. */
|
|
451
|
+
declare const defineUrlField: <const T extends Omit<UrlField, "type">>(field: T) => T & {
|
|
452
|
+
type: "url";
|
|
453
|
+
};
|
|
454
|
+
/** Define an `icon` field. */
|
|
455
|
+
declare const defineIconField: <const T extends Omit<IconField, "type">>(field: T) => T & {
|
|
456
|
+
type: "icon";
|
|
457
|
+
};
|
|
458
|
+
/** Define a `join` field. */
|
|
459
|
+
declare const defineJoinField: <const T extends Omit<JoinField, "type">>(field: T) => T & {
|
|
460
|
+
type: "join";
|
|
461
|
+
};
|
|
462
|
+
/** Define a layout-only `row` field. */
|
|
463
|
+
declare const defineRowField: <const T extends Omit<RowField, "type">>(field: T) => T & {
|
|
464
|
+
type: "row";
|
|
465
|
+
};
|
|
344
466
|
|
|
345
|
-
export { AdminAuthConfig, type AuthDocFields, AuthenticatedUser, BaseDocument, Block, CollectionConfig, DyrectedConfig, Field, GlobalConfig, HookRequestContext, type InferDocShape, LIFECYCLE_EVENTS_COLLECTION, LifecycleEvent, LifecycleEventName, type Prettify, PublicAdminAuthConfig, type SortClause, type SortDirection, type SqlWhereResult, type SystemDocFields, type UploadDocFields, WORKFLOW_HISTORY_COLLECTION, type WhereClause, type WhereOperator, type WhereOperatorName, WorkflowConfig, WorkflowTransition, availableWorkflowTransitions, canViewWorkflowDraft, createLifecycleEvent, createWorkflowDocument, defineCollection, defineConfig, defineGlobal, dispatchLifecycleEvent, dispatchPendingLifecycleEvents, executeFieldAfterRead, executeFieldBeforeChange, generateOpenApi, getAdminAuthCollection, getPublicAdminAuthConfig, initializeWorkflowDocument, materializeWorkflowDocument, normalizeConfig, parseMongoWhere, parseSort, parseSqlWhere, publishingWorkflow, resolveAdminAuthCollection, runCollectionHooks, saveWorkflowDraft, transitionWorkflow, workflowCapabilities };
|
|
467
|
+
export { AdminAuthConfig, ArrayField, type AuthDocFields, AuthenticatedUser, BaseDocument, Block, BlocksField, BooleanField, CollectionConfig, DateField, DateTimeField, DyrectedConfig, EmailField, Field, GlobalConfig, HookRequestContext, IconField, ImageField, type InferDocShape, JoinField, JsonField, LIFECYCLE_EVENTS_COLLECTION, LifecycleEvent, LifecycleEventName, MultiSelectField, NumberField, ObjectField, type Prettify, PublicAdminAuthConfig, RadioField, RelationshipField, RichTextField, RowField, SelectField, type SortClause, type SortDirection, type SqlWhereResult, type SystemDocFields, TextField, TextareaField, TimeField, type UploadDocFields, UrlField, WORKFLOW_HISTORY_COLLECTION, type WhereClause, type WhereOperator, type WhereOperatorName, WorkflowConfig, WorkflowTransition, availableWorkflowTransitions, canViewWorkflowDraft, createLifecycleEvent, createWorkflowDocument, defineArrayField, defineBlock, defineBlocksField, defineBooleanField, defineCollection, defineConfig, defineDateField, defineDateTimeField, defineEmailField, defineField, defineGlobal, defineIconField, defineImageField, defineJoinField, defineJsonField, defineMultiSelectField, defineNumberField, defineObjectField, defineRadioField, defineRelationshipField, defineRichTextField, defineRowField, defineSelectField, defineTextField, defineTextareaField, defineTimeField, defineUrlField, dispatchLifecycleEvent, dispatchPendingLifecycleEvents, executeFieldAfterRead, executeFieldBeforeChange, generateOpenApi, getAdminAuthCollection, getPublicAdminAuthConfig, initializeWorkflowDocument, materializeWorkflowDocument, normalizeConfig, parseMongoWhere, parseSort, parseSqlWhere, publishingWorkflow, resolveAdminAuthCollection, runCollectionHooks, saveWorkflowDraft, transitionWorkflow, workflowCapabilities };
|
package/dist/index.js
CHANGED
|
@@ -216,6 +216,37 @@ function defineGlobal(config) {
|
|
|
216
216
|
function defineConfig(config) {
|
|
217
217
|
return config;
|
|
218
218
|
}
|
|
219
|
+
function defineField(field) {
|
|
220
|
+
return field;
|
|
221
|
+
}
|
|
222
|
+
function defineBlock(block) {
|
|
223
|
+
return block;
|
|
224
|
+
}
|
|
225
|
+
function createFieldDefiner(type) {
|
|
226
|
+
return (field) => ({ ...field, type });
|
|
227
|
+
}
|
|
228
|
+
var defineTextField = createFieldDefiner("text");
|
|
229
|
+
var defineTextareaField = createFieldDefiner("textarea");
|
|
230
|
+
var defineRichTextField = createFieldDefiner("richText");
|
|
231
|
+
var defineNumberField = createFieldDefiner("number");
|
|
232
|
+
var defineBooleanField = createFieldDefiner("boolean");
|
|
233
|
+
var defineDateField = createFieldDefiner("date");
|
|
234
|
+
var defineDateTimeField = createFieldDefiner("datetime");
|
|
235
|
+
var defineTimeField = createFieldDefiner("time");
|
|
236
|
+
var defineSelectField = createFieldDefiner("select");
|
|
237
|
+
var defineMultiSelectField = createFieldDefiner("multiSelect");
|
|
238
|
+
var defineRadioField = createFieldDefiner("radio");
|
|
239
|
+
var defineRelationshipField = createFieldDefiner("relationship");
|
|
240
|
+
var defineArrayField = createFieldDefiner("array");
|
|
241
|
+
var defineObjectField = createFieldDefiner("object");
|
|
242
|
+
var defineJsonField = createFieldDefiner("json");
|
|
243
|
+
var defineBlocksField = createFieldDefiner("blocks");
|
|
244
|
+
var defineImageField = createFieldDefiner("image");
|
|
245
|
+
var defineEmailField = createFieldDefiner("email");
|
|
246
|
+
var defineUrlField = createFieldDefiner("url");
|
|
247
|
+
var defineIconField = createFieldDefiner("icon");
|
|
248
|
+
var defineJoinField = createFieldDefiner("join");
|
|
249
|
+
var defineRowField = createFieldDefiner("row");
|
|
219
250
|
export {
|
|
220
251
|
LIFECYCLE_EVENTS_COLLECTION,
|
|
221
252
|
LIFECYCLE_EVENT_NAMES,
|
|
@@ -224,9 +255,33 @@ export {
|
|
|
224
255
|
canViewWorkflowDraft,
|
|
225
256
|
createLifecycleEvent,
|
|
226
257
|
createWorkflowDocument,
|
|
258
|
+
defineArrayField,
|
|
259
|
+
defineBlock,
|
|
260
|
+
defineBlocksField,
|
|
261
|
+
defineBooleanField,
|
|
227
262
|
defineCollection,
|
|
228
263
|
defineConfig,
|
|
264
|
+
defineDateField,
|
|
265
|
+
defineDateTimeField,
|
|
266
|
+
defineEmailField,
|
|
267
|
+
defineField,
|
|
229
268
|
defineGlobal,
|
|
269
|
+
defineIconField,
|
|
270
|
+
defineImageField,
|
|
271
|
+
defineJoinField,
|
|
272
|
+
defineJsonField,
|
|
273
|
+
defineMultiSelectField,
|
|
274
|
+
defineNumberField,
|
|
275
|
+
defineObjectField,
|
|
276
|
+
defineRadioField,
|
|
277
|
+
defineRelationshipField,
|
|
278
|
+
defineRichTextField,
|
|
279
|
+
defineRowField,
|
|
280
|
+
defineSelectField,
|
|
281
|
+
defineTextField,
|
|
282
|
+
defineTextareaField,
|
|
283
|
+
defineTimeField,
|
|
284
|
+
defineUrlField,
|
|
230
285
|
dispatchLifecycleEvent,
|
|
231
286
|
dispatchPendingLifecycleEvents,
|
|
232
287
|
executeFieldAfterRead,
|