weasel-icons 0.4.0 → 0.5.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.
Files changed (42) hide show
  1. package/README.md +6 -1
  2. package/THIRD_PARTY_NOTICES.md +2 -0
  3. package/dist/icons/battery/battery-icon.d.ts +5 -0
  4. package/dist/icons/battery/battery-icon.js +9 -0
  5. package/dist/icons/battery/battery-rig.d.ts +150 -0
  6. package/dist/icons/battery/battery-rig.js +106 -0
  7. package/dist/icons/bug/bug-icon.d.ts +5 -0
  8. package/dist/icons/bug/bug-icon.js +9 -0
  9. package/dist/icons/bug/bug-rig.d.ts +338 -0
  10. package/dist/icons/bug/bug-rig.js +110 -0
  11. package/dist/icons/compass/compass-icon.d.ts +5 -0
  12. package/dist/icons/compass/compass-icon.js +9 -0
  13. package/dist/icons/compass/compass-rig.d.ts +91 -0
  14. package/dist/icons/compass/compass-rig.js +69 -0
  15. package/dist/icons/hourglass/hourglass-icon.d.ts +5 -0
  16. package/dist/icons/hourglass/hourglass-icon.js +9 -0
  17. package/dist/icons/hourglass/hourglass-rig.d.ts +136 -0
  18. package/dist/icons/hourglass/hourglass-rig.js +89 -0
  19. package/dist/icons/network/network-icon.d.ts +5 -0
  20. package/dist/icons/network/network-icon.js +9 -0
  21. package/dist/icons/network/network-rig.d.ts +200 -0
  22. package/dist/icons/network/network-rig.js +133 -0
  23. package/dist/icons/signal/signal-icon.d.ts +5 -0
  24. package/dist/icons/signal/signal-icon.js +9 -0
  25. package/dist/icons/signal/signal-rig.d.ts +185 -0
  26. package/dist/icons/signal/signal-rig.js +66 -0
  27. package/dist/icons/toggle/toggle-icon.d.ts +5 -0
  28. package/dist/icons/toggle/toggle-icon.js +9 -0
  29. package/dist/icons/toggle/toggle-rig.d.ts +86 -0
  30. package/dist/icons/toggle/toggle-rig.js +55 -0
  31. package/dist/icons/trash/trash-icon.d.ts +5 -0
  32. package/dist/icons/trash/trash-icon.js +9 -0
  33. package/dist/icons/trash/trash-rig.d.ts +98 -0
  34. package/dist/icons/trash/trash-rig.js +67 -0
  35. package/dist/icons/zap/zap-icon.d.ts +6 -0
  36. package/dist/icons/zap/zap-icon.js +36 -0
  37. package/dist/icons/zap/zap-rig.d.ts +15 -0
  38. package/dist/icons/zap/zap-rig.js +60 -0
  39. package/dist/index.d.ts +9 -0
  40. package/dist/index.js +9 -0
  41. package/dist/shared/icon-colors.d.ts +9 -0
  42. package/package.json +46 -1
