@molecule/app-icons-molecule 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +683 -0
  2. package/package.json +7 -6
package/README.md ADDED
@@ -0,0 +1,683 @@
1
+ <!--
2
+ AUTO-GENERATED — DO NOT EDIT THIS FILE.
3
+ Generated by `mlcl sync-docs` from the package's src/index.ts JSDoc + mlcl/registry.json.
4
+ Edits here are overwritten on the next commit (molecule's pre-commit hook regenerates).
5
+ To change this document, edit the module-level JSDoc in src/index.ts.
6
+ Generated: 2026-08-04T01:51:02.967Z
7
+ -->
8
+
9
+ # @molecule/app-icons-molecule
10
+
11
+ > **Auto-generated, AI-first package reference** for the [molecule.dev](https://molecule.dev) ecosystem.
12
+ > It is written to be read by coding agents as much as by people, and is generated from this
13
+ > package's source — edit `src/index.ts` JSDoc, not this file.
14
+
15
+ Molecule default icon set for molecule.dev — the fleet's built-in SVG
16
+ glyphs bundled as an `IconSet` keyed by kebab-case name.
17
+
18
+ ## Quick Start
19
+
20
+ ```typescript
21
+ import { setIconSet } from '@molecule/app-icons'
22
+ import { iconSet } from '@molecule/app-icons-molecule'
23
+
24
+ setIconSet(iconSet) // once, at app startup — before anything renders an icon
25
+ ```
26
+
27
+ ## Type
28
+
29
+ `provider`
30
+
31
+ ## Installation
32
+
33
+ ```bash
34
+ npm install @molecule/app-icons-molecule @molecule/app-icons
35
+ ```
36
+
37
+ ## API
38
+
39
+ ### Constants
40
+
41
+ #### `arrowDown`
42
+
43
+ ```typescript
44
+ const arrowDown: IconData
45
+ ```
46
+
47
+ #### `arrowLeft`
48
+
49
+ ```typescript
50
+ const arrowLeft: IconData
51
+ ```
52
+
53
+ #### `arrowRight`
54
+
55
+ ```typescript
56
+ const arrowRight: IconData
57
+ ```
58
+
59
+ #### `arrowUp`
60
+
61
+ ```typescript
62
+ const arrowUp: IconData
63
+ ```
64
+
65
+ #### `bell`
66
+
67
+ ```typescript
68
+ const bell: IconData
69
+ ```
70
+
71
+ #### `bookmark`
72
+
73
+ ```typescript
74
+ const bookmark: IconData
75
+ ```
76
+
77
+ #### `browser`
78
+
79
+ Browser window — used by the IDE preview device-frame cycle to represent the
80
+ "responsive" (no fixed device frame, full-width) state.
81
+
82
+ ```typescript
83
+ const browser: IconData
84
+ ```
85
+
86
+ #### `bug`
87
+
88
+ Bug / report glyph — used for "report a bug" affordances (e.g. the IDE chat
89
+ header's report button). A real beetle silhouette, not a warning triangle.
90
+
91
+ ```typescript
92
+ const bug: IconData
93
+ ```
94
+
95
+ #### `calendar`
96
+
97
+ ```typescript
98
+ const calendar: IconData
99
+ ```
100
+
101
+ #### `chat`
102
+
103
+ Speech-bubble glyph (authentic GitHub Octicons 16px `comment`). The themed
104
+ channel icon for SMS/message activity in `@molecule/app-ide-react`'s Activity
105
+ card + panel — the SVG counterpart to the old `💬` emoji. Filled with
106
+ `currentColor` so it follows the surrounding theme token like the rest of the
107
+ set.
108
+
109
+ ```typescript
110
+ const chat: IconData
111
+ ```
112
+
113
+ #### `check`
114
+
115
+ ```typescript
116
+ const check: IconData
117
+ ```
118
+
119
+ #### `checkCircle`
120
+
121
+ ```typescript
122
+ const checkCircle: IconData
123
+ ```
124
+
125
+ #### `chevronDown`
126
+
127
+ ```typescript
128
+ const chevronDown: IconData
129
+ ```
130
+
131
+ #### `chevronLeft`
132
+
133
+ ```typescript
134
+ const chevronLeft: IconData
135
+ ```
136
+
137
+ #### `chevronRight`
138
+
139
+ ```typescript
140
+ const chevronRight: IconData
141
+ ```
142
+
143
+ #### `chevronsLeft`
144
+
145
+ SVG path data for the chevrons left icon.
146
+
147
+ ```typescript
148
+ const chevronsLeft: IconData
149
+ ```
150
+
151
+ #### `chevronsRight`
152
+
153
+ SVG path data for the chevrons right icon.
154
+
155
+ ```typescript
156
+ const chevronsRight: IconData
157
+ ```
158
+
159
+ #### `chevronsUpDown`
160
+
161
+ SVG path data for the chevrons up-down icon — the universal neutral "this
162
+ column is sortable but not currently sorted" glyph. Composed from the same
163
+ `chevron-up` and `chevron-down` shapes (translated into the top and bottom
164
+ halves) so it reads as one consistent family with the active asc/desc
165
+ indicators.
166
+
167
+ ```typescript
168
+ const chevronsUpDown: IconData
169
+ ```
170
+
171
+ #### `chevronUp`
172
+
173
+ ```typescript
174
+ const chevronUp: IconData
175
+ ```
176
+
177
+ #### `clock`
178
+
179
+ ```typescript
180
+ const clock: IconData
181
+ ```
182
+
183
+ #### `code`
184
+
185
+ ```typescript
186
+ const code: IconData
187
+ ```
188
+
189
+ #### `copy`
190
+
191
+ ```typescript
192
+ const copy: IconData
193
+ ```
194
+
195
+ #### `deviceDesktop`
196
+
197
+ Monitor / desktop display — used by the IDE preview device-frame cycle.
198
+
199
+ ```typescript
200
+ const deviceDesktop: IconData
201
+ ```
202
+
203
+ #### `deviceMobile`
204
+
205
+ Smartphone / mobile device — used by the IDE preview device-frame cycle.
206
+
207
+ ```typescript
208
+ const deviceMobile: IconData
209
+ ```
210
+
211
+ #### `deviceTablet`
212
+
213
+ Tablet device (landscape slab with a home indicator) — used by the IDE
214
+ preview device-frame cycle. Octicons has no tablet glyph, so this is drawn
215
+ in the same 16px filled style: an outer rounded body, an inset screen cut
216
+ out via the `evenodd` rule, and a home dot inside the screen.
217
+
218
+ ```typescript
219
+ const deviceTablet: IconData
220
+ ```
221
+
222
+ #### `download`
223
+
224
+ ```typescript
225
+ const download: IconData
226
+ ```
227
+
228
+ #### `ellipsisHorizontal`
229
+
230
+ ```typescript
231
+ const ellipsisHorizontal: IconData
232
+ ```
233
+
234
+ #### `exclamationTriangle`
235
+
236
+ ```typescript
237
+ const exclamationTriangle: IconData
238
+ ```
239
+
240
+ #### `eye`
241
+
242
+ ```typescript
243
+ const eye: IconData
244
+ ```
245
+
246
+ #### `eyeClosed`
247
+
248
+ ```typescript
249
+ const eyeClosed: IconData
250
+ ```
251
+
252
+ #### `file`
253
+
254
+ ```typescript
255
+ const file: IconData
256
+ ```
257
+
258
+ #### `filter`
259
+
260
+ ```typescript
261
+ const filter: IconData
262
+ ```
263
+
264
+ #### `folder`
265
+
266
+ ```typescript
267
+ const folder: IconData
268
+ ```
269
+
270
+ #### `gear`
271
+
272
+ ```typescript
273
+ const gear: IconData
274
+ ```
275
+
276
+ #### `github`
277
+
278
+ SVG path data for the github icon.
279
+
280
+ ```typescript
281
+ const github: IconData
282
+ ```
283
+
284
+ #### `gitlab`
285
+
286
+ SVG path data for the gitlab icon.
287
+
288
+ ```typescript
289
+ const gitlab: IconData
290
+ ```
291
+
292
+ #### `globe`
293
+
294
+ ```typescript
295
+ const globe: IconData
296
+ ```
297
+
298
+ #### `google`
299
+
300
+ SVG path data for the google icon.
301
+
302
+ ```typescript
303
+ const google: IconData
304
+ ```
305
+
306
+ #### `hash`
307
+
308
+ Hash/number-sign glyph (a hand-built `#` — four bars in the 16px box). The
309
+ themed channel icon for chat-channel activity in `@molecule/app-ide-react`'s
310
+ Activity card + panel — the SVG counterpart to the old literal `#` text glyph.
311
+ Filled with `currentColor` so it follows the surrounding theme token like the
312
+ rest of the set.
313
+
314
+ ```typescript
315
+ const hash: IconData
316
+ ```
317
+
318
+ #### `heart`
319
+
320
+ ```typescript
321
+ const heart: IconData
322
+ ```
323
+
324
+ #### `history`
325
+
326
+ ```typescript
327
+ const history: IconData
328
+ ```
329
+
330
+ #### `home`
331
+
332
+ ```typescript
333
+ const home: IconData
334
+ ```
335
+
336
+ #### `icons`
337
+
338
+ Molecule default icon set — all icons keyed by kebab-case name.
339
+
340
+ Built from individual icon modules in `./icons/`.
341
+
342
+ ```typescript
343
+ const icons: IconSet
344
+ ```
345
+
346
+ #### `iconSet`
347
+
348
+ Molecule default icon set provider. Wire at app startup:
349
+
350
+ ```typescript
351
+ import { setIconSet } from '@molecule/app-icons'
352
+ import { iconSet } from '@molecule/app-icons-molecule'
353
+ setIconSet(iconSet)
354
+ ```
355
+
356
+ ```typescript
357
+ const iconSet: IconSet
358
+ ```
359
+
360
+ #### `image`
361
+
362
+ ```typescript
363
+ const image: IconData
364
+ ```
365
+
366
+ #### `infoCircle`
367
+
368
+ ```typescript
369
+ const infoCircle: IconData
370
+ ```
371
+
372
+ #### `lightbulb`
373
+
374
+ ```typescript
375
+ const lightbulb: IconData
376
+ ```
377
+
378
+ #### `link`
379
+
380
+ ```typescript
381
+ const link: IconData
382
+ ```
383
+
384
+ #### `linkExternal`
385
+
386
+ ```typescript
387
+ const linkExternal: IconData
388
+ ```
389
+
390
+ #### `lock`
391
+
392
+ ```typescript
393
+ const lock: IconData
394
+ ```
395
+
396
+ #### `logoDot`
397
+
398
+ SVG path data for the logo dot icon.
399
+
400
+ ```typescript
401
+ const logoDot: IconData
402
+ ```
403
+
404
+ #### `logoMark`
405
+
406
+ SVG path data for the logo mark icon.
407
+
408
+ ```typescript
409
+ const logoMark: IconData
410
+ ```
411
+
412
+ #### `mail`
413
+
414
+ ```typescript
415
+ const mail: IconData
416
+ ```
417
+
418
+ #### `maximize`
419
+
420
+ ```typescript
421
+ const maximize: IconData
422
+ ```
423
+
424
+ #### `mention`
425
+
426
+ ```typescript
427
+ const mention: IconData
428
+ ```
429
+
430
+ #### `menu`
431
+
432
+ ```typescript
433
+ const menu: IconData
434
+ ```
435
+
436
+ #### `microphone`
437
+
438
+ ```typescript
439
+ const microphone: IconData
440
+ ```
441
+
442
+ #### `minimize`
443
+
444
+ ```typescript
445
+ const minimize: IconData
446
+ ```
447
+
448
+ #### `minus`
449
+
450
+ ```typescript
451
+ const minus: IconData
452
+ ```
453
+
454
+ #### `moon`
455
+
456
+ ```typescript
457
+ const moon: IconData
458
+ ```
459
+
460
+ #### `paperclip`
461
+
462
+ ```typescript
463
+ const paperclip: IconData
464
+ ```
465
+
466
+ #### `pencil`
467
+
468
+ ```typescript
469
+ const pencil: IconData
470
+ ```
471
+
472
+ #### `people`
473
+
474
+ ```typescript
475
+ const people: IconData
476
+ ```
477
+
478
+ #### `pin`
479
+
480
+ ```typescript
481
+ const pin: IconData
482
+ ```
483
+
484
+ #### `plus`
485
+
486
+ ```typescript
487
+ const plus: IconData
488
+ ```
489
+
490
+ #### `question`
491
+
492
+ ```typescript
493
+ const question: IconData
494
+ ```
495
+
496
+ #### `reply`
497
+
498
+ ```typescript
499
+ const reply: IconData
500
+ ```
501
+
502
+ #### `rotate`
503
+
504
+ Screen / device rotation (portrait ⇄ landscape) — used by the IDE preview
505
+ panel's "Rotate" control to swap a fixed-frame device (tablet / mobile)
506
+ between portrait and landscape.
507
+
508
+ Octicons has no screen-rotation glyph, so this is the canonical Material
509
+ Design `screen_rotation` mark (a tilted device with the two curved
510
+ re-orientation arrows) — instantly recognizable as "rotate the screen" and
511
+ clearly distinct from the neighbouring two-arrow `sync`/refresh glyph. It is
512
+ drawn on Material's native 24×24 grid; the renderer scales it to the
513
+ requested pixel size like any other glyph.
514
+
515
+ ```typescript
516
+ const rotate: IconData
517
+ ```
518
+
519
+ #### `search`
520
+
521
+ ```typescript
522
+ const search: IconData
523
+ ```
524
+
525
+ #### `share`
526
+
527
+ ```typescript
528
+ const share: IconData
529
+ ```
530
+
531
+ #### `signIn`
532
+
533
+ ```typescript
534
+ const signIn: IconData
535
+ ```
536
+
537
+ #### `signOut`
538
+
539
+ ```typescript
540
+ const signOut: IconData
541
+ ```
542
+
543
+ #### `sortAsc`
544
+
545
+ ```typescript
546
+ const sortAsc: IconData
547
+ ```
548
+
549
+ #### `sortDesc`
550
+
551
+ ```typescript
552
+ const sortDesc: IconData
553
+ ```
554
+
555
+ #### `sparkle`
556
+
557
+ A four-point sparkle (✦) — the "smart tip / suggestion" glyph used for the
558
+ proactive relevant-skill hint and the onboarding tip card. Reads as a tip far
559
+ better than the generic lightbulb it replaces (P3-01). Each of the four edges is
560
+ a quadratic curve that bows toward the centre, forming the concave points.
561
+
562
+ ```typescript
563
+ const sparkle: IconData
564
+ ```
565
+
566
+ #### `star`
567
+
568
+ ```typescript
569
+ const star: IconData
570
+ ```
571
+
572
+ #### `starOutline`
573
+
574
+ ```typescript
575
+ const starOutline: IconData
576
+ ```
577
+
578
+ #### `sun`
579
+
580
+ ```typescript
581
+ const sun: IconData
582
+ ```
583
+
584
+ #### `sync`
585
+
586
+ ```typescript
587
+ const sync: IconData
588
+ ```
589
+
590
+ #### `table`
591
+
592
+ ```typescript
593
+ const table: IconData
594
+ ```
595
+
596
+ #### `tag`
597
+
598
+ ```typescript
599
+ const tag: IconData
600
+ ```
601
+
602
+ #### `thumbsdown`
603
+
604
+ ```typescript
605
+ const thumbsdown: IconData
606
+ ```
607
+
608
+ #### `thumbsup`
609
+
610
+ ```typescript
611
+ const thumbsup: IconData
612
+ ```
613
+
614
+ #### `trash`
615
+
616
+ ```typescript
617
+ const trash: IconData
618
+ ```
619
+
620
+ #### `twitter`
621
+
622
+ SVG path data for the twitter icon.
623
+
624
+ ```typescript
625
+ const twitter: IconData
626
+ ```
627
+
628
+ #### `unlock`
629
+
630
+ ```typescript
631
+ const unlock: IconData
632
+ ```
633
+
634
+ #### `upload`
635
+
636
+ ```typescript
637
+ const upload: IconData
638
+ ```
639
+
640
+ #### `user`
641
+
642
+ ```typescript
643
+ const user: IconData
644
+ ```
645
+
646
+ #### `xCircle`
647
+
648
+ ```typescript
649
+ const xCircle: IconData
650
+ ```
651
+
652
+ #### `xMark`
653
+
654
+ ```typescript
655
+ const xMark: IconData
656
+ ```
657
+
658
+ ## Core Interface
659
+
660
+ Implements `@molecule/app-icons` interface.
661
+
662
+ ## Injection Notes
663
+
664
+ ### Requirements
665
+
666
+ Peer dependencies:
667
+
668
+ - `@molecule/app-icons` ^1.0.1
669
+
670
+ ### Runtime Dependencies
671
+
672
+ - `@molecule/app-icons`
673
+
674
+ - **Icon names are kebab-case** (`'arrow-right'`, `'check-circle'`). The
675
+ exported constants are camelCase (`arrowRight`) but registration converts
676
+ the keys — `<Icon name="arrowRight" />` is a runtime error, not a blank.
677
+ - Beyond the required `ComponentIconName` contract this set ships extra
678
+ glyphs (`browser`, `chat`, `device-desktop|mobile|tablet`, `hash`,
679
+ `rotate`, `sparkle`, `star-outline`), registered type-safely via the
680
+ `CustomIconNames` augmentation.
681
+ - In components prefer the framework UI's `<Icon name="…" />` (reads the
682
+ bonded set); use `getIconDataUrl(name, color)` for CSS/background/favicon
683
+ contexts.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@molecule/app-icons-molecule",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "Molecule default icon set for molecule.dev",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -17,7 +17,8 @@
17
17
  }
18
18
  },
