@bison-lab/payload-core 3.10.0 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,7 +1,8 @@
1
1
  import { a as SeoImageSize, i as SeoImageDoc, n as titleTemplate, o as SeoImageValue, r as MediaId, s as SeoMeta, t as documentTitle } from "./title-B2-gWQZd.mjs";
2
- import { _ as resolveThemeIdentity, a as EditableTheme, c as THEME_SLUG, g as ThemeIdentityFallback, h as ResolvedThemeIdentity, i as CreateThemeOptions, l as ThemeColorDoc, m as ThemeUploadDoc, n as rewriteColorToken, o as SYSTEM_COLOR_KEYS, p as ThemeLibraryColorDoc, r as themeColorKeys, s as SystemColorKey, t as deleteLibraryColor, u as ThemeDoc } from "./library-BGq4wGif.mjs";
2
+ import { A as ThemeIdentityFallback, C as ThemeColorDoc, D as ThemeLibraryColorDoc, O as ThemeUploadDoc, S as THEME_TYPOGRAPHY_SLUG, _ as SystemColorKey, a as pageEditorTokens, b as THEME_IDENTITY_SLUG, c as LookFieldOptions, d as deleteLibraryColor, f as rewriteColorToken, g as SYSTEM_COLOR_KEYS, h as EditableTheme, i as pageEditorLooks, j as resolveThemeIdentity, k as ResolvedThemeIdentity, l as colorTokenField, m as CreateThemeOptions, n as PAGE_EDITOR_SYSTEM_KEYS, o as themeLibraryFromDoc, p as themeColorKeys, r as PageEditorSystemKey, s as LookFieldMode, t as LookOption, u as lookField, v as THEME_APPEARANCE_SLUG, w as ThemeDoc, x as THEME_SLUG, y as THEME_COLORS_SLUG } from "./looks-CLxXwASa.mjs";
3
3
  import { ThemeConfig } from "@bison-lab/tokens";
4
- import { Access, CheckboxField, CollectionConfig, CollectionSlug, GlobalConfig, Plugin, UploadCollectionSlug } from "payload";
4
+ import * as payload from "payload";
5
+ import { Access, Block, CheckboxField, CollectionConfig, CollectionSlug, GlobalConfig, ImageSize, PayloadRequest, Plugin, TextField, UploadCollectionSlug } from "payload";
5
6
 
6
7
  //#region src/seo/plugin.d.ts
7
8
  /**
@@ -106,12 +107,14 @@ declare function truncateAtWord(text: string, max?: number): string;
106
107
  //#endregion
107
108
  //#region src/theme/global.d.ts
108
109
  /**
109
- * Settings Theme. Field tabs: Colors, Typography, Appearance, Identity.
110
- * Publish in the Save slot writes the open tab only. No draft mode: a
111
- * save is live. `getPublishedTheme` reads that row. There is no Theme
112
- * preview pane.
110
+ * Standard Payload Globals in an `admin.group: "Theme"` nav section
111
+ * the same pattern as Content and Settings. Each page is its own Global
112
+ * (Save, fields, access). A hidden `theme` store is the published read
113
+ * model `getPublishedTheme` already knows. Locking is off: these are
114
+ * settings forms, not collaborative documents. No draft mode, no preview
115
+ * pane.
113
116
  */
114
- declare function createTheme(options: CreateThemeOptions): GlobalConfig;
117
+ declare function createTheme(options: CreateThemeOptions): GlobalConfig[];
115
118
  //#endregion
116
119
  //#region src/brand-assets/collection.d.ts
117
120
  declare const BRAND_ASSETS_SLUG = "brand-assets";
