@es-joy/jsoe 0.25.1 → 0.26.1

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/CHANGES.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # CHANGES TO `@es-joy/jsoe`
2
2
 
3
+ ## 0.26.1
4
+
5
+ - fix: validate invalid regexp source edits
6
+ - fix: schema editor readiness and zodexy schema rendering
7
+ - Fixed programmatic schema branch selection so `$setType({specificSchema})` builds the supplied schema-specific UI branch.
8
+ - Made `setValue()` readiness wait for deferred nested control builds before resolving.
9
+ - Preserved `avoidReport` through reference validation during programmatic setup.
10
+ - Fixed validation of flattened schema branches containing `$ref` children by retaining the original schema document for reference resolution.
11
+ - Added Cypress coverage for programmatic schema branch selection and rendering existing schema values with record entries.
12
+
13
+ ## 0.26.0
14
+
15
+ - feat: awaitable readiness for deferred type/editor builds
16
+ - feat: awaitable readiness for type-choices builds (whenReady / $whenReady)
17
+
3
18
  ## 0.25.1
4
19
 
5
20
  - fix: retry if select not connected
@@ -43,6 +43,7 @@
43
43
  * getType: () => string,
44
44
  * validValuesSet: () => boolean,
45
45
  * setValue: SetValue,
46
+ * whenReady: Promise<void>,
46
47
  * formats: import('./formats.js').default,
47
48
  * types: import('./types.js').default
48
49
  * }>} The selector for types and the container for them. Both should be
@@ -70,6 +71,7 @@ export function formatAndTypeChoices({ schemas, getSchemaContent, hasValue, sing
70
71
  getType: () => string;
71
72
  validValuesSet: () => boolean;
72
73
  setValue: SetValue;
74
+ whenReady: Promise<void>;
73
75
  formats: import("./formats.js").default;
74
76
  types: import("./types.js").default;
75
77
  }>;
@@ -97,9 +99,17 @@ export type SetFormat = (cfg: {
97
99
  autoTrigger: boolean;
98
100
  schema?: string;
99
101
  }) => Promise<void>;
102
+ /**
103
+ * Settles once the most recently built type choices have finished their
104
+ * deferred build work. `await` it (or the `whenReady` on the
105
+ * `formatAndTypeChoices` result) instead of guessing a `setTimeout` delay
106
+ * after `$setFormat` / a format change.
107
+ */
108
+ export type WhenReady = () => Promise<void>;
100
109
  export type FormatChoices = HTMLSelectElement & {
101
110
  $setFormat: SetFormat;
102
111
  $buildTypeChoices: TypeChoiceBuilder;
112
+ $whenReady: WhenReady;
103
113
  };
104
114
  import Formats from './formats.js';
105
115
  import Types from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"formatAndTypeChoices.d.ts","sourceRoot":"","sources":["../src/formatAndTypeChoices.js"],"names":[],"mappings":"AA0GA;;;;;GAKG;AAEH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,2OAtCG;IAAuB,OAAO;IACyB,gBAAgB,aAAtD,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC;IAE1B,QAAQ;IAGR,WAAW;IACX,UAAU;IAKV,WAAW;IAEZ,aAAa;IAEb,cAAc;IACU,OAAO;IACT,KAAK;IAC1B,eAAe;IACf,sBAAsB;IAEtB,6BAA6B;CAEnD,GAAU,OAAO,CAAC;IAChB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACnE,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,YAAY,EAAE,WAAW,EACnD,WAAW,EAAE,MAAM,KAAK,OAAO,cAAc,EAAE,oBAAoB,CAAC;IACtE,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,OAAO,CAAC;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,OAAO,cAAc,EAAE,OAAO,CAAC;IACxC,KAAK,EAAE,OAAO,YAAY,EAAE,OAAO,CAAA;CACpC,CAAC,CAgNJ;AA1SM,kHAVJ;IAAuB,OAAO;IACT,cAAc;IACb,UAAU;IAGV,WAAW;IAEX,eAAe;CACrC,GAAU,gBAAgB,CAyC5B;+BAIU,OAAO,cAAc,EAAE,oBAAoB,YAC3C,OAAO,YAAY,EAAE,WAAW,KAC9B,OAAO,CAAC,IAAI,CAAC;0BAIb,OAAO,qBAAqB,EAAE,WAAW;qCA1GzC,iBAAiB,GAAC,IAAI;0BAItB,cAAc;mCAOd,cAAc,GAAC,IAAI;;;;uEASnB,OAAO,CAAC,IAAI,CAAC;;;;8BAQf;IACN,WAAW,CAAC,EAAE,OAAO,cAAc,EAAE,eAAe,CAAC;IACrD,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACS,OAAO,CAAC,IAAI,CAAC;4BAIb,iBAAiB,GAAG;IAC5B,UAAU,EAAE,SAAS,CAAC;IACtB,iBAAiB,EAAE,iBAAiB,CAAA;CACrC;oBA7CgB,cAAc;kBADhB,YAAY"}
