@invinite-org/chartlang-adapter-kit 1.2.1 → 1.3.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 +105 -0
- package/dist/capabilities/capabilities.d.ts +9 -7
- package/dist/capabilities/capabilities.d.ts.map +1 -1
- package/dist/capabilities/capabilities.js +14 -8
- package/dist/capabilities/capabilities.js.map +1 -1
- package/dist/types.d.ts +54 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/validation/validateEmission.d.ts.map +1 -1
- package/dist/validation/validateEmission.js +47 -0
- package/dist/validation/validateEmission.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,110 @@
|
|
|
1
1
|
# @invinite-org/chartlang-adapter-kit
|
|
2
2
|
|
|
3
|
+
## 1.3.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- ca19e20: Bidirectional plot `offset` — negative offsets shift a plotted series left.
|
|
8
|
+
|
|
9
|
+
`offset` becomes a presentation-only **display shift** in bars with the
|
|
10
|
+
fixed sign convention `+n` = right (future), `−n` = left (past); the
|
|
11
|
+
numeric series value is unshifted. This replaces the old value-read model
|
|
12
|
+
(where a positive offset made `series.current` read the value N bars ago
|
|
13
|
+
and a negative offset resolved to `NaN`). The `*Opts` `offset` JSDoc (and
|
|
14
|
+
ALMA's `barShift`) now describe both directions and drop the old
|
|
15
|
+
"negative ⇒ NaN" wording (`AlmaOpts.offset`, the Gaussian-centre
|
|
16
|
+
position, is unchanged).
|
|
17
|
+
|
|
18
|
+
`PlotEmission` gains an optional presentation field `xShift?: number`
|
|
19
|
+
(signed integer bars; omitted/`0` ≡ no shift, so a no-shift emission is
|
|
20
|
+
byte-identical to today). `validateEmission` rejects a non-integer
|
|
21
|
+
`xShift`. The compiler no longer counts `offset` toward `maxLookback`
|
|
22
|
+
(the value is no longer read from a deeper slot). The runtime threads the
|
|
23
|
+
declared offset onto the emission as `xShift` (reading a
|
|
24
|
+
`WeakMap<Series, number>` offset tag set by `makeShiftedSeriesView`; ALMA
|
|
25
|
+
tags `opts.barShift`) and stops the old value-read shift so
|
|
26
|
+
`series.current` is unshifted; the reference adapter renders it by
|
|
27
|
+
projecting `xShift` onto the x-axis (extending the viewport for
|
|
28
|
+
future-shifted points).
|
|
29
|
+
|
|
30
|
+
The Pine converter now maps `plot(<ta.* call>, offset=N)` onto the
|
|
31
|
+
emitted `ta.*` call's `offset` opt (signed, both directions); a plot
|
|
32
|
+
whose value is not a direct `ta.*` call drops the offset and emits the
|
|
33
|
+
new `plot-offset-needs-ta-call` warning, and a plot-level offset
|
|
34
|
+
replacing the ta call's own `offset=` emits `plot-offset-overrides-ta-offset`.
|
|
35
|
+
|
|
36
|
+
The conformance harness's `plot-field` assertion gains an `xShift` field,
|
|
37
|
+
and a new scenario pins both shift directions plus the unshifted value
|
|
38
|
+
series.
|
|
39
|
+
|
|
40
|
+
- 3bf391a: Add the `draw.fillBetween(edgeA, edgeB, opts?)` drawing primitive — a
|
|
41
|
+
native filled ribbon between two edges (the closed polygon `edgeA`
|
|
42
|
+
forward then `edgeB` reversed). It is the chartlang equivalent of Pine's
|
|
43
|
+
`linefill.new(line1, line2, color)` / `fill(plot1, plot2)`. The
|
|
44
|
+
pine-converter now lowers static two-line `linefill.new` to it instead of
|
|
45
|
+
approximating with `draw.rotatedRectangle`, retiring the
|
|
46
|
+
`linefill-rotatedrect-approximated` diagnostic.
|
|
47
|
+
- 8086003: Add an optional presentation-only `z` (render-order / z-index) option to
|
|
48
|
+
`plot()` and every `draw.*` primitive. Default `0`; higher renders on
|
|
49
|
+
top, ties fall back to the existing group + declaration order. Finite
|
|
50
|
+
numbers only. Affects stacking only — values, alerts, and `state.*` are
|
|
51
|
+
unchanged.
|
|
52
|
+
|
|
53
|
+
Adapter kit: `PlotEmission` and `DrawingEmission` gain the matching
|
|
54
|
+
presentation-only `z?: number` wire field, validated by
|
|
55
|
+
`validateEmission` as a finite number (NaN / ±Infinity rejected;
|
|
56
|
+
fractional and negative allowed). Omitted/`0` stays byte-identical to a
|
|
57
|
+
pre-feature emission, so existing goldens and conformance hashes are
|
|
58
|
+
untouched.
|
|
59
|
+
|
|
60
|
+
Runtime: `plotImpl` reads `opts.z`, and the drawing-emit path
|
|
61
|
+
(`createDrawingHandle`) lifts `z` out of `state.style` — into a shallow
|
|
62
|
+
clone with `z` removed, where the per-kind `draw.*` impls fold the opts
|
|
63
|
+
bag — and threads it onto the top-level `PlotEmission.z` /
|
|
64
|
+
`DrawingEmission.z` with the same omit-when-`0` conditional spread used
|
|
65
|
+
for `xShift`. `z` is persisted **beside** the drawing slot's `state`
|
|
66
|
+
(never inside `DrawingState`), so an `update` retains the last value. A
|
|
67
|
+
no-`z` plot or drawing emits no `z` key — byte-identical to the
|
|
68
|
+
pre-feature baseline. `draw.table` / `draw.group` do not carry `z` in
|
|
69
|
+
v1.
|
|
70
|
+
|
|
71
|
+
Pine converter: `explicit_plot_zorder` is now a recognized no-op instead
|
|
72
|
+
of an unmapped warning. chartlang already layers marks by declaration
|
|
73
|
+
order within their group (the normative ordering contract), which is
|
|
74
|
+
exactly what Pine's `explicit_plot_zorder=true` makes authoritative — so
|
|
75
|
+
the flag is satisfied by default and needs no chartlang option.
|
|
76
|
+
`mapDeclarationArgs` no longer raises `indicator-arg-not-mapped` for it;
|
|
77
|
+
instead it emits a single `explicit-plot-zorder-default` info note
|
|
78
|
+
(covering both `explicit_plot_zorder=true` and the Pine-default
|
|
79
|
+
`=false`). The converter still never _emits_ a numeric `z` — Pine has no
|
|
80
|
+
per-element z source construct. Other unmapped `indicator(...)` args
|
|
81
|
+
(`timeframe`, etc.) keep warning.
|
|
82
|
+
|
|
83
|
+
Compiler: the ambient `@invinite-org/chartlang-core` `.d.ts` shim gains a
|
|
84
|
+
`ZOrdered { z?: number }` mixin intersected into `PlotOpts` and every
|
|
85
|
+
`draw.*` option type (mirroring core's `drawingStyle.ts`), so a compiled
|
|
86
|
+
script's `plot(value, { z })` **and** `draw.*(…, { z })` type-check (the
|
|
87
|
+
shim stays in lockstep with core).
|
|
88
|
+
|
|
89
|
+
Conformance: a new `z-order` scenario pins the plot `z` →
|
|
90
|
+
`PlotEmission.z` wire contract — a `plot(value, { z: -1 })` emits
|
|
91
|
+
`z: -1`, a no-`z` plot omits the field (omit-when-`0` byte-identity), and
|
|
92
|
+
a value-hash proves `z` never transforms the series. The `plot-field`
|
|
93
|
+
assertion's `field` union widens to also accept `"z"`.
|
|
94
|
+
|
|
95
|
+
### Patch Changes
|
|
96
|
+
|
|
97
|
+
- Updated dependencies [850ae21]
|
|
98
|
+
- Updated dependencies [ca19e20]
|
|
99
|
+
- Updated dependencies [6235ad7]
|
|
100
|
+
- Updated dependencies [3bf391a]
|
|
101
|
+
- Updated dependencies [8086003]
|
|
102
|
+
- Updated dependencies [850ae21]
|
|
103
|
+
- Updated dependencies [073f41b]
|
|
104
|
+
- Updated dependencies [5a9c24d]
|
|
105
|
+
- Updated dependencies [08c536c]
|
|
106
|
+
- @invinite-org/chartlang-core@1.2.0
|
|
107
|
+
|
|
3
108
|
## 1.2.1
|
|
4
109
|
|
|
5
110
|
### Patch Changes
|
|
@@ -187,6 +187,8 @@ export declare const capabilities: {
|
|
|
187
187
|
drawEllipse(): ReadonlySet<DrawingKind>;
|
|
188
188
|
/** Phase-3 `path` drawing kind. @since 0.3 @stable */
|
|
189
189
|
drawPath(): ReadonlySet<DrawingKind>;
|
|
190
|
+
/** `fill-between` filled-ribbon drawing kind. @since 0.4 @stable */
|
|
191
|
+
drawFillBetween(): ReadonlySet<DrawingKind>;
|
|
190
192
|
/** Phase-3 `marker` drawing kind. @since 0.3 @stable */
|
|
191
193
|
drawMarker(): ReadonlySet<DrawingKind>;
|
|
192
194
|
/** Phase-3 `arc` drawing kind. @since 0.3 @stable */
|
|
@@ -288,14 +290,14 @@ export declare const capabilities: {
|
|
|
288
290
|
/** All 6 line / ray drawing kinds. @since 0.3 @stable */
|
|
289
291
|
allLineDrawings(): ReadonlySet<DrawingKind>;
|
|
290
292
|
/**
|
|
291
|
-
* All
|
|
293
|
+
* All 9 box / shape drawing kinds. @since 0.3 @stable
|
|
292
294
|
*
|
|
293
295
|
* @remarks Capability categories are orthogonal to budget buckets:
|
|
294
|
-
* `polyline` and `
|
|
295
|
-
* and `marker` under `labels` — not the `boxes`
|
|
296
|
-
* `bucketFor` in `@invinite-org/chartlang-core`). An
|
|
297
|
-
* declares this set must size those buckets accordingly
|
|
298
|
-
*
|
|
296
|
+
* `polyline`, `path`, and `fill-between` are budgeted under the
|
|
297
|
+
* `polylines` bucket and `marker` under `labels` — not the `boxes`
|
|
298
|
+
* bucket (see `bucketFor` in `@invinite-org/chartlang-core`). An
|
|
299
|
+
* adapter that declares this set must size those buckets accordingly
|
|
300
|
+
* or those four kinds drop with `drawing-budget-exceeded`.
|
|
299
301
|
*/
|
|
300
302
|
allBoxDrawings(): ReadonlySet<DrawingKind>;
|
|
301
303
|
/** All 3 curve drawing kinds. @since 0.3 @stable */
|
|
@@ -324,7 +326,7 @@ export declare const capabilities: {
|
|
|
324
326
|
* Every drawing kind that ships in Phase 3 — the union of every
|
|
325
327
|
* category group above. Canvas2d declares this set as its
|
|
326
328
|
* `Capabilities.drawings` (Task 4) so the conformance suite
|
|
327
|
-
* covers all
|
|
329
|
+
* covers all 62 non-table kinds end-to-end.
|
|
328
330
|
*
|
|
329
331
|
* @since 0.3
|
|
330
332
|
* @stable
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/capabilities/capabilities.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEtF,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAErF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC,QAAQ,CAiBrD,CAAC;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,YAAY;YACb,WAAW,CAAC,QAAQ,CAAC;gBAGjB,WAAW,CAAC,QAAQ,CAAC;sBAGf,WAAW,CAAC,QAAQ,CAAC;gBAG3B,WAAW,CAAC,QAAQ,CAAC;IAGjC,sDAAsD;iBACzC,WAAW,CAAC,QAAQ,CAAC;IAGlC,wDAAwD;YAChD,WAAW,CAAC,QAAQ,CAAC;IAG7B;6BACyB;kBACX,WAAW,CAAC,QAAQ,CAAC;IAGnC,uDAAuD;aAC9C,WAAW,CAAC,QAAQ,CAAC;IAG9B,4DAA4D;cAClD,WAAW,CAAC,QAAQ,CAAC;IAG/B;;;;;6BAKyB;sBACP,WAAW,CAAC,QAAQ,CAAC;IAYvC;6BACyB;sBACP,WAAW,CAAC,QAAQ,CAAC;wBAGnB,aAAa,CAAC,YAAY,CAAC,GAAG,WAAW,CAAC,YAAY,CAAC;UAGrE,CAAC,WAAW,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;IAShE;;;;;;;;;;;;OAYG;oBACa,aAAa,CAAC,kBAAkB,CAAC,GAAG;QAChD,SAAS,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;KAChD;IAGD;;;;;;;;;;OAUG;4BACqB,OAAO,GAAG;QAAE,cAAc,EAAE,OAAO,CAAA;KAAE;IAG7D;;;;;;;;;;OAUG;kBACW,MAAM,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;IAG3C;;;;;;;;;;OAUG;0BACmB,aAAa,CAAC,YAAY,CAAC,GAAG;QAChD,aAAa,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;KAC5C;IAGD;;;;;;;;;;;;OAYG;iCAC0B,aAAa,GAAG;QAAE,oBAAoB,EAAE,aAAa,CAAA;KAAE;IAGpF;;;;;;;;;;OAUG;6BACsB,OAAO,GAAG;QAAE,eAAe,EAAE,OAAO,CAAA;KAAE;IAG/D;;;;;;;;;;OAUG;kBACW,OAAO,GAAG;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE;
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/capabilities/capabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -221,7 +221,8 @@ export const capabilities = {
|
|
|
221
221
|
return { logs: enabled };
|
|
222
222
|
},
|
|
223
223
|
// ------------------------------------------------------------
|
|
224
|
-
// Phase 3 — per-kind drawing builders (
|
|
224
|
+
// Phase 3 — per-kind drawing builders (62, incl. the Phase-2
|
|
225
|
+
// `fill-between` ribbon). Each returns a
|
|
225
226
|
// single-element `Set<DrawingKind>` so adapters can compose via
|
|
226
227
|
// `capabilities.union(...)`. The 13 category-group builders +
|
|
227
228
|
// `allPhase3Drawings()` below are the canonical user-facing
|
|
@@ -280,6 +281,10 @@ export const capabilities = {
|
|
|
280
281
|
drawPath() {
|
|
281
282
|
return new Set(["path"]);
|
|
282
283
|
},
|
|
284
|
+
/** `fill-between` filled-ribbon drawing kind. @since 0.4 @stable */
|
|
285
|
+
drawFillBetween() {
|
|
286
|
+
return new Set(["fill-between"]);
|
|
287
|
+
},
|
|
283
288
|
/** Phase-3 `marker` drawing kind. @since 0.3 @stable */
|
|
284
289
|
drawMarker() {
|
|
285
290
|
return new Set(["marker"]);
|
|
@@ -494,14 +499,14 @@ export const capabilities = {
|
|
|
494
499
|
]);
|
|
495
500
|
},
|
|
496
501
|
/**
|
|
497
|
-
* All
|
|
502
|
+
* All 9 box / shape drawing kinds. @since 0.3 @stable
|
|
498
503
|
*
|
|
499
504
|
* @remarks Capability categories are orthogonal to budget buckets:
|
|
500
|
-
* `polyline` and `
|
|
501
|
-
* and `marker` under `labels` — not the `boxes`
|
|
502
|
-
* `bucketFor` in `@invinite-org/chartlang-core`). An
|
|
503
|
-
* declares this set must size those buckets accordingly
|
|
504
|
-
*
|
|
505
|
+
* `polyline`, `path`, and `fill-between` are budgeted under the
|
|
506
|
+
* `polylines` bucket and `marker` under `labels` — not the `boxes`
|
|
507
|
+
* bucket (see `bucketFor` in `@invinite-org/chartlang-core`). An
|
|
508
|
+
* adapter that declares this set must size those buckets accordingly
|
|
509
|
+
* or those four kinds drop with `drawing-budget-exceeded`.
|
|
505
510
|
*/
|
|
506
511
|
allBoxDrawings() {
|
|
507
512
|
return new Set([
|
|
@@ -512,6 +517,7 @@ export const capabilities = {
|
|
|
512
517
|
"circle",
|
|
513
518
|
"ellipse",
|
|
514
519
|
"path",
|
|
520
|
+
"fill-between",
|
|
515
521
|
"marker",
|
|
516
522
|
]);
|
|
517
523
|
},
|
|
@@ -598,7 +604,7 @@ export const capabilities = {
|
|
|
598
604
|
* Every drawing kind that ships in Phase 3 — the union of every
|
|
599
605
|
* category group above. Canvas2d declares this set as its
|
|
600
606
|
* `Capabilities.drawings` (Task 4) so the conformance suite
|
|
601
|
-
* covers all
|
|
607
|
+
* covers all 62 non-table kinds end-to-end.
|
|
602
608
|
*
|
|
603
609
|
* @since 0.3
|
|
604
610
|
* @stable
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/capabilities/capabilities.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n\nimport { DRAWING_KINDS } from \"@invinite-org/chartlang-core\";\n\nimport type { DrawingCounts, IntervalDescriptor } from \"@invinite-org/chartlang-core\";\n\nimport type { AlertChannel, DrawingKind, PlotKind, SymInfoField } from \"../types.js\";\n\n/**\n * Canonical Phase-5 plot-kind set. Adapters that can render the full\n * script-facing plot inventory can pass this directly to\n * `Capabilities.plots`.\n *\n * @since 0.5\n * @stable\n * @example\n * import { PHASE_5_PLOT_KINDS } from \"@invinite-org/chartlang-adapter-kit\";\n * const plots = new Set(PHASE_5_PLOT_KINDS);\n * void plots;\n */\nexport const PHASE_5_PLOT_KINDS: ReadonlyArray<PlotKind> = Object.freeze([\n \"line\",\n \"step-line\",\n \"horizontal-line\",\n \"histogram\",\n \"area\",\n \"filled-band\",\n \"label\",\n \"marker\",\n \"shape\",\n \"character\",\n \"arrow\",\n \"candle-override\",\n \"bar-override\",\n \"bg-color\",\n \"bar-color\",\n \"horizontal-histogram\",\n]);\n\n/**\n * Helpers that assemble the `ReadonlySet` pieces of a `Capabilities`\n * bag. Phase 1 shipped the three line variants + an alert-channel\n * builder + a generic `union` combinator. Phase 2 adds one builder per\n * new `PlotKind` (`histogram`, `area`, `filledBand`, `label`,\n * `marker`) plus `allPhase2Plots()` — the union of every Phase-1 +\n * Phase-2 kind.\n *\n * @since 0.1\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const plots = capabilities.allPhase2Plots();\n * const alerts = capabilities.alerts(\"toast\", \"log\");\n * const merged = capabilities.union(plots, capabilities.label());\n * void merged;\n */\nexport const capabilities = {\n line(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"line\"]);\n },\n stepLine(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"step-line\"]);\n },\n horizontalLine(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"horizontal-line\"]);\n },\n allLines(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"line\", \"step-line\", \"horizontal-line\"]);\n },\n /** Phase-2 histogram plot kind. @since 0.2 @stable */\n histogram(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"histogram\"]);\n },\n /** Phase-2 filled-area plot kind. @since 0.2 @stable */\n area(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"area\"]);\n },\n /** Phase-2 filled-band (between two polylines) plot kind.\n * @since 0.2 @stable */\n filledBand(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"filled-band\"]);\n },\n /** Phase-2 text-label plot kind. @since 0.2 @stable */\n label(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"label\"]);\n },\n /** Phase-2 discrete-marker plot kind. @since 0.2 @stable */\n marker(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"marker\"]);\n },\n /** Union of every plot kind that ships through Phase 2 — `line`,\n * `step-line`, `horizontal-line`, `histogram`, `area`,\n * `filled-band`, `label`, `marker`. Phase-5 kinds are deliberately\n * excluded; the bundled `capabilities.union(...)` combinator\n * composes additional sets when needed.\n * @since 0.2 @stable */\n allPhase2Plots(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\n \"line\",\n \"step-line\",\n \"horizontal-line\",\n \"histogram\",\n \"area\",\n \"filled-band\",\n \"label\",\n \"marker\",\n ]);\n },\n /** Union of every plot kind that ships through Phase 5.\n * @since 0.5 @stable */\n allPhase5Plots(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>(PHASE_5_PLOT_KINDS);\n },\n alerts(...channels: ReadonlyArray<AlertChannel>): ReadonlySet<AlertChannel> {\n return new Set<AlertChannel>(channels);\n },\n union<T>(...sets: ReadonlyArray<ReadonlySet<T>>): ReadonlySet<T> {\n const out = new Set<T>();\n for (const s of sets) {\n for (const v of s) {\n out.add(v);\n }\n }\n return out;\n },\n /**\n * Timeframe descriptors this adapter can deliver, preserving picker order.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.intervals([\n * { value: \"1D\", label: \"1 day\", group: \"daily\" },\n * ]);\n * void partial;\n */\n intervals(list: ReadonlyArray<IntervalDescriptor>): {\n intervals: ReadonlyArray<IntervalDescriptor>;\n } {\n return { intervals: Object.freeze(list.slice()) };\n },\n /**\n * Declares whether the adapter can deliver secondary candle streams.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.multiTimeframe(false);\n * void partial;\n */\n multiTimeframe(enabled: boolean): { multiTimeframe: boolean } {\n return { multiTimeframe: enabled };\n },\n /**\n * Declares the maximum supported sub-pane count for one script.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.subPanes(Number.MAX_SAFE_INTEGER);\n * void partial;\n */\n subPanes(max: number): { subPanes: number } {\n return { subPanes: max };\n },\n /**\n * Declares which `syminfo.*` fields this adapter populates.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.symInfoFields([\"ticker\", \"mintick\"]);\n * void partial;\n */\n symInfoFields(fields: ReadonlyArray<SymInfoField>): {\n symInfoFields: ReadonlySet<SymInfoField>;\n } {\n return { symInfoFields: new Set(fields) };\n },\n /**\n * Declares the adapter's per-script drawing-emission budget.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.maxDrawingsPerScript({\n * lines: 50, labels: 50, boxes: 50, polylines: 50, other: 50,\n * });\n * void partial;\n */\n maxDrawingsPerScript(counts: DrawingCounts): { maxDrawingsPerScript: DrawingCounts } {\n return { maxDrawingsPerScript: Object.freeze({ ...counts }) };\n },\n /**\n * Declares whether user-wired alert conditions are supported.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.alertConditions(false);\n * void partial;\n */\n alertConditions(enabled: boolean): { alertConditions: boolean } {\n return { alertConditions: enabled };\n },\n /**\n * Declares whether runtime log messages are rendered by the adapter.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.logs(false);\n * void partial;\n */\n logs(enabled: boolean): { logs: boolean } {\n return { logs: enabled };\n },\n\n // ------------------------------------------------------------\n // Phase 3 — per-kind drawing builders (61). Each returns a\n // single-element `Set<DrawingKind>` so adapters can compose via\n // `capabilities.union(...)`. The 13 category-group builders +\n // `allPhase3Drawings()` below are the canonical user-facing\n // surface; per-kind builders exist for precision opt-in.\n // @since 0.3 @stable\n // ------------------------------------------------------------\n\n /** Phase-3 `line` drawing kind. @since 0.3 @stable */\n drawLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"line\"]);\n },\n /** Phase-3 `horizontal-line` drawing kind. @since 0.3 @stable */\n drawHorizontalLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"horizontal-line\"]);\n },\n /** Phase-3 `horizontal-ray` drawing kind. @since 0.3 @stable */\n drawHorizontalRay(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"horizontal-ray\"]);\n },\n /** Phase-3 `vertical-line` drawing kind. @since 0.3 @stable */\n drawVerticalLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"vertical-line\"]);\n },\n /** Phase-3 `cross-line` drawing kind. @since 0.3 @stable */\n drawCrossLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"cross-line\"]);\n },\n /** Phase-3 `trend-angle` drawing kind. @since 0.3 @stable */\n drawTrendAngle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"trend-angle\"]);\n },\n /** Phase-3 `rectangle` drawing kind. @since 0.3 @stable */\n drawRectangle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"rectangle\"]);\n },\n /** Phase-3 `rotated-rectangle` drawing kind. @since 0.3 @stable */\n drawRotatedRectangle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"rotated-rectangle\"]);\n },\n /** Phase-3 `triangle` drawing kind. @since 0.3 @stable */\n drawTriangle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"triangle\"]);\n },\n /** Phase-3 `polyline` drawing kind. @since 0.3 @stable */\n drawPolyline(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"polyline\"]);\n },\n /** Phase-3 `circle` drawing kind. @since 0.3 @stable */\n drawCircle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"circle\"]);\n },\n /** Phase-3 `ellipse` drawing kind. @since 0.3 @stable */\n drawEllipse(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"ellipse\"]);\n },\n /** Phase-3 `path` drawing kind. @since 0.3 @stable */\n drawPath(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"path\"]);\n },\n /** Phase-3 `marker` drawing kind. @since 0.3 @stable */\n drawMarker(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"marker\"]);\n },\n /** Phase-3 `arc` drawing kind. @since 0.3 @stable */\n drawArc(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arc\"]);\n },\n /** Phase-3 `curve` drawing kind. @since 0.3 @stable */\n drawCurve(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"curve\"]);\n },\n /** Phase-3 `double-curve` drawing kind. @since 0.3 @stable */\n drawDoubleCurve(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"double-curve\"]);\n },\n /** Phase-3 `pen` drawing kind. @since 0.3 @stable */\n drawPen(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pen\"]);\n },\n /** Phase-3 `highlighter` drawing kind. @since 0.3 @stable */\n drawHighlighter(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"highlighter\"]);\n },\n /** Phase-3 `brush` drawing kind. @since 0.3 @stable */\n drawBrush(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"brush\"]);\n },\n /** Phase-3 `text` drawing kind. @since 0.3 @stable */\n drawText(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"text\"]);\n },\n /** Phase-3 `arrow` drawing kind. @since 0.3 @stable */\n drawArrow(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arrow\"]);\n },\n /** Phase-3 `arrow-marker` drawing kind. @since 0.3 @stable */\n drawArrowMarker(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arrow-marker\"]);\n },\n /** Phase-3 `arrow-mark-up` drawing kind. @since 0.3 @stable */\n drawArrowMarkUp(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arrow-mark-up\"]);\n },\n /** Phase-3 `arrow-mark-down` drawing kind. @since 0.3 @stable */\n drawArrowMarkDown(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arrow-mark-down\"]);\n },\n /** Phase-3 `trend-channel` drawing kind. @since 0.3 @stable */\n drawTrendChannel(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"trend-channel\"]);\n },\n /** Phase-3 `flat-top-bottom` drawing kind. @since 0.3 @stable */\n drawFlatTopBottom(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"flat-top-bottom\"]);\n },\n /** Phase-3 `disjoint-channel` drawing kind. @since 0.3 @stable */\n drawDisjointChannel(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"disjoint-channel\"]);\n },\n /** Phase-3 `regression-trend` drawing kind. @since 0.3 @stable */\n drawRegressionTrend(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"regression-trend\"]);\n },\n /** Phase-3 `fib-retracement` drawing kind. @since 0.3 @stable */\n drawFibRetracement(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-retracement\"]);\n },\n /** Phase-3 `fib-trend-extension` drawing kind. @since 0.3 @stable */\n drawFibTrendExtension(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-trend-extension\"]);\n },\n /** Phase-3 `fib-channel` drawing kind. @since 0.3 @stable */\n drawFibChannel(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-channel\"]);\n },\n /** Phase-3 `fib-time-zone` drawing kind. @since 0.3 @stable */\n drawFibTimeZone(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-time-zone\"]);\n },\n /** Phase-3 `fib-wedge` drawing kind. @since 0.3 @stable */\n drawFibWedge(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-wedge\"]);\n },\n /** Phase-3 `fib-speed-fan` drawing kind. @since 0.3 @stable */\n drawFibSpeedFan(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-speed-fan\"]);\n },\n /** Phase-3 `fib-speed-arcs` drawing kind. @since 0.3 @stable */\n drawFibSpeedArcs(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-speed-arcs\"]);\n },\n /** Phase-3 `fib-spiral` drawing kind. @since 0.3 @stable */\n drawFibSpiral(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-spiral\"]);\n },\n /** Phase-3 `fib-circles` drawing kind. @since 0.3 @stable */\n drawFibCircles(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-circles\"]);\n },\n /** Phase-3 `fib-trend-time` drawing kind. @since 0.3 @stable */\n drawFibTrendTime(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-trend-time\"]);\n },\n /** Phase-3 `gann-box` drawing kind. @since 0.3 @stable */\n drawGannBox(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-box\"]);\n },\n /** Phase-3 `gann-square-fixed` drawing kind. @since 0.3 @stable */\n drawGannSquareFixed(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-square-fixed\"]);\n },\n /** Phase-3 `gann-square` drawing kind. @since 0.3 @stable */\n drawGannSquare(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-square\"]);\n },\n /** Phase-3 `gann-fan` drawing kind. @since 0.3 @stable */\n drawGannFan(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-fan\"]);\n },\n /** Phase-3 `pitchfork` drawing kind. @since 0.3 @stable */\n drawPitchfork(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pitchfork\"]);\n },\n /** Phase-3 `pitchfan` drawing kind. @since 0.3 @stable */\n drawPitchfan(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pitchfan\"]);\n },\n /** Phase-3 `xabcd-pattern` drawing kind. @since 0.3 @stable */\n drawXabcdPattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"xabcd-pattern\"]);\n },\n /** Phase-3 `cypher-pattern` drawing kind. @since 0.3 @stable */\n drawCypherPattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"cypher-pattern\"]);\n },\n /** Phase-3 `head-and-shoulders` drawing kind. @since 0.3 @stable */\n drawHeadAndShoulders(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"head-and-shoulders\"]);\n },\n /** Phase-3 `abcd-pattern` drawing kind. @since 0.3 @stable */\n drawAbcdPattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"abcd-pattern\"]);\n },\n /** Phase-3 `triangle-pattern` drawing kind. @since 0.3 @stable */\n drawTrianglePattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"triangle-pattern\"]);\n },\n /** Phase-3 `three-drives-pattern` drawing kind. @since 0.3 @stable */\n drawThreeDrivesPattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"three-drives-pattern\"]);\n },\n /** Phase-3 `elliott-impulse-wave` drawing kind. @since 0.3 @stable */\n drawElliottImpulseWave(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-impulse-wave\"]);\n },\n /** Phase-3 `elliott-correction-wave` drawing kind. @since 0.3 @stable */\n drawElliottCorrectionWave(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-correction-wave\"]);\n },\n /** Phase-3 `elliott-triangle-wave` drawing kind. @since 0.3 @stable */\n drawElliottTriangleWave(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-triangle-wave\"]);\n },\n /** Phase-3 `elliott-double-combo` drawing kind. @since 0.3 @stable */\n drawElliottDoubleCombo(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-double-combo\"]);\n },\n /** Phase-3 `elliott-triple-combo` drawing kind. @since 0.3 @stable */\n drawElliottTripleCombo(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-triple-combo\"]);\n },\n /** Phase-3 `cyclic-lines` drawing kind. @since 0.3 @stable */\n drawCyclicLines(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"cyclic-lines\"]);\n },\n /** Phase-3 `time-cycles` drawing kind. @since 0.3 @stable */\n drawTimeCycles(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"time-cycles\"]);\n },\n /** Phase-3 `sine-line` drawing kind. @since 0.3 @stable */\n drawSineLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"sine-line\"]);\n },\n /** Phase-3 `group` drawing kind. @since 0.3 @stable */\n drawGroup(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"group\"]);\n },\n /** Phase-3 `frame` drawing kind. @since 0.3 @stable */\n drawFrame(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"frame\"]);\n },\n /** Phase-5 `table` drawing kind. @since 0.5 @stable */\n drawTable(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"table\"]);\n },\n\n // ------------------------------------------------------------\n // Phase 3 — category-group builders (13). Each covers the kinds\n // of one §10.2 category. Combine via `union(...)` for adapters\n // that support multiple categories.\n // @since 0.3 @stable\n // ------------------------------------------------------------\n\n /** All 6 line / ray drawing kinds. @since 0.3 @stable */\n allLineDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"line\",\n \"horizontal-line\",\n \"horizontal-ray\",\n \"vertical-line\",\n \"cross-line\",\n \"trend-angle\",\n ]);\n },\n /**\n * All 8 box / shape drawing kinds. @since 0.3 @stable\n *\n * @remarks Capability categories are orthogonal to budget buckets:\n * `polyline` and `path` are budgeted under the `polylines` bucket\n * and `marker` under `labels` — not the `boxes` bucket (see\n * `bucketFor` in `@invinite-org/chartlang-core`). An adapter that\n * declares this set must size those buckets accordingly or those\n * three kinds drop with `drawing-budget-exceeded`.\n */\n allBoxDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"rectangle\",\n \"rotated-rectangle\",\n \"triangle\",\n \"polyline\",\n \"circle\",\n \"ellipse\",\n \"path\",\n \"marker\",\n ]);\n },\n /** All 3 curve drawing kinds. @since 0.3 @stable */\n allCurveDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arc\", \"curve\", \"double-curve\"]);\n },\n /** All 3 freehand drawing kinds. @since 0.3 @stable */\n allFreehandDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pen\", \"highlighter\", \"brush\"]);\n },\n /** All 5 annotation drawing kinds. @since 0.3 @stable */\n allAnnotationDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"text\",\n \"arrow\",\n \"arrow-marker\",\n \"arrow-mark-up\",\n \"arrow-mark-down\",\n ]);\n },\n /** All 4 channel drawing kinds. @since 0.3 @stable */\n allChannelDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"trend-channel\",\n \"flat-top-bottom\",\n \"disjoint-channel\",\n \"regression-trend\",\n ]);\n },\n /** All 10 fibonacci drawing kinds. @since 0.3 @stable */\n allFibDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"fib-retracement\",\n \"fib-trend-extension\",\n \"fib-channel\",\n \"fib-time-zone\",\n \"fib-wedge\",\n \"fib-speed-fan\",\n \"fib-speed-arcs\",\n \"fib-spiral\",\n \"fib-circles\",\n \"fib-trend-time\",\n ]);\n },\n /** All 4 gann drawing kinds. @since 0.3 @stable */\n allGannDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-box\", \"gann-square-fixed\", \"gann-square\", \"gann-fan\"]);\n },\n /** All 2 pitchfork drawing kinds. @since 0.3 @stable */\n allPitchforkDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pitchfork\", \"pitchfan\"]);\n },\n /** All 6 harmonic-pattern drawing kinds. @since 0.3 @stable */\n allPatternDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"xabcd-pattern\",\n \"cypher-pattern\",\n \"head-and-shoulders\",\n \"abcd-pattern\",\n \"triangle-pattern\",\n \"three-drives-pattern\",\n ]);\n },\n /** All 5 elliott-wave drawing kinds. @since 0.3 @stable */\n allElliottDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"elliott-impulse-wave\",\n \"elliott-correction-wave\",\n \"elliott-triangle-wave\",\n \"elliott-double-combo\",\n \"elliott-triple-combo\",\n ]);\n },\n /** All 3 cycle drawing kinds. @since 0.3 @stable */\n allCycleDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"cyclic-lines\", \"time-cycles\", \"sine-line\"]);\n },\n /** All 2 container drawing kinds. @since 0.3 @stable */\n allContainerDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"group\", \"frame\"]);\n },\n\n /**\n * Every drawing kind that ships in Phase 3 — the union of every\n * category group above. Canvas2d declares this set as its\n * `Capabilities.drawings` (Task 4) so the conformance suite\n * covers all 61 kinds end-to-end.\n *\n * @since 0.3\n * @stable\n */\n allPhase3Drawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>(DRAWING_KINDS.filter((kind) => kind !== \"table\"));\n },\n};\n"]}
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/capabilities/capabilities.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) 2026 Invinite. Licensed under the MIT License.\n// See the LICENSE file in the repo root for full license text.\n\nimport { DRAWING_KINDS } from \"@invinite-org/chartlang-core\";\n\nimport type { DrawingCounts, IntervalDescriptor } from \"@invinite-org/chartlang-core\";\n\nimport type { AlertChannel, DrawingKind, PlotKind, SymInfoField } from \"../types.js\";\n\n/**\n * Canonical Phase-5 plot-kind set. Adapters that can render the full\n * script-facing plot inventory can pass this directly to\n * `Capabilities.plots`.\n *\n * @since 0.5\n * @stable\n * @example\n * import { PHASE_5_PLOT_KINDS } from \"@invinite-org/chartlang-adapter-kit\";\n * const plots = new Set(PHASE_5_PLOT_KINDS);\n * void plots;\n */\nexport const PHASE_5_PLOT_KINDS: ReadonlyArray<PlotKind> = Object.freeze([\n \"line\",\n \"step-line\",\n \"horizontal-line\",\n \"histogram\",\n \"area\",\n \"filled-band\",\n \"label\",\n \"marker\",\n \"shape\",\n \"character\",\n \"arrow\",\n \"candle-override\",\n \"bar-override\",\n \"bg-color\",\n \"bar-color\",\n \"horizontal-histogram\",\n]);\n\n/**\n * Helpers that assemble the `ReadonlySet` pieces of a `Capabilities`\n * bag. Phase 1 shipped the three line variants + an alert-channel\n * builder + a generic `union` combinator. Phase 2 adds one builder per\n * new `PlotKind` (`histogram`, `area`, `filledBand`, `label`,\n * `marker`) plus `allPhase2Plots()` — the union of every Phase-1 +\n * Phase-2 kind.\n *\n * @since 0.1\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const plots = capabilities.allPhase2Plots();\n * const alerts = capabilities.alerts(\"toast\", \"log\");\n * const merged = capabilities.union(plots, capabilities.label());\n * void merged;\n */\nexport const capabilities = {\n line(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"line\"]);\n },\n stepLine(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"step-line\"]);\n },\n horizontalLine(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"horizontal-line\"]);\n },\n allLines(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"line\", \"step-line\", \"horizontal-line\"]);\n },\n /** Phase-2 histogram plot kind. @since 0.2 @stable */\n histogram(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"histogram\"]);\n },\n /** Phase-2 filled-area plot kind. @since 0.2 @stable */\n area(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"area\"]);\n },\n /** Phase-2 filled-band (between two polylines) plot kind.\n * @since 0.2 @stable */\n filledBand(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"filled-band\"]);\n },\n /** Phase-2 text-label plot kind. @since 0.2 @stable */\n label(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"label\"]);\n },\n /** Phase-2 discrete-marker plot kind. @since 0.2 @stable */\n marker(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\"marker\"]);\n },\n /** Union of every plot kind that ships through Phase 2 — `line`,\n * `step-line`, `horizontal-line`, `histogram`, `area`,\n * `filled-band`, `label`, `marker`. Phase-5 kinds are deliberately\n * excluded; the bundled `capabilities.union(...)` combinator\n * composes additional sets when needed.\n * @since 0.2 @stable */\n allPhase2Plots(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>([\n \"line\",\n \"step-line\",\n \"horizontal-line\",\n \"histogram\",\n \"area\",\n \"filled-band\",\n \"label\",\n \"marker\",\n ]);\n },\n /** Union of every plot kind that ships through Phase 5.\n * @since 0.5 @stable */\n allPhase5Plots(): ReadonlySet<PlotKind> {\n return new Set<PlotKind>(PHASE_5_PLOT_KINDS);\n },\n alerts(...channels: ReadonlyArray<AlertChannel>): ReadonlySet<AlertChannel> {\n return new Set<AlertChannel>(channels);\n },\n union<T>(...sets: ReadonlyArray<ReadonlySet<T>>): ReadonlySet<T> {\n const out = new Set<T>();\n for (const s of sets) {\n for (const v of s) {\n out.add(v);\n }\n }\n return out;\n },\n /**\n * Timeframe descriptors this adapter can deliver, preserving picker order.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.intervals([\n * { value: \"1D\", label: \"1 day\", group: \"daily\" },\n * ]);\n * void partial;\n */\n intervals(list: ReadonlyArray<IntervalDescriptor>): {\n intervals: ReadonlyArray<IntervalDescriptor>;\n } {\n return { intervals: Object.freeze(list.slice()) };\n },\n /**\n * Declares whether the adapter can deliver secondary candle streams.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.multiTimeframe(false);\n * void partial;\n */\n multiTimeframe(enabled: boolean): { multiTimeframe: boolean } {\n return { multiTimeframe: enabled };\n },\n /**\n * Declares the maximum supported sub-pane count for one script.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.subPanes(Number.MAX_SAFE_INTEGER);\n * void partial;\n */\n subPanes(max: number): { subPanes: number } {\n return { subPanes: max };\n },\n /**\n * Declares which `syminfo.*` fields this adapter populates.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.symInfoFields([\"ticker\", \"mintick\"]);\n * void partial;\n */\n symInfoFields(fields: ReadonlyArray<SymInfoField>): {\n symInfoFields: ReadonlySet<SymInfoField>;\n } {\n return { symInfoFields: new Set(fields) };\n },\n /**\n * Declares the adapter's per-script drawing-emission budget.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.maxDrawingsPerScript({\n * lines: 50, labels: 50, boxes: 50, polylines: 50, other: 50,\n * });\n * void partial;\n */\n maxDrawingsPerScript(counts: DrawingCounts): { maxDrawingsPerScript: DrawingCounts } {\n return { maxDrawingsPerScript: Object.freeze({ ...counts }) };\n },\n /**\n * Declares whether user-wired alert conditions are supported.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.alertConditions(false);\n * void partial;\n */\n alertConditions(enabled: boolean): { alertConditions: boolean } {\n return { alertConditions: enabled };\n },\n /**\n * Declares whether runtime log messages are rendered by the adapter.\n *\n * @since 0.4\n * @stable\n * @example\n * import { capabilities } from \"@invinite-org/chartlang-adapter-kit\";\n *\n * const partial = capabilities.logs(false);\n * void partial;\n */\n logs(enabled: boolean): { logs: boolean } {\n return { logs: enabled };\n },\n\n // ------------------------------------------------------------\n // Phase 3 — per-kind drawing builders (62, incl. the Phase-2\n // `fill-between` ribbon). Each returns a\n // single-element `Set<DrawingKind>` so adapters can compose via\n // `capabilities.union(...)`. The 13 category-group builders +\n // `allPhase3Drawings()` below are the canonical user-facing\n // surface; per-kind builders exist for precision opt-in.\n // @since 0.3 @stable\n // ------------------------------------------------------------\n\n /** Phase-3 `line` drawing kind. @since 0.3 @stable */\n drawLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"line\"]);\n },\n /** Phase-3 `horizontal-line` drawing kind. @since 0.3 @stable */\n drawHorizontalLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"horizontal-line\"]);\n },\n /** Phase-3 `horizontal-ray` drawing kind. @since 0.3 @stable */\n drawHorizontalRay(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"horizontal-ray\"]);\n },\n /** Phase-3 `vertical-line` drawing kind. @since 0.3 @stable */\n drawVerticalLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"vertical-line\"]);\n },\n /** Phase-3 `cross-line` drawing kind. @since 0.3 @stable */\n drawCrossLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"cross-line\"]);\n },\n /** Phase-3 `trend-angle` drawing kind. @since 0.3 @stable */\n drawTrendAngle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"trend-angle\"]);\n },\n /** Phase-3 `rectangle` drawing kind. @since 0.3 @stable */\n drawRectangle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"rectangle\"]);\n },\n /** Phase-3 `rotated-rectangle` drawing kind. @since 0.3 @stable */\n drawRotatedRectangle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"rotated-rectangle\"]);\n },\n /** Phase-3 `triangle` drawing kind. @since 0.3 @stable */\n drawTriangle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"triangle\"]);\n },\n /** Phase-3 `polyline` drawing kind. @since 0.3 @stable */\n drawPolyline(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"polyline\"]);\n },\n /** Phase-3 `circle` drawing kind. @since 0.3 @stable */\n drawCircle(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"circle\"]);\n },\n /** Phase-3 `ellipse` drawing kind. @since 0.3 @stable */\n drawEllipse(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"ellipse\"]);\n },\n /** Phase-3 `path` drawing kind. @since 0.3 @stable */\n drawPath(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"path\"]);\n },\n /** `fill-between` filled-ribbon drawing kind. @since 0.4 @stable */\n drawFillBetween(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fill-between\"]);\n },\n /** Phase-3 `marker` drawing kind. @since 0.3 @stable */\n drawMarker(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"marker\"]);\n },\n /** Phase-3 `arc` drawing kind. @since 0.3 @stable */\n drawArc(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arc\"]);\n },\n /** Phase-3 `curve` drawing kind. @since 0.3 @stable */\n drawCurve(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"curve\"]);\n },\n /** Phase-3 `double-curve` drawing kind. @since 0.3 @stable */\n drawDoubleCurve(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"double-curve\"]);\n },\n /** Phase-3 `pen` drawing kind. @since 0.3 @stable */\n drawPen(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pen\"]);\n },\n /** Phase-3 `highlighter` drawing kind. @since 0.3 @stable */\n drawHighlighter(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"highlighter\"]);\n },\n /** Phase-3 `brush` drawing kind. @since 0.3 @stable */\n drawBrush(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"brush\"]);\n },\n /** Phase-3 `text` drawing kind. @since 0.3 @stable */\n drawText(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"text\"]);\n },\n /** Phase-3 `arrow` drawing kind. @since 0.3 @stable */\n drawArrow(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arrow\"]);\n },\n /** Phase-3 `arrow-marker` drawing kind. @since 0.3 @stable */\n drawArrowMarker(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arrow-marker\"]);\n },\n /** Phase-3 `arrow-mark-up` drawing kind. @since 0.3 @stable */\n drawArrowMarkUp(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arrow-mark-up\"]);\n },\n /** Phase-3 `arrow-mark-down` drawing kind. @since 0.3 @stable */\n drawArrowMarkDown(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arrow-mark-down\"]);\n },\n /** Phase-3 `trend-channel` drawing kind. @since 0.3 @stable */\n drawTrendChannel(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"trend-channel\"]);\n },\n /** Phase-3 `flat-top-bottom` drawing kind. @since 0.3 @stable */\n drawFlatTopBottom(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"flat-top-bottom\"]);\n },\n /** Phase-3 `disjoint-channel` drawing kind. @since 0.3 @stable */\n drawDisjointChannel(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"disjoint-channel\"]);\n },\n /** Phase-3 `regression-trend` drawing kind. @since 0.3 @stable */\n drawRegressionTrend(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"regression-trend\"]);\n },\n /** Phase-3 `fib-retracement` drawing kind. @since 0.3 @stable */\n drawFibRetracement(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-retracement\"]);\n },\n /** Phase-3 `fib-trend-extension` drawing kind. @since 0.3 @stable */\n drawFibTrendExtension(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-trend-extension\"]);\n },\n /** Phase-3 `fib-channel` drawing kind. @since 0.3 @stable */\n drawFibChannel(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-channel\"]);\n },\n /** Phase-3 `fib-time-zone` drawing kind. @since 0.3 @stable */\n drawFibTimeZone(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-time-zone\"]);\n },\n /** Phase-3 `fib-wedge` drawing kind. @since 0.3 @stable */\n drawFibWedge(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-wedge\"]);\n },\n /** Phase-3 `fib-speed-fan` drawing kind. @since 0.3 @stable */\n drawFibSpeedFan(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-speed-fan\"]);\n },\n /** Phase-3 `fib-speed-arcs` drawing kind. @since 0.3 @stable */\n drawFibSpeedArcs(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-speed-arcs\"]);\n },\n /** Phase-3 `fib-spiral` drawing kind. @since 0.3 @stable */\n drawFibSpiral(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-spiral\"]);\n },\n /** Phase-3 `fib-circles` drawing kind. @since 0.3 @stable */\n drawFibCircles(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-circles\"]);\n },\n /** Phase-3 `fib-trend-time` drawing kind. @since 0.3 @stable */\n drawFibTrendTime(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"fib-trend-time\"]);\n },\n /** Phase-3 `gann-box` drawing kind. @since 0.3 @stable */\n drawGannBox(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-box\"]);\n },\n /** Phase-3 `gann-square-fixed` drawing kind. @since 0.3 @stable */\n drawGannSquareFixed(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-square-fixed\"]);\n },\n /** Phase-3 `gann-square` drawing kind. @since 0.3 @stable */\n drawGannSquare(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-square\"]);\n },\n /** Phase-3 `gann-fan` drawing kind. @since 0.3 @stable */\n drawGannFan(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-fan\"]);\n },\n /** Phase-3 `pitchfork` drawing kind. @since 0.3 @stable */\n drawPitchfork(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pitchfork\"]);\n },\n /** Phase-3 `pitchfan` drawing kind. @since 0.3 @stable */\n drawPitchfan(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pitchfan\"]);\n },\n /** Phase-3 `xabcd-pattern` drawing kind. @since 0.3 @stable */\n drawXabcdPattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"xabcd-pattern\"]);\n },\n /** Phase-3 `cypher-pattern` drawing kind. @since 0.3 @stable */\n drawCypherPattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"cypher-pattern\"]);\n },\n /** Phase-3 `head-and-shoulders` drawing kind. @since 0.3 @stable */\n drawHeadAndShoulders(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"head-and-shoulders\"]);\n },\n /** Phase-3 `abcd-pattern` drawing kind. @since 0.3 @stable */\n drawAbcdPattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"abcd-pattern\"]);\n },\n /** Phase-3 `triangle-pattern` drawing kind. @since 0.3 @stable */\n drawTrianglePattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"triangle-pattern\"]);\n },\n /** Phase-3 `three-drives-pattern` drawing kind. @since 0.3 @stable */\n drawThreeDrivesPattern(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"three-drives-pattern\"]);\n },\n /** Phase-3 `elliott-impulse-wave` drawing kind. @since 0.3 @stable */\n drawElliottImpulseWave(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-impulse-wave\"]);\n },\n /** Phase-3 `elliott-correction-wave` drawing kind. @since 0.3 @stable */\n drawElliottCorrectionWave(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-correction-wave\"]);\n },\n /** Phase-3 `elliott-triangle-wave` drawing kind. @since 0.3 @stable */\n drawElliottTriangleWave(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-triangle-wave\"]);\n },\n /** Phase-3 `elliott-double-combo` drawing kind. @since 0.3 @stable */\n drawElliottDoubleCombo(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-double-combo\"]);\n },\n /** Phase-3 `elliott-triple-combo` drawing kind. @since 0.3 @stable */\n drawElliottTripleCombo(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"elliott-triple-combo\"]);\n },\n /** Phase-3 `cyclic-lines` drawing kind. @since 0.3 @stable */\n drawCyclicLines(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"cyclic-lines\"]);\n },\n /** Phase-3 `time-cycles` drawing kind. @since 0.3 @stable */\n drawTimeCycles(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"time-cycles\"]);\n },\n /** Phase-3 `sine-line` drawing kind. @since 0.3 @stable */\n drawSineLine(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"sine-line\"]);\n },\n /** Phase-3 `group` drawing kind. @since 0.3 @stable */\n drawGroup(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"group\"]);\n },\n /** Phase-3 `frame` drawing kind. @since 0.3 @stable */\n drawFrame(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"frame\"]);\n },\n /** Phase-5 `table` drawing kind. @since 0.5 @stable */\n drawTable(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"table\"]);\n },\n\n // ------------------------------------------------------------\n // Phase 3 — category-group builders (13). Each covers the kinds\n // of one §10.2 category. Combine via `union(...)` for adapters\n // that support multiple categories.\n // @since 0.3 @stable\n // ------------------------------------------------------------\n\n /** All 6 line / ray drawing kinds. @since 0.3 @stable */\n allLineDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"line\",\n \"horizontal-line\",\n \"horizontal-ray\",\n \"vertical-line\",\n \"cross-line\",\n \"trend-angle\",\n ]);\n },\n /**\n * All 9 box / shape drawing kinds. @since 0.3 @stable\n *\n * @remarks Capability categories are orthogonal to budget buckets:\n * `polyline`, `path`, and `fill-between` are budgeted under the\n * `polylines` bucket and `marker` under `labels` — not the `boxes`\n * bucket (see `bucketFor` in `@invinite-org/chartlang-core`). An\n * adapter that declares this set must size those buckets accordingly\n * or those four kinds drop with `drawing-budget-exceeded`.\n */\n allBoxDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"rectangle\",\n \"rotated-rectangle\",\n \"triangle\",\n \"polyline\",\n \"circle\",\n \"ellipse\",\n \"path\",\n \"fill-between\",\n \"marker\",\n ]);\n },\n /** All 3 curve drawing kinds. @since 0.3 @stable */\n allCurveDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"arc\", \"curve\", \"double-curve\"]);\n },\n /** All 3 freehand drawing kinds. @since 0.3 @stable */\n allFreehandDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pen\", \"highlighter\", \"brush\"]);\n },\n /** All 5 annotation drawing kinds. @since 0.3 @stable */\n allAnnotationDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"text\",\n \"arrow\",\n \"arrow-marker\",\n \"arrow-mark-up\",\n \"arrow-mark-down\",\n ]);\n },\n /** All 4 channel drawing kinds. @since 0.3 @stable */\n allChannelDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"trend-channel\",\n \"flat-top-bottom\",\n \"disjoint-channel\",\n \"regression-trend\",\n ]);\n },\n /** All 10 fibonacci drawing kinds. @since 0.3 @stable */\n allFibDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"fib-retracement\",\n \"fib-trend-extension\",\n \"fib-channel\",\n \"fib-time-zone\",\n \"fib-wedge\",\n \"fib-speed-fan\",\n \"fib-speed-arcs\",\n \"fib-spiral\",\n \"fib-circles\",\n \"fib-trend-time\",\n ]);\n },\n /** All 4 gann drawing kinds. @since 0.3 @stable */\n allGannDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"gann-box\", \"gann-square-fixed\", \"gann-square\", \"gann-fan\"]);\n },\n /** All 2 pitchfork drawing kinds. @since 0.3 @stable */\n allPitchforkDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"pitchfork\", \"pitchfan\"]);\n },\n /** All 6 harmonic-pattern drawing kinds. @since 0.3 @stable */\n allPatternDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"xabcd-pattern\",\n \"cypher-pattern\",\n \"head-and-shoulders\",\n \"abcd-pattern\",\n \"triangle-pattern\",\n \"three-drives-pattern\",\n ]);\n },\n /** All 5 elliott-wave drawing kinds. @since 0.3 @stable */\n allElliottDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\n \"elliott-impulse-wave\",\n \"elliott-correction-wave\",\n \"elliott-triangle-wave\",\n \"elliott-double-combo\",\n \"elliott-triple-combo\",\n ]);\n },\n /** All 3 cycle drawing kinds. @since 0.3 @stable */\n allCycleDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"cyclic-lines\", \"time-cycles\", \"sine-line\"]);\n },\n /** All 2 container drawing kinds. @since 0.3 @stable */\n allContainerDrawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>([\"group\", \"frame\"]);\n },\n\n /**\n * Every drawing kind that ships in Phase 3 — the union of every\n * category group above. Canvas2d declares this set as its\n * `Capabilities.drawings` (Task 4) so the conformance suite\n * covers all 62 non-table kinds end-to-end.\n *\n * @since 0.3\n * @stable\n */\n allPhase3Drawings(): ReadonlySet<DrawingKind> {\n return new Set<DrawingKind>(DRAWING_KINDS.filter((kind) => kind !== \"table\"));\n },\n};\n"]}
|
package/dist/types.d.ts
CHANGED
|
@@ -458,6 +458,40 @@ export type PlotEmission = {
|
|
|
458
458
|
* void hidden;
|
|
459
459
|
*/
|
|
460
460
|
readonly visible?: boolean;
|
|
461
|
+
/**
|
|
462
|
+
* Presentation-only horizontal display shift in **bars**. Omitted (or
|
|
463
|
+
* `0`) ⇒ no shift, so a no-shift emission is byte-identical to a plot
|
|
464
|
+
* that never carried the field. `+n` shifts the plotted series `n`
|
|
465
|
+
* bars **right** (into the future); `−n` shifts it `n` bars **left**
|
|
466
|
+
* (into the past). It moves only where the series renders — `value`
|
|
467
|
+
* is the unshifted number and alert bars are unaffected. Must be a
|
|
468
|
+
* signed integer; `validateEmission` rejects a non-integer.
|
|
469
|
+
*
|
|
470
|
+
* @since 1.3
|
|
471
|
+
* @stable
|
|
472
|
+
* @example
|
|
473
|
+
* const shifted: PlotEmission["xShift"] = -5;
|
|
474
|
+
* void shifted;
|
|
475
|
+
*/
|
|
476
|
+
readonly xShift?: number;
|
|
477
|
+
/**
|
|
478
|
+
* Presentation-only render-order key (z-index). Omitted (or `0`) ⇒ no
|
|
479
|
+
* explicit order, so the emission is byte-identical to a plot that
|
|
480
|
+
* never carried the field. Higher `z` renders on top; lower (incl.
|
|
481
|
+
* negative) renders behind. Adapters MUST compute a stable global
|
|
482
|
+
* order keyed on `(z ?? 0, groupBand, declarationSeq)` — a plot with
|
|
483
|
+
* `z` below a drawing's `z` renders beneath that drawing, crossing the
|
|
484
|
+
* default plots-under-drawings band. Any finite number (fractional
|
|
485
|
+
* allowed); `validateEmission` rejects NaN / ±Infinity. Affects only
|
|
486
|
+
* stacking — `value`, `xShift`, alerts, and `state.*` are unaffected.
|
|
487
|
+
*
|
|
488
|
+
* @since 1.4
|
|
489
|
+
* @stable
|
|
490
|
+
* @example
|
|
491
|
+
* const behind: PlotEmission["z"] = -1;
|
|
492
|
+
* void behind;
|
|
493
|
+
*/
|
|
494
|
+
readonly z?: number;
|
|
461
495
|
};
|
|
462
496
|
/**
|
|
463
497
|
* An `alert()` emission. `dedupeKey` is computed by the runtime
|
|
@@ -579,6 +613,26 @@ export type DrawingEmission = {
|
|
|
579
613
|
readonly state: DrawingState;
|
|
580
614
|
readonly bar: number;
|
|
581
615
|
readonly time: number;
|
|
616
|
+
/**
|
|
617
|
+
* Presentation-only render-order key (z-index). Omitted (or `0`) ⇒ no
|
|
618
|
+
* explicit order, so the emission is byte-identical to a drawing that
|
|
619
|
+
* never carried the field. Higher `z` renders on top; a **negative**
|
|
620
|
+
* `z` lets a drawing render **below** `z=0` plots, crossing the
|
|
621
|
+
* default plots-under-drawings band. Adapters MUST compute a stable
|
|
622
|
+
* global order keyed on `(z ?? 0, groupBand, declarationSeq)`. Any
|
|
623
|
+
* finite number (fractional allowed); `validateEmission` rejects
|
|
624
|
+
* NaN / ±Infinity. Affects only stacking — `state.*` geometry is
|
|
625
|
+
* unaffected. `z` is part of the latest state under the per-`(handleId,
|
|
626
|
+
* bar)` last-write-wins dedup: a `create` then `update` that changes
|
|
627
|
+
* `z` takes the updated value.
|
|
628
|
+
*
|
|
629
|
+
* @since 1.4
|
|
630
|
+
* @stable
|
|
631
|
+
* @example
|
|
632
|
+
* const beneathPlots: DrawingEmission["z"] = -1;
|
|
633
|
+
* void beneathPlots;
|
|
634
|
+
*/
|
|
635
|
+
readonly z?: number;
|
|
582
636
|
};
|
|
583
637
|
/**
|
|
584
638
|
* Stable machine-readable diagnostic code emitted by the runtime / host
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|