@furystack/shades-common-components 12.0.1 → 12.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +59 -0
- package/README.md +26 -0
- package/esm/components/avatar.d.ts.map +1 -1
- package/esm/components/avatar.js +3 -1
- package/esm/components/avatar.js.map +1 -1
- package/esm/components/avatar.spec.js +4 -4
- package/esm/components/avatar.spec.js.map +1 -1
- package/esm/components/cache-view.d.ts +46 -0
- package/esm/components/cache-view.d.ts.map +1 -0
- package/esm/components/cache-view.js +65 -0
- package/esm/components/cache-view.js.map +1 -0
- package/esm/components/cache-view.spec.d.ts +2 -0
- package/esm/components/cache-view.spec.d.ts.map +1 -0
- package/esm/components/cache-view.spec.js +183 -0
- package/esm/components/cache-view.spec.js.map +1 -0
- package/esm/components/icons/icon-definitions.d.ts +82 -0
- package/esm/components/icons/icon-definitions.d.ts.map +1 -1
- package/esm/components/icons/icon-definitions.js +717 -0
- package/esm/components/icons/icon-definitions.js.map +1 -1
- package/esm/components/icons/icon-definitions.spec.js +22 -2
- package/esm/components/icons/icon-definitions.spec.js.map +1 -1
- package/esm/components/icons/icon-types.d.ts +10 -0
- package/esm/components/icons/icon-types.d.ts.map +1 -1
- package/esm/components/icons/index.d.ts +1 -1
- package/esm/components/icons/index.d.ts.map +1 -1
- package/esm/components/index.d.ts +1 -0
- package/esm/components/index.d.ts.map +1 -1
- package/esm/components/index.js +1 -0
- package/esm/components/index.js.map +1 -1
- package/esm/components/page-container/index.d.ts +1 -1
- package/esm/components/page-container/index.js +1 -1
- package/esm/components/page-container/page-header.d.ts +5 -5
- package/esm/components/page-container/page-header.d.ts.map +1 -1
- package/esm/components/page-container/page-header.js +3 -3
- package/esm/components/skeleton.d.ts.map +1 -1
- package/esm/components/skeleton.js +2 -11
- package/esm/components/skeleton.js.map +1 -1
- package/esm/components/skeleton.spec.js +6 -55
- package/esm/components/skeleton.spec.js.map +1 -1
- package/esm/components/suggest/index.d.ts +1 -1
- package/esm/components/suggest/index.d.ts.map +1 -1
- package/package.json +4 -3
- package/src/components/avatar.spec.tsx +4 -4
- package/src/components/avatar.tsx +3 -1
- package/src/components/cache-view.spec.tsx +210 -0
- package/src/components/cache-view.tsx +103 -0
- package/src/components/icons/icon-definitions.spec.ts +28 -2
- package/src/components/icons/icon-definitions.ts +759 -0
- package/src/components/icons/icon-types.ts +12 -0
- package/src/components/icons/index.ts +1 -1
- package/src/components/index.ts +1 -0
- package/src/components/page-container/index.tsx +1 -1
- package/src/components/page-container/page-header.tsx +5 -5
- package/src/components/skeleton.spec.tsx +6 -73
- package/src/components/skeleton.tsx +2 -11
- package/src/components/suggest/index.tsx +1 -1
|
@@ -8,16 +8,28 @@ import type { IconDefinition } from './icon-types.js'
|
|
|
8
8
|
|
|
9
9
|
/** X mark icon for close, dismiss, and cancel actions */
|
|
10
10
|
export const close: IconDefinition = {
|
|
11
|
+
name: 'Close',
|
|
12
|
+
description: 'X mark for close, dismiss, and cancel actions',
|
|
13
|
+
keywords: ['close', 'dismiss', 'cancel', 'x', 'remove'],
|
|
14
|
+
category: 'Actions',
|
|
11
15
|
paths: [{ d: 'M18 6L6 18M6 6l12 12' }],
|
|
12
16
|
}
|
|
13
17
|
|
|
14
18
|
/** Checkmark icon for confirmation and selection */
|
|
15
19
|
export const check: IconDefinition = {
|
|
20
|
+
name: 'Check',
|
|
21
|
+
description: 'Checkmark for confirmation and selection',
|
|
22
|
+
keywords: ['check', 'confirm', 'done', 'accept', 'tick', 'yes'],
|
|
23
|
+
category: 'Actions',
|
|
16
24
|
paths: [{ d: 'M20 6L9 17l-5-5' }],
|
|
17
25
|
}
|
|
18
26
|
|
|
19
27
|
/** Circled checkmark for success states */
|
|
20
28
|
export const checkCircle: IconDefinition = {
|
|
29
|
+
name: 'Check Circle',
|
|
30
|
+
description: 'Circled checkmark for success states',
|
|
31
|
+
keywords: ['check', 'success', 'complete', 'done', 'circle', 'verified'],
|
|
32
|
+
category: 'Status',
|
|
21
33
|
style: 'fill',
|
|
22
34
|
paths: [
|
|
23
35
|
{
|
|
@@ -28,6 +40,10 @@ export const checkCircle: IconDefinition = {
|
|
|
28
40
|
|
|
29
41
|
/** Circled X for error states */
|
|
30
42
|
export const errorCircle: IconDefinition = {
|
|
43
|
+
name: 'Error Circle',
|
|
44
|
+
description: 'Circled X for error states',
|
|
45
|
+
keywords: ['error', 'fail', 'failure', 'cancel', 'circle', 'x'],
|
|
46
|
+
category: 'Status',
|
|
31
47
|
style: 'fill',
|
|
32
48
|
paths: [
|
|
33
49
|
{
|
|
@@ -38,6 +54,10 @@ export const errorCircle: IconDefinition = {
|
|
|
38
54
|
|
|
39
55
|
/** Triangle warning icon */
|
|
40
56
|
export const warning: IconDefinition = {
|
|
57
|
+
name: 'Warning',
|
|
58
|
+
description: 'Triangle warning icon for alerts and caution',
|
|
59
|
+
keywords: ['warning', 'alert', 'caution', 'danger', 'triangle', 'exclamation'],
|
|
60
|
+
category: 'Status',
|
|
41
61
|
style: 'fill',
|
|
42
62
|
paths: [
|
|
43
63
|
{
|
|
@@ -48,6 +68,10 @@ export const warning: IconDefinition = {
|
|
|
48
68
|
|
|
49
69
|
/** Circled "i" for informational messages */
|
|
50
70
|
export const info: IconDefinition = {
|
|
71
|
+
name: 'Info',
|
|
72
|
+
description: 'Circled "i" for informational messages',
|
|
73
|
+
keywords: ['info', 'information', 'help', 'about', 'circle', 'i'],
|
|
74
|
+
category: 'Status',
|
|
51
75
|
style: 'fill',
|
|
52
76
|
paths: [
|
|
53
77
|
{
|
|
@@ -58,16 +82,28 @@ export const info: IconDefinition = {
|
|
|
58
82
|
|
|
59
83
|
/** Circle with a slash for forbidden / 403 */
|
|
60
84
|
export const forbidden: IconDefinition = {
|
|
85
|
+
name: 'Forbidden',
|
|
86
|
+
description: 'Circle with a slash for forbidden / 403 errors',
|
|
87
|
+
keywords: ['forbidden', 'banned', 'blocked', 'denied', '403', 'no-access'],
|
|
88
|
+
category: 'Status',
|
|
61
89
|
paths: [{ d: 'M12 2a10 10 0 100 20 10 10 0 000-20z' }, { d: 'M4.93 4.93l14.14 14.14' }],
|
|
62
90
|
}
|
|
63
91
|
|
|
64
92
|
/** Magnifying glass with an X for "not found" / 404 */
|
|
65
93
|
export const searchOff: IconDefinition = {
|
|
94
|
+
name: 'Search Off',
|
|
95
|
+
description: 'Magnifying glass with an X for "not found" / 404',
|
|
96
|
+
keywords: ['search', 'not-found', '404', 'missing', 'empty'],
|
|
97
|
+
category: 'Status',
|
|
66
98
|
paths: [{ d: 'M11 5a6 6 0 100 12 6 6 0 000-12z' }, { d: 'M21 21l-4.35-4.35' }, { d: 'M8 8l6 6M14 8l-6 6' }],
|
|
67
99
|
}
|
|
68
100
|
|
|
69
101
|
/** Explosion / server error icon for 500 */
|
|
70
102
|
export const serverError: IconDefinition = {
|
|
103
|
+
name: 'Server Error',
|
|
104
|
+
description: 'Explosion icon for server error / 500',
|
|
105
|
+
keywords: ['server', 'error', '500', 'crash', 'explosion', 'internal'],
|
|
106
|
+
category: 'Status',
|
|
71
107
|
paths: [{ d: 'M12 2l1.5 5.5L19 6l-3 5 5 1.5L16.5 15l2 5.5-5-3L12 22l-1.5-4.5-5 3 2-5.5L2 12.5 7 11l-3-5 5.5 1.5z' }],
|
|
72
108
|
}
|
|
73
109
|
|
|
@@ -75,36 +111,64 @@ export const serverError: IconDefinition = {
|
|
|
75
111
|
|
|
76
112
|
/** Left-pointing chevron */
|
|
77
113
|
export const chevronLeft: IconDefinition = {
|
|
114
|
+
name: 'Chevron Left',
|
|
115
|
+
description: 'Left-pointing chevron for navigation',
|
|
116
|
+
keywords: ['chevron', 'left', 'back', 'previous', 'arrow'],
|
|
117
|
+
category: 'Navigation',
|
|
78
118
|
paths: [{ d: 'M15 18l-6-6 6-6' }],
|
|
79
119
|
}
|
|
80
120
|
|
|
81
121
|
/** Right-pointing chevron */
|
|
82
122
|
export const chevronRight: IconDefinition = {
|
|
123
|
+
name: 'Chevron Right',
|
|
124
|
+
description: 'Right-pointing chevron for navigation',
|
|
125
|
+
keywords: ['chevron', 'right', 'forward', 'next', 'arrow'],
|
|
126
|
+
category: 'Navigation',
|
|
83
127
|
paths: [{ d: 'M9 6l6 6-6 6' }],
|
|
84
128
|
}
|
|
85
129
|
|
|
86
130
|
/** Up-pointing chevron */
|
|
87
131
|
export const chevronUp: IconDefinition = {
|
|
132
|
+
name: 'Chevron Up',
|
|
133
|
+
description: 'Up-pointing chevron for expand/collapse',
|
|
134
|
+
keywords: ['chevron', 'up', 'expand', 'collapse', 'arrow'],
|
|
135
|
+
category: 'Navigation',
|
|
88
136
|
paths: [{ d: 'M18 15l-6-6-6 6' }],
|
|
89
137
|
}
|
|
90
138
|
|
|
91
139
|
/** Down-pointing chevron */
|
|
92
140
|
export const chevronDown: IconDefinition = {
|
|
141
|
+
name: 'Chevron Down',
|
|
142
|
+
description: 'Down-pointing chevron for expand/collapse',
|
|
143
|
+
keywords: ['chevron', 'down', 'expand', 'collapse', 'arrow', 'dropdown'],
|
|
144
|
+
category: 'Navigation',
|
|
93
145
|
paths: [{ d: 'M6 9l6 6 6-6' }],
|
|
94
146
|
}
|
|
95
147
|
|
|
96
148
|
/** Upward arrow */
|
|
97
149
|
export const arrowUp: IconDefinition = {
|
|
150
|
+
name: 'Arrow Up',
|
|
151
|
+
description: 'Upward arrow for direction and sorting',
|
|
152
|
+
keywords: ['arrow', 'up', 'sort', 'ascending', 'direction'],
|
|
153
|
+
category: 'Navigation',
|
|
98
154
|
paths: [{ d: 'M12 19V5M5 12l7-7 7 7' }],
|
|
99
155
|
}
|
|
100
156
|
|
|
101
157
|
/** Downward arrow */
|
|
102
158
|
export const arrowDown: IconDefinition = {
|
|
159
|
+
name: 'Arrow Down',
|
|
160
|
+
description: 'Downward arrow for direction and sorting',
|
|
161
|
+
keywords: ['arrow', 'down', 'sort', 'descending', 'direction'],
|
|
162
|
+
category: 'Navigation',
|
|
103
163
|
paths: [{ d: 'M12 5v14M19 12l-7 7-7-7' }],
|
|
104
164
|
}
|
|
105
165
|
|
|
106
166
|
/** Bidirectional vertical arrow for unsorted state */
|
|
107
167
|
export const arrowUpDown: IconDefinition = {
|
|
168
|
+
name: 'Arrow Up Down',
|
|
169
|
+
description: 'Bidirectional vertical arrow for unsorted state',
|
|
170
|
+
keywords: ['arrow', 'sort', 'unsorted', 'up-down', 'bidirectional'],
|
|
171
|
+
category: 'Navigation',
|
|
108
172
|
paths: [{ d: 'M7 3l-4 4h8z' }, { d: 'M17 21l4-4H13z' }, { d: 'M7 7v14M17 17V3' }],
|
|
109
173
|
style: 'fill',
|
|
110
174
|
}
|
|
@@ -113,21 +177,37 @@ export const arrowUpDown: IconDefinition = {
|
|
|
113
177
|
|
|
114
178
|
/** Magnifying glass */
|
|
115
179
|
export const search: IconDefinition = {
|
|
180
|
+
name: 'Search',
|
|
181
|
+
description: 'Magnifying glass for search functionality',
|
|
182
|
+
keywords: ['search', 'find', 'lookup', 'magnifying-glass', 'query'],
|
|
183
|
+
category: 'Actions',
|
|
116
184
|
paths: [{ d: 'M11 5a6 6 0 100 12 6 6 0 000-12z' }, { d: 'M21 21l-4.35-4.35' }],
|
|
117
185
|
}
|
|
118
186
|
|
|
119
187
|
/** Magnifying glass with a plus for zoom in */
|
|
120
188
|
export const zoomIn: IconDefinition = {
|
|
189
|
+
name: 'Zoom In',
|
|
190
|
+
description: 'Magnifying glass with a plus for zoom in',
|
|
191
|
+
keywords: ['zoom', 'in', 'enlarge', 'magnify', 'plus'],
|
|
192
|
+
category: 'Actions',
|
|
121
193
|
paths: [{ d: 'M11 5a6 6 0 100 12 6 6 0 000-12z' }, { d: 'M21 21l-4.35-4.35' }, { d: 'M11 8v6M8 11h6' }],
|
|
122
194
|
}
|
|
123
195
|
|
|
124
196
|
/** Magnifying glass with a minus for zoom out */
|
|
125
197
|
export const zoomOut: IconDefinition = {
|
|
198
|
+
name: 'Zoom Out',
|
|
199
|
+
description: 'Magnifying glass with a minus for zoom out',
|
|
200
|
+
keywords: ['zoom', 'out', 'shrink', 'reduce', 'minus'],
|
|
201
|
+
category: 'Actions',
|
|
126
202
|
paths: [{ d: 'M11 5a6 6 0 100 12 6 6 0 000-12z' }, { d: 'M21 21l-4.35-4.35' }, { d: 'M8 11h6' }],
|
|
127
203
|
}
|
|
128
204
|
|
|
129
205
|
/** Circular arrow for rotate */
|
|
130
206
|
export const rotate: IconDefinition = {
|
|
207
|
+
name: 'Rotate',
|
|
208
|
+
description: 'Circular arrow for rotate actions',
|
|
209
|
+
keywords: ['rotate', 'turn', 'spin', 'orientation'],
|
|
210
|
+
category: 'Actions',
|
|
131
211
|
paths: [{ d: 'M1 4v6h6' }, { d: 'M3.51 15a9 9 0 102.13-9.36L1 10' }],
|
|
132
212
|
}
|
|
133
213
|
|
|
@@ -135,6 +215,10 @@ export const rotate: IconDefinition = {
|
|
|
135
215
|
|
|
136
216
|
/** Filled star */
|
|
137
217
|
export const star: IconDefinition = {
|
|
218
|
+
name: 'Star',
|
|
219
|
+
description: 'Filled star for ratings and favorites',
|
|
220
|
+
keywords: ['star', 'rating', 'favorite', 'bookmark', 'filled'],
|
|
221
|
+
category: 'UI',
|
|
138
222
|
style: 'fill',
|
|
139
223
|
paths: [
|
|
140
224
|
{
|
|
@@ -145,6 +229,10 @@ export const star: IconDefinition = {
|
|
|
145
229
|
|
|
146
230
|
/** Star outline */
|
|
147
231
|
export const starOutline: IconDefinition = {
|
|
232
|
+
name: 'Star Outline',
|
|
233
|
+
description: 'Star outline for unselected ratings',
|
|
234
|
+
keywords: ['star', 'rating', 'outline', 'empty', 'unselected'],
|
|
235
|
+
category: 'UI',
|
|
148
236
|
paths: [
|
|
149
237
|
{
|
|
150
238
|
d: 'M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01z',
|
|
@@ -156,6 +244,10 @@ export const starOutline: IconDefinition = {
|
|
|
156
244
|
|
|
157
245
|
/** Clipboard icon */
|
|
158
246
|
export const clipboard: IconDefinition = {
|
|
247
|
+
name: 'Clipboard',
|
|
248
|
+
description: 'Clipboard for copying and pasting content',
|
|
249
|
+
keywords: ['clipboard', 'copy', 'paste', 'board'],
|
|
250
|
+
category: 'Content',
|
|
159
251
|
paths: [
|
|
160
252
|
{ d: 'M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2' },
|
|
161
253
|
{ d: 'M15 2H9a1 1 0 00-1 1v2a1 1 0 001 1h6a1 1 0 001-1V3a1 1 0 00-1-1z' },
|
|
@@ -164,6 +256,10 @@ export const clipboard: IconDefinition = {
|
|
|
164
256
|
|
|
165
257
|
/** Broken image placeholder */
|
|
166
258
|
export const imageBroken: IconDefinition = {
|
|
259
|
+
name: 'Image Broken',
|
|
260
|
+
description: 'Broken image placeholder for missing images',
|
|
261
|
+
keywords: ['image', 'broken', 'missing', 'placeholder', 'error'],
|
|
262
|
+
category: 'Content',
|
|
167
263
|
paths: [
|
|
168
264
|
{ d: 'M21 3H3a2 2 0 00-2 2v14a2 2 0 002 2h18a2 2 0 002-2V5a2 2 0 00-2-2z' },
|
|
169
265
|
{ d: 'M8.5 10a1.5 1.5 0 100-3 1.5 1.5 0 000 3z' },
|
|
@@ -178,16 +274,28 @@ export const imageBroken: IconDefinition = {
|
|
|
178
274
|
|
|
179
275
|
/** House icon for home / landing */
|
|
180
276
|
export const home: IconDefinition = {
|
|
277
|
+
name: 'Home',
|
|
278
|
+
description: 'House icon for home / landing page',
|
|
279
|
+
keywords: ['home', 'house', 'landing', 'main', 'dashboard'],
|
|
280
|
+
category: 'Common',
|
|
181
281
|
paths: [{ d: 'M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2V9z' }, { d: 'M9 22V12h6v10' }],
|
|
182
282
|
}
|
|
183
283
|
|
|
184
284
|
/** Person silhouette */
|
|
185
285
|
export const user: IconDefinition = {
|
|
286
|
+
name: 'User',
|
|
287
|
+
description: 'Person silhouette for user profiles',
|
|
288
|
+
keywords: ['user', 'person', 'profile', 'account', 'avatar'],
|
|
289
|
+
category: 'Common',
|
|
186
290
|
paths: [{ d: 'M20 21v-2a4 4 0 00-4-4H8a4 4 0 00-4 4v2' }, { d: 'M12 3a4 4 0 100 8 4 4 0 000-8z' }],
|
|
187
291
|
}
|
|
188
292
|
|
|
189
293
|
/** Gear / cog for settings */
|
|
190
294
|
export const settings: IconDefinition = {
|
|
295
|
+
name: 'Settings',
|
|
296
|
+
description: 'Gear / cog for settings and configuration',
|
|
297
|
+
keywords: ['settings', 'gear', 'cog', 'config', 'preferences', 'options'],
|
|
298
|
+
category: 'Common',
|
|
191
299
|
paths: [
|
|
192
300
|
{
|
|
193
301
|
d: 'M12 15a3 3 0 100-6 3 3 0 000 6z',
|
|
@@ -200,11 +308,19 @@ export const settings: IconDefinition = {
|
|
|
200
308
|
|
|
201
309
|
/** Pencil for edit */
|
|
202
310
|
export const edit: IconDefinition = {
|
|
311
|
+
name: 'Edit',
|
|
312
|
+
description: 'Pencil icon for editing content',
|
|
313
|
+
keywords: ['edit', 'pencil', 'write', 'modify', 'update'],
|
|
314
|
+
category: 'Actions',
|
|
203
315
|
paths: [{ d: 'M17 3a2.83 2.83 0 014 4L7.5 20.5 2 22l1.5-5.5z' }],
|
|
204
316
|
}
|
|
205
317
|
|
|
206
318
|
/** Trash can for delete */
|
|
207
319
|
export const trash: IconDefinition = {
|
|
320
|
+
name: 'Trash',
|
|
321
|
+
description: 'Trash can for deleting items',
|
|
322
|
+
keywords: ['trash', 'delete', 'remove', 'discard', 'bin', 'garbage'],
|
|
323
|
+
category: 'Actions',
|
|
208
324
|
paths: [
|
|
209
325
|
{ d: 'M3 6h18' },
|
|
210
326
|
{ d: 'M19 6v14a2 2 0 01-2 2H7a2 2 0 01-2-2V6m3 0V4a2 2 0 012-2h4a2 2 0 012 2v2' },
|
|
@@ -214,6 +330,10 @@ export const trash: IconDefinition = {
|
|
|
214
330
|
|
|
215
331
|
/** Floppy disk for save */
|
|
216
332
|
export const save: IconDefinition = {
|
|
333
|
+
name: 'Save',
|
|
334
|
+
description: 'Floppy disk for saving content',
|
|
335
|
+
keywords: ['save', 'floppy', 'disk', 'store', 'persist'],
|
|
336
|
+
category: 'Actions',
|
|
217
337
|
paths: [
|
|
218
338
|
{ d: 'M19 21H5a2 2 0 01-2-2V5a2 2 0 012-2h11l5 5v11a2 2 0 01-2 2z' },
|
|
219
339
|
{ d: 'M17 21v-8H7v8' },
|
|
@@ -223,6 +343,10 @@ export const save: IconDefinition = {
|
|
|
223
343
|
|
|
224
344
|
/** Chain link */
|
|
225
345
|
export const link: IconDefinition = {
|
|
346
|
+
name: 'Link',
|
|
347
|
+
description: 'Chain link for URLs and hyperlinks',
|
|
348
|
+
keywords: ['link', 'chain', 'url', 'hyperlink', 'connect'],
|
|
349
|
+
category: 'Actions',
|
|
226
350
|
paths: [
|
|
227
351
|
{ d: 'M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71' },
|
|
228
352
|
{ d: 'M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71' },
|
|
@@ -231,31 +355,55 @@ export const link: IconDefinition = {
|
|
|
231
355
|
|
|
232
356
|
/** Bell for notifications */
|
|
233
357
|
export const bell: IconDefinition = {
|
|
358
|
+
name: 'Bell',
|
|
359
|
+
description: 'Bell for notifications and alerts',
|
|
360
|
+
keywords: ['bell', 'notification', 'alert', 'alarm', 'ring'],
|
|
361
|
+
category: 'Common',
|
|
234
362
|
paths: [{ d: 'M18 8A6 6 0 006 8c0 7-3 9-3 9h18s-3-2-3-9' }, { d: 'M13.73 21a2 2 0 01-3.46 0' }],
|
|
235
363
|
}
|
|
236
364
|
|
|
237
365
|
/** Plus sign for add */
|
|
238
366
|
export const plus: IconDefinition = {
|
|
367
|
+
name: 'Plus',
|
|
368
|
+
description: 'Plus sign for adding items',
|
|
369
|
+
keywords: ['plus', 'add', 'new', 'create', 'positive'],
|
|
370
|
+
category: 'Actions',
|
|
239
371
|
paths: [{ d: 'M12 5v14M5 12h14' }],
|
|
240
372
|
}
|
|
241
373
|
|
|
242
374
|
/** Minus sign for subtract / collapse */
|
|
243
375
|
export const minus: IconDefinition = {
|
|
376
|
+
name: 'Minus',
|
|
377
|
+
description: 'Minus sign for subtracting or collapsing',
|
|
378
|
+
keywords: ['minus', 'subtract', 'remove', 'collapse', 'negative'],
|
|
379
|
+
category: 'Actions',
|
|
244
380
|
paths: [{ d: 'M5 12h14' }],
|
|
245
381
|
}
|
|
246
382
|
|
|
247
383
|
/** Hamburger menu */
|
|
248
384
|
export const menu: IconDefinition = {
|
|
385
|
+
name: 'Menu',
|
|
386
|
+
description: 'Hamburger menu icon',
|
|
387
|
+
keywords: ['menu', 'hamburger', 'navigation', 'sidebar', 'drawer'],
|
|
388
|
+
category: 'UI',
|
|
249
389
|
paths: [{ d: 'M3 12h18' }, { d: 'M3 6h18' }, { d: 'M3 18h18' }],
|
|
250
390
|
}
|
|
251
391
|
|
|
252
392
|
/** Open eye for visibility */
|
|
253
393
|
export const eye: IconDefinition = {
|
|
394
|
+
name: 'Eye',
|
|
395
|
+
description: 'Open eye for visibility and showing content',
|
|
396
|
+
keywords: ['eye', 'show', 'visible', 'visibility', 'view', 'watch'],
|
|
397
|
+
category: 'UI',
|
|
254
398
|
paths: [{ d: 'M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z' }, { d: 'M12 9a3 3 0 100 6 3 3 0 000-6z' }],
|
|
255
399
|
}
|
|
256
400
|
|
|
257
401
|
/** Eye with a slash for hidden */
|
|
258
402
|
export const eyeOff: IconDefinition = {
|
|
403
|
+
name: 'Eye Off',
|
|
404
|
+
description: 'Eye with a slash for hiding content',
|
|
405
|
+
keywords: ['eye', 'hide', 'hidden', 'invisible', 'off', 'private'],
|
|
406
|
+
category: 'UI',
|
|
259
407
|
paths: [
|
|
260
408
|
{ d: 'M17.94 17.94A10.07 10.07 0 0112 20c-7 0-11-8-11-8a18.45 18.45 0 015.06-5.94' },
|
|
261
409
|
{ d: 'M9.9 4.24A9.12 9.12 0 0112 4c7 0 11 8 11 8a18.5 18.5 0 01-2.16 3.19' },
|
|
@@ -266,6 +414,10 @@ export const eyeOff: IconDefinition = {
|
|
|
266
414
|
|
|
267
415
|
/** Locked padlock */
|
|
268
416
|
export const lock: IconDefinition = {
|
|
417
|
+
name: 'Lock',
|
|
418
|
+
description: 'Locked padlock for security and authentication',
|
|
419
|
+
keywords: ['lock', 'locked', 'secure', 'security', 'password', 'private'],
|
|
420
|
+
category: 'Common',
|
|
269
421
|
paths: [
|
|
270
422
|
{ d: 'M19 11H5a2 2 0 00-2 2v7a2 2 0 002 2h14a2 2 0 002-2v-7a2 2 0 00-2-2z' },
|
|
271
423
|
{ d: 'M7 11V7a5 5 0 0110 0v4' },
|
|
@@ -274,11 +426,19 @@ export const lock: IconDefinition = {
|
|
|
274
426
|
|
|
275
427
|
/** Unlocked padlock */
|
|
276
428
|
export const unlock: IconDefinition = {
|
|
429
|
+
name: 'Unlock',
|
|
430
|
+
description: 'Unlocked padlock for unlocked/public state',
|
|
431
|
+
keywords: ['unlock', 'unlocked', 'open', 'public', 'accessible'],
|
|
432
|
+
category: 'Common',
|
|
277
433
|
paths: [{ d: 'M19 11H5a2 2 0 00-2 2v7a2 2 0 002 2h14a2 2 0 002-2v-7a2 2 0 00-2-2z' }, { d: 'M7 11V7a5 5 0 019.9-1' }],
|
|
278
434
|
}
|
|
279
435
|
|
|
280
436
|
/** Sun for light theme */
|
|
281
437
|
export const sun: IconDefinition = {
|
|
438
|
+
name: 'Sun',
|
|
439
|
+
description: 'Sun icon for light theme toggle',
|
|
440
|
+
keywords: ['sun', 'light', 'theme', 'day', 'bright'],
|
|
441
|
+
category: 'Common',
|
|
282
442
|
paths: [
|
|
283
443
|
{ d: 'M12 8a4 4 0 100 8 4 4 0 000-8z' },
|
|
284
444
|
{
|
|
@@ -289,16 +449,28 @@ export const sun: IconDefinition = {
|
|
|
289
449
|
|
|
290
450
|
/** Moon / crescent for dark theme */
|
|
291
451
|
export const moon: IconDefinition = {
|
|
452
|
+
name: 'Moon',
|
|
453
|
+
description: 'Moon / crescent for dark theme toggle',
|
|
454
|
+
keywords: ['moon', 'dark', 'theme', 'night', 'crescent'],
|
|
455
|
+
category: 'Common',
|
|
292
456
|
paths: [{ d: 'M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z' }],
|
|
293
457
|
}
|
|
294
458
|
|
|
295
459
|
/** File / document page */
|
|
296
460
|
export const file: IconDefinition = {
|
|
461
|
+
name: 'File',
|
|
462
|
+
description: 'Document page icon',
|
|
463
|
+
keywords: ['file', 'document', 'page', 'paper'],
|
|
464
|
+
category: 'Content',
|
|
297
465
|
paths: [{ d: 'M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z' }, { d: 'M14 2v6h6' }],
|
|
298
466
|
}
|
|
299
467
|
|
|
300
468
|
/** Closed folder */
|
|
301
469
|
export const folder: IconDefinition = {
|
|
470
|
+
name: 'Folder',
|
|
471
|
+
description: 'Closed folder for file organization',
|
|
472
|
+
keywords: ['folder', 'directory', 'organize', 'files', 'closed'],
|
|
473
|
+
category: 'Content',
|
|
302
474
|
paths: [
|
|
303
475
|
{
|
|
304
476
|
d: 'M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h5l2 3h9a2 2 0 012 2z',
|
|
@@ -308,6 +480,10 @@ export const folder: IconDefinition = {
|
|
|
308
480
|
|
|
309
481
|
/** Open folder */
|
|
310
482
|
export const folderOpen: IconDefinition = {
|
|
483
|
+
name: 'Folder Open',
|
|
484
|
+
description: 'Open folder for expanded directories',
|
|
485
|
+
keywords: ['folder', 'directory', 'open', 'expanded', 'browse'],
|
|
486
|
+
category: 'Content',
|
|
311
487
|
paths: [
|
|
312
488
|
{
|
|
313
489
|
d: 'M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h5l2 3h9a2 2 0 012 2v1',
|
|
@@ -318,6 +494,10 @@ export const folderOpen: IconDefinition = {
|
|
|
318
494
|
|
|
319
495
|
/** Box / package */
|
|
320
496
|
export const packageIcon: IconDefinition = {
|
|
497
|
+
name: 'Package',
|
|
498
|
+
description: 'Box / package icon for modules and deliveries',
|
|
499
|
+
keywords: ['package', 'box', 'module', 'delivery', 'parcel', 'npm'],
|
|
500
|
+
category: 'Content',
|
|
321
501
|
paths: [
|
|
322
502
|
{ d: 'M16.5 9.4l-9-5.19' },
|
|
323
503
|
{
|
|
@@ -330,6 +510,10 @@ export const packageIcon: IconDefinition = {
|
|
|
330
510
|
|
|
331
511
|
/** Scissors for cut */
|
|
332
512
|
export const cut: IconDefinition = {
|
|
513
|
+
name: 'Cut',
|
|
514
|
+
description: 'Scissors for cutting content',
|
|
515
|
+
keywords: ['cut', 'scissors', 'trim', 'snip'],
|
|
516
|
+
category: 'Actions',
|
|
333
517
|
paths: [
|
|
334
518
|
{ d: 'M6 9a3 3 0 100-6 3 3 0 000 6z' },
|
|
335
519
|
{ d: 'M6 21a3 3 0 100-6 3 3 0 000 6z' },
|
|
@@ -341,6 +525,10 @@ export const cut: IconDefinition = {
|
|
|
341
525
|
|
|
342
526
|
/** Overlapping squares for copy */
|
|
343
527
|
export const copy: IconDefinition = {
|
|
528
|
+
name: 'Copy',
|
|
529
|
+
description: 'Overlapping squares for copying content',
|
|
530
|
+
keywords: ['copy', 'duplicate', 'clone', 'squares'],
|
|
531
|
+
category: 'Actions',
|
|
344
532
|
paths: [
|
|
345
533
|
{ d: 'M20 9h-9a2 2 0 00-2 2v9a2 2 0 002 2h9a2 2 0 002-2v-9a2 2 0 00-2-2z' },
|
|
346
534
|
{ d: 'M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1' },
|
|
@@ -349,6 +537,10 @@ export const copy: IconDefinition = {
|
|
|
349
537
|
|
|
350
538
|
/** Clipboard with arrow for paste */
|
|
351
539
|
export const paste: IconDefinition = {
|
|
540
|
+
name: 'Paste',
|
|
541
|
+
description: 'Clipboard with plus for pasting content',
|
|
542
|
+
keywords: ['paste', 'clipboard', 'insert'],
|
|
543
|
+
category: 'Actions',
|
|
352
544
|
paths: [
|
|
353
545
|
{ d: 'M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2' },
|
|
354
546
|
{ d: 'M15 2H9a1 1 0 00-1 1v2a1 1 0 001 1h6a1 1 0 001-1V3a1 1 0 00-1-1z' },
|
|
@@ -358,16 +550,28 @@ export const paste: IconDefinition = {
|
|
|
358
550
|
|
|
359
551
|
/** Curved arrow back for undo */
|
|
360
552
|
export const undo: IconDefinition = {
|
|
553
|
+
name: 'Undo',
|
|
554
|
+
description: 'Curved arrow back for undo',
|
|
555
|
+
keywords: ['undo', 'back', 'revert', 'history'],
|
|
556
|
+
category: 'Actions',
|
|
361
557
|
paths: [{ d: 'M3 7v6h6' }, { d: 'M5.51 17a9 9 0 102.13-9.36L3 13' }],
|
|
362
558
|
}
|
|
363
559
|
|
|
364
560
|
/** Curved arrow forward for redo */
|
|
365
561
|
export const redo: IconDefinition = {
|
|
562
|
+
name: 'Redo',
|
|
563
|
+
description: 'Curved arrow forward for redo',
|
|
564
|
+
keywords: ['redo', 'forward', 'repeat', 'history'],
|
|
565
|
+
category: 'Actions',
|
|
366
566
|
paths: [{ d: 'M23 4v6h-6' }, { d: 'M20.49 15a9 9 0 11-2.13-9.36L23 10' }],
|
|
367
567
|
}
|
|
368
568
|
|
|
369
569
|
/** Tray with downward arrow for inbox */
|
|
370
570
|
export const inbox: IconDefinition = {
|
|
571
|
+
name: 'Inbox',
|
|
572
|
+
description: 'Tray with downward arrow for inbox / received items',
|
|
573
|
+
keywords: ['inbox', 'tray', 'mail', 'receive', 'incoming'],
|
|
574
|
+
category: 'Content',
|
|
371
575
|
paths: [
|
|
372
576
|
{ d: 'M22 12h-6l-2 3H10l-2-3H2' },
|
|
373
577
|
{ d: 'M5.45 5.11L2 12v6a2 2 0 002 2h16a2 2 0 002-2v-6l-3.45-6.89A2 2 0 0016.76 4H7.24a2 2 0 00-1.79 1.11z' },
|
|
@@ -376,11 +580,19 @@ export const inbox: IconDefinition = {
|
|
|
376
580
|
|
|
377
581
|
/** Paper plane for send */
|
|
378
582
|
export const send: IconDefinition = {
|
|
583
|
+
name: 'Send',
|
|
584
|
+
description: 'Paper plane for sending messages',
|
|
585
|
+
keywords: ['send', 'submit', 'paper-plane', 'message', 'dispatch'],
|
|
586
|
+
category: 'Content',
|
|
379
587
|
paths: [{ d: 'M22 2L11 13' }, { d: 'M22 2L15 22l-4-9-9-4z' }],
|
|
380
588
|
}
|
|
381
589
|
|
|
382
590
|
/** Filled heart */
|
|
383
591
|
export const heart: IconDefinition = {
|
|
592
|
+
name: 'Heart',
|
|
593
|
+
description: 'Filled heart for likes and favorites',
|
|
594
|
+
keywords: ['heart', 'love', 'like', 'favorite', 'filled'],
|
|
595
|
+
category: 'UI',
|
|
384
596
|
style: 'fill',
|
|
385
597
|
paths: [
|
|
386
598
|
{
|
|
@@ -391,6 +603,10 @@ export const heart: IconDefinition = {
|
|
|
391
603
|
|
|
392
604
|
/** Outlined heart */
|
|
393
605
|
export const heartOutline: IconDefinition = {
|
|
606
|
+
name: 'Heart Outline',
|
|
607
|
+
description: 'Outlined heart for unliked state',
|
|
608
|
+
keywords: ['heart', 'love', 'like', 'outline', 'empty', 'unlike'],
|
|
609
|
+
category: 'UI',
|
|
394
610
|
paths: [
|
|
395
611
|
{
|
|
396
612
|
d: 'M20.84 4.61a5.5 5.5 0 00-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 00-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 000-7.78z',
|
|
@@ -404,16 +620,28 @@ export const heartOutline: IconDefinition = {
|
|
|
404
620
|
|
|
405
621
|
/** Downward arrow into tray for download */
|
|
406
622
|
export const download: IconDefinition = {
|
|
623
|
+
name: 'Download',
|
|
624
|
+
description: 'Downward arrow into tray for downloading',
|
|
625
|
+
keywords: ['download', 'save', 'export', 'get'],
|
|
626
|
+
category: 'Actions',
|
|
407
627
|
paths: [{ d: 'M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4' }, { d: 'M7 10l5 5 5-5' }, { d: 'M12 15V3' }],
|
|
408
628
|
}
|
|
409
629
|
|
|
410
630
|
/** Upward arrow from tray for upload */
|
|
411
631
|
export const upload: IconDefinition = {
|
|
632
|
+
name: 'Upload',
|
|
633
|
+
description: 'Upward arrow from tray for uploading',
|
|
634
|
+
keywords: ['upload', 'import', 'send', 'put'],
|
|
635
|
+
category: 'Actions',
|
|
412
636
|
paths: [{ d: 'M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4' }, { d: 'M17 8l-5-5-5 5' }, { d: 'M12 3v12' }],
|
|
413
637
|
}
|
|
414
638
|
|
|
415
639
|
/** Circular arrows for refresh */
|
|
416
640
|
export const refresh: IconDefinition = {
|
|
641
|
+
name: 'Refresh',
|
|
642
|
+
description: 'Circular arrows for refreshing / reloading',
|
|
643
|
+
keywords: ['refresh', 'reload', 'sync', 'recycle', 'update'],
|
|
644
|
+
category: 'Actions',
|
|
417
645
|
paths: [
|
|
418
646
|
{ d: 'M23 4v6h-6' },
|
|
419
647
|
{ d: 'M1 20v-6h6' },
|
|
@@ -424,16 +652,28 @@ export const refresh: IconDefinition = {
|
|
|
424
652
|
|
|
425
653
|
/** Funnel for filter */
|
|
426
654
|
export const filter: IconDefinition = {
|
|
655
|
+
name: 'Filter',
|
|
656
|
+
description: 'Funnel for filtering content',
|
|
657
|
+
keywords: ['filter', 'funnel', 'sort', 'refine', 'narrow'],
|
|
658
|
+
category: 'Actions',
|
|
427
659
|
paths: [{ d: 'M22 3H2l8 9.46V19l4 2v-8.54z' }],
|
|
428
660
|
}
|
|
429
661
|
|
|
430
662
|
/** Arrow pointing to upper-right with box corner */
|
|
431
663
|
export const externalLink: IconDefinition = {
|
|
664
|
+
name: 'External Link',
|
|
665
|
+
description: 'Arrow pointing to upper-right for external links',
|
|
666
|
+
keywords: ['external', 'link', 'open', 'new-window', 'redirect'],
|
|
667
|
+
category: 'Navigation',
|
|
432
668
|
paths: [{ d: 'M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6' }, { d: 'M15 3h6v6' }, { d: 'M10 14L21 3' }],
|
|
433
669
|
}
|
|
434
670
|
|
|
435
671
|
/** Three horizontal dots */
|
|
436
672
|
export const moreHorizontal: IconDefinition = {
|
|
673
|
+
name: 'More Horizontal',
|
|
674
|
+
description: 'Three horizontal dots for overflow menus',
|
|
675
|
+
keywords: ['more', 'horizontal', 'dots', 'ellipsis', 'overflow', 'menu'],
|
|
676
|
+
category: 'UI',
|
|
437
677
|
style: 'fill',
|
|
438
678
|
paths: [
|
|
439
679
|
{ d: 'M12 10a2 2 0 100 4 2 2 0 000-4z' },
|
|
@@ -444,6 +684,10 @@ export const moreHorizontal: IconDefinition = {
|
|
|
444
684
|
|
|
445
685
|
/** Three vertical dots */
|
|
446
686
|
export const moreVertical: IconDefinition = {
|
|
687
|
+
name: 'More Vertical',
|
|
688
|
+
description: 'Three vertical dots for overflow menus',
|
|
689
|
+
keywords: ['more', 'vertical', 'dots', 'ellipsis', 'overflow', 'menu'],
|
|
690
|
+
category: 'UI',
|
|
447
691
|
style: 'fill',
|
|
448
692
|
paths: [
|
|
449
693
|
{ d: 'M12 5a2 2 0 100 4 2 2 0 000-4z' },
|
|
@@ -454,16 +698,28 @@ export const moreVertical: IconDefinition = {
|
|
|
454
698
|
|
|
455
699
|
/** Calendar page */
|
|
456
700
|
export const calendar: IconDefinition = {
|
|
701
|
+
name: 'Calendar',
|
|
702
|
+
description: 'Calendar page for dates and scheduling',
|
|
703
|
+
keywords: ['calendar', 'date', 'schedule', 'event', 'planner'],
|
|
704
|
+
category: 'Common',
|
|
457
705
|
paths: [{ d: 'M19 4H5a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V6a2 2 0 00-2-2z' }, { d: 'M16 2v4M8 2v4M3 10h18' }],
|
|
458
706
|
}
|
|
459
707
|
|
|
460
708
|
/** Clock face */
|
|
461
709
|
export const clock: IconDefinition = {
|
|
710
|
+
name: 'Clock',
|
|
711
|
+
description: 'Clock face for time-related content',
|
|
712
|
+
keywords: ['clock', 'time', 'hour', 'schedule', 'timer'],
|
|
713
|
+
category: 'Common',
|
|
462
714
|
paths: [{ d: 'M12 2a10 10 0 100 20 10 10 0 000-20z' }, { d: 'M12 6v6l4 2' }],
|
|
463
715
|
}
|
|
464
716
|
|
|
465
717
|
/** Globe / earth for internationalization */
|
|
466
718
|
export const globe: IconDefinition = {
|
|
719
|
+
name: 'Globe',
|
|
720
|
+
description: 'Globe / earth for internationalization and web',
|
|
721
|
+
keywords: ['globe', 'earth', 'world', 'international', 'web', 'language'],
|
|
722
|
+
category: 'Common',
|
|
467
723
|
paths: [
|
|
468
724
|
{ d: 'M12 2a10 10 0 100 20 10 10 0 000-20z' },
|
|
469
725
|
{ d: 'M2 12h20' },
|
|
@@ -473,11 +729,19 @@ export const globe: IconDefinition = {
|
|
|
473
729
|
|
|
474
730
|
/** Map pin / location marker */
|
|
475
731
|
export const pin: IconDefinition = {
|
|
732
|
+
name: 'Pin',
|
|
733
|
+
description: 'Map pin / location marker',
|
|
734
|
+
keywords: ['pin', 'location', 'map', 'marker', 'place', 'gps'],
|
|
735
|
+
category: 'UI',
|
|
476
736
|
paths: [{ d: 'M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z' }, { d: 'M12 7a3 3 0 100 6 3 3 0 000-6z' }],
|
|
477
737
|
}
|
|
478
738
|
|
|
479
739
|
/** Price tag / label */
|
|
480
740
|
export const tag: IconDefinition = {
|
|
741
|
+
name: 'Tag',
|
|
742
|
+
description: 'Price tag / label for categorization',
|
|
743
|
+
keywords: ['tag', 'label', 'price', 'category', 'badge'],
|
|
744
|
+
category: 'UI',
|
|
481
745
|
paths: [
|
|
482
746
|
{
|
|
483
747
|
d: 'M20.59 13.41l-7.17 7.17a2 2 0 01-2.83 0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z',
|
|
@@ -488,6 +752,10 @@ export const tag: IconDefinition = {
|
|
|
488
752
|
|
|
489
753
|
/** Share / branching arrow */
|
|
490
754
|
export const share: IconDefinition = {
|
|
755
|
+
name: 'Share',
|
|
756
|
+
description: 'Branching arrow for sharing content',
|
|
757
|
+
keywords: ['share', 'social', 'distribute', 'send', 'branch'],
|
|
758
|
+
category: 'Actions',
|
|
491
759
|
paths: [
|
|
492
760
|
{ d: 'M18 2a3 3 0 100 6 3 3 0 000-6z' },
|
|
493
761
|
{ d: 'M6 9a3 3 0 100 6 3 3 0 000-6z' },
|
|
@@ -498,12 +766,503 @@ export const share: IconDefinition = {
|
|
|
498
766
|
|
|
499
767
|
/** Play triangle */
|
|
500
768
|
export const play: IconDefinition = {
|
|
769
|
+
name: 'Play',
|
|
770
|
+
description: 'Play triangle for media playback',
|
|
771
|
+
keywords: ['play', 'start', 'media', 'video', 'audio'],
|
|
772
|
+
category: 'Common',
|
|
501
773
|
style: 'fill',
|
|
502
774
|
paths: [{ d: 'M5 3l14 9-14 9V3z' }],
|
|
503
775
|
}
|
|
504
776
|
|
|
505
777
|
/** Pause bars */
|
|
506
778
|
export const pause: IconDefinition = {
|
|
779
|
+
name: 'Pause',
|
|
780
|
+
description: 'Pause bars for media playback',
|
|
781
|
+
keywords: ['pause', 'stop', 'media', 'wait', 'hold'],
|
|
782
|
+
category: 'Common',
|
|
507
783
|
paths: [{ d: 'M6 4h4v16H6zM14 4h4v16h-4z' }],
|
|
508
784
|
style: 'fill',
|
|
509
785
|
}
|
|
786
|
+
|
|
787
|
+
// ============================================================================
|
|
788
|
+
// TIER 4 — New icons for emoji replacement
|
|
789
|
+
// ============================================================================
|
|
790
|
+
|
|
791
|
+
/** Envelope for email / mail */
|
|
792
|
+
export const envelope: IconDefinition = {
|
|
793
|
+
name: 'Envelope',
|
|
794
|
+
description: 'Envelope for email and mail',
|
|
795
|
+
keywords: ['mail', 'email', 'envelope', 'message', 'letter'],
|
|
796
|
+
category: 'Content',
|
|
797
|
+
paths: [{ d: 'M4 4h16a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V6a2 2 0 012-2z' }, { d: 'M22 6l-10 7L2 6' }],
|
|
798
|
+
}
|
|
799
|
+
|
|
800
|
+
/** Bar chart for statistics / analytics */
|
|
801
|
+
export const barChart: IconDefinition = {
|
|
802
|
+
name: 'Bar Chart',
|
|
803
|
+
description: 'Bar chart for statistics and analytics',
|
|
804
|
+
keywords: ['chart', 'bar', 'graph', 'statistics', 'analytics', 'data'],
|
|
805
|
+
category: 'Content',
|
|
806
|
+
paths: [{ d: 'M18 20V10M12 20V4M6 20v-6' }],
|
|
807
|
+
}
|
|
808
|
+
|
|
809
|
+
/** Multiple people for groups / teams */
|
|
810
|
+
export const users: IconDefinition = {
|
|
811
|
+
name: 'Users',
|
|
812
|
+
description: 'Multiple people for groups and teams',
|
|
813
|
+
keywords: ['users', 'people', 'group', 'team', 'members', 'community'],
|
|
814
|
+
category: 'Common',
|
|
815
|
+
paths: [
|
|
816
|
+
{ d: 'M17 21v-2a4 4 0 00-4-4H5a4 4 0 00-4 4v2' },
|
|
817
|
+
{ d: 'M9 3a4 4 0 100 8 4 4 0 000-8z' },
|
|
818
|
+
{ d: 'M23 21v-2a4 4 0 00-3-3.87' },
|
|
819
|
+
{ d: 'M16 3.13a4 4 0 010 7.75' },
|
|
820
|
+
],
|
|
821
|
+
}
|
|
822
|
+
|
|
823
|
+
/** File with text lines for notes / documents */
|
|
824
|
+
export const fileText: IconDefinition = {
|
|
825
|
+
name: 'File Text',
|
|
826
|
+
description: 'File with text lines for notes and documents',
|
|
827
|
+
keywords: ['file', 'text', 'document', 'note', 'paper', 'writing'],
|
|
828
|
+
category: 'Content',
|
|
829
|
+
paths: [
|
|
830
|
+
{ d: 'M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z' },
|
|
831
|
+
{ d: 'M14 2v6h6' },
|
|
832
|
+
{ d: 'M16 13H8M16 17H8M10 9H8' },
|
|
833
|
+
],
|
|
834
|
+
}
|
|
835
|
+
|
|
836
|
+
/** Exit / logout arrow for sign out */
|
|
837
|
+
export const logOut: IconDefinition = {
|
|
838
|
+
name: 'Log Out',
|
|
839
|
+
description: 'Exit / logout arrow for sign out actions',
|
|
840
|
+
keywords: ['logout', 'signout', 'exit', 'leave', 'door'],
|
|
841
|
+
category: 'Actions',
|
|
842
|
+
paths: [{ d: 'M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4' }, { d: 'M16 17l5-5-5-5' }, { d: 'M21 12H9' }],
|
|
843
|
+
}
|
|
844
|
+
|
|
845
|
+
/** Briefcase for work / professional */
|
|
846
|
+
export const briefcase: IconDefinition = {
|
|
847
|
+
name: 'Briefcase',
|
|
848
|
+
description: 'Briefcase for work and professional contexts',
|
|
849
|
+
keywords: ['briefcase', 'work', 'job', 'business', 'career', 'professional'],
|
|
850
|
+
category: 'Content',
|
|
851
|
+
paths: [
|
|
852
|
+
{ d: 'M20 7H4a2 2 0 00-2 2v10a2 2 0 002 2h16a2 2 0 002-2V9a2 2 0 00-2-2z' },
|
|
853
|
+
{ d: 'M16 21V5a2 2 0 00-2-2h-4a2 2 0 00-2 2v16' },
|
|
854
|
+
],
|
|
855
|
+
}
|
|
856
|
+
|
|
857
|
+
/** Filled circle / dot for status indicators */
|
|
858
|
+
export const circleDot: IconDefinition = {
|
|
859
|
+
name: 'Circle Dot',
|
|
860
|
+
description: 'Filled circle dot for status indicators',
|
|
861
|
+
keywords: ['circle', 'dot', 'status', 'indicator', 'radio', 'bullet'],
|
|
862
|
+
category: 'UI',
|
|
863
|
+
paths: [{ d: 'M12 2a10 10 0 100 20 10 10 0 000-20z' }, { d: 'M12 8a4 4 0 100 8 4 4 0 000-8z' }],
|
|
864
|
+
}
|
|
865
|
+
|
|
866
|
+
/** Keyboard for input / shortcuts */
|
|
867
|
+
export const keyboard: IconDefinition = {
|
|
868
|
+
name: 'Keyboard',
|
|
869
|
+
description: 'Keyboard for input and shortcuts',
|
|
870
|
+
keywords: ['keyboard', 'type', 'input', 'keys', 'shortcut', 'hotkey'],
|
|
871
|
+
category: 'Content',
|
|
872
|
+
paths: [
|
|
873
|
+
{ d: 'M20 3H4a2 2 0 00-2 2v10a2 2 0 002 2h16a2 2 0 002-2V5a2 2 0 00-2-2z' },
|
|
874
|
+
{ d: 'M7 17l5 4 5-4' },
|
|
875
|
+
{ d: 'M7 8h.01M11 8h.01M15 8h.01M7 12h.01M11 12h.01M15 12h.01' },
|
|
876
|
+
],
|
|
877
|
+
}
|
|
878
|
+
|
|
879
|
+
/** Stacked layers for depth / pages */
|
|
880
|
+
export const layers: IconDefinition = {
|
|
881
|
+
name: 'Layers',
|
|
882
|
+
description: 'Stacked layers for depth and multi-page content',
|
|
883
|
+
keywords: ['layers', 'stack', 'pages', 'depth', 'levels'],
|
|
884
|
+
category: 'Content',
|
|
885
|
+
paths: [{ d: 'M12 2L2 7l10 5 10-5-10-5z' }, { d: 'M2 17l10 5 10-5' }, { d: 'M2 12l10 5 10-5' }],
|
|
886
|
+
}
|
|
887
|
+
|
|
888
|
+
/** Checked checkbox for completed items */
|
|
889
|
+
export const checkSquare: IconDefinition = {
|
|
890
|
+
name: 'Check Square',
|
|
891
|
+
description: 'Checked checkbox for completed items',
|
|
892
|
+
keywords: ['check', 'checkbox', 'square', 'done', 'completed', 'task'],
|
|
893
|
+
category: 'Actions',
|
|
894
|
+
paths: [{ d: 'M9 11l3 3L22 4' }, { d: 'M21 12v7a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h11' }],
|
|
895
|
+
}
|
|
896
|
+
|
|
897
|
+
/** Fire / flame for trending / hot */
|
|
898
|
+
export const flame: IconDefinition = {
|
|
899
|
+
name: 'Flame',
|
|
900
|
+
description: 'Fire / flame for trending and hot items',
|
|
901
|
+
keywords: ['flame', 'fire', 'hot', 'trending', 'popular', 'burn'],
|
|
902
|
+
category: 'UI',
|
|
903
|
+
paths: [
|
|
904
|
+
{
|
|
905
|
+
d: 'M12 22c4.97 0 8-3.58 8-8 0-2.52-1.27-5.24-2.72-7.38a20.39 20.39 0 00-3.06-3.56L12 1l-2.22 2.06a20.39 20.39 0 00-3.06 3.56C5.27 8.76 4 11.48 4 14c0 4.42 3.03 8 8 8z',
|
|
906
|
+
},
|
|
907
|
+
{
|
|
908
|
+
d: 'M12 22c-2.21 0-4-1.79-4-4 0-1.13.57-2.35 1.22-3.31a9.15 9.15 0 011.37-1.6L12 12l1.41 1.09c.5.43.97.97 1.37 1.6.65.96 1.22 2.18 1.22 3.31 0 2.21-1.79 4-4 4z',
|
|
909
|
+
},
|
|
910
|
+
],
|
|
911
|
+
}
|
|
912
|
+
|
|
913
|
+
/** Wind / breeze for weather or speed */
|
|
914
|
+
export const wind: IconDefinition = {
|
|
915
|
+
name: 'Wind',
|
|
916
|
+
description: 'Wind / breeze for weather and speed',
|
|
917
|
+
keywords: ['wind', 'breeze', 'air', 'weather', 'fast', 'speed'],
|
|
918
|
+
category: 'Common',
|
|
919
|
+
paths: [
|
|
920
|
+
{ d: 'M9.59 4.59A2 2 0 1111 8H2' },
|
|
921
|
+
{ d: 'M12.59 19.41A2 2 0 1014 16H2' },
|
|
922
|
+
{ d: 'M17.73 7.73A2.5 2.5 0 1119.5 12H2' },
|
|
923
|
+
],
|
|
924
|
+
}
|
|
925
|
+
|
|
926
|
+
/** Slider controls for adjustments */
|
|
927
|
+
export const sliders: IconDefinition = {
|
|
928
|
+
name: 'Sliders',
|
|
929
|
+
description: 'Slider controls for adjustments and settings',
|
|
930
|
+
keywords: ['sliders', 'controls', 'adjust', 'settings', 'equalizer', 'tune'],
|
|
931
|
+
category: 'UI',
|
|
932
|
+
paths: [{ d: 'M4 21v-7M4 10V3M12 21v-9M12 8V3M20 21v-5M20 12V3' }, { d: 'M1 14h6M9 8h6M17 16h6' }],
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
/** Crossing arrows for shuffle / random */
|
|
936
|
+
export const shuffle: IconDefinition = {
|
|
937
|
+
name: 'Shuffle',
|
|
938
|
+
description: 'Crossing arrows for shuffle and random',
|
|
939
|
+
keywords: ['shuffle', 'random', 'mix', 'crossing', 'arrows'],
|
|
940
|
+
category: 'Actions',
|
|
941
|
+
paths: [{ d: 'M16 3h5v5' }, { d: 'M4 20L21 3' }, { d: 'M21 16v5h-5' }, { d: 'M15 15l6 6' }, { d: 'M4 4l5 5' }],
|
|
942
|
+
}
|
|
943
|
+
|
|
944
|
+
/** Stop circle for halt / block */
|
|
945
|
+
export const stopCircle: IconDefinition = {
|
|
946
|
+
name: 'Stop Circle',
|
|
947
|
+
description: 'Stop circle for halt and block actions',
|
|
948
|
+
keywords: ['stop', 'halt', 'block', 'circle', 'end'],
|
|
949
|
+
category: 'Status',
|
|
950
|
+
paths: [{ d: 'M12 2a10 10 0 100 20 10 10 0 000-20z' }, { d: 'M9 9h6v6H9z' }],
|
|
951
|
+
}
|
|
952
|
+
|
|
953
|
+
/** Left arrow for navigation */
|
|
954
|
+
export const arrowLeft: IconDefinition = {
|
|
955
|
+
name: 'Arrow Left',
|
|
956
|
+
description: 'Left arrow for backward navigation',
|
|
957
|
+
keywords: ['arrow', 'left', 'back', 'previous', 'direction'],
|
|
958
|
+
category: 'Navigation',
|
|
959
|
+
paths: [{ d: 'M19 12H5M12 19l-7-7 7-7' }],
|
|
960
|
+
}
|
|
961
|
+
|
|
962
|
+
/** Right arrow for navigation */
|
|
963
|
+
export const arrowRight: IconDefinition = {
|
|
964
|
+
name: 'Arrow Right',
|
|
965
|
+
description: 'Right arrow for forward navigation',
|
|
966
|
+
keywords: ['arrow', 'right', 'forward', 'next', 'direction'],
|
|
967
|
+
category: 'Navigation',
|
|
968
|
+
paths: [{ d: 'M5 12h14M12 5l7 7-7 7' }],
|
|
969
|
+
}
|
|
970
|
+
|
|
971
|
+
/** Hash / number sign */
|
|
972
|
+
export const hash: IconDefinition = {
|
|
973
|
+
name: 'Hash',
|
|
974
|
+
description: 'Hash / number sign for numbering and channels',
|
|
975
|
+
keywords: ['hash', 'number', 'pound', 'channel', 'tag', 'count'],
|
|
976
|
+
category: 'UI',
|
|
977
|
+
paths: [{ d: 'M4 9h16M4 15h16M10 3l-2 18M16 3l-2 18' }],
|
|
978
|
+
}
|
|
979
|
+
|
|
980
|
+
/** Deciduous tree for nature */
|
|
981
|
+
export const treeDeciduous: IconDefinition = {
|
|
982
|
+
name: 'Tree',
|
|
983
|
+
description: 'Deciduous tree for nature and hierarchy',
|
|
984
|
+
keywords: ['tree', 'nature', 'plant', 'hierarchy', 'branch', 'leaf'],
|
|
985
|
+
category: 'Content',
|
|
986
|
+
paths: [
|
|
987
|
+
{ d: 'M12 22V8' },
|
|
988
|
+
{
|
|
989
|
+
d: 'M12 3a5 5 0 013.5 8.5A4.5 4.5 0 0118 16H6a4.5 4.5 0 012.5-4.5A5 5 0 0112 3z',
|
|
990
|
+
},
|
|
991
|
+
],
|
|
992
|
+
}
|
|
993
|
+
|
|
994
|
+
/** Music note for audio */
|
|
995
|
+
export const music: IconDefinition = {
|
|
996
|
+
name: 'Music',
|
|
997
|
+
description: 'Music note for audio content',
|
|
998
|
+
keywords: ['music', 'audio', 'note', 'sound', 'song', 'melody'],
|
|
999
|
+
category: 'Content',
|
|
1000
|
+
paths: [{ d: 'M9 18V5l12-2v13' }, { d: 'M6 21a3 3 0 100-6 3 3 0 000 6z' }, { d: 'M18 19a3 3 0 100-6 3 3 0 000 6z' }],
|
|
1001
|
+
}
|
|
1002
|
+
|
|
1003
|
+
/** Picture frame for images */
|
|
1004
|
+
export const image: IconDefinition = {
|
|
1005
|
+
name: 'Image',
|
|
1006
|
+
description: 'Picture frame for image content',
|
|
1007
|
+
keywords: ['image', 'picture', 'photo', 'gallery', 'frame'],
|
|
1008
|
+
category: 'Content',
|
|
1009
|
+
paths: [
|
|
1010
|
+
{ d: 'M5 3h14a2 2 0 012 2v14a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2z' },
|
|
1011
|
+
{ d: 'M8.5 10a1.5 1.5 0 100-3 1.5 1.5 0 000 3z' },
|
|
1012
|
+
{ d: 'M21 15l-5-5L5 21' },
|
|
1013
|
+
],
|
|
1014
|
+
}
|
|
1015
|
+
|
|
1016
|
+
/** Film strip for movies / video */
|
|
1017
|
+
export const film: IconDefinition = {
|
|
1018
|
+
name: 'Film',
|
|
1019
|
+
description: 'Film strip for movies and video content',
|
|
1020
|
+
keywords: ['film', 'movie', 'video', 'cinema', 'media', 'strip'],
|
|
1021
|
+
category: 'Content',
|
|
1022
|
+
paths: [
|
|
1023
|
+
{
|
|
1024
|
+
d: 'M19.82 2H4.18A2.18 2.18 0 002 4.18v15.64A2.18 2.18 0 004.18 22h15.64A2.18 2.18 0 0022 19.82V4.18A2.18 2.18 0 0019.82 2z',
|
|
1025
|
+
},
|
|
1026
|
+
{ d: 'M7 2v20M17 2v20M2 12h20M2 7h5M2 17h5M17 17h5M17 7h5' },
|
|
1027
|
+
],
|
|
1028
|
+
}
|
|
1029
|
+
|
|
1030
|
+
/** Party popper for celebration */
|
|
1031
|
+
export const partyPopper: IconDefinition = {
|
|
1032
|
+
name: 'Party Popper',
|
|
1033
|
+
description: 'Party popper for celebration and success',
|
|
1034
|
+
keywords: ['party', 'celebration', 'confetti', 'success', 'congratulations', 'tada'],
|
|
1035
|
+
category: 'UI',
|
|
1036
|
+
paths: [
|
|
1037
|
+
{ d: 'M5.8 11.3L2 22l10.7-3.8' },
|
|
1038
|
+
{ d: 'M4 3h.01M22 8h.01M15 2h.01M22 20h.01' },
|
|
1039
|
+
{ d: 'M9.1 9.1c3.5-3.5 7.3-5 8.5-3.8 1.2 1.2-.3 5-3.8 8.5-3.5 3.5-7.3 5-8.5 3.8-1.2-1.2.3-5 3.8-8.5z' },
|
|
1040
|
+
{ d: 'M16 5l3 3M10 2l1 4M2 10l4 1M19 14l2 3M14 19l3 2' },
|
|
1041
|
+
],
|
|
1042
|
+
}
|
|
1043
|
+
|
|
1044
|
+
/** Chat bubble for messages / comments */
|
|
1045
|
+
export const messageCircle: IconDefinition = {
|
|
1046
|
+
name: 'Message Circle',
|
|
1047
|
+
description: 'Chat bubble for messages and comments',
|
|
1048
|
+
keywords: ['message', 'chat', 'bubble', 'comment', 'conversation', 'talk'],
|
|
1049
|
+
category: 'Content',
|
|
1050
|
+
paths: [
|
|
1051
|
+
{
|
|
1052
|
+
d: 'M21 11.5a8.38 8.38 0 01-.9 3.8 8.5 8.5 0 01-7.6 4.7 8.38 8.38 0 01-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 01-.9-3.8 8.5 8.5 0 014.7-7.6 8.38 8.38 0 013.8-.9h.5a8.48 8.48 0 018 8v.5z',
|
|
1053
|
+
},
|
|
1054
|
+
],
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1057
|
+
/** Multiple images for gallery / carousel */
|
|
1058
|
+
export const images: IconDefinition = {
|
|
1059
|
+
name: 'Images',
|
|
1060
|
+
description: 'Multiple images for gallery and carousel views',
|
|
1061
|
+
keywords: ['images', 'gallery', 'carousel', 'slideshow', 'photos', 'multiple'],
|
|
1062
|
+
category: 'Content',
|
|
1063
|
+
paths: [
|
|
1064
|
+
{ d: 'M7 3h12a2 2 0 012 2v12a2 2 0 01-2 2H7a2 2 0 01-2-2V5a2 2 0 012-2z' },
|
|
1065
|
+
{ d: 'M1 7h2v12a2 2 0 002 2h12v2' },
|
|
1066
|
+
{ d: 'M10.5 10a1.5 1.5 0 100-3 1.5 1.5 0 000 3z' },
|
|
1067
|
+
{ d: 'M21 13l-3-3-5 7' },
|
|
1068
|
+
],
|
|
1069
|
+
}
|
|
1070
|
+
|
|
1071
|
+
/** Text / typography letter for fonts */
|
|
1072
|
+
export const type: IconDefinition = {
|
|
1073
|
+
name: 'Type',
|
|
1074
|
+
description: 'Text / typography for fonts and text formatting',
|
|
1075
|
+
keywords: ['type', 'text', 'font', 'typography', 'letter', 'format'],
|
|
1076
|
+
category: 'Content',
|
|
1077
|
+
paths: [{ d: 'M4 7V4h16v3' }, { d: 'M9 20h6' }, { d: 'M12 4v16' }],
|
|
1078
|
+
}
|
|
1079
|
+
|
|
1080
|
+
/** Rocket for launch / deploy */
|
|
1081
|
+
export const rocket: IconDefinition = {
|
|
1082
|
+
name: 'Rocket',
|
|
1083
|
+
description: 'Rocket for launch, deploy, and performance',
|
|
1084
|
+
keywords: ['rocket', 'launch', 'deploy', 'fast', 'speed', 'startup'],
|
|
1085
|
+
category: 'Common',
|
|
1086
|
+
paths: [
|
|
1087
|
+
{
|
|
1088
|
+
d: 'M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 00-2.91-.09z',
|
|
1089
|
+
},
|
|
1090
|
+
{
|
|
1091
|
+
d: 'M12 15l-3-3a22 22 0 012-3.95A12.88 12.88 0 0122 2c0 2.72-.78 7.5-6 11.95A22 22 0 0112 15z',
|
|
1092
|
+
},
|
|
1093
|
+
{ d: 'M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0' },
|
|
1094
|
+
{ d: 'M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5' },
|
|
1095
|
+
],
|
|
1096
|
+
}
|
|
1097
|
+
|
|
1098
|
+
/** Alert siren for urgent notifications */
|
|
1099
|
+
export const siren: IconDefinition = {
|
|
1100
|
+
name: 'Siren',
|
|
1101
|
+
description: 'Alert siren for urgent notifications',
|
|
1102
|
+
keywords: ['siren', 'alert', 'urgent', 'emergency', 'alarm', 'police'],
|
|
1103
|
+
category: 'Status',
|
|
1104
|
+
paths: [
|
|
1105
|
+
{ d: 'M7 18v-6a5 5 0 0110 0v6' },
|
|
1106
|
+
{ d: 'M5 21h14' },
|
|
1107
|
+
{ d: 'M5 18h14' },
|
|
1108
|
+
{ d: 'M12 2v2' },
|
|
1109
|
+
{ d: 'M3.5 7l1.5 1' },
|
|
1110
|
+
{ d: 'M19 8l1.5-1' },
|
|
1111
|
+
],
|
|
1112
|
+
}
|
|
1113
|
+
|
|
1114
|
+
/** Light bulb for ideas / tips */
|
|
1115
|
+
export const lightbulb: IconDefinition = {
|
|
1116
|
+
name: 'Light Bulb',
|
|
1117
|
+
description: 'Light bulb for ideas and tips',
|
|
1118
|
+
keywords: ['lightbulb', 'idea', 'tip', 'innovation', 'bright', 'think'],
|
|
1119
|
+
category: 'Common',
|
|
1120
|
+
paths: [
|
|
1121
|
+
{
|
|
1122
|
+
d: 'M9 18h6M10 22h4',
|
|
1123
|
+
},
|
|
1124
|
+
{
|
|
1125
|
+
d: 'M12 2a7 7 0 00-4 12.7V17h8v-2.3A7 7 0 0012 2z',
|
|
1126
|
+
},
|
|
1127
|
+
],
|
|
1128
|
+
}
|
|
1129
|
+
|
|
1130
|
+
/** Flag for milestones / reporting */
|
|
1131
|
+
export const flag: IconDefinition = {
|
|
1132
|
+
name: 'Flag',
|
|
1133
|
+
description: 'Flag for milestones, reporting, and marking',
|
|
1134
|
+
keywords: ['flag', 'milestone', 'report', 'mark', 'finish'],
|
|
1135
|
+
category: 'UI',
|
|
1136
|
+
paths: [{ d: 'M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z' }, { d: 'M4 22v-7' }],
|
|
1137
|
+
}
|
|
1138
|
+
|
|
1139
|
+
/** Dollar sign for money / pricing */
|
|
1140
|
+
export const dollarSign: IconDefinition = {
|
|
1141
|
+
name: 'Dollar Sign',
|
|
1142
|
+
description: 'Dollar sign for money, pricing, and finance',
|
|
1143
|
+
keywords: ['dollar', 'money', 'price', 'currency', 'finance', 'cost'],
|
|
1144
|
+
category: 'Content',
|
|
1145
|
+
paths: [{ d: 'M12 1v22' }, { d: 'M17 5H9.5a3.5 3.5 0 100 7h5a3.5 3.5 0 010 7H6' }],
|
|
1146
|
+
}
|
|
1147
|
+
|
|
1148
|
+
/** Bidirectional horizontal arrow for exchange / compare */
|
|
1149
|
+
export const arrowLeftRight: IconDefinition = {
|
|
1150
|
+
name: 'Arrow Left Right',
|
|
1151
|
+
description: 'Bidirectional horizontal arrow for exchange and comparison',
|
|
1152
|
+
keywords: ['arrow', 'left-right', 'exchange', 'swap', 'compare', 'bidirectional'],
|
|
1153
|
+
category: 'Navigation',
|
|
1154
|
+
paths: [{ d: 'M21 7H3M18 4l3 3-3 3' }, { d: 'M3 17h18M6 14l-3 3 3 3' }],
|
|
1155
|
+
}
|
|
1156
|
+
|
|
1157
|
+
/** Magic wand for transformations */
|
|
1158
|
+
export const wand: IconDefinition = {
|
|
1159
|
+
name: 'Wand',
|
|
1160
|
+
description: 'Magic wand for transformations and effects',
|
|
1161
|
+
keywords: ['wand', 'magic', 'transform', 'effect', 'auto', 'wizard'],
|
|
1162
|
+
category: 'Actions',
|
|
1163
|
+
paths: [
|
|
1164
|
+
{ d: 'M15 4V2M15 16v-2M8 9h2M20 9h2M17.8 11.8L19 13M17.8 6.2L19 5M12.2 11.8L11 13M12.2 6.2L11 5' },
|
|
1165
|
+
{ d: 'M15 9a2 2 0 100-4 2 2 0 000 4z' },
|
|
1166
|
+
{ d: 'M6 21l9-9' },
|
|
1167
|
+
],
|
|
1168
|
+
}
|
|
1169
|
+
|
|
1170
|
+
/** Game controller for gaming */
|
|
1171
|
+
export const gamepad: IconDefinition = {
|
|
1172
|
+
name: 'Gamepad',
|
|
1173
|
+
description: 'Game controller for gaming contexts',
|
|
1174
|
+
keywords: ['gamepad', 'controller', 'game', 'gaming', 'joystick', 'play'],
|
|
1175
|
+
category: 'Content',
|
|
1176
|
+
paths: [
|
|
1177
|
+
{
|
|
1178
|
+
d: 'M6 11h4M8 9v4',
|
|
1179
|
+
},
|
|
1180
|
+
{ d: 'M15 12h.01M18 10h.01' },
|
|
1181
|
+
{
|
|
1182
|
+
d: 'M17.32 5H6.68a4 4 0 00-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 003 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 019.828 16h4.344a2 2 0 011.414.586L17 18c.5.5 1 1 2 1a3 3 0 003-3c0-1.544-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.152A4 4 0 0017.32 5z',
|
|
1183
|
+
},
|
|
1184
|
+
],
|
|
1185
|
+
}
|
|
1186
|
+
|
|
1187
|
+
/** Code brackets for programming */
|
|
1188
|
+
export const code: IconDefinition = {
|
|
1189
|
+
name: 'Code',
|
|
1190
|
+
description: 'Code brackets for programming and development',
|
|
1191
|
+
keywords: ['code', 'programming', 'development', 'brackets', 'developer', 'source'],
|
|
1192
|
+
category: 'Content',
|
|
1193
|
+
paths: [{ d: 'M16 18l6-6-6-6' }, { d: 'M8 6l-6 6 6 6' }],
|
|
1194
|
+
}
|
|
1195
|
+
|
|
1196
|
+
/** Puzzle piece for extensions / plugins */
|
|
1197
|
+
export const puzzle: IconDefinition = {
|
|
1198
|
+
name: 'Puzzle',
|
|
1199
|
+
description: 'Puzzle piece for extensions and plugins',
|
|
1200
|
+
keywords: ['puzzle', 'extension', 'plugin', 'module', 'piece', 'addon'],
|
|
1201
|
+
category: 'Content',
|
|
1202
|
+
paths: [
|
|
1203
|
+
{
|
|
1204
|
+
d: 'M19.439 7.85c-.049.322.059.648.289.878l1.568 1.568c.47.47.706 1.087.706 1.704s-.235 1.233-.706 1.704l-1.611 1.611a.98.98 0 01-.837.276c-.47-.07-.802-.48-.968-.925a2.501 2.501 0 10-3.214 3.214c.446.166.855.497.925.968a.979.979 0 01-.276.837l-1.61 1.61a2.404 2.404 0 01-1.705.707 2.402 2.402 0 01-1.704-.706l-1.568-1.568a1.026 1.026 0 00-.877-.29c-.493.074-.84.504-1.02.968a2.5 2.5 0 11-3.237-3.237c.464-.18.894-.527.967-1.02a1.026 1.026 0 00-.289-.877l-1.568-1.568A2.402 2.402 0 011.998 12c0-.617.236-1.234.706-1.704L4.315 8.685a.98.98 0 01.837-.276c.47.07.802.48.968.925a2.501 2.501 0 103.214-3.214c-.446-.166-.855-.497-.925-.968a.979.979 0 01.276-.837l1.61-1.61a2.404 2.404 0 011.705-.707c.618 0 1.234.236 1.704.706l1.568 1.568c.23.23.556.338.877.29.493-.074.84-.504 1.02-.969a2.5 2.5 0 113.237 3.237c-.464.18-.894.527-.967 1.02z',
|
|
1205
|
+
},
|
|
1206
|
+
],
|
|
1207
|
+
}
|
|
1208
|
+
|
|
1209
|
+
/** Ruler for layout / measurement */
|
|
1210
|
+
export const ruler: IconDefinition = {
|
|
1211
|
+
name: 'Ruler',
|
|
1212
|
+
description: 'Ruler for layout and measurement',
|
|
1213
|
+
keywords: ['ruler', 'measure', 'layout', 'size', 'dimension', 'scale'],
|
|
1214
|
+
category: 'Content',
|
|
1215
|
+
paths: [
|
|
1216
|
+
{
|
|
1217
|
+
d: 'M21.174 6.812a1 1 0 00-3.986-3.987L3.842 16.174a2 2 0 000 2.83l1.153 1.154a2 2 0 002.83 0L21.174 6.812z',
|
|
1218
|
+
},
|
|
1219
|
+
{ d: 'M15 5l1 1M12 8l1 1M9 11l1 1M6 14l1 1' },
|
|
1220
|
+
],
|
|
1221
|
+
}
|
|
1222
|
+
|
|
1223
|
+
/** Application window frame */
|
|
1224
|
+
export const appWindow: IconDefinition = {
|
|
1225
|
+
name: 'App Window',
|
|
1226
|
+
description: 'Application window frame for UI elements',
|
|
1227
|
+
keywords: ['window', 'app', 'application', 'frame', 'browser', 'panel'],
|
|
1228
|
+
category: 'UI',
|
|
1229
|
+
paths: [
|
|
1230
|
+
{ d: 'M4 2h16a2 2 0 012 2v16a2 2 0 01-2 2H4a2 2 0 01-2-2V4a2 2 0 012-2z' },
|
|
1231
|
+
{ d: 'M2 8h20' },
|
|
1232
|
+
{ d: 'M6 5h.01M9 5h.01' },
|
|
1233
|
+
],
|
|
1234
|
+
}
|
|
1235
|
+
|
|
1236
|
+
/** Electrical plug for connections / integrations */
|
|
1237
|
+
export const plug: IconDefinition = {
|
|
1238
|
+
name: 'Plug',
|
|
1239
|
+
description: 'Electrical plug for connections and integrations',
|
|
1240
|
+
keywords: ['plug', 'connection', 'integration', 'power', 'socket', 'connect'],
|
|
1241
|
+
category: 'Content',
|
|
1242
|
+
paths: [{ d: 'M12 22v-5' }, { d: 'M9 8V2M15 8V2' }, { d: 'M18 8v5a6 6 0 01-12 0V8z' }],
|
|
1243
|
+
}
|
|
1244
|
+
|
|
1245
|
+
/** Wrench for tools / maintenance */
|
|
1246
|
+
export const wrench: IconDefinition = {
|
|
1247
|
+
name: 'Wrench',
|
|
1248
|
+
description: 'Wrench for tools and maintenance',
|
|
1249
|
+
keywords: ['wrench', 'tool', 'fix', 'repair', 'maintenance', 'spanner'],
|
|
1250
|
+
category: 'Actions',
|
|
1251
|
+
paths: [
|
|
1252
|
+
{
|
|
1253
|
+
d: 'M14.7 6.3a1 1 0 000 1.4l1.6 1.6a1 1 0 001.4 0l3.77-3.77a6 6 0 01-7.94 7.94l-6.91 6.91a2.12 2.12 0 01-3-3l6.91-6.91a6 6 0 017.94-7.94l-3.76 3.76z',
|
|
1254
|
+
},
|
|
1255
|
+
],
|
|
1256
|
+
}
|
|
1257
|
+
|
|
1258
|
+
/** Compass for exploration / navigation */
|
|
1259
|
+
export const compass: IconDefinition = {
|
|
1260
|
+
name: 'Compass',
|
|
1261
|
+
description: 'Compass for exploration and navigation',
|
|
1262
|
+
keywords: ['compass', 'explore', 'navigate', 'direction', 'discover', 'orientation'],
|
|
1263
|
+
category: 'Navigation',
|
|
1264
|
+
paths: [
|
|
1265
|
+
{ d: 'M12 2a10 10 0 100 20 10 10 0 000-20z' },
|
|
1266
|
+
{ d: 'M16.24 7.76l-2.12 6.36-6.36 2.12 2.12-6.36 6.36-2.12z' },
|
|
1267
|
+
],
|
|
1268
|
+
}
|