@nice2dev/icons 1.2.0 → 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 (107) hide show
  1. package/CHANGELOG.md +103 -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 +5 -2
  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 -13
  14. package/dist/cjs/icons/actions.js +37 -25
  15. package/dist/cjs/icons/ai.js +15 -15
  16. package/dist/cjs/icons/brand.js +7 -7
  17. package/dist/cjs/icons/business.js +18 -81
  18. package/dist/cjs/icons/devtech.js +31 -103
  19. package/dist/cjs/icons/ecommerce.js +16 -16
  20. package/dist/cjs/icons/education.js +17 -17
  21. package/dist/cjs/icons/files.js +31 -31
  22. package/dist/cjs/icons/fintech.js +14 -14
  23. package/dist/cjs/icons/food.js +16 -16
  24. package/dist/cjs/icons/fun.js +13 -13
  25. package/dist/cjs/icons/gaming.js +15 -15
  26. package/dist/cjs/icons/health.js +13 -22
  27. package/dist/cjs/icons/index.js +4 -0
  28. package/dist/cjs/icons/legal.js +13 -13
  29. package/dist/cjs/icons/media.js +46 -23
  30. package/dist/cjs/icons/navigation.js +14 -14
  31. package/dist/cjs/icons/omniverk.js +10 -10
  32. package/dist/cjs/icons/realestate.js +17 -17
  33. package/dist/cjs/icons/saas.js +13 -13
  34. package/dist/cjs/icons/science.js +16 -16
  35. package/dist/cjs/icons/shapes.js +22 -22
  36. package/dist/cjs/icons/smarthome.js +13 -13
  37. package/dist/cjs/icons/social.js +8 -98
  38. package/dist/cjs/icons/sports.js +14 -14
  39. package/dist/cjs/icons/sustainability.js +15 -15
  40. package/dist/cjs/icons/travel.js +15 -15
  41. package/dist/cjs/icons/ui.js +39 -28
  42. package/dist/cjs/icons/weather.js +20 -20
  43. package/dist/cjs/index.js +4 -0
  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/esm/NiceDesktopIconExporter.js +2 -6
  49. package/dist/esm/NiceFaviconGenerator.js +2 -1
  50. package/dist/esm/NiceIconPicker.js +16 -21
  51. package/dist/esm/NiceIconSetCreator.js +6 -29
  52. package/dist/esm/NtdIconBadge.js +12 -12
  53. package/dist/esm/NtdIconMorph.js +21 -11
  54. package/dist/esm/NtdStateMorph.js +3 -3
  55. package/dist/esm/animationControls.js +11 -4
  56. package/dist/esm/createIcon.js +6 -3
  57. package/dist/esm/headless-ui.js +3 -3
  58. package/dist/esm/iconStyles.js +36 -34
  59. package/dist/esm/icons/accessibility.js +13 -13
  60. package/dist/esm/icons/actions.js +37 -26
  61. package/dist/esm/icons/ai.js +15 -15
  62. package/dist/esm/icons/brand.js +7 -7
  63. package/dist/esm/icons/business.js +18 -81
  64. package/dist/esm/icons/devtech.js +31 -103
  65. package/dist/esm/icons/ecommerce.js +16 -16
  66. package/dist/esm/icons/education.js +17 -17
  67. package/dist/esm/icons/files.js +31 -31
  68. package/dist/esm/icons/fintech.js +14 -14
  69. package/dist/esm/icons/food.js +16 -16
  70. package/dist/esm/icons/fun.js +13 -13
  71. package/dist/esm/icons/gaming.js +15 -15
  72. package/dist/esm/icons/health.js +13 -22
  73. package/dist/esm/icons/index.js +3 -3
  74. package/dist/esm/icons/legal.js +13 -13
  75. package/dist/esm/icons/media.js +45 -24
  76. package/dist/esm/icons/navigation.js +14 -14
  77. package/dist/esm/icons/omniverk.js +10 -10
  78. package/dist/esm/icons/realestate.js +17 -17
  79. package/dist/esm/icons/saas.js +13 -13
  80. package/dist/esm/icons/science.js +16 -16
  81. package/dist/esm/icons/shapes.js +22 -22
  82. package/dist/esm/icons/smarthome.js +13 -13
  83. package/dist/esm/icons/social.js +8 -98
  84. package/dist/esm/icons/sports.js +14 -14
  85. package/dist/esm/icons/sustainability.js +15 -15
  86. package/dist/esm/icons/travel.js +15 -15
  87. package/dist/esm/icons/ui.js +39 -29
  88. package/dist/esm/icons/weather.js +20 -20
  89. package/dist/esm/index.js +3 -3
  90. package/dist/esm/lottieIntegration.js +3 -3
  91. package/dist/esm/nicetodev-icons.css +1 -1
  92. package/dist/esm/particleEffects.js +11 -4
  93. package/dist/esm/resolver.js +4 -0
  94. package/dist/esm/smilAnimations.js +1 -1
  95. package/dist/types/NiceDesktopIconExporter.d.ts +1 -0
  96. package/dist/types/NtdIconBadge.d.ts +12 -4
  97. package/dist/types/NtdIconMorph.d.ts +9 -3
  98. package/dist/types/NtdStateMorph.d.ts +3 -1
  99. package/dist/types/headless-ui.d.ts +6 -2
  100. package/dist/types/iconStyles.d.ts +33 -11
  101. package/dist/types/icons/actions.d.ts +1 -0
  102. package/dist/types/icons/index.d.ts +3 -3
  103. package/dist/types/icons/media.d.ts +3 -0
  104. package/dist/types/icons/ui.d.ts +2 -0
  105. package/dist/types/lottieIntegration.d.ts +3 -1
  106. package/dist/types/particleEffects.d.ts +3 -1
  107. package/package.json +1 -1
@@ -38,7 +38,8 @@ var React = require('react');
38
38
  * Simple Slot implementation for asChild pattern.
