@cmssy/types 0.6.0 → 0.7.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.ts CHANGED
@@ -11,5 +11,5 @@ export { WorkspaceModule, workspaceModuleValues, FeatureFlag, featureFlagValues,
11
11
  export { type BlockConfig, BlockSource, PackageType } from "./block.js";
12
12
  export type { BlockMemberProfile, BlockMember, BlockAuthContext, BlockI18nContext, PlatformContext, BlockProps, PageItem, } from "./platform-context.js";
13
13
  export { ALLOWED_CDN_DOMAINS, type AllowedCdnDomain, TranslationStatus, translationStatusValues, MediaType, mediaTypeValues, } from "./shared-constants.js";
14
- export { type TemplateBlockContent, type TemplateBlockInstance, type TemplatePageBlueprint, type TemplateLayoutPosition, type TemplateTheme, type TemplateConfig, type ResourceConfig, isTemplateConfig, } from "./template.js";
14
+ export { type TemplateBlockContent, type TemplateBlockInstance, type TemplatePageBlueprint, type TemplateLayoutPosition, type TemplatePageTypeField, type TemplatePageType, type TemplateTheme, type TemplateConfig, type ResourceConfig, isTemplateConfig, } from "./template.js";
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,GACtB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,SAAS,EACT,eAAe,EACf,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,OAAO,EACZ,KAAK,uBAAuB,EAC5B,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,KAAK,cAAc,GACpB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,KAAK,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGxE,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,QAAQ,GACT,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,SAAS,EACT,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,GACtB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,SAAS,EACT,eAAe,EACf,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,OAAO,EACZ,KAAK,uBAAuB,EAC5B,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,KAAK,cAAc,GACpB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,KAAK,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGxE,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,QAAQ,GACT,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,SAAS,EACT,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,gDAAgD;AAChD,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,GAI3B,MAAM,2BAA2B,CAAC;AAEnC,eAAe;AACf,OAAO,EACL,SAAS,EACT,eAAe,GAYhB,MAAM,mBAAmB,CAAC;AAE3B,SAAS;AACT,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,oBAAoB,GAErB,MAAM,aAAa,CAAC;AAErB,qBAAqB;AACrB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,iBAAiB,GAElB,MAAM,cAAc,CAAC;AAEtB,eAAe;AACf,OAAO,EAAoB,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAaxE,iEAAiE;AACjE,OAAO,EACL,mBAAmB,EAEnB,iBAAiB,EACjB,uBAAuB,EACvB,SAAS,EACT,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,kBAAkB;AAClB,OAAO,EAQL,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,gDAAgD;AAChD,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,GAI3B,MAAM,2BAA2B,CAAC;AAEnC,eAAe;AACf,OAAO,EACL,SAAS,EACT,eAAe,GAYhB,MAAM,mBAAmB,CAAC;AAE3B,SAAS;AACT,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,oBAAoB,GAErB,MAAM,aAAa,CAAC;AAErB,qBAAqB;AACrB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,iBAAiB,GAElB,MAAM,cAAc,CAAC;AAEtB,eAAe;AACf,OAAO,EAAoB,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAaxE,iEAAiE;AACjE,OAAO,EACL,mBAAmB,EAEnB,iBAAiB,EACjB,uBAAuB,EACvB,SAAS,EACT,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,kBAAkB;AAClB,OAAO,EAUL,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
@@ -31,6 +31,8 @@ export interface TemplatePageBlueprint {
31
31
  slug: string;
32
32
  /** Page type */
33
33
  pageType?: string;
34
+ /** Explicit parent page slug (overrides slug-based hierarchy derivation) */
35
+ parentSlug?: string;
34
36
  /** Blocks on this page */
35
37
  blocks: TemplateBlockInstance[];
36
38
  /** Page metadata */
@@ -60,6 +62,34 @@ export interface TemplateTheme {
60
62
  spacing?: Record<string, string>;
61
63
  borderRadius?: Record<string, string>;
62
64
  }
65
+ /**
66
+ * A custom field definition for a page type within a template.
67
+ */
68
+ export interface TemplatePageTypeField {
69
+ /** Display name */
70
+ name: string;
71
+ /** Field key (used in customFields) */
72
+ key: string;
73
+ /** Field type (maps to PropertyFieldType: string, media, etc.) */
74
+ type: string;
75
+ /** Whether this field is required */
76
+ required?: boolean;
77
+ }
78
+ /**
79
+ * A page type definition within a template (e.g. "Blog Post", "Product").
80
+ */
81
+ export interface TemplatePageType {
82
+ /** Display name */
83
+ name: string;
84
+ /** URL-friendly slug */
85
+ slug: string;
86
+ /** URL prefix for routing, e.g. "/blog" -> /blog/my-post */
87
+ urlPrefix?: string;
88
+ /** Icon (lucide icon name) */
89
+ icon?: string;
90
+ /** Custom fields for this page type */
91
+ fields?: TemplatePageTypeField[];
92
+ }
63
93
  /**
64
94
  * Template configuration - defines a complete website structure.
65
95
  */
@@ -78,6 +108,8 @@ export interface TemplateConfig {
78
108
  pages: TemplatePageBlueprint[];
79
109
  /** Layout positions shared across all pages (header, footer, sidebars, etc.) */
80
110
  layoutPositions?: TemplateLayoutPosition[];
111
+ /** Page types to create (e.g. "Blog Post", "Product") */
112
+ pageTypes?: TemplatePageType[];
81
113
  /** Theme configuration */
82
114
  theme?: TemplateTheme;
83
115
  /** Optional schema for template-level settings */
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAMlD;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAC5B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAM5C;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,MAAM,EAAE,qBAAqB,EAAE,CAAC;IAChC,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,2DAA2D;IAC3D,QAAQ,EAAE,cAAc,CAAC;IACzB,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAMD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAMD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB,6BAA6B;IAC7B,KAAK,EAAE,qBAAqB,EAAE,CAAC;IAE/B,gFAAgF;IAChF,eAAe,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAE3C,0BAA0B;IAC1B,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACtC;AAMD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,cAAc,CAAC;AAE1D;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,cAAc,GACrB,MAAM,IAAI,cAAc,CAE1B"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"AAAA;;GAEG;AAyHH;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAsB;IAEtB,OAAO,OAAO,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAE,MAAyB,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"AAAA;;GAEG;AAgKH;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAsB;IAEtB,OAAO,OAAO,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAE,MAAyB,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cmssy/types",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "Shared type definitions for Cmssy platform",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",