@cardenelabs/dragon 0.13.0 → 0.14.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/README.md +46 -34
- package/dist/index.cjs +1511 -30
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +402 -3
- package/dist/index.d.ts +402 -3
- package/dist/index.js +1512 -31
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/color.ts +31 -6
- package/src/compile.ts +268 -9
- package/src/input-size.ts +12 -0
- package/src/json-parser.ts +456 -21
- package/src/schemas/diagram.json +356 -0
- package/src/types.ts +91 -0
- package/src/v05/input-table.generated.ts +136 -0
- package/src/v05/parser-types.ts +5 -1
- package/src/v05/parser.ts +695 -8
package/dist/index.d.ts
CHANGED
|
@@ -90,6 +90,42 @@ declare function orderByDependency(items: ReadonlyArray<{
|
|
|
90
90
|
type DslDynShape = NonNullable<CdlDiagram["nodes"][number]["shape"]>;
|
|
91
91
|
/** 値を見せる部品 (#1374)。 図形と同じ理由で描画側の型をそのまま使う */
|
|
92
92
|
type DslReadout = NonNullable<CdlDiagram["readouts"]>[number];
|
|
93
|
+
/** 読む人が動かすつまみ (#1389)。 部品と同じ理由で描画側の型をそのまま使う */
|
|
94
|
+
type DslInput = NonNullable<CdlDiagram["inputs"]>[number];
|
|
95
|
+
/** つまみの値から決まる値 (#1391)。 描画側の型に、知らせ用の記述位置だけを足す。 */
|
|
96
|
+
type DslFormula = NonNullable<CdlDiagram["formulas"]>[number] & {
|
|
97
|
+
pos?: Position;
|
|
98
|
+
};
|
|
99
|
+
/** 巻き上げに応じて進む値 (#1393)。 描画側の型をそのまま使う */
|
|
100
|
+
type DslScrollTrigger = NonNullable<CdlDiagram["scrollTriggers"]>[number];
|
|
101
|
+
/**
|
|
102
|
+
* 押下などの出来事で動く仕掛け (`events:`、 #1393)。
|
|
103
|
+
*
|
|
104
|
+
* **描画側の型をそのまま使わない**。 描画側は相手を識別子で持つ (`{ kind: "node", id }`) が、
|
|
105
|
+
* 記法は識別子を書けず名前で指す。 名前から識別子への読み替えは組み立てが行うため、
|
|
106
|
+
* 記法の段階では「何をどう指したか」 だけを持つ。
|
|
107
|
+
*/
|
|
108
|
+
type DslEventBinding = {
|
|
109
|
+
/** 出来事の種類 (`click` / `hover` など、描画側の `CdlEventKind` と同じ語) */
|
|
110
|
+
event: NonNullable<CdlDiagram["eventBindings"]>[number]["event"];
|
|
111
|
+
/** 何を指したか。 名前は記法に書かれたまま持ち、組み立てが識別子へ直す */
|
|
112
|
+
target: {
|
|
113
|
+
kind: "node";
|
|
114
|
+
name: string;
|
|
115
|
+
} | {
|
|
116
|
+
kind: "lane";
|
|
117
|
+
name: string;
|
|
118
|
+
} | {
|
|
119
|
+
kind: "edge";
|
|
120
|
+
from: string;
|
|
121
|
+
to: string;
|
|
122
|
+
} | {
|
|
123
|
+
kind: "diagram";
|
|
124
|
+
};
|
|
125
|
+
/** 呼び出す仕掛けの名前。 実体は画面側が持つ */
|
|
126
|
+
handlerId: string;
|
|
127
|
+
pos: Position;
|
|
128
|
+
};
|
|
93
129
|
type PresetType = "sequence" | "flow" | "swimlane" | "er" | "state" | "topology" | "solidity" | "gantt" | "class" | "pie" | "bar" | "line" | "funnel" | "tree" | "journey" | "quadrant" | "c4" | "mind";
|
|
94
130
|
type Position = {
|
|
95
131
|
line: number;
|
|
@@ -164,6 +200,35 @@ type DslDocument = {
|
|
|
164
200
|
* 箱ではないので縦列に載らない。 図全体に 1 つの並びとして持つ。
|
|
165
201
|
*/
|
|
166
202
|
readouts?: DslReadout[];
|
|
203
|
+
/**
|
|
204
|
+
* 読む人が動かすつまみ (`inputs:`、 #1389)。 つまみが握る値は状態と同じ名前で参照できる。
|
|
205
|
+
*
|
|
206
|
+
* 部品と同じく箱ではないので縦列に載らない。 図全体に 1 つの並びとして持つ。
|
|
207
|
+
*/
|
|
208
|
+
inputs?: DslInput[];
|
|
209
|
+
/**
|
|
210
|
+
* つまみの値から決まる値 (`formulas:`、 #1391)。
|
|
211
|
+
*
|
|
212
|
+
* **`values:` とは経路が別**。 あちらは段が動かす状態を読んで毎 frame 決まり直す
|
|
213
|
+
* (`derived`) のに対し、こちらはつまみが握る値を読む反応の網に載る (`formulas`)。
|
|
214
|
+
* 描画側がこの 2 つを別の欄として持つため、記法でも別の項目にする。
|
|
215
|
+
*
|
|
216
|
+
* 式は描画側の書き方。 名前は中括弧で囲っても囲わなくてもよい (描画側の parser が
|
|
217
|
+
* どちらも同じ名前として読む)。
|
|
218
|
+
*/
|
|
219
|
+
formulas?: DslFormula[];
|
|
220
|
+
/**
|
|
221
|
+
* 押下などの出来事で動く仕掛け (`events:`、 #1393)。
|
|
222
|
+
*
|
|
223
|
+
* 相手は名前で指す。 組み立てが識別子へ直し、指す先が無ければ知らせる。
|
|
224
|
+
*/
|
|
225
|
+
events?: DslEventBinding[];
|
|
226
|
+
/**
|
|
227
|
+
* 巻き上げに応じて進む値 (`scrolls:`、 #1393)。
|
|
228
|
+
*
|
|
229
|
+
* 画面を巻き上げた量から 0 から 1 の進み具合を作る。 描画側はこれを値として読む。
|
|
230
|
+
*/
|
|
231
|
+
scrolls?: DslScrollTrigger[];
|
|
167
232
|
/**
|
|
168
233
|
* canvas pivot (CAR-1693 Phase 1) diagram-level layout mode。 未指定は "auto" default で
|
|
169
234
|
* catalog 100+ backward compat。 "manual" は Phase 4 で drag → pos: 保存の完全 manual mode。
|
|
@@ -220,6 +285,29 @@ type DslActor = {
|
|
|
220
285
|
* それ以外は真。 値だけを見せる図が、場所を空けるためだけの見えない箱を置くのに使う。
|
|
221
286
|
*/
|
|
222
287
|
visibleIf?: string;
|
|
288
|
+
/**
|
|
289
|
+
* 箱の幅と高さを値に追随させる (`wBind:` / `hBind:`、 #1392)。
|
|
290
|
+
*
|
|
291
|
+
* 状態の名前を `{名前}` の形で書く。 配置計算は追随前の `posW` / `posH` を使い、
|
|
292
|
+
* 描く時だけ値に合わせて伸び縮みする (矢印の通り道が動かないようにするための分離)。
|
|
293
|
+
*/
|
|
294
|
+
wBind?: string;
|
|
295
|
+
hBind?: string;
|
|
296
|
+
/**
|
|
297
|
+
* 箱の濃さ (`opacity:`、 #1392)。 0 から 1 の数か、状態の名前を書く。
|
|
298
|
+
*
|
|
299
|
+
* 書かなければ完全に見える状態になる。 `visibleIf` が出す / 出さないの 2 値なのに対し、
|
|
300
|
+
* こちらは途中の濃さを持てる。
|
|
301
|
+
*/
|
|
302
|
+
opacity?: number | string;
|
|
303
|
+
/**
|
|
304
|
+
* 描く時だけ箱をずらす量 (`renderOffsetX:` / `renderOffsetY:`、 #1392)。
|
|
305
|
+
*
|
|
306
|
+
* 配置計算と矢印はずらす前の位置を使うため、円周上に並べて見せる等の見た目専用。
|
|
307
|
+
* 数か、状態の名前を書く。
|
|
308
|
+
*/
|
|
309
|
+
renderOffsetX?: number | string;
|
|
310
|
+
renderOffsetY?: number | string;
|
|
223
311
|
/**
|
|
224
312
|
* 工程の並び (`type: gantt`) で、その工程の担当 (#1251)。
|
|
225
313
|
*
|
|
@@ -351,6 +439,15 @@ type DslStep = {
|
|
|
351
439
|
/** v0.5+ inline option */
|
|
352
440
|
guard?: string;
|
|
353
441
|
cardinality?: string;
|
|
442
|
+
/**
|
|
443
|
+
* 矢印を値に追随させる欄 (`widthBind:` / `strokeBind:` / `dashOffsetBind:`、 #1396)。
|
|
444
|
+
*
|
|
445
|
+
* 箱の `wBind` (#1392) と同じ形で、状態やつまみの名前を `{名前}` で書く。
|
|
446
|
+
* 太さ / 色 / 破線の位置がその値に合わせて動く。 通り道そのものは動かない。
|
|
447
|
+
*/
|
|
448
|
+
widthBind?: string;
|
|
449
|
+
strokeBind?: string;
|
|
450
|
+
dashOffsetBind?: string;
|
|
354
451
|
/** 矢印がどの辺から出るか (#1385)。 書かなければ描画側が自動で選ぶ */
|
|
355
452
|
side?: "top" | "right" | "bottom" | "left";
|
|
356
453
|
labelOffsetX?: number;
|
|
@@ -572,7 +669,7 @@ interface CompileToCdlOpts {
|
|
|
572
669
|
}
|
|
573
670
|
/** 図は出せるが書いた通りにならなかった、 という知らせ。 */
|
|
574
671
|
type CompileNotice = {
|
|
575
|
-
kind: "relative-position-ignored" | "focus-target-missing" | "state-override-rejected" | "external-paint-dropped" | "part-not-drawn" | "scale-reserved" | "chart-value-unreadable" | "chart-edge-dropped" | "value-shadows-state" | "value-unresolved" | "value-duplicate" | "flow-actor-missing" | "value-trigger-unresolved" | "flow-self-loop" | "lane-not-honored" | "lane-declared-empty" | "eyebrow-not-honored" | "flow-endpoint-not-honored" | "draw-not-honored" | "draw-target-mismatch";
|
|
672
|
+
kind: "relative-position-ignored" | "focus-target-missing" | "state-override-rejected" | "external-paint-dropped" | "part-not-drawn" | "scale-reserved" | "chart-value-unreadable" | "chart-edge-dropped" | "value-shadows-state" | "value-unresolved" | "value-duplicate" | "flow-actor-missing" | "value-trigger-unresolved" | "flow-self-loop" | "lane-not-honored" | "lane-declared-empty" | "eyebrow-not-honored" | "flow-endpoint-not-honored" | "draw-not-honored" | "draw-target-mismatch" | "formula-unresolved" | "event-target-missing";
|
|
576
673
|
/** 対象の名前。 光らせる相手なら書かれた指定そのまま */
|
|
577
674
|
actor: string;
|
|
578
675
|
/** 書かれていた行 */
|
|
@@ -821,7 +918,7 @@ type V05ParseResult = {
|
|
|
821
918
|
* 書くと、項目を足した時に案内か一覧のどちらかが取り残される (実際に `states` / `values` が
|
|
822
919
|
* 一覧に 1 件も無い状態で放置されていた)。
|
|
823
920
|
*/
|
|
824
|
-
declare const TOP_LEVEL_KEYS: readonly ["title", "type", "actors", "flow", "states", "values", "animation", "viewport", "lanes", "groups", "eyebrow", "axes", "readouts"];
|
|
921
|
+
declare const TOP_LEVEL_KEYS: readonly ["title", "type", "actors", "flow", "states", "values", "animation", "viewport", "lanes", "groups", "eyebrow", "axes", "readouts", "inputs", "formulas", "events", "scrolls"];
|
|
825
922
|
/** 受け付ける図種。 記法一覧はここを見る。 */
|
|
826
923
|
declare const PRESET_TYPES: ReadonlySet<PresetType>;
|
|
827
924
|
/**
|
|
@@ -1071,11 +1168,13 @@ type StrippedPaint = {
|
|
|
1071
1168
|
/**
|
|
1072
1169
|
* 図の中から、 色を塗る位置に入った外部参照を落とす。
|
|
1073
1170
|
*
|
|
1074
|
-
* 対象は
|
|
1171
|
+
* 対象は 3 種類ある。
|
|
1075
1172
|
*
|
|
1076
1173
|
* - 色を塗る key (`fill` / `stroke` / `bg` 等) の値
|
|
1077
1174
|
* - 状態の値 (`states[].initial` と、 phase が状態へ入れる値)。 状態は `{名前}` の形で
|
|
1078
1175
|
* `fill` に差し込まれるため、 色を塗る位置に届く
|
|
1176
|
+
* - つまみの値 (`inputs[].defaultValue` / `defaultValues` / `options`)。 これらも状態を上書きし、
|
|
1177
|
+
* 同じ形で paint に届く
|
|
1079
1178
|
*
|
|
1080
1179
|
* 説明文 (`title` / `subtitle` / `value` / `rows`) は対象外。 文字として出るだけで
|
|
1081
1180
|
* 属性にはならないため、 URL を書く正当な用途を壊さない。
|
|
@@ -1269,6 +1368,38 @@ interface DragonJson {
|
|
|
1269
1368
|
* 箱ではないので縦列に載らない。 図全体に 1 つの並びとして持つ。
|
|
1270
1369
|
*/
|
|
1271
1370
|
readouts?: DslReadout[];
|
|
1371
|
+
/**
|
|
1372
|
+
* 読む人が動かすつまみ (optional、 #1389)。 記法の最上位 `inputs:` と同じ。
|
|
1373
|
+
*
|
|
1374
|
+
* 部品と同じく箱ではないので縦列に載らない。 図全体に 1 つの並びとして持つ。
|
|
1375
|
+
*/
|
|
1376
|
+
inputs?: DslInput[];
|
|
1377
|
+
/**
|
|
1378
|
+
* つまみの値から決まる値 (optional、 #1391)。 記法の最上位 `formulas:` と同じ。
|
|
1379
|
+
*
|
|
1380
|
+
* 形は `{ 名前: "式" }`。 `values:` と経路が別で、式は名前を中括弧で囲わない。
|
|
1381
|
+
*/
|
|
1382
|
+
formulas?: Record<string, string>;
|
|
1383
|
+
/**
|
|
1384
|
+
* 押下などの出来事で動く仕掛け (optional、 #1393)。 記法の最上位 `events:` と同じ。
|
|
1385
|
+
*
|
|
1386
|
+
* 相手は名前で指す (`box` / `lane` / `arrow` / `diagram` のどれか 1 つ)。
|
|
1387
|
+
*/
|
|
1388
|
+
events?: {
|
|
1389
|
+
on: string;
|
|
1390
|
+
handler: string;
|
|
1391
|
+
box?: string;
|
|
1392
|
+
lane?: string;
|
|
1393
|
+
arrow?: string;
|
|
1394
|
+
diagram?: boolean;
|
|
1395
|
+
}[];
|
|
1396
|
+
/** 巻き上げに応じて進む値 (optional、 #1393)。 記法の最上位 `scrolls:` と同じ */
|
|
1397
|
+
scrolls?: Record<string, {
|
|
1398
|
+
start?: number;
|
|
1399
|
+
end?: number;
|
|
1400
|
+
scrub?: number;
|
|
1401
|
+
label?: string;
|
|
1402
|
+
}>;
|
|
1272
1403
|
/**
|
|
1273
1404
|
* 状態の初期値 (optional)。 記法の `states:` と同じ (#1181)。
|
|
1274
1405
|
*
|
|
@@ -1333,6 +1464,17 @@ interface JsonActor {
|
|
|
1333
1464
|
* 箱に出す題 (optional、 #1381)。 記法の `title:` と同じ。
|
|
1334
1465
|
*/
|
|
1335
1466
|
title?: string;
|
|
1467
|
+
/**
|
|
1468
|
+
* 値に追随する 5 欄 (optional、 #1392)。 記法の `wBind:` / `hBind:` / `opacity:` /
|
|
1469
|
+
* `renderOffsetX:` / `renderOffsetY:` と同じ。
|
|
1470
|
+
*
|
|
1471
|
+
* 大きさは文字列だけ (数を書いても追随のしようが無い)、濃さとずらしは数も受ける。
|
|
1472
|
+
*/
|
|
1473
|
+
wBind?: string;
|
|
1474
|
+
hBind?: string;
|
|
1475
|
+
opacity?: number | string;
|
|
1476
|
+
renderOffsetX?: number | string;
|
|
1477
|
+
renderOffsetY?: number | string;
|
|
1336
1478
|
/**
|
|
1337
1479
|
* CAR-1657 unified syntax = 既存 NodeKind (28 個) に加えて parts identifier (arc-gauge 等) を
|
|
1338
1480
|
* accept する。 未知 kind 値は parts 候補として partId に格納、 compile 側 partsCatalog で解決。
|
|
@@ -1454,6 +1596,13 @@ interface JsonStep {
|
|
|
1454
1596
|
style?: EdgeStyle;
|
|
1455
1597
|
guard?: string;
|
|
1456
1598
|
cardinality?: string;
|
|
1599
|
+
/**
|
|
1600
|
+
* 矢印を値に追随させる 3 欄 (optional、 #1396)。 記法の `widthBind:` / `strokeBind:` /
|
|
1601
|
+
* `dashOffsetBind:` と同じ。 描画側は文字列だけを取る。
|
|
1602
|
+
*/
|
|
1603
|
+
widthBind?: string;
|
|
1604
|
+
strokeBind?: string;
|
|
1605
|
+
dashOffsetBind?: string;
|
|
1457
1606
|
labelOffsetX?: number;
|
|
1458
1607
|
labelOffsetY?: number;
|
|
1459
1608
|
/** true で説明文を矢印の線の上に重ねる。 分岐図の条件ラベル用。 */
|
|
@@ -1860,6 +2009,36 @@ declare const diagramJsonSchema: {
|
|
|
1860
2009
|
required?: undefined;
|
|
1861
2010
|
})[];
|
|
1862
2011
|
};
|
|
2012
|
+
wBind: {
|
|
2013
|
+
type: string;
|
|
2014
|
+
minLength: number;
|
|
2015
|
+
pattern: string;
|
|
2016
|
+
description: string;
|
|
2017
|
+
};
|
|
2018
|
+
hBind: {
|
|
2019
|
+
type: string;
|
|
2020
|
+
minLength: number;
|
|
2021
|
+
pattern: string;
|
|
2022
|
+
description: string;
|
|
2023
|
+
};
|
|
2024
|
+
opacity: {
|
|
2025
|
+
type: string[];
|
|
2026
|
+
minLength: number;
|
|
2027
|
+
pattern: string;
|
|
2028
|
+
description: string;
|
|
2029
|
+
};
|
|
2030
|
+
renderOffsetX: {
|
|
2031
|
+
type: string[];
|
|
2032
|
+
minLength: number;
|
|
2033
|
+
pattern: string;
|
|
2034
|
+
description: string;
|
|
2035
|
+
};
|
|
2036
|
+
renderOffsetY: {
|
|
2037
|
+
type: string[];
|
|
2038
|
+
minLength: number;
|
|
2039
|
+
pattern: string;
|
|
2040
|
+
description: string;
|
|
2041
|
+
};
|
|
1863
2042
|
};
|
|
1864
2043
|
description?: undefined;
|
|
1865
2044
|
})[];
|
|
@@ -1938,6 +2117,24 @@ declare const diagramJsonSchema: {
|
|
|
1938
2117
|
};
|
|
1939
2118
|
};
|
|
1940
2119
|
};
|
|
2120
|
+
widthBind: {
|
|
2121
|
+
type: string;
|
|
2122
|
+
minLength: number;
|
|
2123
|
+
pattern: string;
|
|
2124
|
+
description: string;
|
|
2125
|
+
};
|
|
2126
|
+
strokeBind: {
|
|
2127
|
+
type: string;
|
|
2128
|
+
minLength: number;
|
|
2129
|
+
pattern: string;
|
|
2130
|
+
description: string;
|
|
2131
|
+
};
|
|
2132
|
+
dashOffsetBind: {
|
|
2133
|
+
type: string;
|
|
2134
|
+
minLength: number;
|
|
2135
|
+
pattern: string;
|
|
2136
|
+
description: string;
|
|
2137
|
+
};
|
|
1941
2138
|
};
|
|
1942
2139
|
};
|
|
1943
2140
|
};
|
|
@@ -2527,6 +2724,208 @@ declare const diagramJsonSchema: {
|
|
|
2527
2724
|
})[];
|
|
2528
2725
|
};
|
|
2529
2726
|
};
|
|
2727
|
+
inputs: {
|
|
2728
|
+
type: string;
|
|
2729
|
+
description: string;
|
|
2730
|
+
items: {
|
|
2731
|
+
type: string;
|
|
2732
|
+
required: string[];
|
|
2733
|
+
additionalProperties: boolean;
|
|
2734
|
+
properties: {
|
|
2735
|
+
id: {
|
|
2736
|
+
type: string;
|
|
2737
|
+
minLength: number;
|
|
2738
|
+
};
|
|
2739
|
+
kind: {
|
|
2740
|
+
type: string;
|
|
2741
|
+
enum: string[];
|
|
2742
|
+
};
|
|
2743
|
+
autoplay: {
|
|
2744
|
+
type: string;
|
|
2745
|
+
};
|
|
2746
|
+
defaultHi: {
|
|
2747
|
+
type: string;
|
|
2748
|
+
};
|
|
2749
|
+
defaultLo: {
|
|
2750
|
+
type: string;
|
|
2751
|
+
};
|
|
2752
|
+
defaultSpeedIdx: {
|
|
2753
|
+
type: string;
|
|
2754
|
+
};
|
|
2755
|
+
defaultValue: {
|
|
2756
|
+
type: string[];
|
|
2757
|
+
};
|
|
2758
|
+
defaultValues: {
|
|
2759
|
+
type: string;
|
|
2760
|
+
items: {
|
|
2761
|
+
type: string;
|
|
2762
|
+
};
|
|
2763
|
+
};
|
|
2764
|
+
defaultX: {
|
|
2765
|
+
type: string;
|
|
2766
|
+
};
|
|
2767
|
+
defaultY: {
|
|
2768
|
+
type: string;
|
|
2769
|
+
};
|
|
2770
|
+
duration: {
|
|
2771
|
+
type: string;
|
|
2772
|
+
};
|
|
2773
|
+
label: {
|
|
2774
|
+
type: string;
|
|
2775
|
+
};
|
|
2776
|
+
loop: {
|
|
2777
|
+
type: string;
|
|
2778
|
+
};
|
|
2779
|
+
max: {
|
|
2780
|
+
type: string;
|
|
2781
|
+
};
|
|
2782
|
+
maxLength: {
|
|
2783
|
+
type: string;
|
|
2784
|
+
};
|
|
2785
|
+
min: {
|
|
2786
|
+
type: string;
|
|
2787
|
+
};
|
|
2788
|
+
options: {
|
|
2789
|
+
type: string;
|
|
2790
|
+
items: {
|
|
2791
|
+
type: string;
|
|
2792
|
+
};
|
|
2793
|
+
};
|
|
2794
|
+
placeholder: {
|
|
2795
|
+
type: string;
|
|
2796
|
+
};
|
|
2797
|
+
speeds: {
|
|
2798
|
+
type: string;
|
|
2799
|
+
items: {
|
|
2800
|
+
type: string;
|
|
2801
|
+
};
|
|
2802
|
+
};
|
|
2803
|
+
step: {
|
|
2804
|
+
type: string;
|
|
2805
|
+
};
|
|
2806
|
+
xMax: {
|
|
2807
|
+
type: string;
|
|
2808
|
+
};
|
|
2809
|
+
xMin: {
|
|
2810
|
+
type: string;
|
|
2811
|
+
};
|
|
2812
|
+
yMax: {
|
|
2813
|
+
type: string;
|
|
2814
|
+
};
|
|
2815
|
+
yMin: {
|
|
2816
|
+
type: string;
|
|
2817
|
+
};
|
|
2818
|
+
};
|
|
2819
|
+
oneOf: ({
|
|
2820
|
+
properties: {
|
|
2821
|
+
kind: {
|
|
2822
|
+
enum: string[];
|
|
2823
|
+
};
|
|
2824
|
+
defaultValue: {
|
|
2825
|
+
type: string;
|
|
2826
|
+
};
|
|
2827
|
+
};
|
|
2828
|
+
required: string[];
|
|
2829
|
+
} | {
|
|
2830
|
+
properties: {
|
|
2831
|
+
kind: {
|
|
2832
|
+
enum: string[];
|
|
2833
|
+
};
|
|
2834
|
+
defaultValue?: undefined;
|
|
2835
|
+
};
|
|
2836
|
+
required: string[];
|
|
2837
|
+
})[];
|
|
2838
|
+
};
|
|
2839
|
+
};
|
|
2840
|
+
formulas: {
|
|
2841
|
+
type: string;
|
|
2842
|
+
description: string;
|
|
2843
|
+
additionalProperties: {
|
|
2844
|
+
type: string;
|
|
2845
|
+
minLength: number;
|
|
2846
|
+
pattern: string;
|
|
2847
|
+
};
|
|
2848
|
+
propertyNames: {
|
|
2849
|
+
pattern: string;
|
|
2850
|
+
};
|
|
2851
|
+
};
|
|
2852
|
+
events: {
|
|
2853
|
+
type: string;
|
|
2854
|
+
description: string;
|
|
2855
|
+
items: {
|
|
2856
|
+
type: string;
|
|
2857
|
+
required: string[];
|
|
2858
|
+
additionalProperties: boolean;
|
|
2859
|
+
properties: {
|
|
2860
|
+
on: {
|
|
2861
|
+
type: string;
|
|
2862
|
+
enum: string[];
|
|
2863
|
+
};
|
|
2864
|
+
handler: {
|
|
2865
|
+
type: string;
|
|
2866
|
+
minLength: number;
|
|
2867
|
+
pattern: string;
|
|
2868
|
+
};
|
|
2869
|
+
box: {
|
|
2870
|
+
type: string;
|
|
2871
|
+
minLength: number;
|
|
2872
|
+
description: string;
|
|
2873
|
+
};
|
|
2874
|
+
lane: {
|
|
2875
|
+
type: string;
|
|
2876
|
+
minLength: number;
|
|
2877
|
+
description: string;
|
|
2878
|
+
};
|
|
2879
|
+
arrow: {
|
|
2880
|
+
type: string;
|
|
2881
|
+
minLength: number;
|
|
2882
|
+
pattern: string;
|
|
2883
|
+
description: string;
|
|
2884
|
+
};
|
|
2885
|
+
diagram: {
|
|
2886
|
+
const: boolean;
|
|
2887
|
+
description: string;
|
|
2888
|
+
};
|
|
2889
|
+
};
|
|
2890
|
+
oneOf: {
|
|
2891
|
+
required: string[];
|
|
2892
|
+
}[];
|
|
2893
|
+
};
|
|
2894
|
+
};
|
|
2895
|
+
scrolls: {
|
|
2896
|
+
type: string;
|
|
2897
|
+
description: string;
|
|
2898
|
+
propertyNames: {
|
|
2899
|
+
pattern: string;
|
|
2900
|
+
};
|
|
2901
|
+
additionalProperties: {
|
|
2902
|
+
type: string;
|
|
2903
|
+
additionalProperties: boolean;
|
|
2904
|
+
properties: {
|
|
2905
|
+
start: {
|
|
2906
|
+
type: string;
|
|
2907
|
+
minimum: number;
|
|
2908
|
+
maximum: number;
|
|
2909
|
+
description: string;
|
|
2910
|
+
};
|
|
2911
|
+
end: {
|
|
2912
|
+
type: string;
|
|
2913
|
+
minimum: number;
|
|
2914
|
+
maximum: number;
|
|
2915
|
+
description: string;
|
|
2916
|
+
};
|
|
2917
|
+
scrub: {
|
|
2918
|
+
type: string;
|
|
2919
|
+
minimum: number;
|
|
2920
|
+
maximum: number;
|
|
2921
|
+
description: string;
|
|
2922
|
+
};
|
|
2923
|
+
label: {
|
|
2924
|
+
type: string;
|
|
2925
|
+
};
|
|
2926
|
+
};
|
|
2927
|
+
};
|
|
2928
|
+
};
|
|
2530
2929
|
};
|
|
2531
2930
|
};
|
|
2532
2931
|
|