@actuate-media/cms-core 0.54.0 → 0.56.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.
Files changed (50) hide show
  1. package/dist/__tests__/api/page-sections-routes.test.js +66 -0
  2. package/dist/__tests__/api/page-sections-routes.test.js.map +1 -1
  3. package/dist/__tests__/auth/password.test.js +29 -11
  4. package/dist/__tests__/auth/password.test.js.map +1 -1
  5. package/dist/__tests__/diagnostics/env.test.js +18 -0
  6. package/dist/__tests__/diagnostics/env.test.js.map +1 -1
  7. package/dist/api/handler-factory.d.ts.map +1 -1
  8. package/dist/api/handler-factory.js +6 -0
  9. package/dist/api/handler-factory.js.map +1 -1
  10. package/dist/api/handlers.d.ts.map +1 -1
  11. package/dist/api/handlers.js +13 -3
  12. package/dist/api/handlers.js.map +1 -1
  13. package/dist/config/types.d.ts +8 -0
  14. package/dist/config/types.d.ts.map +1 -1
  15. package/dist/db/adapters/mysql.d.ts.map +1 -1
  16. package/dist/db/adapters/mysql.js +13 -5
  17. package/dist/db/adapters/mysql.js.map +1 -1
  18. package/dist/db/adapters/postgres.d.ts.map +1 -1
  19. package/dist/db/adapters/postgres.js +7 -2
  20. package/dist/db/adapters/postgres.js.map +1 -1
  21. package/dist/db/adapters/sqlite.d.ts.map +1 -1
  22. package/dist/db/adapters/sqlite.js +13 -5
  23. package/dist/db/adapters/sqlite.js.map +1 -1
  24. package/dist/diagnostics/env.d.ts.map +1 -1
  25. package/dist/diagnostics/env.js +10 -3
  26. package/dist/diagnostics/env.js.map +1 -1
  27. package/dist/middleware.d.ts +2 -1
  28. package/dist/middleware.d.ts.map +1 -1
  29. package/dist/middleware.js +3 -0
  30. package/dist/middleware.js.map +1 -1
  31. package/dist/page-builder/schema.d.ts +4 -4
  32. package/dist/sections/__tests__/sections.test.js +81 -2
  33. package/dist/sections/__tests__/sections.test.js.map +1 -1
  34. package/dist/sections/helpers.d.ts +21 -7
  35. package/dist/sections/helpers.d.ts.map +1 -1
  36. package/dist/sections/helpers.js +40 -13
  37. package/dist/sections/helpers.js.map +1 -1
  38. package/dist/sections/index.d.ts +3 -3
  39. package/dist/sections/index.d.ts.map +1 -1
  40. package/dist/sections/index.js +1 -1
  41. package/dist/sections/index.js.map +1 -1
  42. package/dist/sections/registry.d.ts +15 -4
  43. package/dist/sections/registry.d.ts.map +1 -1
  44. package/dist/sections/registry.js +57 -4
  45. package/dist/sections/registry.js.map +1 -1
  46. package/dist/sections/types.d.ts +44 -2
  47. package/dist/sections/types.d.ts.map +1 -1
  48. package/package.json +1 -1
  49. package/prisma/migrations/0002_media_usage_field_path/migration.sql +11 -0
  50. package/prisma/schema.prisma +2 -2
@@ -1,8 +1,8 @@
1
- import type { PageSection, PostHeaderConfig, PostTemplate, SectionSettings, SectionTypeId } from './types.js';
1
+ import type { PageSection, PostHeaderConfig, PostTemplate, SectionSettings } from './types.js';
2
2
  /** Generate a unique section id (UUID when available, monotonic fallback). */
3
3
  export declare function generateSectionId(): string;
4
4
  /** Create a fresh section of the given type, seeded with registry defaults. */
5
- export declare function createSection(type: SectionTypeId): PageSection;
5
+ export declare function createSection(type: string): PageSection;
6
6
  /** Insert a section at `index` (defaults to the end). Returns a new array. */
7
7
  export declare function addSection(sections: PageSection[], section: PageSection, index?: number): PageSection[];