@@ -121,8 +124,8 @@ interface CreateBrandAssetsOptions {
121
124
  /**
122
125
  * Required, no default — same shape as `createTheme`. `read` is typically
123
126
  * public so the live site can load the lockup; `update` is `canManageBrand`
124
- * and covers create, update, delete, and version history. Predicates live
125
- * in each site's `src/platform` until BIS-43.
127
+ * and covers create, update, delete, and version history. This collection
128
+ * does not read the Roles Global.
126
129
  */
127
130
  access: {
128
131
  read: Access;
@@ -194,6 +197,24 @@ type ThemeChild = (typeof THEME_CHILDREN)[number];
194
197
  * the seed.
195
198
  */
196
199
  declare function publishThemeChild(stored: ThemeDoc, incoming: ThemeDoc, child: ThemeChild): ThemeDoc;
200
+ interface ThemeStorePayload {
201
+ findGlobal: (args: {
202
+ slug: string;
203
+ draft?: boolean;
204
+ depth?: number;
205
+ overrideAccess?: boolean;
206
+ }) => Promise<ThemeDoc | null | undefined>;
207
+ updateGlobal: (args: {
208
+ slug: string;
209
+ data: ThemeDoc;
210
+ draft?: boolean;
211
+ }) => Promise<unknown>;
212
+ }
213
+ /**
214
+ * Save on a Theme page writes that slice onto the hidden `theme` row.
215
+ * Other children stay as stored.
216
+ */
217
+ declare function persistThemeChild(payload: ThemeStorePayload, incoming: ThemeDoc, child: ThemeChild): Promise<ThemeDoc>;
197
218
  //#endregion
198
219
  //#region src/theme/fields.d.ts
199
220
  declare const THEME_COLOR_FIELD = "@bison-lab/payload-core/admin#ColorField";
@@ -207,7 +228,254 @@ declare const THEME_CONTRAST_REPORT = "@bison-lab/payload-core/admin#ContrastRep
207
228
  declare const THEME_SECTION_HEADING = "@bison-lab/payload-core/admin#SectionHeading";
208
229
  declare const THEME_PUBLISH_FIELD = "@bison-lab/payload-core/admin#PublishChild";
209
230
  declare const THEME_SAVE_BUTTON = "@bison-lab/payload-core/admin#HiddenSaveButton";
231
+ declare const THEME_DOCUMENT_CONTROLS = "@bison-lab/payload-core/admin#ThemeDocumentControls";
210
232
  declare const THEME_IDENTITY_FALLBACK = "@bison-lab/payload-core/admin#IdentityFallback";
233
+ declare const LOOK_FIELD = "@bison-lab/payload-core/admin#LookField";
234
+ //#endregion
235
+ //#region src/roles/global.d.ts
236
+ /**
237
+ * Settings → Roles. Rank is the array order (Payload's drag handle). Ticks
238
+ * are Content, Brand, Publish, Users. The API tab is not a column.
239
+ */
240
+ declare function createRoles(): GlobalConfig;
241
+ //#endregion
242
+ //#region src/roles/types.d.ts
243
+ /**
244
+ * The Roles Global a site's generated types will describe. Optional and
245
+ * nullable, no index signature: a generated Global is assignable to this,
246
+ * never the reverse.
247
+ */
248
+ declare const ROLES: readonly ["developer", "admin", "designer", "author"];
249
+ type Role = (typeof ROLES)[number];
250
+ declare const ROLE_LABELS: Record<Role, string>;
251
+ declare const CAPABILITIES: readonly ["content", "brand", "publish", "users"];
252
+ type Capability = (typeof CAPABILITIES)[number];
253
+ interface RoleRow {
254
+ id?: string | null;
255
+ role: Role;
256
+ content: boolean;
257
+ brand: boolean;
258
+ publish: boolean;
259
+ users: boolean;
260
+ }
261
+ interface RolesDoc {
262
+ roles?: RoleRow[] | null;
263
+ }
264
+ /**
265
+ * `req.user` as Payload hands it over. Structural so this module never
266
+ * imports a site's generated `User`. `roles` is optional because a row
267
+ * that predates the field must come back powerless.
268
+ */
269
+ type MaybeUser = {
270
+ id?: string | number;
271
+ roles?: readonly string[] | null;
272
+ } | null | undefined;
273
+ declare function isRole(value: unknown): value is Role;
274
+ //#endregion
275
+ //#region src/roles/seed.d.ts
276
+ interface SeedRolesPayload {
277
+ updateGlobal: (args: {
278
+ slug: string;
279
+ data: RolesDoc;
280
+ }) => Promise<unknown>;
281
+ }
282
+ /**
283
+ * Writes the default matrix. For a site's migration `up()`. Never writes a
284
+ * user row — seeding `developer` on a person stays a site concern.
285
+ */
286
+ declare function seedRoles(payload: SeedRolesPayload): Promise<unknown>;
287
+ //#endregion
288
+ //#region src/roles/fields.d.ts
289
+ declare const ROLES_MATRIX_FIELD = "@bison-lab/payload-core/admin#RolesMatrixField";
290
+ declare const ROLES_FIELD = "@bison-lab/payload-core/admin#RolesField";
291
+ //#endregion
292
+ //#region src/collections/pages.d.ts
293
+ interface PagesOptions {
294
+ /**
295
+ * What a page may open with. One row, so this is the site's hero variants,
296
+ * not a list a page picks several from.
297
+ */
298
+ heroBlocks: Block[];
299
+ /** The sections a page body can be built out of. */
300
+ layoutBlocks: Block[];
301
+ /**
302
+ * True when a slug is not the CMS's to hand out — a path the app already
303
+ * serves from code, or one the framework reserves.
304
+ */
305
+ isReservedSlug: (slug: string) => boolean;
306
+ /**
307
+ * Public path of a page from its stored slug — the site's own route helper.
308
+ * Drives the page preview overlay's iframe.
309
+ */
310
+ previewPath: (slug: string) => string;
311
+ /**
312
+ * Component path for Payload's native Preview button, as a key into the
313
+ * site's committed `importMap.js`. Omit it for Payload's own button.
314
+ */
315
+ previewButton?: string;
316
+ }
317
+ /**
318
+ * CMS-managed pages: one required hero, then a reorderable body of sections.
319
+ * The CMS owns copy and the order of sections; what a section looks like is
320
+ * code-owned, which is why the blocks are an argument.
321
+ */
322
+ declare function createPages({
323
+ heroBlocks,
324
+ isReservedSlug,
325
+ layoutBlocks,
326
+ previewPath,
327
+ previewButton
328
+ }: PagesOptions): CollectionConfig;
329
+ //#endregion
330
+ //#region src/collections/users.d.ts
331
+ /** Refuses the save that would remove Users from the only privileged user. */
332
+ declare const LAST_ADMIN_DEMOTE_MESSAGE = "Make another user an admin before removing it from this one.";
333
+ /** Refuses the delete that would remove the only privileged user. */
334
+ declare const LAST_ADMIN_DELETE_MESSAGE = "Make another user an admin before deleting this one.";
335
+ interface UsersOptions {
336
+ /**
337
+ * Whether the auth cookie is marked Secure. Passed in rather than read from
338
+ * the environment here: which env var means "served over HTTPS" is the
339
+ * host's business, not the CMS's.
340
+ */
341
+ secureCookies: boolean;
342
+ /**
343
+ * Component path for the roles field, as a key into the site's committed
344
+ * `importMap.js`. Defaults to the package checklist. A value nothing
345
+ * resolves renders the field as nothing.
346
+ */
347
+ rolesField?: string;
348
+ }
349
+ declare function createUsers({
350
+ secureCookies,
351
+ rolesField
352
+ }: UsersOptions): CollectionConfig;
353
+ //#endregion
354
+ //#region src/collections/media.d.ts
355
+ interface MediaOptions {
356
+ /** Where uploads land, relative to the app root. */
357
+ staticDir?: string;
358
+ mimeTypes?: string[];
359
+ /**
360
+ * Renditions sharp cuts on upload, each served at its own URL under
361
+ * `sizes.<name>` on the document. Which sizes a site needs is the site's
362
+ * call. A file uploaded before a size was added has no rendition for it.
363
+ */
364
+ imageSizes?: ImageSize[];
365
+ }
366
+ /**
367
+ * Uploads, readable by anyone: the public site serves these files. Writing is
368
+ * an editorial action, deleting is not — removing an asset a live page
369
+ * references breaks that page.
370
+ */
371
+ declare function createMedia({
372
+ staticDir,
373
+ mimeTypes,
374
+ imageSizes
375
+ }?: MediaOptions): CollectionConfig;
376
+ //#endregion
377
+ //#region src/fields/slug.d.ts
378
+ interface SlugFieldOptions {
379
+ /** The collection the field sits on — what the duplicate check searches. */
380
+ collection: CollectionSlug;
381
+ /**
382
+ * True when a slug belongs to something the CMS does not own: a path the app
383
+ * already serves from code, or one reserved for the framework. Which paths
384
+ * those are is knowable only to the site, so it arrives as an option.
385
+ */
386
+ isReserved: (slug: string) => boolean;
387
+ }
388
+ /**
389
+ * A stored slug from whatever was typed: lowercased, with any run of
390
+ * whitespace and slashes stripped from either end in one pass, so `/ about-us /`
391
+ * does not keep the inner spaces a trim-then-strip would leave.
392
+ */
393
+ declare function normalizeSlug(value: string): string;
394
+ /**
395
+ * The path a document is published at, normalised on the way in. Unique
396
+ * across the collection. `validate` is the message under the field;
397
+ * `beforeChange` is the enforcement on a draft save, where Payload skips
398
+ * field validation.
399
+ */
400
+ declare function slugField({
401
+ collection,
402
+ isReserved
403
+ }: SlugFieldOptions): TextField;
404
+ //#endregion
405
+ //#region src/plugins/admin-only-api-tab.d.ts
406
+ /**
407
+ * Gates the document API tab to Developer, config-wide. After plugins that
408
+ * use `definePlugin` order (MCP is 10), so a collection those plugins
409
+ * register is still covered.
410
+ */
411
+ declare const adminOnlyApiTab: () => payload.Plugin;
412
+ //#endregion
413
+ //#region src/roles/matrix.d.ts
414
+ declare const ROLES_SLUG = "roles";
415
+ /**
416
+ * Default rank and ticks. Brand is Designer only. The API tab is not a
417
+ * column — it is locked to Developer in `isDeveloper`.
418
+ */
419
+ declare const DEFAULT_ROLE_MATRIX: readonly RoleRow[];
420
+ declare const DEVELOPER_DESCRIPTION = "Everything Admin can do, plus the document API tab.";
421
+ declare const LAST_USERS_TICK_MESSAGE = "Keep Users ticked on at least one of Admin or Developer.";
422
+ declare function defaultRolesFieldValue(): RoleRow[];
423
+ declare function parseRolesMatrix(value: unknown): {
424
+ ok: true;
425
+ rows: RoleRow[];
426
+ } | {
427
+ ok: false;
428
+ message: string;
429
+ };
430
+ declare function validateRolesMatrix(value: unknown): true | string;
431
+ /**
432
+ * Developer is exclusive. Admin does not swallow Designer: both store.
433
+ */
434
+ declare function normalizeStoredRoles(value: unknown): Role[];
435
+ declare function roleSelectOptions(matrix?: readonly RoleRow[]): {
436
+ label: string;
437
+ value: "developer" | "admin" | "designer" | "author";
438
+ }[];
439
+ /** Capability copy only. Developer names the API tab; nothing about MCP or seed. */
440
+ declare function roleDescription(role: Role, matrix?: readonly RoleRow[]): string;
441
+ //#endregion
442
+ //#region src/roles/access.d.ts
443
+ type AccessArgs = {
444
+ req: {
445
+ user?: MaybeUser;
446
+ payload?: Pick<NonNullable<PayloadRequest["payload"]>, "findGlobal">;
447
+ };
448
+ };
449
+ type CapabilityPredicate = {
450
+ (user: MaybeUser, matrix?: readonly RoleRow[]): boolean;
451
+ (args: AccessArgs): boolean | Promise<boolean>;
452
+ };
453
+ declare function storedRoles(user: MaybeUser): readonly string[];
454
+ declare function hasRole(user: MaybeUser, role: Role): boolean;
455
+ /** Not a tick. True only when `developer` is stored on the row. */
456
+ declare function isDeveloper(user: MaybeUser): boolean;
457
+ declare function hasCapability(user: MaybeUser, capability: Capability, matrix?: readonly RoleRow[]): boolean;
458
+ /**
459
+ * Reads the saved Roles Global, falling back to the seed when the row is
460
+ * empty, missing, or unreadable. Always override-access so a Designer
461
+ * evaluating Theme does not have to read Settings → Roles.
462
+ */
463
+ declare function getRolesMatrix(req?: AccessArgs["req"]): Promise<RoleRow[]>;
464
+ declare const canManageContent: CapabilityPredicate;
465
+ declare const canManageBrand: CapabilityPredicate;
466
+ declare const canPublish: CapabilityPredicate;
467
+ /** Users tick on any held role. */
468
+ declare const isAdmin: CapabilityPredicate;
469
+ /** This role id currently has the Users tick. */
470
+ declare function isPrivilegedRole(role: unknown, matrix?: readonly RoleRow[]): boolean;
471
+ declare function isAuthenticated(user: MaybeUser): boolean;
472
+ declare function isAuthenticated(args: AccessArgs): boolean;
473
+ declare const isAdminOrSelf: Access;
474
+ declare const authenticatedOrPublished: Access;
475
+ /** API tab condition: Developer only, not the Users tick. */
476
+ declare function isDeveloperTab({
477
+ req
478
+ }: AccessArgs): boolean;
211
479
  //#endregion
212
- export { BRAND_ASSETS_MIME_TYPES, BRAND_ASSETS_SLUG, type CreateBrandAssetsOptions, type CreateThemeOptions, DESCRIPTION_LENGTH, type EditableTheme, type MediaId, type ResolvedThemeIdentity, SHARE_IMAGE_SIZE, SYSTEM_COLOR_KEYS, type SeoDoc, type SeoImageDoc, type SeoImageSize, type SeoImageValue, type SeoMeta, type SeoPluginOptions, type SystemColorKey, THEME_APPEARANCE_FIELD, THEME_COLOR_FIELD, THEME_COLOR_SCALE_FIELD, THEME_CONTRAST_REPORT, THEME_FONT_FIELD, THEME_GREY_SCALE_FIELD, THEME_IDENTITY_FALLBACK, THEME_LIBRARY_FIELD, THEME_PAIRING_FIELD, THEME_PREVIEW_BREAKPOINTS, THEME_PUBLISH_FIELD, THEME_SAVE_BUTTON, THEME_SECTION_HEADING, THEME_SLUG, type ThemeChild, type ThemeColorDoc, type ThemeDoc, type ThemeIdentityFallback, type ThemeLibraryColorDoc, type ThemeUploadDoc, createBrandAssets, createTheme, deleteLibraryColor, documentTitle, firstImageIn, noIndexField, publishThemeChild, resolveThemeIdentity, rewriteColorToken, sanitizeSvg, seedTheme, seoPlugin, themeColorKeys, titleTemplate, truncateAtWord };
480
+ export { BRAND_ASSETS_MIME_TYPES, BRAND_ASSETS_SLUG, CAPABILITIES, type Capability, type CreateBrandAssetsOptions, type CreateThemeOptions, DEFAULT_ROLE_MATRIX, DESCRIPTION_LENGTH, DEVELOPER_DESCRIPTION, type EditableTheme, LAST_ADMIN_DELETE_MESSAGE, LAST_ADMIN_DEMOTE_MESSAGE, LAST_USERS_TICK_MESSAGE, LOOK_FIELD, type LookFieldMode, type LookFieldOptions, type LookOption, type MaybeUser, type MediaId, type MediaOptions, PAGE_EDITOR_SYSTEM_KEYS, type PageEditorSystemKey, type PagesOptions, ROLES, ROLES_FIELD, ROLES_MATRIX_FIELD, ROLES_SLUG, ROLE_LABELS, type ResolvedThemeIdentity, type Role, type RoleRow, type RolesDoc, SHARE_IMAGE_SIZE, SYSTEM_COLOR_KEYS, type SeoDoc, type SeoImageDoc, type SeoImageSize, type SeoImageValue, type SeoMeta, type SeoPluginOptions, type SlugFieldOptions, type SystemColorKey, THEME_APPEARANCE_FIELD, THEME_APPEARANCE_SLUG, THEME_COLORS_SLUG, THEME_COLOR_FIELD, THEME_COLOR_SCALE_FIELD, THEME_CONTRAST_REPORT, THEME_DOCUMENT_CONTROLS, THEME_FONT_FIELD, THEME_GREY_SCALE_FIELD, THEME_IDENTITY_FALLBACK, THEME_IDENTITY_SLUG, THEME_LIBRARY_FIELD, THEME_PAIRING_FIELD, THEME_PREVIEW_BREAKPOINTS, THEME_PUBLISH_FIELD, THEME_SAVE_BUTTON, THEME_SECTION_HEADING, THEME_SLUG, THEME_TYPOGRAPHY_SLUG, type ThemeChild, type ThemeColorDoc, type ThemeDoc, type ThemeIdentityFallback, type ThemeLibraryColorDoc, type ThemeUploadDoc, type UsersOptions, adminOnlyApiTab, authenticatedOrPublished, canManageBrand, canManageContent, canPublish, colorTokenField, createBrandAssets, createMedia, createPages, createRoles, createTheme, createUsers, defaultRolesFieldValue, deleteLibraryColor, documentTitle, firstImageIn, getRolesMatrix, hasCapability, hasRole, isAdmin, isAdminOrSelf, isAuthenticated, isDeveloper, isDeveloperTab, isPrivilegedRole, isRole, lookField, noIndexField, normalizeSlug, normalizeStoredRoles, pageEditorLooks, pageEditorTokens, parseRolesMatrix, persistThemeChild, publishThemeChild, resolveThemeIdentity, rewriteColorToken, roleDescription, roleSelectOptions, sanitizeSvg, seedRoles, seedTheme, seoPlugin, slugField, storedRoles, themeColorKeys, themeLibraryFromDoc, titleTemplate, truncateAtWord, validateRolesMatrix };
213
481
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/seo/plugin.ts","../src/seo/fields.ts","../src/seo/share-image.ts","../src/seo/text.ts","../src/theme/global.ts","../src/brand-assets/collection.ts","../src/brand-assets/sanitize.ts","../src/theme/seed.ts","../src/theme/preview.ts","../src/theme/publish.ts","../src/theme/fields.ts"],"mappings":";;;;;;;;;;AAoBA;;UAAiB,MAAA;EACf,KAAA;AAAA;AAAA,UAGe,gBAAA,cAA8B,MAAA,GAAS,MAAA;EAAvB;EAE/B,QAAA;EAF6C;;;;;;EAS7C,MAAA,GAAS,GAAA,EAAK,IAAA;EAiBM;;;;;EAXpB,YAAA,IAAgB,GAAA,EAAK,IAAA;EAbrB;;;;;;EAoBA,QAAA,IAAY,GAAA,EAAK,IAAA,KAAS,OAAA;EAA1B;EAEA,WAAA,GAAc,cAAA;EAFF;EAIZ,iBAAA,GAAoB,oBAAA;AAAA;;;;;;AAetB;;;;;;;iBAAgB,SAAA,cAAuB,MAAA,GAAS,MAAA,CAAA,CAAA;EAC9C,QAAA;EACA,MAAA;EACA,YAAA;EACA,QAAA;EACA,WAAA;EACA;AAAA,GACC,gBAAA,CAAiB,IAAA,IAAQ,MAAA;;;;;;;iBA6BZ,YAAA,CACd,MAAA,WACA,KAAA,YACC,OAAA;;;;;;;;cCjGU,YAAA,EAAc,aAAA;;;;;;;;;ADa3B;;cEVa,gBAAA;;;;;;;;;cCTA,kBAAA;;;;;AHmBb;;iBGXgB,cAAA,CAAe,IAAA,UAAc,GAAA;;;;;;;AHW7C;;iBIoJgB,WAAA,CAAY,OAAA,EAAS,kBAAA,GAAqB,YAAA;;;cCpK7C,iBAAA;;cAGA,uBAAA;AAAA,UAOI,wBAAA;;ALMjB;;;;;EKCE,MAAA;IAAU,IAAA,EAAM,MAAA;IAAQ,MAAA,EAAQ,MAAA;EAAA;ELGsB;EKDtD,IAAA;AAAA;;;;;;iBAmBc,iBAAA,CAAkB,OAAA,EAAS,wBAAA,GAA2B,gBAAA;;;;;;;;;iBClCtD,WAAA,CAAY,MAAA;;;UCFX,gBAAA;EACf,YAAA,GAAe,IAAA;IACb,IAAA;IACA,IAAA,EAAM,QAAA;IACN,KAAA;EAAA,MACI,OAAA;AAAA;;;APaR;;iBONsB,SAAA,CAAU,OAAA,EAAS,gBAAA,EAAkB,IAAA,EAAM,WAAA,GAAc,OAAA;;;;;;;cCdlE,yBAAA;EAAA;;;;;;;;;;;;;;;;;cCFA,cAAA;AAAA,KAED,UAAA,WAAqB,cAAA;;;;ATgBjC;;;;iBSPgB,iBAAA,CAAkB,MAAA,EAAQ,QAAA,EAAU,QAAA,EAAU,QAAA,EAAU,KAAA,EAAO,UAAA,GAAa,QAAA;;;cCT/E,iBAAA;AAAA,cACA,uBAAA;AAAA,cACA,mBAAA;AAAA,cACA,gBAAA;AAAA,cACA,mBAAA;AAAA,cACA,sBAAA;AAAA,cACA,sBAAA;AAAA,cACA,qBAAA;AAAA,cACA,qBAAA;AAAA,cACA,mBAAA;AAAA,cACA,iBAAA;AAAA,cACA,uBAAA"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/seo/plugin.ts","../src/seo/fields.ts","../src/seo/share-image.ts","../src/seo/text.ts","../src/theme/global.ts","../src/brand-assets/collection.ts","../src/brand-assets/sanitize.ts","../src/theme/seed.ts","../src/theme/preview.ts","../src/theme/publish.ts","../src/theme/fields.ts","../src/roles/global.ts","../src/roles/types.ts","../src/roles/seed.ts","../src/roles/fields.ts","../src/collections/pages.ts","../src/collections/users.ts","../src/collections/media.ts","../src/fields/slug.ts","../src/plugins/admin-only-api-tab.ts","../src/roles/matrix.ts","../src/roles/access.ts"],"mappings":"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"}