1
+ {"version":3,"file":"formatAndTypeChoices.d.ts","sourceRoot":"","sources":["../src/formatAndTypeChoices.js"],"names":[],"mappings":"AAoHA;;;;;GAKG;AAEH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,2OAvCG;IAAuB,OAAO;IACyB,gBAAgB,aAAtD,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC;IAE1B,QAAQ;IAGR,WAAW;IACX,UAAU;IAKV,WAAW;IAEZ,aAAa;IAEb,cAAc;IACU,OAAO;IACT,KAAK;IAC1B,eAAe;IACf,sBAAsB;IAEtB,6BAA6B;CAEnD,GAAU,OAAO,CAAC;IAChB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACnE,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,YAAY,EAAE,WAAW,EACnD,WAAW,EAAE,MAAM,KAAK,OAAO,cAAc,EAAE,oBAAoB,CAAC;IACtE,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,OAAO,CAAC;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,OAAO,EAAE,OAAO,cAAc,EAAE,OAAO,CAAC;IACxC,KAAK,EAAE,OAAO,YAAY,EAAE,OAAO,CAAA;CACpC,CAAC,CA0OJ;AArUM,kHAVJ;IAAuB,OAAO;IACT,cAAc;IACb,UAAU;IAGV,WAAW;IAEX,eAAe;CACrC,GAAU,gBAAgB,CAyC5B;+BAIU,OAAO,cAAc,EAAE,oBAAoB,YAC3C,OAAO,YAAY,EAAE,WAAW,KAC9B,OAAO,CAAC,IAAI,CAAC;0BAIb,OAAO,qBAAqB,EAAE,WAAW;qCApHzC,iBAAiB,GAAC,IAAI;0BAItB,cAAc;mCAOd,cAAc,GAAC,IAAI;;;;uEASnB,OAAO,CAAC,IAAI,CAAC;;;;8BAQf;IACN,WAAW,CAAC,EAAE,OAAO,cAAc,EAAE,eAAe,CAAC;IACrD,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACS,OAAO,CAAC,IAAI,CAAC;;;;;;;8BASb,OAAO,CAAC,IAAI,CAAC;4BAIb,iBAAiB,GAAG;IAC5B,UAAU,EAAE,SAAS,CAAC;IACtB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,UAAU,EAAE,SAAS,CAAA;CACtB;oBAvDgB,cAAc;kBADhB,YAAY"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/formats/schema.js"],"names":[],"mappings":"AAqOA;;;;;;;;;;;;;GAaG;AACH,yCALW,YAAY,CAAC,cAAc,aAAa,EAAE,OAAO,CAAC,aAClD,WAAW,GAAC,SAAS,OACrB,MAAM,GAAC,MAAM,GAAC,SAAS,GACrB,OAAO,CAenB;AAED;;;;;;;;GAQG;AACH,6CALW,YAAY,CAAC,cAAc,aAAa,EAAE,OAAO,CAAC,aAClD,OAAO,QAAQ,EAAE,OAAO,SACxB,OAAO,GACL;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAW5C;AAED;;;;;;;;GAQG;AACH,0CALW,YAAY,CAAC,cAAc,aAAa,EAAE,OAAO,CAAC,UAClD,WAAW,SACX,OAAO,GACL,OAAO,CAInB;AAmCD;;;GAGG;AACH,kDAHW,WAAW,GACT,WAAW,CAIvB;AAyND;;;;GAIG;AACH,gDAJW,WAAW,gBACX,WAAW,GACT,GAAG,CAAC,WAAW,CAAC,CAuR5B;;;;;oBAhzBY,CAAC,IADD,CAAC,CAAC,MAAM,CAAC,CAAC;iCAKV,OAAO,CACf,IAAI,CAAC,OAAO,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CACtC;0BAwSS,OAAO,QAAQ,EAAE,MAAM;2BAGvB,OAAO,qBAAqB,EAAE,YAAY;AAigBvD,6CAA6C;AAC7C,sBADW,OAAO,eAAe,EAAE,MAAM,CA6SvC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/formats/schema.js"],"names":[],"mappings":"AAqOA;;;;;;;;;;;;;GAaG;AACH,yCALW,YAAY,CAAC,cAAc,aAAa,EAAE,OAAO,CAAC,aAClD,WAAW,GAAC,SAAS,OACrB,MAAM,GAAC,MAAM,GAAC,SAAS,GACrB,OAAO,CAenB;AAED;;;;;;;;GAQG;AACH,6CALW,YAAY,CAAC,cAAc,aAAa,EAAE,OAAO,CAAC,aAClD,OAAO,QAAQ,EAAE,OAAO,SACxB,OAAO,GACL;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAW5C;AAED;;;;;;;;GAQG;AACH,0CALW,YAAY,CAAC,cAAc,aAAa,EAAE,OAAO,CAAC,UAClD,WAAW,SACX,OAAO,GACL,OAAO,CAInB;AAiDD;;;GAGG;AACH,kDAHW,WAAW,GACT,WAAW,CAIvB;AAyND;;;;GAIG;AACH,gDAJW,WAAW,gBACX,WAAW,GACT,GAAG,CAAC,WAAW,CAAC,CA6R5B;;;;;oBAp0BY,CAAC,IADD,CAAC,CAAC,MAAM,CAAC,CAAC;iCAKV,OAAO,CACf,IAAI,CAAC,OAAO,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CACtC;0BAwSS,OAAO,QAAQ,EAAE,MAAM;2BAGvB,OAAO,qBAAqB,EAAE,YAAY;AAqhBvD,6CAA6C;AAC7C,sBADW,OAAO,eAAe,EAAE,MAAM,CA+SvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"arrayReferenceType.d.ts","sourceRoot":"","sources":["../../src/fundamentalTypes/arrayReferenceType.js"],"names":[],"mappings":";AAMA;;GAEG;AACH,kCAFU,OAAO,aAAa,EAAE,UAAU,GAAG;IAAC,IAAI,EAAE,OAAO,CAAA;CAAC,CAiN1D"}
1
+ {"version":3,"file":"arrayReferenceType.d.ts","sourceRoot":"","sources":["../../src/fundamentalTypes/arrayReferenceType.js"],"names":[],"mappings":";AAMA;;GAEG;AACH,kCAFU,OAAO,aAAa,EAAE,UAAU,GAAG;IAAC,IAAI,EAAE,OAAO,CAAA;CAAC,CAkN1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"arrayType.d.ts","sourceRoot":"","sources":["../../src/fundamentalTypes/arrayType.js"],"names":[],"mappings":";0CAmBW;IACN,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,aAAa,EAAE,aAAa,CAAC;IAC1C,KAAK,EAAE,OAAO,eAAe,EAAE,oBAAoB,CAAC;IACpD,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,sBAAsB,EAAE,WAAW,CAAC;CAC3D,KACS,OAAO;sBAIP,MAAM;mDAKN,KAAK,GAAC,OAAO;oCAGb,MAAM,gBAAgB,EAAE;+BAGxB,MAAM,CAAC,iBAAiB,GAAG;IACnC,SAAS,EAAE,OAAO,mBAAmB,EAAE,QAAQ,CAAA;CAChD,CAAC,EAAE;6BAGM,MAAM,IAAI;sCAIV,gBAAgB,EAAE;qCAKlB,IAAI;4BAGJ,MAAM,cAAc,GAAG;IAC/B,sBAAsB,EAAE,qBAAqB,CAAC;IAC9C,kBAAkB,EAAE,iBAAiB,CAAC;IACtC,iBAAiB,EAAE,gBAAgB,CAAC;IACpC,iBAAiB,EAAE,gBAAgB,CAAA;CACpC;uBAGS,MAAM,OAAO,CAAC,IAAI,CAAC;2BAKrB;IAAC,WAAW,CAAC,EAAE,IAAI,CAAA;CAAC,KAClB,IAAI;+BAIJ,MAAM,gBAAgB,GAAC,SAAS;uBAIhC,GAAG;AAmBhB;;GAEG;AACH,yBAFU,OAAO,aAAa,EAAE,UAAU,GAAG;IAAC,MAAM,CAAC,EAAE,OAAO,GAAC,SAAS,CAAA;CAAC,CA0kFvE"}
1
+ {"version":3,"file":"arrayType.d.ts","sourceRoot":"","sources":["../../src/fundamentalTypes/arrayType.js"],"names":[],"mappings":";0CAoBW;IACN,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,aAAa,EAAE,aAAa,CAAC;IAC1C,KAAK,EAAE,OAAO,eAAe,EAAE,oBAAoB,CAAC;IACpD,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,sBAAsB,EAAE,WAAW,CAAC;CAC3D,KACS,OAAO;sBAIP,MAAM;mDAKN,KAAK,GAAC,OAAO;oCAGb,MAAM,gBAAgB,EAAE;+BAGxB,MAAM,CAAC,iBAAiB,GAAG;IACnC,SAAS,EAAE,OAAO,mBAAmB,EAAE,QAAQ,CAAA;CAChD,CAAC,EAAE;6BAGM,MAAM,IAAI;sCAIV,gBAAgB,EAAE;qCAKlB,IAAI;4BAGJ,MAAM,cAAc,GAAG;IAC/B,sBAAsB,EAAE,qBAAqB,CAAC;IAC9C,kBAAkB,EAAE,iBAAiB,CAAC;IACtC,iBAAiB,EAAE,gBAAgB,CAAC;IACpC,iBAAiB,EAAE,gBAAgB,CAAA;CACpC;uBAGS,MAAM,OAAO,CAAC,IAAI,CAAC;2BAKrB;IAAC,WAAW,CAAC,EAAE,IAAI,CAAA;CAAC,KAClB,IAAI;+BAIJ,MAAM,gBAAgB,GAAC,SAAS;uBAIhC,GAAG;AAmBhB;;GAEG;AACH,yBAFU,OAAO,aAAa,EAAE,UAAU,GAAG;IAAC,MAAM,CAAC,EAAE,OAAO,GAAC,SAAS,CAAA;CAAC,CAmlFvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"functionType.d.ts","sourceRoot":"","sources":["../../src/fundamentalTypes/functionType.js"],"names":[],"mappings":";;AA8KA;;GAEG;AACH,4BAFU,OAAO,aAAa,EAAE,UAAU,CAgKxC"}
1
+ {"version":3,"file":"functionType.d.ts","sourceRoot":"","sources":["../../src/fundamentalTypes/functionType.js"],"names":[],"mappings":";;AA8KA;;GAEG;AACH,4BAFU,OAAO,aAAa,EAAE,UAAU,CAuKxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"regexpType.d.ts","sourceRoot":"","sources":["../../src/fundamentalTypes/regexpType.js"],"names":[],"mappings":";AAIA;;GAEG;AACH,0BAFU,OAAO,aAAa,EAAE,UAAU,GAAG;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAC,CAuHnE"}
1
+ {"version":3,"file":"regexpType.d.ts","sourceRoot":"","sources":["../../src/fundamentalTypes/regexpType.js"],"names":[],"mappings":";AAIA;;GAEG;AACH,0BAFU,OAAO,aAAa,EAAE,UAAU,GAAG;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAC,CA+HnE"}