@elaraai/e3-ui 1.0.96 → 1.0.98
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/dist/src/allocation/index.d.ts +258 -7
- package/dist/src/allocation/index.d.ts.map +1 -1
- package/dist/src/allocation/index.js +30 -1
- package/dist/src/allocation/index.js.map +1 -1
- package/dist/src/allocation/types.d.ts +41 -0
- package/dist/src/allocation/types.d.ts.map +1 -1
- package/dist/src/allocation/types.js +35 -0
- package/dist/src/allocation/types.js.map +1 -1
- package/dist/src/bind/data-indexed.d.ts +31 -4
- package/dist/src/bind/data-indexed.d.ts.map +1 -1
- package/dist/src/bind/data-indexed.js +54 -10
- package/dist/src/bind/data-indexed.js.map +1 -1
- package/dist/src/calendar/index.d.ts +540 -14
- package/dist/src/calendar/index.d.ts.map +1 -1
- package/dist/src/calendar/index.js +43 -7
- package/dist/src/calendar/index.js.map +1 -1
- package/dist/src/calendar/paged.d.ts +89 -0
- package/dist/src/calendar/paged.d.ts.map +1 -0
- package/dist/src/calendar/paged.js +148 -0
- package/dist/src/calendar/paged.js.map +1 -0
- package/dist/src/flowchart/payload.d.ts +156 -0
- package/dist/src/flowchart/payload.d.ts.map +1 -1
- package/dist/src/flowchart/window.d.ts +12 -0
- package/dist/src/flowchart/window.d.ts.map +1 -1
- package/dist/src/index.d.ts +11 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +19 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +11 -5
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +28 -7
- package/dist/src/internal.js.map +1 -1
- package/dist/src/plan/builders.d.ts +12 -8
- package/dist/src/plan/builders.d.ts.map +1 -1
- package/dist/src/plan/builders.js +12 -8
- package/dist/src/plan/builders.js.map +1 -1
- package/dist/src/plan/event-rows.d.ts +228 -156
- package/dist/src/plan/event-rows.d.ts.map +1 -1
- package/dist/src/plan/event-rows.js +239 -54
- package/dist/src/plan/event-rows.js.map +1 -1
- package/dist/src/plan/index.d.ts +5 -0
- package/dist/src/plan/index.d.ts.map +1 -1
- package/dist/src/plan/index.js +3 -0
- package/dist/src/plan/index.js.map +1 -1
- package/dist/src/plan/ir.d.ts +70 -0
- package/dist/src/plan/ir.d.ts.map +1 -1
- package/dist/src/plan/ordered-source.d.ts +2038 -1
- package/dist/src/plan/ordered-source.d.ts.map +1 -1
- package/dist/src/plan/ordered-source.js +19 -11
- package/dist/src/plan/ordered-source.js.map +1 -1
- package/dist/src/plan/plan.d.ts +513 -32
- package/dist/src/plan/plan.d.ts.map +1 -1
- package/dist/src/plan/plan.js +119 -32
- package/dist/src/plan/plan.js.map +1 -1
- package/dist/src/plan/root.d.ts +4 -2
- package/dist/src/plan/root.d.ts.map +1 -1
- package/dist/src/plan/root.js +6 -4
- package/dist/src/plan/root.js.map +1 -1
- package/dist/src/plan/series.d.ts +13 -0
- package/dist/src/plan/series.d.ts.map +1 -1
- package/dist/src/plan/series.js +61 -7
- package/dist/src/plan/series.js.map +1 -1
- package/dist/src/plan/types.d.ts +14 -0
- package/dist/src/plan/types.d.ts.map +1 -1
- package/dist/src/plan/types.js +8 -0
- package/dist/src/plan/types.js.map +1 -1
- package/dist/src/roster/index.d.ts +608 -20
- package/dist/src/roster/index.d.ts.map +1 -1
- package/dist/src/roster/index.js +103 -29
- package/dist/src/roster/index.js.map +1 -1
- package/dist/src/roster/library.d.ts +12 -2
- package/dist/src/roster/library.d.ts.map +1 -1
- package/dist/src/roster/library.js +8 -0
- package/dist/src/roster/library.js.map +1 -1
- package/dist/src/roster/lists.d.ts +59 -12
- package/dist/src/roster/lists.d.ts.map +1 -1
- package/dist/src/roster/lists.js +51 -58
- package/dist/src/roster/lists.js.map +1 -1
- package/dist/src/roster/times.d.ts +402 -0
- package/dist/src/roster/times.d.ts.map +1 -1
- package/dist/src/roster/types.d.ts +913 -1
- package/dist/src/roster/types.d.ts.map +1 -1
- package/dist/src/roster/types.js +43 -3
- package/dist/src/roster/types.js.map +1 -1
- package/dist/src/schedule/cell-checks.d.ts +85 -0
- package/dist/src/schedule/cell-checks.d.ts.map +1 -0
- package/dist/src/schedule/cell-checks.js +211 -0
- package/dist/src/schedule/cell-checks.js.map +1 -0
- package/dist/src/schedule/events.d.ts +42 -10
- package/dist/src/schedule/events.d.ts.map +1 -1
- package/dist/src/schedule/events.js +349 -155
- package/dist/src/schedule/events.js.map +1 -1
- package/dist/src/schedule/fields.d.ts +134 -0
- package/dist/src/schedule/fields.d.ts.map +1 -0
- package/dist/src/schedule/fields.js +207 -0
- package/dist/src/schedule/fields.js.map +1 -0
- package/dist/src/schedule/library.d.ts +11 -3
- package/dist/src/schedule/library.d.ts.map +1 -1
- package/dist/src/schedule/library.js +9 -6
- package/dist/src/schedule/library.js.map +1 -1
- package/dist/src/schedule/optimise.d.ts +124 -0
- package/dist/src/schedule/optimise.d.ts.map +1 -0
- package/dist/src/schedule/optimise.js +140 -0
- package/dist/src/schedule/optimise.js.map +1 -0
- package/dist/src/schedule/pages.d.ts +76 -0
- package/dist/src/schedule/pages.d.ts.map +1 -0
- package/dist/src/schedule/pages.js +86 -0
- package/dist/src/schedule/pages.js.map +1 -0
- package/dist/src/schedule/record-window.d.ts +119 -6
- package/dist/src/schedule/record-window.d.ts.map +1 -1
- package/dist/src/schedule/record-window.js +139 -60
- package/dist/src/schedule/record-window.js.map +1 -1
- package/dist/src/schedule/resources.d.ts +8 -4
- package/dist/src/schedule/resources.d.ts.map +1 -1
- package/dist/src/schedule/resources.js +35 -15
- package/dist/src/schedule/resources.js.map +1 -1
- package/dist/src/schedule/session.d.ts +14 -0
- package/dist/src/schedule/session.d.ts.map +1 -1
- package/dist/src/schedule/session.js +29 -17
- package/dist/src/schedule/session.js.map +1 -1
- package/dist/src/schedule/types.d.ts +426 -36
- package/dist/src/schedule/types.d.ts.map +1 -1
- package/dist/src/schedule/types.js +63 -17
- package/dist/src/schedule/types.js.map +1 -1
- package/dist/src/schedule/window.d.ts +30 -9
- package/dist/src/schedule/window.d.ts.map +1 -1
- package/dist/src/schedule/window.js +101 -49
- package/dist/src/schedule/window.js.map +1 -1
- package/dist/src/schematic/index.d.ts +277 -0
- package/dist/src/schematic/index.d.ts.map +1 -0
- package/dist/src/schematic/index.js +206 -0
- package/dist/src/schematic/index.js.map +1 -0
- package/dist/src/schematic/kinds.d.ts +501 -0
- package/dist/src/schematic/kinds.d.ts.map +1 -0
- package/dist/src/schematic/kinds.js +1027 -0
- package/dist/src/schematic/kinds.js.map +1 -0
- package/dist/src/schematic/layers.d.ts +74 -0
- package/dist/src/schematic/layers.d.ts.map +1 -0
- package/dist/src/schematic/layers.js +99 -0
- package/dist/src/schematic/layers.js.map +1 -0
- package/dist/src/schematic/library.d.ts +202 -0
- package/dist/src/schematic/library.d.ts.map +1 -0
- package/dist/src/schematic/library.js +244 -0
- package/dist/src/schematic/library.js.map +1 -0
- package/dist/src/schematic/payload.d.ts +8360 -0
- package/dist/src/schematic/payload.d.ts.map +1 -0
- package/dist/src/schematic/payload.js +446 -0
- package/dist/src/schematic/payload.js.map +1 -0
- package/dist/src/schematic/schematic.d.ts +27 -0
- package/dist/src/schematic/schematic.d.ts.map +1 -0
- package/dist/src/schematic/schematic.js +17 -0
- package/dist/src/schematic/schematic.js.map +1 -0
- package/dist/src/schematic/shapes.d.ts +150 -0
- package/dist/src/schematic/shapes.d.ts.map +1 -0
- package/dist/src/schematic/shapes.js +171 -0
- package/dist/src/schematic/shapes.js.map +1 -0
- package/dist/src/schematic/templates.d.ts +96 -0
- package/dist/src/schematic/templates.d.ts.map +1 -0
- package/dist/src/schematic/templates.js +91 -0
- package/dist/src/schematic/templates.js.map +1 -0
- package/dist/src/schematic/types.d.ts +5766 -0
- package/dist/src/schematic/types.d.ts.map +1 -0
- package/dist/src/schematic/types.js +688 -0
- package/dist/src/schematic/types.js.map +1 -0
- package/dist/src/schematic/window.d.ts +212 -0
- package/dist/src/schematic/window.d.ts.map +1 -0
- package/dist/src/schematic/window.js +337 -0
- package/dist/src/schematic/window.js.map +1 -0
- package/dist/src/sheet/editing-bridge.d.ts +4 -2
- package/dist/src/sheet/editing-bridge.d.ts.map +1 -1
- package/dist/src/sheet/editing-bridge.js +8 -2
- package/dist/src/sheet/editing-bridge.js.map +1 -1
- package/dist/src/sheet/editing-types.d.ts +9 -5
- package/dist/src/sheet/editing-types.d.ts.map +1 -1
- package/dist/src/sheet/editing-types.js +9 -5
- package/dist/src/sheet/editing-types.js.map +1 -1
- package/dist/src/sheet/index.d.ts +18 -8
- package/dist/src/sheet/index.d.ts.map +1 -1
- package/dist/src/sheet/index.js +15 -7
- package/dist/src/sheet/index.js.map +1 -1
- package/dist/src/sheet/optimise.d.ts +69 -0
- package/dist/src/sheet/optimise.d.ts.map +1 -0
- package/dist/src/sheet/optimise.js +81 -0
- package/dist/src/sheet/optimise.js.map +1 -0
- package/dist/src/sheet/registers.d.ts +5 -5
- package/dist/src/sheet/registers.js +5 -5
- package/dist/src/sheet/root.d.ts +2 -0
- package/dist/src/sheet/root.d.ts.map +1 -1
- package/dist/src/sheet/root.js +2 -2
- package/dist/src/sheet/root.js.map +1 -1
- package/dist/src/sheet/sheet.d.ts +753 -573
- package/dist/src/sheet/sheet.d.ts.map +1 -1
- package/dist/src/sheet/sheet.js +45 -13
- package/dist/src/sheet/sheet.js.map +1 -1
- package/dist/src/sheet/types.d.ts +92 -12
- package/dist/src/sheet/types.d.ts.map +1 -1
- package/dist/src/sheet/types.js +4 -8
- package/dist/src/sheet/types.js.map +1 -1
- package/dist/src/utils/keyed-rows.d.ts +41 -0
- package/dist/src/utils/keyed-rows.d.ts.map +1 -0
- package/dist/src/utils/keyed-rows.js +64 -0
- package/dist/src/utils/keyed-rows.js.map +1 -0
- package/dist/src/utils/optimise.d.ts +79 -0
- package/dist/src/utils/optimise.d.ts.map +1 -0
- package/dist/src/utils/optimise.js +46 -0
- package/dist/src/utils/optimise.js.map +1 -0
- package/dist/test/allocation/allocation.examples.d.ts +6 -18
- package/dist/test/allocation/allocation.examples.d.ts.map +1 -1
- package/dist/test/allocation/allocation.examples.js +3 -3
- package/dist/test/allocation/allocation.examples.js.map +1 -1
- package/dist/test/allocation/optimise.examples.d.ts +109 -0
- package/dist/test/allocation/optimise.examples.d.ts.map +1 -0
- package/dist/test/allocation/optimise.examples.js +223 -0
- package/dist/test/allocation/optimise.examples.js.map +1 -0
- package/dist/test/bind/data/data.examples.d.ts +540 -36
- package/dist/test/bind/data/data.examples.d.ts.map +1 -1
- package/dist/test/bind/data/data.examples.js +66 -2
- package/dist/test/bind/data/data.examples.js.map +1 -1
- package/dist/test/bind/record/record.examples.d.ts +1 -3
- package/dist/test/bind/record/record.examples.d.ts.map +1 -1
- package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -1
- package/dist/test/calendar/calendar-records.examples.js +3 -3
- package/dist/test/calendar/calendar-records.examples.js.map +1 -1
- package/dist/test/calendar/calendar-windows.examples.d.ts +9 -0
- package/dist/test/calendar/calendar-windows.examples.d.ts.map +1 -0
- package/dist/test/calendar/calendar-windows.examples.js +111 -0
- package/dist/test/calendar/calendar-windows.examples.js.map +1 -0
- package/dist/test/calendar/calendar.examples.d.ts +7 -21
- package/dist/test/calendar/calendar.examples.d.ts.map +1 -1
- package/dist/test/calendar/calendar.examples.js +7 -7
- package/dist/test/calendar/calendar.examples.js.map +1 -1
- package/dist/test/calendar/optimise.examples.d.ts +132 -0
- package/dist/test/calendar/optimise.examples.d.ts.map +1 -0
- package/dist/test/calendar/optimise.examples.js +75 -0
- package/dist/test/calendar/optimise.examples.js.map +1 -0
- package/dist/test/examples-package.d.ts +46 -10
- package/dist/test/examples-package.d.ts.map +1 -1
- package/dist/test/examples-package.js +142 -32
- package/dist/test/examples-package.js.map +1 -1
- package/dist/test/flowchart/flowchart.examples.d.ts +10 -30
- package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -1
- package/dist/test/plan/optimise.examples.d.ts +207 -0
- package/dist/test/plan/optimise.examples.d.ts.map +1 -0
- package/dist/test/plan/optimise.examples.js +98 -0
- package/dist/test/plan/optimise.examples.js.map +1 -0
- package/dist/test/plan/plan-events.examples.d.ts +8 -24
- package/dist/test/plan/plan-events.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-events.examples.js +3 -3
- package/dist/test/plan/plan-events.examples.js.map +1 -1
- package/dist/test/plan/plan-records.examples.d.ts +200 -19
- package/dist/test/plan/plan-records.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-records.examples.js +125 -28
- package/dist/test/plan/plan-records.examples.js.map +1 -1
- package/dist/test/plan/plan-windows.examples.d.ts +853 -36
- package/dist/test/plan/plan-windows.examples.d.ts.map +1 -1
- package/dist/test/plan/plan-windows.examples.js +166 -29
- package/dist/test/plan/plan-windows.examples.js.map +1 -1
- package/dist/test/plan/plan.examples.d.ts +7 -21
- package/dist/test/plan/plan.examples.d.ts.map +1 -1
- package/dist/test/plan/plan.examples.js +11 -9
- package/dist/test/plan/plan.examples.js.map +1 -1
- package/dist/test/roster/domain.examples.d.ts +804 -0
- package/dist/test/roster/domain.examples.d.ts.map +1 -1
- package/dist/test/roster/domain.examples.js +3 -3
- package/dist/test/roster/domain.examples.js.map +1 -1
- package/dist/test/roster/optimise.examples.d.ts +485 -0
- package/dist/test/roster/optimise.examples.d.ts.map +1 -0
- package/dist/test/roster/optimise.examples.js +155 -0
- package/dist/test/roster/optimise.examples.js.map +1 -0
- package/dist/test/roster/roster-records.examples.d.ts +6 -18
- package/dist/test/roster/roster-records.examples.d.ts.map +1 -1
- package/dist/test/roster/roster-records.examples.js +1 -1
- package/dist/test/roster/roster-records.examples.js.map +1 -1
- package/dist/test/roster/roster.examples.d.ts +3391 -21
- package/dist/test/roster/roster.examples.d.ts.map +1 -1
- package/dist/test/roster/roster.examples.js +54 -7
- package/dist/test/roster/roster.examples.js.map +1 -1
- package/dist/test/roster/warehouse.d.ts +150 -7
- package/dist/test/roster/warehouse.d.ts.map +1 -1
- package/dist/test/roster/warehouse.js +36 -11
- package/dist/test/roster/warehouse.js.map +1 -1
- package/dist/test/schedule/schedule.examples.d.ts +1 -3
- package/dist/test/schedule/schedule.examples.d.ts.map +1 -1
- package/dist/test/schematic/schematic-records.examples.d.ts +444 -0
- package/dist/test/schematic/schematic-records.examples.d.ts.map +1 -0
- package/dist/test/schematic/schematic-records.examples.js +205 -0
- package/dist/test/schematic/schematic-records.examples.js.map +1 -0
- package/dist/test/schematic/schematic.examples.d.ts +2289 -0
- package/dist/test/schematic/schematic.examples.d.ts.map +1 -0
- package/dist/test/schematic/schematic.examples.js +453 -0
- package/dist/test/schematic/schematic.examples.js.map +1 -0
- package/dist/test/sheet/optimise.examples.d.ts +177 -0
- package/dist/test/sheet/optimise.examples.d.ts.map +1 -0
- package/dist/test/sheet/optimise.examples.js +75 -0
- package/dist/test/sheet/optimise.examples.js.map +1 -0
- package/dist/test/sheet/sheet-records.examples.d.ts +95 -204
- package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -1
- package/dist/test/sheet/sheet-records.examples.js +42 -17
- package/dist/test/sheet/sheet-records.examples.js.map +1 -1
- package/dist/test/sheet/sheet.examples.d.ts +17 -33
- package/dist/test/sheet/sheet.examples.d.ts.map +1 -1
- package/dist/test/sheet/sheet.examples.js +18 -15
- package/dist/test/sheet/sheet.examples.js.map +1 -1
- package/package.json +11 -11
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kinds.js","sourceRoot":"","sources":["../../../src/schematic/kinds.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* `Schematic.layers` (#1401, `Schematic Builder Spec.md` §8, D36): the layers
|
|
7
|
+
* a Schematic's entities are on, read from the app's own record as the
|
|
8
|
+
* Roster's lists are (`Roster.groups(teams.read(), { label, order })`) — a
|
|
9
|
+
* `Dict` keyed by String, usually a record's `read()`, through accessors none
|
|
10
|
+
* of which writes it. Each accessor is reified once and called per row, held
|
|
11
|
+
* to the type it returns; one returning another type is refused, naming the
|
|
12
|
+
* accessor and what it returns.
|
|
13
|
+
*
|
|
14
|
+
* Each layer's key is its record's key, which an entity's `layer` field names.
|
|
15
|
+
* The layers come in their `order`, lowest first, then in key order; with no
|
|
16
|
+
* `order`, in key order. `visible`, `locked` and `opacity` are the author's
|
|
17
|
+
* defaults, which the viewer's choices in the Layers tab override.
|
|
18
|
+
*
|
|
19
|
+
* @packageDocumentation
|
|
20
|
+
*/
|
|
21
|
+
import { BooleanType, FloatType, IntegerType, OptionType, StringType, type ArrayType, type DictType, type EastType, type ExprType, type SubtypeExprOrValue } from "@elaraai/east";
|
|
22
|
+
import { SCHEMATIC_DEF } from "./kinds.js";
|
|
23
|
+
import { SchematicLayerType, SchematicToneType } from "./types.js";
|
|
24
|
+
/** One of the layers' accessors, over a row of the app's and its key. */
|
|
25
|
+
type Accessor<R extends EastType, T extends EastType> = (row: ExprType<R>, key: ExprType<StringType>) => SubtypeExprOrValue<T>;
|
|
26
|
+
/**
|
|
27
|
+
* Accessors adapting the app's rows to the Schematic's layers.
|
|
28
|
+
*
|
|
29
|
+
* @typeParam R - The app's row type
|
|
30
|
+
*/
|
|
31
|
+
export interface SchematicLayersConfig<R extends EastType> {
|
|
32
|
+
/** Its name, in the Layers tab. */
|
|
33
|
+
label: Accessor<R, StringType>;
|
|
34
|
+
/** Where it shows among the layers, lowest first; layers of one order show in key order. */
|
|
35
|
+
order?: Accessor<R, IntegerType>;
|
|
36
|
+
/** Its swatch's tone. */
|
|
37
|
+
tone?: Accessor<R, OptionType<typeof SchematicToneType>>;
|
|
38
|
+
/** Its swatch's colour: a theme colour token (`status.warn`), over its tone. */
|
|
39
|
+
color?: Accessor<R, OptionType<StringType>>;
|
|
40
|
+
/** Whether it shows at first: the author's default, `true` by default. */
|
|
41
|
+
visible?: Accessor<R, BooleanType>;
|
|
42
|
+
/** Whether it is locked at first, its entities never selecting: the author's default, `false` by default. */
|
|
43
|
+
locked?: Accessor<R, BooleanType>;
|
|
44
|
+
/** Its items' dim, from 0 to 1: `1` by default. */
|
|
45
|
+
opacity?: Accessor<R, FloatType>;
|
|
46
|
+
}
|
|
47
|
+
/** The layers, declared: what the Schematic's `layers` takes. */
|
|
48
|
+
export interface SchematicLayers {
|
|
49
|
+
/** What it is. */
|
|
50
|
+
readonly [SCHEMATIC_DEF]: "layers";
|
|
51
|
+
/** The layers, in their order. */
|
|
52
|
+
readonly rows: ExprType<ArrayType<typeof SchematicLayerType>>;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Reads the app's rows as the Schematic's layers (see the module docs).
|
|
56
|
+
*
|
|
57
|
+
* @typeParam R - The app's row type
|
|
58
|
+
* @param rows - The layers by String key, usually `Data.bind(record).read()`
|
|
59
|
+
* @param config - The label accessor, and optional order, tone, colour and author defaults
|
|
60
|
+
* @returns The layers, declared, for the Schematic's `layers`
|
|
61
|
+
* @throws {Error} When the rows are not a Dict keyed by String, `label` is missing, or an accessor is no function or returns another type than it takes, naming it and what it returns
|
|
62
|
+
*/
|
|
63
|
+
export declare function schematicLayers<R extends EastType>(rows: ExprType<DictType<StringType, R>>, config: SchematicLayersConfig<R>): SchematicLayers;
|
|
64
|
+
/**
|
|
65
|
+
* Whether a value is `Schematic.layers`' declaration: what the Schematic's
|
|
66
|
+
* `layers` checks before it takes one.
|
|
67
|
+
*
|
|
68
|
+
* @param value - What the app passed
|
|
69
|
+
* @returns Whether it is the layers, declared
|
|
70
|
+
* @internal
|
|
71
|
+
*/
|
|
72
|
+
export declare function isSchematicLayers(value: unknown): value is SchematicLayers;
|
|
73
|
+
export {};
|
|
74
|
+
//# sourceMappingURL=layers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../../src/schematic/layers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACH,WAAW,EAAQ,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EACjE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAqB,KAAK,kBAAkB,EAC1G,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEnE,yEAAyE;AACzE,KAAK,QAAQ,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,QAAQ,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC;AAE/H;;;;GAIG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,QAAQ;IACrD,mCAAmC;IACnC,KAAK,EAAE,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAC/B,4FAA4F;IAC5F,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACjC,yBAAyB;IACzB,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC;IACzD,gFAAgF;IAChF,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5C,0EAA0E;IAC1E,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACnC,6GAA6G;IAC7G,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAClC,mDAAmD;IACnD,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;CACpC;AAED,iEAAiE;AACjE,MAAM,WAAW,eAAe;IAC5B,kBAAkB;IAClB,QAAQ,CAAC,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACnC,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC;CACjE;AAwBD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,eAAe,CA8B9I;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* `Schematic.layers` (#1401, `Schematic Builder Spec.md` §8, D36): the layers
|
|
7
|
+
* a Schematic's entities are on, read from the app's own record as the
|
|
8
|
+
* Roster's lists are (`Roster.groups(teams.read(), { label, order })`) — a
|
|
9
|
+
* `Dict` keyed by String, usually a record's `read()`, through accessors none
|
|
10
|
+
* of which writes it. Each accessor is reified once and called per row, held
|
|
11
|
+
* to the type it returns; one returning another type is refused, naming the
|
|
12
|
+
* accessor and what it returns.
|
|
13
|
+
*
|
|
14
|
+
* Each layer's key is its record's key, which an entity's `layer` field names.
|
|
15
|
+
* The layers come in their `order`, lowest first, then in key order; with no
|
|
16
|
+
* `order`, in key order. `visible`, `locked` and `opacity` are the author's
|
|
17
|
+
* defaults, which the viewer's choices in the Layers tab override.
|
|
18
|
+
*
|
|
19
|
+
* @packageDocumentation
|
|
20
|
+
*/
|
|
21
|
+
import { BooleanType, East, FloatType, IntegerType, OptionType, StringType, none, some, } from "@elaraai/east";
|
|
22
|
+
import { scheduleAccessor } from "../schedule/accessor.js";
|
|
23
|
+
import { keyedRows, orderedRows } from "../utils/keyed-rows.js";
|
|
24
|
+
import { SCHEMATIC_DEF } from "./kinds.js";
|
|
25
|
+
import { SchematicLayerType, SchematicToneType } from "./types.js";
|
|
26
|
+
/** The layers' declaration, as a refusal names it. */
|
|
27
|
+
const DECLARATION = "Schematic.layers(rows, { label, order?, tone?, color?, visible?, locked?, opacity? })";
|
|
28
|
+
/**
|
|
29
|
+
* An accessor reified over the layers' rows, held to the type it returns,
|
|
30
|
+
* refused in the layers' words.
|
|
31
|
+
*
|
|
32
|
+
* @param rowType - The app's row type
|
|
33
|
+
* @param prop - The accessor's name
|
|
34
|
+
* @param out - The type it returns
|
|
35
|
+
* @param what - What it returns, as a refusal says it
|
|
36
|
+
* @param fn - The author's accessor
|
|
37
|
+
* @returns The accessor, an East function `(row, key) => T`; `undefined` when not given
|
|
38
|
+
* @throws {Error} When it is no function, or returns another type, naming it and what it returns
|
|
39
|
+
*/
|
|
40
|
+
function accessorOf(rowType, prop, out, what, fn) {
|
|
41
|
+
if (fn === undefined)
|
|
42
|
+
return undefined;
|
|
43
|
+
if (typeof fn !== "function")
|
|
44
|
+
throw new Error(`Schematic.layers: \`${prop}\` is an accessor, (row, key) => ${what}`);
|
|
45
|
+
return scheduleAccessor(rowType, StringType, out, fn, (returns) => `Schematic.layers: \`${prop}\` returns ${what} — and this one returns ${returns}`);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Reads the app's rows as the Schematic's layers (see the module docs).
|
|
49
|
+
*
|
|
50
|
+
* @typeParam R - The app's row type
|
|
51
|
+
* @param rows - The layers by String key, usually `Data.bind(record).read()`
|
|
52
|
+
* @param config - The label accessor, and optional order, tone, colour and author defaults
|
|
53
|
+
* @returns The layers, declared, for the Schematic's `layers`
|
|
54
|
+
* @throws {Error} When the rows are not a Dict keyed by String, `label` is missing, or an accessor is no function or returns another type than it takes, naming it and what it returns
|
|
55
|
+
*/
|
|
56
|
+
export function schematicLayers(rows, config) {
|
|
57
|
+
const where = "Schematic.layers";
|
|
58
|
+
const { rows: held, rowType } = keyedRows(where, "layers", rows);
|
|
59
|
+
const c = (config ?? {});
|
|
60
|
+
if (typeof c.label !== "function")
|
|
61
|
+
throw new Error(`${where}: \`label\` is an accessor giving each layer's name — ${DECLARATION}`);
|
|
62
|
+
const label = accessorOf(rowType, "label", StringType, "a String, a layer's name", c.label);
|
|
63
|
+
const order = accessorOf(rowType, "order", IntegerType, "an Integer, where a layer shows", c.order);
|
|
64
|
+
const tone = accessorOf(rowType, "tone", OptionType(SchematicToneType), "an Option of a Schematic.Types.Tone", c.tone);
|
|
65
|
+
const color = accessorOf(rowType, "color", OptionType(StringType), "an Option of a String, a theme colour token", c.color);
|
|
66
|
+
const visible = accessorOf(rowType, "visible", BooleanType, "a Boolean, whether a layer shows at first", c.visible);
|
|
67
|
+
const locked = accessorOf(rowType, "locked", BooleanType, "a Boolean, whether a layer is locked at first", c.locked);
|
|
68
|
+
const opacity = accessorOf(rowType, "opacity", FloatType, "a Float, its items' dim from 0 to 1", c.opacity);
|
|
69
|
+
const item = East.function([rowType, StringType], SchematicLayerType, ($, row, key) => {
|
|
70
|
+
const labelOf = $.const(label);
|
|
71
|
+
const toneOf = tone === undefined ? undefined : $.const(tone);
|
|
72
|
+
const colorOf = color === undefined ? undefined : $.const(color);
|
|
73
|
+
const visibleOf = visible === undefined ? undefined : $.const(visible);
|
|
74
|
+
const lockedOf = locked === undefined ? undefined : $.const(locked);
|
|
75
|
+
const opacityOf = opacity === undefined ? undefined : $.const(opacity);
|
|
76
|
+
return {
|
|
77
|
+
key,
|
|
78
|
+
label: labelOf(row, key),
|
|
79
|
+
visible: visibleOf === undefined ? none : some(visibleOf(row, key)),
|
|
80
|
+
locked: lockedOf === undefined ? none : some(lockedOf(row, key)),
|
|
81
|
+
opacity: opacityOf === undefined ? none : some(opacityOf(row, key)),
|
|
82
|
+
tone: toneOf === undefined ? none : toneOf(row, key),
|
|
83
|
+
color: colorOf === undefined ? none : colorOf(row, key),
|
|
84
|
+
};
|
|
85
|
+
});
|
|
86
|
+
return { [SCHEMATIC_DEF]: "layers", rows: orderedRows(held, rowType, SchematicLayerType, item, order) };
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Whether a value is `Schematic.layers`' declaration: what the Schematic's
|
|
90
|
+
* `layers` checks before it takes one.
|
|
91
|
+
*
|
|
92
|
+
* @param value - What the app passed
|
|
93
|
+
* @returns Whether it is the layers, declared
|
|
94
|
+
* @internal
|
|
95
|
+
*/
|
|
96
|
+
export function isSchematicLayers(value) {
|
|
97
|
+
return typeof value === "object" && value !== null && SCHEMATIC_DEF in value && value[SCHEMATIC_DEF] === "layers";
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=layers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layers.js","sourceRoot":"","sources":["../../../src/schematic/layers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* `Schematic.library` (#1386, #1401, `Schematic Builder Spec.md` §8): the
|
|
7
|
+
* library pane's tabs, which `library` lists in order, and their wire, which
|
|
8
|
+
* the renderer draws (#1389). Like the Calendar's, each covers every kind
|
|
9
|
+
* (D33).
|
|
10
|
+
*
|
|
11
|
+
* - `Schematic.library.templates()`: every kind's templates (§4.6), each
|
|
12
|
+
* kind's under its name, then grouped by their `group`, each card a drag
|
|
13
|
+
* source. Each kind's cards follow their templates' source of the slice.
|
|
14
|
+
* - `Schematic.library.backlog()`: every item kind's rows with no position,
|
|
15
|
+
* each kind's under its name, each a drag source: the Backlog tab, as the
|
|
16
|
+
* Calendar's is.
|
|
17
|
+
* - `Schematic.library.index()`: the zones, nested by containment, each
|
|
18
|
+
* opened listing the items inside it.
|
|
19
|
+
* - `Schematic.library.layers()`: each layer, with Isolate, Lock and Show or
|
|
20
|
+
* Hide: the viewer's view settings.
|
|
21
|
+
* - `Schematic.library.tab(rows, { … })`: the author's own cards, as
|
|
22
|
+
* `Plan.library.tab` takes them. A card's `drop` is a `Schematic.patch(R, …)`
|
|
23
|
+
* whose row type names the kind it lands on.
|
|
24
|
+
*
|
|
25
|
+
* Left out, or empty, the Schematic has no library pane.
|
|
26
|
+
*
|
|
27
|
+
* @packageDocumentation
|
|
28
|
+
*/
|
|
29
|
+
import { ArrayType, NullType, VariantType, type DictType, type EastType, type ExprType, type StructType, type SubtypeExprOrValue } from "@elaraai/east";
|
|
30
|
+
import { type ScheduleLibraryTabConfig } from "../schedule/library.js";
|
|
31
|
+
export { ScheduleLibraryCardType as SchematicLibraryCardType, type ScheduleLibraryTabConfig as SchematicLibraryTabConfig } from "../schedule/library.js";
|
|
32
|
+
/**
|
|
33
|
+
* One tab of the library pane on the wire, in the order `library` lists them.
|
|
34
|
+
*
|
|
35
|
+
* @property templates - Every kind's templates
|
|
36
|
+
* @property backlog - Every item kind's rows with no position
|
|
37
|
+
* @property index - The zones, nested by containment
|
|
38
|
+
* @property layers - The layers
|
|
39
|
+
* @property tab - The author's own: its name, its icon, the kind its cards land on, and its cards
|
|
40
|
+
*/
|
|
41
|
+
export declare const SchematicLibraryTabType: VariantType<{
|
|
42
|
+
readonly templates: NullType;
|
|
43
|
+
readonly backlog: NullType;
|
|
44
|
+
readonly index: NullType;
|
|
45
|
+
readonly layers: NullType;
|
|
46
|
+
readonly tab: StructType<{
|
|
47
|
+
readonly name: import("@elaraai/east").StringType;
|
|
48
|
+
readonly icon: import("@elaraai/east").OptionType<import("@elaraai/east").StringType>;
|
|
49
|
+
readonly drop: import("@elaraai/east").OptionType<import("@elaraai/east").StringType>;
|
|
50
|
+
readonly cards: ArrayType<StructType<{
|
|
51
|
+
readonly key: import("@elaraai/east").StringType;
|
|
52
|
+
readonly label: import("@elaraai/east").StringType;
|
|
53
|
+
readonly meta: import("@elaraai/east").OptionType<import("@elaraai/east").StringType>;
|
|
54
|
+
readonly group: import("@elaraai/east").OptionType<import("@elaraai/east").StringType>;
|
|
55
|
+
readonly sets: ArrayType<StructType<{
|
|
56
|
+
readonly path: ArrayType<import("@elaraai/east").StringType>;
|
|
57
|
+
readonly value: import("@elaraai/east").BlobType;
|
|
58
|
+
}>>;
|
|
59
|
+
}>>;
|
|
60
|
+
readonly source: import("@elaraai/east").OptionType<import("@elaraai/east").StringType>;
|
|
61
|
+
}>;
|
|
62
|
+
}>;
|
|
63
|
+
/** Type representing {@link SchematicLibraryTabType}. */
|
|
64
|
+
export type SchematicLibraryTabType = typeof SchematicLibraryTabType;
|
|
65
|
+
/** One tab of the library pane: what each `Schematic.library.*` call returns, and `library` lists. */
|
|
66
|
+
export type SchematicLibraryTab = {
|
|
67
|
+
readonly kind: "templates";
|
|
68
|
+
} | {
|
|
69
|
+
readonly kind: "backlog";
|
|
70
|
+
} | {
|
|
71
|
+
readonly kind: "index";
|
|
72
|
+
} | {
|
|
73
|
+
readonly kind: "layers";
|
|
74
|
+
} | {
|
|
75
|
+
readonly kind: "tab";
|
|
76
|
+
readonly rows: unknown;
|
|
77
|
+
readonly config: ScheduleLibraryTabConfig<EastType, EastType>;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* The library's Templates tab (§8, D33): every kind's templates, each kind's
|
|
81
|
+
* under its name, then grouped by their `group`, each card a drag source.
|
|
82
|
+
* Dropped on the canvas, an item template adds an item at the drop point;
|
|
83
|
+
* dropped on a link, a link template retypes it. Each kind's cards follow
|
|
84
|
+
* their templates' source of the slice, counting what they show.
|
|
85
|
+
*
|
|
86
|
+
* @param given - Nothing: a slot given, as the earlier form took, is refused
|
|
87
|
+
* @returns The tab
|
|
88
|
+
* @throws {Error} When given a slot, naming the form to use
|
|
89
|
+
*/
|
|
90
|
+
export declare function libraryTemplates(...given: readonly never[]): SchematicLibraryTab;
|
|
91
|
+
/**
|
|
92
|
+
* The library's Backlog tab (§8, D33): every item kind's rows with no
|
|
93
|
+
* position, each kind's under its name, each a drag source a drop places, as
|
|
94
|
+
* the Calendar's Backlog is. An item kind whose `x` and `y` are Options of
|
|
95
|
+
* Float has a backlog.
|
|
96
|
+
*
|
|
97
|
+
* @param given - Nothing: a slot given is refused
|
|
98
|
+
* @returns The tab
|
|
99
|
+
* @throws {Error} When given a slot, naming the form to use
|
|
100
|
+
*/
|
|
101
|
+
export declare function libraryBacklog(...given: readonly never[]): SchematicLibraryTab;
|
|
102
|
+
/**
|
|
103
|
+
* The library's Index tab (§8): the zones, nested by containment. The zone the
|
|
104
|
+
* viewport is in is marked, a click flies to a zone and selects it, and an
|
|
105
|
+
* opened zone lists the items inside it. Hatched zones hold no items.
|
|
106
|
+
*
|
|
107
|
+
* @returns The tab
|
|
108
|
+
*/
|
|
109
|
+
export declare function libraryIndex(): SchematicLibraryTab;
|
|
110
|
+
/**
|
|
111
|
+
* The library's Layers tab (§8): each layer's swatch, label and count, with
|
|
112
|
+
* Isolate, Lock and Show or Hide, and Show all. The viewer's choices are kept
|
|
113
|
+
* for them; a locked layer's entities never select, and a hidden layer's never
|
|
114
|
+
* draw.
|
|
115
|
+
*
|
|
116
|
+
* @returns The tab
|
|
117
|
+
*/
|
|
118
|
+
export declare function libraryLayers(): SchematicLibraryTab;
|
|
119
|
+
/**
|
|
120
|
+
* A tab of the author's own cards (§8): one card per row, its label and meta,
|
|
121
|
+
* grouped by its `group`, searched by its key, label and meta. Given a `drop`
|
|
122
|
+
* — `Schematic.patch(R, { … })` over one kind's row type, which names that
|
|
123
|
+
* kind — a card dropped on an entity of that kind sets the fields the patch
|
|
124
|
+
* sets. Naming a `source` of the slice, the tab follows it.
|
|
125
|
+
*
|
|
126
|
+
* @typeParam K - The rows' key type
|
|
127
|
+
* @typeParam R - Their row type
|
|
128
|
+
* @typeParam P - The patch `drop` returns
|
|
129
|
+
* @param rows - The rows: a `Dict<K, R>`, usually a record's `read()`
|
|
130
|
+
* @param config - The tab's name and icon, and the accessors over a row and its key
|
|
131
|
+
* @returns The tab
|
|
132
|
+
*/
|
|
133
|
+
export declare function libraryTab<K extends EastType, R extends EastType, P extends EastType = EastType>(rows: SubtypeExprOrValue<DictType<K, R>>, config: ScheduleLibraryTabConfig<K, R, P>): SchematicLibraryTab;
|
|
134
|
+
/**
|
|
135
|
+
* The library's tabs, each a factory `library` lists: `Schematic.library`.
|
|
136
|
+
*/
|
|
137
|
+
export declare const SchematicLibraryFactories: {
|
|
138
|
+
/** Every kind's templates ({@link libraryTemplates}). */
|
|
139
|
+
readonly templates: typeof libraryTemplates;
|
|
140
|
+
/** Every item kind's rows with no position ({@link libraryBacklog}). */
|
|
141
|
+
readonly backlog: typeof libraryBacklog;
|
|
142
|
+
/** @deprecated Removed (#1401): every item kind's rows with no position are `Schematic.library.backlog()`. */
|
|
143
|
+
readonly unplaced: (...args: never[]) => never;
|
|
144
|
+
/** The zones, nested by containment ({@link libraryIndex}). */
|
|
145
|
+
readonly index: typeof libraryIndex;
|
|
146
|
+
/** The layers ({@link libraryLayers}). */
|
|
147
|
+
readonly layers: typeof libraryLayers;
|
|
148
|
+
/** The author's own cards ({@link libraryTab}). */
|
|
149
|
+
readonly tab: typeof libraryTab;
|
|
150
|
+
};
|
|
151
|
+
/** The type of `Schematic.library`. */
|
|
152
|
+
export type SchematicLibrary = typeof SchematicLibraryFactories;
|
|
153
|
+
/** One of the Schematic's kinds, as its library is built against it. */
|
|
154
|
+
export interface SchematicLibraryKind {
|
|
155
|
+
/** Its slot. */
|
|
156
|
+
readonly slot: string;
|
|
157
|
+
/** Its sort: an item, zone, link or net kind. */
|
|
158
|
+
readonly sort: "items" | "zones" | "links" | "nets";
|
|
159
|
+
/** Its record's row type. */
|
|
160
|
+
readonly rowType: StructType;
|
|
161
|
+
/** Whether it has templates. */
|
|
162
|
+
readonly templates: boolean;
|
|
163
|
+
/** Whether it has a backlog: an item kind whose `x` and `y` are Options. */
|
|
164
|
+
readonly backlog: boolean;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* What a Schematic's library is built against.
|
|
168
|
+
*
|
|
169
|
+
* @internal
|
|
170
|
+
*/
|
|
171
|
+
export interface SchematicLibraryContext {
|
|
172
|
+
/** Its kinds, in order: its items', its zones', its links' and its nets'. */
|
|
173
|
+
readonly kinds: readonly SchematicLibraryKind[];
|
|
174
|
+
/** Whether it declares its layers (`Schematic.layers`). */
|
|
175
|
+
readonly layers: boolean;
|
|
176
|
+
/** The slice's sources, which an author's tab's `source` must be one of. */
|
|
177
|
+
readonly sources: readonly string[];
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Builds the library pane on the wire (§8): its tabs in the order `library`
|
|
181
|
+
* lists them; none when it is left out.
|
|
182
|
+
*
|
|
183
|
+
* @param tabs - The tabs, each a `Schematic.library.*` call
|
|
184
|
+
* @param ctx - What the library is built against
|
|
185
|
+
* @returns The tabs on the wire
|
|
186
|
+
* @throws {Error} Naming the tab: a `library` that is no list of `Schematic.library.*` calls; a tab listed twice (an
|
|
187
|
+
* author's tab by its name); the Templates tab when no kind has templates; the Backlog tab when no item kind's `x` and
|
|
188
|
+
* `y` are Options; the Index tab with no zone kinds; the Layers tab with no layers; and each of an author's tab's
|
|
189
|
+
* refusals
|
|
190
|
+
* @internal
|
|
191
|
+
*/
|
|
192
|
+
export declare function buildSchematicLibrary(tabs: unknown, ctx: SchematicLibraryContext): ExprType<ArrayType<SchematicLibraryTabType>>;
|
|
193
|
+
/**
|
|
194
|
+
* The sources of the slice the author's tabs name: each must be one of the
|
|
195
|
+
* slice's, and is one it may hold.
|
|
196
|
+
*
|
|
197
|
+
* @param tabs - The Schematic's `library`
|
|
198
|
+
* @returns The sources its tabs name, in order
|
|
199
|
+
* @internal
|
|
200
|
+
*/
|
|
201
|
+
export declare function schematicTabSources(tabs: unknown): string[];
|
|
202
|
+
//# sourceMappingURL=library.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../../src/schematic/library.ts"],"names":[],"mappings":"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"}
|