@xsynaptic/sonic-ui 0.10.4 → 0.13.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 +27 -0
- package/README.md +39 -15
- package/dist/default/define/toggle.js +7 -0
- package/dist/default/define.js +1 -0
- package/dist/default/elements/button.js +7 -1
- package/dist/default/elements/dial.js +7 -1
- package/dist/default/elements/display-element.js +5 -1
- package/dist/default/elements/envelope.js +6 -1
- package/dist/default/elements/meter.js +1 -1
- package/dist/default/elements/number.js +7 -1
- package/dist/default/elements/position-group.js +163 -0
- package/dist/default/elements/radio-group.js +34 -12
- package/dist/default/elements/segmented.js +5 -1
- package/dist/default/elements/slider.js +7 -1
- package/dist/default/elements/sonic-element.js +1 -1
- package/dist/default/elements/switch.js +34 -168
- package/dist/default/elements/toggle.js +193 -0
- package/dist/default/elements/value-element.js +3 -0
- package/dist/default/elements/value-gestures.js +7 -0
- package/dist/default/elements/wave-element.js +8 -1
- package/dist/default/elements/waveform.js +159 -13
- package/dist/default/elements/wavestrip.js +4 -0
- package/dist/default/elements/xy.js +7 -1
- package/dist/default/index.js +2 -1
- package/dist/default/lib/key-press.js +27 -0
- package/dist/default/lib/toggle-travel.js +19 -0
- package/dist/default/lib/zoom-gesture.js +19 -0
- package/dist/dev/define/toggle.d.ts +2 -0
- package/dist/dev/define/toggle.js +8 -0
- package/dist/dev/define/toggle.js.map +1 -0
- package/dist/dev/define.d.ts +3 -1
- package/dist/dev/define.js +1 -0
- package/dist/dev/elements/button.js +7 -1
- package/dist/dev/elements/button.js.map +1 -1
- package/dist/dev/elements/dial.js +7 -1
- package/dist/dev/elements/dial.js.map +1 -1
- package/dist/dev/elements/display-element.js +5 -1
- package/dist/dev/elements/display-element.js.map +1 -1
- package/dist/dev/elements/envelope.js +6 -1
- package/dist/dev/elements/envelope.js.map +1 -1
- package/dist/dev/elements/meter.js +1 -1
- package/dist/dev/elements/meter.js.map +1 -1
- package/dist/dev/elements/number.js +7 -1
- package/dist/dev/elements/number.js.map +1 -1
- package/dist/dev/elements/position-group.d.ts +38 -0
- package/dist/dev/elements/position-group.js +164 -0
- package/dist/dev/elements/position-group.js.map +1 -0
- package/dist/dev/elements/radio-group.d.ts +4 -0
- package/dist/dev/elements/radio-group.js +34 -12
- package/dist/dev/elements/radio-group.js.map +1 -1
- package/dist/dev/elements/segmented.js +5 -1
- package/dist/dev/elements/segmented.js.map +1 -1
- package/dist/dev/elements/slider.js +7 -1
- package/dist/dev/elements/slider.js.map +1 -1
- package/dist/dev/elements/sonic-element.d.ts +16 -1
- package/dist/dev/elements/sonic-element.js +27 -5
- package/dist/dev/elements/sonic-element.js.map +1 -1
- package/dist/dev/elements/switch.d.ts +4 -19
- package/dist/dev/elements/switch.js +34 -168
- package/dist/dev/elements/switch.js.map +1 -1
- package/dist/dev/elements/toggle.d.ts +21 -0
- package/dist/dev/elements/toggle.js +201 -0
- package/dist/dev/elements/toggle.js.map +1 -0
- package/dist/dev/elements/value-element.d.ts +1 -0
- package/dist/dev/elements/value-element.js +3 -0
- package/dist/dev/elements/value-element.js.map +1 -1
- package/dist/dev/elements/value-gestures.js +7 -0
- package/dist/dev/elements/value-gestures.js.map +1 -1
- package/dist/dev/elements/wave-element.js +8 -1
- package/dist/dev/elements/wave-element.js.map +1 -1
- package/dist/dev/elements/waveform.d.ts +11 -1
- package/dist/dev/elements/waveform.js +159 -13
- package/dist/dev/elements/waveform.js.map +1 -1
- package/dist/dev/elements/wavestrip.d.ts +1 -0
- package/dist/dev/elements/wavestrip.js +4 -0
- package/dist/dev/elements/wavestrip.js.map +1 -1
- package/dist/dev/elements/xy.js +7 -1
- package/dist/dev/elements/xy.js.map +1 -1
- package/dist/dev/index.d.ts +3 -2
- package/dist/dev/index.js +2 -1
- package/dist/dev/lib/key-press.js +28 -0
- package/dist/dev/lib/key-press.js.map +1 -0
- package/dist/dev/lib/toggle-travel.js +20 -0
- package/dist/dev/lib/toggle-travel.js.map +1 -0
- package/dist/dev/lib/zoom-gesture.js +20 -0
- package/dist/dev/lib/zoom-gesture.js.map +1 -0
- package/dist/styles/button.css +5 -3
- package/dist/styles/controls.css +1 -0
- package/dist/styles/dial.css +3 -1
- package/dist/styles/envelope.css +3 -1
- package/dist/styles/led.css +19 -14
- package/dist/styles/material/arc.css +21 -0
- package/dist/styles/material/bracket.css +31 -0
- package/dist/styles/material/cap.css +179 -0
- package/dist/styles/material/core.css +103 -0
- package/dist/styles/material/glass.css +62 -0
- package/dist/styles/material/groove.css +10 -0
- package/dist/styles/material/keycap.css +95 -0
- package/dist/styles/material/lens.css +11 -0
- package/dist/styles/material/pane.css +97 -0
- package/dist/styles/material/readout.css +87 -0
- package/dist/styles/material/scale.css +30 -0
- package/dist/styles/material/value.css +43 -0
- package/dist/styles/material/well.css +24 -0
- package/dist/styles/material.css +15 -745
- package/dist/styles/meter.css +10 -7
- package/dist/styles/number.css +3 -1
- package/dist/styles/panel.css +3 -1
- package/dist/styles/ring.css +3 -1
- package/dist/styles/screen.css +3 -1
- package/dist/styles/segmented.css +11 -5
- package/dist/styles/slider.css +3 -1
- package/dist/styles/spectrum.css +5 -3
- package/dist/styles/switch.css +9 -3
- package/dist/styles/toggle.css +483 -0
- package/dist/styles/waveform.css +3 -1
- package/dist/styles/wavestrip.css +3 -1
- package/dist/styles/xy.css +3 -1
- package/package.json +3 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
@property --_sonic-readout-size {
|
|
2
|
+
syntax: '<length>';
|
|
3
|
+
inherits: true;
|
|
4
|
+
initial-value: 24px;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
@layer sonic.material {
|
|
8
|
+
:is(.sonic-dial, .sonic-envelope, .sonic-slider, .sonic-waveform, .sonic-wavestrip, .sonic-xy) {
|
|
9
|
+
--_sonic-readout-size: var(--sonic-readout-size, 1.5rem);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
:is(
|
|
13
|
+
.sonic-dial-readout,
|
|
14
|
+
.sonic-envelope-readout,
|
|
15
|
+
.sonic-slider-readout,
|
|
16
|
+
.sonic-waveform-readout,
|
|
17
|
+
.sonic-wavestrip-readout,
|
|
18
|
+
.sonic-xy-readout
|
|
19
|
+
) {
|
|
20
|
+
--_sonic-unit: calc(var(--_sonic-readout-size) / 32);
|
|
21
|
+
--_sonic-glass-own: var(--sonic-readout-glass);
|
|
22
|
+
--_sonic-glass-edge-colour-own: var(--sonic-readout-edge);
|
|
23
|
+
--_sonic-glass-edge-width-own: var(--sonic-readout-edge-width);
|
|
24
|
+
|
|
25
|
+
box-sizing: border-box;
|
|
26
|
+
place-items: center;
|
|
27
|
+
min-inline-size: calc(1.75 * var(--_sonic-readout-size));
|
|
28
|
+
block-size: var(--_sonic-readout-size);
|
|
29
|
+
padding: 0 calc(0.3 * var(--_sonic-readout-size));
|
|
30
|
+
margin: 0 0 calc(0.25 * var(--_sonic-readout-size));
|
|
31
|
+
position-area: block-start;
|
|
32
|
+
position-try-fallbacks: flip-block;
|
|
33
|
+
overflow: visible;
|
|
34
|
+
font: inherit;
|
|
35
|
+
font-family: var(--sonic-glass-font, inherit);
|
|
36
|
+
font-size: calc(0.5 * var(--_sonic-readout-size));
|
|
37
|
+
font-variant-numeric: tabular-nums;
|
|
38
|
+
line-height: 1;
|
|
39
|
+
color: var(--sonic-readout-text, var(--_sonic-glass-text));
|
|
40
|
+
white-space: nowrap;
|
|
41
|
+
pointer-events: none;
|
|
42
|
+
cursor: default;
|
|
43
|
+
user-select: none;
|
|
44
|
+
background: var(--_sonic-glass-fill);
|
|
45
|
+
border: var(--_sonic-glass-edge);
|
|
46
|
+
border-radius: calc(0.25 * var(--_sonic-readout-size));
|
|
47
|
+
box-shadow:
|
|
48
|
+
calc(2 * var(--_sonic-cast-x)) calc(2 * var(--_sonic-cast-y)) calc(6 * var(--_sonic-unit))
|
|
49
|
+
rgb(0 0 0 / calc(0.55 * var(--_sonic-relief))),
|
|
50
|
+
inset 0 0 0 max(1px, round(var(--_sonic-unit), var(--_sonic-snap)))
|
|
51
|
+
rgb(255 255 255 / calc(0.08 * var(--_sonic-relief)));
|
|
52
|
+
opacity: 0;
|
|
53
|
+
translate: 0 calc(0.15 * var(--_sonic-readout-size));
|
|
54
|
+
transition:
|
|
55
|
+
opacity 120ms ease-out,
|
|
56
|
+
translate 120ms ease-out,
|
|
57
|
+
display 120ms allow-discrete,
|
|
58
|
+
overlay 120ms allow-discrete;
|
|
59
|
+
|
|
60
|
+
/* Grid only while open; engines keep the flip a closed readout took against a filtered ancestor */
|
|
61
|
+
&:popover-open {
|
|
62
|
+
display: grid;
|
|
63
|
+
opacity: 1;
|
|
64
|
+
translate: 0;
|
|
65
|
+
|
|
66
|
+
@starting-style {
|
|
67
|
+
opacity: 0;
|
|
68
|
+
translate: 0 calc(0.15 * var(--_sonic-readout-size));
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
@media (prefers-reduced-motion: reduce) {
|
|
73
|
+
translate: 0;
|
|
74
|
+
|
|
75
|
+
&:popover-open {
|
|
76
|
+
@starting-style {
|
|
77
|
+
translate: 0;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
:state(editing) > :is(.sonic-dial, .sonic-slider, .sonic-waveform, .sonic-wavestrip) > & {
|
|
83
|
+
pointer-events: auto;
|
|
84
|
+
cursor: text;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
@layer sonic.material {
|
|
2
|
+
:is(.sonic-dial-scale, .sonic-slider-scale) {
|
|
3
|
+
position: absolute;
|
|
4
|
+
inset: 0;
|
|
5
|
+
line-height: 1;
|
|
6
|
+
white-space: nowrap;
|
|
7
|
+
pointer-events: none;
|
|
8
|
+
|
|
9
|
+
& > * {
|
|
10
|
+
position: absolute;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
& svg {
|
|
14
|
+
display: block;
|
|
15
|
+
inline-size: 1em;
|
|
16
|
+
block-size: 1em;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
& > .sonic-scale-tick {
|
|
20
|
+
background: var(--sonic-scale, var(--_sonic-etch));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
@media (forced-colors: active) {
|
|
25
|
+
:is(.sonic-dial-scale, .sonic-slider-scale) > .sonic-scale-tick {
|
|
26
|
+
forced-color-adjust: none;
|
|
27
|
+
background: var(--_sonic-etch);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
@property --_sonic-detent-zone {
|
|
2
|
+
syntax: '<length>';
|
|
3
|
+
inherits: true;
|
|
4
|
+
initial-value: 8px;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
@layer sonic.material {
|
|
8
|
+
:is(.sonic-dial, .sonic-number, .sonic-slider, .sonic-waveform, .sonic-wavestrip) {
|
|
9
|
+
--_sonic-detent-zone: var(--sonic-detent-zone, 8px);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
:is(
|
|
13
|
+
.sonic-dial-entry,
|
|
14
|
+
.sonic-number-entry,
|
|
15
|
+
.sonic-slider-entry,
|
|
16
|
+
.sonic-waveform-entry,
|
|
17
|
+
.sonic-wavestrip-entry
|
|
18
|
+
) {
|
|
19
|
+
inline-size: 6ch;
|
|
20
|
+
padding: 0;
|
|
21
|
+
font: inherit;
|
|
22
|
+
color: inherit;
|
|
23
|
+
text-align: center;
|
|
24
|
+
background: transparent;
|
|
25
|
+
border: 0;
|
|
26
|
+
|
|
27
|
+
&::selection {
|
|
28
|
+
color: var(--_sonic-lit);
|
|
29
|
+
background: transparent;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&:focus-visible {
|
|
33
|
+
outline: 2px solid transparent;
|
|
34
|
+
outline-offset: -2px;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
@supports (field-sizing: content) {
|
|
38
|
+
inline-size: auto;
|
|
39
|
+
min-inline-size: 3ch;
|
|
40
|
+
field-sizing: content;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
@layer sonic.material {
|
|
2
|
+
:is(
|
|
3
|
+
.sonic-envelope,
|
|
4
|
+
.sonic-button,
|
|
5
|
+
.sonic-number,
|
|
6
|
+
.sonic-screen,
|
|
7
|
+
.sonic-segmented,
|
|
8
|
+
.sonic-spectrum,
|
|
9
|
+
.sonic-toggle,
|
|
10
|
+
.sonic-waveform,
|
|
11
|
+
.sonic-wavestrip,
|
|
12
|
+
.sonic-xy
|
|
13
|
+
) {
|
|
14
|
+
--_sonic-well-depth: var(--_sonic-glass-depth, 1);
|
|
15
|
+
--_sonic-well:
|
|
16
|
+
inset calc(var(--_sonic-well-depth) * var(--_sonic-cast-x))
|
|
17
|
+
calc(var(--_sonic-well-depth) * var(--_sonic-cast-y))
|
|
18
|
+
calc(2 * var(--_sonic-well-depth) * var(--_sonic-unit))
|
|
19
|
+
rgb(0 0 0 / calc(0.6 * var(--_sonic-relief))),
|
|
20
|
+
calc(0.5 * var(--_sonic-well-depth) * var(--_sonic-cast-x))
|
|
21
|
+
calc(0.5 * var(--_sonic-well-depth) * var(--_sonic-cast-y)) 0
|
|
22
|
+
rgb(255 255 255 / calc(0.06 * var(--_sonic-relief)));
|
|
23
|
+
}
|
|
24
|
+
}
|