@mlola-ui/icons 1.0.7 → 1.0.9

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 CHANGED
@@ -27,7 +27,7 @@ assistive technology; an icon-only control still needs its own accessible name.
27
27
  | Path | What it is |
28
28
  | --- | --- |
29
29
  | `@mlola-ui/icons` | every `IconPascalName` export |
30
- | `@mlola-ui/icons/glyphs.css` | the `--mlola-glyph-*` custom properties |
30
+ | `@mlola-ui/icons/glyphs.css` | glyph alignment, optical sizes and the pulse; the engine stylesheet already carries all but the pulse |
31
31
 
32
32
  Requires React and ReactDOM 18 or newer as peers. Third-party icon packages and
33
33
  duplicated inline SVGs are not used anywhere in Mlola.
@@ -0,0 +1,244 @@
1
+ import * as React from "react";
2
+ export interface IconProps extends React.SVGAttributes<SVGElement> {
3
+ size?: number | string;
4
+ strokeWidth?: number | string;
5
+ className?: string;
6
+ animate?: boolean;
7
+ opticalSize?: "small" | "default" | "large";
8
+ title?: string;
9
+ }
10
+ export type MlolaGlyph = React.ForwardRefExoticComponent<IconProps & React.RefAttributes<SVGSVGElement>>;
11
+ export declare function createMlolaGlyph(displayName: string, renderPaths: (props: {
12
+ animate?: boolean;
13
+ }) => React.ReactNode): MlolaGlyph;
14
+ export declare const IconSpark: MlolaGlyph;
15
+ export declare const IconPalette: MlolaGlyph;
16
+ export declare const IconMotion: MlolaGlyph;
17
+ export declare const IconBox3D: MlolaGlyph;
18
+ export declare const IconLayers: MlolaGlyph;
19
+ export declare const IconBlocks: MlolaGlyph;
20
+ export declare const IconTemplate: MlolaGlyph;
21
+ export declare const IconFilePlus: MlolaGlyph;
22
+ export declare const IconFolderOpen: MlolaGlyph;
23
+ export declare const IconShare: MlolaGlyph;
24
+ export declare const IconEdit: MlolaGlyph;
25
+ export declare const IconTrash: MlolaGlyph;
26
+ export declare const IconCheck: MlolaGlyph;
27
+ export declare const IconArrowRight: MlolaGlyph;
28
+ export declare const IconArrowUpRight: MlolaGlyph;
29
+ export declare const IconCopy: MlolaGlyph;
30
+ export declare const IconMoon: MlolaGlyph;
31
+ export declare const IconSun: MlolaGlyph;
32
+ export declare const IconSearch: MlolaGlyph;
33
+ export declare const IconChevronDown: MlolaGlyph;
34
+ export declare const IconMonitor: MlolaGlyph;
35
+ export declare const IconSmartphone: MlolaGlyph;
36
+ export declare const IconCommand: MlolaGlyph;
37
+ export declare const IconSliders: MlolaGlyph;
38
+ export declare const IconTerminal: MlolaGlyph;
39
+ export declare const IconShield: MlolaGlyph;
40
+ export declare const IconLock: MlolaGlyph;
41
+ export declare const IconUnlock: MlolaGlyph;
42
+ export declare const IconZap: MlolaGlyph;
43
+ export declare const IconEye: MlolaGlyph;
44
+ export declare const IconEyeOff: MlolaGlyph;
45
+ export declare const IconCode: MlolaGlyph;
46
+ export declare const IconCircleDashed: MlolaGlyph;
47
+ export declare const IconLoader: MlolaGlyph;
48
+ export declare const IconX: MlolaGlyph;
49
+ export declare const IconMenu: MlolaGlyph;
50
+ export declare const IconMinus: MlolaGlyph;
51
+ export declare const IconPlus: MlolaGlyph;
52
+ export declare const IconChevronUp: MlolaGlyph;
53
+ export declare const IconChevronLeft: MlolaGlyph;
54
+ export declare const IconChevronRight: MlolaGlyph;
55
+ export declare const IconArrowLeft: MlolaGlyph;
56
+ export declare const IconArrowUp: MlolaGlyph;
57
+ export declare const IconArrowDown: MlolaGlyph;
58
+ export declare const IconChevronsUpDown: MlolaGlyph;
59
+ export declare const IconMoreHorizontal: MlolaGlyph;
60
+ export declare const IconMail: MlolaGlyph;
61
+ export declare const IconStar: MlolaGlyph;
62
+ export declare const IconCircleCheck: MlolaGlyph;
63
+ export declare const IconCircleAlert: MlolaGlyph;
64
+ export declare const IconTriangleAlert: MlolaGlyph;
65
+ export declare const IconCircleX: MlolaGlyph;
66
+ export declare const IconInfo: MlolaGlyph;
67
+ export declare const IconBan: MlolaGlyph;
68
+ export declare const IconBell: MlolaGlyph;
69
+ export declare const IconShoppingCart: MlolaGlyph;
70
+ export declare const IconHeart: MlolaGlyph;
71
+ export declare const IconUser: MlolaGlyph;
72
+ export declare const IconSettings: MlolaGlyph;
73
+ export declare const IconDownload: MlolaGlyph;
74
+ export declare const IconUpload: MlolaGlyph;
75
+ export declare const IconCalendar: MlolaGlyph;
76
+ export declare const IconClock: MlolaGlyph;
77
+ export declare const IconHome: MlolaGlyph;
78
+ export declare const IconExternalLink: MlolaGlyph;
79
+ export declare const IconMic: MlolaGlyph;
80
+ export declare const IconMicOff: MlolaGlyph;
81
+ export declare const IconStop: MlolaGlyph;
82
+ export declare const IconPaperclip: MlolaGlyph;
83
+ export declare const IconRefresh: MlolaGlyph;
84
+ export declare const IconThumbUp: MlolaGlyph;
85
+ export declare const IconThumbDown: MlolaGlyph;
86
+ export declare const IconVolume: MlolaGlyph;
87
+ export declare const IconTool: MlolaGlyph;
88
+ export declare const IconLink: MlolaGlyph;
89
+ export declare const IconBrain: MlolaGlyph;
90
+ export declare const IconFolder: MlolaGlyph;
91
+ export declare const IconFile: MlolaGlyph;
92
+ export declare const IconGitBranch: MlolaGlyph;
93
+ export declare const IconGitCommit: MlolaGlyph;
94
+ export declare const IconGitPullRequest: MlolaGlyph;
95
+ export declare const IconPointer: MlolaGlyph;
96
+ export declare const IconHand: MlolaGlyph;
97
+ export declare const IconSquare: MlolaGlyph;
98
+ export declare const IconCircle: MlolaGlyph;
99
+ export declare const IconDiamond: MlolaGlyph;
100
+ export declare const IconPen: MlolaGlyph;
101
+ export declare const IconType: MlolaGlyph;
102
+ export declare const IconStickyNote: MlolaGlyph;
103
+ export declare const IconEraser: MlolaGlyph;
104
+ export declare const IconMaximize: MlolaGlyph;
105
+ export declare const IconWorkflow: MlolaGlyph;
106
+ export declare const IconPlay: MlolaGlyph;
107
+ export declare const IconUndo: MlolaGlyph;
108
+ export declare const IconRedo: MlolaGlyph;
109
+ export declare const IconBold: MlolaGlyph;
110
+ export declare const IconItalic: MlolaGlyph;
111
+ export declare const IconUnderline: MlolaGlyph;
112
+ export declare const IconStrikethrough: MlolaGlyph;
113
+ export declare const IconList: MlolaGlyph;
114
+ export declare const IconListOrdered: MlolaGlyph;
115
+ export declare const IconQuote: MlolaGlyph;
116
+ export declare const IconHeading: MlolaGlyph;
117
+ export declare const IconCodeBlock: MlolaGlyph;
118
+ export declare const IconCheckSquare: MlolaGlyph;
119
+ export declare const IconGrip: MlolaGlyph;
120
+ export declare const IconClearFormat: MlolaGlyph;
121
+ export declare const IconMoreVertical: MlolaGlyph;
122
+ export declare const IconPanelLeft: MlolaGlyph;
123
+ export declare const IconLayoutGrid: MlolaGlyph;
124
+ export declare const IconLayoutList: MlolaGlyph;
125
+ export declare const IconArrowUpDown: MlolaGlyph;
126
+ export declare const IconFilter: MlolaGlyph;
127
+ export declare const IconMinimize: MlolaGlyph;
128
+ export declare const IconChevronsLeft: MlolaGlyph;
129
+ export declare const IconChevronsRight: MlolaGlyph;
130
+ export declare const IconSend: MlolaGlyph;
131
+ export declare const IconArchive: MlolaGlyph;
132
+ export declare const IconInbox: MlolaGlyph;
133
+ export declare const IconTag: MlolaGlyph;
134
+ export declare const IconBookmark: MlolaGlyph;
135
+ export declare const IconPin: MlolaGlyph;
136
+ export declare const IconFlag: MlolaGlyph;
137
+ export declare const IconPrinter: MlolaGlyph;
138
+ export declare const IconClipboard: MlolaGlyph;
139
+ export declare const IconLogIn: MlolaGlyph;
140
+ export declare const IconLogOut: MlolaGlyph;
141
+ export declare const IconZoomIn: MlolaGlyph;
142
+ export declare const IconZoomOut: MlolaGlyph;
143
+ export declare const IconPause: MlolaGlyph;
144
+ export declare const IconImage: MlolaGlyph;
145
+ export declare const IconGlobe: MlolaGlyph;
146
+ export declare const IconDatabase: MlolaGlyph;
147
+ export declare const IconCloud: MlolaGlyph;
148
+ export declare const IconCreditCard: MlolaGlyph;
149
+ export declare const IconBarChart: MlolaGlyph;
150
+ export declare const IconTrendingUp: MlolaGlyph;
151
+ export declare const IconKey: MlolaGlyph;
152
+ export declare const IconMapPin: MlolaGlyph;
153
+ export declare const IconPhone: MlolaGlyph;
154
+ export declare const IconMessage: MlolaGlyph;
155
+ export declare const IconHelp: MlolaGlyph;
156
+ export declare const IconLightbulb: MlolaGlyph;
157
+ export declare const Sparkles: MlolaGlyph;
158
+ export declare const Palette: MlolaGlyph;
159
+ export declare const Box: MlolaGlyph;
160
+ export declare const Layers: MlolaGlyph;
161
+ export declare const Blocks: MlolaGlyph;
162
+ export declare const LayoutTemplate: MlolaGlyph;
163
+ export declare const Code2: MlolaGlyph;
164
+ export declare const Check: MlolaGlyph;
165
+ export declare const Copy: MlolaGlyph;
166
+ export declare const ArrowRight: MlolaGlyph;
167
+ export declare const ArrowUpRight: MlolaGlyph;
168
+ export declare const ArrowLeft: MlolaGlyph;
169
+ export declare const ArrowUp: MlolaGlyph;
170
+ export declare const ArrowDown: MlolaGlyph;
171
+ export declare const ChevronDown: MlolaGlyph;
172
+ export declare const ChevronUp: MlolaGlyph;
173
+ export declare const ChevronLeft: MlolaGlyph;
174
+ export declare const ChevronRight: MlolaGlyph;
175
+ export declare const ChevronsUpDown: MlolaGlyph;
176
+ export declare const CircleDashed: MlolaGlyph;
177
+ export declare const Loader2: MlolaGlyph;
178
+ export declare const Monitor: MlolaGlyph;
179
+ export declare const Moon: MlolaGlyph;
180
+ export declare const Search: MlolaGlyph;
181
+ export declare const Smartphone: MlolaGlyph;
182
+ export declare const Sun: MlolaGlyph;
183
+ export declare const Eye: MlolaGlyph;
184
+ export declare const EyeOff: MlolaGlyph;
185
+ export declare const Zap: MlolaGlyph;
186
+ export declare const X: MlolaGlyph;
187
+ export declare const Menu: MlolaGlyph;
188
+ export declare const Minus: MlolaGlyph;
189
+ export declare const Plus: MlolaGlyph;
190
+ export declare const MoreHorizontal: MlolaGlyph;
191
+ export declare const Mail: MlolaGlyph;
192
+ export declare const Star: MlolaGlyph;
193
+ export declare const CircleCheck: MlolaGlyph;
194
+ export declare const CircleAlert: MlolaGlyph;
195
+ export declare const TriangleAlert: MlolaGlyph;
196
+ export declare const CircleX: MlolaGlyph;
197
+ export declare const Info: MlolaGlyph;
198
+ export declare const Ban: MlolaGlyph;
199
+ export declare const Bell: MlolaGlyph;
200
+ export declare const ShoppingCart: MlolaGlyph;
201
+ export declare const Heart: MlolaGlyph;
202
+ export declare const User: MlolaGlyph;
203
+ export declare const Settings: MlolaGlyph;
204
+ export declare const Download: MlolaGlyph;
205
+ export declare const Upload: MlolaGlyph;
206
+ export declare const Calendar: MlolaGlyph;
207
+ export declare const Clock: MlolaGlyph;
208
+ export declare const Home: MlolaGlyph;
209
+ export declare const ExternalLink: MlolaGlyph;
210
+ export declare const MoreVertical: MlolaGlyph;
211
+ export declare const PanelLeft: MlolaGlyph;
212
+ export declare const LayoutGrid: MlolaGlyph;
213
+ export declare const LayoutList: MlolaGlyph;
214
+ export declare const ArrowUpDown: MlolaGlyph;
215
+ export declare const Filter: MlolaGlyph;
216
+ export declare const Minimize: MlolaGlyph;
217
+ export declare const ChevronsLeft: MlolaGlyph;
218
+ export declare const ChevronsRight: MlolaGlyph;
219
+ export declare const Send: MlolaGlyph;
220
+ export declare const Archive: MlolaGlyph;
221
+ export declare const Inbox: MlolaGlyph;
222
+ export declare const Tag: MlolaGlyph;
223
+ export declare const Bookmark: MlolaGlyph;
224
+ export declare const Pin: MlolaGlyph;
225
+ export declare const Flag: MlolaGlyph;
226
+ export declare const Printer: MlolaGlyph;
227
+ export declare const Clipboard: MlolaGlyph;
228
+ export declare const LogIn: MlolaGlyph;
229
+ export declare const LogOut: MlolaGlyph;
230
+ export declare const ZoomIn: MlolaGlyph;
231
+ export declare const ZoomOut: MlolaGlyph;
232
+ export declare const Pause: MlolaGlyph;
233
+ export declare const Globe: MlolaGlyph;
234
+ export declare const Database: MlolaGlyph;
235
+ export declare const Cloud: MlolaGlyph;
236
+ export declare const CreditCard: MlolaGlyph;
237
+ export declare const BarChart: MlolaGlyph;
238
+ export declare const TrendingUp: MlolaGlyph;
239
+ export declare const Key: MlolaGlyph;
240
+ export declare const MapPin: MlolaGlyph;
241
+ export declare const Phone: MlolaGlyph;
242
+ export declare const MessageSquare: MlolaGlyph;
243
+ export declare const CircleHelp: MlolaGlyph;
244
+ export declare const Lightbulb: MlolaGlyph;
package/dist/index.js ADDED
@@ -0,0 +1,282 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ const SHAPES = new Set(["path", "circle", "line", "polyline", "polygon", "rect", "ellipse"]);
4
+ /**
5
+ * Give every shape `pathLength="1"`, so one CSS rule can draw any glyph from
6
+ * start to end whatever the true length of its strokes.
7
+ */
8
+ function normalizePaths(node) {
9
+ return React.Children.map(node, (child) => {
10
+ if (!React.isValidElement(child))
11
+ return child;
12
+ if (typeof child.type === "string" && SHAPES.has(child.type))
13
+ return React.cloneElement(child, { pathLength: 1 });
14
+ if (child.type === React.Fragment)
15
+ return _jsx(_Fragment, { children: normalizePaths(child.props.children) });
16
+ return child;
17
+ });
18
+ }
19
+ export function createMlolaGlyph(displayName, renderPaths) {
20
+ const Icon = React.forwardRef(({ size = "var(--mlola-glyph-size, 1.125rem)",
21
+ // An explicit --mlola-glyph-stroke wins; otherwise the theme's icon channel sets the weight.
22
+ strokeWidth = "var(--mlola-glyph-stroke, var(--ml-icon-stroke, 1.75))", className, animate = false, opticalSize = "default", title, style, ...props }, ref) => {
23
+ const labeled = Boolean(title || props["aria-label"] || props["aria-labelledby"]);
24
+ return (_jsxs("svg", { ref: ref, width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", focusable: "false", role: labeled ? "img" : undefined, "aria-hidden": labeled ? undefined : true, "data-optical-size": opticalSize, "data-animated": animate ? "" : undefined, className: `mlola-glyph ${animate ? "mlola-glyph-active" : ""} ${className ?? ""}`.trim(), style: {
25
+ color: "var(--mlola-glyph-color, currentColor)",
26
+ // The independent `scale` property, so a recipe's `transform`
27
+ // (a chevron's rotation) composes with it instead of losing to it.
28
+ scale: "var(--mlola-glyph-optical-scale, 1)",
29
+ transformOrigin: "center",
30
+ ...style,
31
+ }, ...props, children: [title ? _jsx("title", { children: title }) : null, normalizePaths(renderPaths({ animate }))] }));
32
+ });
33
+ Icon.displayName = displayName;
34
+ return Icon;
35
+ }
36
+ const createIcon = createMlolaGlyph;
37
+ /* ── 1. Signature Brand & Theme Glyphs ── */
38
+ export const IconSpark = createIcon("IconSpark", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M12 2.5v5M12 16.5v5M2.5 12h5M16.5 12h5" }), _jsx("path", { d: "m5.28 5.28 3.54 3.54M15.18 15.18l3.54 3.54" }), _jsx("path", { d: "m5.28 18.72 3.54-3.54M15.18 8.82l3.54-3.54" }), _jsx("circle", { cx: "12", cy: "12", r: "2.2" })] })));
39
+ export const IconPalette = createIcon("IconPalette", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "13.5", cy: "6.5", r: ".75", fill: "currentColor" }), _jsx("circle", { cx: "17.5", cy: "10.5", r: ".75", fill: "currentColor" }), _jsx("circle", { cx: "8.5", cy: "7.5", r: ".75", fill: "currentColor" }), _jsx("circle", { cx: "6.5", cy: "12.5", r: ".75", fill: "currentColor" }), _jsx("path", { d: "M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.9 0 1.6-.7 1.6-1.6 0-.4-.2-.8-.4-1.1-.3-.4-.4-.8-.4-1.3 0-.9.7-1.6 1.6-1.6h1.9c4.3 0 7.7-3.4 7.7-7.7C22 5.6 17.5 2 12 2z" })] })));
40
+ /* A body in motion: a ball trailing three speed lines, each ending the same
41
+ distance from its edge so the gaps read as one rhythm. */
42
+ export const IconMotion = createIcon("IconMotion", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "15.5", cy: "12", r: "5" }), _jsx("path", { d: "M2.5 12h5.5M5 8.25h4.25M5 15.75h4.25" })] })));
43
+ export const IconBox3D = createIcon("IconBox3D", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z" }), _jsx("polyline", { points: "3.27 6.96 12 12.01 20.73 6.96" }), _jsx("line", { x1: "12", y1: "22.08", x2: "12", y2: "12" })] })));
44
+ export const IconLayers = createIcon("IconLayers", () => (_jsxs(_Fragment, { children: [_jsx("polygon", { points: "12 2 2 7 12 12 22 7 12 2" }), _jsx("polyline", { points: "2 17 12 22 22 17" }), _jsx("polyline", { points: "2 12 12 17 22 12" })] })));
45
+ export const IconBlocks = createIcon("IconBlocks", () => (_jsxs(_Fragment, { children: [_jsx("rect", { width: "7.5", height: "7.5", x: "3", y: "3", rx: "1.5" }), _jsx("rect", { width: "7.5", height: "7.5", x: "13.5", y: "3", rx: "1.5" }), _jsx("rect", { width: "7.5", height: "7.5", x: "13.5", y: "13.5", rx: "1.5" }), _jsx("rect", { width: "7.5", height: "7.5", x: "3", y: "13.5", rx: "1.5" })] })));
46
+ export const IconTemplate = createIcon("IconTemplate", () => (_jsxs(_Fragment, { children: [_jsx("rect", { width: "18", height: "18", x: "3", y: "3", rx: "2.5" }), _jsx("path", { d: "M3 9h18M9 21V9" })] })));
47
+ /* ── 2. Living Workspace & Action Glyphs ── */
48
+ export const IconFilePlus = createIcon("IconFilePlus", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z" }), _jsx("polyline", { points: "14 2 14 8 20 8" }), _jsx("line", { x1: "12", y1: "18", x2: "12", y2: "12" }), _jsx("line", { x1: "9", y1: "15", x2: "15", y2: "15" })] })));
49
+ export const IconFolderOpen = createIcon("IconFolderOpen", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "m4 20 2-10h14.5l-2.4 10H4z" }), _jsx("path", { d: "M4 20V6a2 2 0 0 1 2-2h4l2 2h6a2 2 0 0 1 2 2v2" })] })));
50
+ export const IconShare = createIcon("IconShare", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "18", cy: "5", r: "3" }), _jsx("circle", { cx: "6", cy: "12", r: "3" }), _jsx("circle", { cx: "18", cy: "19", r: "3" }), _jsx("line", { x1: "8.59", y1: "13.51", x2: "15.42", y2: "17.49" }), _jsx("line", { x1: "15.41", y1: "6.51", x2: "8.59", y2: "10.49" })] })));
51
+ export const IconEdit = createIcon("IconEdit", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z" }), _jsx("path", { d: "m15 5 4 4" })] })));
52
+ export const IconTrash = createIcon("IconTrash", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M3 6h18" }), _jsx("path", { d: "M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6" }), _jsx("path", { d: "M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2" }), _jsx("line", { x1: "10", y1: "11", x2: "10", y2: "17" }), _jsx("line", { x1: "14", y1: "11", x2: "14", y2: "17" })] })));
53
+ export const IconCheck = createIcon("IconCheck", () => (_jsx("polyline", { points: "20 6 9 17 4 12" })));
54
+ export const IconArrowRight = createIcon("IconArrowRight", () => (_jsxs(_Fragment, { children: [_jsx("line", { x1: "5", y1: "12", x2: "19", y2: "12" }), _jsx("polyline", { points: "12 5 19 12 12 19" })] })));
55
+ export const IconArrowUpRight = createIcon("IconArrowUpRight", () => (_jsxs(_Fragment, { children: [_jsx("line", { x1: "7", y1: "17", x2: "17", y2: "7" }), _jsx("polyline", { points: "7 7 17 7 17 17" })] })));
56
+ export const IconCopy = createIcon("IconCopy", () => (_jsxs(_Fragment, { children: [_jsx("rect", { width: "13", height: "13", x: "9", y: "9", rx: "2", ry: "2" }), _jsx("path", { d: "M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" })] })));
57
+ export const IconMoon = createIcon("IconMoon", () => (_jsx("path", { d: "M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z" })));
58
+ export const IconSun = createIcon("IconSun", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "4" }), _jsx("path", { d: "M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41" })] })));
59
+ export const IconSearch = createIcon("IconSearch", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "11", cy: "11", r: "7.5" }), _jsx("path", { d: "m21 21-4.35-4.35" })] })));
60
+ export const IconChevronDown = createIcon("IconChevronDown", () => (_jsx("polyline", { points: "6 9 12 15 18 9" })));
61
+ export const IconMonitor = createIcon("IconMonitor", () => (_jsxs(_Fragment, { children: [_jsx("rect", { width: "20", height: "14", x: "2", y: "3", rx: "2" }), _jsx("line", { x1: "8", y1: "21", x2: "16", y2: "21" }), _jsx("line", { x1: "12", y1: "17", x2: "12", y2: "21" })] })));
62
+ export const IconSmartphone = createIcon("IconSmartphone", () => (_jsxs(_Fragment, { children: [_jsx("rect", { width: "14", height: "20", x: "5", y: "2", rx: "2.5" }), _jsx("line", { x1: "11", y1: "18", x2: "13", y2: "18" })] })));
63
+ export const IconCommand = createIcon("IconCommand", () => (_jsx("path", { d: "M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z" })));
64
+ export const IconSliders = createIcon("IconSliders", () => (_jsxs(_Fragment, { children: [_jsx("line", { x1: "4", y1: "21", x2: "4", y2: "14" }), _jsx("line", { x1: "4", y1: "10", x2: "4", y2: "3" }), _jsx("line", { x1: "12", y1: "21", x2: "12", y2: "12" }), _jsx("line", { x1: "12", y1: "8", x2: "12", y2: "3" }), _jsx("line", { x1: "20", y1: "21", x2: "20", y2: "16" }), _jsx("line", { x1: "20", y1: "12", x2: "20", y2: "3" }), _jsx("line", { x1: "1", y1: "14", x2: "7", y2: "14" }), _jsx("line", { x1: "9", y1: "8", x2: "15", y2: "8" }), _jsx("line", { x1: "17", y1: "16", x2: "23", y2: "16" })] })));
65
+ export const IconTerminal = createIcon("IconTerminal", () => (_jsxs(_Fragment, { children: [_jsx("polyline", { points: "4 17 10 11 4 5" }), _jsx("line", { x1: "12", y1: "19", x2: "20", y2: "19" })] })));
66
+ export const IconShield = createIcon("IconShield", () => (_jsx("path", { d: "M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" })));
67
+ export const IconLock = createIcon("IconLock", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "4", y: "11", width: "16", height: "10", rx: "2" }), _jsx("path", { d: "M8 11V7a4 4 0 0 1 8 0v4" })] })));
68
+ export const IconUnlock = createIcon("IconUnlock", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "4", y: "11", width: "16", height: "10", rx: "2" }), _jsx("path", { d: "M8 11V7a4 4 0 0 1 7.75-1.4" })] })));
69
+ export const IconZap = createIcon("IconZap", () => (_jsx("polygon", { points: "13 2 3 14 12 14 11 22 21 10 12 10 13 2" })));
70
+ export const IconEye = createIcon("IconEye", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z" }), _jsx("circle", { cx: "12", cy: "12", r: "3" })] })));
71
+ export const IconEyeOff = createIcon("IconEyeOff", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19M6.61 6.61A18.15 18.15 0 0 0 1 12s4 8 11 8a9.12 9.12 0 0 0 5.39-1.61" }), _jsx("path", { d: "M14.12 14.12a3 3 0 1 1-4.24-4.24" }), _jsx("path", { d: "m2 2 20 20" })] })));
72
+ /* ── 3. Interface & status glyphs ── */
73
+ export const IconCode = createIcon("IconCode", () => (_jsx(_Fragment, { children: _jsx("path", { d: "m8 9-4 3 4 3M16 9l4 3-4 3M14 4l-4 16" }) })));
74
+ export const IconCircleDashed = createIcon("IconCircleDashed", () => (_jsx(_Fragment, { children: _jsx("path", { d: "M8.6 3.2a9.5 9.5 0 0 1 6.8 0M20.8 8.6a9.5 9.5 0 0 1 0 6.8M15.4 20.8a9.5 9.5 0 0 1-6.8 0M3.2 15.4a9.5 9.5 0 0 1 0-6.8" }) })));
75
+ export const IconLoader = createIcon("IconLoader", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M12 2a10 10 0 0 1 10 10" }), _jsx("path", { d: "M12 22A10 10 0 0 1 2 12", opacity: ".35" })] })));
76
+ export const IconX = createIcon("IconX", () => (_jsx(_Fragment, { children: _jsx("path", { d: "M18 6 6 18M6 6l12 12" }) })));
77
+ export const IconMenu = createIcon("IconMenu", () => (_jsx("path", { d: "M4 7h16M4 12h16M4 17h16" })));
78
+ export const IconMinus = createIcon("IconMinus", () => _jsx("path", { d: "M5 12h14" }));
79
+ export const IconPlus = createIcon("IconPlus", () => _jsx("path", { d: "M12 5v14M5 12h14" }));
80
+ export const IconChevronUp = createIcon("IconChevronUp", () => (_jsx("path", { d: "m6 15 6-6 6 6" })));
81
+ export const IconChevronLeft = createIcon("IconChevronLeft", () => (_jsx("path", { d: "m15 18-6-6 6-6" })));
82
+ export const IconChevronRight = createIcon("IconChevronRight", () => (_jsx("path", { d: "m9 18 6-6-6-6" })));
83
+ export const IconArrowLeft = createIcon("IconArrowLeft", () => (_jsx("path", { d: "m12 19-7-7 7-7M5 12h14" })));
84
+ export const IconArrowUp = createIcon("IconArrowUp", () => (_jsx("path", { d: "m5 12 7-7 7 7M12 5v14" })));
85
+ export const IconArrowDown = createIcon("IconArrowDown", () => (_jsx("path", { d: "M12 5v14m-7-7 7 7 7-7" })));
86
+ export const IconChevronsUpDown = createIcon("IconChevronsUpDown", () => (_jsx("path", { d: "m7 15 5 5 5-5M7 9l5-5 5 5" })));
87
+ export const IconMoreHorizontal = createIcon("IconMoreHorizontal", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "5", cy: "12", r: "1.25", fill: "currentColor" }), _jsx("circle", { cx: "12", cy: "12", r: "1.25", fill: "currentColor" }), _jsx("circle", { cx: "19", cy: "12", r: "1.25", fill: "currentColor" })] })));
88
+ export const IconMail = createIcon("IconMail", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3", y: "5", width: "18", height: "14", rx: "2" }), _jsx("path", { d: "m4 7 8 6 8-6" })] })));
89
+ export const IconStar = createIcon("IconStar", () => (_jsx("path", { d: "m12 2.5 2.9 5.9 6.5.9-4.7 4.6 1.1 6.5-5.8-3.1-5.8 3.1 1.1-6.5-4.7-4.6 6.5-.9Z" })));
90
+ export const IconCircleCheck = createIcon("IconCircleCheck", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "9.5" }), _jsx("path", { d: "m7.5 12 3 3 6-6" })] })));
91
+ export const IconCircleAlert = createIcon("IconCircleAlert", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "9.5" }), _jsx("path", { d: "M12 7v6M12 17h.01" })] })));
92
+ export const IconTriangleAlert = createIcon("IconTriangleAlert", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "m10.3 3.8-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.7-3.2l-8-14a2 2 0 0 0-3.4 0Z" }), _jsx("path", { d: "M12 9v4M12 17h.01" })] })));
93
+ export const IconCircleX = createIcon("IconCircleX", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "9.5" }), _jsx("path", { d: "m9 9 6 6M15 9l-6 6" })] })));
94
+ export const IconInfo = createIcon("IconInfo", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "9.5" }), _jsx("path", { d: "M12 11v6M12 7h.01" })] })));
95
+ export const IconBan = createIcon("IconBan", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "9.5" }), _jsx("path", { d: "m5.3 5.3 13.4 13.4" })] })));
96
+ export const IconBell = createIcon("IconBell", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9" }), _jsx("path", { d: "M10 21h4" })] })));
97
+ export const IconShoppingCart = createIcon("IconShoppingCart", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M3 3h2l2.2 10.5a2 2 0 0 0 2 1.5h7.6a2 2 0 0 0 2-1.6L20 7H6" }), _jsx("circle", { cx: "10", cy: "20", r: "1" }), _jsx("circle", { cx: "18", cy: "20", r: "1" })] })));
98
+ export const IconHeart = createIcon("IconHeart", () => (_jsx("path", { d: "M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8l1.1 1.1L12 21l7.8-7.5 1.1-1.1a5.5 5.5 0 0 0-.1-7.8Z" })));
99
+ export const IconUser = createIcon("IconUser", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "8", r: "4" }), _jsx("path", { d: "M4 22a8 8 0 0 1 16 0" })] })));
100
+ export const IconSettings = createIcon("IconSettings", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "3" }), _jsx("path", { d: "M19.4 15a1.7 1.7 0 0 0 .3 1.9l.1.1-2.8 2.8-.1-.1a1.7 1.7 0 0 0-1.9-.3 1.7 1.7 0 0 0-1 1.6v.2h-4V21a1.7 1.7 0 0 0-1-1.6 1.7 1.7 0 0 0-1.9.3l-.1.1L4.2 17l.1-.1a1.7 1.7 0 0 0 .3-1.9A1.7 1.7 0 0 0 3 14H2.8v-4H3a1.7 1.7 0 0 0 1.6-1 1.7 1.7 0 0 0-.3-1.9L4.2 7 7 4.2l.1.1A1.7 1.7 0 0 0 9 4.6a1.7 1.7 0 0 0 1-1.6v-.2h4V3a1.7 1.7 0 0 0 1 1.6 1.7 1.7 0 0 0 1.9-.3l.1-.1L19.8 7l-.1.1a1.7 1.7 0 0 0-.3 1.9 1.7 1.7 0 0 0 1.6 1h.2v4H21a1.7 1.7 0 0 0-1.6 1Z" })] })));
101
+ export const IconDownload = createIcon("IconDownload", () => (_jsx("path", { d: "M12 3v12m-5-5 5 5 5-5M5 21h14" })));
102
+ export const IconUpload = createIcon("IconUpload", () => (_jsx("path", { d: "M12 15V3m-5 5 5-5 5 5M5 21h14" })));
103
+ export const IconCalendar = createIcon("IconCalendar", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3", y: "5", width: "18", height: "16", rx: "2" }), _jsx("path", { d: "M8 3v4M16 3v4M3 10h18" })] })));
104
+ export const IconClock = createIcon("IconClock", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "9.5" }), _jsx("path", { d: "M12 7v5l3 2" })] })));
105
+ export const IconHome = createIcon("IconHome", () => (_jsx("path", { d: "m3 11 9-8 9 8v10h-6v-6H9v6H3Z" })));
106
+ export const IconExternalLink = createIcon("IconExternalLink", () => (_jsx("path", { d: "M14 3h7v7M10 14 21 3M18 13v7a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h7" })));
107
+ /* ── 4. AI & voice glyphs ── */
108
+ export const IconMic = createIcon("IconMic", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "9", y: "2.5", width: "6", height: "12", rx: "3" }), _jsx("path", { d: "M5 11a7 7 0 0 0 14 0M12 18v3.5" })] })));
109
+ export const IconMicOff = createIcon("IconMicOff", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M15 9.4V5.5a3 3 0 0 0-5.7-1.3M9 9v2.5a3 3 0 0 0 5 2.2" }), _jsx("path", { d: "M19 11a7 7 0 0 1-.7 3M5 11a7 7 0 0 0 11.2 5.6M12 18v3.5M3 3l18 18" })] })));
110
+ export const IconStop = createIcon("IconStop", () => (_jsx("rect", { x: "6", y: "6", width: "12", height: "12", rx: "2.5" })));
111
+ export const IconPaperclip = createIcon("IconPaperclip", () => (_jsx("path", { d: "m20.5 11.2-8.3 8.3a5.2 5.2 0 0 1-7.4-7.4l8.6-8.6a3.5 3.5 0 0 1 4.9 4.9l-8.4 8.4a1.7 1.7 0 0 1-2.5-2.5l7.8-7.8" })));
112
+ export const IconRefresh = createIcon("IconRefresh", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M20.5 11A8.5 8.5 0 0 0 5.6 6.2L3.5 8.5M3.5 13a8.5 8.5 0 0 0 14.9 4.8l2.1-2.3" }), _jsx("path", { d: "M3.5 3.5v5h5M20.5 20.5v-5h-5" })] })));
113
+ export const IconThumbUp = createIcon("IconThumbUp", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M7 10.5v10H4a1 1 0 0 1-1-1v-8a1 1 0 0 1 1-1Z" }), _jsx("path", { d: "M7 10.5 11 3a2.5 2.5 0 0 1 2.6 2.9L13 9.5h5.6a2 2 0 0 1 2 2.4l-1.4 7a2 2 0 0 1-2 1.6H7" })] })));
114
+ export const IconThumbDown = createIcon("IconThumbDown", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M7 13.5v-10H4a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1Z" }), _jsx("path", { d: "M7 13.5 11 21a2.5 2.5 0 0 0 2.6-2.9L13 14.5h5.6a2 2 0 0 0 2-2.4l-1.4-7a2 2 0 0 0-2-1.6H7" })] })));
115
+ export const IconVolume = createIcon("IconVolume", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M4 9.5h3.5L12 5.5v13l-4.5-4H4a1 1 0 0 1-1-1v-2a1 1 0 0 1 1-1Z" }), _jsx("path", { d: "M15.5 9a4 4 0 0 1 0 6M18.5 6.5a7.5 7.5 0 0 1 0 11" })] })));
116
+ export const IconTool = createIcon("IconTool", () => (_jsx("path", { d: "M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.4-3.4a6 6 0 0 1-7.9 7.9L6.9 20.1a2.1 2.1 0 0 1-3-3l6.3-6.3a6 6 0 0 1 7.9-7.9Z" })));
117
+ export const IconLink = createIcon("IconLink", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M10 13.5a4.5 4.5 0 0 0 6.4.4l3-3a4.5 4.5 0 0 0-6.4-6.4l-1.6 1.6" }), _jsx("path", { d: "M14 10.5a4.5 4.5 0 0 0-6.4-.4l-3 3a4.5 4.5 0 0 0 6.4 6.4l1.6-1.6" })] })));
118
+ export const IconBrain = createIcon("IconBrain", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M12 5a3 3 0 0 0-5.8-1A3.5 3.5 0 0 0 4 10a3.5 3.5 0 0 0 1 6.5A3.5 3.5 0 0 0 12 19Z" }), _jsx("path", { d: "M12 5a3 3 0 0 1 5.8-1A3.5 3.5 0 0 1 20 10a3.5 3.5 0 0 1-1 6.5A3.5 3.5 0 0 1 12 19Z" }), _jsx("path", { d: "M12 5v14M8 9.5a2.5 2.5 0 0 0 0 4M16 9.5a2.5 2.5 0 0 1 0 4" })] })));
119
+ /* ── 5. Code & source control glyphs ── */
120
+ export const IconFolder = createIcon("IconFolder", () => (_jsx("path", { d: "M3 7.5A2 2 0 0 1 5 5.5h4.2l2 2.2H19a2 2 0 0 1 2 2V17a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2Z" })));
121
+ export const IconFile = createIcon("IconFile", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8Z" }), _jsx("path", { d: "M14 3v5h5" })] })));
122
+ export const IconGitBranch = createIcon("IconGitBranch", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "6", cy: "5.5", r: "2.5" }), _jsx("circle", { cx: "6", cy: "18.5", r: "2.5" }), _jsx("circle", { cx: "18", cy: "7.5", r: "2.5" }), _jsx("path", { d: "M6 8v8M18 10c0 4-4 5-9.8 6.4" })] })));
123
+ export const IconGitCommit = createIcon("IconGitCommit", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "3.5" }), _jsx("path", { d: "M2.5 12h6M15.5 12h6" })] })));
124
+ export const IconGitPullRequest = createIcon("IconGitPullRequest", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "6", cy: "5.5", r: "2.5" }), _jsx("circle", { cx: "6", cy: "18.5", r: "2.5" }), _jsx("circle", { cx: "18", cy: "18.5", r: "2.5" }), _jsx("path", { d: "M6 8v8M18 16V9a3 3 0 0 0-3-3h-4M13 3.5 10.5 6 13 8.5" })] })));
125
+ /* ── 6. Canvas & workflow glyphs ── */
126
+ export const IconPointer = createIcon("IconPointer", () => (_jsx("path", { d: "M5 3.5 18.5 10l-6 1.8-2.2 6.2Z" })));
127
+ export const IconHand = createIcon("IconHand", () => (_jsx("path", { d: "M8 12.5V6a1.5 1.5 0 0 1 3 0v5M11 11V4.5a1.5 1.5 0 0 1 3 0V11M14 11V6a1.5 1.5 0 0 1 3 0v6.5M8 12.5 6.6 11a1.6 1.6 0 0 0-2.4 2.1l3.4 4.6A6 6 0 0 0 12.4 20H13a4 4 0 0 0 4-4v-3.5" })));
128
+ export const IconSquare = createIcon("IconSquare", () => (_jsx("rect", { x: "4", y: "4", width: "16", height: "16", rx: "2.5" })));
129
+ export const IconCircle = createIcon("IconCircle", () => (_jsx("circle", { cx: "12", cy: "12", r: "8.5" })));
130
+ export const IconDiamond = createIcon("IconDiamond", () => (_jsx("path", { d: "M12 3.2 20.8 12 12 20.8 3.2 12Z" })));
131
+ export const IconPen = createIcon("IconPen", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M15.5 4.5a2.1 2.1 0 0 1 3 3L8 18l-4 1 1-4Z" }), _jsx("path", { d: "M13.5 6.5l3 3" })] })));
132
+ export const IconType = createIcon("IconType", () => (_jsx("path", { d: "M5 7V5h14v2M12 5v14M9 19h6" })));
133
+ export const IconStickyNote = createIcon("IconStickyNote", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M4 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8l-6 6H6a2 2 0 0 1-2-2Z" }), _jsx("path", { d: "M20 14h-4a2 2 0 0 0-2 2v4" })] })));
134
+ export const IconEraser = createIcon("IconEraser", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M8.5 20 3.8 15.3a1.8 1.8 0 0 1 0-2.6l8.9-8.9a1.8 1.8 0 0 1 2.6 0l4.4 4.4a1.8 1.8 0 0 1 0 2.6L11 20Z" }), _jsx("path", { d: "M8 9.5 14.5 16M8.5 20H20" })] })));
135
+ export const IconMaximize = createIcon("IconMaximize", () => (_jsx("path", { d: "M4 9V5a1 1 0 0 1 1-1h4M15 4h4a1 1 0 0 1 1 1v4M20 15v4a1 1 0 0 1-1 1h-4M9 20H5a1 1 0 0 1-1-1v-4" })));
136
+ export const IconWorkflow = createIcon("IconWorkflow", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3", y: "4", width: "7", height: "5", rx: "1.5" }), _jsx("rect", { x: "14", y: "15", width: "7", height: "5", rx: "1.5" }), _jsx("path", { d: "M6.5 9v3.5a2 2 0 0 0 2 2h6" })] })));
137
+ export const IconPlay = createIcon("IconPlay", () => (_jsx("path", { d: "M7 4.8v14.4a1 1 0 0 0 1.5.9l11.2-7.2a1 1 0 0 0 0-1.7L8.5 3.9A1 1 0 0 0 7 4.8Z" })));
138
+ export const IconUndo = createIcon("IconUndo", () => (_jsx("path", { d: "M9 14 4 9l5-5M4 9h10.5a5.5 5.5 0 0 1 0 11H11" })));
139
+ export const IconRedo = createIcon("IconRedo", () => (_jsx("path", { d: "m15 14 5-5-5-5M20 9H9.5a5.5 5.5 0 0 0 0 11H13" })));
140
+ /* ── 7. Editor glyphs ── */
141
+ export const IconBold = createIcon("IconBold", () => (_jsx("path", { d: "M7 5h6a3.5 3.5 0 0 1 0 7H7ZM7 12h7a3.5 3.5 0 0 1 0 7H7Z" })));
142
+ export const IconItalic = createIcon("IconItalic", () => (_jsx("path", { d: "M10 5h8M6 19h8M14 5l-4 14" })));
143
+ export const IconUnderline = createIcon("IconUnderline", () => (_jsx("path", { d: "M7 4v7a5 5 0 0 0 10 0V4M5 20h14" })));
144
+ export const IconStrikethrough = createIcon("IconStrikethrough", () => (_jsx("path", { d: "M16.5 7.5A4 4 0 0 0 12.6 5h-1.4a3.7 3.7 0 0 0-1 7.2M4 12h16M8 16.5A4 4 0 0 0 11.8 19h1a3.7 3.7 0 0 0 3.6-3" })));
145
+ export const IconList = createIcon("IconList", () => (_jsx("path", { d: "M9 6h11M9 12h11M9 18h11M4.5 6h.01M4.5 12h.01M4.5 18h.01" })));
146
+ export const IconListOrdered = createIcon("IconListOrdered", () => (_jsx("path", { d: "M10 6h10M10 12h10M10 18h10M4 5l1.5-1v5M4 14.5a1.5 1.5 0 1 1 2.6 1L4 19h3" })));
147
+ export const IconQuote = createIcon("IconQuote", () => (_jsx("path", { d: "M7 7c-2 1.3-3 3-3 5.5V17h5v-5H5.5M17 7c-2 1.3-3 3-3 5.5V17h5v-5h-3.5" })));
148
+ export const IconHeading = createIcon("IconHeading", () => (_jsx("path", { d: "M6 4v16M18 4v16M6 12h12" })));
149
+ export const IconCodeBlock = createIcon("IconCodeBlock", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3", y: "4", width: "18", height: "16", rx: "2.5" }), _jsx("path", { d: "m9.5 10-2 2 2 2M14.5 10l2 2-2 2" })] })));
150
+ export const IconCheckSquare = createIcon("IconCheckSquare", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "4", y: "4", width: "16", height: "16", rx: "3" }), _jsx("path", { d: "m8.5 12 2.5 2.5 4.5-5" })] })));
151
+ export const IconGrip = createIcon("IconGrip", () => (_jsx("path", { d: "M9 6h.01M9 12h.01M9 18h.01M15 6h.01M15 12h.01M15 18h.01" })));
152
+ export const IconClearFormat = createIcon("IconClearFormat", () => (_jsx("path", { d: "M5 5h11M10 5l-3 14M15 13l5 5M20 13l-5 5" })));
153
+ /* ── 8. Everyday app glyphs ── */
154
+ /* The metaphors almost every product reaches for: layout and view, sorting
155
+ and filtering, filing, session, zoom, media, data, and contact. Drawn on
156
+ the same grid as the rest: a 9.5 circle, 18-wide frames with a 2 radius,
157
+ 1.25 dots, round ends. */
158
+ export const IconMoreVertical = createIcon("IconMoreVertical", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "5", r: "1.25", fill: "currentColor" }), _jsx("circle", { cx: "12", cy: "12", r: "1.25", fill: "currentColor" }), _jsx("circle", { cx: "12", cy: "19", r: "1.25", fill: "currentColor" })] })));
159
+ export const IconPanelLeft = createIcon("IconPanelLeft", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3", y: "4", width: "18", height: "16", rx: "2" }), _jsx("path", { d: "M9.5 4v16" })] })));
160
+ export const IconLayoutGrid = createIcon("IconLayoutGrid", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3.5", y: "3.5", width: "7", height: "7", rx: "1.5" }), _jsx("rect", { x: "13.5", y: "3.5", width: "7", height: "7", rx: "1.5" }), _jsx("rect", { x: "3.5", y: "13.5", width: "7", height: "7", rx: "1.5" }), _jsx("rect", { x: "13.5", y: "13.5", width: "7", height: "7", rx: "1.5" })] })));
161
+ export const IconLayoutList = createIcon("IconLayoutList", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3.5", y: "4.5", width: "5", height: "5", rx: "1.25" }), _jsx("rect", { x: "3.5", y: "14.5", width: "5", height: "5", rx: "1.25" }), _jsx("path", { d: "M12 6h8.5M12 8h5M12 16h8.5M12 18h5" })] })));
162
+ export const IconArrowUpDown = createIcon("IconArrowUpDown", () => (_jsx("path", { d: "M7.5 20V4m-4 4 4-4 4 4M16.5 4v16m4-4-4 4-4-4" })));
163
+ export const IconFilter = createIcon("IconFilter", () => (_jsx("path", { d: "M3.5 4.5h17a.5.5 0 0 1 .4.8L14 13v6.2a.5.5 0 0 1-.3.5l-3 1.3a.5.5 0 0 1-.7-.5V13L3.1 5.3a.5.5 0 0 1 .4-.8Z" })));
164
+ export const IconMinimize = createIcon("IconMinimize", () => (_jsx("path", { d: "M9 4v4a1 1 0 0 1-1 1H4M20 9h-4a1 1 0 0 1-1-1V4M15 20v-4a1 1 0 0 1 1-1h4M4 15h4a1 1 0 0 1 1 1v4" })));
165
+ export const IconChevronsLeft = createIcon("IconChevronsLeft", () => (_jsx("path", { d: "m11 18-6-6 6-6M19 18l-6-6 6-6" })));
166
+ export const IconChevronsRight = createIcon("IconChevronsRight", () => (_jsx("path", { d: "m13 18 6-6-6-6M5 18l6-6-6-6" })));
167
+ export const IconSend = createIcon("IconSend", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M20.6 3.4 3.8 10.1a.5.5 0 0 0 0 .9l6.7 2.5 2.5 6.7a.5.5 0 0 0 .9 0Z" }), _jsx("path", { d: "m10.5 13.5 10.1-10.1" })] })));
168
+ export const IconArchive = createIcon("IconArchive", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3", y: "4", width: "18", height: "5", rx: "1.5" }), _jsx("path", { d: "M4.5 9v9a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V9M10 13h4" })] })));
169
+ export const IconInbox = createIcon("IconInbox", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M3 13 5.6 5.8A2 2 0 0 1 7.5 4.5h9a2 2 0 0 1 1.9 1.3L21 13v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2Z" }), _jsx("path", { d: "M3 13h5l1.5 2.5h5L16 13h5" })] })));
170
+ export const IconTag = createIcon("IconTag", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M3 4.5A1.5 1.5 0 0 1 4.5 3h7.1a2 2 0 0 1 1.4.6l7.4 7.4a2 2 0 0 1 0 2.8l-6.2 6.2a2 2 0 0 1-2.8 0l-7.4-7.4a2 2 0 0 1-.6-1.4Z" }), _jsx("circle", { cx: "8", cy: "8", r: "1.25", fill: "currentColor" })] })));
171
+ export const IconBookmark = createIcon("IconBookmark", () => (_jsx("path", { d: "M6.5 3h11A1.5 1.5 0 0 1 19 4.5V21l-7-4.5L5 21V4.5A1.5 1.5 0 0 1 6.5 3Z" })));
172
+ export const IconPin = createIcon("IconPin", () => (_jsx("path", { d: "M9 3h6M10 3v5.5L6.5 13h11L14 8.5V3M12 13v8" })));
173
+ export const IconFlag = createIcon("IconFlag", () => (_jsx("path", { d: "M5 21V3.5M5 4h12.3a.5.5 0 0 1 .4.8L15.5 8.5l2.2 3.7a.5.5 0 0 1-.4.8H5" })));
174
+ export const IconPrinter = createIcon("IconPrinter", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M7 8.5V3.5h10v5M7 17H5a2 2 0 0 1-2-2v-4.5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2V15a2 2 0 0 1-2 2h-2" }), _jsx("rect", { x: "7", y: "13.5", width: "10", height: "7", rx: "1" })] })));
175
+ export const IconClipboard = createIcon("IconClipboard", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M8 4.5H6.5A1.5 1.5 0 0 0 5 6v13.5A1.5 1.5 0 0 0 6.5 21h11a1.5 1.5 0 0 0 1.5-1.5V6a1.5 1.5 0 0 0-1.5-1.5H16" }), _jsx("rect", { x: "8", y: "3", width: "8", height: "3.5", rx: "1" })] })));
176
+ export const IconLogIn = createIcon("IconLogIn", () => (_jsx("path", { d: "M14 4h4a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-4M3.5 12h11m-4-4 4 4-4 4" })));
177
+ export const IconLogOut = createIcon("IconLogOut", () => (_jsx("path", { d: "M10 4H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h4M9.5 12h11m-4-4 4 4-4 4" })));
178
+ export const IconZoomIn = createIcon("IconZoomIn", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "11", cy: "11", r: "7.5" }), _jsx("path", { d: "m21 21-4.35-4.35M11 8v6M8 11h6" })] })));
179
+ export const IconZoomOut = createIcon("IconZoomOut", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "11", cy: "11", r: "7.5" }), _jsx("path", { d: "m21 21-4.35-4.35M8 11h6" })] })));
180
+ export const IconPause = createIcon("IconPause", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "6.5", y: "4.5", width: "3", height: "15", rx: "1" }), _jsx("rect", { x: "14.5", y: "4.5", width: "3", height: "15", rx: "1" })] })));
181
+ export const IconImage = createIcon("IconImage", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "3", y: "4", width: "18", height: "16", rx: "2" }), _jsx("circle", { cx: "9", cy: "9.5", r: "1.75" }), _jsx("path", { d: "m21 15-4.3-4.3a1 1 0 0 0-1.4 0L6 20" })] })));
182
+ export const IconGlobe = createIcon("IconGlobe", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "9.5" }), _jsx("path", { d: "M2.5 12h19M12 2.5c2.5 2.6 3.8 5.8 3.8 9.5s-1.3 6.9-3.8 9.5c-2.5-2.6-3.8-5.8-3.8-9.5s1.3-6.9 3.8-9.5Z" })] })));
183
+ export const IconDatabase = createIcon("IconDatabase", () => (_jsxs(_Fragment, { children: [_jsx("ellipse", { cx: "12", cy: "5.5", rx: "8", ry: "3" }), _jsx("path", { d: "M4 5.5v13c0 1.7 3.6 3 8 3s8-1.3 8-3v-13M4 12c0 1.7 3.6 3 8 3s8-1.3 8-3" })] })));
184
+ export const IconCloud = createIcon("IconCloud", () => (_jsx("path", { d: "M7 19a4.5 4.5 0 0 1-.5-9 6 6 0 0 1 11.6-1.5A4.8 4.8 0 0 1 17.5 19Z" })));
185
+ export const IconCreditCard = createIcon("IconCreditCard", () => (_jsxs(_Fragment, { children: [_jsx("rect", { x: "2.5", y: "5", width: "19", height: "14", rx: "2" }), _jsx("path", { d: "M2.5 10h19M6.5 15h3" })] })));
186
+ export const IconBarChart = createIcon("IconBarChart", () => (_jsx("path", { d: "M4 20h16M7 16v-5M12 16V6M17 16V9" })));
187
+ export const IconTrendingUp = createIcon("IconTrendingUp", () => (_jsx("path", { d: "m3 17 6-6 4 4 8-8M15 7h6v6" })));
188
+ export const IconKey = createIcon("IconKey", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "8", cy: "15.5", r: "4.5" }), _jsx("path", { d: "m11.2 12.3 8.3-8.3M16.5 7l2.5 2.5M14 9.5l2 2" })] })));
189
+ export const IconMapPin = createIcon("IconMapPin", () => (_jsxs(_Fragment, { children: [_jsx("path", { d: "M12 21.5s-7-6.1-7-11.5a7 7 0 0 1 14 0c0 5.4-7 11.5-7 11.5Z" }), _jsx("circle", { cx: "12", cy: "10", r: "2.5" })] })));
190
+ export const IconPhone = createIcon("IconPhone", () => (_jsx("path", { d: "M5.2 3.5h2.9a1 1 0 0 1 .9.6l1.3 3.3a1 1 0 0 1-.3 1.1l-1.7 1.3a11.5 11.5 0 0 0 5.9 5.9l1.3-1.7a1 1 0 0 1 1.1-.3l3.3 1.3a1 1 0 0 1 .6.9v2.9a1.7 1.7 0 0 1-1.8 1.7A16.3 16.3 0 0 1 3.5 5.3a1.7 1.7 0 0 1 1.7-1.8Z" })));
191
+ export const IconMessage = createIcon("IconMessage", () => (_jsx("path", { d: "M4 5.5A1.5 1.5 0 0 1 5.5 4h13A1.5 1.5 0 0 1 20 5.5v10a1.5 1.5 0 0 1-1.5 1.5H9.5L4 21Z" })));
192
+ export const IconHelp = createIcon("IconHelp", () => (_jsxs(_Fragment, { children: [_jsx("circle", { cx: "12", cy: "12", r: "9.5" }), _jsx("path", { d: "M9.4 9.2a2.7 2.7 0 0 1 5.2 1c0 1.8-2.6 2.4-2.6 4M12 17h.01" })] })));
193
+ export const IconLightbulb = createIcon("IconLightbulb", () => (_jsx("path", { d: "M9.5 18h5M10.5 21h3M12 3a6 6 0 0 0-3.6 10.8c.7.5 1.1 1.3 1.1 2.1v.1h5v-.1c0-.8.4-1.6 1.1-2.1A6 6 0 0 0 12 3Z" })));
194
+ /* Drop-in names for replacing Lucide imports without adapter components. */
195
+ export const Sparkles = IconSpark;
196
+ export const Palette = IconPalette;
197
+ export const Box = IconBox3D;
198
+ export const Layers = IconLayers;
199
+ export const Blocks = IconBlocks;
200
+ export const LayoutTemplate = IconTemplate;
201
+ export const Code2 = IconCode;
202
+ export const Check = IconCheck;
203
+ export const Copy = IconCopy;
204
+ export const ArrowRight = IconArrowRight;
205
+ export const ArrowUpRight = IconArrowUpRight;
206
+ export const ArrowLeft = IconArrowLeft;
207
+ export const ArrowUp = IconArrowUp;
208
+ export const ArrowDown = IconArrowDown;
209
+ export const ChevronDown = IconChevronDown;
210
+ export const ChevronUp = IconChevronUp;
211
+ export const ChevronLeft = IconChevronLeft;
212
+ export const ChevronRight = IconChevronRight;
213
+ export const ChevronsUpDown = IconChevronsUpDown;
214
+ export const CircleDashed = IconCircleDashed;
215
+ export const Loader2 = IconLoader;
216
+ export const Monitor = IconMonitor;
217
+ export const Moon = IconMoon;
218
+ export const Search = IconSearch;
219
+ export const Smartphone = IconSmartphone;
220
+ export const Sun = IconSun;
221
+ export const Eye = IconEye;
222
+ export const EyeOff = IconEyeOff;
223
+ export const Zap = IconZap;
224
+ export const X = IconX;
225
+ export const Menu = IconMenu;
226
+ export const Minus = IconMinus;
227
+ export const Plus = IconPlus;
228
+ export const MoreHorizontal = IconMoreHorizontal;
229
+ export const Mail = IconMail;
230
+ export const Star = IconStar;
231
+ export const CircleCheck = IconCircleCheck;
232
+ export const CircleAlert = IconCircleAlert;
233
+ export const TriangleAlert = IconTriangleAlert;
234
+ export const CircleX = IconCircleX;
235
+ export const Info = IconInfo;
236
+ export const Ban = IconBan;
237
+ export const Bell = IconBell;
238
+ export const ShoppingCart = IconShoppingCart;
239
+ export const Heart = IconHeart;
240
+ export const User = IconUser;
241
+ export const Settings = IconSettings;
242
+ export const Download = IconDownload;
243
+ export const Upload = IconUpload;
244
+ export const Calendar = IconCalendar;
245
+ export const Clock = IconClock;
246
+ export const Home = IconHome;
247
+ export const ExternalLink = IconExternalLink;
248
+ export const MoreVertical = IconMoreVertical;
249
+ export const PanelLeft = IconPanelLeft;
250
+ export const LayoutGrid = IconLayoutGrid;
251
+ export const LayoutList = IconLayoutList;
252
+ export const ArrowUpDown = IconArrowUpDown;
253
+ export const Filter = IconFilter;
254
+ export const Minimize = IconMinimize;
255
+ export const ChevronsLeft = IconChevronsLeft;
256
+ export const ChevronsRight = IconChevronsRight;
257
+ export const Send = IconSend;
258
+ export const Archive = IconArchive;
259
+ export const Inbox = IconInbox;
260
+ export const Tag = IconTag;
261
+ export const Bookmark = IconBookmark;
262
+ export const Pin = IconPin;
263
+ export const Flag = IconFlag;
264
+ export const Printer = IconPrinter;
265
+ export const Clipboard = IconClipboard;
266
+ export const LogIn = IconLogIn;
267
+ export const LogOut = IconLogOut;
268
+ export const ZoomIn = IconZoomIn;
269
+ export const ZoomOut = IconZoomOut;
270
+ export const Pause = IconPause;
271
+ export const Globe = IconGlobe;
272
+ export const Database = IconDatabase;
273
+ export const Cloud = IconCloud;
274
+ export const CreditCard = IconCreditCard;
275
+ export const BarChart = IconBarChart;
276
+ export const TrendingUp = IconTrendingUp;
277
+ export const Key = IconKey;
278
+ export const MapPin = IconMapPin;
279
+ export const Phone = IconPhone;
280
+ export const MessageSquare = IconMessage;
281
+ export const CircleHelp = IconHelp;
282
+ export const Lightbulb = IconLightbulb;
package/package.json CHANGED
@@ -1,20 +1,27 @@
1
1
  {
2
2
  "name": "@mlola-ui/icons",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "description": "Mlola Glyph DNA: currentColor SVG icons with stable metaphors",
5
- "main": "./src/index.tsx",
6
- "types": "./src/index.tsx",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
7
  "sideEffects": [
8
8
  "./glyphs.css"
9
9
  ],
10
10
  "files": [
11
- "src",
11
+ "dist",
12
12
  "glyphs.css"
13
13
  ],
14
14
  "exports": {
15
- ".": "./src/index.tsx",
15
+ ".": {
16
+ "types": "./dist/index.d.ts",
17
+ "default": "./dist/index.js"
18
+ },
16
19
  "./glyphs.css": "./glyphs.css"
17
20
  },
21
+ "scripts": {
22
+ "build": "tsc -p tsconfig.json",
23
+ "prepack": "npm run build"
24
+ },
18
25
  "peerDependencies": {
19
26
  "react": ">=18",
20
27
  "react-dom": ">=18"