@quillmark/wasm 0.108.0 → 0.108.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/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.108.1 - 2026-08-19
4
+
5
+ - fix: **a content cell under `variants:` is readable at its codec.**
6
+ `schema_at`, the walk behind `reader.get_content_at`, stepped `items` and
7
+ `properties` where conform steps `variants` as well, so a key into a variant
8
+ container fell to the catch-all and answered `edit::field_not_content` naming
9
+ `enum` — for a cell the same config declares `plaintext`. Such a cell stored,
10
+ conformed, seeded, validated and rendered, and nothing could read it back, so
11
+ no consumer could mount a content editor over it. The walk unions the worlds,
12
+ so a cell of a world that is not live reads absent rather than raising, as a
13
+ stale row index does; a name no world declares is `edit::unknown_field`, and a
14
+ variantless enum stays a scalar. The write is unchanged — a variant container
15
+ has no per-cell op address and needs none, committing whole.
16
+
17
+ <!-- seed: commits since v0.108.0, confirm the entries above cover them, then delete this comment
18
+ - fix: a content cell under `variants:` reads at its codec
19
+ -->
20
+
21
+
3
22
  ## v0.108.0 - 2026-08-18
4
23
 
5
24
  - fix: **the value ladder is cut per cell, so the plate is total at every
@@ -196,7 +196,8 @@ export class Document {
196
196
  * and [`reader.getContent`](Self::reader_get_content) with the path spelled
197
197
  * out. `path` is a `PathStep[]` from the field to the leaf — `[0]` an
198
198
  * element of an `array<richtext>`, `["motto"]` an `object`'s content
199
- * property, `[1, "notes"]` a leaf under both.
199
+ * property, `[1, "notes"]` a leaf under both, `["controlled_by"]` a
200
+ * variant's cell.
200
201
  *
201
202
  * The codec is the leaf's declared type's, so the caller stops deciding
202
203
  * what an element's stored bytes mean. Total over the storage form, as the
Binary file
@@ -196,7 +196,8 @@ export class Document {
196
196
  * and [`reader.getContent`](Self::reader_get_content) with the path spelled
197
197
  * out. `path` is a `PathStep[]` from the field to the leaf — `[0]` an
198
198
  * element of an `array<richtext>`, `["motto"]` an `object`'s content
199
- * property, `[1, "notes"]` a leaf under both.
199
+ * property, `[1, "notes"]` a leaf under both, `["controlled_by"]` a
200
+ * variant's cell.
200
201
  *
201
202
  * The codec is the leaf's declared type's, so the caller stops deciding
202
203
  * what an element's stored bytes mean. Total over the storage form, as the
Binary file
package/core/wasm.js CHANGED
@@ -196,7 +196,8 @@ export class Document {
196
196
  * and [`reader.getContent`](Self::reader_get_content) with the path spelled
197
197
  * out. `path` is a `PathStep[]` from the field to the leaf — `[0]` an
198
198
  * element of an `array<richtext>`, `["motto"]` an `object`'s content
199
- * property, `[1, "notes"]` a leaf under both.
199
+ * property, `[1, "notes"]` a leaf under both, `["controlled_by"]` a
200
+ * variant's cell.
200
201
  *
201
202
  * The codec is the leaf's declared type's, so the caller stops deciding
202
203
  * what an element's stored bytes mean. Total over the storage form, as the
package/core/wasm_bg.wasm CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quillmark/wasm",
3
- "version": "0.108.0",
3
+ "version": "0.108.1",
4
4
  "description": "WebAssembly bindings for Quillmark, a schema-driven document engine",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -771,10 +771,10 @@ export declare class DocumentReader {
771
771
  /**
772
772
  * Read the `Content` nested inside the composite field at `addr`, at `path`:
773
773
  * `[0]` an element of an `array<richtext>`, `["motto"]` an object's content
774
- * property, `[1, "notes"]` a leaf under both. The codec is the leaf's declared
775
- * type's, resolved through the field schema's `items` / `properties`, so the
776
- * element's storage form is not the caller's business. The empty path is
777
- * {@link getContent}.
774
+ * property, `[1, "notes"]` a leaf under both, `["controlled_by"]` a variant's
775
+ * cell. The codec is the leaf's declared type's, resolved through the field
776
+ * schema's `items` / `properties` / `variants`, so the element's storage
777
+ * form is not the caller's business. The empty path is {@link getContent}.
778
778
  *
779
779
  * `undefined` for an absent field and for a path that names nothing in the
780
780
  * stored value: a repeater's row index goes stale between derive and read,
@@ -1205,7 +1205,8 @@ export class DocumentReader {
1205
1205
  /**
1206
1206
  * Read the `Content` nested inside the composite field at `addr`, at `path`:
1207
1207
  * `[0]` an `array<richtext>` element, `["motto"]` an object's content property,
1208
- * `[1, "notes"]` a leaf under both. The codec is the leaf's declared type's.
1208
+ * `[1, "notes"]` a leaf under both, `["controlled_by"]` a variant's cell. The
1209
+ * codec is the leaf's declared type's.
1209
1210
  * `undefined` for an absent field and for a path that names nothing stored;
1210
1211
  * throws `UnknownField`, `FieldNotContent` when `path` resolves to no content
1211
1212
  * leaf, `FieldDecode` anchored at the addressed path, and `IndexOutOfRange`.