@quillmark/wasm 0.114.0 → 0.116.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 +377 -0
- package/README.md +50 -49
- package/core/wasm.d.ts +93 -118
- package/core/wasm.js +114 -102
- package/core/wasm_bg.wasm +0 -0
- package/core/wasm_bg.wasm.d.ts +5 -5
- package/package.json +1 -1
- package/render/wasm.d.ts +119 -185
- package/render/wasm.js +138 -144
- package/render/wasm_bg.wasm +0 -0
- package/render/wasm_bg.wasm.d.ts +7 -7
- package/runtime/runtime.d.ts +52 -66
- package/runtime/runtime.js +25 -13
package/core/wasm.d.ts
CHANGED
|
@@ -13,13 +13,6 @@ export type PayloadItem =
|
|
|
13
13
|
type: "field";
|
|
14
14
|
key: string;
|
|
15
15
|
value: unknown;
|
|
16
|
-
fill?: boolean;
|
|
17
|
-
/**
|
|
18
|
-
* Paths to `!must_fill` markers nested *inside* `value` (the `value`
|
|
19
|
-
* projection itself is fill-free). Absent when the field has no nested
|
|
20
|
-
* placeholders. Preserved across `insertCard`.
|
|
21
|
-
*/
|
|
22
|
-
nestedFills?: PathStep[][];
|
|
23
16
|
}
|
|
24
17
|
| { type: "comment"; text: string; inline?: boolean };
|
|
25
18
|
|
|
@@ -27,9 +20,9 @@ export type PayloadItem =
|
|
|
27
20
|
* A single card block, as read back from a document. Every `Card` is a valid
|
|
28
21
|
* `CardInput`, so a card read from one document pushes straight into another.
|
|
29
22
|
*
|
|
30
|
-
* `$` system entries are hoisted to named fields: `kind` (the `$kind
|
|
31
|
-
*
|
|
32
|
-
*
|
|
23
|
+
* `$` system entries are hoisted to named fields: `kind` (the `$kind`),
|
|
24
|
+
* `quill` (`$quill` `name@version`, main card only), `ext` (`$ext`), and
|
|
25
|
+
* `seed` (the `$seed` per-kind overlay map, main card only).
|
|
33
26
|
* `payloadItems` carries user fields and comments in order.
|
|
34
27
|
*/
|
|
35
28
|
export interface Card {
|
|
@@ -73,9 +66,9 @@ export interface Content {
|
|
|
73
66
|
}
|
|
74
67
|
|
|
75
68
|
/** One `\n`-separated segment of `Content.text`, in order. `kind` is a closed
|
|
76
|
-
* set:
|
|
77
|
-
* spells its payload in `attrs`, so
|
|
78
|
-
* `{ level: number }` with no guard. */
|
|
69
|
+
* set: `island` reads as `para`, and any other role outside it is refused
|
|
70
|
+
* wherever content is decoded. Every role spells its payload in `attrs`, so
|
|
71
|
+
* `kind === "heading"` narrows `attrs` to `{ level: number }` with no guard. */
|
|
79
72
|
export type ContentLine = {
|
|
80
73
|
containers: ContentContainer[];
|
|
81
74
|
/** A within-block hard line break rather than a new block. Omitted (false) in the common case. */
|
|
@@ -87,7 +80,6 @@ export type ContentLineKind =
|
|
|
87
80
|
| { kind: "para" }
|
|
88
81
|
| { kind: "heading"; attrs: { level: number } }
|
|
89
82
|
| { kind: "code"; attrs?: { lang?: string } }
|
|
90
|
-
| { kind: "island" }
|
|
91
83
|
| { kind: "rule" };
|
|
92
84
|
|
|
93
85
|
/** An ancestor block a line nests inside, outermost first. Closed like
|
|
@@ -158,14 +150,10 @@ export interface ImageProps {
|
|
|
158
150
|
alt: string;
|
|
159
151
|
}
|
|
160
152
|
|
|
161
|
-
/** How faithfully the markdown projection can carry an island. */
|
|
162
|
-
export type ContentLossClass = "lossless" | "degraded" | "unrepresentable";
|
|
163
|
-
|
|
164
153
|
/** A structured object occupying one island slot in `Content.text`. `type` is a
|
|
165
154
|
* closed set, so `type === "table"` narrows `props` to `TableProps`. */
|
|
166
155
|
export type ContentIsland = {
|
|
167
156
|
id: string;
|
|
168
|
-
loss: ContentLossClass;
|
|
169
157
|
} & (
|
|
170
158
|
| { type: "table"; props: TableProps }
|
|
171
159
|
| { type: "image"; props: ImageProps }
|
|
@@ -237,10 +225,12 @@ export type MarkOp =
|
|
|
237
225
|
* metadata. `setContinues` sets or clears a line's within-block hard-break flag
|
|
238
226
|
* (`ContentLine.continues`); `continues: true` lands as `false` on line 0, which
|
|
239
227
|
* nothing precedes, on a line whose containers differ from the line above, and
|
|
240
|
-
* on one following a heading,
|
|
241
|
-
* `setKind` lands a kind the line's text contradicts — `
|
|
228
|
+
* on one following a heading, a rule or a block island's line, each a block of
|
|
229
|
+
* one line. `setKind` lands a kind the line's text contradicts — `rule` over
|
|
242
230
|
* prose, `code` over a slot — as `para`, which is what re-importing the line's
|
|
243
|
-
* own markdown yields
|
|
231
|
+
* own markdown yields, and reads an `island` the union does not offer as the
|
|
232
|
+
* `para` that spelling projects. Read the content back to see where an op
|
|
233
|
+
* settled.
|
|
244
234
|
*/
|
|
245
235
|
export type LineOp =
|
|
246
236
|
| { op: "split"; at: number }
|
|
@@ -264,22 +254,16 @@ export type LineOp =
|
|
|
264
254
|
* one `insert` per slot.
|
|
265
255
|
*
|
|
266
256
|
* Deleting an island needs no op: a `delta` that removes its slot drops the
|
|
267
|
-
* island whole
|
|
268
|
-
*
|
|
269
|
-
* island mints a fresh one.
|
|
270
|
-
*
|
|
271
|
-
* A `set` stores the `loss` it is given; nothing re-derives the class from the
|
|
272
|
-
* new `props`.
|
|
257
|
+
* island whole. Re-landing it is an `insert` of the full island under its
|
|
258
|
+
* original id; a pasted copy of a live island mints a fresh one.
|
|
273
259
|
*
|
|
274
260
|
* An island is *inline* (a slot inside a paragraph) or a **block** (that slot
|
|
275
|
-
* alone on
|
|
276
|
-
*
|
|
277
|
-
*
|
|
278
|
-
*
|
|
279
|
-
*
|
|
280
|
-
*
|
|
281
|
-
* `{ op: "setKind", kind: "island" }`. `{ op: "split" }` cannot open that line,
|
|
282
|
-
* since line ops run after island ops.
|
|
261
|
+
* alone on its own line), and the type settles which: markdown writes a `table`
|
|
262
|
+
* as a block and an image inline. Both lines read `kind: "para"` — the block is
|
|
263
|
+
* the slot's markup, not a role the line carries — so landing a block island is
|
|
264
|
+
* two channels: `delta` inserts the `\n` that opens the line, `islandOps`
|
|
265
|
+
* inserts the slot. `{ op: "split" }` cannot open that line, since line ops run
|
|
266
|
+
* after island ops.
|
|
283
267
|
*
|
|
284
268
|
* A `table` has no inline placement: markdown writes it as a block, so an
|
|
285
269
|
* `insert` whose `at` is not an empty line throws, as does a `set` retyping an
|
|
@@ -366,11 +350,11 @@ export interface ResolvedMain {
|
|
|
366
350
|
|
|
367
351
|
/**
|
|
368
352
|
* One composable card's resolved rows in declaration order, with its authored
|
|
369
|
-
* `kind` (
|
|
353
|
+
* `kind` (an undeclared one included), its document-array `index`, and its
|
|
370
354
|
* body row: `null` when the kind enables no body.
|
|
371
355
|
*/
|
|
372
356
|
export interface ResolvedCard {
|
|
373
|
-
kind: string
|
|
357
|
+
kind: string;
|
|
374
358
|
index: number;
|
|
375
359
|
fields: ResolvedField[];
|
|
376
360
|
body: ResolvedField | null;
|
|
@@ -378,7 +362,7 @@ export interface ResolvedCard {
|
|
|
378
362
|
|
|
379
363
|
/**
|
|
380
364
|
* The resolved-value view (`Quill.resolve`): the main card and every composable
|
|
381
|
-
* card. Value and provenance only;
|
|
365
|
+
* card. Value and provenance only; diagnostics stay `Quill.validate`'s.
|
|
382
366
|
*/
|
|
383
367
|
export interface Resolved {
|
|
384
368
|
main: ResolvedMain;
|
|
@@ -390,7 +374,6 @@ export interface Resolved {
|
|
|
390
374
|
/** UI layout hints for a single field. Display order is not a hint: key order
|
|
391
375
|
* in the schema's `fields`/`properties` objects is the ordering contract. */
|
|
392
376
|
export interface QuillFieldUi {
|
|
393
|
-
title?: string;
|
|
394
377
|
group?: string;
|
|
395
378
|
compact?: boolean;
|
|
396
379
|
multiline?: boolean;
|
|
@@ -398,9 +381,10 @@ export interface QuillFieldUi {
|
|
|
398
381
|
* conventional label of its own. */
|
|
399
382
|
blank_title?: string;
|
|
400
383
|
/** The control the field asks for, where the shape admits more than one.
|
|
401
|
-
*
|
|
402
|
-
*
|
|
403
|
-
*
|
|
384
|
+
* `"table"` is valid only on an `array` whose `items` is an `object`.
|
|
385
|
+
* Every column is a leaf, a contract refused at load as
|
|
386
|
+
* `quill::table_column_not_flat`. Drawing the grid is a request: a
|
|
387
|
+
* consumer that cannot falls back to its own choice for the type. */
|
|
404
388
|
layout?: "table";
|
|
405
389
|
}
|
|
406
390
|
|
|
@@ -413,63 +397,52 @@ export interface QuillGroupUi {
|
|
|
413
397
|
|
|
414
398
|
/** UI layout hints for a card (main or named card kind). */
|
|
415
399
|
export interface QuillCardUi {
|
|
416
|
-
title?: string;
|
|
417
400
|
/** The groups a field's `ui.group` may reference, keyed by group id. Key
|
|
418
401
|
* order is the display-order contract, as with `fields`. Absent when the
|
|
419
402
|
* card declares no groups. */
|
|
420
403
|
groups?: Record<string, QuillGroupUi>;
|
|
421
404
|
}
|
|
422
405
|
|
|
423
|
-
/** A block construct a body can hold. `paragraph` is the floor and cannot be
|
|
424
|
-
* declined, so it is absent. */
|
|
425
|
-
export type QuillBlockConstruct =
|
|
426
|
-
| "heading"
|
|
427
|
-
| "rule"
|
|
428
|
-
| "code"
|
|
429
|
-
| "list"
|
|
430
|
-
| "quote"
|
|
431
|
-
| "table"
|
|
432
|
-
| "image";
|
|
433
|
-
|
|
434
406
|
/** Body namespace for a card (main or named card kind). */
|
|
435
407
|
export interface QuillCardBody {
|
|
436
408
|
/** When false, consumers must not accept or store body content for this card kind. Defaults to true. */
|
|
437
409
|
enabled?: boolean;
|
|
438
|
-
/** Example body content
|
|
410
|
+
/** Example body content, shown on the blueprint's `# body e.g.` line above the body. */
|
|
439
411
|
example?: string;
|
|
440
|
-
/** Block constructs this quill's plate does not typeset in this body;
|
|
441
|
-
* absent or empty declines nothing. A body that holds one anyway draws a
|
|
442
|
-
* non-fatal `plate::unsupported_construct` warning. Nothing verifies the
|
|
443
|
-
* claim: absence from this list is not a promise the plate typesets it. */
|
|
444
|
-
unsupported?: QuillBlockConstruct[];
|
|
445
412
|
}
|
|
446
413
|
|
|
414
|
+
export type QuillFieldType = "string" | "number" | "integer" | "boolean" | "array" | "object" | "date" | "datetime" | "richtext" | "plaintext" | "enum" | "matrix";
|
|
415
|
+
|
|
447
416
|
/** Schema entry for a single field declared in a quill's `Quill.yaml`.
|
|
448
417
|
*
|
|
449
|
-
*
|
|
450
|
-
*
|
|
451
|
-
* declared a value for carries a `!must_fill` marker in the blueprint and warns
|
|
452
|
-
* `validation::must_fill` while the document leaves it unauthored. Neither
|
|
453
|
-
* gates render: an absent field blank-fills.
|
|
418
|
+
* `default` is the value an unanswered cell renders; `example` documents shape
|
|
419
|
+
* and never renders. An absent field without a `default` blank-fills.
|
|
454
420
|
*/
|
|
455
421
|
export interface QuillFieldSchema {
|
|
456
|
-
|
|
422
|
+
/** A trailing `?` marks the cell optional: unanswered, it renders `none`
|
|
423
|
+
* rather than its type's blank, and it never carries a `default`. A
|
|
424
|
+
* consumer offers a way back to unanswered (`removeField`) on such a cell. */
|
|
425
|
+
type: QuillFieldType | `${Exclude<QuillFieldType, "object" | "matrix">}?`;
|
|
426
|
+
/** The field's label, a literal. Absent, the consumer humanizes the key
|
|
427
|
+
* (`memo_for` → "Memo For"). Never present on an array's `items`. */
|
|
428
|
+
title?: string;
|
|
457
429
|
description?: string;
|
|
458
430
|
default?: unknown;
|
|
459
431
|
example?: unknown;
|
|
460
432
|
/** The closed set of allowed values. Required on `type: "enum"`, and valid
|
|
461
433
|
* nowhere else. */
|
|
462
434
|
values?: string[];
|
|
463
|
-
/** Per-member field sets on a
|
|
464
|
-
*
|
|
465
|
-
*
|
|
466
|
-
* `{value: <member>, …that member's
|
|
435
|
+
/** Per-member field sets on a `type: "enum"` field that is a card's own
|
|
436
|
+
* field or a typed dictionary's property, keyed by member: the fields that
|
|
437
|
+
* exist only where the discriminant holds that member. Declaring it makes
|
|
438
|
+
* the field rest as a container, `{value: <member>, …that member's
|
|
439
|
+
* fields}`, rather than a bare string. */
|
|
467
440
|
variants?: Record<string, Record<string, QuillFieldSchema>>;
|
|
468
441
|
/** The roster of a `type: "matrix"` field, required there and valid
|
|
469
|
-
* nowhere else:
|
|
442
|
+
* nowhere else: member id to display title, key order the display order.
|
|
470
443
|
* Each member is an object of `held` plus the field's `properties`
|
|
471
444
|
* (the columns), addressed as `<field>.<member id>.held`. */
|
|
472
|
-
members?:
|
|
445
|
+
members?: Record<string, string>;
|
|
473
446
|
ui?: QuillFieldUi;
|
|
474
447
|
properties?: Record<string, QuillFieldSchema>;
|
|
475
448
|
items?: QuillFieldSchema;
|
|
@@ -482,15 +455,11 @@ export interface QuillFieldSchema {
|
|
|
482
455
|
inline?: boolean;
|
|
483
456
|
}
|
|
484
457
|
|
|
485
|
-
/** One block of a `type: "matrix"` roster: an optional display heading and the
|
|
486
|
-
* members under it, member id to display title. Key order is display order. */
|
|
487
|
-
export interface QuillMatrixGroup {
|
|
488
|
-
group?: string;
|
|
489
|
-
values: Record<string, string>;
|
|
490
|
-
}
|
|
491
|
-
|
|
492
458
|
/** Schema entry for the main card or a named card kind. */
|
|
493
459
|
export interface QuillCardSchema {
|
|
460
|
+
/** The kind's label, a literal. Absent, the consumer humanizes the kind
|
|
461
|
+
* name. An instance takes its label from its own values. */
|
|
462
|
+
title?: string;
|
|
494
463
|
description?: string;
|
|
495
464
|
fields: Record<string, QuillFieldSchema>;
|
|
496
465
|
ui?: QuillCardUi;
|
|
@@ -572,11 +541,6 @@ export class Document {
|
|
|
572
541
|
* building `markOps` need not predict it.
|
|
573
542
|
*/
|
|
574
543
|
applyChange(addr: Addr | string, bundle: ChangeBundle): void;
|
|
575
|
-
/**
|
|
576
|
-
* A blueprint's fill obligation for the given `quillName`, re-exposed from
|
|
577
|
-
* core. Carries no tool name: pair it with your own next-step directive.
|
|
578
|
-
*/
|
|
579
|
-
static blueprintInstruction(quill_name: string): string;
|
|
580
544
|
/**
|
|
581
545
|
* The **body** markdown projection: an on-demand, lossy export (content-only
|
|
582
546
|
* marks do not survive markdown). A body's type is a format fact, not a
|
|
@@ -610,11 +574,6 @@ export class Document {
|
|
|
610
574
|
* Structural equality, excluding parse-time `warnings`.
|
|
611
575
|
*/
|
|
612
576
|
equals(other: Document): boolean;
|
|
613
|
-
/**
|
|
614
|
-
* Authoring-format rules for the card-yaml markdown surface, re-exposed from
|
|
615
|
-
* core. Constant across calls; read once and cache.
|
|
616
|
-
*/
|
|
617
|
-
static formatRules(): string;
|
|
618
577
|
/**
|
|
619
578
|
* Parse markdown into a typed Document. Throws on parse errors.
|
|
620
579
|
*/
|
|
@@ -660,12 +619,6 @@ export class Document {
|
|
|
660
619
|
* `at` is out of range.
|
|
661
620
|
*/
|
|
662
621
|
insertCard(card: CardInput, at?: number): void;
|
|
663
|
-
/**
|
|
664
|
-
* Whether the field at `addr` is marked `!must_fill`. A bare string is `Addr`
|
|
665
|
-
* shorthand for `{ field }`. `false` for an absent field and for a body
|
|
666
|
-
* address; only an out-of-range `addr.card` throws.
|
|
667
|
-
*/
|
|
668
|
-
isFill(addr: Addr | string): boolean;
|
|
669
622
|
/**
|
|
670
623
|
* Replace this document's contents **in place** from a versioned storage DTO
|
|
671
624
|
* string: the mutating twin of [`fromStored`](Document::from_stored).
|
|
@@ -674,6 +627,11 @@ export class Document {
|
|
|
674
627
|
* variable.
|
|
675
628
|
*/
|
|
676
629
|
loadStored(json: string): void;
|
|
630
|
+
/**
|
|
631
|
+
* The Quillmark Markdown rules, re-exposed from core. Constant across
|
|
632
|
+
* calls; read once and cache.
|
|
633
|
+
*/
|
|
634
|
+
static markdownRules(): string;
|
|
677
635
|
/**
|
|
678
636
|
* Move the card at `from` to position `to`. `from == to` is a no-op.
|
|
679
637
|
*/
|
|
@@ -682,8 +640,8 @@ export class Document {
|
|
|
682
640
|
* A blank document: a main card carrying only `$quill`, an empty body, and
|
|
683
641
|
* no composable cards. Absent fields resolve at render time (`default`, else
|
|
684
642
|
* the field's blank), so nothing the caller did not set reaches the output.
|
|
685
|
-
* For
|
|
686
|
-
* invalid quill reference.
|
|
643
|
+
* For one instance of every card kind use `Quill.seedDocument()`. Throws on
|
|
644
|
+
* an invalid quill reference.
|
|
687
645
|
*/
|
|
688
646
|
constructor(quill_ref: string);
|
|
689
647
|
/**
|
|
@@ -780,7 +738,7 @@ export class Document {
|
|
|
780
738
|
* Store a field verbatim at `addr`, deferring coercion to render; the typed
|
|
781
739
|
* write is [`commitField`](Document::commit_field). A bare string is `Addr`
|
|
782
740
|
* shorthand for `{ field }`; `{ card: 2, field: "qty" }` targets a
|
|
783
|
-
* composable card.
|
|
741
|
+
* composable card. A body address throws:
|
|
784
742
|
* write a body with `revise` / `overwrite`. Throws on an out-of-range card
|
|
785
743
|
* or a malformed name.
|
|
786
744
|
*/
|
|
@@ -793,11 +751,6 @@ export class Document {
|
|
|
793
751
|
* one entry per offending field. Throws on an out-of-range card.
|
|
794
752
|
*/
|
|
795
753
|
storeFields(addr: CardAddr, fields: Record<string, unknown>): void;
|
|
796
|
-
/**
|
|
797
|
-
* Store a field verbatim at `addr` and mark it `!must_fill`. A body address
|
|
798
|
-
* throws; same validation as [`storeField`](Document::store_field).
|
|
799
|
-
*/
|
|
800
|
-
storeFill(addr: Addr | string, value: any): void;
|
|
801
754
|
/**
|
|
802
755
|
* Merge a card-kind's seed `overlay` into the **main** card's `$seed` map
|
|
803
756
|
* under `cardKind`, preserving sibling kinds; `$seed` is main-only, so this
|
|
@@ -847,12 +800,19 @@ export class Quill {
|
|
|
847
800
|
* transport door (`fromMarkdown`, `fromStored`, a stored row).
|
|
848
801
|
*
|
|
849
802
|
* Idempotent: an equal value is not rewritten, so YAML comments and stored
|
|
850
|
-
* bytes survive. A
|
|
851
|
-
* that field, and a value the strict write refuses stays as authored with a
|
|
803
|
+
* bytes survive. A value the strict write refuses stays as authored with a
|
|
852
804
|
* diagnostic. Throws when `doc` declares a different `$quill`, before any
|
|
853
805
|
* mutation.
|
|
854
806
|
*/
|
|
855
807
|
conform(doc: Document): Diagnostic[];
|
|
808
|
+
/**
|
|
809
|
+
* The empty document: a main card carrying this quill's `$quill` and
|
|
810
|
+
* `$kind: main`, no field committed, no composable card, no body. The
|
|
811
|
+
* type-minimal valid input, and the document a plate is bound to render
|
|
812
|
+
* (the quill authoring contract). `new Document(ref)` is the same document
|
|
813
|
+
* reached by spelling the reference.
|
|
814
|
+
*/
|
|
815
|
+
emptyDocument(): Document;
|
|
856
816
|
/**
|
|
857
817
|
* Build a quill from a file tree. Pure: the declared backend is resolved
|
|
858
818
|
* later, at render time. Accepts a `Map<string, Uint8Array>` or a plain
|
|
@@ -874,9 +834,9 @@ export class Quill {
|
|
|
874
834
|
parse(markdown: string): Document;
|
|
875
835
|
/**
|
|
876
836
|
* Seed a starter composable `Card` of the given kind (carries `$kind`),
|
|
877
|
-
*
|
|
878
|
-
* (`overlay ›
|
|
879
|
-
* declared in this quill's schema.
|
|
837
|
+
* committing an optional per-kind seed `overlay`'s fields and `$body`
|
|
838
|
+
* (`overlay › absent`, body `overlay › empty`). `undefined` when
|
|
839
|
+
* `cardKind` is not declared in this quill's schema.
|
|
880
840
|
*
|
|
881
841
|
* Pass `document.seedOverlay(cardKind)` as `overlay` so a card added to a
|
|
882
842
|
* template-derived document inherits its curated starting values; omit it
|
|
@@ -885,9 +845,9 @@ export class Quill {
|
|
|
885
845
|
seedCard(card_kind: string, overlay: Record<string, unknown> | undefined): Card | undefined;
|
|
886
846
|
/**
|
|
887
847
|
* Seed a starter `Document` from the schema: the main card plus one instance
|
|
888
|
-
* of each composable card kind, each
|
|
889
|
-
*
|
|
890
|
-
* `
|
|
848
|
+
* of each composable card kind, each body empty and every field absent
|
|
849
|
+
* (interpolated at render as `default:`, else the field's blank). No
|
|
850
|
+
* `example:` is committed (a field's or `body.example`).
|
|
891
851
|
*/
|
|
892
852
|
seedDocument(): Document;
|
|
893
853
|
/**
|
|
@@ -908,8 +868,7 @@ export class Quill {
|
|
|
908
868
|
/**
|
|
909
869
|
* Validate `doc` against this quill's schema, returning every diagnostic
|
|
910
870
|
* (empty when the document is valid). Forwards the canonical
|
|
911
|
-
* `validation::*` diagnostics the engine emits
|
|
912
|
-
* `validation::must_fill` warning per `!must_fill` marker left behind.
|
|
871
|
+
* `validation::*` diagnostics the engine emits.
|
|
913
872
|
*/
|
|
914
873
|
validate(doc: Document): Diagnostic[];
|
|
915
874
|
/**
|
|
@@ -971,6 +930,22 @@ export function formatDocPath(segs: DocPathSeg[]): string;
|
|
|
971
930
|
*/
|
|
972
931
|
export function importMarkdown(markdown: string): Content;
|
|
973
932
|
|
|
933
|
+
/**
|
|
934
|
+
* Whether `content` satisfies the `inline` constraint of `richtext` and
|
|
935
|
+
* `plaintext`: one `Para` line, in no container, with no islands. Judged on
|
|
936
|
+
* the normalized content, which is what a write stores. Throws if `content` is
|
|
937
|
+
* not canonical content.
|
|
938
|
+
*/
|
|
939
|
+
export function isInline(content: Content): boolean;
|
|
940
|
+
|
|
941
|
+
/**
|
|
942
|
+
* Whether `content` satisfies the `plaintext` constraint: no marks, no
|
|
943
|
+
* islands, every line a `Para` in no container. Judged on the normalized
|
|
944
|
+
* content, which is what a write stores. Throws if `content` is not canonical
|
|
945
|
+
* content.
|
|
946
|
+
*/
|
|
947
|
+
export function isPlain(content: Content): boolean;
|
|
948
|
+
|
|
974
949
|
/**
|
|
975
950
|
* Where `bundle`'s text-moving channels (`delta`, then `islandOps`, then
|
|
976
951
|
* `lineOps`) leave `content`'s marks: the final-text coordinates the bundle's
|
|
@@ -1036,7 +1011,6 @@ export interface InitOutput {
|
|
|
1036
1011
|
readonly document__readerGetContentAt: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
1037
1012
|
readonly document__reviseField: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
|
|
1038
1013
|
readonly document_applyChange: (a: number, b: number, c: number, d: number) => void;
|
|
1039
|
-
readonly document_blueprintInstruction: (a: number, b: number, c: number) => void;
|
|
1040
1014
|
readonly document_bodyMarkdown: (a: number, b: number, c: number) => void;
|
|
1041
1015
|
readonly document_card: (a: number, b: number, c: number) => void;
|
|
1042
1016
|
readonly document_cardCount: (a: number) => number;
|
|
@@ -1045,15 +1019,14 @@ export interface InitOutput {
|
|
|
1045
1019
|
readonly document_clone: (a: number) => number;
|
|
1046
1020
|
readonly document_currentStorageVersion: (a: number) => void;
|
|
1047
1021
|
readonly document_equals: (a: number, b: number) => number;
|
|
1048
|
-
readonly document_formatRules: (a: number) => void;
|
|
1049
1022
|
readonly document_fromMarkdown: (a: number, b: number, c: number) => void;
|
|
1050
1023
|
readonly document_fromStored: (a: number, b: number, c: number) => void;
|
|
1051
1024
|
readonly document_getExt: (a: number, b: number, c: number) => void;
|
|
1052
1025
|
readonly document_getStored: (a: number, b: number, c: number) => void;
|
|
1053
1026
|
readonly document_insertCard: (a: number, b: number, c: number, d: number) => void;
|
|
1054
|
-
readonly document_isFill: (a: number, b: number, c: number) => void;
|
|
1055
1027
|
readonly document_loadStored: (a: number, b: number, c: number, d: number) => void;
|
|
1056
1028
|
readonly document_main: (a: number, b: number) => void;
|
|
1029
|
+
readonly document_markdownRules: (a: number) => void;
|
|
1057
1030
|
readonly document_moveCard: (a: number, b: number, c: number, d: number) => void;
|
|
1058
1031
|
readonly document_new: (a: number, b: number, c: number) => void;
|
|
1059
1032
|
readonly document_overwrite: (a: number, b: number, c: number, d: number) => void;
|
|
@@ -1071,7 +1044,6 @@ export interface InitOutput {
|
|
|
1071
1044
|
readonly document_storeExt: (a: number, b: number, c: number, d: number) => void;
|
|
1072
1045
|
readonly document_storeField: (a: number, b: number, c: number, d: number) => void;
|
|
1073
1046
|
readonly document_storeFields: (a: number, b: number, c: number, d: number) => void;
|
|
1074
|
-
readonly document_storeFill: (a: number, b: number, c: number, d: number) => void;
|
|
1075
1047
|
readonly document_storeSeedOverlay: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
1076
1048
|
readonly document_toMarkdown: (a: number, b: number) => void;
|
|
1077
1049
|
readonly document_toStored: (a: number, b: number) => void;
|
|
@@ -1080,13 +1052,16 @@ export interface InitOutput {
|
|
|
1080
1052
|
readonly formatDiagnostic: (a: number, b: number) => void;
|
|
1081
1053
|
readonly formatDocPath: (a: number, b: number) => void;
|
|
1082
1054
|
readonly importMarkdown: (a: number, b: number, c: number) => void;
|
|
1055
|
+
readonly isInline: (a: number, b: number) => void;
|
|
1056
|
+
readonly isPlain: (a: number, b: number) => void;
|
|
1083
1057
|
readonly mapMarks: (a: number, b: number, c: number) => void;
|
|
1084
1058
|
readonly mapPos: (a: number, b: number, c: number, d: number) => void;
|
|
1085
1059
|
readonly parseDocPath: (a: number, b: number, c: number) => void;
|
|
1086
|
-
readonly quill__resolve: (a: number, b: number, c: number) => void;
|
|
1060
|
+
readonly quill__resolve: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
1087
1061
|
readonly quill_backendId: (a: number, b: number) => void;
|
|
1088
1062
|
readonly quill_blueprint: (a: number, b: number) => void;
|
|
1089
1063
|
readonly quill_conform: (a: number, b: number, c: number) => void;
|
|
1064
|
+
readonly quill_emptyDocument: (a: number) => number;
|
|
1090
1065
|
readonly quill_fromTree: (a: number, b: number) => void;
|
|
1091
1066
|
readonly quill_metadata: (a: number, b: number) => void;
|
|
1092
1067
|
readonly quill_parse: (a: number, b: number, c: number, d: number) => void;
|