@dyrected/core 2.23.0 → 2.24.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.
@@ -1371,8 +1371,39 @@ interface CollectionViewComponentSlots {
1371
1371
  beforeViewContent?: string[];
1372
1372
  afterViewContent?: string[];
1373
1373
  }
1374
+ /**
1375
+ * How much of the default edit screen's chrome surrounds a custom form.
1376
+ *
1377
+ * - `full` (default): header, status badge, default save bar, and the unsaved-changes guard.
1378
+ * - `header`: header and the unsaved-changes guard. The form supplies its own actions.
1379
+ * - `none`: nothing. The form owns the whole screen.
1380
+ */
1381
+ type FormShell = "full" | "header" | "none";
1382
+ /** The values `formShell` accepts. */
1383
+ declare const FORM_SHELLS: readonly FormShell[];
1384
+ /**
1385
+ * Registry keys of custom components that replace the body of a create or edit screen.
1386
+ * Each key is resolved against `components.forms` in the host's admin registration.
1387
+ */
1388
+ interface DocumentFormComponentSlots {
1389
+ /** Used when creating a record. Falls back to `form`, then the built-in form. */
1390
+ createForm?: string;
1391
+ /** Used when editing a record. Falls back to `form`, then the built-in form. */
1392
+ editForm?: string;
1393
+ /** Fallback for both create and edit. */
1394
+ form?: string;
1395
+ /** How much default chrome surrounds the custom form. Defaults to `full`. */
1396
+ formShell?: FormShell;
1397
+ }
1398
+ /** Component keys a global can replace. A global is always edited, never created. */
1399
+ type GlobalFormComponentSlots = Pick<DocumentFormComponentSlots, "editForm" | "form" | "formShell">;
1374
1400
  /** Ordered custom component keys rendered around a collection's list content. */
