@vessel-dsp/core 0.6.0 → 0.6.1
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/editor/commands.d.ts +48 -0
- package/dist/editor/commands.d.ts.map +1 -0
- package/{src/editor/commands.ts → dist/editor/commands.js} +44 -91
- package/dist/editor/commands.js.map +1 -0
- package/dist/editor/factory.d.ts +10 -0
- package/dist/editor/factory.d.ts.map +1 -0
- package/{src/editor/factory.ts → dist/editor/factory.js} +11 -27
- package/dist/editor/factory.js.map +1 -0
- package/dist/editor/history.d.ts +29 -0
- package/dist/editor/history.d.ts.map +1 -0
- package/{src/editor/history.ts → dist/editor/history.js} +12 -42
- package/dist/editor/history.js.map +1 -0
- package/{src/editor/index.ts → dist/editor/index.d.ts} +1 -3
- package/dist/editor/index.d.ts.map +1 -0
- package/dist/editor/index.js +5 -0
- package/dist/editor/index.js.map +1 -0
- package/dist/editor/layout.d.ts +8 -0
- package/dist/editor/layout.d.ts.map +1 -0
- package/{src/editor/layout.ts → dist/editor/layout.js} +36 -90
- package/dist/editor/layout.js.map +1 -0
- package/dist/formats/circuit-json/serializer.d.ts +86 -0
- package/dist/formats/circuit-json/serializer.d.ts.map +1 -0
- package/{src/formats/circuit-json/serializer.ts → dist/formats/circuit-json/serializer.js} +114 -414
- package/dist/formats/circuit-json/serializer.js.map +1 -0
- package/dist/formats/document.d.ts +64 -0
- package/dist/formats/document.d.ts.map +1 -0
- package/{src/formats/document.ts → dist/formats/document.js} +43 -159
- package/dist/formats/document.js.map +1 -0
- package/dist/formats/interchange/parser.d.ts +3 -0
- package/dist/formats/interchange/parser.d.ts.map +1 -0
- package/{src/formats/interchange/parser.ts → dist/formats/interchange/parser.js} +157 -463
- package/dist/formats/interchange/parser.js.map +1 -0
- package/dist/formats/interchange/serializer.d.ts +9 -0
- package/dist/formats/interchange/serializer.d.ts.map +1 -0
- package/{src/formats/interchange/serializer.ts → dist/formats/interchange/serializer.js} +84 -186
- package/dist/formats/interchange/serializer.js.map +1 -0
- package/dist/formats/ltspice/catalog.d.ts +19 -0
- package/dist/formats/ltspice/catalog.d.ts.map +1 -0
- package/{src/formats/ltspice/catalog.ts → dist/formats/ltspice/catalog.js} +18 -52
- package/dist/formats/ltspice/catalog.js.map +1 -0
- package/dist/formats/ltspice/encoding.d.ts +2 -0
- package/dist/formats/ltspice/encoding.d.ts.map +1 -0
- package/{src/formats/ltspice/encoding.ts → dist/formats/ltspice/encoding.js} +17 -41
- package/dist/formats/ltspice/encoding.js.map +1 -0
- package/dist/formats/ltspice/parser.d.ts +3 -0
- package/dist/formats/ltspice/parser.d.ts.map +1 -0
- package/{src/formats/ltspice/parser.ts → dist/formats/ltspice/parser.js} +39 -141
- package/dist/formats/ltspice/parser.js.map +1 -0
- package/dist/formats/ltspice/serializer.d.ts +7 -0
- package/dist/formats/ltspice/serializer.d.ts.map +1 -0
- package/{src/formats/ltspice/serializer.ts → dist/formats/ltspice/serializer.js} +18 -45
- package/dist/formats/ltspice/serializer.js.map +1 -0
- package/dist/formats/schx/catalog.d.ts +19 -0
- package/dist/formats/schx/catalog.d.ts.map +1 -0
- package/{src/formats/schx/catalog.ts → dist/formats/schx/catalog.js} +48 -101
- package/dist/formats/schx/catalog.js.map +1 -0
- package/dist/formats/schx/parser.d.ts +3 -0
- package/dist/formats/schx/parser.d.ts.map +1 -0
- package/{src/formats/schx/parser.ts → dist/formats/schx/parser.js} +31 -86
- package/dist/formats/schx/parser.js.map +1 -0
- package/dist/formats/schx/runtime-descriptors.d.ts +3 -0
- package/dist/formats/schx/runtime-descriptors.d.ts.map +1 -0
- package/{src/formats/schx/runtime-descriptors.ts → dist/formats/schx/runtime-descriptors.js} +36 -123
- package/dist/formats/schx/runtime-descriptors.js.map +1 -0
- package/dist/formats/schx/serializer.d.ts +5 -0
- package/dist/formats/schx/serializer.d.ts.map +1 -0
- package/{src/formats/schx/serializer.ts → dist/formats/schx/serializer.js} +17 -42
- package/dist/formats/schx/serializer.js.map +1 -0
- package/dist/formats/schx/transforms.d.ts +4 -0
- package/dist/formats/schx/transforms.d.ts.map +1 -0
- package/{src/formats/schx/transforms.ts → dist/formats/schx/transforms.js} +6 -10
- package/dist/formats/schx/transforms.js.map +1 -0
- package/dist/formats/spice/parser.d.ts +3 -0
- package/dist/formats/spice/parser.d.ts.map +1 -0
- package/{src/formats/spice/parser.ts → dist/formats/spice/parser.js} +50 -96
- package/dist/formats/spice/parser.js.map +1 -0
- package/dist/formats/spice/serializer.d.ts +3 -0
- package/dist/formats/spice/serializer.d.ts.map +1 -0
- package/{src/formats/spice/serializer.ts → dist/formats/spice/serializer.js} +8 -13
- package/dist/formats/spice/serializer.js.map +1 -0
- package/dist/index.d.ts +47 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/model/connectivity.d.ts +16 -0
- package/dist/model/connectivity.d.ts.map +1 -0
- package/{src/model/connectivity.ts → dist/model/connectivity.js} +28 -63
- package/dist/model/connectivity.js.map +1 -0
- package/dist/model/netlist.d.ts +24 -0
- package/dist/model/netlist.d.ts.map +1 -0
- package/{src/model/netlist.ts → dist/model/netlist.js} +42 -110
- package/dist/model/netlist.js.map +1 -0
- package/dist/model/properties.d.ts +9 -0
- package/dist/model/properties.d.ts.map +1 -0
- package/{src/model/properties.ts → dist/model/properties.js} +10 -18
- package/dist/model/properties.js.map +1 -0
- package/dist/model/quantity.d.ts +3 -0
- package/dist/model/quantity.d.ts.map +1 -0
- package/{src/model/quantity.ts → dist/model/quantity.js} +7 -30
- package/dist/model/quantity.js.map +1 -0
- package/{src/model/types.ts → dist/model/types.d.ts} +17 -196
- package/dist/model/types.d.ts.map +1 -0
- package/dist/model/types.js +10 -0
- package/dist/model/types.js.map +1 -0
- package/dist/model/validation.d.ts +32 -0
- package/dist/model/validation.d.ts.map +1 -0
- package/{src/model/validation.ts → dist/model/validation.js} +172 -653
- package/dist/model/validation.js.map +1 -0
- package/dist/model/wires.d.ts +3 -0
- package/dist/model/wires.d.ts.map +1 -0
- package/{src/model/wires.ts → dist/model/wires.js} +10 -16
- package/dist/model/wires.js.map +1 -0
- package/dist/panel/extract.d.ts +5 -0
- package/dist/panel/extract.d.ts.map +1 -0
- package/{src/panel/extract.ts → dist/panel/extract.js} +146 -235
- package/dist/panel/extract.js.map +1 -0
- package/dist/panel/index.d.ts +6 -0
- package/dist/panel/index.d.ts.map +1 -0
- package/dist/panel/index.js +5 -0
- package/dist/panel/index.js.map +1 -0
- package/dist/panel/knobs.d.ts +7 -0
- package/dist/panel/knobs.d.ts.map +1 -0
- package/{src/panel/knobs.ts → dist/panel/knobs.js} +7 -18
- package/dist/panel/knobs.js.map +1 -0
- package/dist/panel/protocol.d.ts +9 -0
- package/dist/panel/protocol.d.ts.map +1 -0
- package/{src/panel/protocol.ts → dist/panel/protocol.js} +10 -26
- package/dist/panel/protocol.js.map +1 -0
- package/{src/panel/types.ts → dist/panel/types.d.ts} +50 -89
- package/dist/panel/types.d.ts.map +1 -0
- package/dist/panel/types.js +2 -0
- package/dist/panel/types.js.map +1 -0
- package/dist/preview/bounds.d.ts +12 -0
- package/dist/preview/bounds.d.ts.map +1 -0
- package/{src/preview/bounds.ts → dist/preview/bounds.js} +15 -29
- package/dist/preview/bounds.js.map +1 -0
- package/dist/preview/box-layout.d.ts +4 -0
- package/dist/preview/box-layout.d.ts.map +1 -0
- package/{src/preview/box-layout.ts → dist/preview/box-layout.js} +2 -6
- package/dist/preview/box-layout.js.map +1 -0
- package/dist/preview/colors.d.ts +3 -0
- package/dist/preview/colors.d.ts.map +1 -0
- package/{src/preview/colors.ts → dist/preview/colors.js} +3 -5
- package/dist/preview/colors.js.map +1 -0
- package/dist/preview/hanging.d.ts +8 -0
- package/dist/preview/hanging.d.ts.map +1 -0
- package/{src/preview/hanging.ts → dist/preview/hanging.js} +9 -28
- package/dist/preview/hanging.js.map +1 -0
- package/dist/preview/junctions.d.ts +3 -0
- package/dist/preview/junctions.d.ts.map +1 -0
- package/{src/preview/junctions.ts → dist/preview/junctions.js} +9 -24
- package/dist/preview/junctions.js.map +1 -0
- package/dist/preview/label-layout.d.ts +12 -0
- package/dist/preview/label-layout.d.ts.map +1 -0
- package/{src/preview/label-layout.ts → dist/preview/label-layout.js} +15 -36
- package/dist/preview/label-layout.js.map +1 -0
- package/dist/preview/ports.d.ts +17 -0
- package/dist/preview/ports.d.ts.map +1 -0
- package/{src/preview/ports.ts → dist/preview/ports.js} +10 -37
- package/dist/preview/ports.js.map +1 -0
- package/dist/preview/renderable-wires.d.ts +3 -0
- package/dist/preview/renderable-wires.d.ts.map +1 -0
- package/{src/preview/renderable-wires.ts → dist/preview/renderable-wires.js} +12 -29
- package/dist/preview/renderable-wires.js.map +1 -0
- package/dist/preview/routing.d.ts +4 -0
- package/dist/preview/routing.d.ts.map +1 -0
- package/dist/preview/routing.js +13 -0
- package/dist/preview/routing.js.map +1 -0
- package/dist/preview/snap.d.ts +9 -0
- package/dist/preview/snap.d.ts.map +1 -0
- package/{src/preview/snap.ts → dist/preview/snap.js} +9 -31
- package/dist/preview/snap.js.map +1 -0
- package/dist/preview/symbols/svg-content.d.ts +7 -0
- package/dist/preview/symbols/svg-content.d.ts.map +1 -0
- package/{src/preview/symbols/svg-content.ts → dist/preview/symbols/svg-content.js} +3 -6
- package/dist/preview/symbols/svg-content.js.map +1 -0
- package/dist/preview/symbols.d.ts +7 -0
- package/dist/preview/symbols.d.ts.map +1 -0
- package/{src/preview/symbols.ts → dist/preview/symbols.js} +18 -43
- package/dist/preview/symbols.js.map +1 -0
- package/dist/preview/wire-chains.d.ts +4 -0
- package/dist/preview/wire-chains.d.ts.map +1 -0
- package/{src/preview/wire-chains.ts → dist/preview/wire-chains.js} +37 -37
- package/dist/preview/wire-chains.js.map +1 -0
- package/package.json +3 -3
- package/src/index.ts +0 -255
- package/src/panel/index.ts +0 -39
- package/src/preview/routing.ts +0 -15
- package/src/preview/symbols/analog-switch.svg +0 -17
- package/src/preview/symbols/battery.svg +0 -16
- package/src/preview/symbols/bbd.svg +0 -21
- package/src/preview/symbols/bjt-npn.svg +0 -16
- package/src/preview/symbols/bjt-pnp.svg +0 -17
- package/src/preview/symbols/capacitor-electrolytic.svg +0 -13
- package/src/preview/symbols/capacitor.svg +0 -12
- package/src/preview/symbols/current-source.svg +0 -14
- package/src/preview/symbols/delay-ic.svg +0 -22
- package/src/preview/symbols/diode-schottky.svg +0 -12
- package/src/preview/symbols/diode-zener.svg +0 -12
- package/src/preview/symbols/diode.svg +0 -13
- package/src/preview/symbols/flipflop.svg +0 -20
- package/src/preview/symbols/ground.svg +0 -12
- package/src/preview/symbols/ic-block.svg +0 -20
- package/src/preview/symbols/ic.svg +0 -19
- package/src/preview/symbols/inductor.svg +0 -11
- package/src/preview/symbols/jack-input.svg +0 -16
- package/src/preview/symbols/jack-output.svg +0 -16
- package/src/preview/symbols/jfet-junction-n.svg +0 -17
- package/src/preview/symbols/jfet-n.svg +0 -17
- package/src/preview/symbols/jfet-p.svg +0 -17
- package/src/preview/symbols/label.svg +0 -8
- package/src/preview/symbols/led.svg +0 -18
- package/src/preview/symbols/mosfet-n.svg +0 -21
- package/src/preview/symbols/mosfet-p.svg +0 -21
- package/src/preview/symbols/named-wire.svg +0 -11
- package/src/preview/symbols/opamp.svg +0 -21
- package/src/preview/symbols/optocoupler.svg +0 -30
- package/src/preview/symbols/ota.svg +0 -20
- package/src/preview/symbols/pentode.svg +0 -25
- package/src/preview/symbols/photoresistor.svg +0 -19
- package/src/preview/symbols/port.svg +0 -8
- package/src/preview/symbols/potentiometer.svg +0 -15
- package/src/preview/symbols/power-amp.svg +0 -20
- package/src/preview/symbols/rail.svg +0 -11
- package/src/preview/symbols/regulator.svg +0 -13
- package/src/preview/symbols/relay.svg +0 -20
- package/src/preview/symbols/resistor.svg +0 -11
- package/src/preview/symbols/switch-3pdt.svg +0 -32
- package/src/preview/symbols/switch-rotary.svg +0 -23
- package/src/preview/symbols/switch-spdt.svg +0 -16
- package/src/preview/symbols/switch-spst.svg +0 -14
- package/src/preview/symbols/switch-toggle.svg +0 -14
- package/src/preview/symbols/transformer.svg +0 -17
- package/src/preview/symbols/triode.svg +0 -17
- package/src/preview/symbols/tube-diode.svg +0 -13
- package/src/preview/symbols/unsupported.svg +0 -8
- package/src/preview/symbols/variable-resistor.svg +0 -13
- package/src/preview/symbols/voltage-source.svg +0 -15
|
@@ -1,68 +1,22 @@
|
|
|
1
|
-
export type Point = Readonly<{
|
|
2
|
-
|
|
1
|
+
export type Point = Readonly<{
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
}>;
|
|
3
5
|
export type Rotation = 0 | 1 | 2 | 3;
|
|
4
|
-
|
|
5
6
|
export type ParsedQuantity = Readonly<{
|
|
6
7
|
raw: string;
|
|
7
8
|
value: number;
|
|
8
9
|
unit: string;
|
|
9
10
|
}>;
|
|
10
|
-
|
|
11
|
-
export type ComponentKind =
|
|
12
|
-
| 'resistor'
|
|
13
|
-
| 'capacitor'
|
|
14
|
-
| 'inductor'
|
|
15
|
-
| 'diode'
|
|
16
|
-
| 'led'
|
|
17
|
-
| 'bjt'
|
|
18
|
-
| 'jfet'
|
|
19
|
-
| 'mosfet'
|
|
20
|
-
| 'opamp'
|
|
21
|
-
| 'ota'
|
|
22
|
-
| 'triode'
|
|
23
|
-
| 'pentode'
|
|
24
|
-
| 'tube-diode'
|
|
25
|
-
| 'transformer'
|
|
26
|
-
| 'potentiometer'
|
|
27
|
-
| 'variable-resistor'
|
|
28
|
-
| 'switch'
|
|
29
|
-
| 'optocoupler'
|
|
30
|
-
| 'voltage-source'
|
|
31
|
-
| 'current-source'
|
|
32
|
-
| 'battery'
|
|
33
|
-
| 'ground'
|
|
34
|
-
| 'rail'
|
|
35
|
-
| 'jack'
|
|
36
|
-
| 'bbd'
|
|
37
|
-
| 'delay-ic'
|
|
38
|
-
| 'power-amp'
|
|
39
|
-
| 'regulator'
|
|
40
|
-
| 'analog-switch'
|
|
41
|
-
| 'flipflop'
|
|
42
|
-
| 'ic'
|
|
43
|
-
| 'label'
|
|
44
|
-
| 'named-wire'
|
|
45
|
-
| 'port'
|
|
46
|
-
| 'unsupported';
|
|
47
|
-
|
|
11
|
+
export type ComponentKind = 'resistor' | 'capacitor' | 'inductor' | 'diode' | 'led' | 'bjt' | 'jfet' | 'mosfet' | 'opamp' | 'ota' | 'triode' | 'pentode' | 'tube-diode' | 'transformer' | 'potentiometer' | 'variable-resistor' | 'switch' | 'optocoupler' | 'voltage-source' | 'current-source' | 'battery' | 'ground' | 'rail' | 'jack' | 'bbd' | 'delay-ic' | 'power-amp' | 'regulator' | 'analog-switch' | 'flipflop' | 'ic' | 'label' | 'named-wire' | 'port' | 'unsupported';
|
|
48
12
|
export type Terminal = Readonly<{
|
|
49
13
|
name: string;
|
|
50
14
|
position: Point;
|
|
51
15
|
}>;
|
|
52
|
-
|
|
53
16
|
export type PropertyObject = Readonly<{
|
|
54
17
|
readonly [key: string]: PropertyValue;
|
|
55
18
|
}>;
|
|
56
|
-
|
|
57
|
-
export type PropertyValue =
|
|
58
|
-
| ParsedQuantity
|
|
59
|
-
| string
|
|
60
|
-
| number
|
|
61
|
-
| boolean
|
|
62
|
-
| null
|
|
63
|
-
| readonly PropertyValue[]
|
|
64
|
-
| PropertyObject;
|
|
65
|
-
|
|
19
|
+
export type PropertyValue = ParsedQuantity | string | number | boolean | null | readonly PropertyValue[] | PropertyObject;
|
|
66
20
|
export type Component = Readonly<{
|
|
67
21
|
id: string;
|
|
68
22
|
kind: ComponentKind;
|
|
@@ -74,56 +28,26 @@ export type Component = Readonly<{
|
|
|
74
28
|
properties: Readonly<Record<string, PropertyValue>>;
|
|
75
29
|
sourceTypeName: string | null;
|
|
76
30
|
}>;
|
|
77
|
-
|
|
78
31
|
export type Wire = Readonly<{
|
|
79
32
|
id: string;
|
|
80
33
|
endpoints: readonly [Point, Point];
|
|
81
34
|
}>;
|
|
82
|
-
|
|
83
35
|
export type DocumentMetadata = Readonly<{
|
|
84
36
|
name: string;
|
|
85
37
|
description: string;
|
|
86
38
|
partNumber: string;
|
|
87
39
|
}>;
|
|
88
|
-
|
|
89
40
|
export type DocumentSource = Readonly<Record<string, string>>;
|
|
90
|
-
|
|
91
|
-
export type
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
| 'trigger'
|
|
95
|
-
| 'reset'
|
|
96
|
-
| 'sampler-trigger'
|
|
97
|
-
| 'expression'
|
|
98
|
-
| 'unknown';
|
|
99
|
-
|
|
100
|
-
export type ControlInterfaceConnector =
|
|
101
|
-
| '1/4-inch-mono-ts'
|
|
102
|
-
| '1/4-inch-trs'
|
|
103
|
-
| '3.5mm-mono-ts'
|
|
104
|
-
| '3.5mm-trs'
|
|
105
|
-
| 'proprietary'
|
|
106
|
-
| 'unknown';
|
|
107
|
-
|
|
108
|
-
export type ControlInterfaceAssignmentHint =
|
|
109
|
-
| 'momentary'
|
|
110
|
-
| 'latching'
|
|
111
|
-
| 'momentary-or-latching'
|
|
112
|
-
| 'continuous';
|
|
113
|
-
|
|
114
|
-
export type ControlInterfacePolarity =
|
|
115
|
-
| 'normally-open'
|
|
116
|
-
| 'normally-closed'
|
|
117
|
-
| 'expression'
|
|
118
|
-
| 'unknown';
|
|
119
|
-
|
|
41
|
+
export type ControlInterfaceRole = 'external-control' | 'tempo-tap' | 'trigger' | 'reset' | 'sampler-trigger' | 'expression' | 'unknown';
|
|
42
|
+
export type ControlInterfaceConnector = '1/4-inch-mono-ts' | '1/4-inch-trs' | '3.5mm-mono-ts' | '3.5mm-trs' | 'proprietary' | 'unknown';
|
|
43
|
+
export type ControlInterfaceAssignmentHint = 'momentary' | 'latching' | 'momentary-or-latching' | 'continuous';
|
|
44
|
+
export type ControlInterfacePolarity = 'normally-open' | 'normally-closed' | 'expression' | 'unknown';
|
|
120
45
|
export type ControlInterfaceBinding = Readonly<{
|
|
121
46
|
sourceComponentId?: string;
|
|
122
47
|
controlId?: string;
|
|
123
48
|
controlName?: string;
|
|
124
49
|
property?: string;
|
|
125
50
|
}>;
|
|
126
|
-
|
|
127
51
|
export type ControlInterface = Readonly<{
|
|
128
52
|
id: string;
|
|
129
53
|
name: string;
|
|
@@ -137,13 +61,7 @@ export type ControlInterface = Readonly<{
|
|
|
137
61
|
binding?: ControlInterfaceBinding;
|
|
138
62
|
description?: string;
|
|
139
63
|
}>;
|
|
140
|
-
|
|
141
|
-
export type CircuitDocumentDeviceKind =
|
|
142
|
-
| 'audio-pedal'
|
|
143
|
-
| 'control-accessory'
|
|
144
|
-
| 'utility'
|
|
145
|
-
| 'unknown';
|
|
146
|
-
|
|
64
|
+
export type CircuitDocumentDeviceKind = 'audio-pedal' | 'control-accessory' | 'utility' | 'unknown';
|
|
147
65
|
export type CircuitDocumentDevice = Readonly<{
|
|
148
66
|
id?: string;
|
|
149
67
|
version?: number;
|
|
@@ -152,9 +70,7 @@ export type CircuitDocumentDevice = Readonly<{
|
|
|
152
70
|
model?: string;
|
|
153
71
|
audioProcessing?: boolean;
|
|
154
72
|
}>;
|
|
155
|
-
|
|
156
73
|
export type ControlOutputSwitchMode = 'momentary' | 'latching';
|
|
157
|
-
|
|
158
74
|
export type ControlOutput = Readonly<{
|
|
159
75
|
id: string;
|
|
160
76
|
name: string;
|
|
@@ -167,14 +83,12 @@ export type ControlOutput = Readonly<{
|
|
|
167
83
|
componentId?: string;
|
|
168
84
|
description?: string;
|
|
169
85
|
}>;
|
|
170
|
-
|
|
171
86
|
export type ControlContext = Readonly<{
|
|
172
87
|
id: string;
|
|
173
88
|
name: string;
|
|
174
89
|
role: string;
|
|
175
90
|
description?: string;
|
|
176
91
|
}>;
|
|
177
|
-
|
|
178
92
|
export type ControlGroup = Readonly<{
|
|
179
93
|
id: string;
|
|
180
94
|
name: string;
|
|
@@ -182,16 +96,7 @@ export type ControlGroup = Readonly<{
|
|
|
182
96
|
contextIds?: readonly string[];
|
|
183
97
|
description?: string;
|
|
184
98
|
}>;
|
|
185
|
-
|
|
186
|
-
export type DeviceInterfaceControlKind =
|
|
187
|
-
| 'knob'
|
|
188
|
-
| 'slider'
|
|
189
|
-
| 'switch'
|
|
190
|
-
| 'selector'
|
|
191
|
-
| 'footswitch'
|
|
192
|
-
| 'led'
|
|
193
|
-
| 'jack';
|
|
194
|
-
|
|
99
|
+
export type DeviceInterfaceControlKind = 'knob' | 'slider' | 'switch' | 'selector' | 'footswitch' | 'led' | 'jack';
|
|
195
100
|
export type DeviceInterfaceBinding = Readonly<{
|
|
196
101
|
componentId: string;
|
|
197
102
|
controlId?: string;
|
|
@@ -199,12 +104,10 @@ export type DeviceInterfaceBinding = Readonly<{
|
|
|
199
104
|
property?: string;
|
|
200
105
|
externalInterfaceId?: string;
|
|
201
106
|
}>;
|
|
202
|
-
|
|
203
107
|
export type ControlApplicabilityPredicate = Readonly<{
|
|
204
108
|
allOf?: readonly string[];
|
|
205
109
|
anyOf?: readonly string[];
|
|
206
110
|
}>;
|
|
207
|
-
|
|
208
111
|
export type DeviceInterfaceControl = Readonly<{
|
|
209
112
|
id: string;
|
|
210
113
|
label: string;
|
|
@@ -216,17 +119,12 @@ export type DeviceInterfaceControl = Readonly<{
|
|
|
216
119
|
appliesWhen?: ControlApplicabilityPredicate;
|
|
217
120
|
description?: string;
|
|
218
121
|
}>;
|
|
219
|
-
|
|
220
122
|
export type DeviceInterface = Readonly<{
|
|
221
123
|
controls: readonly DeviceInterfaceControl[];
|
|
222
124
|
}>;
|
|
223
|
-
|
|
224
125
|
export type PanelGridIndexing = 'one-based' | 'zero-based';
|
|
225
|
-
|
|
226
126
|
export type PanelRowOrder = 'top-to-bottom' | 'bottom-to-top';
|
|
227
|
-
|
|
228
127
|
export type PanelColumnOrder = 'left-to-right' | 'right-to-left';
|
|
229
|
-
|
|
230
128
|
export type PanelGridLayout = Readonly<{
|
|
231
129
|
kind: 'stompbox-grid';
|
|
232
130
|
rows: number;
|
|
@@ -235,23 +133,19 @@ export type PanelGridLayout = Readonly<{
|
|
|
235
133
|
rowOrder?: PanelRowOrder;
|
|
236
134
|
columnOrder?: PanelColumnOrder;
|
|
237
135
|
}>;
|
|
238
|
-
|
|
239
136
|
export type PanelControlKind = 'knob' | 'slider' | 'switch' | 'selector' | 'footswitch' | 'led' | 'jack';
|
|
240
|
-
|
|
241
137
|
export type PanelGridPosition = Readonly<{
|
|
242
138
|
row: number;
|
|
243
139
|
column: number;
|
|
244
140
|
rowSpan?: number;
|
|
245
141
|
columnSpan?: number;
|
|
246
142
|
}>;
|
|
247
|
-
|
|
248
143
|
export type PanelElementBinding = Readonly<{
|
|
249
144
|
componentId: string;
|
|
250
145
|
controlId?: string;
|
|
251
146
|
controlName?: string;
|
|
252
147
|
property?: string;
|
|
253
148
|
}>;
|
|
254
|
-
|
|
255
149
|
export type PanelElementPlacement = Readonly<{
|
|
256
150
|
id?: string;
|
|
257
151
|
bind: PanelElementBinding;
|
|
@@ -261,10 +155,8 @@ export type PanelElementPlacement = Readonly<{
|
|
|
261
155
|
interfaceControlId?: string;
|
|
262
156
|
physical?: PanelElementPhysicalPlacement;
|
|
263
157
|
}>;
|
|
264
|
-
|
|
265
158
|
/** @deprecated Use PanelElementPlacement. */
|
|
266
159
|
export type PanelControlPlacement = PanelElementPlacement;
|
|
267
|
-
|
|
268
160
|
export type PanelFace = Readonly<{
|
|
269
161
|
id: string;
|
|
270
162
|
label?: string;
|
|
@@ -272,32 +164,25 @@ export type PanelFace = Readonly<{
|
|
|
272
164
|
geometry?: PanelFaceGeometry;
|
|
273
165
|
elements: readonly PanelElementPlacement[];
|
|
274
166
|
}>;
|
|
275
|
-
|
|
276
167
|
export type PanelPlacementMetadata = Readonly<{
|
|
277
168
|
faces: readonly PanelFace[];
|
|
278
169
|
}>;
|
|
279
|
-
|
|
280
170
|
export type VdspBuildDataScalar = string | number | boolean | null;
|
|
281
|
-
|
|
282
171
|
export type VdspBuildDataValue = VdspBuildDataScalar | readonly VdspBuildDataValue[] | VdspBuildDataObject;
|
|
283
|
-
|
|
284
172
|
export type VdspBuildDataObject = Readonly<{
|
|
285
173
|
readonly [key: string]: VdspBuildDataValue | undefined;
|
|
286
174
|
}>;
|
|
287
|
-
|
|
288
175
|
export type MillimeterRect = Readonly<{
|
|
289
176
|
x: number;
|
|
290
177
|
y: number;
|
|
291
178
|
width: number;
|
|
292
179
|
height: number;
|
|
293
180
|
}>;
|
|
294
|
-
|
|
295
181
|
export type PanelFaceGeometry = VdspBuildDataObject & Readonly<{
|
|
296
182
|
units?: string;
|
|
297
183
|
surface?: string;
|
|
298
184
|
usableRectMm?: MillimeterRect;
|
|
299
185
|
}>;
|
|
300
|
-
|
|
301
186
|
export type PanelElementPhysicalPlacement = VdspBuildDataObject & Readonly<{
|
|
302
187
|
units?: string;
|
|
303
188
|
centerMm?: Point;
|
|
@@ -305,11 +190,8 @@ export type PanelElementPhysicalPlacement = VdspBuildDataObject & Readonly<{
|
|
|
305
190
|
partProfileId?: string;
|
|
306
191
|
locked?: boolean;
|
|
307
192
|
}>;
|
|
308
|
-
|
|
309
193
|
export type BuildIntent = 'diy-build-artifact' | 'schema-review-sample';
|
|
310
|
-
|
|
311
194
|
export type BuildCompleteness = 'complete-selected-build' | 'partial-offboard-wiring';
|
|
312
|
-
|
|
313
195
|
export type BuildScope = VdspBuildDataObject & Readonly<{
|
|
314
196
|
schema: 'build-scope/v1';
|
|
315
197
|
intent?: BuildIntent;
|
|
@@ -319,7 +201,6 @@ export type BuildScope = VdspBuildDataObject & Readonly<{
|
|
|
319
201
|
alternateBoardIds?: readonly string[];
|
|
320
202
|
bomScope?: string;
|
|
321
203
|
}>;
|
|
322
|
-
|
|
323
204
|
export type MechanicalBuildMetadata = VdspBuildDataObject & Readonly<{
|
|
324
205
|
schema?: string;
|
|
325
206
|
units?: string;
|
|
@@ -336,14 +217,7 @@ export type MechanicalBuildMetadata = VdspBuildDataObject & Readonly<{
|
|
|
336
217
|
keepoutRectsMm?: readonly VdspBuildDataObject[];
|
|
337
218
|
}>;
|
|
338
219
|
}>;
|
|
339
|
-
|
|
340
|
-
export type BuildBomRefKind =
|
|
341
|
-
| 'component'
|
|
342
|
-
| 'device-interface-control'
|
|
343
|
-
| 'panel-element'
|
|
344
|
-
| 'board'
|
|
345
|
-
| 'freeform-build-item';
|
|
346
|
-
|
|
220
|
+
export type BuildBomRefKind = 'component' | 'device-interface-control' | 'panel-element' | 'board' | 'freeform-build-item';
|
|
347
221
|
export type BuildBomRef = VdspBuildDataObject & Readonly<{
|
|
348
222
|
kind: BuildBomRefKind;
|
|
349
223
|
componentId?: string;
|
|
@@ -352,7 +226,6 @@ export type BuildBomRef = VdspBuildDataObject & Readonly<{
|
|
|
352
226
|
boardId?: string;
|
|
353
227
|
label?: string;
|
|
354
228
|
}>;
|
|
355
|
-
|
|
356
229
|
export type BuildBomItem = VdspBuildDataObject & Readonly<{
|
|
357
230
|
id: string;
|
|
358
231
|
refs: readonly BuildBomRef[];
|
|
@@ -362,47 +235,33 @@ export type BuildBomItem = VdspBuildDataObject & Readonly<{
|
|
|
362
235
|
category?: string;
|
|
363
236
|
sku?: string;
|
|
364
237
|
}>;
|
|
365
|
-
|
|
366
238
|
export type BuildBom = VdspBuildDataObject & Readonly<{
|
|
367
239
|
schema: 'build-bom/v1';
|
|
368
240
|
items: readonly BuildBomItem[];
|
|
369
241
|
}>;
|
|
370
|
-
|
|
371
242
|
export type BuildPartProfile = VdspBuildDataObject & Readonly<{
|
|
372
243
|
id: string;
|
|
373
244
|
kind?: string;
|
|
374
245
|
}>;
|
|
375
|
-
|
|
376
246
|
export type BuildPartProfileCatalog = VdspBuildDataObject & Readonly<{
|
|
377
247
|
schema: 'part-profile-catalog/v1';
|
|
378
248
|
resolution?: string;
|
|
379
249
|
units?: string;
|
|
380
250
|
profiles: readonly BuildPartProfile[];
|
|
381
251
|
}>;
|
|
382
|
-
|
|
383
252
|
export type BoardFootprint = VdspBuildDataObject & Readonly<{
|
|
384
253
|
id: string;
|
|
385
254
|
boardApplicability?: BoardApplicability;
|
|
386
255
|
}>;
|
|
387
|
-
|
|
388
256
|
export type BoardFootprintCatalog = VdspBuildDataObject & Readonly<{
|
|
389
257
|
schema: 'board-footprint-catalog/v1';
|
|
390
258
|
resolution?: string;
|
|
391
259
|
units?: string;
|
|
392
260
|
footprints: readonly BoardFootprint[];
|
|
393
261
|
}>;
|
|
394
|
-
|
|
395
262
|
export type OffBoardWiringCoverage = 'selected-build-complete' | 'representative-selected-build-endpoints';
|
|
396
|
-
|
|
397
263
|
export type OffBoardWiringHarnessStatus = 'complete' | 'partial' | 'candidate';
|
|
398
|
-
|
|
399
|
-
export type OffBoardWiringEndpointKind =
|
|
400
|
-
| 'panel-component-terminal'
|
|
401
|
-
| 'board-terminal'
|
|
402
|
-
| 'power-terminal'
|
|
403
|
-
| 'footswitch-terminal'
|
|
404
|
-
| 'free-wire-label';
|
|
405
|
-
|
|
264
|
+
export type OffBoardWiringEndpointKind = 'panel-component-terminal' | 'board-terminal' | 'power-terminal' | 'footswitch-terminal' | 'free-wire-label';
|
|
406
265
|
export type OffBoardWiringEndpoint = VdspBuildDataObject & Readonly<{
|
|
407
266
|
id: string;
|
|
408
267
|
kind: OffBoardWiringEndpointKind;
|
|
@@ -413,27 +272,22 @@ export type OffBoardWiringEndpoint = VdspBuildDataObject & Readonly<{
|
|
|
413
272
|
terminalId?: string;
|
|
414
273
|
label?: string;
|
|
415
274
|
}>;
|
|
416
|
-
|
|
417
275
|
export type BoardNetRef = VdspBuildDataObject & Readonly<{
|
|
418
276
|
source: 'board-netlist';
|
|
419
277
|
boardId?: string;
|
|
420
278
|
netId: string;
|
|
421
279
|
}>;
|
|
422
|
-
|
|
423
280
|
export type CanonicalCircuitNetRef = VdspBuildDataObject & Readonly<{
|
|
424
281
|
source: 'canonical-circuit';
|
|
425
282
|
member?: ComponentTerminalRef;
|
|
426
283
|
}>;
|
|
427
|
-
|
|
428
284
|
export type OffBoardSignalRef = BoardNetRef | CanonicalCircuitNetRef | VdspBuildDataObject;
|
|
429
|
-
|
|
430
285
|
export type OffBoardWireAttributes = VdspBuildDataObject & Readonly<{
|
|
431
286
|
color?: string;
|
|
432
287
|
gaugeAwg?: number;
|
|
433
288
|
reviewedLengthMm?: number;
|
|
434
289
|
groupId?: string;
|
|
435
290
|
}>;
|
|
436
|
-
|
|
437
291
|
export type OffBoardWiringConnection = VdspBuildDataObject & Readonly<{
|
|
438
292
|
id: string;
|
|
439
293
|
fromEndpointId: string;
|
|
@@ -441,7 +295,6 @@ export type OffBoardWiringConnection = VdspBuildDataObject & Readonly<{
|
|
|
441
295
|
signalRef?: OffBoardSignalRef;
|
|
442
296
|
wire?: OffBoardWireAttributes;
|
|
443
297
|
}>;
|
|
444
|
-
|
|
445
298
|
export type OffBoardWiringHarness = VdspBuildDataObject & Readonly<{
|
|
446
299
|
id: string;
|
|
447
300
|
status?: OffBoardWiringHarnessStatus;
|
|
@@ -449,61 +302,45 @@ export type OffBoardWiringHarness = VdspBuildDataObject & Readonly<{
|
|
|
449
302
|
endpoints: readonly OffBoardWiringEndpoint[];
|
|
450
303
|
connections: readonly OffBoardWiringConnection[];
|
|
451
304
|
}>;
|
|
452
|
-
|
|
453
305
|
export type OffBoardWiringPlan = VdspBuildDataObject & Readonly<{
|
|
454
306
|
schema: 'offboard-wiring/v1';
|
|
455
307
|
source?: string;
|
|
456
308
|
coverage?: OffBoardWiringCoverage;
|
|
457
309
|
harnesses: readonly OffBoardWiringHarness[];
|
|
458
310
|
}>;
|
|
459
|
-
|
|
460
311
|
export type BoardFamily = 'prototype-board' | 'fabricated-board';
|
|
461
|
-
|
|
462
312
|
export type BoardKind = 'stripboard' | 'perfboard' | 'breadboard-pattern' | 'pcb';
|
|
463
|
-
|
|
464
|
-
export type BoardSubtype =
|
|
465
|
-
| 'veroboard'
|
|
466
|
-
| 'isolated-pad'
|
|
467
|
-
| 'solderable-half-breadboard'
|
|
468
|
-
| 'single-sided-through-hole'
|
|
469
|
-
| 'two-layer-through-hole';
|
|
470
|
-
|
|
313
|
+
export type BoardSubtype = 'veroboard' | 'isolated-pad' | 'solderable-half-breadboard' | 'single-sided-through-hole' | 'two-layer-through-hole';
|
|
471
314
|
export type BoardApplicability = VdspBuildDataObject & Readonly<{
|
|
472
315
|
family: BoardFamily;
|
|
473
316
|
kind: BoardKind;
|
|
474
317
|
subtype?: BoardSubtype;
|
|
475
318
|
}>;
|
|
476
|
-
|
|
477
319
|
export type ComponentTerminalRef = VdspBuildDataObject & Readonly<{
|
|
478
320
|
componentId: string;
|
|
479
321
|
terminalName: string;
|
|
480
322
|
}>;
|
|
481
|
-
|
|
482
323
|
export type BoardSourceCircuitHash = VdspBuildDataObject & Readonly<{
|
|
483
324
|
schema: 'canonical-circuit-facts-hash/v1';
|
|
484
325
|
hashAlgorithm: 'sha256';
|
|
485
326
|
hash: string;
|
|
486
327
|
}>;
|
|
487
|
-
|
|
488
328
|
export type BoardHole = VdspBuildDataObject & Readonly<{
|
|
489
329
|
row: number;
|
|
490
330
|
column: number;
|
|
491
331
|
}>;
|
|
492
|
-
|
|
493
332
|
export type BoardEdgeTerminal = VdspBuildDataObject & Readonly<{
|
|
494
333
|
id: string;
|
|
495
334
|
role?: string;
|
|
496
335
|
terminalRef?: ComponentTerminalRef;
|
|
497
336
|
hole?: BoardHole;
|
|
498
337
|
}>;
|
|
499
|
-
|
|
500
338
|
export type BoardPlacedPad = VdspBuildDataObject & Readonly<{
|
|
501
339
|
padId: string;
|
|
502
340
|
terminalName?: string;
|
|
503
341
|
hole?: BoardHole;
|
|
504
342
|
positionMm?: Point;
|
|
505
343
|
}>;
|
|
506
|
-
|
|
507
344
|
export type BoardFootprintPlacement = VdspBuildDataObject & Readonly<{
|
|
508
345
|
componentId: string;
|
|
509
346
|
footprintId: string;
|
|
@@ -512,25 +349,21 @@ export type BoardFootprintPlacement = VdspBuildDataObject & Readonly<{
|
|
|
512
349
|
rotationDeg?: number;
|
|
513
350
|
pads: readonly BoardPlacedPad[];
|
|
514
351
|
}>;
|
|
515
|
-
|
|
516
352
|
export type BoardNetMember = VdspBuildDataObject & Readonly<{
|
|
517
353
|
componentId: string;
|
|
518
354
|
terminalName: string;
|
|
519
355
|
padId?: string;
|
|
520
356
|
terminalId?: string;
|
|
521
357
|
}>;
|
|
522
|
-
|
|
523
358
|
export type BoardNet = VdspBuildDataObject & Readonly<{
|
|
524
359
|
id: string;
|
|
525
360
|
name?: string;
|
|
526
361
|
members: readonly BoardNetMember[];
|
|
527
362
|
}>;
|
|
528
|
-
|
|
529
363
|
export type BoardNetlist = VdspBuildDataObject & Readonly<{
|
|
530
364
|
source?: string;
|
|
531
365
|
nets: readonly BoardNet[];
|
|
532
366
|
}>;
|
|
533
|
-
|
|
534
367
|
export type BoardRoute = VdspBuildDataObject & Readonly<{
|
|
535
368
|
id: string;
|
|
536
369
|
netRef?: BoardNetRef | CanonicalCircuitNetRef | VdspBuildDataObject;
|
|
@@ -541,14 +374,12 @@ export type BoardRoute = VdspBuildDataObject & Readonly<{
|
|
|
541
374
|
zones?: readonly VdspBuildDataObject[];
|
|
542
375
|
drills?: readonly VdspBuildDataObject[];
|
|
543
376
|
}>;
|
|
544
|
-
|
|
545
377
|
export type BoardReview = VdspBuildDataObject & Readonly<{
|
|
546
378
|
status?: 'buildable' | 'candidate' | 'stale' | string;
|
|
547
379
|
reviewedBy?: string;
|
|
548
380
|
reviewedAt?: string;
|
|
549
381
|
notes?: string;
|
|
550
382
|
}>;
|
|
551
|
-
|
|
552
383
|
export type BoardRealization = VdspBuildDataObject & Readonly<{
|
|
553
384
|
id: string;
|
|
554
385
|
schema: 'circuit-board/v1';
|
|
@@ -567,14 +398,12 @@ export type BoardRealization = VdspBuildDataObject & Readonly<{
|
|
|
567
398
|
drills?: readonly VdspBuildDataObject[];
|
|
568
399
|
review?: BoardReview;
|
|
569
400
|
}>;
|
|
570
|
-
|
|
571
401
|
export type Warning = Readonly<{
|
|
572
402
|
code: string;
|
|
573
403
|
message: string;
|
|
574
404
|
componentId?: string;
|
|
575
405
|
wireId?: string;
|
|
576
406
|
}>;
|
|
577
|
-
|
|
578
407
|
export type CircuitDocument = Readonly<{
|
|
579
408
|
metadata: DocumentMetadata;
|
|
580
409
|
source?: DocumentSource;
|
|
@@ -598,13 +427,5 @@ export type CircuitDocument = Readonly<{
|
|
|
598
427
|
warnings: readonly Warning[];
|
|
599
428
|
rawAttributes: Readonly<Record<string, string>>;
|
|
600
429
|
}>;
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
metadata: { name: '', description: '', partNumber: '' },
|
|
604
|
-
source: {},
|
|
605
|
-
components: [],
|
|
606
|
-
wires: [],
|
|
607
|
-
directives: [],
|
|
608
|
-
warnings: [],
|
|
609
|
-
rawAttributes: {},
|
|
610
|
-
};
|
|
430
|
+
export declare const EMPTY_DOCUMENT: CircuitDocument;
|
|
431
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/model/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/model/types.ts"],"names":[],"mappings":"AAylBA,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC3C,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IACvD,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,EAAE;IACd,KAAK,EAAE,EAAE;IACT,UAAU,EAAE,EAAE;IACd,QAAQ,EAAE,EAAE;IACZ,aAAa,EAAE,EAAE;CACpB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { CircuitDocument, Component, ComponentKind } from './types';
|
|
2
|
+
export type ValidationSeverity = 'error' | 'warning';
|
|
3
|
+
export type ValidationCode = 'value-required' | 'model-required' | 'value-unparseable' | 'value-out-of-range' | 'unit-mismatch' | 'unsupported-component' | 'invalid-jack-role' | 'invalid-jack-interface' | 'invalid-jack-audio-role' | 'descriptor-control-empty' | 'descriptor-mode-label-mismatch' | 'duplicate-device-interface-control-id' | 'invalid-device-interface-token' | 'control-group-context-unresolved' | 'device-interface-group-unresolved' | 'device-interface-context-unresolved' | 'device-interface-binding-unresolved' | 'device-interface-duplicate-role' | 'panel-interface-control-unresolved' | 'panel-binding-unresolved' | 'panel-control-unresolved' | 'panel-kind-mismatch' | 'panel-cell-collision' | 'build-board-unresolved' | 'build-harness-unresolved' | 'bom-ref-unresolved' | 'offboard-endpoint-unresolved' | 'offboard-signal-unresolved' | 'board-source-hash-invalid' | 'board-terminal-unresolved' | 'board-route-feature-invalid' | 'board-net-unrouted' | 'duplicate-id' | 'degenerate-wire';
|
|
4
|
+
export type ValidationIssue = Readonly<{
|
|
5
|
+
code: ValidationCode;
|
|
6
|
+
severity: ValidationSeverity;
|
|
7
|
+
message: string;
|
|
8
|
+
componentId?: string;
|
|
9
|
+
property?: string;
|
|
10
|
+
wireId?: string;
|
|
11
|
+
}>;
|
|
12
|
+
export type QuantityRule = Readonly<{
|
|
13
|
+
kind: 'quantity';
|
|
14
|
+
name: string;
|
|
15
|
+
required: boolean;
|
|
16
|
+
aliases?: readonly string[];
|
|
17
|
+
unit?: string;
|
|
18
|
+
min?: number;
|
|
19
|
+
max?: number;
|
|
20
|
+
}>;
|
|
21
|
+
export type StringRule = Readonly<{
|
|
22
|
+
kind: 'string';
|
|
23
|
+
name: string;
|
|
24
|
+
required: boolean;
|
|
25
|
+
aliases?: readonly string[];
|
|
26
|
+
}>;
|
|
27
|
+
export type PropertyRule = QuantityRule | StringRule;
|
|
28
|
+
export declare function getRulesForKind(kind: ComponentKind): readonly PropertyRule[];
|
|
29
|
+
export declare function validateComponent(component: Component, rules?: readonly PropertyRule[]): readonly ValidationIssue[];
|
|
30
|
+
export declare function validateDocument(doc: CircuitDocument): readonly ValidationIssue[];
|
|
31
|
+
export declare function hasErrors(issues: readonly ValidationIssue[]): boolean;
|
|
32
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/model/validation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAKR,eAAe,EACf,SAAS,EACT,aAAa,EAWhB,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,SAAS,CAAC;AAErD,MAAM,MAAM,cAAc,GACpB,gBAAgB,GAChB,gBAAgB,GAChB,mBAAmB,GACnB,oBAAoB,GACpB,eAAe,GACf,uBAAuB,GACvB,mBAAmB,GACnB,wBAAwB,GACxB,yBAAyB,GACzB,0BAA0B,GAC1B,gCAAgC,GAChC,uCAAuC,GACvC,gCAAgC,GAChC,kCAAkC,GAClC,mCAAmC,GACnC,qCAAqC,GACrC,qCAAqC,GACrC,iCAAiC,GACjC,oCAAoC,GACpC,0BAA0B,GAC1B,0BAA0B,GAC1B,qBAAqB,GACrB,sBAAsB,GACtB,wBAAwB,GACxB,0BAA0B,GAC1B,oBAAoB,GACpB,8BAA8B,GAC9B,4BAA4B,GAC5B,2BAA2B,GAC3B,2BAA2B,GAC3B,6BAA6B,GAC7B,oBAAoB,GACpB,cAAc,GACd,iBAAiB,CAAC;AAExB,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC;IACnC,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAChC,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,UAAU,CAAC;AAsGrD,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,YAAY,EAAE,CAE5E;AAED,wBAAgB,iBAAiB,CAC7B,SAAS,EAAE,SAAS,EACpB,KAAK,GAAE,SAAS,YAAY,EAAoC,GACjE,SAAS,eAAe,EAAE,CAoE5B;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,GAAG,SAAS,eAAe,EAAE,CA2DjF;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,GAAG,OAAO,CAErE"}
|