@cmssy/core 13.0.1 → 14.0.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/{csp-hHuxKdMJ.d.cts → csp-BSWMb5Du.d.cts} +10 -2
- package/dist/{csp-9BjyqMRU.d.ts → csp-P-acJQaJ.d.ts} +10 -2
- package/dist/index.cjs +7 -0
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +7 -0
- package/dist/internal.cjs +1 -1
- package/dist/internal.d.cts +2 -2
- package/dist/internal.d.ts +2 -2
- package/dist/internal.js +1 -1
- package/package.json +2 -2
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
import { LayoutRegion, CmssyClientConfig, BlockRect, BlockSchema, BlockMeta } from '@cmssy/types';
|
|
1
|
+
import { LayoutRegion, BlockPropsSchema, InferBlockContent, CmssyClientConfig, BlockRect, BlockSchema, BlockMeta } from '@cmssy/types';
|
|
2
2
|
import { G as GraphqlRequestOptions } from './locale-JyBHqpAQ.cjs';
|
|
3
3
|
|
|
4
4
|
interface CmssyLayout<R extends readonly LayoutRegion[] = readonly LayoutRegion[]> {
|
|
5
5
|
readonly regions: R;
|
|
6
6
|
}
|
|
7
7
|
type CmssyRegion<L extends CmssyLayout> = L["regions"][number]["id"];
|
|
8
|
+
type RegionSettingsOf<Region> = [Region] extends [
|
|
9
|
+
{
|
|
10
|
+
settings: infer S extends BlockPropsSchema;
|
|
11
|
+
}
|
|
12
|
+
] ? BlockPropsSchema extends S ? Record<string, never> : InferBlockContent<S> : Record<string, never>;
|
|
13
|
+
type CmssyRegionSettings<L extends CmssyLayout, R extends CmssyRegion<L>> = string extends CmssyRegion<L> ? Record<string, never> : RegionSettingsOf<Extract<L["regions"][number], {
|
|
14
|
+
id: R;
|
|
15
|
+
}>>;
|
|
8
16
|
declare function defineCmssyLayout<const R extends readonly LayoutRegion[]>(layout: CmssyLayout<R>): CmssyLayout<R>;
|
|
9
17
|
declare function layoutRegionIds(layout: CmssyLayout | undefined): string[];
|
|
10
18
|
|
|
@@ -183,4 +191,4 @@ declare function toCspOrigin(origin: string): string;
|
|
|
183
191
|
declare function cmssyCspHeaders(options: CmssyCspOptions): Record<string, string>;
|
|
184
192
|
declare function applyCmssyCsp<T extends MutableHeaders>(response: T, options: CmssyCspOptions): T;
|
|
185
193
|
|
|
186
|
-
export { type AppToEditorMessage as A, type BoundsMessage as B, type ClickMessage as C, DEFAULT_CMSSY_EDITOR_ORIGINS as D, type EditorToAppMessage as E,
|
|
194
|
+
export { type AppToEditorMessage as A, type BoundsMessage as B, type ClickMessage as C, DEFAULT_CMSSY_EDITOR_ORIGINS as D, type EditorToAppMessage as E, isDevelopment as F, layoutRegionIds as G, resolveInitialTarget as H, type InvisibleBlock as I, toCspOrigin as J, PROTOCOL_VERSION as P, type QueryScopedOptions as Q, type ReadyMessage as R, SHORTCUT_ACTIONS as S, type ViewportMessage as V, type CmssyClient as a, type CmssyConfig as b, type CmssyCspOptions as c, type CmssyEnvConfig as d, type CmssyLayout as e, type CmssyRegion as f, type CmssyRegionOf as g, type CmssyRegionSettings as h, type CmssyTypedDocument as i, type InvisibleBlocksMessage as j, type ParentReadyMessage as k, type PatchMessage as l, type PostTarget as m, type SelectMessage as n, type ShortcutAction as o, type ShortcutMessage as p, applyCmssyCsp as q, createCmssyClient as r, defineCmssyConfig as s, defineCmssyLayout as t, isProtocolCompatible as u, normalizeOrigin as v, parseEditorMessage as w, postToEditor as x, resolveEditorOrigin as y, cmssyCspHeaders as z };
|
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
import { LayoutRegion, CmssyClientConfig, BlockRect, BlockSchema, BlockMeta } from '@cmssy/types';
|
|
1
|
+
import { LayoutRegion, BlockPropsSchema, InferBlockContent, CmssyClientConfig, BlockRect, BlockSchema, BlockMeta } from '@cmssy/types';
|
|
2
2
|
import { G as GraphqlRequestOptions } from './locale-D9KI4bND.js';
|
|
3
3
|
|
|
4
4
|
interface CmssyLayout<R extends readonly LayoutRegion[] = readonly LayoutRegion[]> {
|
|
5
5
|
readonly regions: R;
|
|
6
6
|
}
|
|
7
7
|
type CmssyRegion<L extends CmssyLayout> = L["regions"][number]["id"];
|
|
8
|
+
type RegionSettingsOf<Region> = [Region] extends [
|
|
9
|
+
{
|
|
10
|
+
settings: infer S extends BlockPropsSchema;
|
|
11
|
+
}
|
|
12
|
+
] ? BlockPropsSchema extends S ? Record<string, never> : InferBlockContent<S> : Record<string, never>;
|
|
13
|
+
type CmssyRegionSettings<L extends CmssyLayout, R extends CmssyRegion<L>> = string extends CmssyRegion<L> ? Record<string, never> : RegionSettingsOf<Extract<L["regions"][number], {
|
|
14
|
+
id: R;
|
|
15
|
+
}>>;
|
|
8
16
|
declare function defineCmssyLayout<const R extends readonly LayoutRegion[]>(layout: CmssyLayout<R>): CmssyLayout<R>;
|
|
9
17
|
declare function layoutRegionIds(layout: CmssyLayout | undefined): string[];
|
|
10
18
|
|
|
@@ -183,4 +191,4 @@ declare function toCspOrigin(origin: string): string;
|
|
|
183
191
|
declare function cmssyCspHeaders(options: CmssyCspOptions): Record<string, string>;
|
|
184
192
|
declare function applyCmssyCsp<T extends MutableHeaders>(response: T, options: CmssyCspOptions): T;
|
|
185
193
|
|
|
186
|
-
export { type AppToEditorMessage as A, type BoundsMessage as B, type ClickMessage as C, DEFAULT_CMSSY_EDITOR_ORIGINS as D, type EditorToAppMessage as E,
|
|
194
|
+
export { type AppToEditorMessage as A, type BoundsMessage as B, type ClickMessage as C, DEFAULT_CMSSY_EDITOR_ORIGINS as D, type EditorToAppMessage as E, isDevelopment as F, layoutRegionIds as G, resolveInitialTarget as H, type InvisibleBlock as I, toCspOrigin as J, PROTOCOL_VERSION as P, type QueryScopedOptions as Q, type ReadyMessage as R, SHORTCUT_ACTIONS as S, type ViewportMessage as V, type CmssyClient as a, type CmssyConfig as b, type CmssyCspOptions as c, type CmssyEnvConfig as d, type CmssyLayout as e, type CmssyRegion as f, type CmssyRegionOf as g, type CmssyRegionSettings as h, type CmssyTypedDocument as i, type InvisibleBlocksMessage as j, type ParentReadyMessage as k, type PatchMessage as l, type PostTarget as m, type SelectMessage as n, type ShortcutAction as o, type ShortcutMessage as p, applyCmssyCsp as q, createCmssyClient as r, defineCmssyConfig as s, defineCmssyLayout as t, isProtocolCompatible as u, normalizeOrigin as v, parseEditorMessage as w, postToEditor as x, resolveEditorOrigin as y, cmssyCspHeaders as z };
|
package/dist/index.cjs
CHANGED
|
@@ -608,6 +608,13 @@ function defineCmssyLayout(layout) {
|
|
|
608
608
|
);
|
|
609
609
|
}
|
|
610
610
|
}
|
|
611
|
+
if (region.settings !== void 0) {
|
|
612
|
+
if (typeof region.settings !== "object" || region.settings === null || Array.isArray(region.settings)) {
|
|
613
|
+
throw new Error(
|
|
614
|
+
`cmssy: layout region "${region.id}" settings must be a fields.* schema object`
|
|
615
|
+
);
|
|
616
|
+
}
|
|
617
|
+
}
|
|
611
618
|
}
|
|
612
619
|
return { regions };
|
|
613
620
|
}
|
package/dist/index.d.cts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { A as AppToEditorMessage, B as BoundsMessage, C as ClickMessage, a as CmssyClient, b as CmssyConfig, c as CmssyCspOptions, d as CmssyEnvConfig, e as CmssyLayout, f as CmssyRegion, g as CmssyRegionOf, h as CmssyTypedDocument, D as DEFAULT_CMSSY_EDITOR_ORIGINS, E as EditorToAppMessage, I as InvisibleBlock,
|
|
1
|
+
export { A as AppToEditorMessage, B as BoundsMessage, C as ClickMessage, a as CmssyClient, b as CmssyConfig, c as CmssyCspOptions, d as CmssyEnvConfig, e as CmssyLayout, f as CmssyRegion, g as CmssyRegionOf, h as CmssyRegionSettings, i as CmssyTypedDocument, D as DEFAULT_CMSSY_EDITOR_ORIGINS, E as EditorToAppMessage, I as InvisibleBlock, j as InvisibleBlocksMessage, P as PROTOCOL_VERSION, k as ParentReadyMessage, l as PatchMessage, m as PostTarget, Q as QueryScopedOptions, R as ReadyMessage, S as SHORTCUT_ACTIONS, n as SelectMessage, o as ShortcutAction, p as ShortcutMessage, V as ViewportMessage, q as applyCmssyCsp, r as createCmssyClient, s as defineCmssyConfig, t as defineCmssyLayout, u as isProtocolCompatible, v as normalizeOrigin, w as parseEditorMessage, x as postToEditor, y as resolveEditorOrigin } from './csp-BSWMb5Du.cjs';
|
|
2
2
|
export { C as CMSSY_LOCALE_HEADER, G as GraphqlRequestOptions, g as graphqlRequest, l as localizeHref, r as resolveCmssyLocale } from './locale-JyBHqpAQ.cjs';
|
|
3
3
|
export { C as CMSSY_RATE_LIMIT_WINDOW_MS, a as CMSSY_RETRY_MODES, b as CmssyRequestError, c as CmssyRetryMode, D as DEFAULT_CMSSY_API_URL, F as FetchLike, d as FetchLikeResponse, e as FetchPageOptions, R as RetryOption, f as RetryPolicy } from './content-client-65N8ZRq9.cjs';
|
|
4
4
|
import * as _cmssy_types from '@cmssy/types';
|
|
5
5
|
import { FieldOptions, TypedField, ResolvedMediaValue, PageRef, BlockPropsSchema, InferBlockContent, RelationMode, CmssyModelRecord, ResolvedMedia, VerifyCmssyWebhookOptions, CmssyWebhookEvent } from '@cmssy/types';
|
|
6
|
-
export { BlockMeta, BlockPropsSchema, BlockRect, BlockSchema, BuildBlockContextExtra, CmssyBlockAuthContext, CmssyBlockContext, CmssyBlockMember, CmssyBlockPage, CmssyBlockWorkspace, CmssyBranding, CmssyClientConfig, CmssyFormDefinition, CmssyFormField, CmssyFormSettings, CmssyFormSubmitResponse, CmssyLayoutGroup,
|
|
6
|
+
export { BlockMeta, BlockPropsSchema, BlockRect, BlockSchema, BuildBlockContextExtra, CmssyBlockAuthContext, CmssyBlockContext, CmssyBlockMember, CmssyBlockPage, CmssyBlockWorkspace, CmssyBranding, CmssyClientConfig, CmssyFormDefinition, CmssyFormField, CmssyFormSettings, CmssyFormSubmitResponse, CmssyLayoutGroup, CmssyLocaleContext, CmssyLocalizedValue, CmssyModelDefinition, CmssyModelRecord, CmssyPageData, CmssyPageMeta, CmssyPageSummary, CmssyRecordList, CmssySiteConfig, CmssyWebhookEvent, CmssyWebhookOrder, FieldCondition, FieldConditionGroup, FieldConditionLogic, FieldControl, FieldDefinition, FieldOptions, FieldType, InferBlockContent, LayoutPosition, LayoutRegion, RawBlock, RawLayoutBlock, SubmitFormInput, TypedField, VerifyCmssyWebhookOptions, evaluateFieldConditionGroup } from '@cmssy/types';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Whether the content is guaranteed to carry the field. Only `required` says
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { A as AppToEditorMessage, B as BoundsMessage, C as ClickMessage, a as CmssyClient, b as CmssyConfig, c as CmssyCspOptions, d as CmssyEnvConfig, e as CmssyLayout, f as CmssyRegion, g as CmssyRegionOf, h as CmssyTypedDocument, D as DEFAULT_CMSSY_EDITOR_ORIGINS, E as EditorToAppMessage, I as InvisibleBlock,
|
|
1
|
+
export { A as AppToEditorMessage, B as BoundsMessage, C as ClickMessage, a as CmssyClient, b as CmssyConfig, c as CmssyCspOptions, d as CmssyEnvConfig, e as CmssyLayout, f as CmssyRegion, g as CmssyRegionOf, h as CmssyRegionSettings, i as CmssyTypedDocument, D as DEFAULT_CMSSY_EDITOR_ORIGINS, E as EditorToAppMessage, I as InvisibleBlock, j as InvisibleBlocksMessage, P as PROTOCOL_VERSION, k as ParentReadyMessage, l as PatchMessage, m as PostTarget, Q as QueryScopedOptions, R as ReadyMessage, S as SHORTCUT_ACTIONS, n as SelectMessage, o as ShortcutAction, p as ShortcutMessage, V as ViewportMessage, q as applyCmssyCsp, r as createCmssyClient, s as defineCmssyConfig, t as defineCmssyLayout, u as isProtocolCompatible, v as normalizeOrigin, w as parseEditorMessage, x as postToEditor, y as resolveEditorOrigin } from './csp-P-acJQaJ.js';
|
|
2
2
|
export { C as CMSSY_LOCALE_HEADER, G as GraphqlRequestOptions, g as graphqlRequest, l as localizeHref, r as resolveCmssyLocale } from './locale-D9KI4bND.js';
|
|
3
3
|
export { C as CMSSY_RATE_LIMIT_WINDOW_MS, a as CMSSY_RETRY_MODES, b as CmssyRequestError, c as CmssyRetryMode, D as DEFAULT_CMSSY_API_URL, F as FetchLike, d as FetchLikeResponse, e as FetchPageOptions, R as RetryOption, f as RetryPolicy } from './content-client-65N8ZRq9.js';
|
|
4
4
|
import * as _cmssy_types from '@cmssy/types';
|
|
5
5
|
import { FieldOptions, TypedField, ResolvedMediaValue, PageRef, BlockPropsSchema, InferBlockContent, RelationMode, CmssyModelRecord, ResolvedMedia, VerifyCmssyWebhookOptions, CmssyWebhookEvent } from '@cmssy/types';
|
|
6
|
-
export { BlockMeta, BlockPropsSchema, BlockRect, BlockSchema, BuildBlockContextExtra, CmssyBlockAuthContext, CmssyBlockContext, CmssyBlockMember, CmssyBlockPage, CmssyBlockWorkspace, CmssyBranding, CmssyClientConfig, CmssyFormDefinition, CmssyFormField, CmssyFormSettings, CmssyFormSubmitResponse, CmssyLayoutGroup,
|
|
6
|
+
export { BlockMeta, BlockPropsSchema, BlockRect, BlockSchema, BuildBlockContextExtra, CmssyBlockAuthContext, CmssyBlockContext, CmssyBlockMember, CmssyBlockPage, CmssyBlockWorkspace, CmssyBranding, CmssyClientConfig, CmssyFormDefinition, CmssyFormField, CmssyFormSettings, CmssyFormSubmitResponse, CmssyLayoutGroup, CmssyLocaleContext, CmssyLocalizedValue, CmssyModelDefinition, CmssyModelRecord, CmssyPageData, CmssyPageMeta, CmssyPageSummary, CmssyRecordList, CmssySiteConfig, CmssyWebhookEvent, CmssyWebhookOrder, FieldCondition, FieldConditionGroup, FieldConditionLogic, FieldControl, FieldDefinition, FieldOptions, FieldType, InferBlockContent, LayoutPosition, LayoutRegion, RawBlock, RawLayoutBlock, SubmitFormInput, TypedField, VerifyCmssyWebhookOptions, evaluateFieldConditionGroup } from '@cmssy/types';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Whether the content is guaranteed to carry the field. Only `required` says
|
package/dist/index.js
CHANGED
|
@@ -607,6 +607,13 @@ function defineCmssyLayout(layout) {
|
|
|
607
607
|
);
|
|
608
608
|
}
|
|
609
609
|
}
|
|
610
|
+
if (region.settings !== void 0) {
|
|
611
|
+
if (typeof region.settings !== "object" || region.settings === null || Array.isArray(region.settings)) {
|
|
612
|
+
throw new Error(
|
|
613
|
+
`cmssy: layout region "${region.id}" settings must be a fields.* schema object`
|
|
614
|
+
);
|
|
615
|
+
}
|
|
616
|
+
}
|
|
610
617
|
}
|
|
611
618
|
return { regions };
|
|
612
619
|
}
|
package/dist/internal.cjs
CHANGED
|
@@ -259,7 +259,7 @@ var PUBLIC_PAGE_LAYOUTS_QUERY = `query PublicPageLayouts($workspaceSlug: String!
|
|
|
259
259
|
layouts(workspaceSlug: $workspaceSlug, pageSlug: $pageSlug, previewSecret: $previewSecret) {
|
|
260
260
|
position
|
|
261
261
|
blocks { id type content style advanced order isActive }
|
|
262
|
-
settings
|
|
262
|
+
settings
|
|
263
263
|
}
|
|
264
264
|
}
|
|
265
265
|
}
|
package/dist/internal.d.cts
CHANGED
|
@@ -3,8 +3,8 @@ import { CmssyFormDefinition, BuildBlockContextExtra, CmssyBlockContext, CmssyCl
|
|
|
3
3
|
export { CmssySiteLocales } from '@cmssy/types';
|
|
4
4
|
import { G as GraphqlRequestOptions } from './locale-JyBHqpAQ.cjs';
|
|
5
5
|
export { C as CMSSY_LOCALE_HEADER, a as localeForPath, b as localeForPathname, l as localizeHref, c as resolveSiteLocales, s as splitCmssyLocale, d as splitLocaleFromPath } from './locale-JyBHqpAQ.cjs';
|
|
6
|
-
import { Q as QueryScopedOptions } from './csp-
|
|
7
|
-
export {
|
|
6
|
+
import { Q as QueryScopedOptions } from './csp-BSWMb5Du.cjs';
|
|
7
|
+
export { z as cmssyCspHeaders, F as isDevelopment, G as layoutRegionIds, H as resolveInitialTarget, J as toCspOrigin } from './csp-BSWMb5Du.cjs';
|
|
8
8
|
export { localizedPath } from './internal/locale.cjs';
|
|
9
9
|
|
|
10
10
|
declare const SITE_CONFIG_QUERY = "query PublicSiteConfig($workspaceSlug: String!) {\n public {\n siteConfig(workspaceSlug: $workspaceSlug) {\n id\n workspaceId\n siteName\n defaultLanguage\n enabledLanguages\n enabledFeatures\n notFoundPageId\n previewUrl\n branding {\n brandName\n logoUrl\n logoDarkUrl\n faviconUrl\n ogImageUrl\n }\n }\n }\n}";
|
package/dist/internal.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ import { CmssyFormDefinition, BuildBlockContextExtra, CmssyBlockContext, CmssyCl
|
|
|
3
3
|
export { CmssySiteLocales } from '@cmssy/types';
|
|
4
4
|
import { G as GraphqlRequestOptions } from './locale-D9KI4bND.js';
|
|
5
5
|
export { C as CMSSY_LOCALE_HEADER, a as localeForPath, b as localeForPathname, l as localizeHref, c as resolveSiteLocales, s as splitCmssyLocale, d as splitLocaleFromPath } from './locale-D9KI4bND.js';
|
|
6
|
-
import { Q as QueryScopedOptions } from './csp-
|
|
7
|
-
export {
|
|
6
|
+
import { Q as QueryScopedOptions } from './csp-P-acJQaJ.js';
|
|
7
|
+
export { z as cmssyCspHeaders, F as isDevelopment, G as layoutRegionIds, H as resolveInitialTarget, J as toCspOrigin } from './csp-P-acJQaJ.js';
|
|
8
8
|
export { localizedPath } from './internal/locale.js';
|
|
9
9
|
|
|
10
10
|
declare const SITE_CONFIG_QUERY = "query PublicSiteConfig($workspaceSlug: String!) {\n public {\n siteConfig(workspaceSlug: $workspaceSlug) {\n id\n workspaceId\n siteName\n defaultLanguage\n enabledLanguages\n enabledFeatures\n notFoundPageId\n previewUrl\n branding {\n brandName\n logoUrl\n logoDarkUrl\n faviconUrl\n ogImageUrl\n }\n }\n }\n}";
|
package/dist/internal.js
CHANGED
|
@@ -257,7 +257,7 @@ var PUBLIC_PAGE_LAYOUTS_QUERY = `query PublicPageLayouts($workspaceSlug: String!
|
|
|
257
257
|
layouts(workspaceSlug: $workspaceSlug, pageSlug: $pageSlug, previewSecret: $previewSecret) {
|
|
258
258
|
position
|
|
259
259
|
blocks { id type content style advanced order isActive }
|
|
260
|
-
settings
|
|
260
|
+
settings
|
|
261
261
|
}
|
|
262
262
|
}
|
|
263
263
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cmssy/core",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "14.0.0",
|
|
4
4
|
"description": "Framework-agnostic cmssy gateway: GraphQL client, block/field system, editor protocol. No React, no Next.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cmssy",
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"vitest": "^2.1.0"
|
|
88
88
|
},
|
|
89
89
|
"dependencies": {
|
|
90
|
-
"@cmssy/types": "0.
|
|
90
|
+
"@cmssy/types": "0.38.0",
|
|
91
91
|
"jose": "^6.2.3"
|
|
92
92
|
},
|
|
93
93
|
"scripts": {
|