19
19
  "files": [
20
- "dist"
20
+ "dist",
21
+ "README.md"
21
22
  ],
22
23
  "keywords": [
23
24
  "molecule",
@@ -26,21 +27,21 @@
26
27
  ],
27
28
  "license": "Apache-2.0",
28
29
  "peerDependencies": {
29
- "@molecule/app-icons": "^1.0.0"
30
+ "@molecule/app-icons": "^1.0.1"
30
31
  },
31
32
  "devDependencies": {
32
- "@molecule/app-icons": "1.0.0",
33
+ "@molecule/app-icons": "1.0.2",
33
34
  "@primer/octicons": "19.32.0",
34
35
  "@types/node": "26.1.2",
35
36
  "typescript": "6.0.3",
36
- "vitest": "4.1.10"
37
+ "vitest": "4.1.11"
37
38
  },
38
39
  "repository": {
39
40
  "type": "git",
40
41
  "url": "https://github.com/molecule-dev/molecule.git",
41
42
  "directory": "packages/app/bonds/icons/molecule"
42
43
  },
43
- "homepage": "https://github.com/molecule-dev/molecule/tree/main/packages/app/bonds/icons/molecule",
44
+ "homepage": "https://www.molecule.dev/packages/app-icons-molecule",
44
45
  "bugs": "https://github.com/molecule-dev/molecule/issues",
45
46
  "publishConfig": {
46
47
  "access": "public"