39
39
  * Compatible with Radix UI's Slot component behavior.
40
40
  */
41
- const Slot = React.forwardRef(({ children, ...props }, forwardedRef) => {
41
+ const Slot = /* @__PURE__ */ Object.assign(
42
+ /* @__PURE__ */ React.forwardRef(({ children, ...props }, forwardedRef) => {
42
43
  if (!React.isValidElement(children)) {
43
44
  return null;
44
45
  }
@@ -47,8 +48,7 @@ const Slot = React.forwardRef(({ children, ...props }, forwardedRef) => {
47
48
  ...children.props,
48
49
  ref: forwardedRef,
49
50
  });
50
- });
51
- Slot.displayName = 'Slot';
51
+ }), { displayName: 'Slot' });
52
52
  /* ────────────────────────────────────────────────────────────────────────────
53
53
  FORWARD REF WRAPPER
54
54
  ───────────────────────────────────────────────────────────────────────────── */
@@ -19,7 +19,8 @@ const overlayBase = {
19
19
  // 1. NtdIconFloral 🌸
20
20
  // Botanical vines, leaves & flowers wrapping the icon
21
21
  // ══════════════════════════════════════════════════════
22
- const NtdIconFloral = React.forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', vineColor = '#22c55e', petalColor = '#f472b6', leafColor, className, style, }, ref) => {
22
+ const NtdIconFloral = /* @__PURE__ */ Object.assign(
23
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', vineColor = '#22c55e', petalColor = '#f472b6', leafColor, className, style, }, ref) => {
23
24
  const lc = leafColor !== null && leafColor !== void 0 ? leafColor : vineColor;
24
25
  const dur = `${duration}s`;
25
26
  const halfDur = `${duration * 0.5}s`;
@@ -68,13 +69,13 @@ const NtdIconFloral = React.forwardRef(({ children, animate = true, duration = 2
68
69
  ];
69
70
  const dashLen = 250;
70
71
  return (jsxRuntime.jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [children, jsxRuntime.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) => (jsxRuntime.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 && (jsxRuntime.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) => (jsxRuntime.jsx("g", { transform: `translate(${l.x},${l.y}) rotate(${l.a})`, children: jsxRuntime.jsxs("g", { opacity: animate ? 0 : 0.8, children: [jsxRuntime.jsx("path", { d: leafD, fill: lc }), jsxRuntime.jsx("line", { x1: 0, y1: -3, x2: 0, y2: 2.5, stroke: lc, strokeWidth: "0.4", opacity: 0.4 }), animate && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.8", dur: halfDur, begin: bloomAt, fill: "freeze" }), jsxRuntime.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) => (jsxRuntime.jsxs("g", { opacity: animate ? 0 : 1, children: [petalOffsets.map(([ox, oy], pi) => (jsxRuntime.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))), jsxRuntime.jsx("circle", { cx: f.x, cy: f.y, r: f.r * 0.3, fill: "#fde047" }), animate && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "1", dur: halfDur, begin: flowerAt, fill: "freeze" }), jsxRuntime.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 && (jsxRuntime.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` }))] })] }));
71
- });
72
- NtdIconFloral.displayName = 'NtdIconFloral';
72
+ }), { displayName: 'NtdIconFloral' });
73
73
  // ══════════════════════════════════════════════════════
74
74
  // 2. NtdIconFestive 🎉
75
75
  // Confetti burst, stars & sparkles
76
76
  // ══════════════════════════════════════════════════════
77
- const NtdIconFestive = React.forwardRef(({ children, animate = true, duration = 1.5, intensity = 'normal', colors, sparkleColor = '#fbbf24', className, style, }, ref) => {
77
+ const NtdIconFestive = /* @__PURE__ */ Object.assign(
78
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 1.5, intensity = 'normal', colors, sparkleColor = '#fbbf24', className, style, }, ref) => {
78
79
  const cols = colors !== null && colors !== void 0 ? colors : ['#ef4444', '#f59e0b', '#22c55e', '#3b82f6', '#a855f7', '#ec4899'];
79
80
  const dur = `${duration * 0.6}s`;
80
81
  // Confetti pieces: position relative to center, rotation, color index
@@ -140,13 +141,13 @@ const NtdIconFestive = React.forwardRef(({ children, animate = true, duration =
140
141
  const col = cols[c.ci % cols.length];
141
142
  return (jsxRuntime.jsx("g", { transform: "translate(50,50)", children: jsxRuntime.jsxs("g", { opacity: animate ? 0 : 0.85, children: [jsxRuntime.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 && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.85", dur: "0.4s", begin: delay, fill: "freeze" }), jsxRuntime.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}`));
142
143
  }), stars.map((s, i) => (jsxRuntime.jsxs("g", { transform: `translate(${s.x},${s.y}) scale(${s.s})`, children: [jsxRuntime.jsx("path", { d: starD, fill: sparkleColor, opacity: animate ? 0 : 0.9, children: animate && (jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.9", dur: "0.5s", begin: `${(i * 0.15 + 0.3).toFixed(2)}s`, fill: "freeze" })) }), animate && (jsxRuntime.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) => (jsxRuntime.jsx("circle", { cx: sp.cx, cy: sp.cy, r: sp.r, fill: sparkleColor, opacity: animate ? 0 : 0.7, children: animate && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.7", dur: "0.3s", begin: `${(duration * 0.4 + i * 0.08).toFixed(2)}s`, fill: "freeze" }), jsxRuntime.jsx("animate", { attributeName: "opacity", values: "0.3;0.9;0.3", dur: `${1 + i * 0.3}s`, repeatCount: "indefinite", begin: `${duration}s` })] })) }, `sp${i}`)))] })] }));
143
- });
144
- NtdIconFestive.displayName = 'NtdIconFestive';
144
+ }), { displayName: 'NtdIconFestive' });
145
145
  // ══════════════════════════════════════════════════════
146
146
  // 3. NtdIconNeon 💡
147
147
  // Multi-layered glow with neon sign flicker
148
148
  // ══════════════════════════════════════════════════════
149
- const NtdIconNeon = React.forwardRef(({ children, animate = true, duration = 4, intensity = 'normal', glowColor = '#0ff', secondaryGlow, flicker = true, className, style, }, ref) => {
149
+ const NtdIconNeon = /* @__PURE__ */ Object.assign(
150
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 4, intensity = 'normal', glowColor = '#0ff', secondaryGlow, flicker = true, className, style, }, ref) => {
150
151
  const uid = React.useId().replace(/[^a-zA-Z0-9]/g, '_');
151
152
  const glow2 = secondaryGlow !== null && secondaryGlow !== void 0 ? secondaryGlow : glowColor;
152
153
  const blur = intensity === 'dense' ? 8 : intensity === 'subtle' ? 3 : 5;
@@ -171,13 +172,13 @@ const NtdIconNeon = React.forwardRef(({ children, animate = true, duration = 4,
171
172
  filter: filterValue,
172
173
  ...(animate && flicker ? { animation: `${animName} ${duration}s infinite` } : {}),
173
174
  }, children: children })] }));
