@nice2dev/icons 1.1.10 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +173 -0
- package/dist/cjs/NiceDesktopIconExporter.js +2 -6
- package/dist/cjs/NiceFaviconGenerator.js +2 -1
- package/dist/cjs/NiceIconPicker.js +15 -20
- package/dist/cjs/NiceIconSetCreator.js +6 -29
- package/dist/cjs/NtdIconBadge.js +12 -12
- package/dist/cjs/NtdIconMorph.js +21 -11
- package/dist/cjs/NtdStateMorph.js +3 -3
- package/dist/cjs/animationControls.js +10 -3
- package/dist/cjs/createIcon.js +6 -10
- package/dist/cjs/headless-ui.js +3 -3
- package/dist/cjs/iconStyles.js +36 -34
- package/dist/cjs/icons/accessibility.js +13 -26
- package/dist/cjs/icons/actions.js +37 -50
- package/dist/cjs/icons/ai.js +15 -30
- package/dist/cjs/icons/brand.js +7 -18
- package/dist/cjs/icons/business.js +18 -106
- package/dist/cjs/icons/devtech.js +31 -142
- package/dist/cjs/icons/ecommerce.js +16 -32
- package/dist/cjs/icons/education.js +17 -34
- package/dist/cjs/icons/files.js +31 -62
- package/dist/cjs/icons/fintech.js +14 -28
- package/dist/cjs/icons/food.js +16 -32
- package/dist/cjs/icons/fun.js +13 -26
- package/dist/cjs/icons/gaming.js +15 -30
- package/dist/cjs/icons/health.js +13 -36
- package/dist/cjs/icons/index.js +4 -0
- package/dist/cjs/icons/legal.js +13 -26
- package/dist/cjs/icons/media.js +46 -46
- package/dist/cjs/icons/navigation.js +14 -28
- package/dist/cjs/icons/omniverk.js +10 -10
- package/dist/cjs/icons/realestate.js +17 -34
- package/dist/cjs/icons/saas.js +13 -26
- package/dist/cjs/icons/science.js +17 -34
- package/dist/cjs/icons/shapes.js +22 -44
- package/dist/cjs/icons/smarthome.js +13 -26
- package/dist/cjs/icons/social.js +8 -116
- package/dist/cjs/icons/sports.js +14 -28
- package/dist/cjs/icons/sustainability.js +15 -30
- package/dist/cjs/icons/travel.js +15 -30
- package/dist/cjs/icons/ui.js +39 -56
- package/dist/cjs/icons/weather.js +20 -40
- package/dist/cjs/index.js +4 -4
- package/dist/cjs/lottieIntegration.js +3 -3
- package/dist/cjs/nicetodev-icons.css +1 -1
- package/dist/cjs/particleEffects.js +11 -4
- package/dist/cjs/resolver.js +4 -0
- package/dist/cjs/rsc.js +1 -1
- package/dist/cjs/variantProps.js +2 -7
- package/dist/esm/NiceDesktopIconExporter.js +2 -6
- package/dist/esm/NiceFaviconGenerator.js +2 -1
- package/dist/esm/NiceIconPicker.js +16 -21
- package/dist/esm/NiceIconSetCreator.js +6 -29
- package/dist/esm/NtdIconBadge.js +12 -12
- package/dist/esm/NtdIconMorph.js +21 -11
- package/dist/esm/NtdStateMorph.js +3 -3
- package/dist/esm/animationControls.js +11 -4
- package/dist/esm/createIcon.js +7 -11
- package/dist/esm/headless-ui.js +3 -3
- package/dist/esm/iconStyles.js +36 -34
- package/dist/esm/icons/accessibility.js +13 -26
- package/dist/esm/icons/actions.js +37 -51
- package/dist/esm/icons/ai.js +15 -30
- package/dist/esm/icons/brand.js +7 -18
- package/dist/esm/icons/business.js +18 -106
- package/dist/esm/icons/devtech.js +31 -142
- package/dist/esm/icons/ecommerce.js +16 -32
- package/dist/esm/icons/education.js +17 -34
- package/dist/esm/icons/files.js +31 -62
- package/dist/esm/icons/fintech.js +14 -28
- package/dist/esm/icons/food.js +16 -32
- package/dist/esm/icons/fun.js +13 -26
- package/dist/esm/icons/gaming.js +15 -30
- package/dist/esm/icons/health.js +13 -36
- package/dist/esm/icons/index.js +3 -3
- package/dist/esm/icons/legal.js +13 -26
- package/dist/esm/icons/media.js +45 -47
- package/dist/esm/icons/navigation.js +14 -28
- package/dist/esm/icons/omniverk.js +10 -10
- package/dist/esm/icons/realestate.js +17 -34
- package/dist/esm/icons/saas.js +13 -26
- package/dist/esm/icons/science.js +17 -34
- package/dist/esm/icons/shapes.js +22 -44
- package/dist/esm/icons/smarthome.js +13 -26
- package/dist/esm/icons/social.js +8 -116
- package/dist/esm/icons/sports.js +14 -28
- package/dist/esm/icons/sustainability.js +15 -30
- package/dist/esm/icons/travel.js +15 -30
- package/dist/esm/icons/ui.js +39 -57
- package/dist/esm/icons/weather.js +20 -40
- package/dist/esm/index.js +4 -5
- package/dist/esm/lottieIntegration.js +3 -3
- package/dist/esm/nicetodev-icons.css +1 -1
- package/dist/esm/particleEffects.js +11 -4
- package/dist/esm/resolver.js +4 -0
- package/dist/esm/rsc.js +1 -1
- package/dist/esm/smilAnimations.js +1 -1
- package/dist/esm/variantProps.js +3 -7
- package/dist/types/NiceDesktopIconExporter.d.ts +1 -0
- package/dist/types/NtdIconBadge.d.ts +12 -4
- package/dist/types/NtdIconMorph.d.ts +10 -4
- package/dist/types/NtdStateMorph.d.ts +3 -1
- package/dist/types/createIcon.d.ts +1 -9
- package/dist/types/headless-ui.d.ts +6 -2
- package/dist/types/iconStyles.d.ts +33 -11
- package/dist/types/icons/actions.d.ts +1 -0
- package/dist/types/icons/index.d.ts +3 -3
- package/dist/types/icons/media.d.ts +3 -0
- package/dist/types/icons/ui.d.ts +2 -0
- package/dist/types/index.d.ts +2 -12
- package/dist/types/lottieIntegration.d.ts +3 -1
- package/dist/types/particleEffects.d.ts +3 -1
- package/dist/types/rsc.d.ts +1 -3
- package/dist/types/tailwind-plugin.d.ts +1 -1
- package/dist/types/types.d.ts +1 -2
- package/dist/types/variantProps.d.ts +3 -11
- package/package.json +1 -1
package/dist/esm/createIcon.js
CHANGED
|
@@ -2,17 +2,20 @@ import { jsx, jsxs } from 'react/jsx-runtime';
|
|
|
2
2
|
import { forwardRef, useId, useSyncExternalStore } from 'react';
|
|
3
3
|
import { sharpenTree, roundTree, wireTree, MINI_SCALE } from './sharpen.js';
|
|
4
4
|
import { generateSmilAnimation } from './smilAnimations.js';
|
|
5
|
-
import { SEMANTIC_COLOR_VARS, SEMANTIC_COLOR_DEFAULTS,
|
|
5
|
+
import { SIZE_MAP, SEMANTIC_COLOR_VARS, SEMANTIC_COLOR_DEFAULTS, GRADIENT_PRESETS } from './types.js';
|
|
6
6
|
|
|
7
7
|
/* ── Dark mode detection hook ───────────────────────── */
|
|
8
|
+
// No `matchMedia` (jsdom without a polyfill, some embedded webviews): light, and nothing to
|
|
9
|
+
// subscribe to — an icon must not throw where a page renders.
|
|
10
|
+
const hasMatchMedia = () => typeof window !== 'undefined' && typeof window.matchMedia === 'function';
|
|
8
11
|
function getColorScheme() {
|
|
9
|
-
if (
|
|
12
|
+
if (!hasMatchMedia()) {
|
|
10
13
|
return 'light';
|
|
11
14
|
}
|
|
12
15
|
return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
|
|
13
16
|
}
|
|
14
17
|
function subscribeColorScheme(callback) {
|
|
15
|
-
if (
|
|
18
|
+
if (!hasMatchMedia()) {
|
|
16
19
|
return () => { };
|
|
17
20
|
}
|
|
18
21
|
const mq = window.matchMedia('(prefers-color-scheme: dark)');
|
|
@@ -47,12 +50,6 @@ function useColorScheme() {
|
|
|
47
50
|
* <path d="..." stroke={primaryColor} fill="none" />
|
|
48
51
|
* </>
|
|
49
52
|
* ),
|
|
50
|
-
* flat: ({ primaryColor, secondaryColor }) => (
|
|
51
|
-
* <>
|
|
52
|
-
* <rect x="2" y="2" width="20" height="20" rx="4" fill={secondaryColor} />
|
|
53
|
-
* <path d="..." fill={primaryColor} />
|
|
54
|
-
* </>
|
|
55
|
-
* ),
|
|
56
53
|
* },
|
|
57
54
|
* });
|
|
58
55
|
* ```
|
|
@@ -156,8 +153,7 @@ function createIcon(options) {
|
|
|
156
153
|
const is3d = variant === '3d';
|
|
157
154
|
const filterId = useId();
|
|
158
155
|
// Cutout variant uses SVG mask for knockout/cutout effect
|
|
159
|
-
|
|
160
|
-
const isCutout = variant === 'cutout' || variant === 'flat';
|
|
156
|
+
const isCutout = variant === 'cutout';
|
|
161
157
|
const maskId = useId();
|
|
162
158
|
const classes = ['ntd-icon', animation ? `ntd-anim-${animation}` : '', className !== null && className !== void 0 ? className : '']
|
|
163
159
|
.filter(Boolean)
|
package/dist/esm/headless-ui.js
CHANGED
|
@@ -34,7 +34,8 @@ import React, { forwardRef, createElement } from 'react';
|
|
|
34
34
|
* Simple Slot implementation for asChild pattern.
|
|
35
35
|
* Compatible with Radix UI's Slot component behavior.
|
|
36
36
|
*/
|
|
37
|
-
const Slot =
|
|
37
|
+
const Slot = /* @__PURE__ */ Object.assign(
|
|
38
|
+
/* @__PURE__ */ forwardRef(({ children, ...props }, forwardedRef) => {
|
|
38
39
|
if (!React.isValidElement(children)) {
|
|
39
40
|
return null;
|
|
40
41
|
}
|
|
@@ -43,8 +44,7 @@ const Slot = forwardRef(({ children, ...props }, forwardedRef) => {
|
|
|
43
44
|
...children.props,
|
|
44
45
|
ref: forwardedRef,
|
|
45
46
|
});
|
|
46
|
-
});
|
|
47
|
-
Slot.displayName = 'Slot';
|
|
47
|
+
}), { displayName: 'Slot' });
|
|
48
48
|
/* ────────────────────────────────────────────────────────────────────────────
|
|
49
49
|
FORWARD REF WRAPPER
|
|
50
50
|
───────────────────────────────────────────────────────────────────────────── */
|
package/dist/esm/iconStyles.js
CHANGED
|
@@ -17,7 +17,8 @@ const overlayBase = {
|
|
|
17
17
|
// 1. NtdIconFloral 🌸
|
|
18
18
|
// Botanical vines, leaves & flowers wrapping the icon
|
|
19
19
|
// ══════════════════════════════════════════════════════
|
|
20
|
-
const NtdIconFloral =
|
|
20
|
+
const NtdIconFloral = /* @__PURE__ */ Object.assign(
|
|
21
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', vineColor = '#22c55e', petalColor = '#f472b6', leafColor, className, style, }, ref) => {
|
|
21
22
|
const lc = leafColor !== null && leafColor !== void 0 ? leafColor : vineColor;
|
|
22
23
|
const dur = `${duration}s`;
|
|
23
24
|
const halfDur = `${duration * 0.5}s`;
|
|
@@ -66,13 +67,13 @@ const NtdIconFloral = forwardRef(({ children, animate = true, duration = 2, inte
|
|
|
66
67
|
];
|
|
67
68
|
const dashLen = 250;
|
|
68
69
|
return (jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [children, jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-30%', width: '160%', height: '160%' }, "aria-hidden": true, children: [[vine1, vine2, ...(showExtra ? [vine3, vine4] : [])].map((d, i) => (jsx("path", { d: d, fill: "none", stroke: vineColor, strokeWidth: i < 2 ? 1.5 : 1, strokeLinecap: "round", opacity: i < 2 ? 0.85 : 0.55, ...(animate ? { strokeDasharray: dashLen, strokeDashoffset: dashLen } : {}), children: animate && (jsx("animate", { attributeName: "stroke-dashoffset", from: `${dashLen}`, to: "0", dur: dur, fill: "freeze", begin: i < 2 ? '0s' : `${duration * 0.3}s` })) }, `v${i}`))), allLeaves.map((l, i) => (jsx("g", { transform: `translate(${l.x},${l.y}) rotate(${l.a})`, children: jsxs("g", { opacity: animate ? 0 : 0.8, children: [jsx("path", { d: leafD, fill: lc }), jsx("line", { x1: 0, y1: -3, x2: 0, y2: 2.5, stroke: lc, strokeWidth: "0.4", opacity: 0.4 }), animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: "0.8", dur: halfDur, begin: bloomAt, fill: "freeze" }), jsx("animateTransform", { attributeName: "transform", type: "scale", values: "0 0;1 1", keyTimes: "0;1", keySplines: "0.34 1 0.64 1", calcMode: "spline", dur: halfDur, begin: bloomAt, fill: "freeze" })] }))] }) }, `l${i}`))), flowerPositions.map((f, fi) => (jsxs("g", { opacity: animate ? 0 : 1, children: [petalOffsets.map(([ox, oy], pi) => (jsx("circle", { cx: f.x + ox * f.r, cy: f.y + oy * f.r, r: f.r * 0.5, fill: petalColor, opacity: 0.85 }, pi))), jsx("circle", { cx: f.x, cy: f.y, r: f.r * 0.3, fill: "#fde047" }), animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: "1", dur: halfDur, begin: flowerAt, fill: "freeze" }), jsx("animateTransform", { attributeName: "transform", type: "scale", values: "0.3 0.3;1 1", keyTimes: "0;1", keySplines: "0.34 1 0.64 1", calcMode: "spline", dur: halfDur, begin: flowerAt, fill: "freeze" })] }))] }, `f${fi}`))), animate && (jsx("animateTransform", { attributeName: "transform", type: "rotate", values: "0 50 50;1 50 50;-1 50 50;0 50 50", dur: "4s", repeatCount: "indefinite", begin: `${duration}s` }))] })] }));
|
|
69
|
-
});
|
|
70
|
-
NtdIconFloral.displayName = 'NtdIconFloral';
|
|
70
|
+
}), { displayName: 'NtdIconFloral' });
|
|
71
71
|
// ══════════════════════════════════════════════════════
|
|
72
72
|
// 2. NtdIconFestive 🎉
|
|
73
73
|
// Confetti burst, stars & sparkles
|
|
74
74
|
// ══════════════════════════════════════════════════════
|
|
75
|
-
const NtdIconFestive =
|
|
75
|
+
const NtdIconFestive = /* @__PURE__ */ Object.assign(
|
|
76
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 1.5, intensity = 'normal', colors, sparkleColor = '#fbbf24', className, style, }, ref) => {
|
|
76
77
|
const cols = colors !== null && colors !== void 0 ? colors : ['#ef4444', '#f59e0b', '#22c55e', '#3b82f6', '#a855f7', '#ec4899'];
|
|
77
78
|
const dur = `${duration * 0.6}s`;
|
|
78
79
|
// Confetti pieces: position relative to center, rotation, color index
|
|
@@ -138,13 +139,13 @@ const NtdIconFestive = forwardRef(({ children, animate = true, duration = 1.5, i
|
|
|
138
139
|
const col = cols[c.ci % cols.length];
|
|
139
140
|
return (jsx("g", { transform: "translate(50,50)", children: jsxs("g", { opacity: animate ? 0 : 0.85, children: [jsx("rect", { x: c.x - 50 - 1.5, y: c.y - 50 - 3, width: 3, height: 6, rx: 0.5, fill: col, transform: `rotate(${c.r} ${c.x - 50} ${c.y - 50})` }), animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: "0.85", dur: "0.4s", begin: delay, fill: "freeze" }), jsx("animateTransform", { attributeName: "transform", type: "scale", values: "0 0;1 1", keyTimes: "0;1", keySplines: "0.34 1 0.64 1", calcMode: "spline", dur: dur, begin: delay, fill: "freeze" })] }))] }) }, `c${i}`));
|
|
140
141
|
}), stars.map((s, i) => (jsxs("g", { transform: `translate(${s.x},${s.y}) scale(${s.s})`, children: [jsx("path", { d: starD, fill: sparkleColor, opacity: animate ? 0 : 0.9, children: animate && (jsx("animate", { attributeName: "opacity", from: "0", to: "0.9", dur: "0.5s", begin: `${(i * 0.15 + 0.3).toFixed(2)}s`, fill: "freeze" })) }), animate && (jsx("animateTransform", { attributeName: "transform", type: "scale", values: `${s.s};${s.s * 1.3};${s.s}`, dur: "1.5s", repeatCount: "indefinite", begin: `${duration + 0.5}s` }))] }, `s${i}`))), sparkles.map((sp, i) => (jsx("circle", { cx: sp.cx, cy: sp.cy, r: sp.r, fill: sparkleColor, opacity: animate ? 0 : 0.7, children: animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: "0.7", dur: "0.3s", begin: `${(duration * 0.4 + i * 0.08).toFixed(2)}s`, fill: "freeze" }), jsx("animate", { attributeName: "opacity", values: "0.3;0.9;0.3", dur: `${1 + i * 0.3}s`, repeatCount: "indefinite", begin: `${duration}s` })] })) }, `sp${i}`)))] })] }));
|
|
141
|
-
});
|
|
142
|
-
NtdIconFestive.displayName = 'NtdIconFestive';
|
|
142
|
+
}), { displayName: 'NtdIconFestive' });
|
|
143
143
|
// ══════════════════════════════════════════════════════
|
|
144
144
|
// 3. NtdIconNeon 💡
|
|
145
145
|
// Multi-layered glow with neon sign flicker
|
|
146
146
|
// ══════════════════════════════════════════════════════
|
|
147
|
-
const NtdIconNeon =
|
|
147
|
+
const NtdIconNeon = /* @__PURE__ */ Object.assign(
|
|
148
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 4, intensity = 'normal', glowColor = '#0ff', secondaryGlow, flicker = true, className, style, }, ref) => {
|
|
148
149
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, '_');
|
|
149
150
|
const glow2 = secondaryGlow !== null && secondaryGlow !== void 0 ? secondaryGlow : glowColor;
|
|
150
151
|
const blur = intensity === 'dense' ? 8 : intensity === 'subtle' ? 3 : 5;
|
|
@@ -169,13 +170,13 @@ const NtdIconNeon = forwardRef(({ children, animate = true, duration = 4, intens
|
|
|
169
170
|
filter: filterValue,
|
|
170
171
|
...(animate && flicker ? { animation: `${animName} ${duration}s infinite` } : {}),
|
|
171
172
|
}, children: children })] }));
|
|
172
|
-
});
|
|
173
|
-
NtdIconNeon.displayName = 'NtdIconNeon';
|
|
173
|
+
}), { displayName: 'NtdIconNeon' });
|
|
174
174
|
// ══════════════════════════════════════════════════════
|
|
175
175
|
// 4. NtdIconSketch ✏️
|
|
176
176
|
// Hand-drawn look with SVG turbulence + scribble overlay
|
|
177
177
|
// ══════════════════════════════════════════════════════
|
|
178
|
-
const NtdIconSketch =
|
|
178
|
+
const NtdIconSketch = /* @__PURE__ */ Object.assign(
|
|
179
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 1.5, intensity = 'normal', strokeColor = '#374151', roughness = 2, className, style, }, ref) => {
|
|
179
180
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, '_');
|
|
180
181
|
const filterId = `ntd_sketch_${uid}`;
|
|
181
182
|
const dur = `${duration}s`;
|
|
@@ -195,13 +196,13 @@ const NtdIconSketch = forwardRef(({ children, animate = true, duration = 1.5, in
|
|
|
195
196
|
];
|
|
196
197
|
return (jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsx("svg", { style: { position: 'absolute', width: 0, height: 0 }, "aria-hidden": true, children: jsx("defs", { children: jsxs("filter", { id: filterId, children: [jsx("feTurbulence", { type: "turbulence", baseFrequency: 0.02 + roughness * 0.008, numOctaves: 3, seed: 2, result: "noise" }), jsx("feDisplacementMap", { in: "SourceGraphic", in2: "noise", scale: roughness, xChannelSelector: "R", yChannelSelector: "G" })] }) }) }), jsx("span", { style: { display: 'inline-flex', filter: `url(#${filterId})` }, children: children }), jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-20%', width: '140%', height: '140%' }, "aria-hidden": true, children: [jsx("path", { d: scribbleMain, fill: "none", stroke: strokeColor, strokeWidth: "1", strokeLinecap: "round", opacity: 0.5, ...(animate ? { strokeDasharray: dashLen, strokeDashoffset: dashLen } : {}), children: animate && (jsx("animate", { attributeName: "stroke-dashoffset", from: `${dashLen}`, to: "0", dur: dur, fill: "freeze" })) }), intensity !== 'subtle' &&
|
|
197
198
|
scribbleExtra.slice(0, intensity === 'dense' ? 2 : 1).map((d, i) => (jsx("path", { d: d, fill: "none", stroke: strokeColor, strokeWidth: "0.8", strokeLinecap: "round", opacity: 0.35, ...(animate ? { strokeDasharray: dashLen, strokeDashoffset: dashLen } : {}), children: animate && (jsx("animate", { attributeName: "stroke-dashoffset", from: `${dashLen}`, to: "0", dur: dur, fill: "freeze", begin: `${0.3 + i * 0.2}s` })) }, `se${i}`))), hatchPositions.slice(0, hatchCount).map((p, i) => (jsx("line", { x1: p.x1, y1: p.y1, x2: p.x2, y2: p.y2, stroke: strokeColor, strokeWidth: "0.6", strokeLinecap: "round", opacity: animate ? 0 : 0.3, children: animate && (jsx("animate", { attributeName: "opacity", from: "0", to: "0.3", dur: "0.3s", begin: `${duration * 0.7 + i * 0.1}s`, fill: "freeze" })) }, `h${i}`)))] })] }));
|
|
198
|
-
});
|
|
199
|
-
NtdIconSketch.displayName = 'NtdIconSketch';
|
|
199
|
+
}), { displayName: 'NtdIconSketch' });
|
|
200
200
|
// ══════════════════════════════════════════════════════
|
|
201
201
|
// 5. NtdIconWatercolor 🎨
|
|
202
202
|
// Soft paint blobs & bleed effect behind the icon
|
|
203
203
|
// ══════════════════════════════════════════════════════
|
|
204
|
-
const NtdIconWatercolor =
|
|
204
|
+
const NtdIconWatercolor = /* @__PURE__ */ Object.assign(
|
|
205
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', tintColor = '#818cf8', bleedColor = '#f0abfc', className, style, }, ref) => {
|
|
205
206
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, '_');
|
|
206
207
|
const filterId = `ntd_wc_${uid}`;
|
|
207
208
|
const blobFilter = `${filterId}_blob`;
|
|
@@ -244,13 +245,13 @@ const NtdIconWatercolor = forwardRef(({ children, animate = true, duration = 2,
|
|
|
244
245
|
position: 'relative',
|
|
245
246
|
zIndex: 1,
|
|
246
247
|
}, children: children })] }));
|
|
247
|
-
});
|
|
248
|
-
NtdIconWatercolor.displayName = 'NtdIconWatercolor';
|
|
248
|
+
}), { displayName: 'NtdIconWatercolor' });
|
|
249
249
|
// ══════════════════════════════════════════════════════
|
|
250
250
|
// 6. NtdIconCosmic ✨
|
|
251
251
|
// Stars, nebula glow & constellation lines
|
|
252
252
|
// ══════════════════════════════════════════════════════
|
|
253
|
-
const NtdIconCosmic =
|
|
253
|
+
const NtdIconCosmic = /* @__PURE__ */ Object.assign(
|
|
254
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', starColor = '#e2e8f0', nebulaColor = '#7c3aed', nebulaColor2 = '#2563eb', className, style, }, ref) => {
|
|
254
255
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, '_');
|
|
255
256
|
const nebulaFilter = `ntd_cosm_${uid}`;
|
|
256
257
|
// Stars
|
|
@@ -303,7 +304,9 @@ const NtdIconCosmic = forwardRef(({ children, animate = true, duration = 2, inte
|
|
|
303
304
|
const nebulae = [
|
|
304
305
|
{ cx: 25, cy: 25, r: 16, color: nebulaColor, op: 0.12 },
|
|
305
306
|
{ cx: 75, cy: 75, r: 18, color: nebulaColor2, op: 0.1 },
|
|
306
|
-
...(intensity !== 'subtle'
|
|
307
|
+
...(intensity !== 'subtle'
|
|
308
|
+
? [{ cx: 50, cy: 50, r: 14, color: nebulaColor, op: 0.08 }]
|
|
309
|
+
: []),
|
|
307
310
|
...(intensity === 'dense'
|
|
308
311
|
? [
|
|
309
312
|
{ cx: 80, cy: 20, r: 12, color: nebulaColor2, op: 0.09 },
|
|
@@ -313,13 +316,13 @@ const NtdIconCosmic = forwardRef(({ children, animate = true, duration = 2, inte
|
|
|
313
316
|
];
|
|
314
317
|
const lineLen = 80;
|
|
315
318
|
return (jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsx("svg", { style: { position: 'absolute', width: 0, height: 0 }, "aria-hidden": true, children: jsx("defs", { children: jsx("filter", { id: nebulaFilter, children: jsx("feGaussianBlur", { stdDeviation: "4" }) }) }) }), jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-30%', width: '160%', height: '160%', zIndex: 0 }, "aria-hidden": true, children: [nebulae.map((n, i) => (jsx("circle", { cx: n.cx, cy: n.cy, r: n.r, fill: n.color, opacity: animate ? 0 : n.op, filter: `url(#${nebulaFilter})`, children: animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: `${n.op}`, dur: `${duration}s`, fill: "freeze" }), jsx("animate", { attributeName: "opacity", values: `${n.op};${n.op * 1.5};${n.op}`, dur: "5s", repeatCount: "indefinite", begin: `${duration}s` }), jsx("animate", { attributeName: "r", values: `${n.r};${n.r * 1.1};${n.r}`, dur: "6s", repeatCount: "indefinite", begin: `${duration}s` })] })) }, `nb${i}`))), constellations.map((c, i) => (jsx("line", { x1: c.from[0], y1: c.from[1], x2: c.to[0], y2: c.to[1], stroke: starColor, strokeWidth: "0.3", opacity: 0.25, ...(animate ? { strokeDasharray: lineLen, strokeDashoffset: lineLen } : {}), children: animate && (jsx("animate", { attributeName: "stroke-dashoffset", from: `${lineLen}`, to: "0", dur: `${duration * 0.8}s`, begin: `${(i * 0.2).toFixed(1)}s`, fill: "freeze" })) }, `cl${i}`)))] }), jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children }), jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-30%', width: '160%', height: '160%', zIndex: 2 }, "aria-hidden": true, children: [allStars.map((s, i) => (jsx("circle", { cx: s.cx, cy: s.cy, r: s.r, fill: starColor, opacity: animate ? 0 : 0.8, children: animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: "0.8", dur: `${duration * 0.5}s`, begin: `${(i * 0.1).toFixed(2)}s`, fill: "freeze" }), jsx("animate", { attributeName: "opacity", values: "0.4;1;0.4", dur: `${1.5 + (i % 4) * 0.4}s`, repeatCount: "indefinite", begin: `${duration}s` }), jsx("animate", { attributeName: "r", values: `${s.r};${s.r * 1.4};${s.r}`, dur: `${2 + (i % 3) * 0.5}s`, repeatCount: "indefinite", begin: `${duration}s` })] })) }, `st${i}`))), animate && (jsx("animateTransform", { attributeName: "transform", type: "rotate", from: "0 50 50", to: "360 50 50", dur: "120s", repeatCount: "indefinite" }))] })] }));
|
|
316
|
-
});
|
|
317
|
-
NtdIconCosmic.displayName = 'NtdIconCosmic';
|
|
319
|
+
}), { displayName: 'NtdIconCosmic' });
|
|
318
320
|
// ══════════════════════════════════════════════════════
|
|
319
321
|
// 7. NtdIconSteampunk ⚙️
|
|
320
322
|
// Rotating gears, copper pipes, brass rivets & steam puffs
|
|
321
323
|
// ══════════════════════════════════════════════════════
|
|
322
|
-
const NtdIconSteampunk =
|
|
324
|
+
const NtdIconSteampunk = /* @__PURE__ */ Object.assign(
|
|
325
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 3, intensity = 'normal', brassColor = '#b45309', pipeColor = '#78350f', steamColor = '#d1d5db', className, style, }, ref) => {
|
|
323
326
|
// Build toothed gear path from a center point, radius and tooth count
|
|
324
327
|
const makeGear = (cx, cy, r, teeth) => {
|
|
325
328
|
const inner = r * 0.68;
|
|
@@ -385,13 +388,13 @@ const NtdIconSteampunk = forwardRef(({ children, animate = true, duration = 3, i
|
|
|
385
388
|
];
|
|
386
389
|
return (jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-20%', width: '140%', height: '140%', zIndex: 0 }, "aria-hidden": true, children: [pipes.map((p, i) => (jsx("path", { d: p.d, stroke: pipeColor, strokeWidth: p.w, fill: "none", strokeLinecap: "round", opacity: 0.55 }, `pipe${i}`))), rivets.map((rv, i) => (jsx("circle", { cx: rv.cx, cy: rv.cy, r: 1.5, fill: brassColor, opacity: 0.7 }, `rv${i}`)))] }), jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children }), jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-20%', width: '140%', height: '140%', zIndex: 2 }, "aria-hidden": true, children: [gears.map((g, i) => (jsxs("g", { children: [jsx("path", { d: makeGear(g.cx, g.cy, g.r, g.teeth), fill: brassColor, opacity: 0.78, children: animate && (jsx("animateTransform", { attributeName: "transform", type: "rotate", from: `0 ${g.cx} ${g.cy}`, to: `${g.dir * 360} ${g.cx} ${g.cy}`, dur: `${duration * g.dm}s`, repeatCount: "indefinite" })) }), jsx("circle", { cx: g.cx, cy: g.cy, r: g.r * 0.3, fill: pipeColor, opacity: 0.85 }), jsx("circle", { cx: g.cx, cy: g.cy, r: g.r * 0.12, fill: brassColor, opacity: 0.6 })] }, `gear${i}`))), animate &&
|
|
387
390
|
steamPuffs.map((sp, i) => (jsxs("circle", { cx: sp.cx, cy: sp.cy, r: sp.r, fill: steamColor, opacity: 0, children: [jsx("animate", { attributeName: "opacity", values: "0;0.45;0", dur: "2.4s", begin: `${i * 0.7}s`, repeatCount: "indefinite" }), jsx("animate", { attributeName: "cy", values: `${sp.cy};${sp.cy - 12}`, dur: "2.4s", begin: `${i * 0.7}s`, repeatCount: "indefinite" }), jsx("animate", { attributeName: "r", values: `${sp.r};${sp.r * 2.2}`, dur: "2.4s", begin: `${i * 0.7}s`, repeatCount: "indefinite" })] }, `stm${i}`)))] })] }));
|
|
388
|
-
});
|
|
389
|
-
NtdIconSteampunk.displayName = 'NtdIconSteampunk';
|
|
391
|
+
}), { displayName: 'NtdIconSteampunk' });
|
|
390
392
|
// ══════════════════════════════════════════════════════
|
|
391
393
|
// 8. NtdIconFrost ❄️
|
|
392
394
|
// Hexagonal snowflake crystals, sparkles & frozen glow
|
|
393
395
|
// ══════════════════════════════════════════════════════
|
|
394
|
-
const NtdIconFrost =
|
|
396
|
+
const NtdIconFrost = /* @__PURE__ */ Object.assign(
|
|
397
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', crystalColor = '#bae6fd', glowColor = '#38bdf8', className, style, }, ref) => {
|
|
395
398
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, '_');
|
|
396
399
|
const glowFilterId = `ntd_frost_${uid}`;
|
|
397
400
|
const crystalDefs = [
|
|
@@ -451,13 +454,13 @@ const NtdIconFrost = forwardRef(({ children, animate = true, duration = 2, inten
|
|
|
451
454
|
{ cx: 86, cy: 96, r: 1.1 },
|
|
452
455
|
];
|
|
453
456
|
return (jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsx("svg", { style: { position: 'absolute', width: 0, height: 0 }, "aria-hidden": true, children: jsx("defs", { children: jsx("filter", { id: glowFilterId, children: jsx("feGaussianBlur", { stdDeviation: "6" }) }) }) }), jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-25%', width: '150%', height: '150%', zIndex: 0 }, "aria-hidden": true, children: [jsx("circle", { cx: "50", cy: "50", r: "30", fill: glowColor, opacity: 0.07, filter: `url(#${glowFilterId})`, children: animate && (jsx("animate", { attributeName: "opacity", values: "0.04;0.11;0.04", dur: "4s", repeatCount: "indefinite" })) }), allArms.map((arm, i) => (jsx("line", { x1: arm.x1, y1: arm.y1, x2: arm.x2, y2: arm.y2, stroke: crystalColor, strokeWidth: "0.9", strokeLinecap: "round", opacity: animate ? 0 : 0.7, children: animate && (jsx("animate", { attributeName: "opacity", from: "0", to: "0.7", dur: `${duration * 0.4}s`, begin: `${arm.delay.toFixed(2)}s`, fill: "freeze" })) }, `arm${i}`))), allTicks.map((tick, i) => (jsx("line", { x1: tick.x1, y1: tick.y1, x2: tick.x2, y2: tick.y2, stroke: crystalColor, strokeWidth: "0.6", strokeLinecap: "round", opacity: animate ? 0 : 0.45, children: animate && (jsx("animate", { attributeName: "opacity", from: "0", to: "0.45", dur: `${duration * 0.3}s`, begin: `${tick.delay.toFixed(2)}s`, fill: "freeze" })) }, `tick${i}`))), sparkles.slice(0, intensity === 'subtle' ? 4 : 8).map((sp, i) => (jsx("circle", { cx: sp.cx, cy: sp.cy, r: sp.r, fill: glowColor, opacity: animate ? 0 : 0.8, children: animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: "0.8", dur: "0.35s", begin: `${(duration * 0.65 + i * 0.08).toFixed(2)}s`, fill: "freeze" }), jsx("animate", { attributeName: "opacity", values: "0.3;1;0.3", dur: `${1 + i * 0.2}s`, repeatCount: "indefinite", begin: `${duration}s` })] })) }, `fsp${i}`)))] }), jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children })] }));
|
|
454
|
-
});
|
|
455
|
-
NtdIconFrost.displayName = 'NtdIconFrost';
|
|
457
|
+
}), { displayName: 'NtdIconFrost' });
|
|
456
458
|
// ══════════════════════════════════════════════════════
|
|
457
459
|
// 9. NtdIconPixel 👾
|
|
458
460
|
// Retro pixel corners, scanline scroll & glitch animation
|
|
459
461
|
// ══════════════════════════════════════════════════════
|
|
460
|
-
const NtdIconPixel =
|
|
462
|
+
const NtdIconPixel = /* @__PURE__ */ Object.assign(
|
|
463
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 0.5, intensity = 'normal', pixelColor = '#22d3ee', scanlineColor = '#000000', glitchEffect = true, className, style, }, ref) => {
|
|
461
464
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, '_');
|
|
462
465
|
const scanAnimName = `ntd_pixel_scan_${uid}`;
|
|
463
466
|
const glitchAnimName = `ntd_pixel_glitch_${uid}`;
|
|
@@ -529,13 +532,13 @@ const NtdIconPixel = forwardRef(({ children, animate = true, duration = 0.5, int
|
|
|
529
532
|
background: `linear-gradient(transparent, ${pixelColor}20, transparent)`,
|
|
530
533
|
animation: `${scanAnimName} ${duration + 2}s linear infinite`,
|
|
531
534
|
} }) }))] }));
|
|
532
|
-
});
|
|
533
|
-
NtdIconPixel.displayName = 'NtdIconPixel';
|
|
535
|
+
}), { displayName: 'NtdIconPixel' });
|
|
534
536
|
// ══════════════════════════════════════════════════════
|
|
535
537
|
// 10. NtdIconOrganic 🦠
|
|
536
538
|
// Pulsing cell blobs, membrane rings & floating bubbles
|
|
537
539
|
// ══════════════════════════════════════════════════════
|
|
538
|
-
const NtdIconOrganic =
|
|
540
|
+
const NtdIconOrganic = /* @__PURE__ */ Object.assign(
|
|
541
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 3, intensity = 'normal', cellColor = '#86efac', membraneColor = '#4ade80', nucleusColor = '#fbbf24', className, style, }, ref) => {
|
|
539
542
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, '_');
|
|
540
543
|
const blobFilterId = `ntd_org_${uid}`;
|
|
541
544
|
const cells = [
|
|
@@ -574,14 +577,14 @@ const NtdIconOrganic = forwardRef(({ children, animate = true, duration = 3, int
|
|
|
574
577
|
{ cx: 8, cy: 8, r: 10 },
|
|
575
578
|
{ cx: 92, cy: 92, r: 10 },
|
|
576
579
|
].map((ring, i) => (jsx("circle", { cx: ring.cx, cy: ring.cy, r: ring.r, fill: "none", stroke: membraneColor, strokeWidth: "0.7", opacity: animate ? 0 : 0.35, children: animate && (jsx("animate", { attributeName: "opacity", from: "0", to: "0.35", dur: `${duration * 0.7}s`, fill: "freeze" })) }, `ring${i}`))), bubbles.slice(0, bubbleCount).map((b, i) => (jsx("circle", { cx: b.cx, cy: b.cy, r: b.r, fill: nucleusColor, opacity: animate ? 0 : 0.28, children: animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: "0.28", dur: "0.5s", begin: `${(duration * 0.65 + i * 0.18).toFixed(2)}s`, fill: "freeze" }), jsx("animate", { attributeName: "cy", values: `${b.cy};${b.cy - 5};${b.cy}`, dur: `${2.2 + i * 0.45}s`, repeatCount: "indefinite", begin: `${duration}s` })] })) }, `ob${i}`)))] }), jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children })] }));
|
|
577
|
-
});
|
|
578
|
-
NtdIconOrganic.displayName = 'NtdIconOrganic';
|
|
580
|
+
}), { displayName: 'NtdIconOrganic' });
|
|
579
581
|
// ══════════════════════════════════════════════════════
|
|
580
582
|
// 11. NtdIconGeometric 🔷
|
|
581
583
|
// Sacred geometry: concentric rings, Star of David
|
|
582
584
|
// triangles & slowly rotating corner diamonds
|
|
583
585
|
// ══════════════════════════════════════════════════════
|
|
584
|
-
const NtdIconGeometric =
|
|
586
|
+
const NtdIconGeometric = /* @__PURE__ */ Object.assign(
|
|
587
|
+
/* @__PURE__ */ forwardRef(({ children, animate = true, duration = 8, intensity = 'normal', primaryColor = '#6366f1', secondaryColor = '#8b5cf6', accentColor = '#a78bfa', className, style, }, ref) => {
|
|
585
588
|
const makeTriangle = (cx, cy, r, rotDeg) => Array.from({ length: 3 }, (_, i) => {
|
|
586
589
|
const a = ((i * 120 - 90 + rotDeg) * Math.PI) / 180;
|
|
587
590
|
return `${(cx + r * Math.cos(a)).toFixed(2)},${(cy + r * Math.sin(a)).toFixed(2)}`;
|
|
@@ -626,7 +629,6 @@ const NtdIconGeometric = forwardRef(({ children, animate = true, duration = 8, i
|
|
|
626
629
|
];
|
|
627
630
|
const diamondPath = (cx, cy, s = 3) => `M${cx},${cy - s} L${cx + s},${cy} L${cx},${cy + s} L${cx - s},${cy}Z`;
|
|
628
631
|
return (jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-30%', width: '160%', height: '160%', zIndex: 0 }, "aria-hidden": true, children: [rings.map((ring, i) => (jsx("circle", { cx: "50", cy: "50", r: ring.r, fill: "none", stroke: ring.color, strokeWidth: "0.6", strokeDasharray: ring.dash, opacity: ring.op, children: animate && (jsx("animateTransform", { attributeName: "transform", type: "rotate", from: "0 50 50", to: `${ring.dir * 360} 50 50`, dur: `${ring.dur}s`, repeatCount: "indefinite" })) }, `rng${i}`))), triangles.map((t, i) => (jsx("polygon", { points: makeTriangle(50, 50, t.r, t.rot), fill: "none", stroke: t.color, strokeWidth: "0.5", opacity: t.op, children: animate && (jsx("animateTransform", { attributeName: "transform", type: "rotate", from: "0 50 50", to: `${t.dir * 360} 50 50`, dur: `${t.dur}s`, repeatCount: "indefinite" })) }, `tri${i}`))), diamonds.map((d, i) => (jsx("path", { d: diamondPath(d.cx, d.cy), fill: accentColor, opacity: animate ? 0 : 0.5, children: animate && (jsxs(Fragment, { children: [jsx("animate", { attributeName: "opacity", from: "0", to: "0.5", dur: `${duration * 0.25}s`, begin: `${(i * 0.09).toFixed(2)}s`, fill: "freeze" }), jsx("animateTransform", { attributeName: "transform", type: "rotate", from: `0 ${d.cx} ${d.cy}`, to: `360 ${d.cx} ${d.cy}`, dur: `${3 + i * 0.6}s`, repeatCount: "indefinite" })] })) }, `dm${i}`)))] }), jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children })] }));
|
|
629
|
-
});
|
|
630
|
-
NtdIconGeometric.displayName = 'NtdIconGeometric';
|
|
632
|
+
}), { displayName: 'NtdIconGeometric' });
|
|
631
633
|
|
|
632
634
|
export { NtdIconCosmic, NtdIconFestive, NtdIconFloral, NtdIconFrost, NtdIconGeometric, NtdIconNeon, NtdIconOrganic, NtdIconPixel, NtdIconSketch, NtdIconSteampunk, NtdIconWatercolor };
|
|
@@ -4,142 +4,129 @@ import { createIcon } from '../createIcon.js';
|
|
|
4
4
|
/* ────────────────────────────────────────────────────────────────────────────
|
|
5
5
|
UNIVERSAL ACCESS
|
|
6
6
|
───────────────────────────────────────────────────────────────────────────── */
|
|
7
|
-
const NtdAccessibility = createIcon({
|
|
7
|
+
const NtdAccessibility = /* @__PURE__ */ createIcon({
|
|
8
8
|
displayName: 'NtdAccessibility',
|
|
9
9
|
paths: {
|
|
10
10
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("path", { d: "M12 8c-4 0-6 1-6 2v2h3v8h2v-5h2v5h2v-8h3v-2c0-1-2-2-6-2z", fill: primaryColor })] })),
|
|
11
11
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M12 8c-4 0-6 1-6 2v2h3v8h2v-5h2v5h2v-8h3v-2c0-1-2-2-6-2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
12
12
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("path", { d: "M12 8c-4 0-6 1-6 2v2h3v8h2v-5h2v5h2v-8h3v-2c0-1-2-2-6-2z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M12 8c-4 0-6 1-6 2v2h3v8h2v-5h2v5h2v-8h3v-2c0-1-2-2-6-2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
13
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("circle", { cx: "12", cy: "5", r: "1.5", fill: primaryColor }), jsx("path", { d: "M12 8c-3 0-4.5.75-4.5 1.5v1.5h2.25v6h1.5v-3.75h1.5v3.75h1.5v-6h2.25v-1.5c0-.75-1.5-1.5-4.5-1.5z", fill: primaryColor })] })),
|
|
14
13
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("circle", { cx: "12", cy: "4", r: "2", fill: "white", opacity: "0.08" }), jsx("path", { d: "M12 8c-4 0-6 1-6 2v2h3v8h2v-5h2v5h2v-8h3v-2c0-1-2-2-6-2z", fill: secondaryColor })] })),
|
|
15
14
|
},
|
|
16
15
|
});
|
|
17
|
-
const NtdWheelchair = createIcon({
|
|
16
|
+
const NtdWheelchair = /* @__PURE__ */ createIcon({
|
|
18
17
|
displayName: 'NtdWheelchair',
|
|
19
18
|
paths: {
|
|
20
19
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("path", { d: "M10 8v6H6l-1 4h3l1-2h5a4 4 0 01-4 4 4 4 0 01-4-4H4a6 6 0 006 6 6 6 0 006-6v-8h-6z", fill: primaryColor }), jsx("path", { d: "M16 14l2 4h2l-2-4", fill: primaryColor })] })),
|
|
21
20
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M10 8v6H6l-1 4h3l1-2h5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round", strokeLinejoin: "round" }), jsx("circle", { cx: "10", cy: "16", r: "4", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 14l2 4h2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round" })] })),
|
|
22
21
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "10", cy: "16", r: "4", fill: secondaryColor, opacity: secondaryOpacity }), jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("path", { d: "M10 8v6H6l-1 4h3l1-2h5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round", strokeLinejoin: "round" }), jsx("circle", { cx: "10", cy: "16", r: "4", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 14l2 4h2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round" })] })),
|
|
23
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("circle", { cx: "12", cy: "5", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "10", cy: "15", r: "3", fill: primaryColor, opacity: "0.3" }), jsx("path", { d: "M10 8v4.5H7l-.75 3h2.25l.75-1.5h4", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round", strokeLinejoin: "round" }), jsx("circle", { cx: "10", cy: "15", r: "3", stroke: primaryColor, strokeWidth: "1.5", fill: "none" }), jsx("path", { d: "M15 13l1.5 3h1.5", stroke: primaryColor, strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })] })),
|
|
24
22
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("circle", { cx: "12", cy: "4", r: "2", fill: "white", opacity: "0.08" }), jsx("path", { d: "M10 8v6H6l-1 4h3l1-2h5a4 4 0 01-4 4 4 4 0 01-4-4H4a6 6 0 006 6 6 6 0 006-6v-8h-6z", fill: secondaryColor }), jsx("path", { d: "M16 14l2 4h2l-2-4", fill: "#3B82F6" })] })),
|
|
25
23
|
},
|
|
26
24
|
});
|
|
27
|
-
const NtdBlind = createIcon({
|
|
25
|
+
const NtdBlind = /* @__PURE__ */ createIcon({
|
|
28
26
|
displayName: 'NtdBlind',
|
|
29
27
|
paths: {
|
|
30
28
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("path", { d: "M14 8h-4v5l-3 7 2 1 2.5-5.5L14 20h2l-3-6V8zM8 12l-4 1v2l4-1v-2z", fill: primaryColor })] })),
|
|
31
29
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M14 8h-4v5l-3 7M11.5 13.5L14 20M4 13l4-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round", strokeLinejoin: "round" })] })),
|
|
32
30
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("path", { d: "M14 8h-4v5l-3 7", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M14 8h-4v5l-3 7M11.5 13.5L14 20M4 13l4-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round", strokeLinejoin: "round" })] })),
|
|
33
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("circle", { cx: "12", cy: "5", r: "1.5", fill: primaryColor }), jsx("path", { d: "M13.5 8h-3v3.75l-2.25 5.25M11.625 11.625L13.5 17.25M5 12l3-.75", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round", strokeLinejoin: "round" })] })),
|
|
34
31
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsx("circle", { cx: "12", cy: "4", r: "2", fill: "white", opacity: "0.08" }), jsx("path", { d: "M14 8h-4v5l-3 7 2 1 2.5-5.5L14 20h2l-3-6V8zM8 12l-4 1v2l4-1v-2z", fill: secondaryColor })] })),
|
|
35
32
|
},
|
|
36
33
|
});
|
|
37
34
|
/* ────────────────────────────────────────────────────────────────────────────
|
|
38
35
|
SENSORY
|
|
39
36
|
───────────────────────────────────────────────────────────────────────────── */
|
|
40
|
-
const NtdDeaf = createIcon({
|
|
37
|
+
const NtdDeaf = /* @__PURE__ */ createIcon({
|
|
41
38
|
displayName: 'NtdDeaf',
|
|
42
39
|
paths: {
|
|
43
40
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M10 5a5 5 0 015 5c0 2-1 3-2 4s-2 2-2 4v2", stroke: primaryColor, strokeWidth: "2", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 8a3 3 0 013-3", stroke: primaryColor, strokeWidth: "2", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M4 4l16 16", stroke: primaryColor, strokeWidth: "2", strokeLinecap: "round" })] })),
|
|
44
41
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M10 5a5 5 0 015 5c0 2-1 3-2 4s-2 2-2 4v2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 8a3 3 0 013-3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M4 4l16 16", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
|
|
45
42
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "10", r: "6", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M10 5a5 5 0 015 5c0 2-1 3-2 4s-2 2-2 4v2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 8a3 3 0 013-3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M4 4l16 16", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
|
|
46
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("path", { d: "M10.5 6a3.75 3.75 0 013.75 3.75c0 1.5-.75 2.25-1.5 3s-1.5 1.5-1.5 3v1.5", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M8 8.5a2.25 2.25 0 012.25-2.25", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M5 5l14 14", stroke: primaryColor, strokeWidth: "1.5", strokeLinecap: "round" })] })),
|
|
47
43
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M10 5a5 5 0 015 5c0 2-1 3-2 4s-2 2-2 4v2", stroke: primaryColor, strokeWidth: "2", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 8a3 3 0 013-3", stroke: secondaryColor, strokeWidth: "1.8", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M4 4l16 16", stroke: "#3B82F6", strokeWidth: "1.5", strokeLinecap: "round" })] })),
|
|
48
44
|
},
|
|
49
45
|
});
|
|
50
|
-
const NtdSignLanguage = createIcon({
|
|
46
|
+
const NtdSignLanguage = /* @__PURE__ */ createIcon({
|
|
51
47
|
displayName: 'NtdSignLanguage',
|
|
52
48
|
paths: {
|
|
53
49
|
solid: ({ primaryColor }) => (jsx(Fragment, { children: jsx("path", { d: "M8 13V7a2 2 0 014 0v2M12 9V6a2 2 0 014 0v3M16 9V7a2 2 0 014 0v6c0 4-3 7-7 7h-1c-3 0-6-2-6-5v-2a2 2 0 014 0v1", fill: primaryColor }) })),
|
|
54
50
|
outline: ({ primaryColor, strokeWidth }) => (jsx(Fragment, { children: jsx("path", { d: "M8 13V7a2 2 0 014 0v2M12 9V6a2 2 0 014 0v3M16 9V7a2 2 0 014 0v6c0 4-3 7-7 7h-1c-3 0-6-2-6-5v-2a2 2 0 014 0v1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round", strokeLinejoin: "round" }) })),
|
|
55
51
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M16 9V7a2 2 0 014 0v6c0 4-3 7-7 7h-1c-3 0-6-2-6-5v-2a2 2 0 014 0v1", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M8 13V7a2 2 0 014 0v2M12 9V6a2 2 0 014 0v3M16 9V7a2 2 0 014 0v6c0 4-3 7-7 7h-1c-3 0-6-2-6-5v-2a2 2 0 014 0v1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round", strokeLinejoin: "round" })] })),
|
|
56
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("path", { d: "M8 12.5V8a1.5 1.5 0 013 0v1.5M11 9V7a1.5 1.5 0 013 0v2.25M14 9.25V8a1.5 1.5 0 013 0v4.5c0 3-2.25 5.25-5.25 5.25h-.75c-2.25 0-4.5-1.5-4.5-3.75v-1.5a1.5 1.5 0 013 0v.75", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round", strokeLinejoin: "round" })] })),
|
|
57
52
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8 13V7a2 2 0 014 0v2M12 9V6a2 2 0 014 0v3M16 9V7a2 2 0 014 0v6c0 4-3 7-7 7h-1c-3 0-6-2-6-5v-2a2 2 0 014 0v1", fill: primaryColor }), jsx("path", { d: "M8 13V7a2 2 0 014 0v2M12 9V6a2 2 0 014 0v3M16 9V7a2 2 0 014 0v6c0 4-3 7-7 7h-1c-3 0-6-2-6-5v-2a2 2 0 014 0v1", fill: "white", opacity: "0.1" })] })),
|
|
58
53
|
},
|
|
59
54
|
});
|
|
60
|
-
const NtdBraille = createIcon({
|
|
55
|
+
const NtdBraille = /* @__PURE__ */ createIcon({
|
|
61
56
|
displayName: 'NtdBraille',
|
|
62
57
|
paths: {
|
|
63
58
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "6", cy: "6", r: "2", fill: primaryColor }), jsx("circle", { cx: "6", cy: "12", r: "2", fill: primaryColor }), jsx("circle", { cx: "6", cy: "18", r: "2", fill: primaryColor }), jsx("circle", { cx: "12", cy: "6", r: "2", fill: primaryColor }), jsx("circle", { cx: "12", cy: "12", r: "2", fill: primaryColor, opacity: "0.3" }), jsx("circle", { cx: "12", cy: "18", r: "2", fill: primaryColor }), jsx("circle", { cx: "18", cy: "6", r: "2", fill: primaryColor, opacity: "0.3" }), jsx("circle", { cx: "18", cy: "12", r: "2", fill: primaryColor }), jsx("circle", { cx: "18", cy: "18", r: "2", fill: primaryColor, opacity: "0.3" })] })),
|
|
64
59
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "6", cy: "6", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "6", cy: "12", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "6", cy: "18", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "12", cy: "6", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "12", cy: "12", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeDasharray: "2 2" }), jsx("circle", { cx: "12", cy: "18", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "18", cy: "6", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeDasharray: "2 2" }), jsx("circle", { cx: "18", cy: "12", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "18", cy: "18", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeDasharray: "2 2" })] })),
|
|
65
60
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "6", cy: "6", r: "2", fill: primaryColor }), jsx("circle", { cx: "6", cy: "12", r: "2", fill: primaryColor }), jsx("circle", { cx: "6", cy: "18", r: "2", fill: primaryColor }), jsx("circle", { cx: "12", cy: "6", r: "2", fill: primaryColor }), jsx("circle", { cx: "12", cy: "12", r: "2", fill: secondaryColor, opacity: secondaryOpacity, stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "12", cy: "18", r: "2", fill: primaryColor }), jsx("circle", { cx: "18", cy: "6", r: "2", fill: secondaryColor, opacity: secondaryOpacity, stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "18", cy: "12", r: "2", fill: primaryColor }), jsx("circle", { cx: "18", cy: "18", r: "2", fill: secondaryColor, opacity: secondaryOpacity, stroke: primaryColor, strokeWidth: strokeWidth })] })),
|
|
66
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("circle", { cx: "7", cy: "7", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "7", cy: "12", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "7", cy: "17", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "12", cy: "7", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "12", cy: "12", r: "1.5", fill: primaryColor, opacity: "0.3" }), jsx("circle", { cx: "12", cy: "17", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "17", cy: "7", r: "1.5", fill: primaryColor, opacity: "0.3" }), jsx("circle", { cx: "17", cy: "12", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "17", cy: "17", r: "1.5", fill: primaryColor, opacity: "0.3" })] })),
|
|
67
61
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "6", cy: "6", r: "2", fill: primaryColor }), jsx("circle", { cx: "6", cy: "6", r: "2", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "6", cy: "12", r: "2", fill: secondaryColor }), jsx("circle", { cx: "6", cy: "18", r: "2", fill: "#3B82F6" }), jsx("circle", { cx: "12", cy: "6", r: "2", fill: "#10B981" }), jsx("circle", { cx: "12", cy: "12", r: "2", fill: "#F59E0B", opacity: "0.3" }), jsx("circle", { cx: "12", cy: "18", r: "2", fill: "#F59E0B" }), jsx("circle", { cx: "18", cy: "6", r: "2", fill: "#F59E0B", opacity: "0.3" }), jsx("circle", { cx: "18", cy: "12", r: "2", fill: "#F59E0B" }), jsx("circle", { cx: "18", cy: "18", r: "2", fill: "#F59E0B", opacity: "0.3" })] })),
|
|
68
62
|
},
|
|
69
63
|
});
|
|
70
|
-
const NtdAudioDescription = createIcon({
|
|
64
|
+
const NtdAudioDescription = /* @__PURE__ */ createIcon({
|
|
71
65
|
displayName: 'NtdAudioDescription',
|
|
72
66
|
paths: {
|
|
73
67
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsx("text", { x: "7", y: "15", fill: "white", fontSize: "8", fontWeight: "bold", fontFamily: "system-ui", children: "AD" })] })),
|
|
74
68
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("text", { x: "7", y: "15", fill: primaryColor, fontSize: "8", fontWeight: "bold", fontFamily: "system-ui", children: "AD" })] })),
|
|
75
69
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("text", { x: "7", y: "15", fill: primaryColor, fontSize: "8", fontWeight: "bold", fontFamily: "system-ui", children: "AD" })] })),
|
|
76
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("rect", { x: "4", y: "5", width: "16", height: "14", rx: "1.5", fill: primaryColor }), jsx("text", { x: "8", y: "15", fill: secondaryColor, fontSize: "7", fontWeight: "bold", fontFamily: "system-ui", children: "AD" })] })),
|
|
77
70
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: "white", opacity: "0.1" })] })),
|
|
78
71
|
},
|
|
79
72
|
});
|
|
80
|
-
const NtdClosedCaptions = createIcon({
|
|
73
|
+
const NtdClosedCaptions = /* @__PURE__ */ createIcon({
|
|
81
74
|
displayName: 'NtdClosedCaptions',
|
|
82
75
|
paths: {
|
|
83
76
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsx("text", { x: "6", y: "15", fill: "white", fontSize: "8", fontWeight: "bold", fontFamily: "system-ui", children: "CC" })] })),
|
|
84
77
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("text", { x: "6", y: "15", fill: primaryColor, fontSize: "8", fontWeight: "bold", fontFamily: "system-ui", children: "CC" })] })),
|
|
85
78
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("text", { x: "6", y: "15", fill: primaryColor, fontSize: "8", fontWeight: "bold", fontFamily: "system-ui", children: "CC" })] })),
|
|
86
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("rect", { x: "4", y: "5", width: "16", height: "14", rx: "1.5", fill: primaryColor }), jsx("text", { x: "7", y: "15", fill: secondaryColor, fontSize: "7", fontWeight: "bold", fontFamily: "system-ui", children: "CC" })] })),
|
|
87
79
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: "white", opacity: "0.1" })] })),
|
|
88
80
|
},
|
|
89
81
|
});
|
|
90
82
|
/* ────────────────────────────────────────────────────────────────────────────
|
|
91
83
|
COGNITIVE & LEARNING
|
|
92
84
|
───────────────────────────────────────────────────────────────────────────── */
|
|
93
|
-
const NtdDyslexia = createIcon({
|
|
85
|
+
const NtdDyslexia = /* @__PURE__ */ createIcon({
|
|
94
86
|
displayName: 'NtdDyslexia',
|
|
95
87
|
paths: {
|
|
96
88
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: primaryColor }), jsx("path", { d: "M8 7h8M8 11h6M8 15h4", stroke: "white", strokeWidth: "2", strokeLinecap: "round" }), jsx("path", { d: "M16 15l-2 2M14 15l2 2", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" })] })),
|
|
97
89
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 7h8M8 11h6M8 15h4", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("path", { d: "M16 15l-2 2M14 15l2 2", stroke: primaryColor, strokeWidth: "1.5", strokeLinecap: "round" })] })),
|
|
98
90
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 7h8M8 11h6M8 15h4", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("path", { d: "M16 15l-2 2M14 15l2 2", stroke: primaryColor, strokeWidth: "1.5", strokeLinecap: "round" })] })),
|
|
99
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("rect", { x: "5", y: "4", width: "14", height: "16", rx: "1.5", fill: primaryColor, opacity: "0.15" }), jsx("path", { d: "M8 8h8M8 11.5h6M8 15h4", stroke: primaryColor, strokeWidth: "1.5", strokeLinecap: "round" }), jsx("path", { d: "M16 15l-1.5 1.5M14.5 15l1.5 1.5", stroke: primaryColor, strokeWidth: "1.25", strokeLinecap: "round" })] })),
|
|
100
91
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: primaryColor }), jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: "white", opacity: "0.1" }), jsx("path", { d: "M8 7h8M8 11h6M8 15h4", stroke: "white", strokeWidth: "1.8", strokeLinecap: "round" }), jsx("path", { d: "M16 15l-2 2M14 15l2 2", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" })] })),
|
|
101
92
|
},
|
|
102
93
|
});
|
|
103
|
-
const NtdEasyRead = createIcon({
|
|
94
|
+
const NtdEasyRead = /* @__PURE__ */ createIcon({
|
|
104
95
|
displayName: 'NtdEasyRead',
|
|
105
96
|
paths: {
|
|
106
97
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "2", fill: primaryColor }), jsx("path", { d: "M6 8h5v5H6zM13 8h5M13 11h4M6 16h12M6 19h8", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" })] })),
|
|
107
98
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "8", width: "5", height: "5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M13 8h5M13 11h4M6 16h12M6 19h8", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
|
|
108
99
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "8", width: "5", height: "5", fill: primaryColor }), jsx("path", { d: "M13 8h5M13 11h4M6 16h12M6 19h8", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
|
|
109
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("rect", { x: "6", y: "8", width: "4", height: "4", rx: "0.5", fill: primaryColor }), jsx("path", { d: "M12 8h6M12 10.5h5M6 15h12M6 18h8", stroke: primaryColor, strokeWidth: "1.5", strokeLinecap: "round" })] })),
|
|
110
100
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "2", fill: primaryColor }), jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "2", fill: "white", opacity: "0.1" }), jsx("path", { d: "M6 8h5v5H6zM13 8h5M13 11h4M6 16h12M6 19h8", stroke: "white", strokeWidth: "1.8", strokeLinecap: "round" })] })),
|
|
111
101
|
},
|
|
112
102
|
});
|
|
113
103
|
/* ────────────────────────────────────────────────────────────────────────────
|
|
114
104
|
ASSISTIVE TECHNOLOGY
|
|
115
105
|
───────────────────────────────────────────────────────────────────────────── */
|
|
116
|
-
const NtdScreenReader = createIcon({
|
|
106
|
+
const NtdScreenReader = /* @__PURE__ */ createIcon({
|
|
117
107
|
displayName: 'NtdScreenReader',
|
|
118
108
|
paths: {
|
|
119
109
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", fill: primaryColor }), jsx("path", { d: "M8 18h8M10 18v2M14 18v2M8 20h8", stroke: primaryColor, strokeWidth: "2", strokeLinecap: "round" }), jsx("path", { d: "M8 7h2M8 10h4M8 13h6", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" }), jsx("circle", { cx: "16", cy: "7", r: "1.5", fill: "white" }), jsx("path", { d: "M14 7c0-1.5 1-2.5 2-2.5s2 1 2 2.5", stroke: "white", strokeWidth: "1", fill: "none" })] })),
|
|
120
110
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 18h8M10 18v2M14 18v2M8 20h8", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("path", { d: "M8 7h2M8 10h4M8 13h6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("circle", { cx: "16", cy: "7", r: "1.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M14 7c0-1.5 1-2.5 2-2.5s2 1 2 2.5", stroke: primaryColor, strokeWidth: "1", fill: "none" })] })),
|
|
121
111
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 18h8M10 18v2M14 18v2M8 20h8", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("path", { d: "M8 7h2M8 10h4M8 13h6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("circle", { cx: "16", cy: "7", r: "1.5", fill: primaryColor })] })),
|
|
122
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("rect", { x: "5", y: "4", width: "14", height: "11", rx: "1.5", fill: primaryColor, opacity: "0.15" }), jsx("rect", { x: "5", y: "4", width: "14", height: "11", rx: "1.5", stroke: primaryColor, strokeWidth: "1.5", fill: "none" }), jsx("path", { d: "M8 17h8M10 17v1.5M14 17v1.5", stroke: primaryColor, strokeWidth: "1.5", strokeLinecap: "round" }), jsx("path", { d: "M8 7h2M8 9.5h4M8 12h5", stroke: primaryColor, strokeWidth: "1.25", strokeLinecap: "round" }), jsx("circle", { cx: "15.5", cy: "7", r: "1", fill: primaryColor })] })),
|
|
123
112
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", fill: primaryColor }), jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "16", cy: "7", r: "1.5", fill: "white" }), jsx("path", { d: "M8 18h8M10 18v2M14 18v2M8 20h8", stroke: "white", strokeWidth: "1", strokeLinecap: "round" }), jsx("path", { d: "M8 7h2M8 10h4M8 13h6", stroke: "white", strokeWidth: "1", strokeLinecap: "round" }), jsx("path", { d: "M14 7c0-1.5 1-2.5 2-2.5s2 1 2 2.5", stroke: "white", strokeWidth: "1", fill: "none" })] })),
|
|
124
113
|
},
|
|
125
114
|
});
|
|
126
|
-
const NtdHearingAid = createIcon({
|
|
115
|
+
const NtdHearingAid = /* @__PURE__ */ createIcon({
|
|
127
116
|
displayName: 'NtdHearingAid',
|
|
128
117
|
paths: {
|
|
129
118
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 5a5 5 0 015 5c0 2-1 3-2 4s-2 2-2 4v2c0 1 1 2 2 2", stroke: primaryColor, strokeWidth: "2.5", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M9 8a3 3 0 013-3", stroke: primaryColor, strokeWidth: "2", fill: "none", strokeLinecap: "round" }), jsx("circle", { cx: "6", cy: "10", r: "3", fill: primaryColor }), jsx("path", { d: "M6 13v6", stroke: primaryColor, strokeWidth: "2", strokeLinecap: "round" }), jsx("circle", { cx: "6", cy: "20", r: "1.5", fill: primaryColor })] })),
|
|
130
119
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 5a5 5 0 015 5c0 2-1 3-2 4s-2 2-2 4v2c0 1 1 2 2 2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M9 8a3 3 0 013-3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("circle", { cx: "6", cy: "10", r: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M6 13v6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("circle", { cx: "6", cy: "20", r: "1.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
131
120
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "6", cy: "10", r: "3", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M12 5a5 5 0 015 5c0 2-1 3-2 4s-2 2-2 4v2c0 1 1 2 2 2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M9 8a3 3 0 013-3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("circle", { cx: "6", cy: "10", r: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M6 13v6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("circle", { cx: "6", cy: "20", r: "1.5", fill: primaryColor })] })),
|
|
132
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("path", { d: "M12 6a3.75 3.75 0 013.75 3.75c0 1.5-.75 2.25-1.5 3s-1.5 1.5-1.5 3v1.5c0 .75.75 1.5 1.5 1.5", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M9.75 8.25a2.25 2.25 0 012.25-2.25", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round" }), jsx("circle", { cx: "7", cy: "10", r: "2.25", fill: primaryColor }), jsx("path", { d: "M7 12.25v4.5", stroke: primaryColor, strokeWidth: "1.5", strokeLinecap: "round" }), jsx("circle", { cx: "7", cy: "18", r: "1", fill: primaryColor })] })),
|
|
133
121
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "6", cy: "10", r: "3", fill: primaryColor }), jsx("circle", { cx: "6", cy: "10", r: "3", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "6", cy: "20", r: "1.5", fill: secondaryColor }), jsx("path", { d: "M12 5a5 5 0 015 5c0 2-1 3-2 4s-2 2-2 4v2c0 1 1 2 2 2", stroke: "white", strokeWidth: "1", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M9 8a3 3 0 013-3", stroke: "white", strokeWidth: "1", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M6 13v6", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })] })),
|
|
134
122
|
},
|
|
135
123
|
});
|
|
136
|
-
const NtdAssistiveTech = createIcon({
|
|
124
|
+
const NtdAssistiveTech = /* @__PURE__ */ createIcon({
|
|
137
125
|
displayName: 'NtdAssistiveTech',
|
|
138
126
|
paths: {
|
|
139
127
|
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsx("path", { d: "M12 6v2M12 16v2M6 12h2M16 12h2", stroke: "white", strokeWidth: "2", strokeLinecap: "round" }), jsx("circle", { cx: "12", cy: "12", r: "3", fill: "white" })] })),
|
|
140
128
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M12 6v2M12 16v2M6 12h2M16 12h2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("circle", { cx: "12", cy: "12", r: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
141
129
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: secondaryColor, opacity: secondaryOpacity }), jsx("circle", { cx: "12", cy: "12", r: "10", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M12 6v2M12 16v2M6 12h2M16 12h2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("circle", { cx: "12", cy: "12", r: "3", fill: primaryColor })] })),
|
|
142
|
-
flat: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "4", fill: secondaryColor }), jsx("circle", { cx: "12", cy: "12", r: "8", fill: primaryColor }), jsx("path", { d: "M12 7v1.5M12 15.5v1.5M7 12h1.5M15.5 12h1.5", stroke: secondaryColor, strokeWidth: "1.5", strokeLinecap: "round" }), jsx("circle", { cx: "12", cy: "12", r: "2.25", fill: secondaryColor })] })),
|
|
143
130
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsx("circle", { cx: "12", cy: "12", r: "10", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "12", cy: "12", r: "3", fill: "white" }), jsx("path", { d: "M12 6v2M12 16v2M6 12h2M16 12h2", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })] })),
|
|
144
131
|
},
|
|
145
132
|
});
|