1375
- interface CollectionListComponentSlots {
1401
+ interface CollectionListComponentSlots extends DocumentFormComponentSlots {
1402
+ /**
1403
+ * Set to `false` to keep the built-in form when this collection is created or edited
1404
+ * in a drawer (inline relationship creation), even if `createForm` is set.
1405
+ */
1406
+ formInDrawer?: boolean;
1376
1407
  beforeList?: string[];
1377
1408
  beforeListTable?: string[];
1378
1409
  afterListTable?: string[];
@@ -3007,6 +3038,8 @@ interface GlobalConfig<TDoc extends object = Record<string, unknown>> {
3007
3038
  order?: number;
3008
3039
  /** If `true`, this global is not shown in the Admin UI sidebar. */
3009
3040
  hidden?: boolean;
3041
+ /** Custom components that replace this global's edit form. */
3042
+ components?: GlobalFormComponentSlots;
3010
3043
  };
3011
3044
  /**
3012
3045
  * Optional custom AI assistant instructions for this global singleton.
@@ -4664,4 +4697,4 @@ interface DyrectedContext {
4664
4697
  */
4665
4698
  declare function createDyrectedApp(rawConfig: DyrectedConfig | any): Promise<Hono<DyrectedContext, hono_types.BlankSchema, "/">>;
4666
4699
 
4667
- export { type RelationshipField as $, type AdminAuthConfig as A, type Block as B, type CollectionConfig as C, type DyrectedConfig as D, type DetailTab as E, type Field as F, type GlobalConfig as G, type HookRequestContext as H, type DetailTabsOptions as I, type DetailTabs as J, type DetailTextOptions as K, type LifecycleEventName as L, type DetailText as M, type DetailSchema as N, type DyrectedContext as O, type PublicAdminAuthConfig as P, type AIConfig as Q, type AIPIIConfig as R, type IdStrategy as S, type TaskRunResult as T, type CompiledNavTree as U, type CompiledNavItem as V, type WorkflowConfig as W, type UserNavigationPreferences as X, type DefineWorkspaceOptions as Y, type ViewConfig as Z, type DateTimeField as _, type DeclarativeHookExpression as a, type AggregateArgs as a$, type SelectField as a0, type ArrayField as a1, type FieldType as a2, type BooleanField as a3, type AuthConfig as a4, type AccessPolicyResolver as a5, type DateField as a6, type TextField as a7, type EmailField as a8, type IconField as a9, AI_ACTIONS_COLLECTION as aA, AI_AUDIT_COLLECTION as aB, AI_CHUNKS_COLLECTION as aC, AI_MESSAGES_COLLECTION as aD, AI_THREADS_COLLECTION as aE, type AccessConfig as aF, type AccessFunction as aG, type AccessFunctionArgs as aH, type AccessResult as aI, type AccessRule as aJ, type ActionConfig as aK, type ActionConfigBase as aL, type ActionConfigWithHandler as aM, type ActionConfigWithMutation as aN, type ActionContext as aO, type ActionType as aP, type AdminAuthAccessResolution as aQ, type AdminAuthClaimMapping as aR, type AdminAuthMember as aS, type AdminAuthProvider as aT, type AdminAuthProviderMembersConfig as aU, type AdminAuthProvisioningMode as aV, type AdminAuthResolveAccessArgs as aW, type AdminAuthResolvedIdentity as aX, type AdminConfig as aY, type AdminDashboardComponentSlots as aZ, type AdminIconName as a_, type ImageField as aa, type JoinField as ab, type JsonField as ac, type MoneyField as ad, type MultiSelectField as ae, type NumberField as af, type ObjectField as ag, type RadioField as ah, type RichTextField as ai, type RowField as aj, type TextareaField as ak, type TimeField as al, type UrlField as am, type AIAction as an, type AIActionStatus as ao, type AIActionType as ap, type AIAuditActionType as aq, type AIAuditRecord as ar, type AIChunk as as, type AIMessage as at, type AIPIIPattern as au, type AIRateLimitResult as av, type AIRateLimitStore as aw, type AIThread as ax, type AIToolContext as ay, type AIToolDefinition as az, type AuthenticatedUser as b, type DistinctCountOperation as b$, type AggregateCastType as b0, type AggregateCollectionResult as b1, type AggregateInput as b2, type AggregateOperation as b3, type AggregateResult as b4, type AppTrashConfig as b5, type BaseAdminAuthProvider as b6, type BaseFieldAdmin as b7, type BlockVariant as b8, type BlocksField as b9, type CollectionListComponentSlots as bA, type CollectionRAGConfig as bB, type CollectionSchemaResult as bC, type CollectionSummaryResult as bD, type CollectionViewComponentSlots as bE, type CompiledNavGroup as bF, type CountOperation as bG, type CustomAdminAuthProvider as bH, type CustomViewConfig as bI, type CustomViewDataConfig as bJ, DEFAULT_USER_NAV_PREFERENCES as bK, type DateFieldAdmin as bL, type DateFormat as bM, type DefaultValueContext as bN, type DefineActionOptions as bO, type DefineCalendarViewOptions as bP, type DefineCardsViewOptions as bQ, type DefineCustomViewOptions as bR, type DefineGanttViewOptions as bS, type DefineKanbanViewOptions as bT, type DefinePageInput as bU, type DefineTableViewOptions as bV, type DefineViewBaseOptions as bW, type DefineViewOptions as bX, type DetailSpan as bY, type DisplayTone as bZ, type DisplayVariant as b_, type BooleanFieldAdmin as ba, type BooleanFormat as bb, CURRENT_NAV_PREFERENCES_VERSION as bc, CUSTOM_VIEW_FETCH_ALL_LIMIT as bd, type CalendarViewConfig as be, type CardsViewConfig as bf, type CharacterLimitFieldAdmin as bg, type CharacterLimitFieldConfig as bh, type CollectionAfterChangeHook as bi, type CollectionAfterDeleteHook as bj, type CollectionAfterReadHook as bk, type CollectionAfterReadHookEntry as bl, type CollectionAfterRestoreHook as bm, type CollectionAfterTransitionHook as bn, type CollectionAfterTrashHook as bo, type CollectionBeforeChangeHook as bp, type CollectionBeforeChangeHookEntry as bq, type CollectionBeforeCommitHook as br, type CollectionBeforeDeleteHook as bs, type CollectionBeforeReadHook as bt, type CollectionBeforeReadHookEntry as bu, type CollectionBeforeRestoreHook as bv, type CollectionBeforeTransitionHook as bw, type CollectionBeforeTrashHook as bx, type CollectionEmailConfig as by, type CollectionIndex as bz, type WorkflowTransition as c, type OIDCAdminAuthProvider as c$, type DistinctValuesOperation as c0, type DynamicOptionItem as c1, type DynamicOptionsConfig as c2, type DynamicOptionsResolver as c3, type DynamicOptionsResolverArgs as c4, type DyrectedAIContext as c5, type DyrectedLoggerConfig as c6, type DyrectedObservabilityConfig as c7, type EmailFieldAdmin as c8, type EmailTemplateArgs as c9, type GlobalSummaryResult as cA, type HeadingLevel as cB, type HookFunction as cC, type IconFieldAdmin as cD, type ImageService as cE, type ImageTransformOptions as cF, type InferAggregateResult as cG, type JoinFieldAdmin as cH, type JsonFieldAdmin as cI, type JsonFormat as cJ, type KanbanViewConfig as cK, LIFECYCLE_EVENT_NAMES as cL, type LifecycleEventHandler as cM, type LinkFormat as cN, type MetricColor as cO, type MoneyFieldAdmin as cP, type MoneyFieldConfig as cQ, type MultiSelectFieldAdmin as cR, type NamedAccessPolicy as cS, type NavBadgeConfig as cT, type NavGroup as cU, type NumberFieldAdmin as cV, type NumberFormat as cW, type NumberLimitFieldAdmin as cX, type NumberLimitFieldConfig as cY, type NumericOperation as cZ, type NumericUpdateOperator as c_, type EmailTemplateResult as ca, type FieldAdminHooks as cb, type FieldAdminOnChangeHook as cc, type FieldAdminOnChangeHookArgs as cd, type FieldAdminOptionsHook as ce, type FieldAdminOptionsHookArgs as cf, type FieldAdminOptionsHookResult as cg, type FieldAfterReadHook as ch, type FieldAfterReadHookArgs as ci, type FieldBase as cj, type FieldBeforeChangeHook as ck, type FieldBeforeChangeHookArgs as cl, type FieldHook as cm, type FieldHooks as cn, type FileData as co, type GanttViewConfig as cp, type GetDocumentResult as cq, type GlobalAfterChangeHook as cr, type GlobalAfterReadHook as cs, type GlobalAfterReadHookEntry as ct, type GlobalBeforeChangeHook as cu, type GlobalBeforeChangeHookEntry as cv, type GlobalBeforeReadHook as cw, type GlobalBeforeReadHookEntry as cx, type GlobalRAGConfig as cy, type GlobalSchemaResult as cz, type LifecycleEvent as d, isAICollection as d$, type OptionFormat as d0, type OutboundEmail as d1, type PageAction as d2, type PageBreadcrumbItem as d3, type PageConfig as d4, type PaginatedResult as d5, type PinnedNavItemRef as d6, type PublicAdminAuthProvider as d7, type QueryCollectionResult as d8, type RAGSearchResult as d9, type ViewMetric as dA, type ViewMetricGroupBy as dB, type ViewMetricGroupByConfig as dC, type ViewMetricTrendConfig as dD, type ViewSubMetric as dE, type WhereClause as dF, type WhereOperator as dG, type WhereOperatorName as dH, type WordLimitFieldAdmin as dI, type WordLimitFieldConfig as dJ, type WorkflowMetadata as dK, type WorkflowOnTransitionContext as dL, type WorkflowOnTransitionHook as dM, type WorkflowRole as dN, type WorkflowState as dO, type WorkflowTransitionContext as dP, coerceBooleanWhere as dQ, defineAction as dR, defineCalendarView as dS, defineCardsView as dT, defineCustomView as dU, defineGanttView as dV, defineKanbanView as dW, definePage as dX, defineTableView as dY, defineView as dZ, defineWorkspace as d_, type RadioFieldAdmin as da, type RateLimitConfig as db, type ReadonlyDatabaseAdapter as dc, type RichTextFeature as dd, type RichTextFieldConfig as de, type SelectFieldAdmin as df, type SqlWhereResult as dg, type StorageAdapter as dh, type TableViewConfig as di, type TaskContext as dj, type TaskLogger as dk, type TaskRunStatus as dl, type TextFieldAdmin as dm, type TextFormat as dn, type TextareaFieldAdmin as dp, type TrashConfig as dq, type TrustProxyConfig as dr, type TypedField as ds, type UploadConfig as dt, type UrlFieldAdmin as du, type UrlLinkValue as dv, type ViewActionFeatures as dw, type ViewComponentSlots as dx, type ViewConfigBase as dy, type ViewLayout as dz, type DatabaseAdapter as e, parseMongoWhere as e0, parseSqlWhere as e1, type CollectionTokenPayload as e2, DEFAULT_INVITE_EXPIRY as e3, DEFAULT_RESET_PASSWORD_EXPIRY as e4, DEFAULT_SESSION_EXPIRY as e5, type DyrectedObservabilityRuntime as e6, type RequestBodyCapture as e7, type RequestTraceContext as e8, type ResolvedObservabilityConfig as e9, attachRequestMetrics as ea, bindObservabilityRuntime as eb, buildRequestLogger as ec, captureRequestBody as ed, createDyrectedApp as ee, createObservabilityRuntime as ef, createRequestSpan as eg, decodeCollectionToken as eh, endRequestSpan as ei, getConfigLogger as ej, getObservabilityRuntime as ek, getRequestLogger as el, redactBody as em, redactHeaders as en, renderPrometheusMetrics as eo, resolveInviteTokenExpiry as ep, resolveObservabilityConfig as eq, resolveResetPasswordTokenExpiry as er, resolveSessionTokenExpiry as es, shouldSampleRequest as et, signCollectionToken as eu, verifyCollectionToken as ev, type BaseDocument as f, type TaskConfig as g, type DetailActionOptions as h, type DetailAction as i, type DetailComputedOptions as j, type ComputedHandler as k, type DetailComputed as l, type DetailCustomOptions as m, type DetailCustom as n, type DetailDividerOptions as o, type DetailDivider as p, type DisplayFieldOptions as q, type DetailField as r, type DetailItem as s, type DetailGridOptions as t, type DetailGrid as u, type DetailRepeatOptions as v, type DetailRepeat as w, type DetailSectionOptions as x, type DetailSection as y, type DetailTabOptions as z };
4700
+ export { type RelationshipField as $, type AdminAuthConfig as A, type Block as B, type CollectionConfig as C, type DyrectedConfig as D, type DetailTab as E, type Field as F, type GlobalConfig as G, type HookRequestContext as H, type DetailTabsOptions as I, type DetailTabs as J, type DetailTextOptions as K, type LifecycleEventName as L, type DetailText as M, type DetailSchema as N, type DyrectedContext as O, type PublicAdminAuthConfig as P, type AIConfig as Q, type AIPIIConfig as R, type IdStrategy as S, type TaskRunResult as T, type CompiledNavTree as U, type CompiledNavItem as V, type WorkflowConfig as W, type UserNavigationPreferences as X, type DefineWorkspaceOptions as Y, type ViewConfig as Z, type DateTimeField as _, type DeclarativeHookExpression as a, type AggregateArgs as a$, type SelectField as a0, type ArrayField as a1, type FieldType as a2, type BooleanField as a3, type AuthConfig as a4, type AccessPolicyResolver as a5, type DateField as a6, type TextField as a7, type EmailField as a8, type IconField as a9, AI_ACTIONS_COLLECTION as aA, AI_AUDIT_COLLECTION as aB, AI_CHUNKS_COLLECTION as aC, AI_MESSAGES_COLLECTION as aD, AI_THREADS_COLLECTION as aE, type AccessConfig as aF, type AccessFunction as aG, type AccessFunctionArgs as aH, type AccessResult as aI, type AccessRule as aJ, type ActionConfig as aK, type ActionConfigBase as aL, type ActionConfigWithHandler as aM, type ActionConfigWithMutation as aN, type ActionContext as aO, type ActionType as aP, type AdminAuthAccessResolution as aQ, type AdminAuthClaimMapping as aR, type AdminAuthMember as aS, type AdminAuthProvider as aT, type AdminAuthProviderMembersConfig as aU, type AdminAuthProvisioningMode as aV, type AdminAuthResolveAccessArgs as aW, type AdminAuthResolvedIdentity as aX, type AdminConfig as aY, type AdminDashboardComponentSlots as aZ, type AdminIconName as a_, type ImageField as aa, type JoinField as ab, type JsonField as ac, type MoneyField as ad, type MultiSelectField as ae, type NumberField as af, type ObjectField as ag, type RadioField as ah, type RichTextField as ai, type RowField as aj, type TextareaField as ak, type TimeField as al, type UrlField as am, type AIAction as an, type AIActionStatus as ao, type AIActionType as ap, type AIAuditActionType as aq, type AIAuditRecord as ar, type AIChunk as as, type AIMessage as at, type AIPIIPattern as au, type AIRateLimitResult as av, type AIRateLimitStore as aw, type AIThread as ax, type AIToolContext as ay, type AIToolDefinition as az, type AuthenticatedUser as b, type DistinctCountOperation as b$, type AggregateCastType as b0, type AggregateCollectionResult as b1, type AggregateInput as b2, type AggregateOperation as b3, type AggregateResult as b4, type AppTrashConfig as b5, type BaseAdminAuthProvider as b6, type BaseFieldAdmin as b7, type BlockVariant as b8, type BlocksField as b9, type CollectionListComponentSlots as bA, type CollectionRAGConfig as bB, type CollectionSchemaResult as bC, type CollectionSummaryResult as bD, type CollectionViewComponentSlots as bE, type CompiledNavGroup as bF, type CountOperation as bG, type CustomAdminAuthProvider as bH, type CustomViewConfig as bI, type CustomViewDataConfig as bJ, DEFAULT_USER_NAV_PREFERENCES as bK, type DateFieldAdmin as bL, type DateFormat as bM, type DefaultValueContext as bN, type DefineActionOptions as bO, type DefineCalendarViewOptions as bP, type DefineCardsViewOptions as bQ, type DefineCustomViewOptions as bR, type DefineGanttViewOptions as bS, type DefineKanbanViewOptions as bT, type DefinePageInput as bU, type DefineTableViewOptions as bV, type DefineViewBaseOptions as bW, type DefineViewOptions as bX, type DetailSpan as bY, type DisplayTone as bZ, type DisplayVariant as b_, type BooleanFieldAdmin as ba, type BooleanFormat as bb, CURRENT_NAV_PREFERENCES_VERSION as bc, CUSTOM_VIEW_FETCH_ALL_LIMIT as bd, type CalendarViewConfig as be, type CardsViewConfig as bf, type CharacterLimitFieldAdmin as bg, type CharacterLimitFieldConfig as bh, type CollectionAfterChangeHook as bi, type CollectionAfterDeleteHook as bj, type CollectionAfterReadHook as bk, type CollectionAfterReadHookEntry as bl, type CollectionAfterRestoreHook as bm, type CollectionAfterTransitionHook as bn, type CollectionAfterTrashHook as bo, type CollectionBeforeChangeHook as bp, type CollectionBeforeChangeHookEntry as bq, type CollectionBeforeCommitHook as br, type CollectionBeforeDeleteHook as bs, type CollectionBeforeReadHook as bt, type CollectionBeforeReadHookEntry as bu, type CollectionBeforeRestoreHook as bv, type CollectionBeforeTransitionHook as bw, type CollectionBeforeTrashHook as bx, type CollectionEmailConfig as by, type CollectionIndex as bz, type WorkflowTransition as c, type NumberLimitFieldAdmin as c$, type DistinctValuesOperation as c0, type DocumentFormComponentSlots as c1, type DynamicOptionItem as c2, type DynamicOptionsConfig as c3, type DynamicOptionsResolver as c4, type DynamicOptionsResolverArgs as c5, type DyrectedAIContext as c6, type DyrectedLoggerConfig as c7, type DyrectedObservabilityConfig as c8, type EmailFieldAdmin as c9, type GlobalBeforeReadHookEntry as cA, type GlobalFormComponentSlots as cB, type GlobalRAGConfig as cC, type GlobalSchemaResult as cD, type GlobalSummaryResult as cE, type HeadingLevel as cF, type HookFunction as cG, type IconFieldAdmin as cH, type ImageService as cI, type ImageTransformOptions as cJ, type InferAggregateResult as cK, type JoinFieldAdmin as cL, type JsonFieldAdmin as cM, type JsonFormat as cN, type KanbanViewConfig as cO, LIFECYCLE_EVENT_NAMES as cP, type LifecycleEventHandler as cQ, type LinkFormat as cR, type MetricColor as cS, type MoneyFieldAdmin as cT, type MoneyFieldConfig as cU, type MultiSelectFieldAdmin as cV, type NamedAccessPolicy as cW, type NavBadgeConfig as cX, type NavGroup as cY, type NumberFieldAdmin as cZ, type NumberFormat as c_, type EmailTemplateArgs as ca, type EmailTemplateResult as cb, FORM_SHELLS as cc, type FieldAdminHooks as cd, type FieldAdminOnChangeHook as ce, type FieldAdminOnChangeHookArgs as cf, type FieldAdminOptionsHook as cg, type FieldAdminOptionsHookArgs as ch, type FieldAdminOptionsHookResult as ci, type FieldAfterReadHook as cj, type FieldAfterReadHookArgs as ck, type FieldBase as cl, type FieldBeforeChangeHook as cm, type FieldBeforeChangeHookArgs as cn, type FieldHook as co, type FieldHooks as cp, type FileData as cq, type FormShell as cr, type GanttViewConfig as cs, type GetDocumentResult as ct, type GlobalAfterChangeHook as cu, type GlobalAfterReadHook as cv, type GlobalAfterReadHookEntry as cw, type GlobalBeforeChangeHook as cx, type GlobalBeforeChangeHookEntry as cy, type GlobalBeforeReadHook as cz, type LifecycleEvent as d, definePage as d$, type NumberLimitFieldConfig as d0, type NumericOperation as d1, type NumericUpdateOperator as d2, type OIDCAdminAuthProvider as d3, type OptionFormat as d4, type OutboundEmail as d5, type PageAction as d6, type PageBreadcrumbItem as d7, type PageConfig as d8, type PaginatedResult as d9, type ViewActionFeatures as dA, type ViewComponentSlots as dB, type ViewConfigBase as dC, type ViewLayout as dD, type ViewMetric as dE, type ViewMetricGroupBy as dF, type ViewMetricGroupByConfig as dG, type ViewMetricTrendConfig as dH, type ViewSubMetric as dI, type WhereClause as dJ, type WhereOperator as dK, type WhereOperatorName as dL, type WordLimitFieldAdmin as dM, type WordLimitFieldConfig as dN, type WorkflowMetadata as dO, type WorkflowOnTransitionContext as dP, type WorkflowOnTransitionHook as dQ, type WorkflowRole as dR, type WorkflowState as dS, type WorkflowTransitionContext as dT, coerceBooleanWhere as dU, defineAction as dV, defineCalendarView as dW, defineCardsView as dX, defineCustomView as dY, defineGanttView as dZ, defineKanbanView as d_, type PinnedNavItemRef as da, type PublicAdminAuthProvider as db, type QueryCollectionResult as dc, type RAGSearchResult as dd, type RadioFieldAdmin as de, type RateLimitConfig as df, type ReadonlyDatabaseAdapter as dg, type RichTextFeature as dh, type RichTextFieldConfig as di, type SelectFieldAdmin as dj, type SqlWhereResult as dk, type StorageAdapter as dl, type TableViewConfig as dm, type TaskContext as dn, type TaskLogger as dp, type TaskRunStatus as dq, type TextFieldAdmin as dr, type TextFormat as ds, type TextareaFieldAdmin as dt, type TrashConfig as du, type TrustProxyConfig as dv, type TypedField as dw, type UploadConfig as dx, type UrlFieldAdmin as dy, type UrlLinkValue as dz, type DatabaseAdapter as e, defineTableView as e0, defineView as e1, defineWorkspace as e2, isAICollection as e3, parseMongoWhere as e4, parseSqlWhere as e5, type CollectionTokenPayload as e6, DEFAULT_INVITE_EXPIRY as e7, DEFAULT_RESET_PASSWORD_EXPIRY as e8, DEFAULT_SESSION_EXPIRY as e9, type DyrectedObservabilityRuntime as ea, type RequestBodyCapture as eb, type RequestTraceContext as ec, type ResolvedObservabilityConfig as ed, attachRequestMetrics as ee, bindObservabilityRuntime as ef, buildRequestLogger as eg, captureRequestBody as eh, createDyrectedApp as ei, createObservabilityRuntime as ej, createRequestSpan as ek, decodeCollectionToken as el, endRequestSpan as em, getConfigLogger as en, getObservabilityRuntime as eo, getRequestLogger as ep, redactBody as eq, redactHeaders as er, renderPrometheusMetrics as es, resolveInviteTokenExpiry as et, resolveObservabilityConfig as eu, resolveResetPasswordTokenExpiry as ev, resolveSessionTokenExpiry as ew, shouldSampleRequest as ex, signCollectionToken as ey, verifyCollectionToken as ez, type BaseDocument as f, type TaskConfig as g, type DetailActionOptions as h, type DetailAction as i, type DetailComputedOptions as j, type ComputedHandler as k, type DetailComputed as l, type DetailCustomOptions as m, type DetailCustom as n, type DetailDividerOptions as o, type DetailDivider as p, type DisplayFieldOptions as q, type DetailField as r, type DetailItem as s, type DetailGridOptions as t, type DetailGrid as u, type DetailRepeatOptions as v, type DetailRepeat as w, type DetailSectionOptions as x, type DetailSection as y, type DetailTabOptions as z };
@@ -1371,8 +1371,39 @@ interface CollectionViewComponentSlots {
1371
1371
  beforeViewContent?: string[];
1372
1372
  afterViewContent?: string[];
1373
1373
  }
1374
+ /**
1375
+ * How much of the default edit screen's chrome surrounds a custom form.
1376
+ *
1377
+ * - `full` (default): header, status badge, default save bar, and the unsaved-changes guard.
1378
+ * - `header`: header and the unsaved-changes guard. The form supplies its own actions.
1379
+ * - `none`: nothing. The form owns the whole screen.
1380
+ */
1381
+ type FormShell = "full" | "header" | "none";
1382
+ /** The values `formShell` accepts. */
1383
+ declare const FORM_SHELLS: readonly FormShell[];
1384
+ /**
1385
+ * Registry keys of custom components that replace the body of a create or edit screen.
1386
+ * Each key is resolved against `components.forms` in the host's admin registration.
1387
+ */
1388
+ interface DocumentFormComponentSlots {
1389
+ /** Used when creating a record. Falls back to `form`, then the built-in form. */
1390
+ createForm?: string;
1391
+ /** Used when editing a record. Falls back to `form`, then the built-in form. */
1392
+ editForm?: string;
1393
+ /** Fallback for both create and edit. */
1394
+ form?: string;
1395
+ /** How much default chrome surrounds the custom form. Defaults to `full`. */
1396
+ formShell?: FormShell;
1397
+ }
1398
+ /** Component keys a global can replace. A global is always edited, never created. */
1399
+ type GlobalFormComponentSlots = Pick<DocumentFormComponentSlots, "editForm" | "form" | "formShell">;
1374
1400
  /** Ordered custom component keys rendered around a collection's list content. */
1375
- interface CollectionListComponentSlots {
1401
+ interface CollectionListComponentSlots extends DocumentFormComponentSlots {
1402
+ /**
1403
+ * Set to `false` to keep the built-in form when this collection is created or edited
1404
+ * in a drawer (inline relationship creation), even if `createForm` is set.
1405
+ */
1406
+ formInDrawer?: boolean;
1376
1407
  beforeList?: string[];
1377
1408
  beforeListTable?: string[];
1378
1409
  afterListTable?: string[];
@@ -3007,6 +3038,8 @@ interface GlobalConfig<TDoc extends object = Record<string, unknown>> {
3007
3038
  order?: number;
3008
3039
  /** If `true`, this global is not shown in the Admin UI sidebar. */
3009
3040
  hidden?: boolean;
3041
+ /** Custom components that replace this global's edit form. */
3042
+ components?: GlobalFormComponentSlots;
3010
3043
  };
3011
3044
  /**
3012
3045
  * Optional custom AI assistant instructions for this global singleton.
@@ -4664,4 +4697,4 @@ interface DyrectedContext {
4664
4697
  */
4665
4698
  declare function createDyrectedApp(rawConfig: DyrectedConfig | any): Promise<Hono<DyrectedContext, hono_types.BlankSchema, "/">>;
4666
4699
 
4667
- export { type RelationshipField as $, type AdminAuthConfig as A, type Block as B, type CollectionConfig as C, type DyrectedConfig as D, type DetailTab as E, type Field as F, type GlobalConfig as G, type HookRequestContext as H, type DetailTabsOptions as I, type DetailTabs as J, type DetailTextOptions as K, type LifecycleEventName as L, type DetailText as M, type DetailSchema as N, type DyrectedContext as O, type PublicAdminAuthConfig as P, type AIConfig as Q, type AIPIIConfig as R, type IdStrategy as S, type TaskRunResult as T, type CompiledNavTree as U, type CompiledNavItem as V, type WorkflowConfig as W, type UserNavigationPreferences as X, type DefineWorkspaceOptions as Y, type ViewConfig as Z, type DateTimeField as _, type DeclarativeHookExpression as a, type AggregateArgs as a$, type SelectField as a0, type ArrayField as a1, type FieldType as a2, type BooleanField as a3, type AuthConfig as a4, type AccessPolicyResolver as a5, type DateField as a6, type TextField as a7, type EmailField as a8, type IconField as a9, AI_ACTIONS_COLLECTION as aA, AI_AUDIT_COLLECTION as aB, AI_CHUNKS_COLLECTION as aC, AI_MESSAGES_COLLECTION as aD, AI_THREADS_COLLECTION as aE, type AccessConfig as aF, type AccessFunction as aG, type AccessFunctionArgs as aH, type AccessResult as aI, type AccessRule as aJ, type ActionConfig as aK, type ActionConfigBase as aL, type ActionConfigWithHandler as aM, type ActionConfigWithMutation as aN, type ActionContext as aO, type ActionType as aP, type AdminAuthAccessResolution as aQ, type AdminAuthClaimMapping as aR, type AdminAuthMember as aS, type AdminAuthProvider as aT, type AdminAuthProviderMembersConfig as aU, type AdminAuthProvisioningMode as aV, type AdminAuthResolveAccessArgs as aW, type AdminAuthResolvedIdentity as aX, type AdminConfig as aY, type AdminDashboardComponentSlots as aZ, type AdminIconName as a_, type ImageField as aa, type JoinField as ab, type JsonField as ac, type MoneyField as ad, type MultiSelectField as ae, type NumberField as af, type ObjectField as ag, type RadioField as ah, type RichTextField as ai, type RowField as aj, type TextareaField as ak, type TimeField as al, type UrlField as am, type AIAction as an, type AIActionStatus as ao, type AIActionType as ap, type AIAuditActionType as aq, type AIAuditRecord as ar, type AIChunk as as, type AIMessage as at, type AIPIIPattern as au, type AIRateLimitResult as av, type AIRateLimitStore as aw, type AIThread as ax, type AIToolContext as ay, type AIToolDefinition as az, type AuthenticatedUser as b, type DistinctCountOperation as b$, type AggregateCastType as b0, type AggregateCollectionResult as b1, type AggregateInput as b2, type AggregateOperation as b3, type AggregateResult as b4, type AppTrashConfig as b5, type BaseAdminAuthProvider as b6, type BaseFieldAdmin as b7, type BlockVariant as b8, type BlocksField as b9, type CollectionListComponentSlots as bA, type CollectionRAGConfig as bB, type CollectionSchemaResult as bC, type CollectionSummaryResult as bD, type CollectionViewComponentSlots as bE, type CompiledNavGroup as bF, type CountOperation as bG, type CustomAdminAuthProvider as bH, type CustomViewConfig as bI, type CustomViewDataConfig as bJ, DEFAULT_USER_NAV_PREFERENCES as bK, type DateFieldAdmin as bL, type DateFormat as bM, type DefaultValueContext as bN, type DefineActionOptions as bO, type DefineCalendarViewOptions as bP, type DefineCardsViewOptions as bQ, type DefineCustomViewOptions as bR, type DefineGanttViewOptions as bS, type DefineKanbanViewOptions as bT, type DefinePageInput as bU, type DefineTableViewOptions as bV, type DefineViewBaseOptions as bW, type DefineViewOptions as bX, type DetailSpan as bY, type DisplayTone as bZ, type DisplayVariant as b_, type BooleanFieldAdmin as ba, type BooleanFormat as bb, CURRENT_NAV_PREFERENCES_VERSION as bc, CUSTOM_VIEW_FETCH_ALL_LIMIT as bd, type CalendarViewConfig as be, type CardsViewConfig as bf, type CharacterLimitFieldAdmin as bg, type CharacterLimitFieldConfig as bh, type CollectionAfterChangeHook as bi, type CollectionAfterDeleteHook as bj, type CollectionAfterReadHook as bk, type CollectionAfterReadHookEntry as bl, type CollectionAfterRestoreHook as bm, type CollectionAfterTransitionHook as bn, type CollectionAfterTrashHook as bo, type CollectionBeforeChangeHook as bp, type CollectionBeforeChangeHookEntry as bq, type CollectionBeforeCommitHook as br, type CollectionBeforeDeleteHook as bs, type CollectionBeforeReadHook as bt, type CollectionBeforeReadHookEntry as bu, type CollectionBeforeRestoreHook as bv, type CollectionBeforeTransitionHook as bw, type CollectionBeforeTrashHook as bx, type CollectionEmailConfig as by, type CollectionIndex as bz, type WorkflowTransition as c, type OIDCAdminAuthProvider as c$, type DistinctValuesOperation as c0, type DynamicOptionItem as c1, type DynamicOptionsConfig as c2, type DynamicOptionsResolver as c3, type DynamicOptionsResolverArgs as c4, type DyrectedAIContext as c5, type DyrectedLoggerConfig as c6, type DyrectedObservabilityConfig as c7, type EmailFieldAdmin as c8, type EmailTemplateArgs as c9, type GlobalSummaryResult as cA, type HeadingLevel as cB, type HookFunction as cC, type IconFieldAdmin as cD, type ImageService as cE, type ImageTransformOptions as cF, type InferAggregateResult as cG, type JoinFieldAdmin as cH, type JsonFieldAdmin as cI, type JsonFormat as cJ, type KanbanViewConfig as cK, LIFECYCLE_EVENT_NAMES as cL, type LifecycleEventHandler as cM, type LinkFormat as cN, type MetricColor as cO, type MoneyFieldAdmin as cP, type MoneyFieldConfig as cQ, type MultiSelectFieldAdmin as cR, type NamedAccessPolicy as cS, type NavBadgeConfig as cT, type NavGroup as cU, type NumberFieldAdmin as cV, type NumberFormat as cW, type NumberLimitFieldAdmin as cX, type NumberLimitFieldConfig as cY, type NumericOperation as cZ, type NumericUpdateOperator as c_, type EmailTemplateResult as ca, type FieldAdminHooks as cb, type FieldAdminOnChangeHook as cc, type FieldAdminOnChangeHookArgs as cd, type FieldAdminOptionsHook as ce, type FieldAdminOptionsHookArgs as cf, type FieldAdminOptionsHookResult as cg, type FieldAfterReadHook as ch, type FieldAfterReadHookArgs as ci, type FieldBase as cj, type FieldBeforeChangeHook as ck, type FieldBeforeChangeHookArgs as cl, type FieldHook as cm, type FieldHooks as cn, type FileData as co, type GanttViewConfig as cp, type GetDocumentResult as cq, type GlobalAfterChangeHook as cr, type GlobalAfterReadHook as cs, type GlobalAfterReadHookEntry as ct, type GlobalBeforeChangeHook as cu, type GlobalBeforeChangeHookEntry as cv, type GlobalBeforeReadHook as cw, type GlobalBeforeReadHookEntry as cx, type GlobalRAGConfig as cy, type GlobalSchemaResult as cz, type LifecycleEvent as d, isAICollection as d$, type OptionFormat as d0, type OutboundEmail as d1, type PageAction as d2, type PageBreadcrumbItem as d3, type PageConfig as d4, type PaginatedResult as d5, type PinnedNavItemRef as d6, type PublicAdminAuthProvider as d7, type QueryCollectionResult as d8, type RAGSearchResult as d9, type ViewMetric as dA, type ViewMetricGroupBy as dB, type ViewMetricGroupByConfig as dC, type ViewMetricTrendConfig as dD, type ViewSubMetric as dE, type WhereClause as dF, type WhereOperator as dG, type WhereOperatorName as dH, type WordLimitFieldAdmin as dI, type WordLimitFieldConfig as dJ, type WorkflowMetadata as dK, type WorkflowOnTransitionContext as dL, type WorkflowOnTransitionHook as dM, type WorkflowRole as dN, type WorkflowState as dO, type WorkflowTransitionContext as dP, coerceBooleanWhere as dQ, defineAction as dR, defineCalendarView as dS, defineCardsView as dT, defineCustomView as dU, defineGanttView as dV, defineKanbanView as dW, definePage as dX, defineTableView as dY, defineView as dZ, defineWorkspace as d_, type RadioFieldAdmin as da, type RateLimitConfig as db, type ReadonlyDatabaseAdapter as dc, type RichTextFeature as dd, type RichTextFieldConfig as de, type SelectFieldAdmin as df, type SqlWhereResult as dg, type StorageAdapter as dh, type TableViewConfig as di, type TaskContext as dj, type TaskLogger as dk, type TaskRunStatus as dl, type TextFieldAdmin as dm, type TextFormat as dn, type TextareaFieldAdmin as dp, type TrashConfig as dq, type TrustProxyConfig as dr, type TypedField as ds, type UploadConfig as dt, type UrlFieldAdmin as du, type UrlLinkValue as dv, type ViewActionFeatures as dw, type ViewComponentSlots as dx, type ViewConfigBase as dy, type ViewLayout as dz, type DatabaseAdapter as e, parseMongoWhere as e0, parseSqlWhere as e1, type CollectionTokenPayload as e2, DEFAULT_INVITE_EXPIRY as e3, DEFAULT_RESET_PASSWORD_EXPIRY as e4, DEFAULT_SESSION_EXPIRY as e5, type DyrectedObservabilityRuntime as e6, type RequestBodyCapture as e7, type RequestTraceContext as e8, type ResolvedObservabilityConfig as e9, attachRequestMetrics as ea, bindObservabilityRuntime as eb, buildRequestLogger as ec, captureRequestBody as ed, createDyrectedApp as ee, createObservabilityRuntime as ef, createRequestSpan as eg, decodeCollectionToken as eh, endRequestSpan as ei, getConfigLogger as ej, getObservabilityRuntime as ek, getRequestLogger as el, redactBody as em, redactHeaders as en, renderPrometheusMetrics as eo, resolveInviteTokenExpiry as ep, resolveObservabilityConfig as eq, resolveResetPasswordTokenExpiry as er, resolveSessionTokenExpiry as es, shouldSampleRequest as et, signCollectionToken as eu, verifyCollectionToken as ev, type BaseDocument as f, type TaskConfig as g, type DetailActionOptions as h, type DetailAction as i, type DetailComputedOptions as j, type ComputedHandler as k, type DetailComputed as l, type DetailCustomOptions as m, type DetailCustom as n, type DetailDividerOptions as o, type DetailDivider as p, type DisplayFieldOptions as q, type DetailField as r, type DetailItem as s, type DetailGridOptions as t, type DetailGrid as u, type DetailRepeatOptions as v, type DetailRepeat as w, type DetailSectionOptions as x, type DetailSection as y, type DetailTabOptions as z };
4700
+ export { type RelationshipField as $, type AdminAuthConfig as A, type Block as B, type CollectionConfig as C, type DyrectedConfig as D, type DetailTab as E, type Field as F, type GlobalConfig as G, type HookRequestContext as H, type DetailTabsOptions as I, type DetailTabs as J, type DetailTextOptions as K, type LifecycleEventName as L, type DetailText as M, type DetailSchema as N, type DyrectedContext as O, type PublicAdminAuthConfig as P, type AIConfig as Q, type AIPIIConfig as R, type IdStrategy as S, type TaskRunResult as T, type CompiledNavTree as U, type CompiledNavItem as V, type WorkflowConfig as W, type UserNavigationPreferences as X, type DefineWorkspaceOptions as Y, type ViewConfig as Z, type DateTimeField as _, type DeclarativeHookExpression as a, type AggregateArgs as a$, type SelectField as a0, type ArrayField as a1, type FieldType as a2, type BooleanField as a3, type AuthConfig as a4, type AccessPolicyResolver as a5, type DateField as a6, type TextField as a7, type EmailField as a8, type IconField as a9, AI_ACTIONS_COLLECTION as aA, AI_AUDIT_COLLECTION as aB, AI_CHUNKS_COLLECTION as aC, AI_MESSAGES_COLLECTION as aD, AI_THREADS_COLLECTION as aE, type AccessConfig as aF, type AccessFunction as aG, type AccessFunctionArgs as aH, type AccessResult as aI, type AccessRule as aJ, type ActionConfig as aK, type ActionConfigBase as aL, type ActionConfigWithHandler as aM, type ActionConfigWithMutation as aN, type ActionContext as aO, type ActionType as aP, type AdminAuthAccessResolution as aQ, type AdminAuthClaimMapping as aR, type AdminAuthMember as aS, type AdminAuthProvider as aT, type AdminAuthProviderMembersConfig as aU, type AdminAuthProvisioningMode as aV, type AdminAuthResolveAccessArgs as aW, type AdminAuthResolvedIdentity as aX, type AdminConfig as aY, type AdminDashboardComponentSlots as aZ, type AdminIconName as a_, type ImageField as aa, type JoinField as ab, type JsonField as ac, type MoneyField as ad, type MultiSelectField as ae, type NumberField as af, type ObjectField as ag, type RadioField as ah, type RichTextField as ai, type RowField as aj, type TextareaField as ak, type TimeField as al, type UrlField as am, type AIAction as an, type AIActionStatus as ao, type AIActionType as ap, type AIAuditActionType as aq, type AIAuditRecord as ar, type AIChunk as as, type AIMessage as at, type AIPIIPattern as au, type AIRateLimitResult as av, type AIRateLimitStore as aw, type AIThread as ax, type AIToolContext as ay, type AIToolDefinition as az, type AuthenticatedUser as b, type DistinctCountOperation as b$, type AggregateCastType as b0, type AggregateCollectionResult as b1, type AggregateInput as b2, type AggregateOperation as b3, type AggregateResult as b4, type AppTrashConfig as b5, type BaseAdminAuthProvider as b6, type BaseFieldAdmin as b7, type BlockVariant as b8, type BlocksField as b9, type CollectionListComponentSlots as bA, type CollectionRAGConfig as bB, type CollectionSchemaResult as bC, type CollectionSummaryResult as bD, type CollectionViewComponentSlots as bE, type CompiledNavGroup as bF, type CountOperation as bG, type CustomAdminAuthProvider as bH, type CustomViewConfig as bI, type CustomViewDataConfig as bJ, DEFAULT_USER_NAV_PREFERENCES as bK, type DateFieldAdmin as bL, type DateFormat as bM, type DefaultValueContext as bN, type DefineActionOptions as bO, type DefineCalendarViewOptions as bP, type DefineCardsViewOptions as bQ, type DefineCustomViewOptions as bR, type DefineGanttViewOptions as bS, type DefineKanbanViewOptions as bT, type DefinePageInput as bU, type DefineTableViewOptions as bV, type DefineViewBaseOptions as bW, type DefineViewOptions as bX, type DetailSpan as bY, type DisplayTone as bZ, type DisplayVariant as b_, type BooleanFieldAdmin as ba, type BooleanFormat as bb, CURRENT_NAV_PREFERENCES_VERSION as bc, CUSTOM_VIEW_FETCH_ALL_LIMIT as bd, type CalendarViewConfig as be, type CardsViewConfig as bf, type CharacterLimitFieldAdmin as bg, type CharacterLimitFieldConfig as bh, type CollectionAfterChangeHook as bi, type CollectionAfterDeleteHook as bj, type CollectionAfterReadHook as bk, type CollectionAfterReadHookEntry as bl, type CollectionAfterRestoreHook as bm, type CollectionAfterTransitionHook as bn, type CollectionAfterTrashHook as bo, type CollectionBeforeChangeHook as bp, type CollectionBeforeChangeHookEntry as bq, type CollectionBeforeCommitHook as br, type CollectionBeforeDeleteHook as bs, type CollectionBeforeReadHook as bt, type CollectionBeforeReadHookEntry as bu, type CollectionBeforeRestoreHook as bv, type CollectionBeforeTransitionHook as bw, type CollectionBeforeTrashHook as bx, type CollectionEmailConfig as by, type CollectionIndex as bz, type WorkflowTransition as c, type NumberLimitFieldAdmin as c$, type DistinctValuesOperation as c0, type DocumentFormComponentSlots as c1, type DynamicOptionItem as c2, type DynamicOptionsConfig as c3, type DynamicOptionsResolver as c4, type DynamicOptionsResolverArgs as c5, type DyrectedAIContext as c6, type DyrectedLoggerConfig as c7, type DyrectedObservabilityConfig as c8, type EmailFieldAdmin as c9, type GlobalBeforeReadHookEntry as cA, type GlobalFormComponentSlots as cB, type GlobalRAGConfig as cC, type GlobalSchemaResult as cD, type GlobalSummaryResult as cE, type HeadingLevel as cF, type HookFunction as cG, type IconFieldAdmin as cH, type ImageService as cI, type ImageTransformOptions as cJ, type InferAggregateResult as cK, type JoinFieldAdmin as cL, type JsonFieldAdmin as cM, type JsonFormat as cN, type KanbanViewConfig as cO, LIFECYCLE_EVENT_NAMES as cP, type LifecycleEventHandler as cQ, type LinkFormat as cR, type MetricColor as cS, type MoneyFieldAdmin as cT, type MoneyFieldConfig as cU, type MultiSelectFieldAdmin as cV, type NamedAccessPolicy as cW, type NavBadgeConfig as cX, type NavGroup as cY, type NumberFieldAdmin as cZ, type NumberFormat as c_, type EmailTemplateArgs as ca, type EmailTemplateResult as cb, FORM_SHELLS as cc, type FieldAdminHooks as cd, type FieldAdminOnChangeHook as ce, type FieldAdminOnChangeHookArgs as cf, type FieldAdminOptionsHook as cg, type FieldAdminOptionsHookArgs as ch, type FieldAdminOptionsHookResult as ci, type FieldAfterReadHook as cj, type FieldAfterReadHookArgs as ck, type FieldBase as cl, type FieldBeforeChangeHook as cm, type FieldBeforeChangeHookArgs as cn, type FieldHook as co, type FieldHooks as cp, type FileData as cq, type FormShell as cr, type GanttViewConfig as cs, type GetDocumentResult as ct, type GlobalAfterChangeHook as cu, type GlobalAfterReadHook as cv, type GlobalAfterReadHookEntry as cw, type GlobalBeforeChangeHook as cx, type GlobalBeforeChangeHookEntry as cy, type GlobalBeforeReadHook as cz, type LifecycleEvent as d, definePage as d$, type NumberLimitFieldConfig as d0, type NumericOperation as d1, type NumericUpdateOperator as d2, type OIDCAdminAuthProvider as d3, type OptionFormat as d4, type OutboundEmail as d5, type PageAction as d6, type PageBreadcrumbItem as d7, type PageConfig as d8, type PaginatedResult as d9, type ViewActionFeatures as dA, type ViewComponentSlots as dB, type ViewConfigBase as dC, type ViewLayout as dD, type ViewMetric as dE, type ViewMetricGroupBy as dF, type ViewMetricGroupByConfig as dG, type ViewMetricTrendConfig as dH, type ViewSubMetric as dI, type WhereClause as dJ, type WhereOperator as dK, type WhereOperatorName as dL, type WordLimitFieldAdmin as dM, type WordLimitFieldConfig as dN, type WorkflowMetadata as dO, type WorkflowOnTransitionContext as dP, type WorkflowOnTransitionHook as dQ, type WorkflowRole as dR, type WorkflowState as dS, type WorkflowTransitionContext as dT, coerceBooleanWhere as dU, defineAction as dV, defineCalendarView as dW, defineCardsView as dX, defineCustomView as dY, defineGanttView as dZ, defineKanbanView as d_, type PinnedNavItemRef as da, type PublicAdminAuthProvider as db, type QueryCollectionResult as dc, type RAGSearchResult as dd, type RadioFieldAdmin as de, type RateLimitConfig as df, type ReadonlyDatabaseAdapter as dg, type RichTextFeature as dh, type RichTextFieldConfig as di, type SelectFieldAdmin as dj, type SqlWhereResult as dk, type StorageAdapter as dl, type TableViewConfig as dm, type TaskContext as dn, type TaskLogger as dp, type TaskRunStatus as dq, type TextFieldAdmin as dr, type TextFormat as ds, type TextareaFieldAdmin as dt, type TrashConfig as du, type TrustProxyConfig as dv, type TypedField as dw, type UploadConfig as dx, type UrlFieldAdmin as dy, type UrlLinkValue as dz, type DatabaseAdapter as e, defineTableView as e0, defineView as e1, defineWorkspace as e2, isAICollection as e3, parseMongoWhere as e4, parseSqlWhere as e5, type CollectionTokenPayload as e6, DEFAULT_INVITE_EXPIRY as e7, DEFAULT_RESET_PASSWORD_EXPIRY as e8, DEFAULT_SESSION_EXPIRY as e9, type DyrectedObservabilityRuntime as ea, type RequestBodyCapture as eb, type RequestTraceContext as ec, type ResolvedObservabilityConfig as ed, attachRequestMetrics as ee, bindObservabilityRuntime as ef, buildRequestLogger as eg, captureRequestBody as eh, createDyrectedApp as ei, createObservabilityRuntime as ej, createRequestSpan as ek, decodeCollectionToken as el, endRequestSpan as em, getConfigLogger as en, getObservabilityRuntime as eo, getRequestLogger as ep, redactBody as eq, redactHeaders as er, renderPrometheusMetrics as es, resolveInviteTokenExpiry as et, resolveObservabilityConfig as eu, resolveResetPasswordTokenExpiry as ev, resolveSessionTokenExpiry as ew, shouldSampleRequest as ex, signCollectionToken as ey, verifyCollectionToken as ez, type BaseDocument as f, type TaskConfig as g, type DetailActionOptions as h, type DetailAction as i, type DetailComputedOptions as j, type ComputedHandler as k, type DetailComputed as l, type DetailCustomOptions as m, type DetailCustom as n, type DetailDividerOptions as o, type DetailDivider as p, type DisplayFieldOptions as q, type DetailField as r, type DetailItem as s, type DetailGridOptions as t, type DetailGrid as u, type DetailRepeatOptions as v, type DetailRepeat as w, type DetailSectionOptions as x, type DetailSection as y, type DetailTabOptions as z };
package/dist/index.cjs CHANGED
@@ -1802,6 +1802,7 @@ __export(index_exports, {
1802
1802
  DyrectedError: () => DyrectedError,
1803
1803
  EMAIL_TEMPLATES_COLLECTION_CONFIG: () => EMAIL_TEMPLATES_COLLECTION_CONFIG,
1804
1804
  EMAIL_TEMPLATES_COLLECTION_SLUG: () => EMAIL_TEMPLATES_COLLECTION_SLUG,
1805
+ FORM_SHELLS: () => FORM_SHELLS,
1805
1806
  FieldConditionBuilder: () => FieldConditionBuilder,
1806
1807
  ForbiddenError: () => ForbiddenError,
1807
1808
  INTERNAL_SYSTEM_COLLECTIONS: () => INTERNAL_SYSTEM_COLLECTIONS,
@@ -1840,6 +1841,7 @@ __export(index_exports, {
1840
1841
  clamp: () => clamp,
1841
1842
  coalesce: () => coalesce,
1842
1843
  coerceBooleanWhere: () => coerceBooleanWhere,
1844
+ collectAdminComponentsValidationIssues: () => collectAdminComponentsValidationIssues,
1843
1845
  collectAdminConditionValidationIssues: () => collectAdminConditionValidationIssues,
1844
1846
  collectConfigDiagnostics: () => collectConfigDiagnostics,
1845
1847
  collectDeclarativeAccessValidationIssues: () => collectDeclarativeAccessValidationIssues,
@@ -2036,6 +2038,9 @@ function asCollection(config) {
2036
2038
  return config;
2037
2039
  }
2038
2040
 
2041
+ // src/types/admin.ts
2042
+ var FORM_SHELLS = ["full", "header", "none"];
2043
+
2039
2044
  // src/types/workflows.ts
2040
2045
  var LIFECYCLE_EVENT_NAMES = [
2041
2046
  "revision.created",
@@ -2986,6 +2991,54 @@ function collectPreviewUrlValidationIssues(config) {
2986
2991
  });
2987
2992
  return issues;
2988
2993
  }
2994
+ var FORM_COMPONENT_KEYS = ["createForm", "editForm", "form"];
2995
+ var GLOBAL_FORM_COMPONENT_KEYS = ["editForm", "form"];
2996
+ function collectFormComponentIssues(components, path, surface, keys, issues) {
2997
+ if (!isPlainObject(components)) return;
2998
+ for (const key of keys) {
2999
+ const value = components[key];
3000
+ if (value === void 0) continue;
3001
+ if (typeof value !== "string" || value.length === 0) {
3002
+ issues.push({
3003
+ path: `${path}.admin.components.${key}`,
3004
+ surface,
3005
+ message: `\`${key}\` must be the registry key of a component, such as "check_ins.scanForm".`,
3006
+ expression: String(value)
3007
+ });
3008
+ }
3009
+ }
3010
+ const shell = components.formShell;
3011
+ if (shell !== void 0 && !FORM_SHELLS.includes(shell)) {
3012
+ issues.push({
3013
+ path: `${path}.admin.components.formShell`,
3014
+ surface,
3015
+ message: `Unknown formShell "${String(shell)}". Use ${FORM_SHELLS.map((value) => `"${value}"`).join(", ")}.`,
3016
+ expression: String(shell)
3017
+ });
3018
+ }
3019
+ }
3020
+ function collectAdminComponentsValidationIssues(config) {
3021
+ const issues = [];
3022
+ config.collections.forEach((collection, index) => {
3023
+ collectFormComponentIssues(
3024
+ collection.admin?.components,
3025
+ collectionSegment(collection, index),
3026
+ "collection.admin.components",
3027
+ FORM_COMPONENT_KEYS,
3028
+ issues
3029
+ );
3030
+ });
3031
+ config.globals?.forEach((global, index) => {
3032
+ collectFormComponentIssues(
3033
+ global.admin?.components,
3034
+ globalSegment(global, index),
3035
+ "global.admin.components",
3036
+ GLOBAL_FORM_COMPONENT_KEYS,
3037
+ issues
3038
+ );
3039
+ });
3040
+ return issues;
3041
+ }
2989
3042
  function assertValidAdminConditionsInConfig(config, source = "config") {
2990
3043
  const diagnostics = collectAdminConditionValidationIssues(config).map((issue) => ({
2991
3044
  severity: "error",
@@ -3043,7 +3096,15 @@ function collectConfigDiagnostics(config) {
3043
3096
  message: issue.message,
3044
3097
  expression: issue.expression
3045
3098
  }));
3046
- return [...hookIssues, ...accessIssues, ...adminConditionIssues, ...previewUrlIssues];
3099
+ const adminComponentIssues = collectAdminComponentsValidationIssues(config).map((issue) => ({
3100
+ severity: "error",
3101
+ source: "adminComponents",
3102
+ path: issue.path,
3103
+ surface: issue.surface,
3104
+ message: issue.message,
3105
+ expression: issue.expression
3106
+ }));
3107
+ return [...hookIssues, ...accessIssues, ...adminConditionIssues, ...previewUrlIssues, ...adminComponentIssues];
3047
3108
  }
3048
3109
  function formatConfigDiagnostics(source, diagnostics, options = {}) {
3049
3110
  const color = options.color ?? false;
@@ -5864,6 +5925,7 @@ function buildSqlOrderBy(sort, existingColumns, numericFields, dialect) {
5864
5925
  // src/utils/component-keys.ts
5865
5926
  var DASHBOARD_SLOTS = ["beforeDashboard", "afterDashboard"];
5866
5927
  var LIST_SLOTS = ["beforeList", "beforeListTable", "afterListTable", "afterList"];
5928
+ var FORM_SLOTS = ["createForm", "editForm", "form"];
5867
5929
  var VIEW_SLOTS = ["beforeViewHeader", "afterViewHeader", "beforeViewContent", "afterViewContent"];
5868
5930
  function addKeys(target, value) {
5869
5931
  for (const key of Array.isArray(value) ? value : [value]) {
@@ -5943,10 +6005,12 @@ function collectReferencedComponentKeys(schema) {
5943
6005
  addSlots(keys.collectionList, slots, LIST_SLOTS);
5944
6006
  addSlots(keys.collectionView, slots, VIEW_SLOTS);
5945
6007
  addSlots(keys.collectionView, slots?.collectionView, VIEW_SLOTS);
6008
+ addSlots(keys.forms, slots, FORM_SLOTS);
5946
6009
  }
5947
6010
  for (const global of root.globals ?? []) {
5948
6011
  scanFields(global.fields, keys);
5949
6012
  scanDetail(global.detail, keys);
6013
+ addSlots(keys.forms, global.admin?.components, FORM_SLOTS);
5950
6014
  }
5951
6015
  return keys;
5952
6016
  }
@@ -9047,6 +9111,7 @@ function defineTab(args) {
9047
9111
  DyrectedError,
9048
9112
  EMAIL_TEMPLATES_COLLECTION_CONFIG,
9049
9113
  EMAIL_TEMPLATES_COLLECTION_SLUG,
9114
+ FORM_SHELLS,
9050
9115
  FieldConditionBuilder,
9051
9116
  ForbiddenError,
9052
9117
  INTERNAL_SYSTEM_COLLECTIONS,
@@ -9085,6 +9150,7 @@ function defineTab(args) {
9085
9150
  clamp,
9086
9151
  coalesce,
9087
9152
  coerceBooleanWhere,
9153
+ collectAdminComponentsValidationIssues,
9088
9154
  collectAdminConditionValidationIssues,
9089
9155
  collectConfigDiagnostics,
9090
9156
  collectDeclarativeAccessValidationIssues,
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { F as Field, B as Block, C as CollectionConfig, D as DyrectedConfig, A as AdminAuthConfig, P as PublicAdminAuthConfig, G as GlobalConfig, a as DeclarativeHookExpression, W as WorkflowConfig, b as AuthenticatedUser, c as WorkflowTransition, L as LifecycleEventName, d as LifecycleEvent, e as DatabaseAdapter, f as BaseDocument, H as HookRequestContext, T as TaskRunResult, g as TaskConfig, h as DetailActionOptions, i as DetailAction, j as DetailComputedOptions, k as ComputedHandler, l as DetailComputed, m as DetailCustomOptions, n as DetailCustom, o as DetailDividerOptions, p as DetailDivider, q as DisplayFieldOptions, r as DetailField, s as DetailItem, t as DetailGridOptions, u as DetailGrid, v as DetailRepeatOptions, w as DetailRepeat, x as DetailSectionOptions, y as DetailSection, z as DetailTabOptions, E as DetailTab, I as DetailTabsOptions, J as DetailTabs, K as DetailTextOptions, M as DetailText, N as DetailSchema, O as DyrectedContext, Q as AIConfig, R as AIPIIConfig, S as IdStrategy, U as CompiledNavTree, V as CompiledNavItem, X as UserNavigationPreferences, Y as DefineWorkspaceOptions, Z as ViewConfig, _ as DateTimeField, $ as RelationshipField, a0 as SelectField, a1 as ArrayField, a2 as FieldType, a3 as BooleanField, a4 as AuthConfig, a5 as AccessPolicyResolver, a6 as DateField, a7 as TextField, a8 as EmailField, a9 as IconField, aa as ImageField, ab as JoinField, ac as JsonField, ad as MoneyField, ae as MultiSelectField, af as NumberField, ag as ObjectField, ah as RadioField, ai as RichTextField, aj as RowField, ak as TextareaField, al as TimeField, am as UrlField } from './app-DregJnqR.cjs';
2
- export { an as AIAction, ao as AIActionStatus, ap as AIActionType, aq as AIAuditActionType, ar as AIAuditRecord, as as AIChunk, at as AIMessage, au as AIPIIPattern, av as AIRateLimitResult, aw as AIRateLimitStore, ax as AIThread, ay as AIToolContext, az as AIToolDefinition, aA as AI_ACTIONS_COLLECTION, aB as AI_AUDIT_COLLECTION, aC as AI_CHUNKS_COLLECTION, aD as AI_MESSAGES_COLLECTION, aE as AI_THREADS_COLLECTION, aF as AccessConfig, aG as AccessFunction, aH as AccessFunctionArgs, aI as AccessResult, aJ as AccessRule, aK as ActionConfig, aL as ActionConfigBase, aM as ActionConfigWithHandler, aN as ActionConfigWithMutation, aO as ActionContext, aP as ActionType, aQ as AdminAuthAccessResolution, aR as AdminAuthClaimMapping, aS as AdminAuthMember, aT as AdminAuthProvider, aU as AdminAuthProviderMembersConfig, aV as AdminAuthProvisioningMode, aW as AdminAuthResolveAccessArgs, aX as AdminAuthResolvedIdentity, aY as AdminConfig, aZ as AdminDashboardComponentSlots, a_ as AdminIconName, a$ as AggregateArgs, b0 as AggregateCastType, b1 as AggregateCollectionResult, b2 as AggregateInput, b3 as AggregateOperation, b4 as AggregateResult, b5 as AppTrashConfig, b6 as BaseAdminAuthProvider, b7 as BaseFieldAdmin, b8 as BlockVariant, b9 as BlocksField, ba as BooleanFieldAdmin, bb as BooleanFormat, bc as CURRENT_NAV_PREFERENCES_VERSION, bd as CUSTOM_VIEW_FETCH_ALL_LIMIT, be as CalendarViewConfig, bf as CardsViewConfig, bg as CharacterLimitFieldAdmin, bh as CharacterLimitFieldConfig, bi as CollectionAfterChangeHook, bj as CollectionAfterDeleteHook, bk as CollectionAfterReadHook, bl as CollectionAfterReadHookEntry, bm as CollectionAfterRestoreHook, bn as CollectionAfterTransitionHook, bo as CollectionAfterTrashHook, bp as CollectionBeforeChangeHook, bq as CollectionBeforeChangeHookEntry, br as CollectionBeforeCommitHook, bs as CollectionBeforeDeleteHook, bt as CollectionBeforeReadHook, bu as CollectionBeforeReadHookEntry, bv as CollectionBeforeRestoreHook, bw as CollectionBeforeTransitionHook, bx as CollectionBeforeTrashHook, by as CollectionEmailConfig, bz as CollectionIndex, bA as CollectionListComponentSlots, bB as CollectionRAGConfig, bC as CollectionSchemaResult, bD as CollectionSummaryResult, bE as CollectionViewComponentSlots, bF as CompiledNavGroup, bG as CountOperation, bH as CustomAdminAuthProvider, bI as CustomViewConfig, bJ as CustomViewDataConfig, bK as DEFAULT_USER_NAV_PREFERENCES, bL as DateFieldAdmin, bM as DateFormat, bN as DefaultValueContext, bO as DefineActionOptions, bP as DefineCalendarViewOptions, bQ as DefineCardsViewOptions, bR as DefineCustomViewOptions, bS as DefineGanttViewOptions, bT as DefineKanbanViewOptions, bU as DefinePageInput, bV as DefineTableViewOptions, bW as DefineViewBaseOptions, bX as DefineViewOptions, bY as DetailSpan, bZ as DisplayTone, b_ as DisplayVariant, b$ as DistinctCountOperation, c0 as DistinctValuesOperation, c1 as DynamicOptionItem, c2 as DynamicOptionsConfig, c3 as DynamicOptionsResolver, c4 as DynamicOptionsResolverArgs, c5 as DyrectedAIContext, c6 as DyrectedLoggerConfig, c7 as DyrectedObservabilityConfig, c8 as EmailFieldAdmin, c9 as EmailTemplateArgs, ca as EmailTemplateResult, cb as FieldAdminHooks, cc as FieldAdminOnChangeHook, cd as FieldAdminOnChangeHookArgs, ce as FieldAdminOptionsHook, cf as FieldAdminOptionsHookArgs, cg as FieldAdminOptionsHookResult, ch as FieldAfterReadHook, ci as FieldAfterReadHookArgs, cj as FieldBase, ck as FieldBeforeChangeHook, cl as FieldBeforeChangeHookArgs, cm as FieldHook, cn as FieldHooks, co as FileData, cp as GanttViewConfig, cq as GetDocumentResult, cr as GlobalAfterChangeHook, cs as GlobalAfterReadHook, ct as GlobalAfterReadHookEntry, cu as GlobalBeforeChangeHook, cv as GlobalBeforeChangeHookEntry, cw as GlobalBeforeReadHook, cx as GlobalBeforeReadHookEntry, cy as GlobalRAGConfig, cz as GlobalSchemaResult, cA as GlobalSummaryResult, cB as HeadingLevel, cC as HookFunction, cD as IconFieldAdmin, cE as ImageService, cF as ImageTransformOptions, cG as InferAggregateResult, cH as JoinFieldAdmin, cI as JsonFieldAdmin, cJ as JsonFormat, cK as KanbanViewConfig, cL as LIFECYCLE_EVENT_NAMES, cM as LifecycleEventHandler, cN as LinkFormat, cO as MetricColor, cP as MoneyFieldAdmin, cQ as MoneyFieldConfig, cR as MultiSelectFieldAdmin, cS as NamedAccessPolicy, cT as NavBadgeConfig, cU as NavGroup, cV as NumberFieldAdmin, cW as NumberFormat, cX as NumberLimitFieldAdmin, cY as NumberLimitFieldConfig, cZ as NumericOperation, c_ as NumericUpdateOperator, c$ as OIDCAdminAuthProvider, d0 as OptionFormat, d1 as OutboundEmail, d2 as PageAction, d3 as PageBreadcrumbItem, d4 as PageConfig, d5 as PaginatedResult, d6 as PinnedNavItemRef, d7 as PublicAdminAuthProvider, d8 as QueryCollectionResult, d9 as RAGSearchResult, da as RadioFieldAdmin, db as RateLimitConfig, dc as ReadonlyDatabaseAdapter, dd as RichTextFeature, de as RichTextFieldConfig, df as SelectFieldAdmin, dg as SqlWhereResult, dh as StorageAdapter, di as TableViewConfig, dj as TaskContext, dk as TaskLogger, dl as TaskRunStatus, dm as TextFieldAdmin, dn as TextFormat, dp as TextareaFieldAdmin, dq as TrashConfig, dr as TrustProxyConfig, ds as TypedField, dt as UploadConfig, du as UrlFieldAdmin, dv as UrlLinkValue, dw as ViewActionFeatures, dx as ViewComponentSlots, dy as ViewConfigBase, dz as ViewLayout, dA as ViewMetric, dB as ViewMetricGroupBy, dC as ViewMetricGroupByConfig, dD as ViewMetricTrendConfig, dE as ViewSubMetric, dF as WhereClause, dG as WhereOperator, dH as WhereOperatorName, dI as WordLimitFieldAdmin, dJ as WordLimitFieldConfig, dK as WorkflowMetadata, dL as WorkflowOnTransitionContext, dM as WorkflowOnTransitionHook, dN as WorkflowRole, dO as WorkflowState, dP as WorkflowTransitionContext, dQ as coerceBooleanWhere, dR as defineAction, dS as defineCalendarView, dT as defineCardsView, dU as defineCustomView, dV as defineGanttView, dW as defineKanbanView, dX as definePage, dY as defineTableView, dZ as defineView, d_ as defineWorkspace, d$ as isAICollection, e0 as parseMongoWhere, e1 as parseSqlWhere } from './app-DregJnqR.cjs';
1
+ import { F as Field, B as Block, C as CollectionConfig, D as DyrectedConfig, A as AdminAuthConfig, P as PublicAdminAuthConfig, G as GlobalConfig, a as DeclarativeHookExpression, W as WorkflowConfig, b as AuthenticatedUser, c as WorkflowTransition, L as LifecycleEventName, d as LifecycleEvent, e as DatabaseAdapter, f as BaseDocument, H as HookRequestContext, T as TaskRunResult, g as TaskConfig, h as DetailActionOptions, i as DetailAction, j as DetailComputedOptions, k as ComputedHandler, l as DetailComputed, m as DetailCustomOptions, n as DetailCustom, o as DetailDividerOptions, p as DetailDivider, q as DisplayFieldOptions, r as DetailField, s as DetailItem, t as DetailGridOptions, u as DetailGrid, v as DetailRepeatOptions, w as DetailRepeat, x as DetailSectionOptions, y as DetailSection, z as DetailTabOptions, E as DetailTab, I as DetailTabsOptions, J as DetailTabs, K as DetailTextOptions, M as DetailText, N as DetailSchema, O as DyrectedContext, Q as AIConfig, R as AIPIIConfig, S as IdStrategy, U as CompiledNavTree, V as CompiledNavItem, X as UserNavigationPreferences, Y as DefineWorkspaceOptions, Z as ViewConfig, _ as DateTimeField, $ as RelationshipField, a0 as SelectField, a1 as ArrayField, a2 as FieldType, a3 as BooleanField, a4 as AuthConfig, a5 as AccessPolicyResolver, a6 as DateField, a7 as TextField, a8 as EmailField, a9 as IconField, aa as ImageField, ab as JoinField, ac as JsonField, ad as MoneyField, ae as MultiSelectField, af as NumberField, ag as ObjectField, ah as RadioField, ai as RichTextField, aj as RowField, ak as TextareaField, al as TimeField, am as UrlField } from './app-BpQPL2hY.cjs';
2
+ export { an as AIAction, ao as AIActionStatus, ap as AIActionType, aq as AIAuditActionType, ar as AIAuditRecord, as as AIChunk, at as AIMessage, au as AIPIIPattern, av as AIRateLimitResult, aw as AIRateLimitStore, ax as AIThread, ay as AIToolContext, az as AIToolDefinition, aA as AI_ACTIONS_COLLECTION, aB as AI_AUDIT_COLLECTION, aC as AI_CHUNKS_COLLECTION, aD as AI_MESSAGES_COLLECTION, aE as AI_THREADS_COLLECTION, aF as AccessConfig, aG as AccessFunction, aH as AccessFunctionArgs, aI as AccessResult, aJ as AccessRule, aK as ActionConfig, aL as ActionConfigBase, aM as ActionConfigWithHandler, aN as ActionConfigWithMutation, aO as ActionContext, aP as ActionType, aQ as AdminAuthAccessResolution, aR as AdminAuthClaimMapping, aS as AdminAuthMember, aT as AdminAuthProvider, aU as AdminAuthProviderMembersConfig, aV as AdminAuthProvisioningMode, aW as AdminAuthResolveAccessArgs, aX as AdminAuthResolvedIdentity, aY as AdminConfig, aZ as AdminDashboardComponentSlots, a_ as AdminIconName, a$ as AggregateArgs, b0 as AggregateCastType, b1 as AggregateCollectionResult, b2 as AggregateInput, b3 as AggregateOperation, b4 as AggregateResult, b5 as AppTrashConfig, b6 as BaseAdminAuthProvider, b7 as BaseFieldAdmin, b8 as BlockVariant, b9 as BlocksField, ba as BooleanFieldAdmin, bb as BooleanFormat, bc as CURRENT_NAV_PREFERENCES_VERSION, bd as CUSTOM_VIEW_FETCH_ALL_LIMIT, be as CalendarViewConfig, bf as CardsViewConfig, bg as CharacterLimitFieldAdmin, bh as CharacterLimitFieldConfig, bi as CollectionAfterChangeHook, bj as CollectionAfterDeleteHook, bk as CollectionAfterReadHook, bl as CollectionAfterReadHookEntry, bm as CollectionAfterRestoreHook, bn as CollectionAfterTransitionHook, bo as CollectionAfterTrashHook, bp as CollectionBeforeChangeHook, bq as CollectionBeforeChangeHookEntry, br as CollectionBeforeCommitHook, bs as CollectionBeforeDeleteHook, bt as CollectionBeforeReadHook, bu as CollectionBeforeReadHookEntry, bv as CollectionBeforeRestoreHook, bw as CollectionBeforeTransitionHook, bx as CollectionBeforeTrashHook, by as CollectionEmailConfig, bz as CollectionIndex, bA as CollectionListComponentSlots, bB as CollectionRAGConfig, bC as CollectionSchemaResult, bD as CollectionSummaryResult, bE as CollectionViewComponentSlots, bF as CompiledNavGroup, bG as CountOperation, bH as CustomAdminAuthProvider, bI as CustomViewConfig, bJ as CustomViewDataConfig, bK as DEFAULT_USER_NAV_PREFERENCES, bL as DateFieldAdmin, bM as DateFormat, bN as DefaultValueContext, bO as DefineActionOptions, bP as DefineCalendarViewOptions, bQ as DefineCardsViewOptions, bR as DefineCustomViewOptions, bS as DefineGanttViewOptions, bT as DefineKanbanViewOptions, bU as DefinePageInput, bV as DefineTableViewOptions, bW as DefineViewBaseOptions, bX as DefineViewOptions, bY as DetailSpan, bZ as DisplayTone, b_ as DisplayVariant, b$ as DistinctCountOperation, c0 as DistinctValuesOperation, c1 as DocumentFormComponentSlots, c2 as DynamicOptionItem, c3 as DynamicOptionsConfig, c4 as DynamicOptionsResolver, c5 as DynamicOptionsResolverArgs, c6 as DyrectedAIContext, c7 as DyrectedLoggerConfig, c8 as DyrectedObservabilityConfig, c9 as EmailFieldAdmin, ca as EmailTemplateArgs, cb as EmailTemplateResult, cc as FORM_SHELLS, cd as FieldAdminHooks, ce as FieldAdminOnChangeHook, cf as FieldAdminOnChangeHookArgs, cg as FieldAdminOptionsHook, ch as FieldAdminOptionsHookArgs, ci as FieldAdminOptionsHookResult, cj as FieldAfterReadHook, ck as FieldAfterReadHookArgs, cl as FieldBase, cm as FieldBeforeChangeHook, cn as FieldBeforeChangeHookArgs, co as FieldHook, cp as FieldHooks, cq as FileData, cr as FormShell, cs as GanttViewConfig, ct as GetDocumentResult, cu as GlobalAfterChangeHook, cv as GlobalAfterReadHook, cw as GlobalAfterReadHookEntry, cx as GlobalBeforeChangeHook, cy as GlobalBeforeChangeHookEntry, cz as GlobalBeforeReadHook, cA as GlobalBeforeReadHookEntry, cB as GlobalFormComponentSlots, cC as GlobalRAGConfig, cD as GlobalSchemaResult, cE as GlobalSummaryResult, cF as HeadingLevel, cG as HookFunction, cH as IconFieldAdmin, cI as ImageService, cJ as ImageTransformOptions, cK as InferAggregateResult, cL as JoinFieldAdmin, cM as JsonFieldAdmin, cN as JsonFormat, cO as KanbanViewConfig, cP as LIFECYCLE_EVENT_NAMES, cQ as LifecycleEventHandler, cR as LinkFormat, cS as MetricColor, cT as MoneyFieldAdmin, cU as MoneyFieldConfig, cV as MultiSelectFieldAdmin, cW as NamedAccessPolicy, cX as NavBadgeConfig, cY as NavGroup, cZ as NumberFieldAdmin, c_ as NumberFormat, c$ as NumberLimitFieldAdmin, d0 as NumberLimitFieldConfig, d1 as NumericOperation, d2 as NumericUpdateOperator, d3 as OIDCAdminAuthProvider, d4 as OptionFormat, d5 as OutboundEmail, d6 as PageAction, d7 as PageBreadcrumbItem, d8 as PageConfig, d9 as PaginatedResult, da as PinnedNavItemRef, db as PublicAdminAuthProvider, dc as QueryCollectionResult, dd as RAGSearchResult, de as RadioFieldAdmin, df as RateLimitConfig, dg as ReadonlyDatabaseAdapter, dh as RichTextFeature, di as RichTextFieldConfig, dj as SelectFieldAdmin, dk as SqlWhereResult, dl as StorageAdapter, dm as TableViewConfig, dn as TaskContext, dp as TaskLogger, dq as TaskRunStatus, dr as TextFieldAdmin, ds as TextFormat, dt as TextareaFieldAdmin, du as TrashConfig, dv as TrustProxyConfig, dw as TypedField, dx as UploadConfig, dy as UrlFieldAdmin, dz as UrlLinkValue, dA as ViewActionFeatures, dB as ViewComponentSlots, dC as ViewConfigBase, dD as ViewLayout, dE as ViewMetric, dF as ViewMetricGroupBy, dG as ViewMetricGroupByConfig, dH as ViewMetricTrendConfig, dI as ViewSubMetric, dJ as WhereClause, dK as WhereOperator, dL as WhereOperatorName, dM as WordLimitFieldAdmin, dN as WordLimitFieldConfig, dO as WorkflowMetadata, dP as WorkflowOnTransitionContext, dQ as WorkflowOnTransitionHook, dR as WorkflowRole, dS as WorkflowState, dT as WorkflowTransitionContext, dU as coerceBooleanWhere, dV as defineAction, dW as defineCalendarView, dX as defineCardsView, dY as defineCustomView, dZ as defineGanttView, d_ as defineKanbanView, d$ as definePage, e0 as defineTableView, e1 as defineView, e2 as defineWorkspace, e3 as isAICollection, e4 as parseMongoWhere, e5 as parseSqlWhere } from './app-BpQPL2hY.cjs';
3
3
  import jexl from 'jexl';
4
4
  import { Context } from 'hono';
5
5
  export { z } from 'zod';
@@ -280,7 +280,7 @@ interface DeclarativePreviewValidationIssue {
280
280
  }
281
281
  interface ConfigDiagnostic {
282
282
  severity: "error" | "warning";
283
- source: "declarativeHook" | "declarativeAccess" | "adminCondition" | "previewUrl";
283
+ source: "declarativeHook" | "declarativeAccess" | "adminCondition" | "previewUrl" | "adminComponents";
284
284
  path: string;
285
285
  surface: string;
286
286
  message: string;
@@ -292,7 +292,7 @@ type DiagnosticFormatOptions = {
292
292
  type DeclarativeValidationConfig = {
293
293
  blocks?: Array<Pick<Block, "fields"> & Partial<Pick<Block, "slug">>>;
294
294
  collections: Array<Pick<CollectionConfig, "fields" | "hooks" | "access" | "admin"> & Partial<Pick<CollectionConfig, "slug">>>;
295
- globals?: Array<Pick<GlobalConfig, "fields" | "hooks" | "access"> & Partial<Pick<GlobalConfig, "slug">>>;
295
+ globals?: Array<Pick<GlobalConfig, "fields" | "hooks" | "access" | "admin"> & Partial<Pick<GlobalConfig, "slug">>>;
296
296
  accessPolicies?: Record<string, unknown>;
297
297
  };
298
298
  declare function validateDeclarativeHookExpression(expression: string, surface: DeclarativeHookSurface, path: string): DeclarativeHookValidationIssue[];
@@ -305,6 +305,14 @@ declare function collectDeclarativeHookValidationIssues(config: DeclarativeValid
305
305
  declare function collectDeclarativeAccessValidationIssues(config: DeclarativeValidationConfig): DeclarativeAccessValidationIssue[];
306
306
  declare function collectAdminConditionValidationIssues(config: DeclarativeValidationConfig): DeclarativeAdminValidationIssue[];
307
307
  declare function collectPreviewUrlValidationIssues(config: DeclarativeValidationConfig): DeclarativePreviewValidationIssue[];
308
+ interface AdminComponentsValidationIssue {
309
+ path: string;
310
+ surface: "collection.admin.components" | "global.admin.components";
311
+ message: string;
312
+ expression: string;
313
+ }
314
+ /** Flags malformed `createForm`, `editForm`, `form` and `formShell` settings. */
315
+ declare function collectAdminComponentsValidationIssues(config: DeclarativeValidationConfig): AdminComponentsValidationIssue[];
308
316
  declare function assertValidAdminConditionsInConfig(config: DeclarativeValidationConfig, source?: string): void;
309
317
  declare function assertValidPreviewUrlsInConfig(config: DeclarativeValidationConfig, source?: string): void;
310
318
  declare function collectConfigDiagnostics(config: DeclarativeValidationConfig): ConfigDiagnostic[];
@@ -335,7 +343,7 @@ interface ReferencedComponentKeys {
335
343
  collectionList: Set<string>;
336
344
  /** Operational view slots (`collectionView` and per-view `components`). */
337
345
  collectionView: Set<string>;
338
- /** Reserved for custom document forms (spec 2). Empty until config can reference them. */
346
+ /** `createForm`, `editForm` and `form` keys on collections, and `editForm`/`form` on globals. */
339
347
  forms: Set<string>;
340
348
  /** `component` of views with `layout: "custom"`. */
341
349
  viewLayouts: Set<string>;
@@ -2372,4 +2380,4 @@ declare function defineTab<const T extends readonly Field[]>(args: {
2372
2380
  fields: T;
2373
2381
  }): T;
2374
2382
 
2375
- export { AIConfig, type AIErrorCode, AIPIIConfig, type AccessConditions, AccessPolicyResolver, AdminAuthConfig, ArrayField, AuthConfig, type AuthDocFields, AuthenticatedUser, BASE62_ALPHABET, BUILTIN_JEXL_HELPERS, BaseDocument, Block, BooleanField, CROCKFORD_BASE32, CollectionConfig, CompiledNavItem, CompiledNavTree, ComputedHandler, type ConfigDiagnostic, ConfigValidationError, ConflictError, type CreatedAtFieldOptions, type CreatedByFieldOptions, DatabaseAdapter, DateField, DateTimeField, type DeclarativeAccessSurface, type DeclarativeAccessValidationIssue, type DeclarativeAdminSurface, type DeclarativeAdminValidationIssue, DeclarativeHookExpression, type DeclarativeHookSurface, type DeclarativeHookValidationIssue, type DeclarativePreviewSurface, type DeclarativePreviewValidationIssue, DefineWorkspaceOptions, DetailAction, DetailActionOptions, DetailComputed, DetailComputedOptions, DetailCustom, DetailCustomOptions, DetailDivider, DetailDividerOptions, DetailField, DetailGrid, DetailGridOptions, DetailItem, DetailRepeat, DetailRepeatOptions, DetailSchema, DetailSection, DetailSectionOptions, DetailTab, DetailTabOptions, DetailTabs, DetailTabsOptions, DetailText, DetailTextOptions, DisplayFieldOptions, DuplicateKeyError, DyrectedAIError, DyrectedConfig, DyrectedError, EMAIL_TEMPLATES_COLLECTION_CONFIG, EMAIL_TEMPLATES_COLLECTION_SLUG, EmailField, type ExprFunction, type ExtractCollectionSlugs, Field, FieldConditionBuilder, FieldType, ForbiddenError, type GenerateIdOptions, GlobalConfig, HookRequestContext, INTERNAL_SYSTEM_COLLECTIONS, IconField, IdStrategy, ImageField, type InferDocShape, JoinField, JsonField, LIFECYCLE_EVENTS_COLLECTION, type LayoutOptions, LifecycleEvent, LifecycleEventName, MatchBuilder, MoneyField, MultiSelectField, NANOID_ALPHABET, NON_NEGOTIABLE_CREDENTIAL_FIELDS, NotFoundError, NumberField, ObjectField, PII_REGEX_PATTERNS, type Prettify, PublicAdminAuthConfig, type PublishingWorkflowOptions, RESERVED_NAVIGATION_SLUGS, RadioField, type ReconcileNavigationOptions, type ReconciledNavTree, type ReferencedComponentKeys, RelationshipField, type ResolvedTrashConfig, type RestoreDocumentOptions, RichTextField, type RoleOption, type RolesFieldOptions, RowField, type SanitizeDocForAIOptions, SelectField, type SoftDeleteOptions, type SortClause, type SortDirection, type SqlSortDialect, type SystemDocFields, TASK_LOCKS_COLLECTION, TASK_LOCKS_COLLECTION_CONFIG, TRASH_COLLECTION, TRASH_COLLECTION_CONFIG, TaskConfig, TaskRunResult, type TaskRunner, type TemplateBlock, TextField, TextareaField, TimeField, UNASSIGNED_GROUP_KEY, type UpdatedAtFieldOptions, type UpdatedByFieldOptions, type UploadDocFields, UrlField, UserNavigationPreferences, ValidationError, ViewConfig, WORKFLOW_HISTORY_COLLECTION, type WhenFunction, WorkflowConfig, WorkflowTransition, abs, addDays, alertBox, asCollection, assertValidAdminConditionsInConfig, assertValidDeclarativeAccessInConfig, assertValidDeclarativeHookExpression, assertValidDeclarativeHookResult, assertValidDeclarativeHooksInConfig, assertValidNavigationSlugs, assertValidPreviewUrlsInConfig, assertValidTrashInConfig, availableWorkflowTransitions, buildSqlOrderBy, canViewWorkflowDraft, capitalize, ceil, clamp, coalesce, collectAdminConditionValidationIssues, collectConfigDiagnostics, collectDeclarativeAccessValidationIssues, collectDeclarativeHookValidationIssues, collectPreviewUrlValidationIssues, collectReferencedComponentKeys, compact, compileNavigation, count, createLifecycleEvent, createTaskRunner, createTrashPurgeTask, createWorkflowDocument, ctaButton, defaultValue, defineArrayField, defineBlock, defineBlocksField, defineBooleanField, defineCollection, defineConfig, defineCreatedAtField, defineCreatedByField, defineDateField, defineDateTimeField, defineEmailField, defineField, defineGlobal, defineIconField, defineImageField, defineJoinField, defineJsonField, defineMoneyField, defineMultiSelectField, defineNumberField, defineObjectField, definePublishingWorkflow, defineRadioField, defineRelationshipField, defineRichTextField, defineRoles, defineRolesField, defineRowField, defineSelectField, defineTab, defineTask, defineTextField, defineTextareaField, defineTimeField, defineUpdatedAtField, defineUpdatedByField, defineUrlField, detailBox, diffDays, dispatchLifecycleEvent, dispatchPendingLifecycleEvents, displayAction, displayComputed, displayCustom, displayCustomComponent, displayDivider, displayField, displayGrid, displayRepeat, displaySection, displayTab, displayTabs, displayText, divider, emailTokens, endsWith, escapeHtml, evaluateDetailComputed, evaluateJexl, evaluateJexlSync, eventList, executeFieldAfterRead, executeFieldBeforeChange, expr, first, floor, formatConfigDiagnostics, formatDate, formatJexlValue, generateDefaultDetailSchema, generateDocumentId, generateId, generateOpenApi, get, getAdminAuthCollection, getAdminRoleForCollection, getAllowedSitesForUser, getDefaultEmailTemplate, getPublicAdminAuthConfig, getTrashEntryId, heading, includes, initializeWorkflowDocument, isConfigValidationError, isDetailItemVisible, isEmpty, isFuture, isPast, isSiteAuthorized, isUserAdmin, join, last, layout, length, lower, maskEmail, maskPhone, maskTextPII, materializeWorkflowDocument, max, min, nanoid, nextCronRun, normalizeConfig, normalizeDetailItem, normalizeGroupKey, now, numericFieldNames, paragraph, parseCron, parseSort, pow, prefixedId, pruneNavigationForUser, publishedStateName, publishingWorkflow, readingTime, reconcileNavigation, registerJexlHelpers, replace, resolveAdminAuthCollection, resolveAllCollectionViews, resolveAuthorizedSiteId, resolveBlocks, resolveDocumentTitle, resolveIndexName, resolvePrefix, resolveTrashConfig, restoreDocument, round, row, runCollectionHooks, safeLinkDetailBox, sanitizeDocForAI, saveWorkflowDraft, sectionLabel, simplePublishingWorkflow, slugify, softDeleteDocument, spacer, sqrt, startsWith, sum, table, today, transitionWorkflow, trim, truncate, ulid, unique, upper, uuid, validateAdminConditionExpression, validateDeclarativeAccessExpression, validateDeclarativeHookExpression, validatePreviewUrlExpression, when, wordCount, workflowCapabilities };
2383
+ export { AIConfig, type AIErrorCode, AIPIIConfig, type AccessConditions, AccessPolicyResolver, AdminAuthConfig, type AdminComponentsValidationIssue, ArrayField, AuthConfig, type AuthDocFields, AuthenticatedUser, BASE62_ALPHABET, BUILTIN_JEXL_HELPERS, BaseDocument, Block, BooleanField, CROCKFORD_BASE32, CollectionConfig, CompiledNavItem, CompiledNavTree, ComputedHandler, type ConfigDiagnostic, ConfigValidationError, ConflictError, type CreatedAtFieldOptions, type CreatedByFieldOptions, DatabaseAdapter, DateField, DateTimeField, type DeclarativeAccessSurface, type DeclarativeAccessValidationIssue, type DeclarativeAdminSurface, type DeclarativeAdminValidationIssue, DeclarativeHookExpression, type DeclarativeHookSurface, type DeclarativeHookValidationIssue, type DeclarativePreviewSurface, type DeclarativePreviewValidationIssue, DefineWorkspaceOptions, DetailAction, DetailActionOptions, DetailComputed, DetailComputedOptions, DetailCustom, DetailCustomOptions, DetailDivider, DetailDividerOptions, DetailField, DetailGrid, DetailGridOptions, DetailItem, DetailRepeat, DetailRepeatOptions, DetailSchema, DetailSection, DetailSectionOptions, DetailTab, DetailTabOptions, DetailTabs, DetailTabsOptions, DetailText, DetailTextOptions, DisplayFieldOptions, DuplicateKeyError, DyrectedAIError, DyrectedConfig, DyrectedError, EMAIL_TEMPLATES_COLLECTION_CONFIG, EMAIL_TEMPLATES_COLLECTION_SLUG, EmailField, type ExprFunction, type ExtractCollectionSlugs, Field, FieldConditionBuilder, FieldType, ForbiddenError, type GenerateIdOptions, GlobalConfig, HookRequestContext, INTERNAL_SYSTEM_COLLECTIONS, IconField, IdStrategy, ImageField, type InferDocShape, JoinField, JsonField, LIFECYCLE_EVENTS_COLLECTION, type LayoutOptions, LifecycleEvent, LifecycleEventName, MatchBuilder, MoneyField, MultiSelectField, NANOID_ALPHABET, NON_NEGOTIABLE_CREDENTIAL_FIELDS, NotFoundError, NumberField, ObjectField, PII_REGEX_PATTERNS, type Prettify, PublicAdminAuthConfig, type PublishingWorkflowOptions, RESERVED_NAVIGATION_SLUGS, RadioField, type ReconcileNavigationOptions, type ReconciledNavTree, type ReferencedComponentKeys, RelationshipField, type ResolvedTrashConfig, type RestoreDocumentOptions, RichTextField, type RoleOption, type RolesFieldOptions, RowField, type SanitizeDocForAIOptions, SelectField, type SoftDeleteOptions, type SortClause, type SortDirection, type SqlSortDialect, type SystemDocFields, TASK_LOCKS_COLLECTION, TASK_LOCKS_COLLECTION_CONFIG, TRASH_COLLECTION, TRASH_COLLECTION_CONFIG, TaskConfig, TaskRunResult, type TaskRunner, type TemplateBlock, TextField, TextareaField, TimeField, UNASSIGNED_GROUP_KEY, type UpdatedAtFieldOptions, type UpdatedByFieldOptions, type UploadDocFields, UrlField, UserNavigationPreferences, ValidationError, ViewConfig, WORKFLOW_HISTORY_COLLECTION, type WhenFunction, WorkflowConfig, WorkflowTransition, abs, addDays, alertBox, asCollection, assertValidAdminConditionsInConfig, assertValidDeclarativeAccessInConfig, assertValidDeclarativeHookExpression, assertValidDeclarativeHookResult, assertValidDeclarativeHooksInConfig, assertValidNavigationSlugs, assertValidPreviewUrlsInConfig, assertValidTrashInConfig, availableWorkflowTransitions, buildSqlOrderBy, canViewWorkflowDraft, capitalize, ceil, clamp, coalesce, collectAdminComponentsValidationIssues, collectAdminConditionValidationIssues, collectConfigDiagnostics, collectDeclarativeAccessValidationIssues, collectDeclarativeHookValidationIssues, collectPreviewUrlValidationIssues, collectReferencedComponentKeys, compact, compileNavigation, count, createLifecycleEvent, createTaskRunner, createTrashPurgeTask, createWorkflowDocument, ctaButton, defaultValue, defineArrayField, defineBlock, defineBlocksField, defineBooleanField, defineCollection, defineConfig, defineCreatedAtField, defineCreatedByField, defineDateField, defineDateTimeField, defineEmailField, defineField, defineGlobal, defineIconField, defineImageField, defineJoinField, defineJsonField, defineMoneyField, defineMultiSelectField, defineNumberField, defineObjectField, definePublishingWorkflow, defineRadioField, defineRelationshipField, defineRichTextField, defineRoles, defineRolesField, defineRowField, defineSelectField, defineTab, defineTask, defineTextField, defineTextareaField, defineTimeField, defineUpdatedAtField, defineUpdatedByField, defineUrlField, detailBox, diffDays, dispatchLifecycleEvent, dispatchPendingLifecycleEvents, displayAction, displayComputed, displayCustom, displayCustomComponent, displayDivider, displayField, displayGrid, displayRepeat, displaySection, displayTab, displayTabs, displayText, divider, emailTokens, endsWith, escapeHtml, evaluateDetailComputed, evaluateJexl, evaluateJexlSync, eventList, executeFieldAfterRead, executeFieldBeforeChange, expr, first, floor, formatConfigDiagnostics, formatDate, formatJexlValue, generateDefaultDetailSchema, generateDocumentId, generateId, generateOpenApi, get, getAdminAuthCollection, getAdminRoleForCollection, getAllowedSitesForUser, getDefaultEmailTemplate, getPublicAdminAuthConfig, getTrashEntryId, heading, includes, initializeWorkflowDocument, isConfigValidationError, isDetailItemVisible, isEmpty, isFuture, isPast, isSiteAuthorized, isUserAdmin, join, last, layout, length, lower, maskEmail, maskPhone, maskTextPII, materializeWorkflowDocument, max, min, nanoid, nextCronRun, normalizeConfig, normalizeDetailItem, normalizeGroupKey, now, numericFieldNames, paragraph, parseCron, parseSort, pow, prefixedId, pruneNavigationForUser, publishedStateName, publishingWorkflow, readingTime, reconcileNavigation, registerJexlHelpers, replace, resolveAdminAuthCollection, resolveAllCollectionViews, resolveAuthorizedSiteId, resolveBlocks, resolveDocumentTitle, resolveIndexName, resolvePrefix, resolveTrashConfig, restoreDocument, round, row, runCollectionHooks, safeLinkDetailBox, sanitizeDocForAI, saveWorkflowDraft, sectionLabel, simplePublishingWorkflow, slugify, softDeleteDocument, spacer, sqrt, startsWith, sum, table, today, transitionWorkflow, trim, truncate, ulid, unique, upper, uuid, validateAdminConditionExpression, validateDeclarativeAccessExpression, validateDeclarativeHookExpression, validatePreviewUrlExpression, when, wordCount, workflowCapabilities };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { F as Field, B as Block, C as CollectionConfig, D as DyrectedConfig, A as AdminAuthConfig, P as PublicAdminAuthConfig, G as GlobalConfig, a as DeclarativeHookExpression, W as WorkflowConfig, b as AuthenticatedUser, c as WorkflowTransition, L as LifecycleEventName, d as LifecycleEvent, e as DatabaseAdapter, f as BaseDocument, H as HookRequestContext, T as TaskRunResult, g as TaskConfig, h as DetailActionOptions, i as DetailAction, j as DetailComputedOptions, k as ComputedHandler, l as DetailComputed, m as DetailCustomOptions, n as DetailCustom, o as DetailDividerOptions, p as DetailDivider, q as DisplayFieldOptions, r as DetailField, s as DetailItem, t as DetailGridOptions, u as DetailGrid, v as DetailRepeatOptions, w as DetailRepeat, x as DetailSectionOptions, y as DetailSection, z as DetailTabOptions, E as DetailTab, I as DetailTabsOptions, J as DetailTabs, K as DetailTextOptions, M as DetailText, N as DetailSchema, O as DyrectedContext, Q as AIConfig, R as AIPIIConfig, S as IdStrategy, U as CompiledNavTree, V as CompiledNavItem, X as UserNavigationPreferences, Y as DefineWorkspaceOptions, Z as ViewConfig, _ as DateTimeField, $ as RelationshipField, a0 as SelectField, a1 as ArrayField, a2 as FieldType, a3 as BooleanField, a4 as AuthConfig, a5 as AccessPolicyResolver, a6 as DateField, a7 as TextField, a8 as EmailField, a9 as IconField, aa as ImageField, ab as JoinField, ac as JsonField, ad as MoneyField, ae as MultiSelectField, af as NumberField, ag as ObjectField, ah as RadioField, ai as RichTextField, aj as RowField, ak as TextareaField, al as TimeField, am as UrlField } from './app-DregJnqR.js';
2
- export { an as AIAction, ao as AIActionStatus, ap as AIActionType, aq as AIAuditActionType, ar as AIAuditRecord, as as AIChunk, at as AIMessage, au as AIPIIPattern, av as AIRateLimitResult, aw as AIRateLimitStore, ax as AIThread, ay as AIToolContext, az as AIToolDefinition, aA as AI_ACTIONS_COLLECTION, aB as AI_AUDIT_COLLECTION, aC as AI_CHUNKS_COLLECTION, aD as AI_MESSAGES_COLLECTION, aE as AI_THREADS_COLLECTION, aF as AccessConfig, aG as AccessFunction, aH as AccessFunctionArgs, aI as AccessResult, aJ as AccessRule, aK as ActionConfig, aL as ActionConfigBase, aM as ActionConfigWithHandler, aN as ActionConfigWithMutation, aO as ActionContext, aP as ActionType, aQ as AdminAuthAccessResolution, aR as AdminAuthClaimMapping, aS as AdminAuthMember, aT as AdminAuthProvider, aU as AdminAuthProviderMembersConfig, aV as AdminAuthProvisioningMode, aW as AdminAuthResolveAccessArgs, aX as AdminAuthResolvedIdentity, aY as AdminConfig, aZ as AdminDashboardComponentSlots, a_ as AdminIconName, a$ as AggregateArgs, b0 as AggregateCastType, b1 as AggregateCollectionResult, b2 as AggregateInput, b3 as AggregateOperation, b4 as AggregateResult, b5 as AppTrashConfig, b6 as BaseAdminAuthProvider, b7 as BaseFieldAdmin, b8 as BlockVariant, b9 as BlocksField, ba as BooleanFieldAdmin, bb as BooleanFormat, bc as CURRENT_NAV_PREFERENCES_VERSION, bd as CUSTOM_VIEW_FETCH_ALL_LIMIT, be as CalendarViewConfig, bf as CardsViewConfig, bg as CharacterLimitFieldAdmin, bh as CharacterLimitFieldConfig, bi as CollectionAfterChangeHook, bj as CollectionAfterDeleteHook, bk as CollectionAfterReadHook, bl as CollectionAfterReadHookEntry, bm as CollectionAfterRestoreHook, bn as CollectionAfterTransitionHook, bo as CollectionAfterTrashHook, bp as CollectionBeforeChangeHook, bq as CollectionBeforeChangeHookEntry, br as CollectionBeforeCommitHook, bs as CollectionBeforeDeleteHook, bt as CollectionBeforeReadHook, bu as CollectionBeforeReadHookEntry, bv as CollectionBeforeRestoreHook, bw as CollectionBeforeTransitionHook, bx as CollectionBeforeTrashHook, by as CollectionEmailConfig, bz as CollectionIndex, bA as CollectionListComponentSlots, bB as CollectionRAGConfig, bC as CollectionSchemaResult, bD as CollectionSummaryResult, bE as CollectionViewComponentSlots, bF as CompiledNavGroup, bG as CountOperation, bH as CustomAdminAuthProvider, bI as CustomViewConfig, bJ as CustomViewDataConfig, bK as DEFAULT_USER_NAV_PREFERENCES, bL as DateFieldAdmin, bM as DateFormat, bN as DefaultValueContext, bO as DefineActionOptions, bP as DefineCalendarViewOptions, bQ as DefineCardsViewOptions, bR as DefineCustomViewOptions, bS as DefineGanttViewOptions, bT as DefineKanbanViewOptions, bU as DefinePageInput, bV as DefineTableViewOptions, bW as DefineViewBaseOptions, bX as DefineViewOptions, bY as DetailSpan, bZ as DisplayTone, b_ as DisplayVariant, b$ as DistinctCountOperation, c0 as DistinctValuesOperation, c1 as DynamicOptionItem, c2 as DynamicOptionsConfig, c3 as DynamicOptionsResolver, c4 as DynamicOptionsResolverArgs, c5 as DyrectedAIContext, c6 as DyrectedLoggerConfig, c7 as DyrectedObservabilityConfig, c8 as EmailFieldAdmin, c9 as EmailTemplateArgs, ca as EmailTemplateResult, cb as FieldAdminHooks, cc as FieldAdminOnChangeHook, cd as FieldAdminOnChangeHookArgs, ce as FieldAdminOptionsHook, cf as FieldAdminOptionsHookArgs, cg as FieldAdminOptionsHookResult, ch as FieldAfterReadHook, ci as FieldAfterReadHookArgs, cj as FieldBase, ck as FieldBeforeChangeHook, cl as FieldBeforeChangeHookArgs, cm as FieldHook, cn as FieldHooks, co as FileData, cp as GanttViewConfig, cq as GetDocumentResult, cr as GlobalAfterChangeHook, cs as GlobalAfterReadHook, ct as GlobalAfterReadHookEntry, cu as GlobalBeforeChangeHook, cv as GlobalBeforeChangeHookEntry, cw as GlobalBeforeReadHook, cx as GlobalBeforeReadHookEntry, cy as GlobalRAGConfig, cz as GlobalSchemaResult, cA as GlobalSummaryResult, cB as HeadingLevel, cC as HookFunction, cD as IconFieldAdmin, cE as ImageService, cF as ImageTransformOptions, cG as InferAggregateResult, cH as JoinFieldAdmin, cI as JsonFieldAdmin, cJ as JsonFormat, cK as KanbanViewConfig, cL as LIFECYCLE_EVENT_NAMES, cM as LifecycleEventHandler, cN as LinkFormat, cO as MetricColor, cP as MoneyFieldAdmin, cQ as MoneyFieldConfig, cR as MultiSelectFieldAdmin, cS as NamedAccessPolicy, cT as NavBadgeConfig, cU as NavGroup, cV as NumberFieldAdmin, cW as NumberFormat, cX as NumberLimitFieldAdmin, cY as NumberLimitFieldConfig, cZ as NumericOperation, c_ as NumericUpdateOperator, c$ as OIDCAdminAuthProvider, d0 as OptionFormat, d1 as OutboundEmail, d2 as PageAction, d3 as PageBreadcrumbItem, d4 as PageConfig, d5 as PaginatedResult, d6 as PinnedNavItemRef, d7 as PublicAdminAuthProvider, d8 as QueryCollectionResult, d9 as RAGSearchResult, da as RadioFieldAdmin, db as RateLimitConfig, dc as ReadonlyDatabaseAdapter, dd as RichTextFeature, de as RichTextFieldConfig, df as SelectFieldAdmin, dg as SqlWhereResult, dh as StorageAdapter, di as TableViewConfig, dj as TaskContext, dk as TaskLogger, dl as TaskRunStatus, dm as TextFieldAdmin, dn as TextFormat, dp as TextareaFieldAdmin, dq as TrashConfig, dr as TrustProxyConfig, ds as TypedField, dt as UploadConfig, du as UrlFieldAdmin, dv as UrlLinkValue, dw as ViewActionFeatures, dx as ViewComponentSlots, dy as ViewConfigBase, dz as ViewLayout, dA as ViewMetric, dB as ViewMetricGroupBy, dC as ViewMetricGroupByConfig, dD as ViewMetricTrendConfig, dE as ViewSubMetric, dF as WhereClause, dG as WhereOperator, dH as WhereOperatorName, dI as WordLimitFieldAdmin, dJ as WordLimitFieldConfig, dK as WorkflowMetadata, dL as WorkflowOnTransitionContext, dM as WorkflowOnTransitionHook, dN as WorkflowRole, dO as WorkflowState, dP as WorkflowTransitionContext, dQ as coerceBooleanWhere, dR as defineAction, dS as defineCalendarView, dT as defineCardsView, dU as defineCustomView, dV as defineGanttView, dW as defineKanbanView, dX as definePage, dY as defineTableView, dZ as defineView, d_ as defineWorkspace, d$ as isAICollection, e0 as parseMongoWhere, e1 as parseSqlWhere } from './app-DregJnqR.js';
1
+ import { F as Field, B as Block, C as CollectionConfig, D as DyrectedConfig, A as AdminAuthConfig, P as PublicAdminAuthConfig, G as GlobalConfig, a as DeclarativeHookExpression, W as WorkflowConfig, b as AuthenticatedUser, c as WorkflowTransition, L as LifecycleEventName, d as LifecycleEvent, e as DatabaseAdapter, f as BaseDocument, H as HookRequestContext, T as TaskRunResult, g as TaskConfig, h as DetailActionOptions, i as DetailAction, j as DetailComputedOptions, k as ComputedHandler, l as DetailComputed, m as DetailCustomOptions, n as DetailCustom, o as DetailDividerOptions, p as DetailDivider, q as DisplayFieldOptions, r as DetailField, s as DetailItem, t as DetailGridOptions, u as DetailGrid, v as DetailRepeatOptions, w as DetailRepeat, x as DetailSectionOptions, y as DetailSection, z as DetailTabOptions, E as DetailTab, I as DetailTabsOptions, J as DetailTabs, K as DetailTextOptions, M as DetailText, N as DetailSchema, O as DyrectedContext, Q as AIConfig, R as AIPIIConfig, S as IdStrategy, U as CompiledNavTree, V as CompiledNavItem, X as UserNavigationPreferences, Y as DefineWorkspaceOptions, Z as ViewConfig, _ as DateTimeField, $ as RelationshipField, a0 as SelectField, a1 as ArrayField, a2 as FieldType, a3 as BooleanField, a4 as AuthConfig, a5 as AccessPolicyResolver, a6 as DateField, a7 as TextField, a8 as EmailField, a9 as IconField, aa as ImageField, ab as JoinField, ac as JsonField, ad as MoneyField, ae as MultiSelectField, af as NumberField, ag as ObjectField, ah as RadioField, ai as RichTextField, aj as RowField, ak as TextareaField, al as TimeField, am as UrlField } from './app-BpQPL2hY.js';
2
+ export { an as AIAction, ao as AIActionStatus, ap as AIActionType, aq as AIAuditActionType, ar as AIAuditRecord, as as AIChunk, at as AIMessage, au as AIPIIPattern, av as AIRateLimitResult, aw as AIRateLimitStore, ax as AIThread, ay as AIToolContext, az as AIToolDefinition, aA as AI_ACTIONS_COLLECTION, aB as AI_AUDIT_COLLECTION, aC as AI_CHUNKS_COLLECTION, aD as AI_MESSAGES_COLLECTION, aE as AI_THREADS_COLLECTION, aF as AccessConfig, aG as AccessFunction, aH as AccessFunctionArgs, aI as AccessResult, aJ as AccessRule, aK as ActionConfig, aL as ActionConfigBase, aM as ActionConfigWithHandler, aN as ActionConfigWithMutation, aO as ActionContext, aP as ActionType, aQ as AdminAuthAccessResolution, aR as AdminAuthClaimMapping, aS as AdminAuthMember, aT as AdminAuthProvider, aU as AdminAuthProviderMembersConfig, aV as AdminAuthProvisioningMode, aW as AdminAuthResolveAccessArgs, aX as AdminAuthResolvedIdentity, aY as AdminConfig, aZ as AdminDashboardComponentSlots, a_ as AdminIconName, a$ as AggregateArgs, b0 as AggregateCastType, b1 as AggregateCollectionResult, b2 as AggregateInput, b3 as AggregateOperation, b4 as AggregateResult, b5 as AppTrashConfig, b6 as BaseAdminAuthProvider, b7 as BaseFieldAdmin, b8 as BlockVariant, b9 as BlocksField, ba as BooleanFieldAdmin, bb as BooleanFormat, bc as CURRENT_NAV_PREFERENCES_VERSION, bd as CUSTOM_VIEW_FETCH_ALL_LIMIT, be as CalendarViewConfig, bf as CardsViewConfig, bg as CharacterLimitFieldAdmin, bh as CharacterLimitFieldConfig, bi as CollectionAfterChangeHook, bj as CollectionAfterDeleteHook, bk as CollectionAfterReadHook, bl as CollectionAfterReadHookEntry, bm as CollectionAfterRestoreHook, bn as CollectionAfterTransitionHook, bo as CollectionAfterTrashHook, bp as CollectionBeforeChangeHook, bq as CollectionBeforeChangeHookEntry, br as CollectionBeforeCommitHook, bs as CollectionBeforeDeleteHook, bt as CollectionBeforeReadHook, bu as CollectionBeforeReadHookEntry, bv as CollectionBeforeRestoreHook, bw as CollectionBeforeTransitionHook, bx as CollectionBeforeTrashHook, by as CollectionEmailConfig, bz as CollectionIndex, bA as CollectionListComponentSlots, bB as CollectionRAGConfig, bC as CollectionSchemaResult, bD as CollectionSummaryResult, bE as CollectionViewComponentSlots, bF as CompiledNavGroup, bG as CountOperation, bH as CustomAdminAuthProvider, bI as CustomViewConfig, bJ as CustomViewDataConfig, bK as DEFAULT_USER_NAV_PREFERENCES, bL as DateFieldAdmin, bM as DateFormat, bN as DefaultValueContext, bO as DefineActionOptions, bP as DefineCalendarViewOptions, bQ as DefineCardsViewOptions, bR as DefineCustomViewOptions, bS as DefineGanttViewOptions, bT as DefineKanbanViewOptions, bU as DefinePageInput, bV as DefineTableViewOptions, bW as DefineViewBaseOptions, bX as DefineViewOptions, bY as DetailSpan, bZ as DisplayTone, b_ as DisplayVariant, b$ as DistinctCountOperation, c0 as DistinctValuesOperation, c1 as DocumentFormComponentSlots, c2 as DynamicOptionItem, c3 as DynamicOptionsConfig, c4 as DynamicOptionsResolver, c5 as DynamicOptionsResolverArgs, c6 as DyrectedAIContext, c7 as DyrectedLoggerConfig, c8 as DyrectedObservabilityConfig, c9 as EmailFieldAdmin, ca as EmailTemplateArgs, cb as EmailTemplateResult, cc as FORM_SHELLS, cd as FieldAdminHooks, ce as FieldAdminOnChangeHook, cf as FieldAdminOnChangeHookArgs, cg as FieldAdminOptionsHook, ch as FieldAdminOptionsHookArgs, ci as FieldAdminOptionsHookResult, cj as FieldAfterReadHook, ck as FieldAfterReadHookArgs, cl as FieldBase, cm as FieldBeforeChangeHook, cn as FieldBeforeChangeHookArgs, co as FieldHook, cp as FieldHooks, cq as FileData, cr as FormShell, cs as GanttViewConfig, ct as GetDocumentResult, cu as GlobalAfterChangeHook, cv as GlobalAfterReadHook, cw as GlobalAfterReadHookEntry, cx as GlobalBeforeChangeHook, cy as GlobalBeforeChangeHookEntry, cz as GlobalBeforeReadHook, cA as GlobalBeforeReadHookEntry, cB as GlobalFormComponentSlots, cC as GlobalRAGConfig, cD as GlobalSchemaResult, cE as GlobalSummaryResult, cF as HeadingLevel, cG as HookFunction, cH as IconFieldAdmin, cI as ImageService, cJ as ImageTransformOptions, cK as InferAggregateResult, cL as JoinFieldAdmin, cM as JsonFieldAdmin, cN as JsonFormat, cO as KanbanViewConfig, cP as LIFECYCLE_EVENT_NAMES, cQ as LifecycleEventHandler, cR as LinkFormat, cS as MetricColor, cT as MoneyFieldAdmin, cU as MoneyFieldConfig, cV as MultiSelectFieldAdmin, cW as NamedAccessPolicy, cX as NavBadgeConfig, cY as NavGroup, cZ as NumberFieldAdmin, c_ as NumberFormat, c$ as NumberLimitFieldAdmin, d0 as NumberLimitFieldConfig, d1 as NumericOperation, d2 as NumericUpdateOperator, d3 as OIDCAdminAuthProvider, d4 as OptionFormat, d5 as OutboundEmail, d6 as PageAction, d7 as PageBreadcrumbItem, d8 as PageConfig, d9 as PaginatedResult, da as PinnedNavItemRef, db as PublicAdminAuthProvider, dc as QueryCollectionResult, dd as RAGSearchResult, de as RadioFieldAdmin, df as RateLimitConfig, dg as ReadonlyDatabaseAdapter, dh as RichTextFeature, di as RichTextFieldConfig, dj as SelectFieldAdmin, dk as SqlWhereResult, dl as StorageAdapter, dm as TableViewConfig, dn as TaskContext, dp as TaskLogger, dq as TaskRunStatus, dr as TextFieldAdmin, ds as TextFormat, dt as TextareaFieldAdmin, du as TrashConfig, dv as TrustProxyConfig, dw as TypedField, dx as UploadConfig, dy as UrlFieldAdmin, dz as UrlLinkValue, dA as ViewActionFeatures, dB as ViewComponentSlots, dC as ViewConfigBase, dD as ViewLayout, dE as ViewMetric, dF as ViewMetricGroupBy, dG as ViewMetricGroupByConfig, dH as ViewMetricTrendConfig, dI as ViewSubMetric, dJ as WhereClause, dK as WhereOperator, dL as WhereOperatorName, dM as WordLimitFieldAdmin, dN as WordLimitFieldConfig, dO as WorkflowMetadata, dP as WorkflowOnTransitionContext, dQ as WorkflowOnTransitionHook, dR as WorkflowRole, dS as WorkflowState, dT as WorkflowTransitionContext, dU as coerceBooleanWhere, dV as defineAction, dW as defineCalendarView, dX as defineCardsView, dY as defineCustomView, dZ as defineGanttView, d_ as defineKanbanView, d$ as definePage, e0 as defineTableView, e1 as defineView, e2 as defineWorkspace, e3 as isAICollection, e4 as parseMongoWhere, e5 as parseSqlWhere } from './app-BpQPL2hY.js';
3
3
  import jexl from 'jexl';
4
4
  import { Context } from 'hono';
5
5
  export { z } from 'zod';
@@ -280,7 +280,7 @@ interface DeclarativePreviewValidationIssue {
280
280
  }
281
281
  interface ConfigDiagnostic {
282
282
  severity: "error" | "warning";
283
- source: "declarativeHook" | "declarativeAccess" | "adminCondition" | "previewUrl";
283
+ source: "declarativeHook" | "declarativeAccess" | "adminCondition" | "previewUrl" | "adminComponents";
284
284
  path: string;
285
285
  surface: string;
286
286
  message: string;
@@ -292,7 +292,7 @@ type DiagnosticFormatOptions = {
292
292
  type DeclarativeValidationConfig = {
293
293
  blocks?: Array<Pick<Block, "fields"> & Partial<Pick<Block, "slug">>>;
294
294
  collections: Array<Pick<CollectionConfig, "fields" | "hooks" | "access" | "admin"> & Partial<Pick<CollectionConfig, "slug">>>;
295
- globals?: Array<Pick<GlobalConfig, "fields" | "hooks" | "access"> & Partial<Pick<GlobalConfig, "slug">>>;
295
+ globals?: Array<Pick<GlobalConfig, "fields" | "hooks" | "access" | "admin"> & Partial<Pick<GlobalConfig, "slug">>>;
296
296
  accessPolicies?: Record<string, unknown>;
297
297
  };
298
298
  declare function validateDeclarativeHookExpression(expression: string, surface: DeclarativeHookSurface, path: string): DeclarativeHookValidationIssue[];
@@ -305,6 +305,14 @@ declare function collectDeclarativeHookValidationIssues(config: DeclarativeValid
305
305
  declare function collectDeclarativeAccessValidationIssues(config: DeclarativeValidationConfig): DeclarativeAccessValidationIssue[];
306
306
  declare function collectAdminConditionValidationIssues(config: DeclarativeValidationConfig): DeclarativeAdminValidationIssue[];
307
307
  declare function collectPreviewUrlValidationIssues(config: DeclarativeValidationConfig): DeclarativePreviewValidationIssue[];
308
+ interface AdminComponentsValidationIssue {
309
+ path: string;
310
+ surface: "collection.admin.components" | "global.admin.components";
311
+ message: string;
312
+ expression: string;
313
+ }
314
+ /** Flags malformed `createForm`, `editForm`, `form` and `formShell` settings. */
315
+ declare function collectAdminComponentsValidationIssues(config: DeclarativeValidationConfig): AdminComponentsValidationIssue[];
308
316
  declare function assertValidAdminConditionsInConfig(config: DeclarativeValidationConfig, source?: string): void;
309
317
  declare function assertValidPreviewUrlsInConfig(config: DeclarativeValidationConfig, source?: string): void;
310
318
  declare function collectConfigDiagnostics(config: DeclarativeValidationConfig): ConfigDiagnostic[];
@@ -335,7 +343,7 @@ interface ReferencedComponentKeys {
335
343
  collectionList: Set<string>;
336
344
  /** Operational view slots (`collectionView` and per-view `components`). */
337
345
  collectionView: Set<string>;
338
- /** Reserved for custom document forms (spec 2). Empty until config can reference them. */
346
+ /** `createForm`, `editForm` and `form` keys on collections, and `editForm`/`form` on globals. */
339
347
  forms: Set<string>;
340
348
  /** `component` of views with `layout: "custom"`. */
341
349
  viewLayouts: Set<string>;
@@ -2372,4 +2380,4 @@ declare function defineTab<const T extends readonly Field[]>(args: {
2372
2380
  fields: T;
2373
2381
  }): T;
2374
2382
 
2375
- export { AIConfig, type AIErrorCode, AIPIIConfig, type AccessConditions, AccessPolicyResolver, AdminAuthConfig, ArrayField, AuthConfig, type AuthDocFields, AuthenticatedUser, BASE62_ALPHABET, BUILTIN_JEXL_HELPERS, BaseDocument, Block, BooleanField, CROCKFORD_BASE32, CollectionConfig, CompiledNavItem, CompiledNavTree, ComputedHandler, type ConfigDiagnostic, ConfigValidationError, ConflictError, type CreatedAtFieldOptions, type CreatedByFieldOptions, DatabaseAdapter, DateField, DateTimeField, type DeclarativeAccessSurface, type DeclarativeAccessValidationIssue, type DeclarativeAdminSurface, type DeclarativeAdminValidationIssue, DeclarativeHookExpression, type DeclarativeHookSurface, type DeclarativeHookValidationIssue, type DeclarativePreviewSurface, type DeclarativePreviewValidationIssue, DefineWorkspaceOptions, DetailAction, DetailActionOptions, DetailComputed, DetailComputedOptions, DetailCustom, DetailCustomOptions, DetailDivider, DetailDividerOptions, DetailField, DetailGrid, DetailGridOptions, DetailItem, DetailRepeat, DetailRepeatOptions, DetailSchema, DetailSection, DetailSectionOptions, DetailTab, DetailTabOptions, DetailTabs, DetailTabsOptions, DetailText, DetailTextOptions, DisplayFieldOptions, DuplicateKeyError, DyrectedAIError, DyrectedConfig, DyrectedError, EMAIL_TEMPLATES_COLLECTION_CONFIG, EMAIL_TEMPLATES_COLLECTION_SLUG, EmailField, type ExprFunction, type ExtractCollectionSlugs, Field, FieldConditionBuilder, FieldType, ForbiddenError, type GenerateIdOptions, GlobalConfig, HookRequestContext, INTERNAL_SYSTEM_COLLECTIONS, IconField, IdStrategy, ImageField, type InferDocShape, JoinField, JsonField, LIFECYCLE_EVENTS_COLLECTION, type LayoutOptions, LifecycleEvent, LifecycleEventName, MatchBuilder, MoneyField, MultiSelectField, NANOID_ALPHABET, NON_NEGOTIABLE_CREDENTIAL_FIELDS, NotFoundError, NumberField, ObjectField, PII_REGEX_PATTERNS, type Prettify, PublicAdminAuthConfig, type PublishingWorkflowOptions, RESERVED_NAVIGATION_SLUGS, RadioField, type ReconcileNavigationOptions, type ReconciledNavTree, type ReferencedComponentKeys, RelationshipField, type ResolvedTrashConfig, type RestoreDocumentOptions, RichTextField, type RoleOption, type RolesFieldOptions, RowField, type SanitizeDocForAIOptions, SelectField, type SoftDeleteOptions, type SortClause, type SortDirection, type SqlSortDialect, type SystemDocFields, TASK_LOCKS_COLLECTION, TASK_LOCKS_COLLECTION_CONFIG, TRASH_COLLECTION, TRASH_COLLECTION_CONFIG, TaskConfig, TaskRunResult, type TaskRunner, type TemplateBlock, TextField, TextareaField, TimeField, UNASSIGNED_GROUP_KEY, type UpdatedAtFieldOptions, type UpdatedByFieldOptions, type UploadDocFields, UrlField, UserNavigationPreferences, ValidationError, ViewConfig, WORKFLOW_HISTORY_COLLECTION, type WhenFunction, WorkflowConfig, WorkflowTransition, abs, addDays, alertBox, asCollection, assertValidAdminConditionsInConfig, assertValidDeclarativeAccessInConfig, assertValidDeclarativeHookExpression, assertValidDeclarativeHookResult, assertValidDeclarativeHooksInConfig, assertValidNavigationSlugs, assertValidPreviewUrlsInConfig, assertValidTrashInConfig, availableWorkflowTransitions, buildSqlOrderBy, canViewWorkflowDraft, capitalize, ceil, clamp, coalesce, collectAdminConditionValidationIssues, collectConfigDiagnostics, collectDeclarativeAccessValidationIssues, collectDeclarativeHookValidationIssues, collectPreviewUrlValidationIssues, collectReferencedComponentKeys, compact, compileNavigation, count, createLifecycleEvent, createTaskRunner, createTrashPurgeTask, createWorkflowDocument, ctaButton, defaultValue, defineArrayField, defineBlock, defineBlocksField, defineBooleanField, defineCollection, defineConfig, defineCreatedAtField, defineCreatedByField, defineDateField, defineDateTimeField, defineEmailField, defineField, defineGlobal, defineIconField, defineImageField, defineJoinField, defineJsonField, defineMoneyField, defineMultiSelectField, defineNumberField, defineObjectField, definePublishingWorkflow, defineRadioField, defineRelationshipField, defineRichTextField, defineRoles, defineRolesField, defineRowField, defineSelectField, defineTab, defineTask, defineTextField, defineTextareaField, defineTimeField, defineUpdatedAtField, defineUpdatedByField, defineUrlField, detailBox, diffDays, dispatchLifecycleEvent, dispatchPendingLifecycleEvents, displayAction, displayComputed, displayCustom, displayCustomComponent, displayDivider, displayField, displayGrid, displayRepeat, displaySection, displayTab, displayTabs, displayText, divider, emailTokens, endsWith, escapeHtml, evaluateDetailComputed, evaluateJexl, evaluateJexlSync, eventList, executeFieldAfterRead, executeFieldBeforeChange, expr, first, floor, formatConfigDiagnostics, formatDate, formatJexlValue, generateDefaultDetailSchema, generateDocumentId, generateId, generateOpenApi, get, getAdminAuthCollection, getAdminRoleForCollection, getAllowedSitesForUser, getDefaultEmailTemplate, getPublicAdminAuthConfig, getTrashEntryId, heading, includes, initializeWorkflowDocument, isConfigValidationError, isDetailItemVisible, isEmpty, isFuture, isPast, isSiteAuthorized, isUserAdmin, join, last, layout, length, lower, maskEmail, maskPhone, maskTextPII, materializeWorkflowDocument, max, min, nanoid, nextCronRun, normalizeConfig, normalizeDetailItem, normalizeGroupKey, now, numericFieldNames, paragraph, parseCron, parseSort, pow, prefixedId, pruneNavigationForUser, publishedStateName, publishingWorkflow, readingTime, reconcileNavigation, registerJexlHelpers, replace, resolveAdminAuthCollection, resolveAllCollectionViews, resolveAuthorizedSiteId, resolveBlocks, resolveDocumentTitle, resolveIndexName, resolvePrefix, resolveTrashConfig, restoreDocument, round, row, runCollectionHooks, safeLinkDetailBox, sanitizeDocForAI, saveWorkflowDraft, sectionLabel, simplePublishingWorkflow, slugify, softDeleteDocument, spacer, sqrt, startsWith, sum, table, today, transitionWorkflow, trim, truncate, ulid, unique, upper, uuid, validateAdminConditionExpression, validateDeclarativeAccessExpression, validateDeclarativeHookExpression, validatePreviewUrlExpression, when, wordCount, workflowCapabilities };
2383
+ export { AIConfig, type AIErrorCode, AIPIIConfig, type AccessConditions, AccessPolicyResolver, AdminAuthConfig, type AdminComponentsValidationIssue, ArrayField, AuthConfig, type AuthDocFields, AuthenticatedUser, BASE62_ALPHABET, BUILTIN_JEXL_HELPERS, BaseDocument, Block, BooleanField, CROCKFORD_BASE32, CollectionConfig, CompiledNavItem, CompiledNavTree, ComputedHandler, type ConfigDiagnostic, ConfigValidationError, ConflictError, type CreatedAtFieldOptions, type CreatedByFieldOptions, DatabaseAdapter, DateField, DateTimeField, type DeclarativeAccessSurface, type DeclarativeAccessValidationIssue, type DeclarativeAdminSurface, type DeclarativeAdminValidationIssue, DeclarativeHookExpression, type DeclarativeHookSurface, type DeclarativeHookValidationIssue, type DeclarativePreviewSurface, type DeclarativePreviewValidationIssue, DefineWorkspaceOptions, DetailAction, DetailActionOptions, DetailComputed, DetailComputedOptions, DetailCustom, DetailCustomOptions, DetailDivider, DetailDividerOptions, DetailField, DetailGrid, DetailGridOptions, DetailItem, DetailRepeat, DetailRepeatOptions, DetailSchema, DetailSection, DetailSectionOptions, DetailTab, DetailTabOptions, DetailTabs, DetailTabsOptions, DetailText, DetailTextOptions, DisplayFieldOptions, DuplicateKeyError, DyrectedAIError, DyrectedConfig, DyrectedError, EMAIL_TEMPLATES_COLLECTION_CONFIG, EMAIL_TEMPLATES_COLLECTION_SLUG, EmailField, type ExprFunction, type ExtractCollectionSlugs, Field, FieldConditionBuilder, FieldType, ForbiddenError, type GenerateIdOptions, GlobalConfig, HookRequestContext, INTERNAL_SYSTEM_COLLECTIONS, IconField, IdStrategy, ImageField, type InferDocShape, JoinField, JsonField, LIFECYCLE_EVENTS_COLLECTION, type LayoutOptions, LifecycleEvent, LifecycleEventName, MatchBuilder, MoneyField, MultiSelectField, NANOID_ALPHABET, NON_NEGOTIABLE_CREDENTIAL_FIELDS, NotFoundError, NumberField, ObjectField, PII_REGEX_PATTERNS, type Prettify, PublicAdminAuthConfig, type PublishingWorkflowOptions, RESERVED_NAVIGATION_SLUGS, RadioField, type ReconcileNavigationOptions, type ReconciledNavTree, type ReferencedComponentKeys, RelationshipField, type ResolvedTrashConfig, type RestoreDocumentOptions, RichTextField, type RoleOption, type RolesFieldOptions, RowField, type SanitizeDocForAIOptions, SelectField, type SoftDeleteOptions, type SortClause, type SortDirection, type SqlSortDialect, type SystemDocFields, TASK_LOCKS_COLLECTION, TASK_LOCKS_COLLECTION_CONFIG, TRASH_COLLECTION, TRASH_COLLECTION_CONFIG, TaskConfig, TaskRunResult, type TaskRunner, type TemplateBlock, TextField, TextareaField, TimeField, UNASSIGNED_GROUP_KEY, type UpdatedAtFieldOptions, type UpdatedByFieldOptions, type UploadDocFields, UrlField, UserNavigationPreferences, ValidationError, ViewConfig, WORKFLOW_HISTORY_COLLECTION, type WhenFunction, WorkflowConfig, WorkflowTransition, abs, addDays, alertBox, asCollection, assertValidAdminConditionsInConfig, assertValidDeclarativeAccessInConfig, assertValidDeclarativeHookExpression, assertValidDeclarativeHookResult, assertValidDeclarativeHooksInConfig, assertValidNavigationSlugs, assertValidPreviewUrlsInConfig, assertValidTrashInConfig, availableWorkflowTransitions, buildSqlOrderBy, canViewWorkflowDraft, capitalize, ceil, clamp, coalesce, collectAdminComponentsValidationIssues, collectAdminConditionValidationIssues, collectConfigDiagnostics, collectDeclarativeAccessValidationIssues, collectDeclarativeHookValidationIssues, collectPreviewUrlValidationIssues, collectReferencedComponentKeys, compact, compileNavigation, count, createLifecycleEvent, createTaskRunner, createTrashPurgeTask, createWorkflowDocument, ctaButton, defaultValue, defineArrayField, defineBlock, defineBlocksField, defineBooleanField, defineCollection, defineConfig, defineCreatedAtField, defineCreatedByField, defineDateField, defineDateTimeField, defineEmailField, defineField, defineGlobal, defineIconField, defineImageField, defineJoinField, defineJsonField, defineMoneyField, defineMultiSelectField, defineNumberField, defineObjectField, definePublishingWorkflow, defineRadioField, defineRelationshipField, defineRichTextField, defineRoles, defineRolesField, defineRowField, defineSelectField, defineTab, defineTask, defineTextField, defineTextareaField, defineTimeField, defineUpdatedAtField, defineUpdatedByField, defineUrlField, detailBox, diffDays, dispatchLifecycleEvent, dispatchPendingLifecycleEvents, displayAction, displayComputed, displayCustom, displayCustomComponent, displayDivider, displayField, displayGrid, displayRepeat, displaySection, displayTab, displayTabs, displayText, divider, emailTokens, endsWith, escapeHtml, evaluateDetailComputed, evaluateJexl, evaluateJexlSync, eventList, executeFieldAfterRead, executeFieldBeforeChange, expr, first, floor, formatConfigDiagnostics, formatDate, formatJexlValue, generateDefaultDetailSchema, generateDocumentId, generateId, generateOpenApi, get, getAdminAuthCollection, getAdminRoleForCollection, getAllowedSitesForUser, getDefaultEmailTemplate, getPublicAdminAuthConfig, getTrashEntryId, heading, includes, initializeWorkflowDocument, isConfigValidationError, isDetailItemVisible, isEmpty, isFuture, isPast, isSiteAuthorized, isUserAdmin, join, last, layout, length, lower, maskEmail, maskPhone, maskTextPII, materializeWorkflowDocument, max, min, nanoid, nextCronRun, normalizeConfig, normalizeDetailItem, normalizeGroupKey, now, numericFieldNames, paragraph, parseCron, parseSort, pow, prefixedId, pruneNavigationForUser, publishedStateName, publishingWorkflow, readingTime, reconcileNavigation, registerJexlHelpers, replace, resolveAdminAuthCollection, resolveAllCollectionViews, resolveAuthorizedSiteId, resolveBlocks, resolveDocumentTitle, resolveIndexName, resolvePrefix, resolveTrashConfig, restoreDocument, round, row, runCollectionHooks, safeLinkDetailBox, sanitizeDocForAI, saveWorkflowDraft, sectionLabel, simplePublishingWorkflow, slugify, softDeleteDocument, spacer, sqrt, startsWith, sum, table, today, transitionWorkflow, trim, truncate, ulid, unique, upper, uuid, validateAdminConditionExpression, validateDeclarativeAccessExpression, validateDeclarativeHookExpression, validatePreviewUrlExpression, when, wordCount, workflowCapabilities };