174
- });
175
- NtdIconNeon.displayName = 'NtdIconNeon';
175
+ }), { displayName: 'NtdIconNeon' });
176
176
  // ══════════════════════════════════════════════════════
177
177
  // 4. NtdIconSketch ✏️
178
178
  // Hand-drawn look with SVG turbulence + scribble overlay
179
179
  // ══════════════════════════════════════════════════════
180
- const NtdIconSketch = React.forwardRef(({ children, animate = true, duration = 1.5, intensity = 'normal', strokeColor = '#374151', roughness = 2, className, style, }, ref) => {
180
+ const NtdIconSketch = /* @__PURE__ */ Object.assign(
181
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 1.5, intensity = 'normal', strokeColor = '#374151', roughness = 2, className, style, }, ref) => {
181
182
  const uid = React.useId().replace(/[^a-zA-Z0-9]/g, '_');
182
183
  const filterId = `ntd_sketch_${uid}`;
183
184
  const dur = `${duration}s`;
@@ -197,13 +198,13 @@ const NtdIconSketch = React.forwardRef(({ children, animate = true, duration = 1
197
198
  ];
198
199
  return (jsxRuntime.jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsxRuntime.jsx("svg", { style: { position: 'absolute', width: 0, height: 0 }, "aria-hidden": true, children: jsxRuntime.jsx("defs", { children: jsxRuntime.jsxs("filter", { id: filterId, children: [jsxRuntime.jsx("feTurbulence", { type: "turbulence", baseFrequency: 0.02 + roughness * 0.008, numOctaves: 3, seed: 2, result: "noise" }), jsxRuntime.jsx("feDisplacementMap", { in: "SourceGraphic", in2: "noise", scale: roughness, xChannelSelector: "R", yChannelSelector: "G" })] }) }) }), jsxRuntime.jsx("span", { style: { display: 'inline-flex', filter: `url(#${filterId})` }, children: children }), jsxRuntime.jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-20%', width: '140%', height: '140%' }, "aria-hidden": true, children: [jsxRuntime.jsx("path", { d: scribbleMain, fill: "none", stroke: strokeColor, strokeWidth: "1", strokeLinecap: "round", opacity: 0.5, ...(animate ? { strokeDasharray: dashLen, strokeDashoffset: dashLen } : {}), children: animate && (jsxRuntime.jsx("animate", { attributeName: "stroke-dashoffset", from: `${dashLen}`, to: "0", dur: dur, fill: "freeze" })) }), intensity !== 'subtle' &&
199
200
  scribbleExtra.slice(0, intensity === 'dense' ? 2 : 1).map((d, i) => (jsxRuntime.jsx("path", { d: d, fill: "none", stroke: strokeColor, strokeWidth: "0.8", strokeLinecap: "round", opacity: 0.35, ...(animate ? { strokeDasharray: dashLen, strokeDashoffset: dashLen } : {}), children: animate && (jsxRuntime.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) => (jsxRuntime.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 && (jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.3", dur: "0.3s", begin: `${duration * 0.7 + i * 0.1}s`, fill: "freeze" })) }, `h${i}`)))] })] }));
200
- });
201
- NtdIconSketch.displayName = 'NtdIconSketch';
201
+ }), { displayName: 'NtdIconSketch' });
202
202
  // ══════════════════════════════════════════════════════
203
203
  // 5. NtdIconWatercolor 🎨
204
204
  // Soft paint blobs & bleed effect behind the icon
205
205
  // ══════════════════════════════════════════════════════
206
- const NtdIconWatercolor = React.forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', tintColor = '#818cf8', bleedColor = '#f0abfc', className, style, }, ref) => {
206
+ const NtdIconWatercolor = /* @__PURE__ */ Object.assign(
207
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', tintColor = '#818cf8', bleedColor = '#f0abfc', className, style, }, ref) => {
207
208
  const uid = React.useId().replace(/[^a-zA-Z0-9]/g, '_');
208
209
  const filterId = `ntd_wc_${uid}`;
209
210
  const blobFilter = `${filterId}_blob`;
@@ -246,13 +247,13 @@ const NtdIconWatercolor = React.forwardRef(({ children, animate = true, duration
246
247
  position: 'relative',
247
248
  zIndex: 1,
248
249
  }, children: children })] }));
249
- });
250
- NtdIconWatercolor.displayName = 'NtdIconWatercolor';
250
+ }), { displayName: 'NtdIconWatercolor' });
251
251
  // ══════════════════════════════════════════════════════
252
252
  // 6. NtdIconCosmic ✨
253
253
  // Stars, nebula glow & constellation lines