@@ -0,0 +1,200 @@
1
+ export declare const networkStates: readonly ["offline", "connecting", "online"];
2
+ export type NetworkState = (typeof networkStates)[number];
3
+ export declare const networkArt: {
4
+ readonly name: "network";
5
+ readonly parts: readonly [{
6
+ readonly name: "root";
7
+ readonly paths: readonly ["M10 2H14Q15 2 15 3V7Q15 8 14 8H10Q9 8 9 7V3Q9 2 10 2Z"];
8
+ readonly poses: readonly [{}, {}, {}];
9
+ readonly pivot: readonly [12, 5];
10
+ readonly gestures: readonly [null, {
11
+ readonly duration: 1.5;
12
+ readonly repeatAfter: 2.4;
13
+ readonly loop: true;
14
+ readonly frames: readonly [{
15
+ readonly at: 0;
16
+ }, {
17
+ readonly at: 0.12;
18
+ readonly scaleX: 0.1;
19
+ readonly scaleY: 0.1;
20
+ }, {
21
+ readonly at: 0.3;
22
+ }, {
23
+ readonly at: 1;
24
+ }];
25
+ }];
26
+ }, {
27
+ readonly name: "stem";
28
+ readonly paths: readonly ["M12 8v4"];
29
+ readonly poses: readonly [{
30
+ readonly draw: 0;
31
+ readonly opacity: 0;
32
+ }, {}, {}];
33
+ readonly pivot: readonly [12, 10];
34
+ readonly traceLength: 4;
35
+ readonly gestures: readonly [null, {
36
+ readonly duration: 1.5;
37
+ readonly repeatAfter: 2.4;
38
+ readonly loop: true;
39
+ readonly frames: readonly [{
40
+ readonly at: 0;
41
+ readonly draw: -1;
42
+ }, {
43
+ readonly at: 0.15;
44
+ readonly draw: -1;
45
+ }, {
46
+ readonly at: 0.35;
47
+ }, {
48
+ readonly at: 1;
49
+ }];
50
+ }];
51
+ }, {
52
+ readonly name: "left-arm";
53
+ readonly paths: readonly ["M12 12H6a1 1 0 0 0-1 1v3"];
54
+ readonly poses: readonly [{
55
+ readonly draw: 0;
56
+ readonly opacity: 0;
57
+ }, {}, {}];
58
+ readonly pivot: readonly [8.5, 14];
59
+ readonly traceLength: 10.6;
60
+ readonly gestures: readonly [null, {
61
+ readonly duration: 1.5;
62
+ readonly repeatAfter: 2.4;
63
+ readonly loop: true;
64
+ readonly frames: readonly [{
65
+ readonly at: 0;
66
+ readonly draw: -1;
67
+ }, {
68
+ readonly at: 0.32;
69
+ readonly draw: -1;
70
+ }, {
71
+ readonly at: 0.65;
72
+ }, {
73
+ readonly at: 1;
74
+ }];
75
+ }];
76
+ }, {
77
+ readonly name: "right-arm";
78
+ readonly paths: readonly ["M12 12h6a1 1 0 0 1 1 1v3"];
79
+ readonly poses: readonly [{
80
+ readonly draw: 0;
81
+ readonly opacity: 0;
82
+ }, {}, {}];
83
+ readonly pivot: readonly [15.5, 14];
84
+ readonly traceLength: 10.6;
85
+ readonly gestures: readonly [null, {
86
+ readonly duration: 1.5;
87
+ readonly repeatAfter: 2.4;
88
+ readonly loop: true;
89
+ readonly frames: readonly [{
90
+ readonly at: 0;
91
+ readonly draw: -1;
92
+ }, {
93
+ readonly at: 0.32;
94
+ readonly draw: -1;
95
+ }, {
96
+ readonly at: 0.65;
97
+ }, {
98
+ readonly at: 1;
99
+ }];
100
+ }];
101
+ }, {
102
+ readonly name: "left-peer";
103
+ readonly paths: readonly ["M3 16H7Q8 16 8 17V21Q8 22 7 22H3Q2 22 2 21V17Q2 16 3 16Z"];
104
+ readonly poses: readonly [{
105
+ readonly opacity: 0.45;
106
+ readonly scaleX: 0.86;
107
+ readonly scaleY: 0.86;
108
+ }, {
109
+ readonly opacity: 0.6;
110
+ readonly scaleX: 0.9;
111
+ readonly scaleY: 0.9;
112
+ }, {}];
113
+ readonly pivot: readonly [5, 19];
114
+ readonly gestures: readonly [null, {
115
+ readonly duration: 1.5;
116
+ readonly repeatAfter: 2.4;
117
+ readonly loop: true;
118
+ readonly frames: readonly [{
119
+ readonly at: 0;
120
+ }, {
121
+ readonly at: 0.6;
122
+ }, {
123
+ readonly at: 0.75;
124
+ readonly opacity: 0.4;
125
+ readonly scaleX: 0.14;
126
+ readonly scaleY: 0.14;
127
+ }, {
128
+ readonly at: 0.92;
129
+ readonly opacity: 0.4;
130
+ readonly scaleX: 0.1;
131
+ readonly scaleY: 0.1;
132
+ }, {
133
+ readonly at: 1;
134
+ }];
135
+ }, {
136
+ readonly duration: 0.7;
137
+ readonly repeatAfter: 2;
138
+ readonly loop: false;
139
+ readonly frames: readonly [{
140
+ readonly at: 0;
141
+ }, {
142
+ readonly at: 0.35;
143
+ readonly scaleX: 0.14;
144
+ readonly scaleY: 0.14;
145
+ }, {
146
+ readonly at: 1;
147
+ }];
148
+ }];
149
+ }, {
150
+ readonly name: "right-peer";
151
+ readonly paths: readonly ["M17 16H21Q22 16 22 17V21Q22 22 21 22H17Q16 22 16 21V17Q16 16 17 16Z"];
152
+ readonly poses: readonly [{
153
+ readonly opacity: 0.45;
154
+ readonly scaleX: 0.86;
155
+ readonly scaleY: 0.86;
156
+ }, {
157
+ readonly opacity: 0.6;
158
+ readonly scaleX: 0.9;
159
+ readonly scaleY: 0.9;
160
+ }, {}];
161
+ readonly pivot: readonly [19, 19];
162
+ readonly gestures: readonly [null, {
163
+ readonly duration: 1.5;
164
+ readonly repeatAfter: 2.4;
165
+ readonly loop: true;
166
+ readonly frames: readonly [{
167
+ readonly at: 0;
168
+ }, {
169
+ readonly at: 0.6;
170
+ }, {
171
+ readonly at: 0.75;
172
+ readonly opacity: 0.4;
173
+ readonly scaleX: 0.14;
174
+ readonly scaleY: 0.14;
175
+ }, {
176
+ readonly at: 0.92;
177
+ readonly opacity: 0.4;
178
+ readonly scaleX: 0.1;
179
+ readonly scaleY: 0.1;
180
+ }, {
181
+ readonly at: 1;
182
+ }];
183
+ }, {
184
+ readonly duration: 0.7;
185
+ readonly repeatAfter: 2;
186
+ readonly loop: false;
187
+ readonly frames: readonly [{
188
+ readonly at: 0;
189
+ }, {
190
+ readonly at: 0.2;
191
+ }, {
192
+ readonly at: 0.55;
193
+ readonly scaleX: 0.14;
194
+ readonly scaleY: 0.14;
195
+ }, {
196
+ readonly at: 1;
197
+ }];
198
+ }];
199
+ }];
200
+ };
@@ -0,0 +1,133 @@
1
+ export const networkStates = ['offline', 'connecting', 'online'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // Links grow out of the root node: the stem first, then both arms toward the peers, which wake as they are reached; offline shows isolated, dimmed peers and online holds every link.
4
+ export const networkArt = {
5
+ name: 'network',
6
+ parts: [
7
+ {
8
+ name: 'root',
9
+ paths: ['M10 2H14Q15 2 15 3V7Q15 8 14 8H10Q9 8 9 7V3Q9 2 10 2Z'],
10
+ poses: [{}, {}, {}],
11
+ pivot: [12, 5],
12
+ gestures: [
13
+ null,
14
+ {
15
+ duration: 1.5,
16
+ repeatAfter: 2.4,
17
+ loop: true,
18
+ frames: [{ at: 0 }, { at: 0.12, scaleX: 0.1, scaleY: 0.1 }, { at: 0.3 }, { at: 1 }],
19
+ },
20
+ ],
21
+ },
22
+ {
23
+ name: 'stem',
24
+ paths: ['M12 8v4'],
25
+ poses: [{ draw: 0, opacity: 0 }, {}, {}],
26
+ pivot: [12, 10],
27
+ traceLength: 4,
28
+ gestures: [
29
+ null,
30
+ {
31
+ duration: 1.5,
32
+ repeatAfter: 2.4,
33
+ loop: true,
34
+ frames: [{ at: 0, draw: -1 }, { at: 0.15, draw: -1 }, { at: 0.35 }, { at: 1 }],
35
+ },
36
+ ],
37
+ },
38
+ {
39
+ name: 'left-arm',
40
+ paths: ['M12 12H6a1 1 0 0 0-1 1v3'],
41
+ poses: [{ draw: 0, opacity: 0 }, {}, {}],
42
+ pivot: [8.5, 14],
43
+ traceLength: 10.6,
44
+ gestures: [
45
+ null,
46
+ {
47
+ duration: 1.5,
48
+ repeatAfter: 2.4,
49
+ loop: true,
50
+ frames: [{ at: 0, draw: -1 }, { at: 0.32, draw: -1 }, { at: 0.65 }, { at: 1 }],
51
+ },
52
+ ],
53
+ },
54
+ {
55
+ name: 'right-arm',
56
+ paths: ['M12 12h6a1 1 0 0 1 1 1v3'],
57
+ poses: [{ draw: 0, opacity: 0 }, {}, {}],
58
+ pivot: [15.5, 14],
59
+ traceLength: 10.6,
60
+ gestures: [
61
+ null,
62
+ {
63
+ duration: 1.5,
64
+ repeatAfter: 2.4,
65
+ loop: true,
66
+ frames: [{ at: 0, draw: -1 }, { at: 0.32, draw: -1 }, { at: 0.65 }, { at: 1 }],
67
+ },
68
+ ],
69
+ },
70
+ {
71
+ name: 'left-peer',
72
+ paths: ['M3 16H7Q8 16 8 17V21Q8 22 7 22H3Q2 22 2 21V17Q2 16 3 16Z'],
73
+ poses: [
74
+ { opacity: 0.45, scaleX: 0.86, scaleY: 0.86 },
75
+ { opacity: 0.6, scaleX: 0.9, scaleY: 0.9 },
76
+ {},
77
+ ],
78
+ pivot: [5, 19],
79
+ gestures: [
80
+ null,
81
+ {
82
+ duration: 1.5,
83
+ repeatAfter: 2.4,
84
+ loop: true,
85
+ frames: [
86
+ { at: 0 },
87
+ { at: 0.6 },
88
+ { at: 0.75, opacity: 0.4, scaleX: 0.14, scaleY: 0.14 },
89
+ { at: 0.92, opacity: 0.4, scaleX: 0.1, scaleY: 0.1 },
90
+ { at: 1 },
91
+ ],
92
+ },
93
+ {
94
+ duration: 0.7,
95
+ repeatAfter: 2,
96
+ loop: false,
97
+ frames: [{ at: 0 }, { at: 0.35, scaleX: 0.14, scaleY: 0.14 }, { at: 1 }],
98
+ },
99
+ ],
100
+ },
101
+ {
102
+ name: 'right-peer',
103
+ paths: ['M17 16H21Q22 16 22 17V21Q22 22 21 22H17Q16 22 16 21V17Q16 16 17 16Z'],
104
+ poses: [
105
+ { opacity: 0.45, scaleX: 0.86, scaleY: 0.86 },
106
+ { opacity: 0.6, scaleX: 0.9, scaleY: 0.9 },
107
+ {},
108
+ ],
109
+ pivot: [19, 19],
110
+ gestures: [
111
+ null,
112
+ {
113
+ duration: 1.5,
114
+ repeatAfter: 2.4,
115
+ loop: true,
116
+ frames: [
117
+ { at: 0 },
118
+ { at: 0.6 },
119
+ { at: 0.75, opacity: 0.4, scaleX: 0.14, scaleY: 0.14 },
120
+ { at: 0.92, opacity: 0.4, scaleX: 0.1, scaleY: 0.1 },
121
+ { at: 1 },
122
+ ],
123
+ },
124
+ {
125
+ duration: 0.7,
126
+ repeatAfter: 2,
127
+ loop: false,
128
+ frames: [{ at: 0 }, { at: 0.2 }, { at: 0.55, scaleX: 0.14, scaleY: 0.14 }, { at: 1 }],
129
+ },
130
+ ],
131
+ },
132
+ ],
133
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type SignalState } from "./signal-rig.js";
3
+ export { signalStates, type SignalState } from "./signal-rig.js";
4
+ export type SignalIconProps = StatefulIconProps<SignalState>;
5
+ export declare const SignalIcon: import("react").NamedExoticComponent<SignalIconProps>;
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { memo } from 'react';
4
+ import { ArticulatedIcon } from "../../shared/articulated-icon.js";
5
+ import { signalArt, signalStates } from "./signal-rig.js";
6
+ export { signalStates } from "./signal-rig.js";
7
+ export const SignalIcon = memo(function SignalIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: signalArt, states: signalStates, ...props });
9
+ });
@@ -0,0 +1,185 @@
1
+ export declare const signalStates: readonly ["weak", "searching", "strong"];
2
+ export type SignalState = (typeof signalStates)[number];
3
+ export declare const signalArt: {
4
+ readonly name: "signal";
5
+ readonly parts: readonly [{
6
+ readonly name: "bar-dot";
7
+ readonly paths: readonly ["M2 20h.01"];
8
+ readonly poses: readonly [{}, {}, {}];
9
+ readonly pivot: readonly [2, 20];
10
+ readonly gestures: readonly [null, null, {
11
+ readonly duration: 0.8;
12
+ readonly repeatAfter: 2;
13
+ readonly loop: false;
14
+ readonly frames: readonly [{
15
+ readonly at: 0;
16
+ readonly scaleY: -1;
17
+ }, {
18
+ readonly at: number;
19
+ readonly scaleY: -1;
20
+ }, {
21
+ readonly at: number;
22
+ readonly scaleY: 0.1;
23
+ }, {
24
+ readonly at: 1;
25
+ }];
26
+ }];
27
+ }, {
28
+ readonly name: "bar-one";
29
+ readonly paths: readonly ["M7 20v-4"];
30
+ readonly poses: readonly [{}, {}, {}];
31
+ readonly pivot: readonly [7, 20];
32
+ readonly gestures: readonly [null, null, {
33
+ readonly duration: 0.8;
34
+ readonly repeatAfter: 2;
35
+ readonly loop: false;
36
+ readonly frames: readonly [{
37
+ readonly at: 0;
38
+ readonly scaleY: -1;
39
+ }, {
40
+ readonly at: number;
41
+ readonly scaleY: -1;
42
+ }, {
43
+ readonly at: number;
44
+ readonly scaleY: 0.1;
45
+ }, {
46
+ readonly at: 1;
47
+ }];
48
+ }];
49
+ }, {
50
+ readonly name: "bar-two";
51
+ readonly paths: readonly ["M12 20v-8"];
52
+ readonly poses: readonly [{
53
+ readonly opacity: 0.25;
54
+ }, {
55
+ readonly opacity: 0.25;
56
+ }, {}];
57
+ readonly pivot: readonly [12, 20];
58
+ readonly gestures: readonly [null, {
59
+ readonly duration: 1.4;
60
+ readonly repeatAfter: 2.2;
61
+ readonly loop: true;
62
+ readonly frames: readonly [{
63
+ readonly at: 0;
64
+ }, {
65
+ readonly at: number;
66
+ readonly opacity: 0;
67
+ }, {
68
+ readonly at: number;
69
+ readonly opacity: 0.75;
70
+ readonly scaleY: 0.08;
71
+ }, {
72
+ readonly at: 0.86;
73
+ readonly opacity: 0.75;
74
+ }, {
75
+ readonly at: 1;
76
+ }];
77
+ }, {
78
+ readonly duration: 0.8;
79
+ readonly repeatAfter: 2;
80
+ readonly loop: false;
81
+ readonly frames: readonly [{
82
+ readonly at: 0;
83
+ readonly scaleY: -1;
84
+ }, {
85
+ readonly at: number;
86
+ readonly scaleY: -1;
87
+ }, {
88
+ readonly at: number;
89
+ readonly scaleY: 0.1;
90
+ }, {
91
+ readonly at: 1;
92
+ }];
93
+ }];
94
+ }, {
95
+ readonly name: "bar-three";
96
+ readonly paths: readonly ["M17 20V8"];
97
+ readonly poses: readonly [{
98
+ readonly opacity: 0.25;
99
+ }, {
100
+ readonly opacity: 0.25;
101
+ }, {}];
102
+ readonly pivot: readonly [17, 20];
103
+ readonly gestures: readonly [null, {
104
+ readonly duration: 1.4;
105
+ readonly repeatAfter: 2.2;
106
+ readonly loop: true;
107
+ readonly frames: readonly [{
108
+ readonly at: 0;
109
+ }, {
110
+ readonly at: number;
111
+ readonly opacity: 0;
112
+ }, {
113
+ readonly at: number;
114
+ readonly opacity: 0.75;
115
+ readonly scaleY: 0.08;
116
+ }, {
117
+ readonly at: 0.86;
118
+ readonly opacity: 0.75;
119
+ }, {
120
+ readonly at: 1;
121
+ }];
122
+ }, {
123
+ readonly duration: 0.8;
124
+ readonly repeatAfter: 2;
125
+ readonly loop: false;
126
+ readonly frames: readonly [{
127
+ readonly at: 0;
128
+ readonly scaleY: -1;
129
+ }, {
130
+ readonly at: number;
131
+ readonly scaleY: -1;
132
+ }, {
133
+ readonly at: number;
134
+ readonly scaleY: 0.1;
135
+ }, {
136
+ readonly at: 1;
137
+ }];
138
+ }];
139
+ }, {
140
+ readonly name: "bar-four";
141
+ readonly paths: readonly ["M22 20V4"];
142
+ readonly poses: readonly [{
143
+ readonly opacity: 0.25;
144
+ }, {
145
+ readonly opacity: 0.25;
146
+ }, {}];
147
+ readonly pivot: readonly [22, 20];
148
+ readonly gestures: readonly [null, {
149
+ readonly duration: 1.4;
150
+ readonly repeatAfter: 2.2;
151
+ readonly loop: true;
152
+ readonly frames: readonly [{
153
+ readonly at: 0;
154
+ }, {
155
+ readonly at: number;
156
+ readonly opacity: 0;
157
+ }, {
158
+ readonly at: number;
159
+ readonly opacity: 0.75;
160
+ readonly scaleY: 0.08;
161
+ }, {
162
+ readonly at: 0.86;
163
+ readonly opacity: 0.75;
164
+ }, {
165
+ readonly at: 1;
166
+ }];
167
+ }, {
168
+ readonly duration: 0.8;
169
+ readonly repeatAfter: 2;
170
+ readonly loop: false;
171
+ readonly frames: readonly [{
172
+ readonly at: 0;
173
+ readonly scaleY: -1;
174
+ }, {
175
+ readonly at: number;
176
+ readonly scaleY: -1;
177
+ }, {
178
+ readonly at: number;
179
+ readonly scaleY: 0.1;
180
+ }, {
181
+ readonly at: 1;
182
+ }];
183
+ }];
184
+ }];
185
+ };
@@ -0,0 +1,66 @@
1
+ export const signalStates = ['weak', 'searching', 'strong'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // Bars light from left to right as a travelling sweep while searching; weak keeps only the two short bars live against ghosted capacity, strong raises every bar once in sequence.
4
+ const sweep = (start) => ({
5
+ duration: 1.4,
6
+ repeatAfter: 2.2,
7
+ loop: true,
8
+ frames: [
9
+ { at: 0 },
10
+ { at: start, opacity: 0 },
11
+ { at: Math.min(start + 0.22, 0.86), opacity: 0.75, scaleY: 0.08 },
12
+ { at: 0.86, opacity: 0.75 },
13
+ { at: 1 },
14
+ ],
15
+ });
16
+ const raise = (start) => ({
17
+ duration: 0.8,
18
+ repeatAfter: 2,
19
+ loop: false,
20
+ frames: [
21
+ { at: 0, scaleY: -1 },
22
+ { at: start, scaleY: -1 },
23
+ { at: Math.min(start + 0.25, 0.9), scaleY: 0.1 },
24
+ { at: 1 },
25
+ ],
26
+ });
27
+ export const signalArt = {
28
+ name: 'signal',
29
+ parts: [
30
+ {
31
+ name: 'bar-dot',
32
+ paths: ['M2 20h.01'],
33
+ poses: [{}, {}, {}],
34
+ pivot: [2, 20],
35
+ gestures: [null, null, raise(0)],
36
+ },
37
+ {
38
+ name: 'bar-one',
39
+ paths: ['M7 20v-4'],
40
+ poses: [{}, {}, {}],
41
+ pivot: [7, 20],
42
+ gestures: [null, null, raise(0.1)],
43
+ },
44
+ {
45
+ name: 'bar-two',
46
+ paths: ['M12 20v-8'],
47
+ poses: [{ opacity: 0.25 }, { opacity: 0.25 }, {}],
48
+ pivot: [12, 20],
49
+ gestures: [null, sweep(0.05), raise(0.25)],
50
+ },
51
+ {
52
+ name: 'bar-three',
53
+ paths: ['M17 20V8'],
54
+ poses: [{ opacity: 0.25 }, { opacity: 0.25 }, {}],
55
+ pivot: [17, 20],
56
+ gestures: [null, sweep(0.25), raise(0.4)],
57
+ },
58
+ {
59
+ name: 'bar-four',
60
+ paths: ['M22 20V4'],
61
+ poses: [{ opacity: 0.25 }, { opacity: 0.25 }, {}],
62
+ pivot: [22, 20],
63
+ gestures: [null, sweep(0.45), raise(0.55)],
64
+ },
65
+ ],
66
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type ToggleState } from "./toggle-rig.js";
3
+ export { toggleStates, type ToggleState } from "./toggle-rig.js";
4
+ export type ToggleIconProps = StatefulIconProps<ToggleState>;
5
+ export declare const ToggleIcon: import("react").NamedExoticComponent<ToggleIconProps>;
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { memo } from 'react';
4
+ import { ArticulatedIcon } from "../../shared/articulated-icon.js";
5
+ import { toggleArt, toggleStates } from "./toggle-rig.js";
6
+ export { toggleStates } from "./toggle-rig.js";
7
+ export const ToggleIcon = memo(function ToggleIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: toggleArt, states: toggleStates, ...props });
9
+ });