8
8
  export declare function removeSection(sections: PageSection[], id: string): PageSection[];
@@ -21,22 +21,36 @@ export declare function updateSectionMeta(sections: PageSection[], id: string, p
21
21
  name?: string;
22
22
  internalLabel?: string;
23
23
  }): PageSection[];
24
+ export interface CoerceSectionsOptions {
25
+ /**
26
+ * Keep entries whose `sectionType` has no registered definition instead of
27
+ * dropping them. Preserved entries are flagged `unmanaged: true`, with their
28
+ * content/settings kept verbatim and their original position retained, so
29
+ * externally-managed sections (seed/code-owned, e.g. `opal-hero`) round-trip
30
+ * through read/save without silent data loss.
31
+ */
32
+ preserveUnknown?: boolean;
33
+ }
24
34
  /**
25
35
  * Normalize arbitrary JSON into a clean `PageSection[]`.
26
36
  *
27
- * Drops entries with an unknown `sectionType` (rather than rendering a
28
- * blank), backfills missing ids/names, and coerces visibility. Used when
29
- * reading `data.sections` from the DB and when accepting an AI/agent
37
+ * Backfills missing ids/names and coerces visibility. By default, entries with
38
+ * an unknown `sectionType` (no built-in or config-declared custom type) are
39
+ * dropped rather than rendering a blank. Pass `{ preserveUnknown: true }` at
40
+ * the persistence boundary (editor read/save, page-section API) to keep them
41
+ * verbatim, flagged `unmanaged`, so they are never lost on a subsequent save.
42
+ *
43
+ * Used when reading `data.sections` from the DB and when accepting an AI/agent
30
44
  * payload that may be partially shaped.
31
45
  */
32
- export declare function coerceSections(raw: unknown): PageSection[];
46
+ export declare function coerceSections(raw: unknown, opts?: CoerceSectionsOptions): PageSection[];
33
47
  /**
34
48
  * Build a fully-formed section from a (possibly partial) AI/agent payload:
35
49
  * start from the registry defaults for `type`, then shallow-merge the
36
50
  * provided `content` / `settings` and apply an optional display name.
37
51
  * The returned section always has a fresh id + valid shape.
38
52
  */