254
254
  // ══════════════════════════════════════════════════════
255
- const NtdIconCosmic = React.forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', starColor = '#e2e8f0', nebulaColor = '#7c3aed', nebulaColor2 = '#2563eb', className, style, }, ref) => {
255
+ const NtdIconCosmic = /* @__PURE__ */ Object.assign(
256
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', starColor = '#e2e8f0', nebulaColor = '#7c3aed', nebulaColor2 = '#2563eb', className, style, }, ref) => {
256
257
  const uid = React.useId().replace(/[^a-zA-Z0-9]/g, '_');
257
258
  const nebulaFilter = `ntd_cosm_${uid}`;
258
259
  // Stars
@@ -305,7 +306,9 @@ const NtdIconCosmic = React.forwardRef(({ children, animate = true, duration = 2
305
306
  const nebulae = [
306
307
  { cx: 25, cy: 25, r: 16, color: nebulaColor, op: 0.12 },
307
308
  { cx: 75, cy: 75, r: 18, color: nebulaColor2, op: 0.1 },
308
- ...(intensity !== 'subtle' ? [{ cx: 50, cy: 50, r: 14, color: nebulaColor, op: 0.08 }] : []),
309
+ ...(intensity !== 'subtle'
310
+ ? [{ cx: 50, cy: 50, r: 14, color: nebulaColor, op: 0.08 }]
311
+ : []),
309
312
  ...(intensity === 'dense'
310
313
  ? [
311
314
  { cx: 80, cy: 20, r: 12, color: nebulaColor2, op: 0.09 },
@@ -315,13 +318,13 @@ const NtdIconCosmic = React.forwardRef(({ children, animate = true, duration = 2
315
318
  ];
316
319
  const lineLen = 80;
317
320
  return (jsxRuntime.jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsxRuntime.jsx("svg", { style: { position: 'absolute', width: 0, height: 0 }, "aria-hidden": true, children: jsxRuntime.jsx("defs", { children: jsxRuntime.jsx("filter", { id: nebulaFilter, children: jsxRuntime.jsx("feGaussianBlur", { stdDeviation: "4" }) }) }) }), jsxRuntime.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) => (jsxRuntime.jsx("circle", { cx: n.cx, cy: n.cy, r: n.r, fill: n.color, opacity: animate ? 0 : n.op, filter: `url(#${nebulaFilter})`, children: animate && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: `${n.op}`, dur: `${duration}s`, fill: "freeze" }), jsxRuntime.jsx("animate", { attributeName: "opacity", values: `${n.op};${n.op * 1.5};${n.op}`, dur: "5s", repeatCount: "indefinite", begin: `${duration}s` }), jsxRuntime.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) => (jsxRuntime.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 && (jsxRuntime.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}`)))] }), jsxRuntime.jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children }), jsxRuntime.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) => (jsxRuntime.jsx("circle", { cx: s.cx, cy: s.cy, r: s.r, fill: starColor, opacity: animate ? 0 : 0.8, children: animate && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.8", dur: `${duration * 0.5}s`, begin: `${(i * 0.1).toFixed(2)}s`, fill: "freeze" }), jsxRuntime.jsx("animate", { attributeName: "opacity", values: "0.4;1;0.4", dur: `${1.5 + (i % 4) * 0.4}s`, repeatCount: "indefinite", begin: `${duration}s` }), jsxRuntime.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 && (jsxRuntime.jsx("animateTransform", { attributeName: "transform", type: "rotate", from: "0 50 50", to: "360 50 50", dur: "120s", repeatCount: "indefinite" }))] })] }));
318
- });
319
- NtdIconCosmic.displayName = 'NtdIconCosmic';
321
+ }), { displayName: 'NtdIconCosmic' });
320
322
  // ══════════════════════════════════════════════════════
321
323
  // 7. NtdIconSteampunk ⚙️
322
324
  // Rotating gears, copper pipes, brass rivets & steam puffs
323
325
  // ══════════════════════════════════════════════════════
324
- const NtdIconSteampunk = React.forwardRef(({ children, animate = true, duration = 3, intensity = 'normal', brassColor = '#b45309', pipeColor = '#78350f', steamColor = '#d1d5db', className, style, }, ref) => {
326
+ const NtdIconSteampunk = /* @__PURE__ */ Object.assign(
327
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 3, intensity = 'normal', brassColor = '#b45309', pipeColor = '#78350f', steamColor = '#d1d5db', className, style, }, ref) => {
325
328
  // Build toothed gear path from a center point, radius and tooth count
326
329
  const makeGear = (cx, cy, r, teeth) => {
327
330
  const inner = r * 0.68;
@@ -387,13 +390,13 @@ const NtdIconSteampunk = React.forwardRef(({ children, animate = true, duration
387
390
  ];
388
391
  return (jsxRuntime.jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsxRuntime.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) => (jsxRuntime.jsx("path", { d: p.d, stroke: pipeColor, strokeWidth: p.w, fill: "none", strokeLinecap: "round", opacity: 0.55 }, `pipe${i}`))), rivets.map((rv, i) => (jsxRuntime.jsx("circle", { cx: rv.cx, cy: rv.cy, r: 1.5, fill: brassColor, opacity: 0.7 }, `rv${i}`)))] }), jsxRuntime.jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children }), jsxRuntime.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) => (jsxRuntime.jsxs("g", { children: [jsxRuntime.jsx("path", { d: makeGear(g.cx, g.cy, g.r, g.teeth), fill: brassColor, opacity: 0.78, children: animate && (jsxRuntime.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" })) }), jsxRuntime.jsx("circle", { cx: g.cx, cy: g.cy, r: g.r * 0.3, fill: pipeColor, opacity: 0.85 }), jsxRuntime.jsx("circle", { cx: g.cx, cy: g.cy, r: g.r * 0.12, fill: brassColor, opacity: 0.6 })] }, `gear${i}`))), animate &&
389
392
  steamPuffs.map((sp, i) => (jsxRuntime.jsxs("circle", { cx: sp.cx, cy: sp.cy, r: sp.r, fill: steamColor, opacity: 0, children: [jsxRuntime.jsx("animate", { attributeName: "opacity", values: "0;0.45;0", dur: "2.4s", begin: `${i * 0.7}s`, repeatCount: "indefinite" }), jsxRuntime.jsx("animate", { attributeName: "cy", values: `${sp.cy};${sp.cy - 12}`, dur: "2.4s", begin: `${i * 0.7}s`, repeatCount: "indefinite" }), jsxRuntime.jsx("animate", { attributeName: "r", values: `${sp.r};${sp.r * 2.2}`, dur: "2.4s", begin: `${i * 0.7}s`, repeatCount: "indefinite" })] }, `stm${i}`)))] })] }));
390
- });
391
- NtdIconSteampunk.displayName = 'NtdIconSteampunk';
393
+ }), { displayName: 'NtdIconSteampunk' });
392
394
  // ══════════════════════════════════════════════════════
393
395
  // 8. NtdIconFrost ❄️
394
396
  // Hexagonal snowflake crystals, sparkles & frozen glow
395
397
  // ══════════════════════════════════════════════════════
396
- const NtdIconFrost = React.forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', crystalColor = '#bae6fd', glowColor = '#38bdf8', className, style, }, ref) => {
398
+ const NtdIconFrost = /* @__PURE__ */ Object.assign(
399
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 2, intensity = 'normal', crystalColor = '#bae6fd', glowColor = '#38bdf8', className, style, }, ref) => {
397
400
  const uid = React.useId().replace(/[^a-zA-Z0-9]/g, '_');
398
401
  const glowFilterId = `ntd_frost_${uid}`;
399
402
  const crystalDefs = [
@@ -453,13 +456,13 @@ const NtdIconFrost = React.forwardRef(({ children, animate = true, duration = 2,
453
456
  { cx: 86, cy: 96, r: 1.1 },
454
457
  ];
455
458
  return (jsxRuntime.jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsxRuntime.jsx("svg", { style: { position: 'absolute', width: 0, height: 0 }, "aria-hidden": true, children: jsxRuntime.jsx("defs", { children: jsxRuntime.jsx("filter", { id: glowFilterId, children: jsxRuntime.jsx("feGaussianBlur", { stdDeviation: "6" }) }) }) }), jsxRuntime.jsxs("svg", { viewBox: "0 0 100 100", style: { ...overlayBase, inset: '-25%', width: '150%', height: '150%', zIndex: 0 }, "aria-hidden": true, children: [jsxRuntime.jsx("circle", { cx: "50", cy: "50", r: "30", fill: glowColor, opacity: 0.07, filter: `url(#${glowFilterId})`, children: animate && (jsxRuntime.jsx("animate", { attributeName: "opacity", values: "0.04;0.11;0.04", dur: "4s", repeatCount: "indefinite" })) }), allArms.map((arm, i) => (jsxRuntime.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 && (jsxRuntime.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) => (jsxRuntime.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 && (jsxRuntime.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) => (jsxRuntime.jsx("circle", { cx: sp.cx, cy: sp.cy, r: sp.r, fill: glowColor, opacity: animate ? 0 : 0.8, children: animate && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.8", dur: "0.35s", begin: `${(duration * 0.65 + i * 0.08).toFixed(2)}s`, fill: "freeze" }), jsxRuntime.jsx("animate", { attributeName: "opacity", values: "0.3;1;0.3", dur: `${1 + i * 0.2}s`, repeatCount: "indefinite", begin: `${duration}s` })] })) }, `fsp${i}`)))] }), jsxRuntime.jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children })] }));
456
- });
457
- NtdIconFrost.displayName = 'NtdIconFrost';
459
+ }), { displayName: 'NtdIconFrost' });
458
460
  // ══════════════════════════════════════════════════════
459
461
  // 9. NtdIconPixel 👾
460
462
  // Retro pixel corners, scanline scroll & glitch animation
461
463
  // ══════════════════════════════════════════════════════
462
- const NtdIconPixel = React.forwardRef(({ children, animate = true, duration = 0.5, intensity = 'normal', pixelColor = '#22d3ee', scanlineColor = '#000000', glitchEffect = true, className, style, }, ref) => {
464
+ const NtdIconPixel = /* @__PURE__ */ Object.assign(
465
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 0.5, intensity = 'normal', pixelColor = '#22d3ee', scanlineColor = '#000000', glitchEffect = true, className, style, }, ref) => {
463
466
  const uid = React.useId().replace(/[^a-zA-Z0-9]/g, '_');
464
467
  const scanAnimName = `ntd_pixel_scan_${uid}`;
465
468
  const glitchAnimName = `ntd_pixel_glitch_${uid}`;
@@ -531,13 +534,13 @@ const NtdIconPixel = React.forwardRef(({ children, animate = true, duration = 0.
531
534
  background: `linear-gradient(transparent, ${pixelColor}20, transparent)`,
532
535
  animation: `${scanAnimName} ${duration + 2}s linear infinite`,
533
536
  } }) }))] }));
534
- });
535
- NtdIconPixel.displayName = 'NtdIconPixel';
537
+ }), { displayName: 'NtdIconPixel' });
536
538
  // ══════════════════════════════════════════════════════
