@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.
Files changed (117) hide show
  1. package/CHANGELOG.md +173 -0
  2. package/dist/cjs/NiceDesktopIconExporter.js +2 -6
  3. package/dist/cjs/NiceFaviconGenerator.js +2 -1
  4. package/dist/cjs/NiceIconPicker.js +15 -20
  5. package/dist/cjs/NiceIconSetCreator.js +6 -29
  6. package/dist/cjs/NtdIconBadge.js +12 -12
  7. package/dist/cjs/NtdIconMorph.js +21 -11
  8. package/dist/cjs/NtdStateMorph.js +3 -3
  9. package/dist/cjs/animationControls.js +10 -3
  10. package/dist/cjs/createIcon.js +6 -10
  11. package/dist/cjs/headless-ui.js +3 -3
  12. package/dist/cjs/iconStyles.js +36 -34
  13. package/dist/cjs/icons/accessibility.js +13 -26
  14. package/dist/cjs/icons/actions.js +37 -50
  15. package/dist/cjs/icons/ai.js +15 -30
  16. package/dist/cjs/icons/brand.js +7 -18
  17. package/dist/cjs/icons/business.js +18 -106
  18. package/dist/cjs/icons/devtech.js +31 -142
  19. package/dist/cjs/icons/ecommerce.js +16 -32
  20. package/dist/cjs/icons/education.js +17 -34
  21. package/dist/cjs/icons/files.js +31 -62
  22. package/dist/cjs/icons/fintech.js +14 -28
  23. package/dist/cjs/icons/food.js +16 -32
  24. package/dist/cjs/icons/fun.js +13 -26
  25. package/dist/cjs/icons/gaming.js +15 -30
  26. package/dist/cjs/icons/health.js +13 -36
  27. package/dist/cjs/icons/index.js +4 -0
  28. package/dist/cjs/icons/legal.js +13 -26
  29. package/dist/cjs/icons/media.js +46 -46
  30. package/dist/cjs/icons/navigation.js +14 -28
  31. package/dist/cjs/icons/omniverk.js +10 -10
  32. package/dist/cjs/icons/realestate.js +17 -34
  33. package/dist/cjs/icons/saas.js +13 -26
  34. package/dist/cjs/icons/science.js +17 -34
  35. package/dist/cjs/icons/shapes.js +22 -44
  36. package/dist/cjs/icons/smarthome.js +13 -26
  37. package/dist/cjs/icons/social.js +8 -116
  38. package/dist/cjs/icons/sports.js +14 -28
  39. package/dist/cjs/icons/sustainability.js +15 -30
  40. package/dist/cjs/icons/travel.js +15 -30
  41. package/dist/cjs/icons/ui.js +39 -56
  42. package/dist/cjs/icons/weather.js +20 -40
  43. package/dist/cjs/index.js +4 -4
  44. package/dist/cjs/lottieIntegration.js +3 -3
  45. package/dist/cjs/nicetodev-icons.css +1 -1
  46. package/dist/cjs/particleEffects.js +11 -4
  47. package/dist/cjs/resolver.js +4 -0
  48. package/dist/cjs/rsc.js +1 -1
  49. package/dist/cjs/variantProps.js +2 -7
  50. package/dist/esm/NiceDesktopIconExporter.js +2 -6
  51. package/dist/esm/NiceFaviconGenerator.js +2 -1
  52. package/dist/esm/NiceIconPicker.js +16 -21
  53. package/dist/esm/NiceIconSetCreator.js +6 -29
  54. package/dist/esm/NtdIconBadge.js +12 -12
  55. package/dist/esm/NtdIconMorph.js +21 -11
  56. package/dist/esm/NtdStateMorph.js +3 -3
  57. package/dist/esm/animationControls.js +11 -4
  58. package/dist/esm/createIcon.js +7 -11
  59. package/dist/esm/headless-ui.js +3 -3
  60. package/dist/esm/iconStyles.js +36 -34
  61. package/dist/esm/icons/accessibility.js +13 -26
  62. package/dist/esm/icons/actions.js +37 -51
  63. package/dist/esm/icons/ai.js +15 -30
  64. package/dist/esm/icons/brand.js +7 -18
  65. package/dist/esm/icons/business.js +18 -106
  66. package/dist/esm/icons/devtech.js +31 -142
  67. package/dist/esm/icons/ecommerce.js +16 -32
  68. package/dist/esm/icons/education.js +17 -34
  69. package/dist/esm/icons/files.js +31 -62
  70. package/dist/esm/icons/fintech.js +14 -28
  71. package/dist/esm/icons/food.js +16 -32
  72. package/dist/esm/icons/fun.js +13 -26
  73. package/dist/esm/icons/gaming.js +15 -30
  74. package/dist/esm/icons/health.js +13 -36
  75. package/dist/esm/icons/index.js +3 -3
  76. package/dist/esm/icons/legal.js +13 -26
  77. package/dist/esm/icons/media.js +45 -47
  78. package/dist/esm/icons/navigation.js +14 -28
  79. package/dist/esm/icons/omniverk.js +10 -10
  80. package/dist/esm/icons/realestate.js +17 -34
  81. package/dist/esm/icons/saas.js +13 -26
  82. package/dist/esm/icons/science.js +17 -34
  83. package/dist/esm/icons/shapes.js +22 -44
  84. package/dist/esm/icons/smarthome.js +13 -26
  85. package/dist/esm/icons/social.js +8 -116
  86. package/dist/esm/icons/sports.js +14 -28
  87. package/dist/esm/icons/sustainability.js +15 -30
  88. package/dist/esm/icons/travel.js +15 -30
  89. package/dist/esm/icons/ui.js +39 -57
  90. package/dist/esm/icons/weather.js +20 -40
  91. package/dist/esm/index.js +4 -5
  92. package/dist/esm/lottieIntegration.js +3 -3
  93. package/dist/esm/nicetodev-icons.css +1 -1
  94. package/dist/esm/particleEffects.js +11 -4
  95. package/dist/esm/resolver.js +4 -0
  96. package/dist/esm/rsc.js +1 -1
  97. package/dist/esm/smilAnimations.js +1 -1
  98. package/dist/esm/variantProps.js +3 -7
  99. package/dist/types/NiceDesktopIconExporter.d.ts +1 -0
  100. package/dist/types/NtdIconBadge.d.ts +12 -4
  101. package/dist/types/NtdIconMorph.d.ts +10 -4
  102. package/dist/types/NtdStateMorph.d.ts +3 -1
  103. package/dist/types/createIcon.d.ts +1 -9
  104. package/dist/types/headless-ui.d.ts +6 -2
  105. package/dist/types/iconStyles.d.ts +33 -11
  106. package/dist/types/icons/actions.d.ts +1 -0
  107. package/dist/types/icons/index.d.ts +3 -3
  108. package/dist/types/icons/media.d.ts +3 -0
  109. package/dist/types/icons/ui.d.ts +2 -0
  110. package/dist/types/index.d.ts +2 -12
  111. package/dist/types/lottieIntegration.d.ts +3 -1
  112. package/dist/types/particleEffects.d.ts +3 -1
  113. package/dist/types/rsc.d.ts +1 -3
  114. package/dist/types/tailwind-plugin.d.ts +1 -1
  115. package/dist/types/types.d.ts +1 -2
  116. package/dist/types/variantProps.d.ts +3 -11
  117. package/package.json +1 -1