39
- export declare function buildSection(type: SectionTypeId, input?: {
53
+ export declare function buildSection(type: string, input?: {
40
54
  name?: string;
41
55
  internalLabel?: string;
42
56
  visible?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/sections/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/sections/helpers.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * tests all share ONE implementation. No DOM, React, or Node APIs here —
7
7
  * keep this module isomorphic so it runs in the browser and on the server.
8
8
  */
9
- import { SECTION_TYPES, getSectionType } from './registry.js';
9
+ import { getSectionType } from './registry.js';
10
10
  // ─── ID generation ───────────────────────────────────────────────────
11
11
  let idCounter = 0;
12
12
  /** Generate a unique section id (UUID when available, monotonic fallback). */
@@ -20,7 +20,10 @@ export function generateSectionId() {
20
20
  // ─── Section factory + array helpers ─────────────────────────────────
21
21
  /** Create a fresh section of the given type, seeded with registry defaults. */
22
22
  export function createSection(type) {
23
- const def = SECTION_TYPES[type];
23
+ const def = getSectionType(type);
24
+ if (!def) {
25
+ throw new Error(`createSection: unknown section type "${type}"`);
26
+ }
24
27
  return {
25
28
  id: generateSectionId(),
26
29
  sectionType: type,
@@ -96,12 +99,16 @@ export function updateSectionMeta(sections, id, patch) {
96
99
  /**
97
100
  * Normalize arbitrary JSON into a clean `PageSection[]`.
98
101
  *
99
- * Drops entries with an unknown `sectionType` (rather than rendering a
100
- * blank), backfills missing ids/names, and coerces visibility. Used when
101
- * reading `data.sections` from the DB and when accepting an AI/agent
102
+ * Backfills missing ids/names and coerces visibility. By default, entries with
103
+ * an unknown `sectionType` (no built-in or config-declared custom type) are
104
+ * dropped rather than rendering a blank. Pass `{ preserveUnknown: true }` at
105
+ * the persistence boundary (editor read/save, page-section API) to keep them
106
+ * verbatim, flagged `unmanaged`, so they are never lost on a subsequent save.
107
+ *
108
+ * Used when reading `data.sections` from the DB and when accepting an AI/agent
102
109
  * payload that may be partially shaped.
103
110
  */
104
- export function coerceSections(raw) {
111
+ export function coerceSections(raw, opts = {}) {
105
112
  if (!Array.isArray(raw))
106
113
  return [];
107
114
  const out = [];
@@ -110,16 +117,36 @@ export function coerceSections(raw) {
110
117
  continue;
111
118
  const s = item;
112
119
  const type = String(s.sectionType ?? '');
113
- if (!getSectionType(type))
114
- continue; // drop unknown types instead of rendering blanks
120
+ const content = s.content && typeof s.content === 'object' ? s.content : {};
121
+ const settings = s.settings && typeof s.settings === 'object' ? s.settings : {};
122
+ const id = typeof s.id === 'string' && s.id ? s.id : generateSectionId();
123
+ const internalLabel = typeof s.internalLabel === 'string' ? s.internalLabel : undefined;
124
+ const def = getSectionType(type);
125
+ if (!def) {
126
+ // Unknown type: drop (default) or preserve verbatim as an unmanaged
127
+ // section so externally-managed content survives a round-trip.
128
+ if (!opts.preserveUnknown || !type)
129
+ continue;
130
+ out.push({
131
+ id,
132
+ sectionType: type,
133
+ name: typeof s.name === 'string' && s.name ? s.name : type,
134
+ internalLabel,
135
+ visible: s.visible !== false,
136
+ content,
137
+ settings,
138
+ unmanaged: true,
139
+ });
140
+ continue;
141
+ }
115
142
  out.push({
116
- id: typeof s.id === 'string' && s.id ? s.id : generateSectionId(),
143
+ id,
117
144
  sectionType: type,
118
- name: typeof s.name === 'string' ? s.name : SECTION_TYPES[type].name,
119
- internalLabel: typeof s.internalLabel === 'string' ? s.internalLabel : undefined,
145
+ name: typeof s.name === 'string' ? s.name : def.name,
146
+ internalLabel,
120
147
  visible: s.visible !== false,
121
- content: s.content && typeof s.content === 'object' ? s.content : {},
122
- settings: s.settings && typeof s.settings === 'object' ? s.settings : {},
148
+ content,
149
+ settings,
123
150
  });
124
151
  }
125
152
  return out;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/sections/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/sections/helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,wEAAwE;AAExE,IAAI,SAAS,GAAG,CAAC,CAAA;AAEjB,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB;IAC/B,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAC7E,OAAO,MAAM,CAAC,UAAU,EAAE,CAAA;IAC5B,CAAC;IACD,SAAS,IAAI,CAAC,CAAA;IACd,OAAO,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,SAAS,EAAE,CAAA;AACtD,CAAC;AAED,wEAAwE;AAExE,+EAA+E;AAC/E,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;IAChC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,wCAAwC,IAAI,GAAG,CAAC,CAAA;IAClE,CAAC;IACD,OAAO;QACL,EAAE,EAAE,iBAAiB,EAAE;QACvB,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,IAAI;QACb,qEAAqE;QACrE,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC;QAC5C,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC;KAC/C,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,UAAU,CACxB,QAAuB,EACvB,OAAoB,EACpB,KAAc;IAEd,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAA;IAC7B,MAAM,EAAE,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAA;IACxF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAA;IAC3B,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,QAAuB,EAAE,EAAU;IAC/D,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,gBAAgB,CAAC,QAAuB,EAAE,EAAU;IAClE,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAClD,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAA;IAC/B,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAE,CAAA;IAC/B,MAAM,IAAI,GAAgB;QACxB,GAAG,QAAQ;QACX,EAAE,EAAE,iBAAiB,EAAE;QACvB,IAAI,EAAE,GAAG,QAAQ,CAAC,IAAI,SAAS;QAC/B,OAAO,EAAE,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC1C,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC;KAC7C,CAAA;IACD,OAAO,UAAU,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,QAAuB,EAAE,EAAU;IACzE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,oBAAoB,CAClC,QAAuB,EACvB,EAAU,EACV,OAAgB;IAEhB,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACnE,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,WAAW,CAAC,QAAuB,EAAE,EAAU,EAAE,OAAe;IAC9E,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IACnD,IAAI,IAAI,KAAK,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAA;IAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAA;IAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC3D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,KAAM,CAAC,CAAA;IAC/B,OAAO,IAAI,CAAA;AACb,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,eAAe,CAAC,QAAuB,EAAE,UAAoB;IAC3E,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACpD,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAChG,6EAA6E;IAC7E,KAAK,MAAM,CAAC,IAAI,QAAQ;QAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACzE,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,QAAuB,EACvB,EAAU,EACV,KAA8B;IAE9B,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/F,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAAuB,EACvB,EAAU,EACV,KAA+B;IAE/B,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACjG,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,QAAuB,EACvB,EAAU,EACV,KAAgD;IAEhD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACpE,CAAC;AAaD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,GAAY,EAAE,OAA8B,EAAE;IAC3E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAA;IAClC,MAAM,GAAG,GAAkB,EAAE,CAAA;IAC7B,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAQ;QAC/C,MAAM,CAAC,GAAG,IAA+B,CAAA;QACzC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;QACxC,MAAM,OAAO,GACX,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,OAAmC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC1F,MAAM,QAAQ,GACZ,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,QAA4B,CAAC,CAAC,CAAC,EAAE,CAAA;QACrF,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAA;QACxE,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAA;QAEvF,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;QAChC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,oEAAoE;YACpE,+DAA+D;YAC/D,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI;gBAAE,SAAQ;YAC5C,GAAG,CAAC,IAAI,CAAC;gBACP,EAAE;gBACF,WAAW,EAAE,IAAI;gBACjB,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;gBAC1D,aAAa;gBACb,OAAO,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK;gBAC5B,OAAO;gBACP,QAAQ;gBACR,SAAS,EAAE,IAAI;aAChB,CAAC,CAAA;YACF,SAAQ;QACV,CAAC;QAED,GAAG,CAAC,IAAI,CAAC;YACP,EAAE;YACF,WAAW,EAAE,IAAI;YACjB,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI;YACpD,aAAa;YACb,OAAO,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK;YAC5B,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAY,EACZ,QAMI,EAAE;IAEN,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IAChC,OAAO;QACL,GAAG,IAAI;QACP,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;QAC9D,GAAG,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,KAAK;QAChC,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE;QACtD,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE;KAC1D,CAAA;AACH,CAAC;AAED,wEAAwE;AAExE;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAA+B;IAChE,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAA;IACnB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAA;IAC9D,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IACzB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAA;AAC7C,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,iBAAiB;IAC/B,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,iBAAiB,EAAE,IAAI;QACvB,WAAW,EAAE,IAAI;QACjB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;KACvB,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAY;IAC3C,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAA;IAChC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAChD,MAAM,CAAC,GAAG,GAA8B,CAAA;IACxC,MAAM,MAAM,GACV,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;QACtE,CAAC,CAAC,CAAC,CAAC,MAAM;QACV,CAAC,CAAC,IAAI,CAAC,MAAM,CAAA;IACjB,MAAM,IAAI,GAAG,CAAC,GAA2B,EAAW,EAAE,CACpD,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC,GAAG,CAAa,CAAC,CAAC,CAAE,IAAI,CAAC,GAAG,CAAa,CAAA;IAC5E,OAAO;QACL,MAAM;QACN,iBAAiB,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAC5C,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC;QAChC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;QAC9B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC;QAC1B,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC;QAClC,eAAe,EAAE,IAAI,CAAC,iBAAiB,CAAC;KACzC,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,OAAO;QACL,QAAQ;QACR,MAAM,EAAE,iBAAiB,EAAE;QAC3B,QAAQ,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;KAC1E,CAAA;AACH,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,kBAAkB,CAAC,QAAgB,EAAE,GAAY;IAC/D,MAAM,IAAI,GAAG,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAE,GAA+B,CAAC,CAAC,CAAC,EAAE,CAAA;IACnF,OAAO;QACL,QAAQ;QACR,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC;QACrC,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC;KACxC,CAAA;AACH,CAAC"}
@@ -6,11 +6,11 @@
6
6
  * package root) to avoid colliding with the page-builder *tree* model,
7
7
  * which already exports `SectionSettings` / `createSection` from the root.
8
8
  */
9
- export { SECTION_TYPES, SECTION_TYPE_LIST, getSectionType, getSectionTypesForScope, sectionTypeLabel, isKnownSectionType, } from './registry.js';
10
- export { generateSectionId, createSection, buildSection, addSection, removeSection, duplicateSection, toggleSectionVisibility, setSectionVisibility, moveSection, reorderSections, updateSectionContent, updateSectionSettings, updateSectionMeta, coerceSections, defaultPostHeader, coercePostHeader, computeReadingTime, createPostTemplate, coercePostTemplate, } from './helpers.js';
9
+ export { SECTION_TYPES, SECTION_TYPE_LIST, getSectionType, getSectionTypesForScope, getAllSectionTypes, sectionTypeLabel, isKnownSectionType, registerSectionTypes, resetCustomSectionTypes, } from './registry.js';
10
+ export { generateSectionId, createSection, buildSection, addSection, removeSection, duplicateSection, toggleSectionVisibility, setSectionVisibility, moveSection, reorderSections, updateSectionContent, updateSectionSettings, updateSectionMeta, coerceSections, type CoerceSectionsOptions, defaultPostHeader, coercePostHeader, computeReadingTime, createPostTemplate, coercePostTemplate, } from './helpers.js';
11
11
  export { validateSectionContent } from './validate.js';
12
12
  export { layoutTreeToSections } from './bridge.js';
13
13
  export { collectSectionImageUrls, applyMediaMeta } from './media-enrich.js';
14
14
  export type { MediaMeta } from './media-enrich.js';
15
- export type { SectionTypeId, SectionScope, SectionFieldType, SectionFieldDef, SectionSettings, SectionTypeDef, PageSection, PostHeaderConfig, PostTemplate, SectionValidationIssue, SectionValidationResult, } from './types.js';
15
+ export type { SectionTypeId, SectionScope, SectionFieldType, SectionFieldDef, SectionSettings, SectionTypeDef, CustomSectionTypeInput, SectionsConfig, PageSection, PostHeaderConfig, PostTemplate, SectionValidationIssue, SectionValidationResult, } from './types.js';
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sections/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,eAAe,CAAA;AAEtB,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAC3E,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,YAAY,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sections/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAA;AAEtB,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,KAAK,qBAAqB,EAC1B,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAC3E,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,YAAY,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,YAAY,CAAA"}
@@ -6,7 +6,7 @@
6
6
  * package root) to avoid colliding with the page-builder *tree* model,
7
7
  * which already exports `SectionSettings` / `createSection` from the root.
8
8
  */
9
- export { SECTION_TYPES, SECTION_TYPE_LIST, getSectionType, getSectionTypesForScope, sectionTypeLabel, isKnownSectionType, } from './registry.js';
9
+ export { SECTION_TYPES, SECTION_TYPE_LIST, getSectionType, getSectionTypesForScope, getAllSectionTypes, sectionTypeLabel, isKnownSectionType, registerSectionTypes, resetCustomSectionTypes, } from './registry.js';
10
10
  export { generateSectionId, createSection, buildSection, addSection, removeSection, duplicateSection, toggleSectionVisibility, setSectionVisibility, moveSection, reorderSections, updateSectionContent, updateSectionSettings, updateSectionMeta, coerceSections, defaultPostHeader, coercePostHeader, computeReadingTime, createPostTemplate, coercePostTemplate, } from './helpers.js';
11
11
  export { validateSectionContent } from './validate.js';
12
12
  export { layoutTreeToSections } from './bridge.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sections/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,eAAe,CAAA;AAEtB,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sections/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAA;AAEtB,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EAEd,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA"}
@@ -7,21 +7,32 @@
7
7
  * gallery nor an AI agent can produce a section without a working renderer
8
8
  * + inspector + schema ("no dead sections").
9
9
  */
10
- import type { SectionScope, SectionTypeDef, SectionTypeId } from './types.js';
10
+ import type { CustomSectionTypeInput, SectionScope, SectionTypeDef, SectionTypeId } from './types.js';
11
11
  export declare const SECTION_TYPES: Record<SectionTypeId, SectionTypeDef>;
12
12
  /** Ordered list for the Add Section gallery + discovery endpoints. */
13
13
  export declare const SECTION_TYPE_LIST: SectionTypeDef[];
14
+ /**
15
+ * Register (or replace) config-declared custom section types, application-wide.
16
+ * Built-in types always win on an id collision, so a custom type can never
17
+ * shadow a core type. Invalid entries (missing/blank id) are skipped.
18
+ */
19
+ export declare function registerSectionTypes(inputs: CustomSectionTypeInput[] | undefined): void;
20
+ /** Remove all registered custom types. Called before re-registering at boot. */
21
+ export declare function resetCustomSectionTypes(): void;
22
+ /** All known section types (built-ins first, then customs in registration order). */
23
+ export declare function getAllSectionTypes(): SectionTypeDef[];
14
24
  export declare function getSectionType(id: string): SectionTypeDef | undefined;
15
25
  /**
16
26
  * Section types available in a given editor context, in registry order.
17
27
  *
18
28
  * The Page editor passes `'page'`, the Post editor + Post Template editor
19
29
  * pass `'post'`, so each Add Section gallery shows only the types that make
20
- * sense (and have a working renderer) for that surface.
30
+ * sense (and have a working renderer) for that surface. Config-declared custom
31
+ * types that include the scope are included.
21
32
  */
22
33
  export declare function getSectionTypesForScope(scope: SectionScope): SectionTypeDef[];
23
34
  /** Human label for a section type id, with a graceful fallback. */
24
35
  export declare function sectionTypeLabel(id: string): string;
25
- /** True when `id` is a registered, renderable section type. */
26
- export declare function isKnownSectionType(id: string): id is SectionTypeId;
36
+ /** True when `id` is a registered, renderable section type (built-in or custom). */
37
+ export declare function isKnownSectionType(id: string): boolean;
27
38
  //# sourceMappingURL=registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/sections/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,YAAY,EAAmB,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAI9F,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,cAAc,CAyV/D,CAAA;AAED,sEAAsE;AACtE,eAAO,MAAM,iBAAiB,EAAE,cAAc,EAY7C,CAAA;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAErE;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,EAAE,CAE7E;AAED,mEAAmE;AACnE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,+DAA+D;AAC/D,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,aAAa,CAElE"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/sections/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EACV,sBAAsB,EACtB,YAAY,EAEZ,cAAc,EACd,aAAa,EACd,MAAM,YAAY,CAAA;AAInB,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,cAAc,CAyV/D,CAAA;AAED,sEAAsE;AACtE,eAAO,MAAM,iBAAiB,EAAE,cAAc,EAY7C,CAAA;AAkCD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,sBAAsB,EAAE,GAAG,SAAS,GAAG,IAAI,CAOvF;AAED,gFAAgF;AAChF,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED,qFAAqF;AACrF,wBAAgB,kBAAkB,IAAI,cAAc,EAAE,CAErD;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAErE;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,EAAE,CAE7E;AAED,mEAAmE;AACnE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAEtD"}
@@ -357,24 +357,77 @@ export const SECTION_TYPE_LIST = [
357
357
  SECTION_TYPES['related-posts'],
358
358
  SECTION_TYPES.gallery,
359
359
  ];
360
+ // ─── Custom (config-declared) section types ──────────────────────────
361
+ //
362
+ // A consumer declares extra section types in `actuate.config.ts` under
363
+ // `sections.customTypes`. They are merged into the built-in registry at
364
+ // runtime so the Add Section gallery, the field-driven inspector, coerce, and
365
+ // validation all treat them as first-class, editable types. The map is a
366
+ // module-level singleton populated once at boot (server: handler-factory;
367
+ // admin: AdminRoot), mirroring how cms-core's runtime config and
368
+ // sections-react's renderer overrides are registered.
369
+ const customSectionTypes = new Map();
370
+ const CUSTOM_DEFAULT_SETTINGS = { backgroundType: 'none', paddingY: 'lg' };
371
+ /** Normalize a serializable custom-type input into a full {@link SectionTypeDef}. */
372
+ function normalizeCustomType(input) {
373
+ return {
374
+ id: input.id,
375
+ name: input.name,
376
+ icon: input.icon ?? 'puzzle',
377
+ description: input.description ?? '',
378
+ category: input.category ?? 'content',
379
+ accent: input.accent ?? 'blue',
380
+ scope: input.scope,
381
+ defaultContent: input.defaultContent ? { ...input.defaultContent } : {},
382
+ defaultSettings: input.defaultSettings
383
+ ? { ...input.defaultSettings }
384
+ : { ...CUSTOM_DEFAULT_SETTINGS },
385
+ fields: input.fields ?? [],
386
+ };
387
+ }
388
+ /**
389
+ * Register (or replace) config-declared custom section types, application-wide.
390
+ * Built-in types always win on an id collision, so a custom type can never
391
+ * shadow a core type. Invalid entries (missing/blank id) are skipped.
392
+ */
393
+ export function registerSectionTypes(inputs) {
394
+ if (!Array.isArray(inputs))
395
+ return;
396
+ for (const input of inputs) {
397
+ if (!input || typeof input.id !== 'string' || !input.id.trim())
398
+ continue;
399
+ if (input.id in SECTION_TYPES)
400
+ continue; // never shadow a built-in
401
+ customSectionTypes.set(input.id, normalizeCustomType(input));
402
+ }
403
+ }
404
+ /** Remove all registered custom types. Called before re-registering at boot. */
405
+ export function resetCustomSectionTypes() {
406
+ customSectionTypes.clear();
407
+ }
408
+ /** All known section types (built-ins first, then customs in registration order). */
409
+ export function getAllSectionTypes() {
410
+ return [...SECTION_TYPE_LIST, ...customSectionTypes.values()];
411
+ }
360
412
  export function getSectionType(id) {
361
- return SECTION_TYPES[id];
413
+ return SECTION_TYPES[id] ?? customSectionTypes.get(id);
362
414
  }
363
415
  /**
364
416
  * Section types available in a given editor context, in registry order.
365
417
  *
366
418
  * The Page editor passes `'page'`, the Post editor + Post Template editor
367
419
  * pass `'post'`, so each Add Section gallery shows only the types that make
368
- * sense (and have a working renderer) for that surface.
420
+ * sense (and have a working renderer) for that surface. Config-declared custom
421
+ * types that include the scope are included.
369
422
  */
370
423
  export function getSectionTypesForScope(scope) {
371
- return SECTION_TYPE_LIST.filter((def) => def.scope.includes(scope));
424
+ return getAllSectionTypes().filter((def) => def.scope.includes(scope));
372
425
  }
373
426
  /** Human label for a section type id, with a graceful fallback. */
374
427
  export function sectionTypeLabel(id) {
375
428
  return getSectionType(id)?.name ?? 'Section';
376
429
  }
377
- /** True when `id` is a registered, renderable section type. */
430
+ /** True when `id` is a registered, renderable section type (built-in or custom). */
378
431
  export function isKnownSectionType(id) {
379
432
  return getSectionType(id) !== undefined;
380
433
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/sections/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/sections/registry.ts"],"names":[],"mappings":"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"}
@@ -71,10 +71,18 @@ export interface SectionTypeDef {
71
71
  /** content fields shown in the inspector, in order */
72
72
  fields: SectionFieldDef[];
73
73
  }
74
- /** A single section on a page. Persisted in `data.sections[]`. */
74
+ /**
75
+ * A single section on a page. Persisted in `data.sections[]`.
76
+ *
77
+ * `sectionType` is a free string (not the built-in {@link SectionTypeId}
78
+ * union) because a page may carry config-declared custom types
79
+ * (see {@link CustomSectionTypeInput}) or sections authored entirely outside
80
+ * the editor (seed/code-owned). The latter are flagged {@link unmanaged} so
81
+ * the editor preserves them on save and shows them read-only.
82
+ */
75
83
  export interface PageSection {
76
84
  id: string;
77
- sectionType: SectionTypeId;
85
+ sectionType: string;
78
86
  /** Editor-facing display name (defaults to the type name). */
79
87
  name: string;
80
88
  /** Optional internal-only label for the team. */
@@ -82,6 +90,40 @@ export interface PageSection {
82
90
  visible: boolean;
83
91
  content: Record<string, unknown>;
84
92
  settings: SectionSettings;
93
+ /**
94
+ * True when this section's `sectionType` has no registered definition
95
+ * (neither a built-in nor a config-declared custom type). Such sections are
96
+ * preserved verbatim through read/save and rendered read-only in the editor
97
+ * so externally-managed content is never silently dropped.
98
+ */
99
+ unmanaged?: boolean;
100
+ }
101
+ /**
102
+ * Serializable shape a consumer declares in `actuate.config.ts` under
103
+ * `sections.customTypes` to teach the CMS about a custom section type.
104
+ *
105
+ * It is the JSON-safe subset of {@link SectionTypeDef} (no React renderer —
106
+ * the public site registers that separately via `registerSectionRenderer`
107
+ * from `@actuate-media/sections-react`). `registerSectionTypes` fills in any
108
+ * omitted presentation fields with sensible defaults so the Add Section
109
+ * gallery and the field-driven inspector work without extra config.
110
+ */
111
+ export interface CustomSectionTypeInput {
112
+ id: string;
113
+ name: string;
114
+ scope: SectionScope[];
115
+ fields: SectionFieldDef[];
116
+ icon?: string;
117
+ description?: string;
118
+ category?: SectionTypeDef['category'];
119
+ accent?: SectionTypeDef['accent'];
120
+ defaultContent?: Record<string, unknown>;
121
+ defaultSettings?: SectionSettings;
122
+ }
123
+ /** Site-wide section configuration declared on `ActuateCMSConfig.sections`. */
124
+ export interface SectionsConfig {
125
+ /** Custom section types recognized + made editable in the admin editor. */
126
+ customTypes?: CustomSectionTypeInput[];
85
127
  }
86
128
  /** A structured validation finding for a single section. */
87
129
  export interface SectionValidationIssue {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sections/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sections/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actuate-media/cms-core",
3
- "version": "0.54.0",
3
+ "version": "0.56.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/actuate-media/actuatecms.git",
@@ -0,0 +1,11 @@
1
+ -- Rename MediaUsage.fieldName -> fieldPath so the column matches cms-core's API
2
+ -- layer, server actions, and `actuate doctor` schema expectations. The original
3
+ -- 0001_init created the column as "fieldName"; this brings existing databases in
4
+ -- line without data loss.
5
+ ALTER TABLE "actuate_media_usages" RENAME COLUMN "fieldName" TO "fieldPath";
6
+
7
+ -- Prisma derives the unique-index name from its columns, so recreate it under
8
+ -- the fieldPath name (a bare column rename leaves the old index name in place).
9
+ DROP INDEX "actuate_media_usages_mediaId_documentId_fieldName_key";
10
+
11
+ CREATE UNIQUE INDEX "actuate_media_usages_mediaId_documentId_fieldPath_key" ON "actuate_media_usages"("mediaId", "documentId", "fieldPath");
@@ -412,13 +412,13 @@ model MediaUsage {
412
412
  id String @id @default(cuid())
413
413
  mediaId String
414
414
  documentId String
415
- fieldName String
415
+ fieldPath String
416
416
  createdAt DateTime @default(now())
417
417
 
418
418
  media Media @relation(fields: [mediaId], references: [id], onDelete: Cascade)
419
419
  document Document @relation(fields: [documentId], references: [id], onDelete: Cascade)
420
420
 
421
- @@unique([mediaId, documentId, fieldName])
421
+ @@unique([mediaId, documentId, fieldPath])
422
422
  @@index([documentId])
423
423
  @@map("actuate_media_usages")
424
424
  }