@easy-cms/core 1.7.0 → 1.8.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/{chunk-AVUGFJ4Q.js → chunk-CB2FT4WA.js} +15 -3
- package/dist/conditions.d.ts +2 -1
- package/dist/{config-CzW6kBeb.d.ts → config-zh7mTozB.d.ts} +28 -1
- package/dist/{handler-BsBQ-2qf.d.ts → handler-CVBEpaJ6.d.ts} +3 -2
- package/dist/index.d.ts +6 -5
- package/dist/index.js +1 -1
- package/dist/internal.d.ts +5 -4
- package/dist/internal.js +1 -1
- package/dist/live-preview.d.ts +2 -1
- package/dist/{plugin-BmKxHxuu.d.ts → plugin-uSB31Kh0.d.ts} +3 -2
- package/dist/plugin.d.ts +2 -2
- package/package.json +1 -1
|
@@ -4426,7 +4426,7 @@ function read(response, maxBytes, deadline) {
|
|
|
4426
4426
|
var keys = (list) => new Set(list.split(/\s+/).filter(Boolean));
|
|
4427
4427
|
var CONFIG = keys(`secret db serverURL cors cronSecret timeZone webhooks events jobs localization routes admin
|
|
4428
4428
|
upload auth collections globals endpoints cliCommands onRequest fieldTypes apiKeys email backups
|
|
4429
|
-
audit logs plugins`);
|
|
4429
|
+
audit logs countCacheSeconds plugins`);
|
|
4430
4430
|
var ADMIN = keys("path locale brand siteURL nav commands modules pages dashboard switcher");
|
|
4431
4431
|
var AUTH = keys(`roles rbac tokenExpiration maxLoginAttempts lockWindow trustedOrigins
|
|
4432
4432
|
resetPasswordExpiration inviteExpiration providers providerSignUp password setupCode members emails`);
|
|
@@ -4888,6 +4888,7 @@ function validateConfig(config) {
|
|
|
4888
4888
|
validateBackups(config, add, (issue) => issues.push(issue));
|
|
4889
4889
|
validateAudit(config, add);
|
|
4890
4890
|
validateLogs(config, add);
|
|
4891
|
+
validateCountCache(config, add);
|
|
4891
4892
|
validateAuth(config, add);
|
|
4892
4893
|
validateCors(config.cors, add);
|
|
4893
4894
|
validateLocalization(config, add);
|
|
@@ -5510,6 +5511,11 @@ function validateUpload(config, add) {
|
|
|
5510
5511
|
var FOLDER_KEY = /^[a-z0-9][a-z0-9_-]{0,59}$/;
|
|
5511
5512
|
var MIME_PATTERN = /^([\w.+-]+\/(\*|[\w.+-]+)|documents|office|archives)$/i;
|
|
5512
5513
|
var HOST_PATTERN = /^(\*|(\*\.)?[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*)$/i;
|
|
5514
|
+
function validateCountCache(config, add) {
|
|
5515
|
+
const seconds = config.countCacheSeconds;
|
|
5516
|
+
if (seconds !== void 0 && !(typeof seconds === "number" && Number.isFinite(seconds) && seconds >= 0))
|
|
5517
|
+
add("countCacheSeconds", "must be a number of seconds, 0 or more");
|
|
5518
|
+
}
|
|
5513
5519
|
function validateLogs(config, add) {
|
|
5514
5520
|
const logs = config.logs;
|
|
5515
5521
|
if (logs === void 0) return;
|
|
@@ -6534,7 +6540,9 @@ var EasyCMS = class {
|
|
|
6534
6540
|
locale === ALL_LOCALES ? this.config.localization?.defaultLocale ?? locale : locale,
|
|
6535
6541
|
this.config.localization?.locales ?? []
|
|
6536
6542
|
);
|
|
6537
|
-
const
|
|
6543
|
+
const args = { collection: collection2, where, sort, limit, page };
|
|
6544
|
+
const count = options.count !== false || limit === 0;
|
|
6545
|
+
const result = count ? await this.db.find(args) : this.db.findPage ? await this.db.findPage(args) : { ...await this.db.find(args), totalDocs: null, totalPages: null };
|
|
6538
6546
|
const found = draft ? await this.withDrafts(config, result.docs) : result.docs;
|
|
6539
6547
|
const docs = await this.output(config, found, guard, { ...options, draft });
|
|
6540
6548
|
return { ...result, docs };
|
|
@@ -9806,7 +9814,7 @@ async function readAdminModule(cms, index) {
|
|
|
9806
9814
|
}
|
|
9807
9815
|
|
|
9808
9816
|
// src/version.ts
|
|
9809
|
-
var VERSION = true ? "1.
|
|
9817
|
+
var VERSION = true ? "1.8.0" : "0.0.0-dev";
|
|
9810
9818
|
|
|
9811
9819
|
// src/rest/handler.ts
|
|
9812
9820
|
import { randomUUID as randomUUID4 } from "crypto";
|
|
@@ -10695,6 +10703,10 @@ function parseListQuery(url) {
|
|
|
10695
10703
|
if (sort) query.sort = sort;
|
|
10696
10704
|
const depth = integer("depth", params.depth, 0, 3);
|
|
10697
10705
|
if (depth !== void 0) query.depth = depth;
|
|
10706
|
+
if (params.count !== void 0 && params.count !== "true") {
|
|
10707
|
+
if (params.count !== "false") throw new QueryError("count must be true or false");
|
|
10708
|
+
query.count = false;
|
|
10709
|
+
}
|
|
10698
10710
|
return query;
|
|
10699
10711
|
}
|
|
10700
10712
|
function parseDepth(url) {
|
package/dist/conditions.d.ts
CHANGED
|
@@ -30,4 +30,5 @@ declare function matchesCondition(condition: FieldCondition, data: Data): boolea
|
|
|
30
30
|
/** Problems with a condition, for the config's checks; `[]` when it's fine. */
|
|
31
31
|
declare function conditionIssues(condition: unknown, siblings: readonly string[]): string[];
|
|
32
32
|
|
|
33
|
-
export {
|
|
33
|
+
export { conditionIssues, matchesCondition };
|
|
34
|
+
export type { FieldCondition };
|
|
@@ -136,6 +136,11 @@ interface PaginatedDocs<T> {
|
|
|
136
136
|
hasNextPage: boolean;
|
|
137
137
|
hasPrevPage: boolean;
|
|
138
138
|
}
|
|
139
|
+
/** A page read with `count: false`: no totals, which saves counting every matching document. */
|
|
140
|
+
interface UncountedDocs<T> extends Omit<PaginatedDocs<T>, 'totalDocs' | 'totalPages'> {
|
|
141
|
+
totalDocs: null;
|
|
142
|
+
totalPages: null;
|
|
143
|
+
}
|
|
139
144
|
/**
|
|
140
145
|
* How the adapter treats the database schema on startup.
|
|
141
146
|
* - `push`: apply schema changes directly (development).
|
|
@@ -173,6 +178,11 @@ interface CreateMigrationResult {
|
|
|
173
178
|
/** A connected database bound to one config. Returned by `DatabaseAdapter.init`. */
|
|
174
179
|
interface Database {
|
|
175
180
|
find(args: FindArgs): Promise<PaginatedDocs<RawDocument>>;
|
|
181
|
+
/**
|
|
182
|
+
* A page without counting the matching documents (`find` with `count: false`): `hasNextPage`
|
|
183
|
+
* from one row more. Optional: without it, `find` runs and its totals are dropped.
|
|
184
|
+
*/
|
|
185
|
+
findPage?(args: FindArgs): Promise<UncountedDocs<RawDocument>>;
|
|
176
186
|
findById(args: {
|
|
177
187
|
collection: string;
|
|
178
188
|
id: ID;
|
|
@@ -1670,6 +1680,11 @@ interface FindOptions extends ReadOptions {
|
|
|
1670
1680
|
readonly limit?: number;
|
|
1671
1681
|
/** 1-based. Default 1. */
|
|
1672
1682
|
readonly page?: number;
|
|
1683
|
+
/**
|
|
1684
|
+
* `false` skips counting the matching documents: `totalDocs` and `totalPages` are `null`, and
|
|
1685
|
+
* `hasNextPage` still says whether there is more. Default `true`.
|
|
1686
|
+
*/
|
|
1687
|
+
readonly count?: boolean;
|
|
1673
1688
|
}
|
|
1674
1689
|
interface CreateEasyCMSOptions {
|
|
1675
1690
|
/** Project root. Default `process.cwd()`. */
|
|
@@ -1731,6 +1746,10 @@ declare class EasyCMS<C extends Config = Config> {
|
|
|
1731
1746
|
user: AuthUser | null;
|
|
1732
1747
|
context: RequestContext;
|
|
1733
1748
|
}>;
|
|
1749
|
+
find<S extends Slug<C>, L extends string | undefined = undefined>(collection: S, options: FindOptions & {
|
|
1750
|
+
readonly locale?: L;
|
|
1751
|
+
readonly count: false;
|
|
1752
|
+
}): Promise<UncountedDocs<Doc<C, S, L>>>;
|
|
1734
1753
|
find<S extends Slug<C>, L extends string | undefined = undefined>(collection: S, options?: FindOptions & {
|
|
1735
1754
|
readonly locale?: L;
|
|
1736
1755
|
}): Promise<PaginatedDocs<Doc<C, S, L>>>;
|
|
@@ -3308,6 +3327,13 @@ interface Config {
|
|
|
3308
3327
|
* request id. Ignored when `createEasyCMS` is given a `logger`.
|
|
3309
3328
|
*/
|
|
3310
3329
|
readonly logs?: LogsConfig;
|
|
3330
|
+
/**
|
|
3331
|
+
* How long, in seconds, the total of a paginated list (`totalDocs`, `totalPages`) is reused for
|
|
3332
|
+
* the same query. Counting reads every matching document, and many people open the same lists.
|
|
3333
|
+
* The documents themselves are always current; a total can be this old. `0` counts every time.
|
|
3334
|
+
* Default 5.
|
|
3335
|
+
*/
|
|
3336
|
+
readonly countCacheSeconds?: number;
|
|
3311
3337
|
readonly plugins?: readonly Plugin[];
|
|
3312
3338
|
}
|
|
3313
3339
|
/** The config after plugins ran, validation passed and defaults were applied. */
|
|
@@ -3339,4 +3365,5 @@ interface ResolvedConfig extends Omit<Config, 'cors' | 'localization' | 'routes'
|
|
|
3339
3365
|
*/
|
|
3340
3366
|
declare function defineConfig<const TConfig extends Config>(config: TConfig): TConfig;
|
|
3341
3367
|
|
|
3342
|
-
export {
|
|
3368
|
+
export { ADAPTER_API_VERSION as A, AuditLog as J, Auth as M, ADMIN_ICONS as a, FIELD_TYPES as aC, ForbiddenError as aY, ConfigError as ac, EasyCMS as au, EasyCMSError as av, QueryError as bF, ROLE_OPERATIONS as bG, Roles as bR, SchemaError as bU, NotFoundError as bp, PLUGIN_API_VERSION as bu, PayloadTooLargeError as bz, SingleSignOn as c0, TooManyRequestsError as c9, diskStorage as cA, hasRows as cB, isAdmin as cC, isHasMany as cD, isSignedIn as cE, isStaff as cF, isSystemAdmin as cG, jsonLogger as cH, mimeAllowedBy as cI, rowFields as cJ, silentLogger as cK, uniqueWithinOf as cL, API_KEYS as cM, API_KEY_GLOBAL_OPERATIONS as cN, API_KEY_OPERATIONS as cO, DEFAULT_MAX_VERSIONS as cP, DEFAULT_PASSWORD_EMAILS as cQ, FIELD_TYPE_BASES as cR, FOLDER_LEVELS as cS, MediaFolders as cT, SSO_COOKIE as cU, codeOfStatus as cV, isJsonLogger as cW, keyAllows as cX, logFormat as cY, UnauthorizedError as cb, ValidationError as cj, WEBHOOK_EVENTS as cn, anyone as ct, consoleEmail as cu, consoleLogger as cv, createEasyCMS as cw, defineConfig as cx, defineFieldType as cy, definePlugin as cz };
|
|
3369
|
+
export type { BuiltinMediaCollection as $, ApiKeyOperation as B, ApiKeyPermissions as C, ArrayField as D, EmailSetting as E, AuditChange as F, AuditConfig as G, AuditEntry as H, ID as I, AuditPage as K, AuditVerification as L, AuthConfig as N, AuthProvider as O, PaginatedDocs as P, AuthProviderProfile as Q, AuthProviderRequest as R, AuthUser as S, BackupsConfig as T, BeforeChangeHook as U, BeforeDeleteHook as V, BeforeValidateHook as W, Block as X, BlocksField as Y, BooleanField as Z, BuiltinApiKeysCollection as _, GlobalDocument as a$, BuiltinMediaFoldersCollection as a0, BuiltinUsersCollection as a1, BundleHints as a2, CliCommand as a3, CollectionAccess as a4, CollectionAdmin as a5, CollectionConfig as a6, CollectionDocument as a7, CollectionHooks as a8, CollectionListAdmin as a9, EndpointRequest as aA, ErrorCode as aB, Field as aD, FieldAccess as aE, FieldAccessFn as aF, FieldAdmin as aG, FieldError as aH, FieldRule as aI, FieldType as aJ, FieldTypeBase as aK, FieldTypeDefinition as aL, FieldTypeValidateContext as aM, FieldValidate as aN, FieldValidateContext as aO, FieldValue as aP, FieldsInput as aQ, FieldsValue as aR, FilterOptions as aS, FilterOptionsArgs as aT, FindArgs as aU, FindOptions as aV, FolderLevel as aW, FolderPermissions as aX, GlobalAccess as aZ, GlobalConfig as a_, CollectionSlug as aa, Config as ab, ConfigIssue as ad, ContainerAdmin as ae, CreateEasyCMSOptions as af, CreateInput as ag, CreateMigrationResult as ah, CustomField as ai, CustomFieldTypes as aj, DashboardWidget as ak, Database as al, DatabaseAdapter as am, DatabaseInitArgs as an, DatabaseTransfer as ao, DateField as ap, DepthOptions as aq, DirectUpload as ar, DiskStorageOptions as as, DocumentOf as at, EmailAdapter as aw, EmailField as ax, EmailMessage as ay, Endpoint as az, Access as b, SignupResult as b$, GlobalHooks as b0, GlobalInput as b1, GlobalSlug as b2, GroupField as b3, ImageSize as b4, IncrementOptions as b5, InferCollection as b6, InferGlobal as b7, JobConfig as b8, JsonField as b9, Plugin as bA, PluginInfo as bB, PluginTypes as bC, PreviewTarget as bD, PreviewURL as bE, RawDocument as bH, ReadOptions as bI, RelationshipField as bJ, RequestContext as bK, ResolvedConfig as bL, RichTextDocument as bM, RichTextField as bN, Role as bO, RoleOperation as bP, RolePermissions as bQ, RoutesConfig as bS, ScheduledPublish as bT, SchemaMode as bV, SelectField as bW, SelectOption as bX, Session as bY, SidebarPanel as bZ, SignupArgs as b_, Label as ba, LayoutNode as bb, LivePreview as bc, LocaleOf as bd, LocalizationConfig as be, LogDetails as bf, Logger as bg, LoginArgs as bh, LogsConfig as bi, MediaDocument as bj, MediaSize as bk, MembersConfig as bl, MembersSignup as bm, MigrationInfo as bn, NavGroup as bo, NumberField as bq, OnRequest as br, OnRequestArgs as bs, Operation as bt, PasswordEmail as bv, PasswordEmailArgs as bw, PasswordEmailFn as bx, PasswordLinkOptions as by, AccessArgs as c, SlugField as c1, SlugOf as c2, SsoOutcome as c3, SsoProviderRef as c4, StorageAdapter as c5, StoredFile as c6, TextField as c7, TextareaField as c8, TypedPlugin as ca, UncountedDocs as cc, UpdateInput as cd, UpdateOptions as ce, UploadConfig as cf, UploadField as cg, UploadFromURLConfig as ch, UserIdentity as ci, Version as ck, VersionSummary as cl, VersionsConfig as cm, WebhookConfig as co, WebhookEvent as cp, WebhookPayload as cq, Where as cr, WhereOperators as cs, AccessOptions as d, AdminBrand as e, AdminCommand as f, AdminComponent as g, AdminConfig as h, AdminFieldArgs as i, AdminIcon as j, AdminLocale as k, AdminPage as l, AdminRole as m, AdminRoleChange as n, AdminRoleField as o, AdminRoleTarget as p, AdminRoleView as q, AdminRoles as r, AdminSso as s, AdminSwitcher as t, AdminViewAccess as u, AfterChangeHook as v, AfterDeleteHook as w, AfterReadHook as x, ApiKeyContext as y, ApiKeyGlobalOperation as z };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { I as ID, ab as Config, au as EasyCMS, be as LocalizationConfig, aD as Field, aH as FieldError, aS as FilterOptions, af as CreateEasyCMSOptions, bL as ResolvedConfig } from './config-
|
|
1
|
+
import { I as ID, ab as Config, au as EasyCMS, be as LocalizationConfig, aD as Field, aH as FieldError, aS as FilterOptions, af as CreateEasyCMSOptions, bL as ResolvedConfig } from './config-zh7mTozB.js';
|
|
2
2
|
|
|
3
3
|
/** Decrypts a file from `encryptBackup`; throws for another key or a changed file. */
|
|
4
4
|
declare function decryptBackup(data: Uint8Array, encryptionKey: string): Uint8Array;
|
|
@@ -193,4 +193,5 @@ declare function createRootEndpointHandler<C extends Config>(instance: EasyCMS<C
|
|
|
193
193
|
/** A cookie of the request; the `__Host-` one (set over HTTPS) first. */
|
|
194
194
|
declare function readCookie(request: Request, name: string): string | undefined;
|
|
195
195
|
|
|
196
|
-
export {
|
|
196
|
+
export { CONFIG_FILE_NAMES as C, DEFAULT_ADMIN_PATH as D, readCookie as E, validateFields as F, writeBackupFile as G, createApiHandler as d, createRestHandler as e, slugify as f, CSRF_COOKIE as g, CSRF_HEADER as h, DEFAULT_API_PATH as i, DEFAULT_MAX_FILE_SIZE as j, DEFAULT_TOKEN_EXPIRATION as k, loadConfig as l, applyDefaults as m, applyPlugins as n, createRootEndpointHandler as o, decryptBackup as p, fillMissing as q, resolveConfig as r, sharedEasyCMS as s, findConfigFile as t, forwardedClientIp as u, generateSlugs as v, importConfig as w, mergeForUpdate as x, parseId as y, platformClientIp as z };
|
|
197
|
+
export type { AdminBackup as A, BackupState as B, LoadConfigOptions as L, RestHandler as R, AdminBackups as a, ApiHandlerOptions as b, RestHandlerOptions as c };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { P as PaginatedDocs, I as ID, E as EmailSetting } from './config-
|
|
2
|
-
export { A as ADAPTER_API_VERSION, a as ADMIN_ICONS, b as Access, c as AccessArgs, d as AccessOptions, e as AdminBrand, f as AdminCommand, g as AdminComponent, h as AdminConfig, i as AdminFieldArgs, j as AdminIcon, k as AdminLocale, l as AdminPage, m as AdminRole, n as AdminRoleChange, o as AdminRoleField, p as AdminRoleTarget, q as AdminRoleView, r as AdminRoles, s as AdminSso, t as AdminSwitcher, u as AdminViewAccess, v as AfterChangeHook, w as AfterDeleteHook, x as AfterReadHook, y as ApiKeyContext, z as ApiKeyGlobalOperation, B as ApiKeyOperation, C as ApiKeyPermissions, D as ArrayField, F as AuditChange, G as AuditConfig, H as AuditEntry, J as AuditLog, K as AuditPage, L as AuditVerification, M as Auth, N as AuthConfig, O as AuthProvider, Q as AuthProviderProfile, R as AuthProviderRequest, S as AuthUser, T as BackupsConfig, U as BeforeChangeHook, V as BeforeDeleteHook, W as BeforeValidateHook, X as Block, Y as BlocksField, Z as BooleanField, _ as BuiltinApiKeysCollection, $ as BuiltinMediaCollection, a0 as BuiltinMediaFoldersCollection, a1 as BuiltinUsersCollection, a2 as BundleHints, a3 as CliCommand, a4 as CollectionAccess, a5 as CollectionAdmin, a6 as CollectionConfig, a7 as CollectionDocument, a8 as CollectionHooks, a9 as CollectionListAdmin, aa as CollectionSlug, ab as Config, ac as ConfigError, ad as ConfigIssue, ae as ContainerAdmin, af as CreateEasyCMSOptions, ag as CreateInput, ah as CreateMigrationResult, ai as CustomField, aj as CustomFieldTypes, ak as DashboardWidget, al as Database, am as DatabaseAdapter, an as DatabaseInitArgs, ao as DatabaseTransfer, ap as DateField, aq as DepthOptions, ar as DirectUpload, as as DiskStorageOptions, at as DocumentOf, au as EasyCMS, av as EasyCMSError, aw as EmailAdapter, ax as EmailField, ay as EmailMessage, az as Endpoint, aA as EndpointRequest, aB as ErrorCode, aC as FIELD_TYPES, aD as Field, aE as FieldAccess, aF as FieldAccessFn, aG as FieldAdmin, aH as FieldError, aI as FieldRule, aJ as FieldType, aK as FieldTypeBase, aL as FieldTypeDefinition, aM as FieldTypeValidateContext, aN as FieldValidate, aO as FieldValidateContext, aP as FieldValue, aQ as FieldsInput, aR as FieldsValue, aS as FilterOptions, aT as FilterOptionsArgs, aU as FindArgs, aV as FindOptions, aW as FolderLevel, aX as FolderPermissions, aY as ForbiddenError, aZ as GlobalAccess, a_ as GlobalConfig, a$ as GlobalDocument, b0 as GlobalHooks, b1 as GlobalInput, b2 as GlobalSlug, b3 as GroupField, b4 as ImageSize, b5 as IncrementOptions, b6 as InferCollection, b7 as InferGlobal, b8 as JobConfig, b9 as JsonField, ba as Label, bb as LayoutNode, bc as LivePreview, bd as LocaleOf, be as LocalizationConfig, bf as LogDetails, bg as Logger, bh as LoginArgs, bi as LogsConfig, bj as MediaDocument, bk as MediaSize, bl as MembersConfig, bm as MembersSignup, bn as MigrationInfo, bo as NavGroup, bp as NotFoundError, bq as NumberField, br as OnRequest, bs as OnRequestArgs, bt as Operation, bu as PLUGIN_API_VERSION, bv as PasswordEmail, bw as PasswordEmailArgs, bx as PasswordEmailFn, by as PasswordLinkOptions, bz as PayloadTooLargeError, bA as Plugin, bB as PluginInfo, bC as PluginTypes, bD as PreviewTarget, bE as PreviewURL, bF as QueryError, bG as ROLE_OPERATIONS, bH as RawDocument, bI as ReadOptions, bJ as RelationshipField, bK as RequestContext, bL as ResolvedConfig, bM as RichTextDocument, bN as RichTextField, bO as Role, bP as RoleOperation, bQ as RolePermissions, bR as Roles, bS as RoutesConfig, bT as ScheduledPublish, bU as SchemaError, bV as SchemaMode, bW as SelectField, bX as SelectOption, bY as Session, bZ as SidebarPanel, b_ as SignupArgs, b$ as SignupResult, c0 as SingleSignOn, c1 as SlugField, c2 as SlugOf, c3 as SsoOutcome, c4 as SsoProviderRef, c5 as StorageAdapter, c6 as StoredFile, c7 as TextField, c8 as TextareaField, c9 as TooManyRequestsError, ca as TypedPlugin, cb as UnauthorizedError, cc as
|
|
3
|
-
export { A as ADMIN_API_VERSION, a as AdminCollection, b as AdminComponentRef, c as AdminElementProps, d as AdminField, e as AdminGlobal, f as AdminLayoutNode, g as AdminNavGroup, h as AdminNavItem, i as AdminNavNode, j as AdminPageRef, k as AdminPageRoute, l as AdminSchema, m as AdminWidgetRef, S as SetFieldDetail, w as warnDeprecated } from './plugin-
|
|
4
|
-
export { A as AdminBackup, a as AdminBackups, b as ApiHandlerOptions, B as BackupState, L as LoadConfigOptions, R as RestHandler, c as RestHandlerOptions, d as createApiHandler, e as createRestHandler, l as loadConfig, r as resolveConfig, s as sharedEasyCMS, f as slugify } from './handler-
|
|
1
|
+
import { P as PaginatedDocs, I as ID, E as EmailSetting } from './config-zh7mTozB.js';
|
|
2
|
+
export { A as ADAPTER_API_VERSION, a as ADMIN_ICONS, b as Access, c as AccessArgs, d as AccessOptions, e as AdminBrand, f as AdminCommand, g as AdminComponent, h as AdminConfig, i as AdminFieldArgs, j as AdminIcon, k as AdminLocale, l as AdminPage, m as AdminRole, n as AdminRoleChange, o as AdminRoleField, p as AdminRoleTarget, q as AdminRoleView, r as AdminRoles, s as AdminSso, t as AdminSwitcher, u as AdminViewAccess, v as AfterChangeHook, w as AfterDeleteHook, x as AfterReadHook, y as ApiKeyContext, z as ApiKeyGlobalOperation, B as ApiKeyOperation, C as ApiKeyPermissions, D as ArrayField, F as AuditChange, G as AuditConfig, H as AuditEntry, J as AuditLog, K as AuditPage, L as AuditVerification, M as Auth, N as AuthConfig, O as AuthProvider, Q as AuthProviderProfile, R as AuthProviderRequest, S as AuthUser, T as BackupsConfig, U as BeforeChangeHook, V as BeforeDeleteHook, W as BeforeValidateHook, X as Block, Y as BlocksField, Z as BooleanField, _ as BuiltinApiKeysCollection, $ as BuiltinMediaCollection, a0 as BuiltinMediaFoldersCollection, a1 as BuiltinUsersCollection, a2 as BundleHints, a3 as CliCommand, a4 as CollectionAccess, a5 as CollectionAdmin, a6 as CollectionConfig, a7 as CollectionDocument, a8 as CollectionHooks, a9 as CollectionListAdmin, aa as CollectionSlug, ab as Config, ac as ConfigError, ad as ConfigIssue, ae as ContainerAdmin, af as CreateEasyCMSOptions, ag as CreateInput, ah as CreateMigrationResult, ai as CustomField, aj as CustomFieldTypes, ak as DashboardWidget, al as Database, am as DatabaseAdapter, an as DatabaseInitArgs, ao as DatabaseTransfer, ap as DateField, aq as DepthOptions, ar as DirectUpload, as as DiskStorageOptions, at as DocumentOf, au as EasyCMS, av as EasyCMSError, aw as EmailAdapter, ax as EmailField, ay as EmailMessage, az as Endpoint, aA as EndpointRequest, aB as ErrorCode, aC as FIELD_TYPES, aD as Field, aE as FieldAccess, aF as FieldAccessFn, aG as FieldAdmin, aH as FieldError, aI as FieldRule, aJ as FieldType, aK as FieldTypeBase, aL as FieldTypeDefinition, aM as FieldTypeValidateContext, aN as FieldValidate, aO as FieldValidateContext, aP as FieldValue, aQ as FieldsInput, aR as FieldsValue, aS as FilterOptions, aT as FilterOptionsArgs, aU as FindArgs, aV as FindOptions, aW as FolderLevel, aX as FolderPermissions, aY as ForbiddenError, aZ as GlobalAccess, a_ as GlobalConfig, a$ as GlobalDocument, b0 as GlobalHooks, b1 as GlobalInput, b2 as GlobalSlug, b3 as GroupField, b4 as ImageSize, b5 as IncrementOptions, b6 as InferCollection, b7 as InferGlobal, b8 as JobConfig, b9 as JsonField, ba as Label, bb as LayoutNode, bc as LivePreview, bd as LocaleOf, be as LocalizationConfig, bf as LogDetails, bg as Logger, bh as LoginArgs, bi as LogsConfig, bj as MediaDocument, bk as MediaSize, bl as MembersConfig, bm as MembersSignup, bn as MigrationInfo, bo as NavGroup, bp as NotFoundError, bq as NumberField, br as OnRequest, bs as OnRequestArgs, bt as Operation, bu as PLUGIN_API_VERSION, bv as PasswordEmail, bw as PasswordEmailArgs, bx as PasswordEmailFn, by as PasswordLinkOptions, bz as PayloadTooLargeError, bA as Plugin, bB as PluginInfo, bC as PluginTypes, bD as PreviewTarget, bE as PreviewURL, bF as QueryError, bG as ROLE_OPERATIONS, bH as RawDocument, bI as ReadOptions, bJ as RelationshipField, bK as RequestContext, bL as ResolvedConfig, bM as RichTextDocument, bN as RichTextField, bO as Role, bP as RoleOperation, bQ as RolePermissions, bR as Roles, bS as RoutesConfig, bT as ScheduledPublish, bU as SchemaError, bV as SchemaMode, bW as SelectField, bX as SelectOption, bY as Session, bZ as SidebarPanel, b_ as SignupArgs, b$ as SignupResult, c0 as SingleSignOn, c1 as SlugField, c2 as SlugOf, c3 as SsoOutcome, c4 as SsoProviderRef, c5 as StorageAdapter, c6 as StoredFile, c7 as TextField, c8 as TextareaField, c9 as TooManyRequestsError, ca as TypedPlugin, cb as UnauthorizedError, cc as UncountedDocs, cd as UpdateInput, ce as UpdateOptions, cf as UploadConfig, cg as UploadField, ch as UploadFromURLConfig, ci as UserIdentity, cj as ValidationError, ck as Version, cl as VersionSummary, cm as VersionsConfig, cn as WEBHOOK_EVENTS, co as WebhookConfig, cp as WebhookEvent, cq as WebhookPayload, cr as Where, cs as WhereOperators, ct as anyone, cu as consoleEmail, cv as consoleLogger, cw as createEasyCMS, cx as defineConfig, cy as defineFieldType, cz as definePlugin, cA as diskStorage, cB as hasRows, cC as isAdmin, cD as isHasMany, cE as isSignedIn, cF as isStaff, cG as isSystemAdmin, cH as jsonLogger, cI as mimeAllowedBy, cJ as rowFields, cK as silentLogger, cL as uniqueWithinOf } from './config-zh7mTozB.js';
|
|
3
|
+
export { A as ADMIN_API_VERSION, a as AdminCollection, b as AdminComponentRef, c as AdminElementProps, d as AdminField, e as AdminGlobal, f as AdminLayoutNode, g as AdminNavGroup, h as AdminNavItem, i as AdminNavNode, j as AdminPageRef, k as AdminPageRoute, l as AdminSchema, m as AdminWidgetRef, S as SetFieldDetail, w as warnDeprecated } from './plugin-uSB31Kh0.js';
|
|
4
|
+
export { A as AdminBackup, a as AdminBackups, b as ApiHandlerOptions, B as BackupState, L as LoadConfigOptions, R as RestHandler, c as RestHandlerOptions, d as createApiHandler, e as createRestHandler, l as loadConfig, r as resolveConfig, s as sharedEasyCMS, f as slugify } from './handler-CVBEpaJ6.js';
|
|
5
5
|
export { FieldCondition, matchesCondition } from './conditions.js';
|
|
6
6
|
|
|
7
7
|
type DeliveryKind = 'webhook' | 'email';
|
|
@@ -221,4 +221,5 @@ interface AdminStatus {
|
|
|
221
221
|
/** The version of `@easy-cms/core`, set when the package is built. */
|
|
222
222
|
declare const VERSION: string;
|
|
223
223
|
|
|
224
|
-
export {
|
|
224
|
+
export { EmailSetting, ID, PaginatedDocs, VERSION };
|
|
225
|
+
export type { AdminAttention, AdminDeliveries, AdminDelivery, AdminEmail, AdminEmailDelivery, AdminJob, AdminJobs, AdminScheduledJob, AdminStatus, AdminWebhookDelivery, BuiltInJob, DeliveryKind, DeliveryState, EmailCheck, SearchHit };
|
package/dist/index.js
CHANGED
package/dist/internal.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
3
|
-
export { C as CONFIG_FILE_NAMES, g as CSRF_COOKIE, h as CSRF_HEADER, D as DEFAULT_ADMIN_PATH, i as DEFAULT_API_PATH, j as DEFAULT_MAX_FILE_SIZE, k as DEFAULT_TOKEN_EXPIRATION, m as applyDefaults, n as applyPlugins, o as createRootEndpointHandler, p as decryptBackup, q as fillMissing, t as findConfigFile, u as forwardedClientIp, v as generateSlugs, w as importConfig, x as mergeForUpdate, y as parseId, z as platformClientIp, E as readCookie, F as validateFields, G as writeBackupFile } from './handler-
|
|
1
|
+
import { Config, Database, EasyCMS, NavGroup, CollectionConfig, ID, RawDocument, Field, ResolvedConfig, ConfigIssue } from './index.js';
|
|
2
|
+
export { cM as API_KEYS, cN as API_KEY_GLOBAL_OPERATIONS, cO as API_KEY_OPERATIONS, cP as DEFAULT_MAX_VERSIONS, cQ as DEFAULT_PASSWORD_EMAILS, cR as FIELD_TYPE_BASES, cS as FOLDER_LEVELS, cT as MediaFolders, cU as SSO_COOKIE, cV as codeOfStatus, cB as hasRows, cD as isHasMany, cW as isJsonLogger, cX as keyAllows, cY as logFormat, cI as mimeAllowedBy, cJ as rowFields, cL as uniqueWithinOf } from './config-zh7mTozB.js';
|
|
3
|
+
export { C as CONFIG_FILE_NAMES, g as CSRF_COOKIE, h as CSRF_HEADER, D as DEFAULT_ADMIN_PATH, i as DEFAULT_API_PATH, j as DEFAULT_MAX_FILE_SIZE, k as DEFAULT_TOKEN_EXPIRATION, m as applyDefaults, n as applyPlugins, o as createRootEndpointHandler, p as decryptBackup, q as fillMissing, t as findConfigFile, u as forwardedClientIp, v as generateSlugs, w as importConfig, x as mergeForUpdate, y as parseId, z as platformClientIp, E as readCookie, F as validateFields, G as writeBackupFile } from './handler-CVBEpaJ6.js';
|
|
4
4
|
export { conditionIssues } from './conditions.js';
|
|
5
5
|
|
|
6
6
|
/** The session cookie the REST API sets at login. */
|
|
@@ -141,4 +141,5 @@ declare const BUILTIN_COLLECTIONS: readonly ["users", "media"];
|
|
|
141
141
|
/** Checks a config and returns every problem found. An empty array means it is valid. */
|
|
142
142
|
declare function validateConfig(config: Config): ConfigIssue[];
|
|
143
143
|
|
|
144
|
-
export { BUILTIN_COLLECTIONS, BUILTIN_NAV,
|
|
144
|
+
export { BUILTIN_COLLECTIONS, BUILTIN_NAV, DEFAULT_DEPTH, EXTENSIONS, INTERNAL_COLLECTIONS, MAX_DEPTH, MEDIA, MEDIA_FOLDERS, MIME_GROUPS, MIN_PASSWORD_LENGTH, MIN_SECRET_LENGTH, SESSION_COOKIE, checkFormToken, checkRenamedOptions, configSignature, copyDatabase, expandMimeTypes, formToken, generateTypes, hashPassword, healthResponse, honeypotName, imageDimensions, mimeAllowed, populate, rateKeys, resolveAdminModule, singularize, sniffMimeType, validateConfig, verifyPassword, verifyTurnstile };
|
|
145
|
+
export type { CopyProgress, CopyResult, HealthCheck };
|
package/dist/internal.js
CHANGED
package/dist/live-preview.d.ts
CHANGED
|
@@ -37,4 +37,5 @@ declare function isLivePreview(): boolean;
|
|
|
37
37
|
*/
|
|
38
38
|
declare function subscribeLivePreview<T = Record<string, unknown>>(onChange: (doc: T, message: LivePreviewMessage<T>) => void, options?: LivePreviewOptions): () => void;
|
|
39
39
|
|
|
40
|
-
export {
|
|
40
|
+
export { PREVIEW_PARAM, READY_MESSAGE, getPreviewToken, isLivePreview, subscribeLivePreview };
|
|
41
|
+
export type { LivePreviewMessage, LivePreviewOptions };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ba as Label, aD as Field, I as ID, k as AdminLocale, t as AdminSwitcher, c4 as SsoProviderRef } from './config-
|
|
1
|
+
import { ba as Label, aD as Field, I as ID, k as AdminLocale, t as AdminSwitcher, c4 as SsoProviderRef } from './config-zh7mTozB.js';
|
|
2
2
|
import { FieldCondition } from './conditions.js';
|
|
3
3
|
|
|
4
4
|
/** A Web Component from an admin module, with its `props` (plain JSON). */
|
|
@@ -339,4 +339,5 @@ interface SetFieldDetail {
|
|
|
339
339
|
*/
|
|
340
340
|
declare function warnDeprecated(code: string, message: string): void;
|
|
341
341
|
|
|
342
|
-
export { ADMIN_API_VERSION as A,
|
|
342
|
+
export { ADMIN_API_VERSION as A, warnDeprecated as w };
|
|
343
|
+
export type { SetFieldDetail as S, AdminCollection as a, AdminComponentRef as b, AdminElementProps as c, AdminField as d, AdminGlobal as e, AdminLayoutNode as f, AdminNavGroup as g, AdminNavItem as h, AdminNavNode as i, AdminPageRef as j, AdminPageRoute as k, AdminSchema as l, AdminWidgetRef as m };
|
package/dist/plugin.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { a as ADMIN_ICONS, g as AdminComponent, j as AdminIcon, S as AuthUser, a3 as CliCommand, a4 as CollectionAccess, a6 as CollectionConfig, ab as Config, ac as ConfigError, ak as DashboardWidget, av as EasyCMSError, az as Endpoint, aA as EndpointRequest, aB as ErrorCode, aD as Field, aE as FieldAccess, aH as FieldError, aK as FieldTypeBase, aL as FieldTypeDefinition, aM as FieldTypeValidateContext, aY as ForbiddenError, a_ as GlobalConfig, I as ID, b8 as JobConfig, ba as Label, bo as NavGroup, bp as NotFoundError, br as OnRequest, bs as OnRequestArgs, bu as PLUGIN_API_VERSION, bz as PayloadTooLargeError, bA as Plugin, bB as PluginInfo, bC as PluginTypes, bF as QueryError, bK as RequestContext, c9 as TooManyRequestsError, ca as TypedPlugin, cb as UnauthorizedError,
|
|
2
|
-
export { A as ADMIN_API_VERSION, c as AdminElementProps, k as AdminPageRoute, S as SetFieldDetail, w as warnDeprecated } from './plugin-
|
|
1
|
+
export { a as ADMIN_ICONS, g as AdminComponent, j as AdminIcon, S as AuthUser, a3 as CliCommand, a4 as CollectionAccess, a6 as CollectionConfig, ab as Config, ac as ConfigError, ak as DashboardWidget, av as EasyCMSError, az as Endpoint, aA as EndpointRequest, aB as ErrorCode, aD as Field, aE as FieldAccess, aH as FieldError, aK as FieldTypeBase, aL as FieldTypeDefinition, aM as FieldTypeValidateContext, aY as ForbiddenError, a_ as GlobalConfig, I as ID, b8 as JobConfig, ba as Label, bo as NavGroup, bp as NotFoundError, br as OnRequest, bs as OnRequestArgs, bu as PLUGIN_API_VERSION, bz as PayloadTooLargeError, bA as Plugin, bB as PluginInfo, bC as PluginTypes, bF as QueryError, bK as RequestContext, c9 as TooManyRequestsError, ca as TypedPlugin, cb as UnauthorizedError, cj as ValidationError, cr as Where, cy as defineFieldType, cz as definePlugin } from './config-zh7mTozB.js';
|
|
2
|
+
export { A as ADMIN_API_VERSION, c as AdminElementProps, k as AdminPageRoute, S as SetFieldDetail, w as warnDeprecated } from './plugin-uSB31Kh0.js';
|
|
3
3
|
import './conditions.js';
|