537
539
  // 10. NtdIconOrganic 🦠
538
540
  // Pulsing cell blobs, membrane rings & floating bubbles
539
541
  // ══════════════════════════════════════════════════════
540
- const NtdIconOrganic = React.forwardRef(({ children, animate = true, duration = 3, intensity = 'normal', cellColor = '#86efac', membraneColor = '#4ade80', nucleusColor = '#fbbf24', className, style, }, ref) => {
542
+ const NtdIconOrganic = /* @__PURE__ */ Object.assign(
543
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 3, intensity = 'normal', cellColor = '#86efac', membraneColor = '#4ade80', nucleusColor = '#fbbf24', className, style, }, ref) => {
541
544
  const uid = React.useId().replace(/[^a-zA-Z0-9]/g, '_');
542
545
  const blobFilterId = `ntd_org_${uid}`;
543
546
  const cells = [
@@ -576,14 +579,14 @@ const NtdIconOrganic = React.forwardRef(({ children, animate = true, duration =
576
579
  { cx: 8, cy: 8, r: 10 },
577
580
  { cx: 92, cy: 92, r: 10 },
578
581
  ].map((ring, i) => (jsxRuntime.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 && (jsxRuntime.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) => (jsxRuntime.jsx("circle", { cx: b.cx, cy: b.cy, r: b.r, fill: nucleusColor, opacity: animate ? 0 : 0.28, children: animate && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.28", dur: "0.5s", begin: `${(duration * 0.65 + i * 0.18).toFixed(2)}s`, fill: "freeze" }), jsxRuntime.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}`)))] }), jsxRuntime.jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children })] }));
579
- });
580
- NtdIconOrganic.displayName = 'NtdIconOrganic';
582
+ }), { displayName: 'NtdIconOrganic' });
581
583
  // ══════════════════════════════════════════════════════
582
584
  // 11. NtdIconGeometric 🔷
583
585
  // Sacred geometry: concentric rings, Star of David
584
586
  // triangles & slowly rotating corner diamonds
585
587
  // ══════════════════════════════════════════════════════
586
- const NtdIconGeometric = React.forwardRef(({ children, animate = true, duration = 8, intensity = 'normal', primaryColor = '#6366f1', secondaryColor = '#8b5cf6', accentColor = '#a78bfa', className, style, }, ref) => {
588
+ const NtdIconGeometric = /* @__PURE__ */ Object.assign(
589
+ /* @__PURE__ */ React.forwardRef(({ children, animate = true, duration = 8, intensity = 'normal', primaryColor = '#6366f1', secondaryColor = '#8b5cf6', accentColor = '#a78bfa', className, style, }, ref) => {
587
590
  const makeTriangle = (cx, cy, r, rotDeg) => Array.from({ length: 3 }, (_, i) => {
588
591
  const a = ((i * 120 - 90 + rotDeg) * Math.PI) / 180;
589
592
  return `${(cx + r * Math.cos(a)).toFixed(2)},${(cy + r * Math.sin(a)).toFixed(2)}`;
@@ -628,8 +631,7 @@ const NtdIconGeometric = React.forwardRef(({ children, animate = true, duration
628
631
  ];
629
632
  const diamondPath = (cx, cy, s = 3) => `M${cx},${cy - s} L${cx + s},${cy} L${cx},${cy + s} L${cx - s},${cy}Z`;
630
633
  return (jsxRuntime.jsxs("span", { ref: ref, className: className, style: { ...wrapperBase, ...style }, children: [jsxRuntime.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) => (jsxRuntime.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 && (jsxRuntime.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) => (jsxRuntime.jsx("polygon", { points: makeTriangle(50, 50, t.r, t.rot), fill: "none", stroke: t.color, strokeWidth: "0.5", opacity: t.op, children: animate && (jsxRuntime.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) => (jsxRuntime.jsx("path", { d: diamondPath(d.cx, d.cy), fill: accentColor, opacity: animate ? 0 : 0.5, children: animate && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("animate", { attributeName: "opacity", from: "0", to: "0.5", dur: `${duration * 0.25}s`, begin: `${(i * 0.09).toFixed(2)}s`, fill: "freeze" }), jsxRuntime.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}`)))] }), jsxRuntime.jsx("span", { style: { display: 'inline-flex', position: 'relative', zIndex: 1 }, children: children })] }));
631
- });
632
- NtdIconGeometric.displayName = 'NtdIconGeometric';
634
+ }), { displayName: 'NtdIconGeometric' });
633
635
 
634
636
  exports.NtdIconCosmic = NtdIconCosmic;
635
637
  exports.NtdIconFestive = NtdIconFestive;
@@ -6,7 +6,7 @@ var createIcon = require('../createIcon.js');
6
6
  /* ────────────────────────────────────────────────────────────────────────────
7
7
  UNIVERSAL ACCESS
8
8
  ───────────────────────────────────────────────────────────────────────────── */
9
- const NtdAccessibility = createIcon.createIcon({
9
+ const NtdAccessibility = /* @__PURE__ */ createIcon.createIcon({
10
10
  displayName: 'NtdAccessibility',
11
11
  paths: {
12
12
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsxRuntime.jsx("path", { d: "M12 8c-4 0-6 1-6 2v2h3v8h2v-5h2v5h2v-8h3v-2c0-1-2-2-6-2z", fill: primaryColor })] })),
@@ -15,7 +15,7 @@ const NtdAccessibility = createIcon.createIcon({
15
15
  vivid: ({ primaryColor, secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "12", cy: "4", r: "2", fill: "white", opacity: "0.08" }), jsxRuntime.jsx("path", { d: "M12 8c-4 0-6 1-6 2v2h3v8h2v-5h2v5h2v-8h3v-2c0-1-2-2-6-2z", fill: secondaryColor })] })),
16
16
  },
17
17
  });
18
- const NtdWheelchair = createIcon.createIcon({
18
+ const NtdWheelchair = /* @__PURE__ */ createIcon.createIcon({
19
19
  displayName: 'NtdWheelchair',
20
20
  paths: {
21
21
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsxRuntime.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 }), jsxRuntime.jsx("path", { d: "M16 14l2 4h2l-2-4", fill: primaryColor })] })),
@@ -24,7 +24,7 @@ const NtdWheelchair = createIcon.createIcon({
24
24
  vivid: ({ primaryColor, secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "12", cy: "4", r: "2", fill: "white", opacity: "0.08" }), jsxRuntime.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 }), jsxRuntime.jsx("path", { d: "M16 14l2 4h2l-2-4", fill: "#3B82F6" })] })),
25
25
  },
26
26
  });
27
- const NtdBlind = createIcon.createIcon({
27
+ const NtdBlind = /* @__PURE__ */ createIcon.createIcon({
28
28
  displayName: 'NtdBlind',
29
29
  paths: {
30
30
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "12", cy: "4", r: "2", fill: primaryColor }), jsxRuntime.jsx("path", { d: "M14 8h-4v5l-3 7 2 1 2.5-5.5L14 20h2l-3-6V8zM8 12l-4 1v2l4-1v-2z", fill: primaryColor })] })),
@@ -36,7 +36,7 @@ const NtdBlind = createIcon.createIcon({
36
36
  /* ────────────────────────────────────────────────────────────────────────────
37
37
  SENSORY
38
38
  ───────────────────────────────────────────────────────────────────────────── */
39
- const NtdDeaf = createIcon.createIcon({
39
+ const NtdDeaf = /* @__PURE__ */ createIcon.createIcon({
40
40
  displayName: 'NtdDeaf',
41
41
  paths: {
42
42
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.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" }), jsxRuntime.jsx("path", { d: "M7 8a3 3 0 013-3", stroke: primaryColor, strokeWidth: "2", fill: "none", strokeLinecap: "round" }), jsxRuntime.jsx("path", { d: "M4 4l16 16", stroke: primaryColor, strokeWidth: "2", strokeLinecap: "round" })] })),
@@ -45,7 +45,7 @@ const NtdDeaf = createIcon.createIcon({
45
45
  vivid: ({ primaryColor, secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.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" }), jsxRuntime.jsx("path", { d: "M7 8a3 3 0 013-3", stroke: secondaryColor, strokeWidth: "1.8", fill: "none", strokeLinecap: "round" }), jsxRuntime.jsx("path", { d: "M4 4l16 16", stroke: "#3B82F6", strokeWidth: "1.5", strokeLinecap: "round" })] })),
46
46
  },
47
47
  });
48
- const NtdSignLanguage = createIcon.createIcon({
48
+ const NtdSignLanguage = /* @__PURE__ */ createIcon.createIcon({
49
49
  displayName: 'NtdSignLanguage',
50
50
  paths: {
51
51
  solid: ({ primaryColor }) => (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.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,7 +54,7 @@ const NtdSignLanguage = createIcon.createIcon({
54
54
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.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 }), jsxRuntime.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" })] })),
55
55
  },
56
56
  });
57
- const NtdBraille = createIcon.createIcon({
57
+ const NtdBraille = /* @__PURE__ */ createIcon.createIcon({
58
58
  displayName: 'NtdBraille',
59
59
  paths: {
60
60
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "6", cy: "6", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "6", cy: "12", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "6", cy: "18", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "12", cy: "6", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "2", fill: primaryColor, opacity: "0.3" }), jsxRuntime.jsx("circle", { cx: "12", cy: "18", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "18", cy: "6", r: "2", fill: primaryColor, opacity: "0.3" }), jsxRuntime.jsx("circle", { cx: "18", cy: "12", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "18", cy: "18", r: "2", fill: primaryColor, opacity: "0.3" })] })),
@@ -63,7 +63,7 @@ const NtdBraille = createIcon.createIcon({
63
63
  vivid: ({ primaryColor, secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "6", cy: "6", r: "2", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "6", cy: "6", r: "2", fill: "white", opacity: "0.08" }), jsxRuntime.jsx("circle", { cx: "6", cy: "12", r: "2", fill: secondaryColor }), jsxRuntime.jsx("circle", { cx: "6", cy: "18", r: "2", fill: "#3B82F6" }), jsxRuntime.jsx("circle", { cx: "12", cy: "6", r: "2", fill: "#10B981" }), jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "2", fill: "#F59E0B", opacity: "0.3" }), jsxRuntime.jsx("circle", { cx: "12", cy: "18", r: "2", fill: "#F59E0B" }), jsxRuntime.jsx("circle", { cx: "18", cy: "6", r: "2", fill: "#F59E0B", opacity: "0.3" }), jsxRuntime.jsx("circle", { cx: "18", cy: "12", r: "2", fill: "#F59E0B" }), jsxRuntime.jsx("circle", { cx: "18", cy: "18", r: "2", fill: "#F59E0B", opacity: "0.3" })] })),
64
64
  },
65
65
  });
66
- const NtdAudioDescription = createIcon.createIcon({
66
+ const NtdAudioDescription = /* @__PURE__ */ createIcon.createIcon({
67
67
  displayName: 'NtdAudioDescription',
68
68
  paths: {
69
69
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsxRuntime.jsx("text", { x: "7", y: "15", fill: "white", fontSize: "8", fontWeight: "bold", fontFamily: "system-ui", children: "AD" })] })),
@@ -72,7 +72,7 @@ const NtdAudioDescription = createIcon.createIcon({
72
72
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsxRuntime.jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: "white", opacity: "0.1" })] })),
73
73
  },
74
74
  });
75
- const NtdClosedCaptions = createIcon.createIcon({
75
+ const NtdClosedCaptions = /* @__PURE__ */ createIcon.createIcon({
76
76
  displayName: 'NtdClosedCaptions',
77
77
  paths: {
78
78
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsxRuntime.jsx("text", { x: "6", y: "15", fill: "white", fontSize: "8", fontWeight: "bold", fontFamily: "system-ui", children: "CC" })] })),
@@ -84,7 +84,7 @@ const NtdClosedCaptions = createIcon.createIcon({
84
84
  /* ────────────────────────────────────────────────────────────────────────────
85
85
  COGNITIVE & LEARNING
86
86
  ───────────────────────────────────────────────────────────────────────────── */
87
- const NtdDyslexia = createIcon.createIcon({
87
+ const NtdDyslexia = /* @__PURE__ */ createIcon.createIcon({
88
88
  displayName: 'NtdDyslexia',
89
89
  paths: {
90
90
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: primaryColor }), jsxRuntime.jsx("path", { d: "M8 7h8M8 11h6M8 15h4", stroke: "white", strokeWidth: "2", strokeLinecap: "round" }), jsxRuntime.jsx("path", { d: "M16 15l-2 2M14 15l2 2", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" })] })),
@@ -93,7 +93,7 @@ const NtdDyslexia = createIcon.createIcon({
93
93
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: primaryColor }), jsxRuntime.jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: "white", opacity: "0.1" }), jsxRuntime.jsx("path", { d: "M8 7h8M8 11h6M8 15h4", stroke: "white", strokeWidth: "1.8", strokeLinecap: "round" }), jsxRuntime.jsx("path", { d: "M16 15l-2 2M14 15l2 2", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" })] })),
94
94
  },
95
95
  });
96
- const NtdEasyRead = createIcon.createIcon({
96
+ const NtdEasyRead = /* @__PURE__ */ createIcon.createIcon({
97
97
  displayName: 'NtdEasyRead',
98
98
  paths: {
99
99
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("rect", { x: "2", y: "2", width: "20", height: "20", rx: "2", fill: primaryColor }), jsxRuntime.jsx("path", { d: "M6 8h5v5H6zM13 8h5M13 11h4M6 16h12M6 19h8", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" })] })),
@@ -105,7 +105,7 @@ const NtdEasyRead = createIcon.createIcon({
105
105
  /* ────────────────────────────────────────────────────────────────────────────
106
106
  ASSISTIVE TECHNOLOGY
107
107
  ───────────────────────────────────────────────────────────────────────────── */
108
- const NtdScreenReader = createIcon.createIcon({
108
+ const NtdScreenReader = /* @__PURE__ */ createIcon.createIcon({
109
109
  displayName: 'NtdScreenReader',
110
110
  paths: {
111
111
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", fill: primaryColor }), jsxRuntime.jsx("path", { d: "M8 18h8M10 18v2M14 18v2M8 20h8", stroke: primaryColor, strokeWidth: "2", strokeLinecap: "round" }), jsxRuntime.jsx("path", { d: "M8 7h2M8 10h4M8 13h6", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" }), jsxRuntime.jsx("circle", { cx: "16", cy: "7", r: "1.5", fill: "white" }), jsxRuntime.jsx("path", { d: "M14 7c0-1.5 1-2.5 2-2.5s2 1 2 2.5", stroke: "white", strokeWidth: "1", fill: "none" })] })),
@@ -114,7 +114,7 @@ const NtdScreenReader = createIcon.createIcon({
114
114
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", fill: primaryColor }), jsxRuntime.jsx("rect", { x: "4", y: "2", width: "16", height: "14", rx: "2", fill: "white", opacity: "0.08" }), jsxRuntime.jsx("circle", { cx: "16", cy: "7", r: "1.5", fill: "white" }), jsxRuntime.jsx("path", { d: "M8 18h8M10 18v2M14 18v2M8 20h8", stroke: "white", strokeWidth: "1", strokeLinecap: "round" }), jsxRuntime.jsx("path", { d: "M8 7h2M8 10h4M8 13h6", stroke: "white", strokeWidth: "1", strokeLinecap: "round" }), jsxRuntime.jsx("path", { d: "M14 7c0-1.5 1-2.5 2-2.5s2 1 2 2.5", stroke: "white", strokeWidth: "1", fill: "none" })] })),
115
115
  },
116
116
  });
117
- const NtdHearingAid = createIcon.createIcon({
117
+ const NtdHearingAid = /* @__PURE__ */ createIcon.createIcon({
118
118
  displayName: 'NtdHearingAid',
119
119
  paths: {
120
120
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.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" }), jsxRuntime.jsx("path", { d: "M9 8a3 3 0 013-3", stroke: primaryColor, strokeWidth: "2", fill: "none", strokeLinecap: "round" }), jsxRuntime.jsx("circle", { cx: "6", cy: "10", r: "3", fill: primaryColor }), jsxRuntime.jsx("path", { d: "M6 13v6", stroke: primaryColor, strokeWidth: "2", strokeLinecap: "round" }), jsxRuntime.jsx("circle", { cx: "6", cy: "20", r: "1.5", fill: primaryColor })] })),
@@ -123,7 +123,7 @@ const NtdHearingAid = createIcon.createIcon({
123
123
  vivid: ({ primaryColor, secondaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "6", cy: "10", r: "3", fill: primaryColor }), jsxRuntime.jsx("circle", { cx: "6", cy: "10", r: "3", fill: "white", opacity: "0.08" }), jsxRuntime.jsx("circle", { cx: "6", cy: "20", r: "1.5", fill: secondaryColor }), jsxRuntime.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" }), jsxRuntime.jsx("path", { d: "M9 8a3 3 0 013-3", stroke: "white", strokeWidth: "1", fill: "none", strokeLinecap: "round" }), jsxRuntime.jsx("path", { d: "M6 13v6", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })] })),
124
124
  },
125
125
  });
126
- const NtdAssistiveTech = createIcon.createIcon({
126
+ const NtdAssistiveTech = /* @__PURE__ */ createIcon.createIcon({
127
127
  displayName: 'NtdAssistiveTech',
128
128
  paths: {
129
129
  solid: ({ primaryColor }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsxRuntime.jsx("path", { d: "M12 6v2M12 16v2M6 12h2M16 12h2", stroke: "white", strokeWidth: "2", strokeLinecap: "round" }), jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "3", fill: "white" })] })),