@shoplix-ai/sdui-schema 1.3.0 → 1.5.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/binding.d.ts +26 -4
- package/dist/binding.d.ts.map +1 -1
- package/dist/binding.js +23 -3
- package/dist/binding.js.map +1 -1
- package/dist/block-definition.d.ts +85 -13
- package/dist/block-definition.d.ts.map +1 -1
- package/dist/block-definition.js +29 -5
- package/dist/block-definition.js.map +1 -1
- package/dist/blocks.d.ts +277 -6
- package/dist/blocks.d.ts.map +1 -1
- package/dist/blocks.js +33 -0
- package/dist/blocks.js.map +1 -1
- package/dist/definition-validator.d.ts +2 -0
- package/dist/definition-validator.d.ts.map +1 -1
- package/dist/definition-validator.js +30 -0
- package/dist/definition-validator.js.map +1 -1
- package/dist/display.d.ts +163 -7
- package/dist/display.d.ts.map +1 -1
- package/dist/display.js +69 -8
- package/dist/display.js.map +1 -1
- package/dist/envelope.d.ts +148 -22
- package/dist/envelope.d.ts.map +1 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/manifest.d.ts +2 -0
- package/dist/manifest.d.ts.map +1 -1
- package/dist/manifest.js.map +1 -1
- package/dist/parse.d.ts +2 -1
- package/dist/parse.d.ts.map +1 -1
- package/dist/parse.js +4 -1
- package/dist/parse.js.map +1 -1
- package/dist/screen.d.ts +27 -5
- package/dist/screen.d.ts.map +1 -1
- package/dist/screen.js +39 -1
- package/dist/screen.js.map +1 -1
- package/dist/theme.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAI9C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAI9C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAcxF,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAarB,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAyCvE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGpD,OAAO,EACL,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,UAAU,EACV,YAAY,EACZ,oBAAoB,EACpB,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,cAAc,EACd,SAAS,EACT,cAAc,EACd,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAoCzB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,EACf,yBAAyB,EACzB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AA8B/B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClG,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAO7C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAU3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAanD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAStF,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAiB3F,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,EACtB,6BAA6B,EAC7B,0BAA0B,EAC1B,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
|
package/dist/manifest.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ export interface BlockManifestEntry {
|
|
|
9
9
|
/** null = allowed on every editable screen kind. */
|
|
10
10
|
readonly allowedScreenKinds: readonly ScreenKind[] | null;
|
|
11
11
|
readonly maxPerScreen: number | null;
|
|
12
|
+
/** Pinned to the bottom of the screen, outside the list; one per screen. */
|
|
13
|
+
readonly pinned?: 'bottom';
|
|
12
14
|
};
|
|
13
15
|
readonly binding: {
|
|
14
16
|
readonly kind: BindingKind;
|
package/dist/manifest.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IACrD,QAAQ,CAAC,SAAS,EAAE;QAClB,oDAAoD;QACpD,QAAQ,CAAC,kBAAkB,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,CAAC;QAC1D,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IACrD,QAAQ,CAAC,SAAS,EAAE;QAClB,oDAAoD;QACpD,QAAQ,CAAC,kBAAkB,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,CAAC;QAC1D,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QACrC,4EAA4E;QAC5E,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC;KAC5B,CAAC;IACF,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;QAC3B,QAAQ,CAAC,WAAW,EAAE,SAAS,iBAAiB,EAAE,CAAC;KACpD,GAAG,IAAI,CAAC;IACT,2DAA2D;IAC3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AASD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAqO1E,CAAC"}
|
package/dist/manifest.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAwBA,MAAM,OAAO,GAAG,qBAAqB,CAAC;AAEtC,MAAM,iBAAiB,GAAG;IACxB,SAAS,EAAE,EAAE,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;IAC/D,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE;CAC9C,CAAC;AAEX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAoD;IAC7E,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,cAAc,EAAE;QACd,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,UAAU,EAAE;QACV,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE;QACxD,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,OAAO;QACjB,gBAAgB,EAAE,CAAC;KACpB;IACD,WAAW,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,kBAAkB;QACzB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE;QACxD,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,OAAO;QACjB,gBAAgB,EAAE,CAAC;KACpB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE;QACtD,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,kBAAkB;QACzB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;QAClE,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;QAClE,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;QAClE,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,oBAAoB;QAC3B,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE;QAC1D,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE;QAC1D,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,cAAc,EAAE;QACd,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QAC3D,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE;QAC1D,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE,UAAU;QACjB,GAAG,iBAAiB;QACpB,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE,UAAU;QACjB,GAAG,iBAAiB;QACpB,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,cAAc,EAAE;QACd,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,UAAU;QACjB,GAAG,iBAAiB;QACpB,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,WAAW,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,UAAU;QACjB,GAAG,iBAAiB;QACpB,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,UAAU;QACjB,GAAG,iBAAiB;QACpB,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,UAAU;QACjB,GAAG,iBAAiB;QACpB,QAAQ,EAAE,IAAI;QACd,gBAAgB,EAAE,CAAC;KACpB;CACF,CAAC"}
|
package/dist/parse.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { type ThemeTokens } from './tokens.js';
|
|
|
5
5
|
import { type ScreenDocument } from './screen.js';
|
|
6
6
|
import { type ThemeDocument } from './theme.js';
|
|
7
7
|
import { type EnvelopeBlockDefinitions, type PreviewScreenEnvelope, type PreviewShellEnvelope, type ScreenEnvelope, type ShellEnvelope } from './envelope.js';
|
|
8
|
-
import { type CollectionDisplay, type ProductDisplay } from './display.js';
|
|
8
|
+
import { type CartDisplay, type CollectionDisplay, type ProductDisplay } from './display.js';
|
|
9
9
|
export interface ParseIssue {
|
|
10
10
|
readonly path: string;
|
|
11
11
|
readonly message: string;
|
|
@@ -30,4 +30,5 @@ export declare function parsePreviewScreenEnvelope(input: unknown): ParseResult<
|
|
|
30
30
|
export declare function parseEnvelopeBlockDefinitions(input: unknown): ParseResult<EnvelopeBlockDefinitions>;
|
|
31
31
|
export declare function parseProductDisplay(input: unknown): ParseResult<ProductDisplay>;
|
|
32
32
|
export declare function parseCollectionDisplay(input: unknown): ParseResult<CollectionDisplay>;
|
|
33
|
+
export declare function parseCartDisplay(input: unknown): ParseResult<CartDisplay>;
|
|
33
34
|
//# sourceMappingURL=parse.d.ts.map
|
package/dist/parse.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,EAML,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,EAML,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GACxC;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;CAAE,CAAC;AAuBnE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,aAAa,CAAC,CAE7E;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAEjE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,eAAe,CAAC,CAEjF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAEzE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,cAAc,CAAC,CAE/E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,aAAa,CAAC,CAE7E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,aAAa,CAAC,CAE7E;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,cAAc,CAAC,CAE/E;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,oBAAoB,CAAC,CAE3F;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAE7F;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,OAAO,GACb,WAAW,CAAC,wBAAwB,CAAC,CAEvC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,cAAc,CAAC,CAE/E;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAErF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAEzE"}
|
package/dist/parse.js
CHANGED
|
@@ -6,7 +6,7 @@ import { themeTokensSchema } from './tokens.js';
|
|
|
6
6
|
import { screenDocumentSchema } from './screen.js';
|
|
7
7
|
import { themeDocumentSchema } from './theme.js';
|
|
8
8
|
import { envelopeBlockDefinitionsSchema, previewScreenEnvelopeSchema, previewShellEnvelopeSchema, screenEnvelopeSchema, shellEnvelopeSchema, } from './envelope.js';
|
|
9
|
-
import { collectionDisplaySchema, productDisplaySchema, } from './display.js';
|
|
9
|
+
import { cartDisplaySchema, collectionDisplaySchema, productDisplaySchema, } from './display.js';
|
|
10
10
|
function run(schema, input) {
|
|
11
11
|
const result = schema.safeParse(input);
|
|
12
12
|
if (result.success)
|
|
@@ -58,4 +58,7 @@ export function parseProductDisplay(input) {
|
|
|
58
58
|
export function parseCollectionDisplay(input) {
|
|
59
59
|
return run(collectionDisplaySchema, input);
|
|
60
60
|
}
|
|
61
|
+
export function parseCartDisplay(input) {
|
|
62
|
+
return run(cartDisplaySchema, input);
|
|
63
|
+
}
|
|
61
64
|
//# sourceMappingURL=parse.js.map
|
package/dist/parse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAsB,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,aAAa,EAAgB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAwB,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAoB,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAuB,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAsB,MAAM,YAAY,CAAC;AACrE,OAAO,EACL,8BAA8B,EAC9B,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,GAMpB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"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"}
|
package/dist/screen.d.ts
CHANGED
|
@@ -5,9 +5,9 @@ declare const screenKindSchema: z.ZodEnum<{
|
|
|
5
5
|
custom: "custom";
|
|
6
6
|
product: "product";
|
|
7
7
|
collection: "collection";
|
|
8
|
+
cart: "cart";
|
|
8
9
|
search: "search";
|
|
9
10
|
home: "home";
|
|
10
|
-
cart: "cart";
|
|
11
11
|
account: "account";
|
|
12
12
|
}>;
|
|
13
13
|
export declare const screenDocumentSchema: z.ZodObject<{
|
|
@@ -16,9 +16,9 @@ export declare const screenDocumentSchema: z.ZodObject<{
|
|
|
16
16
|
custom: "custom";
|
|
17
17
|
product: "product";
|
|
18
18
|
collection: "collection";
|
|
19
|
+
cart: "cart";
|
|
19
20
|
search: "search";
|
|
20
21
|
home: "home";
|
|
21
|
-
cart: "cart";
|
|
22
22
|
account: "account";
|
|
23
23
|
}>;
|
|
24
24
|
slug: z.ZodOptional<z.ZodString>;
|
|
@@ -36,9 +36,9 @@ export declare const screenRefSchema: z.ZodObject<{
|
|
|
36
36
|
custom: "custom";
|
|
37
37
|
product: "product";
|
|
38
38
|
collection: "collection";
|
|
39
|
+
cart: "cart";
|
|
39
40
|
search: "search";
|
|
40
41
|
home: "home";
|
|
41
|
-
cart: "cart";
|
|
42
42
|
account: "account";
|
|
43
43
|
}>;
|
|
44
44
|
slug: z.ZodOptional<z.ZodString>;
|
|
@@ -47,11 +47,33 @@ export type ScreenKind = z.infer<typeof screenKindSchema>;
|
|
|
47
47
|
export type ScreenRef = z.infer<typeof screenRefSchema>;
|
|
48
48
|
export type ScreenDocument = z.infer<typeof screenDocumentSchema>;
|
|
49
49
|
/** What a Binding of form `subject` resolves to on a screen, if anything. */
|
|
50
|
-
export type SubjectKind = 'product' | 'collection';
|
|
50
|
+
export type SubjectKind = 'product' | 'collection' | 'cart';
|
|
51
51
|
/**
|
|
52
|
-
* The Screen Subject a kind carries
|
|
52
|
+
* The Screen Subject a kind carries: the product or collection the buyer
|
|
53
|
+
* opened, or the cart the buyer holds. Every other kind carries none, so a
|
|
53
54
|
* Binding welded to the subject cannot be placed there at all.
|
|
54
55
|
*/
|
|
55
56
|
export declare function screenSubject(kind: ScreenKind): SubjectKind | null;
|
|
57
|
+
export declare const SCREEN_ISSUE: {
|
|
58
|
+
readonly pinnedTwice: "SDUI_PINNED_TWICE";
|
|
59
|
+
};
|
|
60
|
+
export type ScreenIssueCode = (typeof SCREEN_ISSUE)[keyof typeof SCREEN_ISSUE];
|
|
61
|
+
export interface ScreenIssue {
|
|
62
|
+
readonly code: ScreenIssueCode;
|
|
63
|
+
readonly path: string;
|
|
64
|
+
readonly message: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* One pinned block per screen. Whether a block is pinned is its Block Type's
|
|
68
|
+
* placement, which the document does not carry, so the caller hands the
|
|
69
|
+
* placement of each type in: the manifest for a platform type, the Block
|
|
70
|
+
* Definition for a Shop's own. A type without one is skipped here and refused
|
|
71
|
+
* by availability. Paths are relative to the screen.
|
|
72
|
+
*/
|
|
73
|
+
export declare function pinnedBlockIssues(blocks: ReadonlyArray<{
|
|
74
|
+
readonly type: string;
|
|
75
|
+
}>, placementOf: (type: string) => {
|
|
76
|
+
readonly pinned?: 'bottom' | undefined;
|
|
77
|
+
} | null | undefined): ScreenIssue[];
|
|
56
78
|
export {};
|
|
57
79
|
//# sourceMappingURL=screen.d.ts.map
|
package/dist/screen.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../src/screen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../src/screen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,+EAA+E;AAC/E,eAAO,MAAM,YAAY,mFAQf,CAAC;AAEX,QAAA,MAAM,gBAAgB;;;;;;;;EAAuB,CAAC;AAO9C,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;iBAiC7B,CAAC;AAEL;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;iBAaxB,CAAC;AAEL,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,6EAA6E;AAC7E,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,YAAY,GAAG,MAAM,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,IAAI,CAKlE;AAED,eAAO,MAAM,YAAY;;CAEf,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE/E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,aAAa,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAChD,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,GAC3F,WAAW,EAAE,CAef"}
|
package/dist/screen.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { localizedTextSchema } from './locale.js';
|
|
3
3
|
import { blockSchema } from './blocks.js';
|
|
4
|
+
import { definitionPathOf } from './path.js';
|
|
4
5
|
/** All seven kinds are reserved; which ones are editable is the api's call. */
|
|
5
6
|
export const SCREEN_KINDS = [
|
|
6
7
|
'home',
|
|
@@ -41,6 +42,13 @@ export const screenDocumentSchema = z
|
|
|
41
42
|
});
|
|
42
43
|
}
|
|
43
44
|
seen.add(block.id);
|
|
45
|
+
if (screen.kind !== 'cart' && block.cartVisibility !== undefined) {
|
|
46
|
+
ctx.addIssue({
|
|
47
|
+
code: 'custom',
|
|
48
|
+
message: 'only the cart screen carries a cart-state visibility',
|
|
49
|
+
path: ['blocks', index, 'cartVisibility'],
|
|
50
|
+
});
|
|
51
|
+
}
|
|
44
52
|
});
|
|
45
53
|
});
|
|
46
54
|
/**
|
|
@@ -63,7 +71,8 @@ export const screenRefSchema = z
|
|
|
63
71
|
}
|
|
64
72
|
});
|
|
65
73
|
/**
|
|
66
|
-
* The Screen Subject a kind carries
|
|
74
|
+
* The Screen Subject a kind carries: the product or collection the buyer
|
|
75
|
+
* opened, or the cart the buyer holds. Every other kind carries none, so a
|
|
67
76
|
* Binding welded to the subject cannot be placed there at all.
|
|
68
77
|
*/
|
|
69
78
|
export function screenSubject(kind) {
|
|
@@ -71,6 +80,35 @@ export function screenSubject(kind) {
|
|
|
71
80
|
return 'product';
|
|
72
81
|
if (kind === 'collection')
|
|
73
82
|
return 'collection';
|
|
83
|
+
if (kind === 'cart')
|
|
84
|
+
return 'cart';
|
|
74
85
|
return null;
|
|
75
86
|
}
|
|
87
|
+
export const SCREEN_ISSUE = {
|
|
88
|
+
pinnedTwice: 'SDUI_PINNED_TWICE',
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* One pinned block per screen. Whether a block is pinned is its Block Type's
|
|
92
|
+
* placement, which the document does not carry, so the caller hands the
|
|
93
|
+
* placement of each type in: the manifest for a platform type, the Block
|
|
94
|
+
* Definition for a Shop's own. A type without one is skipped here and refused
|
|
95
|
+
* by availability. Paths are relative to the screen.
|
|
96
|
+
*/
|
|
97
|
+
export function pinnedBlockIssues(blocks, placementOf) {
|
|
98
|
+
const issues = [];
|
|
99
|
+
let pinnedSeen = false;
|
|
100
|
+
blocks.forEach((block, index) => {
|
|
101
|
+
if (placementOf(block.type)?.pinned === undefined)
|
|
102
|
+
return;
|
|
103
|
+
if (pinnedSeen) {
|
|
104
|
+
issues.push({
|
|
105
|
+
code: SCREEN_ISSUE.pinnedTwice,
|
|
106
|
+
path: definitionPathOf(['blocks', index]),
|
|
107
|
+
message: `a screen holds one pinned block; "${block.type}" is a second`,
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
pinnedSeen = true;
|
|
111
|
+
});
|
|
112
|
+
return issues;
|
|
113
|
+
}
|
|
76
114
|
//# sourceMappingURL=screen.js.map
|
package/dist/screen.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screen.js","sourceRoot":"","sources":["../src/screen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"screen.js","sourceRoot":"","sources":["../src/screen.ts"],"names":[],"mappings":"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"}
|
package/dist/theme.d.ts
CHANGED
|
@@ -37,9 +37,9 @@ export declare const themeDocumentSchema: z.ZodObject<{
|
|
|
37
37
|
custom: "custom";
|
|
38
38
|
product: "product";
|
|
39
39
|
collection: "collection";
|
|
40
|
+
cart: "cart";
|
|
40
41
|
search: "search";
|
|
41
42
|
home: "home";
|
|
42
|
-
cart: "cart";
|
|
43
43
|
account: "account";
|
|
44
44
|
}>;
|
|
45
45
|
slug: z.ZodOptional<z.ZodString>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shoplix-ai/sdui-schema",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"description": "Zod source of truth for the Shoplix SDUI contract: documents, Bindings, tokens, block manifest, envelopes and display shapes. Consumers import parse helpers and inferred types; zod stays inside.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|