@quillmark/wasm 0.97.0 → 0.99.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/CHANGELOG.md +303 -0
- package/LICENSE +13 -0
- package/README.md +63 -60
- package/backends/pdfform/wasm.d.ts +300 -143
- package/backends/pdfform/wasm_bg.js +101 -102
- package/backends/pdfform/wasm_bg.wasm +0 -0
- package/backends/typst/wasm.d.ts +300 -143
- package/backends/typst/wasm_bg.js +101 -102
- package/backends/typst/wasm_bg.wasm +0 -0
- package/core/wasm.d.ts +127 -93
- package/core/wasm_bg.js +84 -82
- package/core/wasm_bg.wasm +0 -0
- package/package.json +2 -2
- package/runtime/runtime.d.ts +157 -79
- package/runtime/runtime.js +375 -95
|
@@ -21,7 +21,7 @@ export class Document {
|
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
23
|
* Build a composable card of `kind`, typed-commit `fields` onto it, set its
|
|
24
|
-
* body from optional markdown, and place it
|
|
24
|
+
* body from optional markdown, and place it: the ABI under `writer.addCard`.
|
|
25
25
|
* `at` picks the position: absent appends, a number inserts at that index
|
|
26
26
|
* (`0..=cards.length`), so a positioned typed insert is one atomic call
|
|
27
27
|
* rather than `addCard` + `moveCard`. Fuses `makeCard` + typed commit +
|
|
@@ -58,7 +58,7 @@ export class Document {
|
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
60
|
* Typed field write at `addr`, resolving the field's schema `type` from
|
|
61
|
-
* `quill
|
|
61
|
+
* `quill`: the stable ABI under the runtime `writer.set` / `writer.card(i).set`.
|
|
62
62
|
* The one write verb for **every** field type (richtext, scalar, array,
|
|
63
63
|
* object); the schema carries the `inline` constraint, so no type token or
|
|
64
64
|
* flag is passed. A richtext-typed field stores the canonical content, so
|
|
@@ -69,10 +69,10 @@ export class Document {
|
|
|
69
69
|
*
|
|
70
70
|
* A bare string is `Addr` shorthand for `{ field }`; `{ card, field }`
|
|
71
71
|
* targets a composable card (its `$kind` resolves the schema). A body
|
|
72
|
-
* address throws
|
|
72
|
+
* address throws: a body has no field schema; write it with `writer.setBody`
|
|
73
73
|
* / `revise`. A field declared in the schema is strict-committed (a mismatch
|
|
74
74
|
* throws now, not at render); a name the schema does not declare throws
|
|
75
|
-
* `edit::unknown_field` rather than falling to the opaque store
|
|
75
|
+
* `edit::unknown_field` rather than falling to the opaque store: on
|
|
76
76
|
* the typed path it is a typo. Use [`storeField`](Document::store_field) for
|
|
77
77
|
* opaque storage. Also throws `edit::field_conform` /
|
|
78
78
|
* `edit::field_richtext_decode` / `edit::field_richtext_not_inline`
|
|
@@ -105,7 +105,7 @@ export class Document {
|
|
|
105
105
|
* field's schema `type` from `quill`. `addr` is a **card address**
|
|
106
106
|
* (`{ card }`, absent = main; a present `field` throws). All-or-nothing with
|
|
107
107
|
* the same per-field-diagnostic error contract as
|
|
108
|
-
* [`storeFields`](Document::store_fields)
|
|
108
|
+
* [`storeFields`](Document::store_fields): nothing is applied on error and
|
|
109
109
|
* the thrown error's `diagnostics` carry one entry per offending field,
|
|
110
110
|
* including an `edit::unknown_field` for any name the schema does not
|
|
111
111
|
* declare, so a whole-form submit sees every typo in one pass. Throws on an
|
|
@@ -130,7 +130,7 @@ export class Document {
|
|
|
130
130
|
}
|
|
131
131
|
/**
|
|
132
132
|
* Interpreted read at `addr`, resolving the field's declared `type` from
|
|
133
|
-
* `quill
|
|
133
|
+
* `quill`: the stable ABI under the runtime `reader.get` / `reader.card(i).get`.
|
|
134
134
|
* The schema-plane twin of the quill-free [`getStored`](Self::get_stored): a `richtext`
|
|
135
135
|
* field returns its markdown projection, every other declared type its
|
|
136
136
|
* canonical value verbatim, so a consumer holding the quill reads by field
|
|
@@ -139,10 +139,10 @@ export class Document {
|
|
|
139
139
|
* A bare string is `Addr` shorthand for `{ field }`; `{ card, field }`
|
|
140
140
|
* targets a composable card (its `$kind` resolves the schema). Returns
|
|
141
141
|
* `undefined` for an **absent** field. An absent `addr.field` reads the body
|
|
142
|
-
* markdown
|
|
142
|
+
* markdown: quill-free, mirroring [`getMarkdown`](Self::get_markdown), since
|
|
143
143
|
* a body's type is a format fact, not a schema fact. A name the schema does
|
|
144
144
|
* not declare throws `edit::unknown_field` (the authority `getMarkdown`
|
|
145
|
-
* lacks
|
|
145
|
+
* lacks: there an unknown name reads back `undefined`); a `richtext` field
|
|
146
146
|
* holding a value that does not decode throws `edit::field_richtext_decode`;
|
|
147
147
|
* an out-of-range `addr.card` throws.
|
|
148
148
|
*
|
|
@@ -170,7 +170,7 @@ export class Document {
|
|
|
170
170
|
}
|
|
171
171
|
/**
|
|
172
172
|
* Revise the richtext field at `addr` from markdown, typed *and*
|
|
173
|
-
* anchor-preserving
|
|
173
|
+
* anchor-preserving: the ABI under `writer.reviseField`. Resolves the
|
|
174
174
|
* field's schema from `quill` (main card, or the addressed card's `$kind`)
|
|
175
175
|
* and defers to [`TypedWriter::revise_field`](quillmark_core::TypedWriter::revise_field):
|
|
176
176
|
* surviving anchors rebase (as [`revise`](Self::revise)), then the diffed
|
|
@@ -179,7 +179,7 @@ export class Document {
|
|
|
179
179
|
* text `Delta`.
|
|
180
180
|
*
|
|
181
181
|
* `addr` must name a field (a bare string is `{ field }`); a body address
|
|
182
|
-
* throws (a body carries no field schema
|
|
182
|
+
* throws (a body carries no field schema: use [`revise`](Self::revise)). A
|
|
183
183
|
* name the schema does not declare throws `edit::unknown_field`. Throws
|
|
184
184
|
* on an out-of-range card. Hidden from the `.d.ts`; the visible verb is
|
|
185
185
|
* `writer.reviseField` in the runtime layer.
|
|
@@ -208,7 +208,7 @@ export class Document {
|
|
|
208
208
|
}
|
|
209
209
|
/**
|
|
210
210
|
* **Apply** a committed content edit `bundle` (`{ delta?, lineOps?, markOps? }`)
|
|
211
|
-
* at `addr
|
|
211
|
+
* at `addr`, the editor splice: text delta first, then line ops, then mark
|
|
212
212
|
* ops (mark ranges in final-text coordinates), each all-or-nothing. An absent
|
|
213
213
|
* `addr.field` targets the body, an absent `addr.card` the main card.
|
|
214
214
|
*
|
|
@@ -258,7 +258,7 @@ export class Document {
|
|
|
258
258
|
}
|
|
259
259
|
}
|
|
260
260
|
/**
|
|
261
|
-
* A single composable card by index
|
|
261
|
+
* A single composable card by index: the whole `Card`, the card-indexed
|
|
262
262
|
* twin of the [`main`](Self::main) getter, so reading one card need not
|
|
263
263
|
* materialize every card via [`cards`](Self::cards). An out-of-range
|
|
264
264
|
* `index` throws `edit::index_out_of_range`, matching the card write
|
|
@@ -459,7 +459,7 @@ export class Document {
|
|
|
459
459
|
}
|
|
460
460
|
/**
|
|
461
461
|
* The whole `$ext` map at `addr` (a card address, absent `card` = main), or
|
|
462
|
-
* `undefined` when the card carries none. The fine-grained `$ext` read
|
|
462
|
+
* `undefined` when the card carries none. The fine-grained `$ext` read:
|
|
463
463
|
* your own state without serializing the whole card. Throws on a present
|
|
464
464
|
* `field` (a card address takes only `card`) or an out-of-range card.
|
|
465
465
|
* @param {CardAddr} [addr]
|
|
@@ -482,7 +482,7 @@ export class Document {
|
|
|
482
482
|
}
|
|
483
483
|
/**
|
|
484
484
|
* The value stored under `$ext[ns]` at `addr` (a card address, absent `card`
|
|
485
|
-
* = main), or `undefined`. The namespace-scoped `$ext` read
|
|
485
|
+
* = main), or `undefined`. The namespace-scoped `$ext` read: your own slot
|
|
486
486
|
* without a whole-card serialize, and non-destructive (unlike
|
|
487
487
|
* `removeExtNamespace`). Throws on a present `field` or an out-of-range card.
|
|
488
488
|
* @param {CardAddr} addr
|
|
@@ -507,15 +507,15 @@ export class Document {
|
|
|
507
507
|
}
|
|
508
508
|
}
|
|
509
509
|
/**
|
|
510
|
-
* The **body** markdown projection
|
|
511
|
-
* body (`{ card }`)
|
|
510
|
+
* The **body** markdown projection (the main body, or a composable card's
|
|
511
|
+
* body (`{ card }`)) the on-demand, lossy export (content-only marks do not
|
|
512
512
|
* survive markdown). A body's type is a format fact, not a schema fact, so
|
|
513
513
|
* this read stays quill-free; a body is never absent.
|
|
514
514
|
*
|
|
515
515
|
* `addr` is an optional **card address** (`{ card }`, absent = main). A
|
|
516
|
-
* present `field` throws
|
|
516
|
+
* present `field` throws: a field's markdown is read through the
|
|
517
517
|
* schema-plane `quill.reader(doc).get(field)`, which interprets by declared
|
|
518
|
-
* type
|
|
518
|
+
* type. An out-of-range `addr.card` throws.
|
|
519
519
|
* @param {CardAddr} [addr]
|
|
520
520
|
* @returns {string}
|
|
521
521
|
*/
|
|
@@ -535,13 +535,13 @@ export class Document {
|
|
|
535
535
|
}
|
|
536
536
|
}
|
|
537
537
|
/**
|
|
538
|
-
* Read the **verbatim stored value** at `addr
|
|
538
|
+
* Read the **verbatim stored value** at `addr`: the raw payload value of a
|
|
539
539
|
* field (a content object for a richtext field, a scalar/array/object
|
|
540
540
|
* otherwise), or the **body content** when `addr.field` is absent. A bare
|
|
541
541
|
* string is `Addr` shorthand for `{ field }`. Reads are total over the field
|
|
542
542
|
* axis: an absent field is `undefined`; only an out-of-range `addr.card`
|
|
543
543
|
* throws `edit::index_out_of_range`. Needs no schema, so it lives on
|
|
544
|
-
* `Document
|
|
544
|
+
* `Document`: the read echo of the verbatim `store*` write, distinct from
|
|
545
545
|
* the interpreted schema-plane [`reader.get`](Self::reader_get). For the
|
|
546
546
|
* markdown projection use [`getMarkdown`](Self::get_markdown) (body) or
|
|
547
547
|
* `reader.get` (a field's declared type).
|
|
@@ -564,9 +564,9 @@ export class Document {
|
|
|
564
564
|
}
|
|
565
565
|
}
|
|
566
566
|
/**
|
|
567
|
-
* Insert a card
|
|
567
|
+
* Insert a card, the single insertion verb: `at` absent appends, a number
|
|
568
568
|
* inserts at that index (must be in `0..=cards.length`). Accepts a
|
|
569
|
-
* `CardInput
|
|
569
|
+
* `CardInput`: a card read back (`cards` / `removeCard` / `quill.seedCard`),
|
|
570
570
|
* a [`makeCard`](Document::make_card) result, or a bare `{ kind, body }`
|
|
571
571
|
* (every returned `Card` is a valid `CardInput`). Throws if `card.kind` is
|
|
572
572
|
* not a valid kind name, or if `at` is out of range.
|
|
@@ -587,7 +587,7 @@ export class Document {
|
|
|
587
587
|
}
|
|
588
588
|
}
|
|
589
589
|
/**
|
|
590
|
-
* **Install** a richtext value at `addr
|
|
590
|
+
* **Install** a richtext value at `addr`: **value semantics**, content only.
|
|
591
591
|
* Stores exactly `rt` (a canonical `Content` content object); the identity
|
|
592
592
|
* anchors of any previous value are gone. An absent `addr.field` targets the
|
|
593
593
|
* body, an absent `addr.card` the main card. For "here's new markdown," use
|
|
@@ -615,7 +615,7 @@ export class Document {
|
|
|
615
615
|
}
|
|
616
616
|
/**
|
|
617
617
|
* Whether the field at `addr` is marked `!must_fill`. A bare string is `Addr`
|
|
618
|
-
* shorthand for `{ field }`. `false` for an absent field (truthful
|
|
618
|
+
* shorthand for `{ field }`. `false` for an absent field (truthful: it isn't
|
|
619
619
|
* marked) and for a body address (a body is never a fill). Only an
|
|
620
620
|
* out-of-range `addr.card` throws.
|
|
621
621
|
* @param {Addr | string} addr
|
|
@@ -638,13 +638,13 @@ export class Document {
|
|
|
638
638
|
}
|
|
639
639
|
/**
|
|
640
640
|
* Replace this document's contents **in place** from a versioned storage
|
|
641
|
-
* DTO string
|
|
641
|
+
* DTO string: the mutating twin of the static
|
|
642
642
|
* [`fromJson`](Document::from_json) constructor. Parse-time `warnings` are
|
|
643
643
|
* cleared. Throws (leaving the document unchanged) on an invalid DTO.
|
|
644
644
|
*
|
|
645
645
|
* The cross-WASM-memory `Document` bridge: mutate a document on a
|
|
646
646
|
* backend-memory clone, then write the mutated state back into the caller's
|
|
647
|
-
* canonical document with this
|
|
647
|
+
* canonical document with this, the one way to update a live handle across
|
|
648
648
|
* the linear-memory seam without the caller re-binding its variable.
|
|
649
649
|
* @param {string} json
|
|
650
650
|
*/
|
|
@@ -665,7 +665,7 @@ export class Document {
|
|
|
665
665
|
}
|
|
666
666
|
/**
|
|
667
667
|
* The document's main (entry) card. Allocates and serializes on each
|
|
668
|
-
* call
|
|
668
|
+
* call: cache locally if read in a hot loop.
|
|
669
669
|
* @returns {Card}
|
|
670
670
|
*/
|
|
671
671
|
get main() {
|
|
@@ -684,11 +684,19 @@ export class Document {
|
|
|
684
684
|
}
|
|
685
685
|
}
|
|
686
686
|
/**
|
|
687
|
-
* Build a fresh `Card` from a kind and a flat field map
|
|
687
|
+
* Build a fresh `Card` from a kind and a flat field map: the ergonomic
|
|
688
688
|
* constructor for `insertCard`. `fields` is an optional
|
|
689
689
|
* `Record<string, unknown>` (each entry becomes a card field, in
|
|
690
|
-
* insertion order); `body` defaults to `""`.
|
|
691
|
-
*
|
|
690
|
+
* insertion order); `body` defaults to `""`.
|
|
691
|
+
*
|
|
692
|
+
* Sugar, not a required step: `insertCard` takes any `Card` object, and
|
|
693
|
+
* `removeCard` returns one, so a card round-trips without passing through
|
|
694
|
+
* here.
|
|
695
|
+
*
|
|
696
|
+
* Checks only what a detached card can decide alone: field-name grammar
|
|
697
|
+
* and value depth. Kind validity is positional (`main` is right for the
|
|
698
|
+
* root, reserved for a composable card) so `insertCard` is its gate, and
|
|
699
|
+
* any kind string is accepted here.
|
|
692
700
|
* @param {string} kind
|
|
693
701
|
* @param {Record<string, unknown>} [fields]
|
|
694
702
|
* @param {string} [body]
|
|
@@ -732,7 +740,7 @@ export class Document {
|
|
|
732
740
|
}
|
|
733
741
|
}
|
|
734
742
|
/**
|
|
735
|
-
* `new Document(quillRef)
|
|
743
|
+
* `new Document(quillRef)`, a blank document: a main card carrying only
|
|
736
744
|
* `$quill`, an empty body, and no composable cards. The programmatic
|
|
737
745
|
* blank canvas: absent fields resolve at render time (`default`, else
|
|
738
746
|
* type-empty zero), so nothing the caller did not set reaches the
|
|
@@ -781,7 +789,7 @@ export class Document {
|
|
|
781
789
|
/**
|
|
782
790
|
* The canonical `$quill` reference grammar as author-facing text. Core is
|
|
783
791
|
* the single source of truth: drive schema `describe` and validation
|
|
784
|
-
* messages from this instead of re-stating the rule
|
|
792
|
+
* messages from this instead of re-stating the rule; it matches the
|
|
785
793
|
* `hint` on `parse::invalid_quill_reference`. Cache it; the value never
|
|
786
794
|
* changes.
|
|
787
795
|
* @returns {string}
|
|
@@ -823,7 +831,7 @@ export class Document {
|
|
|
823
831
|
}
|
|
824
832
|
/**
|
|
825
833
|
* Remove the `$ext` map on the card `addr` targets *entirely*, returning the
|
|
826
|
-
* previous map or `undefined
|
|
834
|
+
* previous map or `undefined`: a blunt escape hatch that discards every
|
|
827
835
|
* namespace at once (prefer `removeExtNamespace`). `addr` is a card address
|
|
828
836
|
* (absent = main). Throws on a present `field` or an out-of-range card.
|
|
829
837
|
* @param {CardAddr} [addr]
|
|
@@ -918,7 +926,7 @@ export class Document {
|
|
|
918
926
|
}
|
|
919
927
|
}
|
|
920
928
|
/**
|
|
921
|
-
* **Revise** the richtext value at `addr` from a markdown string
|
|
929
|
+
* **Revise** the richtext value at `addr` from a markdown string: **edit
|
|
922
930
|
* semantics**, the default write path, returning the text `Delta`. Imports
|
|
923
931
|
* the markdown, diffs it against the current value, rebases surviving
|
|
924
932
|
* identity anchors, and returns the change an editor bridge maps its own
|
|
@@ -950,7 +958,7 @@ export class Document {
|
|
|
950
958
|
}
|
|
951
959
|
/**
|
|
952
960
|
* Read the `schema` version tag from a raw storage DTO string without a
|
|
953
|
-
* full parse, or `undefined`. Returns unknown future versions as-is
|
|
961
|
+
* full parse, or `undefined`. Returns unknown future versions as-is:
|
|
954
962
|
* useful to distinguish "build too old" from "payload corrupt" when
|
|
955
963
|
* `fromJson` throws.
|
|
956
964
|
* @param {string} json
|
|
@@ -978,7 +986,7 @@ export class Document {
|
|
|
978
986
|
* The main card's `$seed` overlay object for `kind` (the `$seed[kind]`
|
|
979
987
|
* entry), or `undefined` when absent. The cheap read that feeds
|
|
980
988
|
* `quill.seedCard(kind, overlay)` without serializing the whole main card
|
|
981
|
-
* via [`main`](Self::main) to fish out one key
|
|
989
|
+
* via [`main`](Self::main) to fish out one key, and it keeps `seedCard`
|
|
982
990
|
* pure: the quill still never reads the document.
|
|
983
991
|
* @param {string} kind
|
|
984
992
|
* @returns {Record<string, unknown> | undefined}
|
|
@@ -1045,7 +1053,7 @@ export class Document {
|
|
|
1045
1053
|
* Replace the opaque `$ext` map on the card `addr` targets (a card address,
|
|
1046
1054
|
* absent `card` = main). `value` must be a plain object. `$ext` carries
|
|
1047
1055
|
* out-of-band consumer state and never reaches the rendered output; pass
|
|
1048
|
-
* `{}` for an explicit empty `$ext`. Quill-free and verbatim
|
|
1056
|
+
* `{}` for an explicit empty `$ext`. Quill-free and verbatim: an opaque
|
|
1049
1057
|
* `store` verb. Throws on a present `field` or an out-of-range card.
|
|
1050
1058
|
* @param {CardAddr} addr
|
|
1051
1059
|
* @param {any} value
|
|
@@ -1065,8 +1073,8 @@ export class Document {
|
|
|
1065
1073
|
}
|
|
1066
1074
|
/**
|
|
1067
1075
|
* Merge `value` into `$ext[ns]` on the card `addr` targets, preserving
|
|
1068
|
-
* sibling namespaces
|
|
1069
|
-
* address (absent = main). Quill-free and verbatim
|
|
1076
|
+
* sibling namespaces: the recommended `$ext` write. `addr` is a card
|
|
1077
|
+
* address (absent = main). Quill-free and verbatim: an opaque `store` verb.
|
|
1070
1078
|
* Throws on a present `field` or an out-of-range card.
|
|
1071
1079
|
* @param {CardAddr} addr
|
|
1072
1080
|
* @param {string} ns
|
|
@@ -1088,12 +1096,12 @@ export class Document {
|
|
|
1088
1096
|
}
|
|
1089
1097
|
}
|
|
1090
1098
|
/**
|
|
1091
|
-
* Store a field verbatim at `addr
|
|
1099
|
+
* Store a field verbatim at `addr`: the opaque store (**store** = verbatim,
|
|
1092
1100
|
* coercion deferred to render; the typed write is
|
|
1093
1101
|
* [`commitField`](Document::commit_field)). A bare string is `Addr`
|
|
1094
1102
|
* shorthand for `{ field }`, so `doc.storeField("qty", 3)` reads as written;
|
|
1095
1103
|
* `{ card: 2, field: "qty" }` targets a composable card. Clears any
|
|
1096
|
-
* `!must_fill` marker. A body address (no `field`) throws
|
|
1104
|
+
* `!must_fill` marker. A body address (no `field`) throws: a body is never
|
|
1097
1105
|
* opaque; write it with `revise` / `install` / `writer.setBody`. Throws on
|
|
1098
1106
|
* an out-of-range card or a malformed name.
|
|
1099
1107
|
* @param {Addr | string} addr
|
|
@@ -1113,12 +1121,12 @@ export class Document {
|
|
|
1113
1121
|
}
|
|
1114
1122
|
}
|
|
1115
1123
|
/**
|
|
1116
|
-
* Store several fields verbatim and atomically on the card `addr` targets
|
|
1124
|
+
* Store several fields verbatim and atomically on the card `addr` targets:
|
|
1117
1125
|
* the opaque store's batch. `addr` is a **card address** (`{ card }`, absent
|
|
1118
1126
|
* = main); a present `field` throws. The batch verb takes the address first
|
|
1119
1127
|
* and is never shape-overloaded, because `card` is a legal field name:
|
|
1120
1128
|
* `storeFields({}, fields)` is the main card, `storeFields({ card: 2 },
|
|
1121
|
-
* fields)` a composable one
|
|
1129
|
+
* fields)` a composable one, never ambiguous with "set field `card`".
|
|
1122
1130
|
* Nothing is applied on error; the thrown error's `diagnostics` carry one
|
|
1123
1131
|
* entry per offending field. Throws on an out-of-range card.
|
|
1124
1132
|
* @param {CardAddr} addr
|
|
@@ -1138,7 +1146,7 @@ export class Document {
|
|
|
1138
1146
|
}
|
|
1139
1147
|
}
|
|
1140
1148
|
/**
|
|
1141
|
-
* Store a field verbatim at `addr` and mark it `!must_fill
|
|
1149
|
+
* Store a field verbatim at `addr` and mark it `!must_fill`: the opaque
|
|
1142
1150
|
* store's fill variant, card-capable (a bare string or `{ field }` for main,
|
|
1143
1151
|
* `{ card, field }` for a composable card). A body address throws. Same
|
|
1144
1152
|
* validation as [`storeField`](Document::store_field).
|
|
@@ -1160,9 +1168,9 @@ export class Document {
|
|
|
1160
1168
|
}
|
|
1161
1169
|
/**
|
|
1162
1170
|
* Merge a card-kind's seed `overlay` into the **main** card's `$seed` map
|
|
1163
|
-
* under `cardKind`, preserving sibling kinds
|
|
1171
|
+
* under `cardKind`, preserving sibling kinds: `$seed` lives on the main
|
|
1164
1172
|
* card by model, so this takes no address. Sets the starting values new
|
|
1165
|
-
* cards of that kind spawn with. Quill-free and verbatim
|
|
1173
|
+
* cards of that kind spawn with. Quill-free and verbatim: an opaque `store`
|
|
1166
1174
|
* verb. Throws if `overlay` cannot be serialized or nests too deep.
|
|
1167
1175
|
* @param {string} card_kind
|
|
1168
1176
|
* @param {any} overlay
|
|
@@ -1186,7 +1194,7 @@ export class Document {
|
|
|
1186
1194
|
* Serialize this document to a versioned storage DTO string.
|
|
1187
1195
|
*
|
|
1188
1196
|
* Prefer this over `toMarkdown` for persistence across restarts or crate
|
|
1189
|
-
* upgrades
|
|
1197
|
+
* upgrades: the wire format is frozen per `schema` version. Parse-time
|
|
1190
1198
|
* `warnings` are excluded from the DTO.
|
|
1191
1199
|
*
|
|
1192
1200
|
* Output is **byte-deterministic** within a `schema` version: equal
|
|
@@ -1232,7 +1240,7 @@ export class Document {
|
|
|
1232
1240
|
}
|
|
1233
1241
|
/**
|
|
1234
1242
|
* Like [`fromJson`](Document::from_json) but returns `undefined` instead
|
|
1235
|
-
* of throwing when `json` is not a valid storage DTO
|
|
1243
|
+
* of throwing when `json` is not a valid storage DTO: use to
|
|
1236
1244
|
* discriminate format without exceptions as control flow.
|
|
1237
1245
|
* `undefined` means "not a storage DTO"; `fromMarkdown` still throws on
|
|
1238
1246
|
* genuinely malformed markdown.
|
|
@@ -1271,7 +1279,7 @@ if (Symbol.dispose) Document.prototype[Symbol.dispose] = Document.prototype.free
|
|
|
1271
1279
|
* `fieldAt`, `positionAt`, `locate`) serve the current compile. `apply(doc)`
|
|
1272
1280
|
* recompiles a whole document in place, transactionally (on throw every read
|
|
1273
1281
|
* keeps serving the last-good compile). Geometry reads reflect the current
|
|
1274
|
-
* compile; anchoring a caret across edits is the editor's job
|
|
1282
|
+
* compile; anchoring a caret across edits is the editor's job: re-read
|
|
1275
1283
|
* geometry after each committed `apply`.
|
|
1276
1284
|
*
|
|
1277
1285
|
* **Empty documents.** A zero-page document yields a valid session
|
|
@@ -1298,7 +1306,7 @@ export class LiveSession {
|
|
|
1298
1306
|
wasm.__wbg_livesession_free(ptr, 0);
|
|
1299
1307
|
}
|
|
1300
1308
|
/**
|
|
1301
|
-
* Recompile the session against `doc
|
|
1309
|
+
* Recompile the session against `doc`: the edit verb of a live preview.
|
|
1302
1310
|
* The document is compiled through the same schema pipeline as `open`
|
|
1303
1311
|
* (same quill), then applied transactionally: on throw every read
|
|
1304
1312
|
* (`render`, `paint`, `pageSize`, `regions`, `fieldAt`) keeps serving the last-good
|
|
@@ -1344,11 +1352,11 @@ export class LiveSession {
|
|
|
1344
1352
|
}
|
|
1345
1353
|
}
|
|
1346
1354
|
/**
|
|
1347
|
-
* The schema field whose content is under a point on `page
|
|
1355
|
+
* The schema field whose content is under a point on `page`, the
|
|
1348
1356
|
* forward (click → field) direction: hit-test a click against the
|
|
1349
1357
|
* compiled document and get back the `DocPath` field address to focus in
|
|
1350
1358
|
* the editor, or `undefined` off any field's ink. `x`/`y` are PDF points
|
|
1351
|
-
* with a **bottom-left** origin, the same space as `FieldRegion.rect
|
|
1359
|
+
* with a **bottom-left** origin, the same space as `FieldRegion.rect`,
|
|
1352
1360
|
* from a canvas click, invert the overlay transform documented on
|
|
1353
1361
|
* `FieldRegion`: `x = clickPx.x / renderScale`,
|
|
1354
1362
|
* `y = pageHeightPt - clickPx.y / renderScale`. Unlike `regions()`,
|
|
@@ -1375,12 +1383,12 @@ export class LiveSession {
|
|
|
1375
1383
|
}
|
|
1376
1384
|
}
|
|
1377
1385
|
/**
|
|
1378
|
-
* The whole-field highlight boxes for `field
|
|
1386
|
+
* The whole-field highlight boxes for `field`: one union rect per page,
|
|
1379
1387
|
* over the field's `span`-bearing content segments. The convenience that
|
|
1380
1388
|
* owns the union `regions()` leaves derived: it keeps `regions()` the
|
|
1381
|
-
* low-level disjoint truth
|
|
1389
|
+
* low-level disjoint truth and folds the span-filter + per-page
|
|
1382
1390
|
* union here, so a "highlight the focused field" consumer stops
|
|
1383
|
-
* reimplementing it. **Content only
|
|
1391
|
+
* reimplementing it. **Content only**: a field placed solely as a scalar
|
|
1384
1392
|
* reference or a bound widget carries no `span` and returns `[]`; its box
|
|
1385
1393
|
* is a single `regions()` rect. Reflects the current compile, like
|
|
1386
1394
|
* `regions()`.
|
|
@@ -1405,7 +1413,7 @@ export class LiveSession {
|
|
|
1405
1413
|
}
|
|
1406
1414
|
}
|
|
1407
1415
|
/**
|
|
1408
|
-
* A content position → **caret rect
|
|
1416
|
+
* A content position → **caret rect**, the reverse of `positionAt`: given
|
|
1409
1417
|
* a field and a USV offset into its `Content`, return the box (in the
|
|
1410
1418
|
* same bottom-left PDF-point space as `FieldRegion.rect`) to draw a caret
|
|
1411
1419
|
* at, its `span` collapsed to `[pos, pos]`; `undefined` when the field
|
|
@@ -1453,12 +1461,12 @@ export class LiveSession {
|
|
|
1453
1461
|
* `OffscreenCanvasRenderingContext2D`. The painter owns
|
|
1454
1462
|
* `canvas.width`/`height` (no `clearRect` needed); consumers own
|
|
1455
1463
|
* `canvas.style.*`. If `layoutScale * densityScale` exceeds 16384 px
|
|
1456
|
-
* per side, `densityScale` is clamped
|
|
1464
|
+
* per side, `densityScale` is clamped: `PaintResult.clamped` reports it and
|
|
1457
1465
|
* `PaintResult.effectiveDensityScale` carries the density actually applied.
|
|
1458
1466
|
*
|
|
1459
1467
|
* `put_image_data` writes the whole backing store, bypassing the 2D
|
|
1460
1468
|
* context's transform, `globalAlpha`, and clip: the painter owns the entire
|
|
1461
|
-
* canvas, so each visible page needs its own
|
|
1469
|
+
* canvas, so each visible page needs its own `<canvas>`; you cannot composite
|
|
1462
1470
|
* two pages, a sub-rect, or a context transform through this call.
|
|
1463
1471
|
*
|
|
1464
1472
|
* Throws if the backend has no canvas painter, `page` is out of range,
|
|
@@ -1484,11 +1492,11 @@ export class LiveSession {
|
|
|
1484
1492
|
}
|
|
1485
1493
|
}
|
|
1486
1494
|
/**
|
|
1487
|
-
* A point → **content position
|
|
1495
|
+
* A point → **content position**, the fine-grained click direction:
|
|
1488
1496
|
* hit-test a point and get back the field *and* a USV offset into its
|
|
1489
1497
|
* `Content` (for placing a caret or mapping a selection into the content
|
|
1490
1498
|
* model), or `undefined` off all content ink. `x`/`y` are PDF points,
|
|
1491
|
-
* bottom-left origin
|
|
1499
|
+
* bottom-left origin: the same space as `fieldAt`. The offset is
|
|
1492
1500
|
* cluster-exact and degrades to the containing segment's start on
|
|
1493
1501
|
* origin-less ink (list markers, a code fence's interior). See
|
|
1494
1502
|
* `ContentHit`.
|
|
@@ -1502,7 +1510,7 @@ export class LiveSession {
|
|
|
1502
1510
|
return takeObject(ret);
|
|
1503
1511
|
}
|
|
1504
1512
|
/**
|
|
1505
|
-
* Schema-field geometry for this compiled session
|
|
1513
|
+
* Schema-field geometry for this compiled session: each content field's
|
|
1506
1514
|
* **first placement** (one region per page it touches) plus widget and
|
|
1507
1515
|
* scalar-reference-site regions, keyed on the canonical `DocPath` address
|
|
1508
1516
|
* (`parseDocPath`-routable; the session resolves the backend's plate-space
|
|
@@ -1550,7 +1558,7 @@ export class LiveSession {
|
|
|
1550
1558
|
/**
|
|
1551
1559
|
* `true` iff `paint` and `pageSize` will succeed for this session. Derived
|
|
1552
1560
|
* from the session's canvas seam, so it reflects exactly what `paint` will
|
|
1553
|
-
* do
|
|
1561
|
+
* do: no separately captured flag.
|
|
1554
1562
|
* @returns {boolean}
|
|
1555
1563
|
*/
|
|
1556
1564
|
get supportsCanvas() {
|
|
@@ -1559,7 +1567,7 @@ export class LiveSession {
|
|
|
1559
1567
|
}
|
|
1560
1568
|
/**
|
|
1561
1569
|
* Non-fatal diagnostics of the session's **current compile** (e.g. Typst
|
|
1562
|
-
* font fallback)
|
|
1570
|
+
* font fallback): set at open and refreshed by each committed `apply`;
|
|
1563
1571
|
* a failed apply keeps the last-good compile's warnings. Also appended
|
|
1564
1572
|
* to `RenderResult.warnings` on each `render()` call.
|
|
1565
1573
|
* @returns {Diagnostic[]}
|
|
@@ -1602,7 +1610,7 @@ export class Quill {
|
|
|
1602
1610
|
}
|
|
1603
1611
|
/**
|
|
1604
1612
|
* The *declared* backend identifier (`config.backend`, e.g. `"typst"`).
|
|
1605
|
-
* Intent, not a resolved capability
|
|
1613
|
+
* Intent, not a resolved capability: capability (`supportedFormats` /
|
|
1606
1614
|
* `supportsCanvas`) is read from the engine.
|
|
1607
1615
|
* @returns {string}
|
|
1608
1616
|
*/
|
|
@@ -1642,7 +1650,7 @@ export class Quill {
|
|
|
1642
1650
|
}
|
|
1643
1651
|
}
|
|
1644
1652
|
/**
|
|
1645
|
-
* Build a quill from a file tree. Pure
|
|
1653
|
+
* Build a quill from a file tree. Pure: no backend, no engine; the
|
|
1646
1654
|
* declared backend is resolved later, at render time.
|
|
1647
1655
|
*
|
|
1648
1656
|
* Accepts either a `Map<string, Uint8Array>` or a plain object
|
|
@@ -1669,7 +1677,7 @@ export class Quill {
|
|
|
1669
1677
|
}
|
|
1670
1678
|
/**
|
|
1671
1679
|
* Identity snapshot of the `quill:` section of `Quill.yaml` plus any extra
|
|
1672
|
-
* `quill:` keys. Pure config
|
|
1680
|
+
* `quill:` keys. Pure config: the backend's output formats are a
|
|
1673
1681
|
* resolved-backend capability read from the engine
|
|
1674
1682
|
* (`Quillmark.supportedFormats`), not part of this snapshot.
|
|
1675
1683
|
* @returns {QuillMetadata}
|
|
@@ -1690,11 +1698,11 @@ export class Quill {
|
|
|
1690
1698
|
}
|
|
1691
1699
|
}
|
|
1692
1700
|
/**
|
|
1693
|
-
* The resolved-value view of `doc` against this quill's schema
|
|
1701
|
+
* The resolved-value view of `doc` against this quill's schema: for every
|
|
1694
1702
|
* declared field the value the render projection would use and the
|
|
1695
1703
|
* `FieldSource` rung it came from (`"authored" | "default" | "zero"`), in
|
|
1696
1704
|
* one call. The card body is a `body` sibling on its card (row `name`
|
|
1697
|
-
* `"body"`), never a row in `fields
|
|
1705
|
+
* `"body"`), never a row in `fields`: `null` when the kind enables no body.
|
|
1698
1706
|
*
|
|
1699
1707
|
* Value and provenance only: completeness and errors stay `validate`'s
|
|
1700
1708
|
* (a consumer merges it with its own diagnostic producers regardless), and
|
|
@@ -1721,8 +1729,8 @@ export class Quill {
|
|
|
1721
1729
|
/**
|
|
1722
1730
|
* Document schema for the quill: the user-fillable fields plus their
|
|
1723
1731
|
* `ui` hints (title / group / compact / multiline). The single
|
|
1724
|
-
* field-metadata surface
|
|
1725
|
-
* alike. Key order in `fields`/`properties` is declaration order
|
|
1732
|
+
* field-metadata surface: drives form editors and LLM/MCP consumers
|
|
1733
|
+
* alike. Key order in `fields`/`properties` is declaration order: the
|
|
1726
1734
|
* ordering contract. Returns the `QuillSchema` shape.
|
|
1727
1735
|
* @returns {QuillSchema}
|
|
1728
1736
|
*/
|
|
@@ -1751,7 +1759,7 @@ export class Quill {
|
|
|
1751
1759
|
* Pass `document.seedOverlay(cardKind)` as `overlay` so a card added to a
|
|
1752
1760
|
* template-derived document inherits its curated starting values; omit it
|
|
1753
1761
|
* (or pass `undefined` / `null`) for the bare schema seed. `overlay` is a
|
|
1754
|
-
* plain object
|
|
1762
|
+
* plain object: this reads the document, it does not mutate it.
|
|
1755
1763
|
* @param {string} card_kind
|
|
1756
1764
|
* @param {Record<string, unknown> | undefined} overlay
|
|
1757
1765
|
* @returns {Card | undefined}
|
|
@@ -1774,7 +1782,7 @@ export class Quill {
|
|
|
1774
1782
|
}
|
|
1775
1783
|
}
|
|
1776
1784
|
/**
|
|
1777
|
-
* Seed a starter `Document` from the schema
|
|
1785
|
+
* Seed a starter `Document` from the schema, the main card plus one
|
|
1778
1786
|
* instance of each composable card kind, each committing its fields'
|
|
1779
1787
|
* `example:` values and leaving every other field absent (interpolated at
|
|
1780
1788
|
* render: `default:`, else type-empty zero). Illustration-first: a field
|
|
@@ -1787,7 +1795,7 @@ export class Quill {
|
|
|
1787
1795
|
return Document.__wrap(ret);
|
|
1788
1796
|
}
|
|
1789
1797
|
/**
|
|
1790
|
-
* Seed a starter main `Card` (carries `$quill`) from the schema
|
|
1798
|
+
* Seed a starter main `Card` (carries `$quill`) from the schema: the
|
|
1791
1799
|
* `$kind: main` card of [`seedDocument`](Self::seed_document) in
|
|
1792
1800
|
* isolation, committing each field's `example:` value. Returns the same
|
|
1793
1801
|
* `Card` shape as the `Document.main` getter.
|
|
@@ -1809,7 +1817,7 @@ export class Quill {
|
|
|
1809
1817
|
}
|
|
1810
1818
|
}
|
|
1811
1819
|
/**
|
|
1812
|
-
* Flatten this quill back into its canonical file tree
|
|
1820
|
+
* Flatten this quill back into its canonical file tree: the inverse of
|
|
1813
1821
|
* [`fromTree`](Self::from_tree). Round-trips: `Quill.fromTree(q.toTree())`
|
|
1814
1822
|
* reproduces an equivalent quill.
|
|
1815
1823
|
*
|
|
@@ -1829,8 +1837,8 @@ export class Quill {
|
|
|
1829
1837
|
* Validate `doc` against this quill's schema, returning every diagnostic
|
|
1830
1838
|
* (an empty array when the document is valid).
|
|
1831
1839
|
*
|
|
1832
|
-
* Forwards the canonical `validation::*` diagnostics
|
|
1833
|
-
* `path`, and `hint` the engine emits
|
|
1840
|
+
* Forwards the canonical `validation::*` diagnostics (same `code`,
|
|
1841
|
+
* `path`, and `hint` the engine emits) including the non-fatal
|
|
1834
1842
|
* `validation::must_fill` warning for each `!must_fill` marker left in
|
|
1835
1843
|
* the document. Field values, defaults, and order are not part of this
|
|
1836
1844
|
* surface: read them from the `Document` payload and `Quill.schema`
|
|
@@ -1858,7 +1866,7 @@ export class Quill {
|
|
|
1858
1866
|
if (Symbol.dispose) Quill.prototype[Symbol.dispose] = Quill.prototype.free;
|
|
1859
1867
|
|
|
1860
1868
|
/**
|
|
1861
|
-
* Render engine: a backend registry and render dispatcher. Render build only
|
|
1869
|
+
* Render engine: a backend registry and render dispatcher. Render build only:
|
|
1862
1870
|
* the core build constructs and validates quills without it.
|
|
1863
1871
|
*/
|
|
1864
1872
|
export class Quillmark {
|
|
@@ -1928,7 +1936,7 @@ export class Quillmark {
|
|
|
1928
1936
|
}
|
|
1929
1937
|
}
|
|
1930
1938
|
/**
|
|
1931
|
-
* The output formats `quill`'s backend can emit. Static capability
|
|
1939
|
+
* The output formats `quill`'s backend can emit. Static capability:
|
|
1932
1940
|
* resolves the backend but compiles nothing. Throws `engine::backend_not_found`
|
|
1933
1941
|
* if no registered backend matches the quill's declared backend.
|
|
1934
1942
|
* @param {Quill} quill
|
|
@@ -1968,7 +1976,7 @@ export class Quillmark {
|
|
|
1968
1976
|
if (Symbol.dispose) Quillmark.prototype[Symbol.dispose] = Quillmark.prototype.free;
|
|
1969
1977
|
|
|
1970
1978
|
/**
|
|
1971
|
-
* Export a canonical `Content` content to its markdown projection
|
|
1979
|
+
* Export a canonical `Content` content to its markdown projection: the pure
|
|
1972
1980
|
* on-demand codec behind `exportMarkdown(card.body)`. Throws if `rt` is not a
|
|
1973
1981
|
* canonical content.
|
|
1974
1982
|
* @param {Content} rt
|
|
@@ -2001,7 +2009,7 @@ export function exportMarkdown(rt) {
|
|
|
2001
2009
|
|
|
2002
2010
|
/**
|
|
2003
2011
|
* Serialize structured [`DocPathSeg`] segments back to the canonical path
|
|
2004
|
-
* string
|
|
2012
|
+
* string: the inverse of `parseDocPath`, for a consumer that builds a path
|
|
2005
2013
|
* rather than reads one. Throws on a segment array the deserializer rejects,
|
|
2006
2014
|
* and on an empty segment array (symmetric with `parseDocPath("")`, which
|
|
2007
2015
|
* throws "empty path").
|
|
@@ -2034,7 +2042,7 @@ export function formatDocPath(segs) {
|
|
|
2034
2042
|
}
|
|
2035
2043
|
|
|
2036
2044
|
/**
|
|
2037
|
-
* Import a markdown string to a canonical `Content` content
|
|
2045
|
+
* Import a markdown string to a canonical `Content` content: the pure,
|
|
2038
2046
|
* document-free codec. Pair with `install(addr, importMarkdown(md))` to spell
|
|
2039
2047
|
* the cold (anchor-losing) write at the call site; prefer `revise` for edit
|
|
2040
2048
|
* semantics. Throws on an over-nested input.
|
|
@@ -2067,8 +2075,8 @@ export function init() {
|
|
|
2067
2075
|
}
|
|
2068
2076
|
|
|
2069
2077
|
/**
|
|
2070
|
-
* Map a base content position
|
|
2071
|
-
* offset
|
|
2078
|
+
* Map a base content position (a USV index into `Content.text`, not a UTF-16
|
|
2079
|
+
* offset) through a `delta` to its new USV position: the pure position-mapping
|
|
2072
2080
|
* codec an editor bridge composes to hold a caret stable across a `revise`.
|
|
2073
2081
|
* `assoc` decides the side of a same-position insertion (`"after"` moves past
|
|
2074
2082
|
* it). Throws on a malformed `delta`.
|
|
@@ -2096,7 +2104,7 @@ export function mapPos(delta, pos, assoc) {
|
|
|
2096
2104
|
/**
|
|
2097
2105
|
* Parse a canonical document-model `Diagnostic.path`
|
|
2098
2106
|
* (`cards.<kind>[<i>].<field>`, `main.body`, `recipients[0].name`) into its
|
|
2099
|
-
* structured [`DocPathSeg`] segments
|
|
2107
|
+
* structured [`DocPathSeg`] segments: the exported inverse of the engine's
|
|
2100
2108
|
* one path serializer, so a consumer routes on segments instead of regexing
|
|
2101
2109
|
* the string. Throws on a malformed path.
|
|
2102
2110
|
* @param {string} path
|
|
@@ -2121,7 +2129,7 @@ export function parseDocPath(path) {
|
|
|
2121
2129
|
}
|
|
2122
2130
|
|
|
2123
2131
|
/**
|
|
2124
|
-
* Rebase `markdown` onto a `base` content
|
|
2132
|
+
* Rebase `markdown` onto a `base` content, the pure, document-free twin of
|
|
2125
2133
|
* `revise`: cold-import + `diff_import`, returning the new `content` and the
|
|
2126
2134
|
* text `delta` (its offsets USV indices into `Content.text`, surviving anchors
|
|
2127
2135
|
* rebased). Use it to compute a revise without a document in hand; `revise(addr,
|
|
@@ -2163,13 +2171,6 @@ export function __wbg_String_8564e559799eccda(arg0, arg1) {
|
|
|
2163
2171
|
getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
|
|
2164
2172
|
getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
|
|
2165
2173
|
}
|
|
2166
|
-
export function __wbg_String_b51de6b05a10845b(arg0, arg1) {
|
|
2167
|
-
const ret = String(getObject(arg1));
|
|
2168
|
-
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
|
|
2169
|
-
const len1 = WASM_VECTOR_LEN;
|
|
2170
|
-
getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
|
|
2171
|
-
getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
|
|
2172
|
-
}
|
|
2173
2174
|
export function __wbg___wbindgen_bigint_get_as_i64_3d3aba5d616c6a51(arg0, arg1) {
|
|
2174
2175
|
const v = getObject(arg1);
|
|
2175
2176
|
const ret = typeof(v) === 'bigint' ? v : undefined;
|
|
@@ -2281,9 +2282,6 @@ export function __wbg_from_0dbf29f09e7fb200(arg0) {
|
|
|
2281
2282
|
const ret = Array.from(getObject(arg0));
|
|
2282
2283
|
return addHeapObject(ret);
|
|
2283
2284
|
}
|
|
2284
|
-
export function __wbg_getRandomValues_3f44b700395062e5() { return handleError(function (arg0, arg1) {
|
|
2285
|
-
globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
|
|
2286
|
-
}, arguments); }
|
|
2287
2285
|
export function __wbg_getTime_da7c55f52b71e8c6(arg0) {
|
|
2288
2286
|
const ret = getObject(arg0).getTime();
|
|
2289
2287
|
return ret;
|
|
@@ -2316,10 +2314,6 @@ export function __wbg_get_with_ref_key_6412cf3094599694(arg0, arg1) {
|
|
|
2316
2314
|
const ret = getObject(arg0)[getObject(arg1)];
|
|
2317
2315
|
return addHeapObject(ret);
|
|
2318
2316
|
}
|
|
2319
|
-
export function __wbg_get_with_ref_key_f64427178466f623(arg0, arg1) {
|
|
2320
|
-
const ret = getObject(arg0)[getObject(arg1)];
|
|
2321
|
-
return addHeapObject(ret);
|
|
2322
|
-
}
|
|
2323
2317
|
export function __wbg_instanceof_ArrayBuffer_7c8433c6ed14ffe3(arg0) {
|
|
2324
2318
|
let result;
|
|
2325
2319
|
try {
|
|
@@ -2475,9 +2469,6 @@ export function __wbg_set_3bf1de9fab0cd644(arg0, arg1, arg2) {
|
|
|
2475
2469
|
export function __wbg_set_6be42768c690e380(arg0, arg1, arg2) {
|
|
2476
2470
|
getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
|
|
2477
2471
|
}
|
|
2478
|
-
export function __wbg_set_f071dbb3bd088e0e(arg0, arg1, arg2) {
|
|
2479
|
-
getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
|
|
2480
|
-
}
|
|
2481
2472
|
export function __wbg_set_fde2cec06c23692b(arg0, arg1, arg2) {
|
|
2482
2473
|
const ret = getObject(arg0).set(getObject(arg1), getObject(arg2));
|
|
2483
2474
|
return addHeapObject(ret);
|
|
@@ -2505,6 +2496,14 @@ export function __wbg_value_ee3a06f4579184fa(arg0) {
|
|
|
2505
2496
|
const ret = getObject(arg0).value;
|
|
2506
2497
|
return addHeapObject(ret);
|
|
2507
2498
|
}
|
|
2499
|
+
export function __wbg_values_1e6d547ce555ce44(arg0) {
|
|
2500
|
+
const ret = getObject(arg0).values();
|
|
2501
|
+
return addHeapObject(ret);
|
|
2502
|
+
}
|
|
2503
|
+
export function __wbg_values_301a77363cf6c773(arg0) {
|
|
2504
|
+
const ret = Object.values(getObject(arg0));
|
|
2505
|
+
return addHeapObject(ret);
|
|
2506
|
+
}
|
|
2508
2507
|
export function __wbindgen_cast_0000000000000001(arg0) {
|
|
2509
2508
|
// Cast intrinsic for `F64 -> Externref`.
|
|
2510
2509
|
const ret = arg0;
|