@@ -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, SIZE_MAP, GRADIENT_PRESETS } from './types.js';
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 (typeof window === 'undefined') {
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 (typeof window === 'undefined') {
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
- // 'flat' is a deprecated alias for 'cutout'
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)
@@ -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 = forwardRef(({ children, ...props }, forwardedRef) => {
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
  ───────────────────────────────────────────────────────────────────────────── */
@@ -17,7 +17,8 @@ const overlayBase = {
17
17
  // 1. NtdIconFloral 🌸
18
18
  // Botanical vines, leaves & flowers wrapping the icon
19
19
  // ══════════════════════════════════════════════════════
20
- const NtdIconFloral = forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', vineColor = '#22c55e', petalColor = '#f472b6', leafColor, className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 1.5, intensity = 'normal', colors, sparkleColor = '#fbbf24', className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 4, intensity = 'normal', glowColor = '#0ff', secondaryGlow, flicker = true, className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 1.5, intensity = 'normal', strokeColor = '#374151', roughness = 2, className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', tintColor = '#818cf8', bleedColor = '#f0abfc', className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', starColor = '#e2e8f0', nebulaColor = '#7c3aed', nebulaColor2 = '#2563eb', className, style, }, ref) => {
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' ? [{ cx: 50, cy: 50, r: 14, color: nebulaColor, op: 0.08 }] : []),
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 = forwardRef(({ children, animate = true, duration = 3, intensity = 'normal', brassColor = '#b45309', pipeColor = '#78350f', steamColor = '#d1d5db', className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', crystalColor = '#bae6fd', glowColor = '#38bdf8', className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 0.5, intensity = 'normal', pixelColor = '#22d3ee', scanlineColor = '#000000', glitchEffect = true, className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 3, intensity = 'normal', cellColor = '#86efac', membraneColor = '#4ade80', nucleusColor = '#fbbf24', className, style, }, ref) => {
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 = forwardRef(({ children, animate = true, duration = 8, intensity = 'normal', primaryColor = '#6366f1', secondaryColor = '#8b5cf6', accentColor = '#a78bfa', className, style, }, ref) => {
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
  });