@weasel-js/icons 1.10.1 → 1.11.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/README.md +8 -5
- package/dist/icons.table.json +246 -0
- package/dist/index.d.ts +50 -23
- package/dist/index.js.map +1 -1
- package/dist/shapes.d.ts +6 -0
- package/dist/shapes.js +254 -0
- package/dist/shapes.js.map +1 -0
- package/dist/table-DxbFTTzV.d.ts +23 -0
- package/package.json +6 -4
package/README.md
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
# @weasel-js/icons
|
|
2
2
|
|
|
3
|
-
Namespaced icon names (`namespace:name`) and the icon registry. No React, no DOM
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Namespaced icon names (`namespace:name`) and the icon registry. No React, no DOM. Each weasel
|
|
4
|
+
package that draws glyphs publishes its own table, at `@weasel-js/<package>/icons`; this one draws
|
|
5
|
+
the plain shapes every package may name (`shape:diamond`, `shape:hexagonFlat`), published at
|
|
6
|
+
`@weasel-js/icons/shapes`. The build plugin that ships only the glyphs a build names is
|
|
7
|
+
`@weasel-js/icons-plugin`.
|
|
6
8
|
|
|
7
9
|
| Export | What it is |
|
|
8
10
|
|---|---|
|
|
@@ -17,12 +19,13 @@ The build plugin that ships only the glyphs a build names is `@weasel-js/icons-p
|
|
|
17
19
|
```tsx
|
|
18
20
|
import { IconRegistryProvider } from '@weasel-js/core';
|
|
19
21
|
import { icons as coreIcons } from '@weasel-js/core/icons';
|
|
22
|
+
import { icons as shapeIcons } from '@weasel-js/icons/shapes';
|
|
20
23
|
import { icons as uiIcons } from '@weasel-js/ui/icons';
|
|
21
24
|
|
|
22
|
-
const ICONS = [coreIcons, uiIcons];
|
|
25
|
+
const ICONS = [coreIcons, shapeIcons, uiIcons];
|
|
23
26
|
|
|
24
27
|
<IconRegistryProvider icons={ICONS}>…</IconRegistryProvider>;
|
|
25
28
|
```
|
|
26
29
|
|
|
27
|
-
That registers every glyph core and ui draw. To ship only the glyphs the app names, use
|
|
30
|
+
That registers every glyph core, the shapes and ui draw. To ship only the glyphs the app names, use
|
|
28
31
|
`@weasel-js/icons-plugin`.
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
{
|
|
2
|
+
"namespace": "shape",
|
|
3
|
+
"owner": "@weasel-js/icons",
|
|
4
|
+
"icons": {
|
|
5
|
+
"triangle": {
|
|
6
|
+
"body": "<path d=\"M10 3.59L17.4 16.41L2.6 16.41Z\" stroke-linejoin=\"miter\"/>",
|
|
7
|
+
"fill": "<path d=\"M10 3.59L17.4 16.41L2.6 16.41Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
8
|
+
"group": "Shapes",
|
|
9
|
+
"tags": []
|
|
10
|
+
},
|
|
11
|
+
"rightTriangle": {
|
|
12
|
+
"body": "<path d=\"M2.6 17.4L2.6 2.6L17.4 17.4Z\" stroke-linejoin=\"miter\"/>",
|
|
13
|
+
"fill": "<path d=\"M2.6 17.4L2.6 2.6L17.4 17.4Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
14
|
+
"group": "Shapes",
|
|
15
|
+
"tags": []
|
|
16
|
+
},
|
|
17
|
+
"square": {
|
|
18
|
+
"body": "<path d=\"M2.6 2.6L17.4 2.6L17.4 17.4L2.6 17.4Z\" stroke-linejoin=\"miter\"/>",
|
|
19
|
+
"fill": "<path d=\"M2.6 2.6L17.4 2.6L17.4 17.4L2.6 17.4Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
20
|
+
"group": "Shapes",
|
|
21
|
+
"tags": []
|
|
22
|
+
},
|
|
23
|
+
"rectangle": {
|
|
24
|
+
"body": "<path d=\"M2.6 5.37L17.4 5.37L17.4 14.63L2.6 14.63Z\" stroke-linejoin=\"miter\"/>",
|
|
25
|
+
"fill": "<path d=\"M2.6 5.37L17.4 5.37L17.4 14.63L2.6 14.63Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
26
|
+
"group": "Shapes",
|
|
27
|
+
"tags": []
|
|
28
|
+
},
|
|
29
|
+
"diamond": {
|
|
30
|
+
"body": "<path d=\"M10 2.6L17.4 10L10 17.4L2.6 10Z\" stroke-linejoin=\"miter\"/>",
|
|
31
|
+
"fill": "<path d=\"M10 2.6L17.4 10L10 17.4L2.6 10Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
32
|
+
"group": "Shapes",
|
|
33
|
+
"tags": []
|
|
34
|
+
},
|
|
35
|
+
"parallelogram": {
|
|
36
|
+
"body": "<path d=\"M5.35 4.71L17.4 4.71L14.65 15.29L2.6 15.29Z\" stroke-linejoin=\"miter\"/>",
|
|
37
|
+
"fill": "<path d=\"M5.35 4.71L17.4 4.71L14.65 15.29L2.6 15.29Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
38
|
+
"group": "Shapes",
|
|
39
|
+
"tags": []
|
|
40
|
+
},
|
|
41
|
+
"trapezoid": {
|
|
42
|
+
"body": "<path d=\"M5.35 4.71L14.65 4.71L17.4 15.29L2.6 15.29Z\" stroke-linejoin=\"miter\"/>",
|
|
43
|
+
"fill": "<path d=\"M5.35 4.71L14.65 4.71L17.4 15.29L2.6 15.29Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
44
|
+
"group": "Shapes",
|
|
45
|
+
"tags": []
|
|
46
|
+
},
|
|
47
|
+
"trapezoidSide": {
|
|
48
|
+
"body": "<path d=\"M2.6 7.69L17.4 5.38L17.4 14.63L2.6 12.31Z\" stroke-linejoin=\"miter\"/>",
|
|
49
|
+
"fill": "<path d=\"M2.6 7.69L17.4 5.38L17.4 14.63L2.6 12.31Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
50
|
+
"group": "Shapes",
|
|
51
|
+
"tags": []
|
|
52
|
+
},
|
|
53
|
+
"kite": {
|
|
54
|
+
"body": "<path d=\"M10 2.6L16.43 7.75L10 17.4L3.57 7.75Z\" stroke-linejoin=\"miter\"/>",
|
|
55
|
+
"fill": "<path d=\"M10 2.6L16.43 7.75L10 17.4L3.57 7.75Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
56
|
+
"group": "Shapes",
|
|
57
|
+
"tags": []
|
|
58
|
+
},
|
|
59
|
+
"pentagon": {
|
|
60
|
+
"body": "<path d=\"M10 2.96L17.4 8.34L14.57 17.04L5.43 17.04L2.6 8.34Z\" stroke-linejoin=\"miter\"/>",
|
|
61
|
+
"fill": "<path d=\"M10 2.96L17.4 8.34L14.57 17.04L5.43 17.04L2.6 8.34Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
62
|
+
"group": "Shapes",
|
|
63
|
+
"tags": []
|
|
64
|
+
},
|
|
65
|
+
"hexagon": {
|
|
66
|
+
"body": "<path d=\"M10 2.6L16.41 6.3L16.41 13.7L10 17.4L3.59 13.7L3.59 6.3Z\" stroke-linejoin=\"miter\"/>",
|
|
67
|
+
"fill": "<path d=\"M10 2.6L16.41 6.3L16.41 13.7L10 17.4L3.59 13.7L3.59 6.3Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
68
|
+
"group": "Shapes",
|
|
69
|
+
"tags": []
|
|
70
|
+
},
|
|
71
|
+
"hexagonFlat": {
|
|
72
|
+
"body": "<path d=\"M17.4 10L13.7 16.41L6.3 16.41L2.6 10L6.3 3.59L13.7 3.59Z\" stroke-linejoin=\"miter\"/>",
|
|
73
|
+
"fill": "<path d=\"M17.4 10L13.7 16.41L6.3 16.41L2.6 10L6.3 3.59L13.7 3.59Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
74
|
+
"group": "Shapes",
|
|
75
|
+
"tags": []
|
|
76
|
+
},
|
|
77
|
+
"heptagon": {
|
|
78
|
+
"body": "<path d=\"M10 2.79L15.93 5.64L17.4 12.06L13.29 17.21L6.71 17.21L2.6 12.06L4.07 5.64Z\" stroke-linejoin=\"miter\"/>",
|
|
79
|
+
"fill": "<path d=\"M10 2.79L15.93 5.64L17.4 12.06L13.29 17.21L6.71 17.21L2.6 12.06L4.07 5.64Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
80
|
+
"group": "Shapes",
|
|
81
|
+
"tags": []
|
|
82
|
+
},
|
|
83
|
+
"octagon": {
|
|
84
|
+
"body": "<path d=\"M13.07 2.6L17.4 6.93L17.4 13.07L13.07 17.4L6.93 17.4L2.6 13.07L2.6 6.93L6.93 2.6Z\" stroke-linejoin=\"miter\"/>",
|
|
85
|
+
"fill": "<path d=\"M13.07 2.6L17.4 6.93L17.4 13.07L13.07 17.4L6.93 17.4L2.6 13.07L2.6 6.93L6.93 2.6Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
86
|
+
"group": "Shapes",
|
|
87
|
+
"tags": []
|
|
88
|
+
},
|
|
89
|
+
"decagon": {
|
|
90
|
+
"body": "<path d=\"M10 2.6L14.35 4.01L17.04 7.71L17.04 12.29L14.35 15.99L10 17.4L5.65 15.99L2.96 12.29L2.96 7.71L5.65 4.01Z\" stroke-linejoin=\"miter\"/>",
|
|
91
|
+
"fill": "<path d=\"M10 2.6L14.35 4.01L17.04 7.71L17.04 12.29L14.35 15.99L10 17.4L5.65 15.99L2.96 12.29L2.96 7.71L5.65 4.01Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
92
|
+
"group": "Shapes",
|
|
93
|
+
"tags": []
|
|
94
|
+
},
|
|
95
|
+
"dodecagon": {
|
|
96
|
+
"body": "<path d=\"M10 2.6L13.7 3.59L16.41 6.3L17.4 10L16.41 13.7L13.7 16.41L10 17.4L6.3 16.41L3.59 13.7L2.6 10L3.59 6.3L6.3 3.59Z\" stroke-linejoin=\"miter\"/>",
|
|
97
|
+
"fill": "<path d=\"M10 2.6L13.7 3.59L16.41 6.3L17.4 10L16.41 13.7L13.7 16.41L10 17.4L6.3 16.41L3.59 13.7L2.6 10L3.59 6.3L6.3 3.59Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
98
|
+
"group": "Shapes",
|
|
99
|
+
"tags": []
|
|
100
|
+
},
|
|
101
|
+
"cross": {
|
|
102
|
+
"body": "<path d=\"M7.63 2.6L12.37 2.6L12.37 7.63L17.4 7.63L17.4 12.37L12.37 12.37L12.37 17.4L7.63 17.4L7.63 12.37L2.6 12.37L2.6 7.63L7.63 7.63Z\" stroke-linejoin=\"miter\"/>",
|
|
103
|
+
"fill": "<path d=\"M7.63 2.6L12.37 2.6L12.37 7.63L17.4 7.63L17.4 12.37L12.37 12.37L12.37 17.4L7.63 17.4L7.63 12.37L2.6 12.37L2.6 7.63L7.63 7.63Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
104
|
+
"group": "Shapes",
|
|
105
|
+
"tags": []
|
|
106
|
+
},
|
|
107
|
+
"lShape": {
|
|
108
|
+
"body": "<path d=\"M2.6 2.6L8.82 2.6L8.82 11.78L17.4 11.78L17.4 17.4L2.6 17.4Z\" stroke-linejoin=\"miter\"/>",
|
|
109
|
+
"fill": "<path d=\"M2.6 2.6L8.82 2.6L8.82 11.78L17.4 11.78L17.4 17.4L2.6 17.4Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
110
|
+
"group": "Shapes",
|
|
111
|
+
"tags": []
|
|
112
|
+
},
|
|
113
|
+
"chevron": {
|
|
114
|
+
"body": "<path d=\"M2.6 4.38L10 10.59L17.4 4.38L17.4 9.41L10 15.62L2.6 9.41Z\" stroke-linejoin=\"miter\"/>",
|
|
115
|
+
"fill": "<path d=\"M2.6 4.38L10 10.59L17.4 4.38L17.4 9.41L10 15.62L2.6 9.41Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
116
|
+
"group": "Shapes",
|
|
117
|
+
"tags": []
|
|
118
|
+
},
|
|
119
|
+
"star": {
|
|
120
|
+
"body": "<path d=\"M10 2.96L12.2 7.72L17.4 8.34L13.55 11.9L14.57 17.04L10 14.48L5.43 17.04L6.45 11.9L2.6 8.34L7.8 7.72Z\" stroke-linejoin=\"miter\"/>",
|
|
121
|
+
"fill": "<path d=\"M10 2.96L12.2 7.72L17.4 8.34L13.55 11.9L14.57 17.04L10 14.48L5.43 17.04L6.45 11.9L2.6 8.34L7.8 7.72Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
122
|
+
"group": "Shapes",
|
|
123
|
+
"tags": []
|
|
124
|
+
},
|
|
125
|
+
"star4": {
|
|
126
|
+
"body": "<path d=\"M10 2.6L11.99 8.01L17.4 10L11.99 11.99L10 17.4L8.01 11.99L2.6 10L8.01 8.01Z\" stroke-linejoin=\"miter\"/>",
|
|
127
|
+
"fill": "<path d=\"M10 2.6L11.99 8.01L17.4 10L11.99 11.99L10 17.4L8.01 11.99L2.6 10L8.01 8.01Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
128
|
+
"group": "Shapes",
|
|
129
|
+
"tags": []
|
|
130
|
+
},
|
|
131
|
+
"star6": {
|
|
132
|
+
"body": "<path d=\"M10 2.6L12.07 6.41L16.41 6.3L14.14 10L16.41 13.7L12.07 13.59L10 17.4L7.93 13.59L3.59 13.7L5.86 10L3.59 6.3L7.93 6.41Z\" stroke-linejoin=\"miter\"/>",
|
|
133
|
+
"fill": "<path d=\"M10 2.6L12.07 6.41L16.41 6.3L14.14 10L16.41 13.7L12.07 13.59L10 17.4L7.93 13.59L3.59 13.7L5.86 10L3.59 6.3L7.93 6.41Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
134
|
+
"group": "Shapes",
|
|
135
|
+
"tags": []
|
|
136
|
+
},
|
|
137
|
+
"star8": {
|
|
138
|
+
"body": "<path d=\"M10 2.6L11.76 5.76L15.23 4.77L14.24 8.24L17.4 10L14.24 11.76L15.23 15.23L11.76 14.24L10 17.4L8.24 14.24L4.77 15.23L5.76 11.76L2.6 10L5.76 8.24L4.77 4.77L8.24 5.76Z\" stroke-linejoin=\"miter\"/>",
|
|
139
|
+
"fill": "<path d=\"M10 2.6L11.76 5.76L15.23 4.77L14.24 8.24L17.4 10L14.24 11.76L15.23 15.23L11.76 14.24L10 17.4L8.24 14.24L4.77 15.23L5.76 11.76L2.6 10L5.76 8.24L4.77 4.77L8.24 5.76Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
140
|
+
"group": "Shapes",
|
|
141
|
+
"tags": []
|
|
142
|
+
},
|
|
143
|
+
"pentagram": {
|
|
144
|
+
"body": "<path d=\"M10 2.96L14.57 17.04L2.6 8.34L17.4 8.34L5.43 17.04Z\" stroke-linejoin=\"miter\"/>",
|
|
145
|
+
"fill": "<path d=\"M10 2.96L14.57 17.04L2.6 8.34L17.4 8.34L5.43 17.04Z\" fill=\"currentColor\" stroke=\"none\" fill-rule=\"evenodd\"/>",
|
|
146
|
+
"group": "Shapes",
|
|
147
|
+
"tags": []
|
|
148
|
+
},
|
|
149
|
+
"circle": {
|
|
150
|
+
"body": "<path d=\"M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10Z\"/>",
|
|
151
|
+
"fill": "<path d=\"M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
152
|
+
"group": "Shapes",
|
|
153
|
+
"tags": []
|
|
154
|
+
},
|
|
155
|
+
"ellipse": {
|
|
156
|
+
"body": "<path d=\"M2.6 10A7.4 4.74 0 1 1 17.4 10A7.4 4.74 0 1 1 2.6 10Z\"/>",
|
|
157
|
+
"fill": "<path d=\"M2.6 10A7.4 4.74 0 1 1 17.4 10A7.4 4.74 0 1 1 2.6 10Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
158
|
+
"group": "Shapes",
|
|
159
|
+
"tags": []
|
|
160
|
+
},
|
|
161
|
+
"semicircle": {
|
|
162
|
+
"body": "<path d=\"M2.6 13.7A7.4 7.4 0 0 1 17.4 13.7Z\"/>",
|
|
163
|
+
"fill": "<path d=\"M2.6 13.7A7.4 7.4 0 0 1 17.4 13.7Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
164
|
+
"group": "Shapes",
|
|
165
|
+
"tags": []
|
|
166
|
+
},
|
|
167
|
+
"quarter": {
|
|
168
|
+
"body": "<path d=\"M2.6 17.4V2.6A14.8 14.8 0 0 1 17.4 17.4Z\"/>",
|
|
169
|
+
"fill": "<path d=\"M2.6 17.4V2.6A14.8 14.8 0 0 1 17.4 17.4Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
170
|
+
"group": "Shapes",
|
|
171
|
+
"tags": []
|
|
172
|
+
},
|
|
173
|
+
"stadium": {
|
|
174
|
+
"body": "<path d=\"M6.74 5.86H13.26A4.14 4.14 0 0 1 13.26 14.14H6.74A4.14 4.14 0 0 1 6.74 5.86Z\"/>",
|
|
175
|
+
"fill": "<path d=\"M6.74 5.86H13.26A4.14 4.14 0 0 1 13.26 14.14H6.74A4.14 4.14 0 0 1 6.74 5.86Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
176
|
+
"group": "Shapes",
|
|
177
|
+
"tags": []
|
|
178
|
+
},
|
|
179
|
+
"roundedSquare": {
|
|
180
|
+
"body": "<path d=\"M6 2.6H14A3.4 3.4 0 0 1 17.4 6V14A3.4 3.4 0 0 1 14 17.4H6A3.4 3.4 0 0 1 2.6 14V6A3.4 3.4 0 0 1 6 2.6Z\"/>",
|
|
181
|
+
"fill": "<path d=\"M6 2.6H14A3.4 3.4 0 0 1 17.4 6V14A3.4 3.4 0 0 1 14 17.4H6A3.4 3.4 0 0 1 2.6 14V6A3.4 3.4 0 0 1 6 2.6Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
182
|
+
"group": "Shapes",
|
|
183
|
+
"tags": []
|
|
184
|
+
},
|
|
185
|
+
"ring": {
|
|
186
|
+
"body": "<path d=\"M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10ZM6.15 10A3.85 3.85 0 1 0 13.85 10A3.85 3.85 0 1 0 6.15 10Z\"/>",
|
|
187
|
+
"fill": "<path d=\"M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10ZM6.15 10A3.85 3.85 0 1 0 13.85 10A3.85 3.85 0 1 0 6.15 10Z\" fill=\"currentColor\" stroke=\"none\" fill-rule=\"evenodd\"/>",
|
|
188
|
+
"group": "Shapes",
|
|
189
|
+
"tags": []
|
|
190
|
+
},
|
|
191
|
+
"crescent": {
|
|
192
|
+
"body": "<path d=\"M6.3 2.6A7.4 7.4 0 1 1 6.3 17.4A8.51 8.51 0 0 0 6.3 2.6Z\"/>",
|
|
193
|
+
"fill": "<path d=\"M6.3 2.6A7.4 7.4 0 1 1 6.3 17.4A8.51 8.51 0 0 0 6.3 2.6Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
194
|
+
"group": "Shapes",
|
|
195
|
+
"tags": []
|
|
196
|
+
},
|
|
197
|
+
"lens": {
|
|
198
|
+
"body": "<path d=\"M10 2.6A9.99 9.99 0 0 1 10 17.4A9.99 9.99 0 0 1 10 2.6Z\"/>",
|
|
199
|
+
"fill": "<path d=\"M10 2.6A9.99 9.99 0 0 1 10 17.4A9.99 9.99 0 0 1 10 2.6Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
200
|
+
"group": "Shapes",
|
|
201
|
+
"tags": []
|
|
202
|
+
},
|
|
203
|
+
"sector": {
|
|
204
|
+
"body": "<path d=\"M10 14.63L2.6 9.06A9.27 9.27 0 0 1 17.4 9.06Z\"/>",
|
|
205
|
+
"fill": "<path d=\"M10 14.63L2.6 9.06A9.27 9.27 0 0 1 17.4 9.06Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
206
|
+
"group": "Shapes",
|
|
207
|
+
"tags": []
|
|
208
|
+
},
|
|
209
|
+
"segment": {
|
|
210
|
+
"body": "<path d=\"M2.6 12.59A7.88 7.88 0 0 1 17.4 12.59Z\"/>",
|
|
211
|
+
"fill": "<path d=\"M2.6 12.59A7.88 7.88 0 0 1 17.4 12.59Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
212
|
+
"group": "Shapes",
|
|
213
|
+
"tags": []
|
|
214
|
+
},
|
|
215
|
+
"arch": {
|
|
216
|
+
"body": "<path d=\"M2.6 17.4V10A7.4 7.4 0 0 1 17.4 10V17.4Z\"/>",
|
|
217
|
+
"fill": "<path d=\"M2.6 17.4V10A7.4 7.4 0 0 1 17.4 10V17.4Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
218
|
+
"group": "Shapes",
|
|
219
|
+
"tags": []
|
|
220
|
+
},
|
|
221
|
+
"teardrop": {
|
|
222
|
+
"body": "<path d=\"M10 2.6L5.9 10.75A4.59 4.59 0 1 0 14.1 10.75Z\"/>",
|
|
223
|
+
"fill": "<path d=\"M10 2.6L5.9 10.75A4.59 4.59 0 1 0 14.1 10.75Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
224
|
+
"group": "Shapes",
|
|
225
|
+
"tags": []
|
|
226
|
+
},
|
|
227
|
+
"egg": {
|
|
228
|
+
"body": "<path d=\"M10 2.6C14.59 2.6 16.07 9.26 16.07 12.22C16.07 15.77 13.26 17.4 10 17.4C6.74 17.4 3.93 15.77 3.93 12.22C3.93 9.26 5.41 2.6 10 2.6Z\"/>",
|
|
229
|
+
"fill": "<path d=\"M10 2.6C14.59 2.6 16.07 9.26 16.07 12.22C16.07 15.77 13.26 17.4 10 17.4C6.74 17.4 3.93 15.77 3.93 12.22C3.93 9.26 5.41 2.6 10 2.6Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
230
|
+
"group": "Shapes",
|
|
231
|
+
"tags": []
|
|
232
|
+
},
|
|
233
|
+
"heart": {
|
|
234
|
+
"body": "<path d=\"M10 6.51L10.01 6.42L10.05 6.16L10.18 5.76L10.41 5.26L10.78 4.72L11.27 4.2L11.89 3.76L12.62 3.45L13.42 3.31L14.25 3.36L15.08 3.61L15.84 4.03L16.48 4.62L16.98 5.33L17.29 6.12L17.4 6.97L17.29 7.84L16.98 8.7L16.48 9.54L15.84 10.34L15.08 11.12L14.25 11.86L13.42 12.57L12.62 13.27L11.89 13.93L11.27 14.56L10.78 15.14L10.41 15.66L10.18 16.09L10.05 16.41L10.01 16.62L10 16.69L9.99 16.62L9.95 16.41L9.82 16.09L9.59 15.66L9.22 15.14L8.73 14.56L8.11 13.93L7.38 13.27L6.58 12.57L5.75 11.86L4.92 11.12L4.16 10.34L3.52 9.54L3.02 8.7L2.71 7.84L2.6 6.97L2.71 6.12L3.02 5.33L3.52 4.62L4.16 4.03L4.92 3.61L5.75 3.36L6.58 3.31L7.38 3.45L8.11 3.76L8.73 4.2L9.22 4.72L9.59 5.26L9.82 5.76L9.95 6.16L9.99 6.42L10 6.51Z\"/>",
|
|
235
|
+
"fill": "<path d=\"M10 6.51L10.01 6.42L10.05 6.16L10.18 5.76L10.41 5.26L10.78 4.72L11.27 4.2L11.89 3.76L12.62 3.45L13.42 3.31L14.25 3.36L15.08 3.61L15.84 4.03L16.48 4.62L16.98 5.33L17.29 6.12L17.4 6.97L17.29 7.84L16.98 8.7L16.48 9.54L15.84 10.34L15.08 11.12L14.25 11.86L13.42 12.57L12.62 13.27L11.89 13.93L11.27 14.56L10.78 15.14L10.41 15.66L10.18 16.09L10.05 16.41L10.01 16.62L10 16.69L9.99 16.62L9.95 16.41L9.82 16.09L9.59 15.66L9.22 15.14L8.73 14.56L8.11 13.93L7.38 13.27L6.58 12.57L5.75 11.86L4.92 11.12L4.16 10.34L3.52 9.54L3.02 8.7L2.71 7.84L2.6 6.97L2.71 6.12L3.02 5.33L3.52 4.62L4.16 4.03L4.92 3.61L5.75 3.36L6.58 3.31L7.38 3.45L8.11 3.76L8.73 4.2L9.22 4.72L9.59 5.26L9.82 5.76L9.95 6.16L9.99 6.42L10 6.51Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
236
|
+
"group": "Shapes",
|
|
237
|
+
"tags": []
|
|
238
|
+
},
|
|
239
|
+
"angle": {
|
|
240
|
+
"body": "<path d=\"M17.4 16.34L2.6 16.34L14.8 3.66M6.12 16.34A3.52 3.52 0 0 0 5.04 13.8\"/>",
|
|
241
|
+
"fill": "<path d=\"M2.6 16.34L17.4 16.34L14.8 3.66Z\" fill=\"currentColor\" stroke=\"none\"/>",
|
|
242
|
+
"group": "Shapes",
|
|
243
|
+
"tags": []
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import { I as IconGlyph, a as IconTable, b as IconVariantLoader } from './table-DxbFTTzV.js';
|
|
2
|
+
export { c as IconVariantModule } from './table-DxbFTTzV.js';
|
|
3
|
+
|
|
1
4
|
declare const brand: unique symbol;
|
|
2
5
|
/** A qualified icon name (`namespace:name`) that came from `icon()` or `toIconRef`. */
|
|
3
6
|
type IconRef = string & {
|
|
@@ -15,27 +18,49 @@ declare function toIconRef(value: string | undefined): IconRef | undefined;
|
|
|
15
18
|
/** A package's `icon()`: bare names resolve in `namespace` only. Generated into each package's `icons.gen.ts`. */
|
|
16
19
|
declare function scopedIcon<Own extends string>(namespace: string): (name: Own | QualifiedIconName) => IconRef;
|
|
17
20
|
|
|
18
|
-
/**
|
|
19
|
-
interface
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
21
|
+
/** This package's qualified names, which `IconName` extends. */
|
|
22
|
+
interface ShapeIconNames {
|
|
23
|
+
'shape:triangle': true;
|
|
24
|
+
'shape:rightTriangle': true;
|
|
25
|
+
'shape:square': true;
|
|
26
|
+
'shape:rectangle': true;
|
|
27
|
+
'shape:diamond': true;
|
|
28
|
+
'shape:parallelogram': true;
|
|
29
|
+
'shape:trapezoid': true;
|
|
30
|
+
'shape:trapezoidSide': true;
|
|
31
|
+
'shape:kite': true;
|
|
32
|
+
'shape:pentagon': true;
|
|
33
|
+
'shape:hexagon': true;
|
|
34
|
+
'shape:hexagonFlat': true;
|
|
35
|
+
'shape:heptagon': true;
|
|
36
|
+
'shape:octagon': true;
|
|
37
|
+
'shape:decagon': true;
|
|
38
|
+
'shape:dodecagon': true;
|
|
39
|
+
'shape:cross': true;
|
|
40
|
+
'shape:lShape': true;
|
|
41
|
+
'shape:chevron': true;
|
|
42
|
+
'shape:star': true;
|
|
43
|
+
'shape:star4': true;
|
|
44
|
+
'shape:star6': true;
|
|
45
|
+
'shape:star8': true;
|
|
46
|
+
'shape:pentagram': true;
|
|
47
|
+
'shape:circle': true;
|
|
48
|
+
'shape:ellipse': true;
|
|
49
|
+
'shape:semicircle': true;
|
|
50
|
+
'shape:quarter': true;
|
|
51
|
+
'shape:stadium': true;
|
|
52
|
+
'shape:roundedSquare': true;
|
|
53
|
+
'shape:ring': true;
|
|
54
|
+
'shape:crescent': true;
|
|
55
|
+
'shape:lens': true;
|
|
56
|
+
'shape:sector': true;
|
|
57
|
+
'shape:segment': true;
|
|
58
|
+
'shape:arch': true;
|
|
59
|
+
'shape:teardrop': true;
|
|
60
|
+
'shape:egg': true;
|
|
61
|
+
'shape:heart': true;
|
|
62
|
+
'shape:angle': true;
|
|
36
63
|
}
|
|
37
|
-
/** Loads one variant module: the icon tables that variant adds. */
|
|
38
|
-
type IconVariantLoader = () => Promise<IconVariantModule>;
|
|
39
64
|
|
|
40
65
|
/** Where a named icon variant stands: no loader for it (`unknown`), a loader not yet run (`idle`), in flight, in, or failed. */
|
|
41
66
|
type IconVariantState = 'unknown' | 'idle' | 'loading' | 'loaded' | 'failed';
|
|
@@ -73,18 +98,20 @@ interface IconRegistry {
|
|
|
73
98
|
declare function createIconRegistry(initial?: IconTable | readonly IconTable[]): IconRegistry;
|
|
74
99
|
|
|
75
100
|
/**
|
|
76
|
-
* `@weasel-js/icons`: icon names, tables and the registry
|
|
101
|
+
* `@weasel-js/icons`: icon names, tables and the registry, and the plain shape glyphs under the
|
|
102
|
+
* `shape` namespace. No React, no DOM.
|
|
77
103
|
*
|
|
78
104
|
* @packageDocumentation
|
|
79
105
|
*/
|
|
106
|
+
|
|
80
107
|
/**
|
|
81
108
|
* Every qualified icon name, as keys. Each package's generated `icons.gen.ts`
|
|
82
109
|
* adds its own by declaration merging. Declared here, in the barrel, because an
|
|
83
110
|
* augmentation aimed at a module that only re-exports this would declare a fresh one.
|
|
84
111
|
*/
|
|
85
|
-
interface IconName {
|
|
112
|
+
interface IconName extends ShapeIconNames {
|
|
86
113
|
}
|
|
87
114
|
/** A name some loaded package declares. */
|
|
88
115
|
type QualifiedIconName = Extract<keyof IconName, string>;
|
|
89
116
|
|
|
90
|
-
export { type IconEntry,
|
|
117
|
+
export { type IconEntry, IconGlyph, type IconName, IconNamespaceClaimedError, type IconRef, type IconRegistry, IconTable, IconVariantLoader, type IconVariantState, type QualifiedIconName, createIconRegistry, qualify, scopedIcon, splitIconRef, toIconRef };
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/names.ts","../src/variants.ts","../src/registry.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { QualifiedIconName } from './index';\n\ndeclare const brand: unique symbol;\n\n/** A qualified icon name (`namespace:name`) that came from `icon()` or `toIconRef`. */\nexport type IconRef = string & { readonly [brand]: 'IconRef' };\n\nconst QUALIFIED = /^([^:\\s]+):([^:\\s]+)$/;\n\n/** `name` in `namespace`, unless it already names one. */\nexport function qualify(namespace: string, name: string): string {\n return name.includes(':') ? name : `${namespace}:${name}`;\n}\n\n/** The two halves of a qualified ref, or `undefined` for anything else. */\nexport function splitIconRef(ref: string): { namespace: string; name: string } | undefined {\n const m = QUALIFIED.exec(ref);\n return m ? { namespace: m[1]!, name: m[2]! } : undefined;\n}\n\n/** A string read at run time (a schema loaded as JSON) as a ref, when it is qualified. */\nexport function toIconRef(value: string | undefined): IconRef | undefined {\n return value !== undefined && QUALIFIED.test(value) ? (value as IconRef) : undefined;\n}\n\n/** A package's `icon()`: bare names resolve in `namespace` only. Generated into each package's `icons.gen.ts`. */\nexport function scopedIcon<Own extends string>(namespace: string) {\n return (name: Own | QualifiedIconName): IconRef => qualify(namespace, name) as IconRef;\n}\n","import { isDev } from '@weasel-js/registry';\nimport type { IconTable, IconVariantLoader } from './table';\n\n/** Where a named icon variant stands: no loader for it (`unknown`), a loader not yet run (`idle`), in flight, in, or failed. */\nexport type IconVariantState = 'unknown' | 'idle' | 'loading' | 'loaded' | 'failed';\n\n/** Loads each named variant at most once at a time; a failure leaves it retryable. */\nexport function createVariants(addTables: (tables: readonly IconTable[]) => void, changed: () => void) {\n const loaders = new Map<string, IconVariantLoader>();\n const states = new Map<string, IconVariantState>();\n const pending = new Map<string, Promise<void>>();\n\n const set = (name: string, state: IconVariantState) => {\n states.set(name, state);\n changed();\n };\n\n return {\n provide(next: Readonly<Record<string, IconVariantLoader>>): void {\n for (const [name, loader] of Object.entries(next)) {\n loaders.set(name, loader);\n if (!states.has(name)) states.set(name, 'idle');\n }\n changed();\n },\n state(name: string): IconVariantState {\n return states.get(name) ?? 'unknown';\n },\n load(name: string): Promise<void> {\n const loader = loaders.get(name);\n if (!loader || states.get(name) === 'loaded') return Promise.resolve();\n const inFlight = pending.get(name);\n if (inFlight) return inFlight;\n set(name, 'loading');\n const run = Promise.resolve()\n .then(loader)\n .then((mod) => {\n addTables(mod.default);\n set(name, 'loaded');\n })\n .catch((error: unknown) => {\n if (isDev()) console.error(`icon variant \"${name}\" failed to load`, error);\n set(name, 'failed');\n })\n .finally(() => pending.delete(name));\n pending.set(name, run);\n return run;\n },\n };\n}\n","import { createEmitter } from '@weasel-js/registry';\nimport type { IconRef } from './names';\nimport type { IconGlyph, IconTable, IconVariantLoader } from './table';\nimport { createVariants, type IconVariantState } from './variants';\n\nexport type { IconVariantState } from './variants';\n\n/** One icon as the registry reports it. */\nexport interface IconEntry {\n readonly ref: IconRef;\n readonly glyph: IconGlyph;\n readonly owner: string;\n /** Registered with `override`, over a table's glyph. */\n readonly overridden: boolean;\n}\n\n/** Thrown when a table claims a namespace another owner holds. */\nexport class IconNamespaceClaimedError extends Error {\n constructor(readonly namespace: string, readonly owner: string, readonly claimant: string) {\n super(`icon namespace \"${namespace}\" belongs to ${owner}; ${claimant} cannot register under it`);\n this.name = 'IconNamespaceClaimedError';\n }\n}\n\n/** Resolves icon refs to glyphs across registered tables and overrides, and reports who owns each namespace. */\nexport interface IconRegistry {\n get(ref: string): IconGlyph | undefined;\n add(tables: IconTable | readonly IconTable[]): () => void;\n override(ref: IconRef, glyph: IconGlyph, source?: string): () => void;\n owner(namespace: string): string | undefined;\n /** The same array until the registry next changes, so it is safe to read through `useSyncExternalStore`. */\n entries(): readonly IconEntry[];\n provideVariants(loaders: Readonly<Record<string, IconVariantLoader>>): void;\n loadVariant(name: string): Promise<void>;\n variantState(name: string): IconVariantState;\n subscribe(listener: () => void): () => void;\n getVersion(): number;\n}\n\nconst OVERRIDE = 'override';\n\ninterface Layer {\n readonly glyph: IconGlyph;\n readonly owner: string;\n}\n\ninterface Slot {\n /** One layer per live table, oldest first; the newest is what the table side shows. */\n readonly tables: Map<object, Layer>;\n /** Explicit overrides, oldest first; the newest covers every table layer. */\n readonly overrides: Layer[];\n}\n\nconst lastOf = <T>(it: Iterable<T>): T | undefined => {\n let last: T | undefined;\n for (const v of it) last = v;\n return last;\n};\n\n/** A registry, optionally seeded with tables; each `add` and `override` returns its own release function. */\nexport function createIconRegistry(initial?: IconTable | readonly IconTable[]): IconRegistry {\n const slots = new Map<string, Slot>();\n // How many live tables hold each namespace, and whose it is while any do.\n const claims = new Map<string, { owner: string; count: number }>();\n const notify = createEmitter();\n let version = 0;\n let snapshot: { version: number; entries: readonly IconEntry[] } | null = null;\n const changed = () => {\n version++;\n notify.emit();\n };\n\n const slotFor = (key: string): Slot => {\n let slot = slots.get(key);\n if (!slot) slots.set(key, (slot = { tables: new Map(), overrides: [] }));\n return slot;\n };\n const prune = (key: string) => {\n const slot = slots.get(key);\n if (slot && slot.tables.size === 0 && slot.overrides.length === 0) slots.delete(key);\n };\n const live = (slot: Slot | undefined): Layer | undefined =>\n slot && (slot.overrides.at(-1) ?? lastOf(slot.tables.values()));\n\n const unclaim = (namespace: string) => {\n const held = claims.get(namespace);\n if (!held) return;\n if (held.count <= 1) claims.delete(namespace);\n else claims.set(namespace, { ...held, count: held.count - 1 });\n };\n\n const add = (tables: IconTable | readonly IconTable[]): (() => void) => {\n const list = Array.isArray(tables) ? tables : [tables as IconTable];\n // Check every claim, those within the batch included, before writing any: a refused batch registers nothing.\n const pending = new Map<string, string>();\n for (const t of list) {\n const owner = claims.get(t.namespace)?.owner ?? pending.get(t.namespace);\n if (owner !== undefined && owner !== t.owner) throw new IconNamespaceClaimedError(t.namespace, owner, t.owner);\n pending.set(t.namespace, t.owner);\n }\n const releases = list.map((t) => {\n const held = claims.get(t.namespace);\n claims.set(t.namespace, { owner: t.owner, count: (held?.count ?? 0) + 1 });\n const token = {};\n const keys = Object.keys(t.icons).map((name) => `${t.namespace}:${name}`);\n for (const key of keys) {\n slotFor(key).tables.set(token, { glyph: t.icons[key.slice(t.namespace.length + 1)]!, owner: t.owner });\n }\n let released = false;\n return () => {\n if (released) return;\n released = true;\n unclaim(t.namespace);\n for (const key of keys) {\n slots.get(key)?.tables.delete(token);\n prune(key);\n }\n };\n });\n changed();\n return () => {\n releases.forEach((r) => r());\n changed();\n };\n };\n\n const variants = createVariants((tables) => void add(tables), changed);\n if (initial) add(initial);\n\n return {\n get: (ref) => live(slots.get(ref))?.glyph,\n add,\n override(ref, glyph, source = OVERRIDE) {\n const layer: Layer = { glyph, owner: source };\n slotFor(ref).overrides.push(layer);\n changed();\n return () => {\n const slot = slots.get(ref);\n const i = slot ? slot.overrides.indexOf(layer) : -1;\n if (i === -1) return;\n slot!.overrides.splice(i, 1);\n prune(ref);\n changed();\n };\n },\n owner: (namespace) => claims.get(namespace)?.owner,\n entries() {\n if (snapshot?.version === version) return snapshot.entries;\n const entries: IconEntry[] = [];\n for (const [key, slot] of slots) {\n const top = live(slot)!;\n entries.push({ ref: key as IconRef, glyph: top.glyph, owner: top.owner, overridden: slot.overrides.length > 0 });\n }\n snapshot = { version, entries: Object.freeze(entries) };\n return snapshot.entries;\n },\n provideVariants: variants.provide,\n loadVariant: variants.load,\n variantState: variants.state,\n subscribe: notify.subscribe,\n getVersion: () => version,\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/names.ts","../src/variants.ts","../src/registry.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { QualifiedIconName } from './index.ts';\n\ndeclare const brand: unique symbol;\n\n/** A qualified icon name (`namespace:name`) that came from `icon()` or `toIconRef`. */\nexport type IconRef = string & { readonly [brand]: 'IconRef' };\n\nconst QUALIFIED = /^([^:\\s]+):([^:\\s]+)$/;\n\n/** `name` in `namespace`, unless it already names one. */\nexport function qualify(namespace: string, name: string): string {\n return name.includes(':') ? name : `${namespace}:${name}`;\n}\n\n/** The two halves of a qualified ref, or `undefined` for anything else. */\nexport function splitIconRef(ref: string): { namespace: string; name: string } | undefined {\n const m = QUALIFIED.exec(ref);\n return m ? { namespace: m[1]!, name: m[2]! } : undefined;\n}\n\n/** A string read at run time (a schema loaded as JSON) as a ref, when it is qualified. */\nexport function toIconRef(value: string | undefined): IconRef | undefined {\n return value !== undefined && QUALIFIED.test(value) ? (value as IconRef) : undefined;\n}\n\n/** A package's `icon()`: bare names resolve in `namespace` only. Generated into each package's `icons.gen.ts`. */\nexport function scopedIcon<Own extends string>(namespace: string) {\n return (name: Own | QualifiedIconName): IconRef => qualify(namespace, name) as IconRef;\n}\n","import { isDev } from '@weasel-js/registry';\nimport type { IconTable, IconVariantLoader } from './table';\n\n/** Where a named icon variant stands: no loader for it (`unknown`), a loader not yet run (`idle`), in flight, in, or failed. */\nexport type IconVariantState = 'unknown' | 'idle' | 'loading' | 'loaded' | 'failed';\n\n/** Loads each named variant at most once at a time; a failure leaves it retryable. */\nexport function createVariants(addTables: (tables: readonly IconTable[]) => void, changed: () => void) {\n const loaders = new Map<string, IconVariantLoader>();\n const states = new Map<string, IconVariantState>();\n const pending = new Map<string, Promise<void>>();\n\n const set = (name: string, state: IconVariantState) => {\n states.set(name, state);\n changed();\n };\n\n return {\n provide(next: Readonly<Record<string, IconVariantLoader>>): void {\n for (const [name, loader] of Object.entries(next)) {\n loaders.set(name, loader);\n if (!states.has(name)) states.set(name, 'idle');\n }\n changed();\n },\n state(name: string): IconVariantState {\n return states.get(name) ?? 'unknown';\n },\n load(name: string): Promise<void> {\n const loader = loaders.get(name);\n if (!loader || states.get(name) === 'loaded') return Promise.resolve();\n const inFlight = pending.get(name);\n if (inFlight) return inFlight;\n set(name, 'loading');\n const run = Promise.resolve()\n .then(loader)\n .then((mod) => {\n addTables(mod.default);\n set(name, 'loaded');\n })\n .catch((error: unknown) => {\n if (isDev()) console.error(`icon variant \"${name}\" failed to load`, error);\n set(name, 'failed');\n })\n .finally(() => pending.delete(name));\n pending.set(name, run);\n return run;\n },\n };\n}\n","import { createEmitter } from '@weasel-js/registry';\nimport type { IconRef } from './names';\nimport type { IconGlyph, IconTable, IconVariantLoader } from './table';\nimport { createVariants, type IconVariantState } from './variants';\n\nexport type { IconVariantState } from './variants';\n\n/** One icon as the registry reports it. */\nexport interface IconEntry {\n readonly ref: IconRef;\n readonly glyph: IconGlyph;\n readonly owner: string;\n /** Registered with `override`, over a table's glyph. */\n readonly overridden: boolean;\n}\n\n/** Thrown when a table claims a namespace another owner holds. */\nexport class IconNamespaceClaimedError extends Error {\n constructor(readonly namespace: string, readonly owner: string, readonly claimant: string) {\n super(`icon namespace \"${namespace}\" belongs to ${owner}; ${claimant} cannot register under it`);\n this.name = 'IconNamespaceClaimedError';\n }\n}\n\n/** Resolves icon refs to glyphs across registered tables and overrides, and reports who owns each namespace. */\nexport interface IconRegistry {\n get(ref: string): IconGlyph | undefined;\n add(tables: IconTable | readonly IconTable[]): () => void;\n override(ref: IconRef, glyph: IconGlyph, source?: string): () => void;\n owner(namespace: string): string | undefined;\n /** The same array until the registry next changes, so it is safe to read through `useSyncExternalStore`. */\n entries(): readonly IconEntry[];\n provideVariants(loaders: Readonly<Record<string, IconVariantLoader>>): void;\n loadVariant(name: string): Promise<void>;\n variantState(name: string): IconVariantState;\n subscribe(listener: () => void): () => void;\n getVersion(): number;\n}\n\nconst OVERRIDE = 'override';\n\ninterface Layer {\n readonly glyph: IconGlyph;\n readonly owner: string;\n}\n\ninterface Slot {\n /** One layer per live table, oldest first; the newest is what the table side shows. */\n readonly tables: Map<object, Layer>;\n /** Explicit overrides, oldest first; the newest covers every table layer. */\n readonly overrides: Layer[];\n}\n\nconst lastOf = <T>(it: Iterable<T>): T | undefined => {\n let last: T | undefined;\n for (const v of it) last = v;\n return last;\n};\n\n/** A registry, optionally seeded with tables; each `add` and `override` returns its own release function. */\nexport function createIconRegistry(initial?: IconTable | readonly IconTable[]): IconRegistry {\n const slots = new Map<string, Slot>();\n // How many live tables hold each namespace, and whose it is while any do.\n const claims = new Map<string, { owner: string; count: number }>();\n const notify = createEmitter();\n let version = 0;\n let snapshot: { version: number; entries: readonly IconEntry[] } | null = null;\n const changed = () => {\n version++;\n notify.emit();\n };\n\n const slotFor = (key: string): Slot => {\n let slot = slots.get(key);\n if (!slot) slots.set(key, (slot = { tables: new Map(), overrides: [] }));\n return slot;\n };\n const prune = (key: string) => {\n const slot = slots.get(key);\n if (slot && slot.tables.size === 0 && slot.overrides.length === 0) slots.delete(key);\n };\n const live = (slot: Slot | undefined): Layer | undefined =>\n slot && (slot.overrides.at(-1) ?? lastOf(slot.tables.values()));\n\n const unclaim = (namespace: string) => {\n const held = claims.get(namespace);\n if (!held) return;\n if (held.count <= 1) claims.delete(namespace);\n else claims.set(namespace, { ...held, count: held.count - 1 });\n };\n\n const add = (tables: IconTable | readonly IconTable[]): (() => void) => {\n const list = Array.isArray(tables) ? tables : [tables as IconTable];\n // Check every claim, those within the batch included, before writing any: a refused batch registers nothing.\n const pending = new Map<string, string>();\n for (const t of list) {\n const owner = claims.get(t.namespace)?.owner ?? pending.get(t.namespace);\n if (owner !== undefined && owner !== t.owner) throw new IconNamespaceClaimedError(t.namespace, owner, t.owner);\n pending.set(t.namespace, t.owner);\n }\n const releases = list.map((t) => {\n const held = claims.get(t.namespace);\n claims.set(t.namespace, { owner: t.owner, count: (held?.count ?? 0) + 1 });\n const token = {};\n const keys = Object.keys(t.icons).map((name) => `${t.namespace}:${name}`);\n for (const key of keys) {\n slotFor(key).tables.set(token, { glyph: t.icons[key.slice(t.namespace.length + 1)]!, owner: t.owner });\n }\n let released = false;\n return () => {\n if (released) return;\n released = true;\n unclaim(t.namespace);\n for (const key of keys) {\n slots.get(key)?.tables.delete(token);\n prune(key);\n }\n };\n });\n changed();\n return () => {\n releases.forEach((r) => r());\n changed();\n };\n };\n\n const variants = createVariants((tables) => void add(tables), changed);\n if (initial) add(initial);\n\n return {\n get: (ref) => live(slots.get(ref))?.glyph,\n add,\n override(ref, glyph, source = OVERRIDE) {\n const layer: Layer = { glyph, owner: source };\n slotFor(ref).overrides.push(layer);\n changed();\n return () => {\n const slot = slots.get(ref);\n const i = slot ? slot.overrides.indexOf(layer) : -1;\n if (i === -1) return;\n slot!.overrides.splice(i, 1);\n prune(ref);\n changed();\n };\n },\n owner: (namespace) => claims.get(namespace)?.owner,\n entries() {\n if (snapshot?.version === version) return snapshot.entries;\n const entries: IconEntry[] = [];\n for (const [key, slot] of slots) {\n const top = live(slot)!;\n entries.push({ ref: key as IconRef, glyph: top.glyph, owner: top.owner, overridden: slot.overrides.length > 0 });\n }\n snapshot = { version, entries: Object.freeze(entries) };\n return snapshot.entries;\n },\n provideVariants: variants.provide,\n loadVariant: variants.load,\n variantState: variants.state,\n subscribe: notify.subscribe,\n getVersion: () => version,\n };\n}\n"]}
|
package/dist/shapes.d.ts
ADDED
package/dist/shapes.js
ADDED
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
// src/icons.table.json
|
|
2
|
+
var icons_table_default = {
|
|
3
|
+
namespace: "shape",
|
|
4
|
+
owner: "@weasel-js/icons",
|
|
5
|
+
icons: {
|
|
6
|
+
triangle: {
|
|
7
|
+
body: '<path d="M10 3.59L17.4 16.41L2.6 16.41Z" stroke-linejoin="miter"/>',
|
|
8
|
+
fill: '<path d="M10 3.59L17.4 16.41L2.6 16.41Z" fill="currentColor" stroke="none"/>',
|
|
9
|
+
group: "Shapes",
|
|
10
|
+
tags: []
|
|
11
|
+
},
|
|
12
|
+
rightTriangle: {
|
|
13
|
+
body: '<path d="M2.6 17.4L2.6 2.6L17.4 17.4Z" stroke-linejoin="miter"/>',
|
|
14
|
+
fill: '<path d="M2.6 17.4L2.6 2.6L17.4 17.4Z" fill="currentColor" stroke="none"/>',
|
|
15
|
+
group: "Shapes",
|
|
16
|
+
tags: []
|
|
17
|
+
},
|
|
18
|
+
square: {
|
|
19
|
+
body: '<path d="M2.6 2.6L17.4 2.6L17.4 17.4L2.6 17.4Z" stroke-linejoin="miter"/>',
|
|
20
|
+
fill: '<path d="M2.6 2.6L17.4 2.6L17.4 17.4L2.6 17.4Z" fill="currentColor" stroke="none"/>',
|
|
21
|
+
group: "Shapes",
|
|
22
|
+
tags: []
|
|
23
|
+
},
|
|
24
|
+
rectangle: {
|
|
25
|
+
body: '<path d="M2.6 5.37L17.4 5.37L17.4 14.63L2.6 14.63Z" stroke-linejoin="miter"/>',
|
|
26
|
+
fill: '<path d="M2.6 5.37L17.4 5.37L17.4 14.63L2.6 14.63Z" fill="currentColor" stroke="none"/>',
|
|
27
|
+
group: "Shapes",
|
|
28
|
+
tags: []
|
|
29
|
+
},
|
|
30
|
+
diamond: {
|
|
31
|
+
body: '<path d="M10 2.6L17.4 10L10 17.4L2.6 10Z" stroke-linejoin="miter"/>',
|
|
32
|
+
fill: '<path d="M10 2.6L17.4 10L10 17.4L2.6 10Z" fill="currentColor" stroke="none"/>',
|
|
33
|
+
group: "Shapes",
|
|
34
|
+
tags: []
|
|
35
|
+
},
|
|
36
|
+
parallelogram: {
|
|
37
|
+
body: '<path d="M5.35 4.71L17.4 4.71L14.65 15.29L2.6 15.29Z" stroke-linejoin="miter"/>',
|
|
38
|
+
fill: '<path d="M5.35 4.71L17.4 4.71L14.65 15.29L2.6 15.29Z" fill="currentColor" stroke="none"/>',
|
|
39
|
+
group: "Shapes",
|
|
40
|
+
tags: []
|
|
41
|
+
},
|
|
42
|
+
trapezoid: {
|
|
43
|
+
body: '<path d="M5.35 4.71L14.65 4.71L17.4 15.29L2.6 15.29Z" stroke-linejoin="miter"/>',
|
|
44
|
+
fill: '<path d="M5.35 4.71L14.65 4.71L17.4 15.29L2.6 15.29Z" fill="currentColor" stroke="none"/>',
|
|
45
|
+
group: "Shapes",
|
|
46
|
+
tags: []
|
|
47
|
+
},
|
|
48
|
+
trapezoidSide: {
|
|
49
|
+
body: '<path d="M2.6 7.69L17.4 5.38L17.4 14.63L2.6 12.31Z" stroke-linejoin="miter"/>',
|
|
50
|
+
fill: '<path d="M2.6 7.69L17.4 5.38L17.4 14.63L2.6 12.31Z" fill="currentColor" stroke="none"/>',
|
|
51
|
+
group: "Shapes",
|
|
52
|
+
tags: []
|
|
53
|
+
},
|
|
54
|
+
kite: {
|
|
55
|
+
body: '<path d="M10 2.6L16.43 7.75L10 17.4L3.57 7.75Z" stroke-linejoin="miter"/>',
|
|
56
|
+
fill: '<path d="M10 2.6L16.43 7.75L10 17.4L3.57 7.75Z" fill="currentColor" stroke="none"/>',
|
|
57
|
+
group: "Shapes",
|
|
58
|
+
tags: []
|
|
59
|
+
},
|
|
60
|
+
pentagon: {
|
|
61
|
+
body: '<path d="M10 2.96L17.4 8.34L14.57 17.04L5.43 17.04L2.6 8.34Z" stroke-linejoin="miter"/>',
|
|
62
|
+
fill: '<path d="M10 2.96L17.4 8.34L14.57 17.04L5.43 17.04L2.6 8.34Z" fill="currentColor" stroke="none"/>',
|
|
63
|
+
group: "Shapes",
|
|
64
|
+
tags: []
|
|
65
|
+
},
|
|
66
|
+
hexagon: {
|
|
67
|
+
body: '<path d="M10 2.6L16.41 6.3L16.41 13.7L10 17.4L3.59 13.7L3.59 6.3Z" stroke-linejoin="miter"/>',
|
|
68
|
+
fill: '<path d="M10 2.6L16.41 6.3L16.41 13.7L10 17.4L3.59 13.7L3.59 6.3Z" fill="currentColor" stroke="none"/>',
|
|
69
|
+
group: "Shapes",
|
|
70
|
+
tags: []
|
|
71
|
+
},
|
|
72
|
+
hexagonFlat: {
|
|
73
|
+
body: '<path d="M17.4 10L13.7 16.41L6.3 16.41L2.6 10L6.3 3.59L13.7 3.59Z" stroke-linejoin="miter"/>',
|
|
74
|
+
fill: '<path d="M17.4 10L13.7 16.41L6.3 16.41L2.6 10L6.3 3.59L13.7 3.59Z" fill="currentColor" stroke="none"/>',
|
|
75
|
+
group: "Shapes",
|
|
76
|
+
tags: []
|
|
77
|
+
},
|
|
78
|
+
heptagon: {
|
|
79
|
+
body: '<path d="M10 2.79L15.93 5.64L17.4 12.06L13.29 17.21L6.71 17.21L2.6 12.06L4.07 5.64Z" stroke-linejoin="miter"/>',
|
|
80
|
+
fill: '<path d="M10 2.79L15.93 5.64L17.4 12.06L13.29 17.21L6.71 17.21L2.6 12.06L4.07 5.64Z" fill="currentColor" stroke="none"/>',
|
|
81
|
+
group: "Shapes",
|
|
82
|
+
tags: []
|
|
83
|
+
},
|
|
84
|
+
octagon: {
|
|
85
|
+
body: '<path d="M13.07 2.6L17.4 6.93L17.4 13.07L13.07 17.4L6.93 17.4L2.6 13.07L2.6 6.93L6.93 2.6Z" stroke-linejoin="miter"/>',
|
|
86
|
+
fill: '<path d="M13.07 2.6L17.4 6.93L17.4 13.07L13.07 17.4L6.93 17.4L2.6 13.07L2.6 6.93L6.93 2.6Z" fill="currentColor" stroke="none"/>',
|
|
87
|
+
group: "Shapes",
|
|
88
|
+
tags: []
|
|
89
|
+
},
|
|
90
|
+
decagon: {
|
|
91
|
+
body: '<path d="M10 2.6L14.35 4.01L17.04 7.71L17.04 12.29L14.35 15.99L10 17.4L5.65 15.99L2.96 12.29L2.96 7.71L5.65 4.01Z" stroke-linejoin="miter"/>',
|
|
92
|
+
fill: '<path d="M10 2.6L14.35 4.01L17.04 7.71L17.04 12.29L14.35 15.99L10 17.4L5.65 15.99L2.96 12.29L2.96 7.71L5.65 4.01Z" fill="currentColor" stroke="none"/>',
|
|
93
|
+
group: "Shapes",
|
|
94
|
+
tags: []
|
|
95
|
+
},
|
|
96
|
+
dodecagon: {
|
|
97
|
+
body: '<path d="M10 2.6L13.7 3.59L16.41 6.3L17.4 10L16.41 13.7L13.7 16.41L10 17.4L6.3 16.41L3.59 13.7L2.6 10L3.59 6.3L6.3 3.59Z" stroke-linejoin="miter"/>',
|
|
98
|
+
fill: '<path d="M10 2.6L13.7 3.59L16.41 6.3L17.4 10L16.41 13.7L13.7 16.41L10 17.4L6.3 16.41L3.59 13.7L2.6 10L3.59 6.3L6.3 3.59Z" fill="currentColor" stroke="none"/>',
|
|
99
|
+
group: "Shapes",
|
|
100
|
+
tags: []
|
|
101
|
+
},
|
|
102
|
+
cross: {
|
|
103
|
+
body: '<path d="M7.63 2.6L12.37 2.6L12.37 7.63L17.4 7.63L17.4 12.37L12.37 12.37L12.37 17.4L7.63 17.4L7.63 12.37L2.6 12.37L2.6 7.63L7.63 7.63Z" stroke-linejoin="miter"/>',
|
|
104
|
+
fill: '<path d="M7.63 2.6L12.37 2.6L12.37 7.63L17.4 7.63L17.4 12.37L12.37 12.37L12.37 17.4L7.63 17.4L7.63 12.37L2.6 12.37L2.6 7.63L7.63 7.63Z" fill="currentColor" stroke="none"/>',
|
|
105
|
+
group: "Shapes",
|
|
106
|
+
tags: []
|
|
107
|
+
},
|
|
108
|
+
lShape: {
|
|
109
|
+
body: '<path d="M2.6 2.6L8.82 2.6L8.82 11.78L17.4 11.78L17.4 17.4L2.6 17.4Z" stroke-linejoin="miter"/>',
|
|
110
|
+
fill: '<path d="M2.6 2.6L8.82 2.6L8.82 11.78L17.4 11.78L17.4 17.4L2.6 17.4Z" fill="currentColor" stroke="none"/>',
|
|
111
|
+
group: "Shapes",
|
|
112
|
+
tags: []
|
|
113
|
+
},
|
|
114
|
+
chevron: {
|
|
115
|
+
body: '<path d="M2.6 4.38L10 10.59L17.4 4.38L17.4 9.41L10 15.62L2.6 9.41Z" stroke-linejoin="miter"/>',
|
|
116
|
+
fill: '<path d="M2.6 4.38L10 10.59L17.4 4.38L17.4 9.41L10 15.62L2.6 9.41Z" fill="currentColor" stroke="none"/>',
|
|
117
|
+
group: "Shapes",
|
|
118
|
+
tags: []
|
|
119
|
+
},
|
|
120
|
+
star: {
|
|
121
|
+
body: '<path d="M10 2.96L12.2 7.72L17.4 8.34L13.55 11.9L14.57 17.04L10 14.48L5.43 17.04L6.45 11.9L2.6 8.34L7.8 7.72Z" stroke-linejoin="miter"/>',
|
|
122
|
+
fill: '<path d="M10 2.96L12.2 7.72L17.4 8.34L13.55 11.9L14.57 17.04L10 14.48L5.43 17.04L6.45 11.9L2.6 8.34L7.8 7.72Z" fill="currentColor" stroke="none"/>',
|
|
123
|
+
group: "Shapes",
|
|
124
|
+
tags: []
|
|
125
|
+
},
|
|
126
|
+
star4: {
|
|
127
|
+
body: '<path d="M10 2.6L11.99 8.01L17.4 10L11.99 11.99L10 17.4L8.01 11.99L2.6 10L8.01 8.01Z" stroke-linejoin="miter"/>',
|
|
128
|
+
fill: '<path d="M10 2.6L11.99 8.01L17.4 10L11.99 11.99L10 17.4L8.01 11.99L2.6 10L8.01 8.01Z" fill="currentColor" stroke="none"/>',
|
|
129
|
+
group: "Shapes",
|
|
130
|
+
tags: []
|
|
131
|
+
},
|
|
132
|
+
star6: {
|
|
133
|
+
body: '<path d="M10 2.6L12.07 6.41L16.41 6.3L14.14 10L16.41 13.7L12.07 13.59L10 17.4L7.93 13.59L3.59 13.7L5.86 10L3.59 6.3L7.93 6.41Z" stroke-linejoin="miter"/>',
|
|
134
|
+
fill: '<path d="M10 2.6L12.07 6.41L16.41 6.3L14.14 10L16.41 13.7L12.07 13.59L10 17.4L7.93 13.59L3.59 13.7L5.86 10L3.59 6.3L7.93 6.41Z" fill="currentColor" stroke="none"/>',
|
|
135
|
+
group: "Shapes",
|
|
136
|
+
tags: []
|
|
137
|
+
},
|
|
138
|
+
star8: {
|
|
139
|
+
body: '<path d="M10 2.6L11.76 5.76L15.23 4.77L14.24 8.24L17.4 10L14.24 11.76L15.23 15.23L11.76 14.24L10 17.4L8.24 14.24L4.77 15.23L5.76 11.76L2.6 10L5.76 8.24L4.77 4.77L8.24 5.76Z" stroke-linejoin="miter"/>',
|
|
140
|
+
fill: '<path d="M10 2.6L11.76 5.76L15.23 4.77L14.24 8.24L17.4 10L14.24 11.76L15.23 15.23L11.76 14.24L10 17.4L8.24 14.24L4.77 15.23L5.76 11.76L2.6 10L5.76 8.24L4.77 4.77L8.24 5.76Z" fill="currentColor" stroke="none"/>',
|
|
141
|
+
group: "Shapes",
|
|
142
|
+
tags: []
|
|
143
|
+
},
|
|
144
|
+
pentagram: {
|
|
145
|
+
body: '<path d="M10 2.96L14.57 17.04L2.6 8.34L17.4 8.34L5.43 17.04Z" stroke-linejoin="miter"/>',
|
|
146
|
+
fill: '<path d="M10 2.96L14.57 17.04L2.6 8.34L17.4 8.34L5.43 17.04Z" fill="currentColor" stroke="none" fill-rule="evenodd"/>',
|
|
147
|
+
group: "Shapes",
|
|
148
|
+
tags: []
|
|
149
|
+
},
|
|
150
|
+
circle: {
|
|
151
|
+
body: '<path d="M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10Z"/>',
|
|
152
|
+
fill: '<path d="M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10Z" fill="currentColor" stroke="none"/>',
|
|
153
|
+
group: "Shapes",
|
|
154
|
+
tags: []
|
|
155
|
+
},
|
|
156
|
+
ellipse: {
|
|
157
|
+
body: '<path d="M2.6 10A7.4 4.74 0 1 1 17.4 10A7.4 4.74 0 1 1 2.6 10Z"/>',
|
|
158
|
+
fill: '<path d="M2.6 10A7.4 4.74 0 1 1 17.4 10A7.4 4.74 0 1 1 2.6 10Z" fill="currentColor" stroke="none"/>',
|
|
159
|
+
group: "Shapes",
|
|
160
|
+
tags: []
|
|
161
|
+
},
|
|
162
|
+
semicircle: {
|
|
163
|
+
body: '<path d="M2.6 13.7A7.4 7.4 0 0 1 17.4 13.7Z"/>',
|
|
164
|
+
fill: '<path d="M2.6 13.7A7.4 7.4 0 0 1 17.4 13.7Z" fill="currentColor" stroke="none"/>',
|
|
165
|
+
group: "Shapes",
|
|
166
|
+
tags: []
|
|
167
|
+
},
|
|
168
|
+
quarter: {
|
|
169
|
+
body: '<path d="M2.6 17.4V2.6A14.8 14.8 0 0 1 17.4 17.4Z"/>',
|
|
170
|
+
fill: '<path d="M2.6 17.4V2.6A14.8 14.8 0 0 1 17.4 17.4Z" fill="currentColor" stroke="none"/>',
|
|
171
|
+
group: "Shapes",
|
|
172
|
+
tags: []
|
|
173
|
+
},
|
|
174
|
+
stadium: {
|
|
175
|
+
body: '<path d="M6.74 5.86H13.26A4.14 4.14 0 0 1 13.26 14.14H6.74A4.14 4.14 0 0 1 6.74 5.86Z"/>',
|
|
176
|
+
fill: '<path d="M6.74 5.86H13.26A4.14 4.14 0 0 1 13.26 14.14H6.74A4.14 4.14 0 0 1 6.74 5.86Z" fill="currentColor" stroke="none"/>',
|
|
177
|
+
group: "Shapes",
|
|
178
|
+
tags: []
|
|
179
|
+
},
|
|
180
|
+
roundedSquare: {
|
|
181
|
+
body: '<path d="M6 2.6H14A3.4 3.4 0 0 1 17.4 6V14A3.4 3.4 0 0 1 14 17.4H6A3.4 3.4 0 0 1 2.6 14V6A3.4 3.4 0 0 1 6 2.6Z"/>',
|
|
182
|
+
fill: '<path d="M6 2.6H14A3.4 3.4 0 0 1 17.4 6V14A3.4 3.4 0 0 1 14 17.4H6A3.4 3.4 0 0 1 2.6 14V6A3.4 3.4 0 0 1 6 2.6Z" fill="currentColor" stroke="none"/>',
|
|
183
|
+
group: "Shapes",
|
|
184
|
+
tags: []
|
|
185
|
+
},
|
|
186
|
+
ring: {
|
|
187
|
+
body: '<path d="M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10ZM6.15 10A3.85 3.85 0 1 0 13.85 10A3.85 3.85 0 1 0 6.15 10Z"/>',
|
|
188
|
+
fill: '<path d="M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10ZM6.15 10A3.85 3.85 0 1 0 13.85 10A3.85 3.85 0 1 0 6.15 10Z" fill="currentColor" stroke="none" fill-rule="evenodd"/>',
|
|
189
|
+
group: "Shapes",
|
|
190
|
+
tags: []
|
|
191
|
+
},
|
|
192
|
+
crescent: {
|
|
193
|
+
body: '<path d="M6.3 2.6A7.4 7.4 0 1 1 6.3 17.4A8.51 8.51 0 0 0 6.3 2.6Z"/>',
|
|
194
|
+
fill: '<path d="M6.3 2.6A7.4 7.4 0 1 1 6.3 17.4A8.51 8.51 0 0 0 6.3 2.6Z" fill="currentColor" stroke="none"/>',
|
|
195
|
+
group: "Shapes",
|
|
196
|
+
tags: []
|
|
197
|
+
},
|
|
198
|
+
lens: {
|
|
199
|
+
body: '<path d="M10 2.6A9.99 9.99 0 0 1 10 17.4A9.99 9.99 0 0 1 10 2.6Z"/>',
|
|
200
|
+
fill: '<path d="M10 2.6A9.99 9.99 0 0 1 10 17.4A9.99 9.99 0 0 1 10 2.6Z" fill="currentColor" stroke="none"/>',
|
|
201
|
+
group: "Shapes",
|
|
202
|
+
tags: []
|
|
203
|
+
},
|
|
204
|
+
sector: {
|
|
205
|
+
body: '<path d="M10 14.63L2.6 9.06A9.27 9.27 0 0 1 17.4 9.06Z"/>',
|
|
206
|
+
fill: '<path d="M10 14.63L2.6 9.06A9.27 9.27 0 0 1 17.4 9.06Z" fill="currentColor" stroke="none"/>',
|
|
207
|
+
group: "Shapes",
|
|
208
|
+
tags: []
|
|
209
|
+
},
|
|
210
|
+
segment: {
|
|
211
|
+
body: '<path d="M2.6 12.59A7.88 7.88 0 0 1 17.4 12.59Z"/>',
|
|
212
|
+
fill: '<path d="M2.6 12.59A7.88 7.88 0 0 1 17.4 12.59Z" fill="currentColor" stroke="none"/>',
|
|
213
|
+
group: "Shapes",
|
|
214
|
+
tags: []
|
|
215
|
+
},
|
|
216
|
+
arch: {
|
|
217
|
+
body: '<path d="M2.6 17.4V10A7.4 7.4 0 0 1 17.4 10V17.4Z"/>',
|
|
218
|
+
fill: '<path d="M2.6 17.4V10A7.4 7.4 0 0 1 17.4 10V17.4Z" fill="currentColor" stroke="none"/>',
|
|
219
|
+
group: "Shapes",
|
|
220
|
+
tags: []
|
|
221
|
+
},
|
|
222
|
+
teardrop: {
|
|
223
|
+
body: '<path d="M10 2.6L5.9 10.75A4.59 4.59 0 1 0 14.1 10.75Z"/>',
|
|
224
|
+
fill: '<path d="M10 2.6L5.9 10.75A4.59 4.59 0 1 0 14.1 10.75Z" fill="currentColor" stroke="none"/>',
|
|
225
|
+
group: "Shapes",
|
|
226
|
+
tags: []
|
|
227
|
+
},
|
|
228
|
+
egg: {
|
|
229
|
+
body: '<path d="M10 2.6C14.59 2.6 16.07 9.26 16.07 12.22C16.07 15.77 13.26 17.4 10 17.4C6.74 17.4 3.93 15.77 3.93 12.22C3.93 9.26 5.41 2.6 10 2.6Z"/>',
|
|
230
|
+
fill: '<path d="M10 2.6C14.59 2.6 16.07 9.26 16.07 12.22C16.07 15.77 13.26 17.4 10 17.4C6.74 17.4 3.93 15.77 3.93 12.22C3.93 9.26 5.41 2.6 10 2.6Z" fill="currentColor" stroke="none"/>',
|
|
231
|
+
group: "Shapes",
|
|
232
|
+
tags: []
|
|
233
|
+
},
|
|
234
|
+
heart: {
|
|
235
|
+
body: '<path d="M10 6.51L10.01 6.42L10.05 6.16L10.18 5.76L10.41 5.26L10.78 4.72L11.27 4.2L11.89 3.76L12.62 3.45L13.42 3.31L14.25 3.36L15.08 3.61L15.84 4.03L16.48 4.62L16.98 5.33L17.29 6.12L17.4 6.97L17.29 7.84L16.98 8.7L16.48 9.54L15.84 10.34L15.08 11.12L14.25 11.86L13.42 12.57L12.62 13.27L11.89 13.93L11.27 14.56L10.78 15.14L10.41 15.66L10.18 16.09L10.05 16.41L10.01 16.62L10 16.69L9.99 16.62L9.95 16.41L9.82 16.09L9.59 15.66L9.22 15.14L8.73 14.56L8.11 13.93L7.38 13.27L6.58 12.57L5.75 11.86L4.92 11.12L4.16 10.34L3.52 9.54L3.02 8.7L2.71 7.84L2.6 6.97L2.71 6.12L3.02 5.33L3.52 4.62L4.16 4.03L4.92 3.61L5.75 3.36L6.58 3.31L7.38 3.45L8.11 3.76L8.73 4.2L9.22 4.72L9.59 5.26L9.82 5.76L9.95 6.16L9.99 6.42L10 6.51Z"/>',
|
|
236
|
+
fill: '<path d="M10 6.51L10.01 6.42L10.05 6.16L10.18 5.76L10.41 5.26L10.78 4.72L11.27 4.2L11.89 3.76L12.62 3.45L13.42 3.31L14.25 3.36L15.08 3.61L15.84 4.03L16.48 4.62L16.98 5.33L17.29 6.12L17.4 6.97L17.29 7.84L16.98 8.7L16.48 9.54L15.84 10.34L15.08 11.12L14.25 11.86L13.42 12.57L12.62 13.27L11.89 13.93L11.27 14.56L10.78 15.14L10.41 15.66L10.18 16.09L10.05 16.41L10.01 16.62L10 16.69L9.99 16.62L9.95 16.41L9.82 16.09L9.59 15.66L9.22 15.14L8.73 14.56L8.11 13.93L7.38 13.27L6.58 12.57L5.75 11.86L4.92 11.12L4.16 10.34L3.52 9.54L3.02 8.7L2.71 7.84L2.6 6.97L2.71 6.12L3.02 5.33L3.52 4.62L4.16 4.03L4.92 3.61L5.75 3.36L6.58 3.31L7.38 3.45L8.11 3.76L8.73 4.2L9.22 4.72L9.59 5.26L9.82 5.76L9.95 6.16L9.99 6.42L10 6.51Z" fill="currentColor" stroke="none"/>',
|
|
237
|
+
group: "Shapes",
|
|
238
|
+
tags: []
|
|
239
|
+
},
|
|
240
|
+
angle: {
|
|
241
|
+
body: '<path d="M17.4 16.34L2.6 16.34L14.8 3.66M6.12 16.34A3.52 3.52 0 0 0 5.04 13.8"/>',
|
|
242
|
+
fill: '<path d="M2.6 16.34L17.4 16.34L14.8 3.66Z" fill="currentColor" stroke="none"/>',
|
|
243
|
+
group: "Shapes",
|
|
244
|
+
tags: []
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
};
|
|
248
|
+
|
|
249
|
+
// src/icons.table.ts
|
|
250
|
+
var icons = icons_table_default;
|
|
251
|
+
|
|
252
|
+
export { icons };
|
|
253
|
+
//# sourceMappingURL=shapes.js.map
|
|
254
|
+
//# sourceMappingURL=shapes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/icons.table.json","../src/icons.table.ts"],"names":[],"mappings":";AAAA,IAAA,mBAAA,GAAA;AAAA,EACE,SAAA,EAAa,OAAA;AAAA,EACb,KAAA,EAAS,kBAAA;AAAA,EACT,KAAA,EAAS;AAAA,IACP,QAAA,EAAY;AAAA,MACV,IAAA,EAAQ,oEAAA;AAAA,MACR,IAAA,EAAQ,8EAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,aAAA,EAAiB;AAAA,MACf,IAAA,EAAQ,kEAAA;AAAA,MACR,IAAA,EAAQ,4EAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,MAAA,EAAU;AAAA,MACR,IAAA,EAAQ,2EAAA;AAAA,MACR,IAAA,EAAQ,qFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,SAAA,EAAa;AAAA,MACX,IAAA,EAAQ,+EAAA;AAAA,MACR,IAAA,EAAQ,yFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,qEAAA;AAAA,MACR,IAAA,EAAQ,+EAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,aAAA,EAAiB;AAAA,MACf,IAAA,EAAQ,iFAAA;AAAA,MACR,IAAA,EAAQ,2FAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,SAAA,EAAa;AAAA,MACX,IAAA,EAAQ,iFAAA;AAAA,MACR,IAAA,EAAQ,2FAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,aAAA,EAAiB;AAAA,MACf,IAAA,EAAQ,+EAAA;AAAA,MACR,IAAA,EAAQ,yFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,IAAA,EAAQ;AAAA,MACN,IAAA,EAAQ,2EAAA;AAAA,MACR,IAAA,EAAQ,qFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,QAAA,EAAY;AAAA,MACV,IAAA,EAAQ,yFAAA;AAAA,MACR,IAAA,EAAQ,mGAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,8FAAA;AAAA,MACR,IAAA,EAAQ,wGAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,WAAA,EAAe;AAAA,MACb,IAAA,EAAQ,8FAAA;AAAA,MACR,IAAA,EAAQ,wGAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,QAAA,EAAY;AAAA,MACV,IAAA,EAAQ,gHAAA;AAAA,MACR,IAAA,EAAQ,0HAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,uHAAA;AAAA,MACR,IAAA,EAAQ,iIAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,8IAAA;AAAA,MACR,IAAA,EAAQ,wJAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,SAAA,EAAa;AAAA,MACX,IAAA,EAAQ,qJAAA;AAAA,MACR,IAAA,EAAQ,+JAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,KAAA,EAAS;AAAA,MACP,IAAA,EAAQ,mKAAA;AAAA,MACR,IAAA,EAAQ,6KAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,MAAA,EAAU;AAAA,MACR,IAAA,EAAQ,iGAAA;AAAA,MACR,IAAA,EAAQ,2GAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,+FAAA;AAAA,MACR,IAAA,EAAQ,yGAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,IAAA,EAAQ;AAAA,MACN,IAAA,EAAQ,0IAAA;AAAA,MACR,IAAA,EAAQ,oJAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,KAAA,EAAS;AAAA,MACP,IAAA,EAAQ,iHAAA;AAAA,MACR,IAAA,EAAQ,2HAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,KAAA,EAAS;AAAA,MACP,IAAA,EAAQ,2JAAA;AAAA,MACR,IAAA,EAAQ,qKAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,KAAA,EAAS;AAAA,MACP,IAAA,EAAQ,yMAAA;AAAA,MACR,IAAA,EAAQ,mNAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,SAAA,EAAa;AAAA,MACX,IAAA,EAAQ,yFAAA;AAAA,MACR,IAAA,EAAQ,uHAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,MAAA,EAAU;AAAA,MACR,IAAA,EAAQ,iEAAA;AAAA,MACR,IAAA,EAAQ,mGAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,mEAAA;AAAA,MACR,IAAA,EAAQ,qGAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,UAAA,EAAc;AAAA,MACZ,IAAA,EAAQ,gDAAA;AAAA,MACR,IAAA,EAAQ,kFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,sDAAA;AAAA,MACR,IAAA,EAAQ,wFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,0FAAA;AAAA,MACR,IAAA,EAAQ,4HAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,aAAA,EAAiB;AAAA,MACf,IAAA,EAAQ,mHAAA;AAAA,MACR,IAAA,EAAQ,qJAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,IAAA,EAAQ;AAAA,MACN,IAAA,EAAQ,2HAAA;AAAA,MACR,IAAA,EAAQ,iLAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,QAAA,EAAY;AAAA,MACV,IAAA,EAAQ,sEAAA;AAAA,MACR,IAAA,EAAQ,wGAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,IAAA,EAAQ;AAAA,MACN,IAAA,EAAQ,qEAAA;AAAA,MACR,IAAA,EAAQ,uGAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,MAAA,EAAU;AAAA,MACR,IAAA,EAAQ,2DAAA;AAAA,MACR,IAAA,EAAQ,6FAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,OAAA,EAAW;AAAA,MACT,IAAA,EAAQ,oDAAA;AAAA,MACR,IAAA,EAAQ,sFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,IAAA,EAAQ;AAAA,MACN,IAAA,EAAQ,sDAAA;AAAA,MACR,IAAA,EAAQ,wFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,QAAA,EAAY;AAAA,MACV,IAAA,EAAQ,2DAAA;AAAA,MACR,IAAA,EAAQ,6FAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,GAAA,EAAO;AAAA,MACL,IAAA,EAAQ,gJAAA;AAAA,MACR,IAAA,EAAQ,kLAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,KAAA,EAAS;AAAA,MACP,IAAA,EAAQ,qsBAAA;AAAA,MACR,IAAA,EAAQ,uuBAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC,KACX;AAAA,IACA,KAAA,EAAS;AAAA,MACP,IAAA,EAAQ,kFAAA;AAAA,MACR,IAAA,EAAQ,gFAAA;AAAA,MACR,KAAA,EAAS,QAAA;AAAA,MACT,MAAQ;AAAC;AACX;AAEJ,CAAA;;;AC/OO,IAAM,KAAA,GAAmB","file":"shapes.js","sourcesContent":["{\n \"namespace\": \"shape\",\n \"owner\": \"@weasel-js/icons\",\n \"icons\": {\n \"triangle\": {\n \"body\": \"<path d=\\\"M10 3.59L17.4 16.41L2.6 16.41Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 3.59L17.4 16.41L2.6 16.41Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"rightTriangle\": {\n \"body\": \"<path d=\\\"M2.6 17.4L2.6 2.6L17.4 17.4Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 17.4L2.6 2.6L17.4 17.4Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"square\": {\n \"body\": \"<path d=\\\"M2.6 2.6L17.4 2.6L17.4 17.4L2.6 17.4Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 2.6L17.4 2.6L17.4 17.4L2.6 17.4Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"rectangle\": {\n \"body\": \"<path d=\\\"M2.6 5.37L17.4 5.37L17.4 14.63L2.6 14.63Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 5.37L17.4 5.37L17.4 14.63L2.6 14.63Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"diamond\": {\n \"body\": \"<path d=\\\"M10 2.6L17.4 10L10 17.4L2.6 10Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L17.4 10L10 17.4L2.6 10Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"parallelogram\": {\n \"body\": \"<path d=\\\"M5.35 4.71L17.4 4.71L14.65 15.29L2.6 15.29Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M5.35 4.71L17.4 4.71L14.65 15.29L2.6 15.29Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"trapezoid\": {\n \"body\": \"<path d=\\\"M5.35 4.71L14.65 4.71L17.4 15.29L2.6 15.29Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M5.35 4.71L14.65 4.71L17.4 15.29L2.6 15.29Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"trapezoidSide\": {\n \"body\": \"<path d=\\\"M2.6 7.69L17.4 5.38L17.4 14.63L2.6 12.31Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 7.69L17.4 5.38L17.4 14.63L2.6 12.31Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"kite\": {\n \"body\": \"<path d=\\\"M10 2.6L16.43 7.75L10 17.4L3.57 7.75Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L16.43 7.75L10 17.4L3.57 7.75Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"pentagon\": {\n \"body\": \"<path d=\\\"M10 2.96L17.4 8.34L14.57 17.04L5.43 17.04L2.6 8.34Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.96L17.4 8.34L14.57 17.04L5.43 17.04L2.6 8.34Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"hexagon\": {\n \"body\": \"<path d=\\\"M10 2.6L16.41 6.3L16.41 13.7L10 17.4L3.59 13.7L3.59 6.3Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L16.41 6.3L16.41 13.7L10 17.4L3.59 13.7L3.59 6.3Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"hexagonFlat\": {\n \"body\": \"<path d=\\\"M17.4 10L13.7 16.41L6.3 16.41L2.6 10L6.3 3.59L13.7 3.59Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M17.4 10L13.7 16.41L6.3 16.41L2.6 10L6.3 3.59L13.7 3.59Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"heptagon\": {\n \"body\": \"<path d=\\\"M10 2.79L15.93 5.64L17.4 12.06L13.29 17.21L6.71 17.21L2.6 12.06L4.07 5.64Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.79L15.93 5.64L17.4 12.06L13.29 17.21L6.71 17.21L2.6 12.06L4.07 5.64Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"octagon\": {\n \"body\": \"<path d=\\\"M13.07 2.6L17.4 6.93L17.4 13.07L13.07 17.4L6.93 17.4L2.6 13.07L2.6 6.93L6.93 2.6Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M13.07 2.6L17.4 6.93L17.4 13.07L13.07 17.4L6.93 17.4L2.6 13.07L2.6 6.93L6.93 2.6Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"decagon\": {\n \"body\": \"<path d=\\\"M10 2.6L14.35 4.01L17.04 7.71L17.04 12.29L14.35 15.99L10 17.4L5.65 15.99L2.96 12.29L2.96 7.71L5.65 4.01Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L14.35 4.01L17.04 7.71L17.04 12.29L14.35 15.99L10 17.4L5.65 15.99L2.96 12.29L2.96 7.71L5.65 4.01Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"dodecagon\": {\n \"body\": \"<path d=\\\"M10 2.6L13.7 3.59L16.41 6.3L17.4 10L16.41 13.7L13.7 16.41L10 17.4L6.3 16.41L3.59 13.7L2.6 10L3.59 6.3L6.3 3.59Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L13.7 3.59L16.41 6.3L17.4 10L16.41 13.7L13.7 16.41L10 17.4L6.3 16.41L3.59 13.7L2.6 10L3.59 6.3L6.3 3.59Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"cross\": {\n \"body\": \"<path d=\\\"M7.63 2.6L12.37 2.6L12.37 7.63L17.4 7.63L17.4 12.37L12.37 12.37L12.37 17.4L7.63 17.4L7.63 12.37L2.6 12.37L2.6 7.63L7.63 7.63Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M7.63 2.6L12.37 2.6L12.37 7.63L17.4 7.63L17.4 12.37L12.37 12.37L12.37 17.4L7.63 17.4L7.63 12.37L2.6 12.37L2.6 7.63L7.63 7.63Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"lShape\": {\n \"body\": \"<path d=\\\"M2.6 2.6L8.82 2.6L8.82 11.78L17.4 11.78L17.4 17.4L2.6 17.4Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 2.6L8.82 2.6L8.82 11.78L17.4 11.78L17.4 17.4L2.6 17.4Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"chevron\": {\n \"body\": \"<path d=\\\"M2.6 4.38L10 10.59L17.4 4.38L17.4 9.41L10 15.62L2.6 9.41Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 4.38L10 10.59L17.4 4.38L17.4 9.41L10 15.62L2.6 9.41Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"star\": {\n \"body\": \"<path d=\\\"M10 2.96L12.2 7.72L17.4 8.34L13.55 11.9L14.57 17.04L10 14.48L5.43 17.04L6.45 11.9L2.6 8.34L7.8 7.72Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.96L12.2 7.72L17.4 8.34L13.55 11.9L14.57 17.04L10 14.48L5.43 17.04L6.45 11.9L2.6 8.34L7.8 7.72Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"star4\": {\n \"body\": \"<path d=\\\"M10 2.6L11.99 8.01L17.4 10L11.99 11.99L10 17.4L8.01 11.99L2.6 10L8.01 8.01Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L11.99 8.01L17.4 10L11.99 11.99L10 17.4L8.01 11.99L2.6 10L8.01 8.01Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"star6\": {\n \"body\": \"<path d=\\\"M10 2.6L12.07 6.41L16.41 6.3L14.14 10L16.41 13.7L12.07 13.59L10 17.4L7.93 13.59L3.59 13.7L5.86 10L3.59 6.3L7.93 6.41Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L12.07 6.41L16.41 6.3L14.14 10L16.41 13.7L12.07 13.59L10 17.4L7.93 13.59L3.59 13.7L5.86 10L3.59 6.3L7.93 6.41Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"star8\": {\n \"body\": \"<path d=\\\"M10 2.6L11.76 5.76L15.23 4.77L14.24 8.24L17.4 10L14.24 11.76L15.23 15.23L11.76 14.24L10 17.4L8.24 14.24L4.77 15.23L5.76 11.76L2.6 10L5.76 8.24L4.77 4.77L8.24 5.76Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L11.76 5.76L15.23 4.77L14.24 8.24L17.4 10L14.24 11.76L15.23 15.23L11.76 14.24L10 17.4L8.24 14.24L4.77 15.23L5.76 11.76L2.6 10L5.76 8.24L4.77 4.77L8.24 5.76Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"pentagram\": {\n \"body\": \"<path d=\\\"M10 2.96L14.57 17.04L2.6 8.34L17.4 8.34L5.43 17.04Z\\\" stroke-linejoin=\\\"miter\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.96L14.57 17.04L2.6 8.34L17.4 8.34L5.43 17.04Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\" fill-rule=\\\"evenodd\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"circle\": {\n \"body\": \"<path d=\\\"M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10Z\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"ellipse\": {\n \"body\": \"<path d=\\\"M2.6 10A7.4 4.74 0 1 1 17.4 10A7.4 4.74 0 1 1 2.6 10Z\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 10A7.4 4.74 0 1 1 17.4 10A7.4 4.74 0 1 1 2.6 10Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"semicircle\": {\n \"body\": \"<path d=\\\"M2.6 13.7A7.4 7.4 0 0 1 17.4 13.7Z\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 13.7A7.4 7.4 0 0 1 17.4 13.7Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"quarter\": {\n \"body\": \"<path d=\\\"M2.6 17.4V2.6A14.8 14.8 0 0 1 17.4 17.4Z\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 17.4V2.6A14.8 14.8 0 0 1 17.4 17.4Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"stadium\": {\n \"body\": \"<path d=\\\"M6.74 5.86H13.26A4.14 4.14 0 0 1 13.26 14.14H6.74A4.14 4.14 0 0 1 6.74 5.86Z\\\"/>\",\n \"fill\": \"<path d=\\\"M6.74 5.86H13.26A4.14 4.14 0 0 1 13.26 14.14H6.74A4.14 4.14 0 0 1 6.74 5.86Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"roundedSquare\": {\n \"body\": \"<path d=\\\"M6 2.6H14A3.4 3.4 0 0 1 17.4 6V14A3.4 3.4 0 0 1 14 17.4H6A3.4 3.4 0 0 1 2.6 14V6A3.4 3.4 0 0 1 6 2.6Z\\\"/>\",\n \"fill\": \"<path d=\\\"M6 2.6H14A3.4 3.4 0 0 1 17.4 6V14A3.4 3.4 0 0 1 14 17.4H6A3.4 3.4 0 0 1 2.6 14V6A3.4 3.4 0 0 1 6 2.6Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"ring\": {\n \"body\": \"<path d=\\\"M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10ZM6.15 10A3.85 3.85 0 1 0 13.85 10A3.85 3.85 0 1 0 6.15 10Z\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 10A7.4 7.4 0 1 1 17.4 10A7.4 7.4 0 1 1 2.6 10ZM6.15 10A3.85 3.85 0 1 0 13.85 10A3.85 3.85 0 1 0 6.15 10Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\" fill-rule=\\\"evenodd\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"crescent\": {\n \"body\": \"<path d=\\\"M6.3 2.6A7.4 7.4 0 1 1 6.3 17.4A8.51 8.51 0 0 0 6.3 2.6Z\\\"/>\",\n \"fill\": \"<path d=\\\"M6.3 2.6A7.4 7.4 0 1 1 6.3 17.4A8.51 8.51 0 0 0 6.3 2.6Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"lens\": {\n \"body\": \"<path d=\\\"M10 2.6A9.99 9.99 0 0 1 10 17.4A9.99 9.99 0 0 1 10 2.6Z\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6A9.99 9.99 0 0 1 10 17.4A9.99 9.99 0 0 1 10 2.6Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"sector\": {\n \"body\": \"<path d=\\\"M10 14.63L2.6 9.06A9.27 9.27 0 0 1 17.4 9.06Z\\\"/>\",\n \"fill\": \"<path d=\\\"M10 14.63L2.6 9.06A9.27 9.27 0 0 1 17.4 9.06Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"segment\": {\n \"body\": \"<path d=\\\"M2.6 12.59A7.88 7.88 0 0 1 17.4 12.59Z\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 12.59A7.88 7.88 0 0 1 17.4 12.59Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"arch\": {\n \"body\": \"<path d=\\\"M2.6 17.4V10A7.4 7.4 0 0 1 17.4 10V17.4Z\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 17.4V10A7.4 7.4 0 0 1 17.4 10V17.4Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"teardrop\": {\n \"body\": \"<path d=\\\"M10 2.6L5.9 10.75A4.59 4.59 0 1 0 14.1 10.75Z\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6L5.9 10.75A4.59 4.59 0 1 0 14.1 10.75Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"egg\": {\n \"body\": \"<path d=\\\"M10 2.6C14.59 2.6 16.07 9.26 16.07 12.22C16.07 15.77 13.26 17.4 10 17.4C6.74 17.4 3.93 15.77 3.93 12.22C3.93 9.26 5.41 2.6 10 2.6Z\\\"/>\",\n \"fill\": \"<path d=\\\"M10 2.6C14.59 2.6 16.07 9.26 16.07 12.22C16.07 15.77 13.26 17.4 10 17.4C6.74 17.4 3.93 15.77 3.93 12.22C3.93 9.26 5.41 2.6 10 2.6Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"heart\": {\n \"body\": \"<path d=\\\"M10 6.51L10.01 6.42L10.05 6.16L10.18 5.76L10.41 5.26L10.78 4.72L11.27 4.2L11.89 3.76L12.62 3.45L13.42 3.31L14.25 3.36L15.08 3.61L15.84 4.03L16.48 4.62L16.98 5.33L17.29 6.12L17.4 6.97L17.29 7.84L16.98 8.7L16.48 9.54L15.84 10.34L15.08 11.12L14.25 11.86L13.42 12.57L12.62 13.27L11.89 13.93L11.27 14.56L10.78 15.14L10.41 15.66L10.18 16.09L10.05 16.41L10.01 16.62L10 16.69L9.99 16.62L9.95 16.41L9.82 16.09L9.59 15.66L9.22 15.14L8.73 14.56L8.11 13.93L7.38 13.27L6.58 12.57L5.75 11.86L4.92 11.12L4.16 10.34L3.52 9.54L3.02 8.7L2.71 7.84L2.6 6.97L2.71 6.12L3.02 5.33L3.52 4.62L4.16 4.03L4.92 3.61L5.75 3.36L6.58 3.31L7.38 3.45L8.11 3.76L8.73 4.2L9.22 4.72L9.59 5.26L9.82 5.76L9.95 6.16L9.99 6.42L10 6.51Z\\\"/>\",\n \"fill\": \"<path d=\\\"M10 6.51L10.01 6.42L10.05 6.16L10.18 5.76L10.41 5.26L10.78 4.72L11.27 4.2L11.89 3.76L12.62 3.45L13.42 3.31L14.25 3.36L15.08 3.61L15.84 4.03L16.48 4.62L16.98 5.33L17.29 6.12L17.4 6.97L17.29 7.84L16.98 8.7L16.48 9.54L15.84 10.34L15.08 11.12L14.25 11.86L13.42 12.57L12.62 13.27L11.89 13.93L11.27 14.56L10.78 15.14L10.41 15.66L10.18 16.09L10.05 16.41L10.01 16.62L10 16.69L9.99 16.62L9.95 16.41L9.82 16.09L9.59 15.66L9.22 15.14L8.73 14.56L8.11 13.93L7.38 13.27L6.58 12.57L5.75 11.86L4.92 11.12L4.16 10.34L3.52 9.54L3.02 8.7L2.71 7.84L2.6 6.97L2.71 6.12L3.02 5.33L3.52 4.62L4.16 4.03L4.92 3.61L5.75 3.36L6.58 3.31L7.38 3.45L8.11 3.76L8.73 4.2L9.22 4.72L9.59 5.26L9.82 5.76L9.95 6.16L9.99 6.42L10 6.51Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n },\n \"angle\": {\n \"body\": \"<path d=\\\"M17.4 16.34L2.6 16.34L14.8 3.66M6.12 16.34A3.52 3.52 0 0 0 5.04 13.8\\\"/>\",\n \"fill\": \"<path d=\\\"M2.6 16.34L17.4 16.34L14.8 3.66Z\\\" fill=\\\"currentColor\\\" stroke=\\\"none\\\"/>\",\n \"group\": \"Shapes\",\n \"tags\": []\n }\n }\n}\n","// GENERATED by packages/icons/scripts/gen-icons.mjs — do not edit by hand.\n\nimport type { IconTable } from './table';\nimport data from './icons.table.json';\n\n/** Every glyph this package ships, under the `shape` namespace. */\nexport const icons: IconTable = data;\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** One glyph: SVG body on a 20x20 viewBox stroked in currentColor, and how it is filed. */
|
|
2
|
+
interface IconGlyph {
|
|
3
|
+
readonly body: string;
|
|
4
|
+
/** The enclosed region `<Icon filled>` shades, when there is one. */
|
|
5
|
+
readonly fill?: string;
|
|
6
|
+
readonly group: string;
|
|
7
|
+
readonly tags: readonly string[];
|
|
8
|
+
}
|
|
9
|
+
/** Every glyph one publisher ships under one namespace. */
|
|
10
|
+
interface IconTable {
|
|
11
|
+
readonly namespace: string;
|
|
12
|
+
/** The publishing package. Tables with one namespace merge only when their owners match. */
|
|
13
|
+
readonly owner: string;
|
|
14
|
+
readonly icons: Readonly<Record<string, IconGlyph>>;
|
|
15
|
+
}
|
|
16
|
+
/** What a variant's dynamic import resolves to. */
|
|
17
|
+
interface IconVariantModule {
|
|
18
|
+
readonly default: readonly IconTable[];
|
|
19
|
+
}
|
|
20
|
+
/** Loads one variant module: the icon tables that variant adds. */
|
|
21
|
+
type IconVariantLoader = () => Promise<IconVariantModule>;
|
|
22
|
+
|
|
23
|
+
export type { IconGlyph as I, IconTable as a, IconVariantLoader as b, IconVariantModule as c };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@weasel-js/icons",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Namespaced icon names and the
|
|
3
|
+
"version": "1.11.1",
|
|
4
|
+
"description": "Namespaced icon names, the icon registry, and the plain shape glyphs. No React, no DOM.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"sideEffects": false,
|
|
@@ -10,15 +10,17 @@
|
|
|
10
10
|
"types": "./dist/index.d.ts",
|
|
11
11
|
"exports": {
|
|
12
12
|
".": { "import": "./dist/index.js", "types": "./dist/index.d.ts" },
|
|
13
|
+
"./shapes": { "import": "./dist/shapes.js", "types": "./dist/shapes.d.ts" },
|
|
13
14
|
"./package.json": "./package.json"
|
|
14
15
|
},
|
|
16
|
+
"weaselIcons": { "table": "./dist/icons.table.json" },
|
|
15
17
|
"author": "orochi235",
|
|
16
18
|
"homepage": "https://orochi235.github.io/weasel/",
|
|
17
19
|
"repository": { "type": "git", "url": "git+https://github.com/orochi235/weasel.git", "directory": "packages/icons" },
|
|
18
20
|
"bugs": { "url": "https://github.com/orochi235/weasel/issues" },
|
|
19
21
|
"engines": { "node": ">=22" },
|
|
20
22
|
"files": ["dist", "README.md", "LICENSE"],
|
|
21
|
-
"scripts": { "build": "tsup" },
|
|
22
|
-
"dependencies": { "@weasel-js/registry": "1.
|
|
23
|
+
"scripts": { "build": "tsup && cp src/icons.table.json dist/" },
|
|
24
|
+
"dependencies": { "@weasel-js/registry": "1.11.1" },
|
|
23
25
|
"publishConfig": { "access": "public", "provenance": true }
|
|
24
26
|
}
|