@nice2dev/icons 1.3.7 → 1.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/CHANGELOG.md +90 -0
  2. package/README.md +33 -16
  3. package/dist/cjs/NiceIconPicker.js +289 -92
  4. package/dist/cjs/NiceIconStacker.js +137 -108
  5. package/dist/cjs/client.js +6 -0
  6. package/dist/cjs/createIcon.js +17 -4
  7. package/dist/cjs/iconHtml.js +122 -0
  8. package/dist/cjs/iconParts.js +24 -2
  9. package/dist/cjs/iconStack.js +76 -5
  10. package/dist/cjs/icons/accessibility.js +9 -8
  11. package/dist/cjs/icons/actions.js +38 -35
  12. package/dist/cjs/icons/ai.js +12 -11
  13. package/dist/cjs/icons/brand.js +2 -2
  14. package/dist/cjs/icons/business.js +14 -16
  15. package/dist/cjs/icons/devtech.js +17 -15
  16. package/dist/cjs/icons/ecommerce.js +7 -12
  17. package/dist/cjs/icons/education.js +14 -16
  18. package/dist/cjs/icons/files.js +46 -22
  19. package/dist/cjs/icons/fintech.js +2 -11
  20. package/dist/cjs/icons/food.js +12 -8
  21. package/dist/cjs/icons/fun.js +11 -11
  22. package/dist/cjs/icons/gaming.js +20 -13
  23. package/dist/cjs/icons/health.js +9 -12
  24. package/dist/cjs/icons/index.js +1 -0
  25. package/dist/cjs/icons/input.js +31 -21
  26. package/dist/cjs/icons/legal.js +11 -11
  27. package/dist/cjs/icons/media.js +24 -15
  28. package/dist/cjs/icons/navigation.js +16 -13
  29. package/dist/cjs/icons/omniverk.js +2 -7
  30. package/dist/cjs/icons/realestate.js +14 -14
  31. package/dist/cjs/icons/saas.js +0 -10
  32. package/dist/cjs/icons/science.js +12 -12
  33. package/dist/cjs/icons/shapes.js +20 -17
  34. package/dist/cjs/icons/smarthome.js +0 -11
  35. package/dist/cjs/icons/social.js +7 -6
  36. package/dist/cjs/icons/sports.js +5 -6
  37. package/dist/cjs/icons/sustainability.js +12 -11
  38. package/dist/cjs/icons/travel.js +9 -9
  39. package/dist/cjs/icons/ui.js +55 -31
  40. package/dist/cjs/icons/weather.js +8 -13
  41. package/dist/cjs/index.js +7 -0
  42. package/dist/cjs/nicetodev-icons.css +1 -1
  43. package/dist/cjs/resolver.js +1 -0
  44. package/dist/cjs/stacking.js +38 -11
  45. package/dist/esm/NiceIconPicker.js +292 -95
  46. package/dist/esm/NiceIconStacker.js +141 -112
  47. package/dist/esm/client.js +2 -1
  48. package/dist/esm/createIcon.js +18 -5
  49. package/dist/esm/iconHtml.js +117 -0
  50. package/dist/esm/iconParts.js +24 -3
  51. package/dist/esm/iconStack.js +74 -6
  52. package/dist/esm/icons/accessibility.js +9 -8
  53. package/dist/esm/icons/actions.js +39 -36
  54. package/dist/esm/icons/ai.js +12 -11
  55. package/dist/esm/icons/brand.js +2 -2
  56. package/dist/esm/icons/business.js +15 -17
  57. package/dist/esm/icons/devtech.js +17 -15
  58. package/dist/esm/icons/ecommerce.js +7 -12
  59. package/dist/esm/icons/education.js +14 -16
  60. package/dist/esm/icons/files.js +47 -23
  61. package/dist/esm/icons/fintech.js +2 -11
  62. package/dist/esm/icons/food.js +12 -8
  63. package/dist/esm/icons/fun.js +11 -11
  64. package/dist/esm/icons/gaming.js +21 -14
  65. package/dist/esm/icons/health.js +9 -12
  66. package/dist/esm/icons/index.js +1 -1
  67. package/dist/esm/icons/input.js +31 -21
  68. package/dist/esm/icons/legal.js +12 -12
  69. package/dist/esm/icons/media.js +25 -16
  70. package/dist/esm/icons/navigation.js +16 -13
  71. package/dist/esm/icons/omniverk.js +2 -7
  72. package/dist/esm/icons/realestate.js +15 -15
  73. package/dist/esm/icons/saas.js +0 -10
  74. package/dist/esm/icons/science.js +12 -12
  75. package/dist/esm/icons/shapes.js +20 -17
  76. package/dist/esm/icons/smarthome.js +0 -11
  77. package/dist/esm/icons/social.js +8 -7
  78. package/dist/esm/icons/sports.js +6 -7
  79. package/dist/esm/icons/sustainability.js +12 -11
  80. package/dist/esm/icons/travel.js +10 -10
  81. package/dist/esm/icons/ui.js +56 -33
  82. package/dist/esm/icons/weather.js +9 -14
  83. package/dist/esm/index.js +3 -2
  84. package/dist/esm/nicetodev-icons.css +1 -1
  85. package/dist/esm/resolver.js +1 -0
  86. package/dist/esm/stacking.js +36 -12
  87. package/dist/types/NiceIconPicker.d.ts +66 -20
  88. package/dist/types/NiceIconStacker.d.ts +30 -9
  89. package/dist/types/client.d.ts +4 -2
  90. package/dist/types/createIcon.d.ts +16 -2
  91. package/dist/types/iconHtml.d.ts +44 -0
  92. package/dist/types/iconParts.d.ts +8 -2
  93. package/dist/types/iconStack.d.ts +30 -3
  94. package/dist/types/icons/index.d.ts +1 -1
  95. package/dist/types/icons/ui.d.ts +1 -0
  96. package/dist/types/index.d.ts +4 -2
  97. package/dist/types/stacking.d.ts +25 -5
  98. package/dist/types/types.d.ts +11 -7
  99. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
2
2
  import { createIcon } from '../createIcon.js';
3
- import { within, paperIcon } from '../iconParts.js';
3
+ import { swapDuotone, within, paperIcon } from '../iconParts.js';
4
4
 
5
5
  // NtdFile is the page every paper icon is drawn on (`paperIcon` in iconParts.tsx): the fold is
6
6
  // 8 now (7 before — the duotone's stroked fold looked the largest), secondary when the page is
@@ -12,6 +12,9 @@ const FOLDER_TAB = 'M2 7V5a2 2 0 012-2h7l2.67 4z';
12
12
  const FOLDER_FRONT = 'M2 6h18a2 2 0 012 2v11a2 2 0 01-2 2H4a2 2 0 01-2-2z';
13
13
  const NtdFolder = /* @__PURE__ */ createIcon({
14
14
  displayName: 'NtdFolder',
15
+ perfectStackX: 12,
16
+ perfectStackY: 13.5,
17
+ perfectStackSize: 0.5,
15
18
  paths: {
16
19
  solid: ({ primaryColor, strokeWidth: _strokeWidth }) => (jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", fill: primaryColor })),
17
20
  outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
@@ -23,10 +26,13 @@ const NtdFolder = /* @__PURE__ */ createIcon({
23
26
  });
24
27
  const NtdFolderOpen = /* @__PURE__ */ createIcon({
25
28
  displayName: 'NtdFolderOpen',
29
+ perfectStackX: 13,
30
+ perfectStackY: 15.5,
31
+ perfectStackSize: 0.4,
26
32
  paths: {
27
33
  solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", fill: primaryColor, opacity: "0.3" }), jsx("path", { d: "M2 10h20M4 21l2-11h16l-2 11H4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: primaryColor })] })),
28
34
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M2 10h20", stroke: primaryColor, strokeWidth: strokeWidth })] })),
29
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M2 10h20", stroke: primaryColor, strokeWidth: strokeWidth })] })),
35
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M2 10h20", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
30
36
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", fill: primaryColor, opacity: "0.3" }), jsx("path", { d: "M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h7l2 3h7a2 2 0 012 2v11z", fill: "white", opacity: "0.08" }), jsx("path", { d: "M2 10h20M4 21l2-11h16l-2 11H4z", stroke: secondaryColor, strokeWidth: "2", fill: secondaryColor })] })),
31
37
  },
32
38
  });
@@ -35,7 +41,6 @@ const NtdArchive = /* @__PURE__ */ createIcon({
35
41
  paths: {
36
42
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "3", width: "20", height: "5", rx: "1", fill: primaryColor }), jsx("path", { d: "M4 8v11a2 2 0 002 2h12a2 2 0 002-2V8", fill: primaryColor, opacity: "0.7" }), jsx("line", { x1: "10", y1: "12", x2: "14", y2: "12", stroke: accentColor, strokeWidth: strokeWidth, opacity: accentOpacity })] })),
37
43
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "3", width: "20", height: "5", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M4 8v11a2 2 0 002 2h12a2 2 0 002-2V8", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "10", y1: "12", x2: "14", y2: "12", stroke: primaryColor, strokeWidth: strokeWidth })] })),
38
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 8v11a2 2 0 002 2h12a2 2 0 002-2V8H4z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "2", y: "3", width: "20", height: "5", rx: "1", fill: primaryColor, opacity: secondaryOpacity + 0.1, stroke: primaryColor, strokeWidth: strokeWidth }), jsx("path", { d: "M4 8v11a2 2 0 002 2h12a2 2 0 002-2V8", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "10", y1: "12", x2: "14", y2: "12", stroke: primaryColor, strokeWidth: strokeWidth })] })),
39
44
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "3", width: "20", height: "5", rx: "1", fill: primaryColor }), jsx("rect", { x: "2", y: "3", width: "20", height: "5", rx: "1", fill: "white", opacity: "0.08" }), jsx("path", { d: "M4 8v11a2 2 0 002 2h12a2 2 0 002-2V8", fill: secondaryColor, opacity: "0.7" }), jsx("line", { x1: "10", y1: "12", x2: "14", y2: "12", stroke: "white", strokeWidth: "1", opacity: "0.4" })] })),
40
45
  },
41
46
  });
@@ -58,17 +63,18 @@ const NtdDatabase = /* @__PURE__ */ createIcon({
58
63
  // and lost the cap's front edge, so it gets the outline's construction instead
59
64
  solid: (props) => props.variant === 'wireframe' ? (databaseLines(props)) : (jsxs(Fragment, { children: [jsx("path", { d: DB_SILHOUETTE, fill: props.primaryColor }), jsx("path", { d: DB_GAPS, fill: props.accentColor, opacity: props.accentOpacity })] })),
60
65
  outline: databaseLines,
61
- // one tint for the cap and the body: the cap in full secondary read as a separate disc
62
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: DB_SILHOUETTE, fill: secondaryColor, opacity: secondaryOpacity }), jsx("ellipse", { cx: "12", cy: "5.5", rx: "8", ry: "2.6", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M4 5.5v13a8 2.6 0 0016 0v-13M4 9.83a8 2.6 0 0016 0M4 14.17a8 2.6 0 0016 0", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
63
66
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: DB_SILHOUETTE, fill: primaryColor }), jsx("ellipse", { cx: "12", cy: "5.5", rx: "8", ry: "2.6", fill: "white", opacity: "0.25" }), jsx("path", { d: DB_GAPS, fill: secondaryColor })] })),
64
67
  },
65
68
  });
66
69
  const NtdCloud = /* @__PURE__ */ createIcon({
67
70
  displayName: 'NtdCloud',
71
+ perfectStackX: 11,
72
+ perfectStackY: 13.5,
73
+ perfectStackSize: 0.5,
68
74
  paths: {
69
75
  solid: ({ primaryColor, strokeWidth: _strokeWidth }) => (jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: primaryColor })),
70
76
  outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
71
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
77
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] }))),
72
78
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: primaryColor }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: "white", opacity: "0.1" })] })),
73
79
  },
74
80
  });
@@ -77,7 +83,7 @@ const NtdCloudUpload = /* @__PURE__ */ createIcon({
77
83
  paths: {
78
84
  solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: primaryColor, opacity: "0.2", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("path", { d: "M16 16l-4-4-4 4M12 12v9", stroke: primaryColor, strokeWidth: strokeWidth })] })),
79
85
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 16l-4-4-4 4M12 12v9", stroke: primaryColor, strokeWidth: strokeWidth })] })),
80
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 16l-4-4-4 4M12 12v9", stroke: primaryColor, strokeWidth: strokeWidth })] })),
86
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 16l-4-4-4 4M12 12v9", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
81
87
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: primaryColor, opacity: "0.2", stroke: primaryColor, strokeWidth: "2" }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: "white", opacity: "0.1" }), jsx("path", { d: "M16 16l-4-4-4 4M12 12v9", stroke: secondaryColor, strokeWidth: "1.8" })] })),
82
88
  },
83
89
  });
@@ -86,7 +92,7 @@ const NtdCloudDownload = /* @__PURE__ */ createIcon({
86
92
  paths: {
87
93
  solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: primaryColor, opacity: "0.2", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("path", { d: "M8 17l4 4 4-4M12 12v9", stroke: primaryColor, strokeWidth: strokeWidth })] })),
88
94
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 17l4 4 4-4M12 12v9", stroke: primaryColor, strokeWidth: strokeWidth })] })),
89
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 17l4 4 4-4M12 12v9", stroke: primaryColor, strokeWidth: strokeWidth })] })),
95
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 17l4 4 4-4M12 12v9", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
90
96
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: primaryColor, opacity: "0.2", stroke: primaryColor, strokeWidth: "2" }), jsx("path", { d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z", fill: "white", opacity: "0.1" }), jsx("path", { d: "M8 17l4 4 4-4M12 12v9", stroke: secondaryColor, strokeWidth: "1.8" })] })),
91
97
  },
92
98
  });
@@ -98,17 +104,25 @@ const NtdTerminal = /* @__PURE__ */ createIcon({
98
104
  paths: {
99
105
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "3", width: "20", height: "18", rx: "2", fill: primaryColor }), jsx("path", { d: TERMINAL_PROMPT, stroke: accentColor, strokeWidth: strokeWidth * 2, opacity: accentOpacity, fill: "none" })] })),
100
106
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "3", width: "20", height: "18", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: TERMINAL_PROMPT, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
101
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "3", width: "20", height: "18", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "2", y: "3", width: "20", height: "18", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: TERMINAL_PROMPT, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
102
107
  vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "3", width: "20", height: "18", rx: "2", fill: primaryColor }), jsx("rect", { x: "2", y: "3", width: "20", height: "18", rx: "2", fill: "white", opacity: "0.1" }), jsx("path", { d: TERMINAL_PROMPT, stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" })] })),
103
108
  },
104
109
  });
110
+ // NtdCode: a line glyph, twice the stroke width in every variant but `outline` (vivid had a fixed
111
+ // 2.2), with sharp points (miter joins). Duotone is vivid's split: the right bracket primary, the
112
+ // left secondary (duotone drew the left one twice). The points sit 2.5 in from the sides, so
113
+ // their miters stay inside the box at that width.
114
+ const CODE_RIGHT = 'M15.5 18l6-6-6-6';
115
+ const CODE_LEFT = 'M8.5 6l-6 6 6 6';
116
+ function codeSplit({ primaryColor, secondaryColor, strokeWidth }) {
117
+ return (jsxs(Fragment, { children: [jsx("path", { d: CODE_RIGHT, stroke: primaryColor, strokeWidth: strokeWidth * 2, strokeLinejoin: "miter", fill: "none" }), jsx("path", { d: CODE_LEFT, stroke: secondaryColor, strokeWidth: strokeWidth * 2, strokeLinejoin: "miter", fill: "none" })] }));
118
+ }
105
119
  const NtdCode = /* @__PURE__ */ createIcon({
106
120
  displayName: 'NtdCode',
107
121
  paths: {
108
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M16 18l6-6-6-6M8 6l-6 6 6 6", stroke: primaryColor, strokeWidth: strokeWidth })),
109
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M16 18l6-6-6-6M8 6l-6 6 6 6", stroke: primaryColor, strokeWidth: strokeWidth })),
110
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8 6l-6 6 6 6", stroke: secondaryColor, strokeWidth: strokeWidth, opacity: secondaryOpacity + 0.2 }), jsx("path", { d: "M16 18l6-6-6-6M8 6l-6 6 6 6", stroke: primaryColor, strokeWidth: strokeWidth })] })),
111
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsx(Fragment, { children: jsx("path", { d: "M16 18l6-6-6-6M8 6l-6 6 6 6", stroke: primaryColor, strokeWidth: "2.2" }) })),
122
+ solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: `${CODE_RIGHT}${CODE_LEFT}`, stroke: primaryColor, strokeWidth: strokeWidth * 2, strokeLinejoin: "miter", fill: "none" })),
123
+ outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M16 18l6-6-6-6M8 6l-6 6 6 6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinejoin: "miter", fill: "none" })),
124
+ duotone: codeSplit,
125
+ vivid: codeSplit,
112
126
  },
113
127
  });
114
128
  const NtdGit = /* @__PURE__ */ createIcon({
@@ -172,7 +186,7 @@ const NtdTable = /* @__PURE__ */ createIcon({
172
186
  paths: {
173
187
  solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", fill: primaryColor, opacity: "0.15", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "3", y1: "9", x2: "21", y2: "9", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "3", y1: "15", x2: "21", y2: "15", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "9", y1: "3", x2: "9", y2: "21", stroke: primaryColor, strokeWidth: strokeWidth })] })),
174
188
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "3", y1: "9", x2: "21", y2: "9", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "3", y1: "15", x2: "21", y2: "15", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "9", y1: "3", x2: "9", y2: "21", stroke: primaryColor, strokeWidth: strokeWidth })] })),
175
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "3", y1: "9", x2: "21", y2: "9", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "3", y1: "15", x2: "21", y2: "15", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "9", y1: "3", x2: "9", y2: "21", stroke: primaryColor, strokeWidth: strokeWidth })] })),
189
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "3", y1: "9", x2: "21", y2: "9", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "3", y1: "15", x2: "21", y2: "15", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "9", y1: "3", x2: "9", y2: "21", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
176
190
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", fill: primaryColor, opacity: "0.15", stroke: primaryColor, strokeWidth: "2" }), jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", fill: "white", opacity: "0.1" }), jsx("line", { x1: "3", y1: "9", x2: "21", y2: "9", stroke: secondaryColor, strokeWidth: "1.8" }), jsx("line", { x1: "3", y1: "15", x2: "21", y2: "15", stroke: "#3B82F6", strokeWidth: "1.5" }), jsx("line", { x1: "9", y1: "3", x2: "9", y2: "21", stroke: "#3B82F6", strokeWidth: "1.5" })] })),
177
191
  },
178
192
  });
@@ -183,7 +197,7 @@ const NtdSmartphone = /* @__PURE__ */ createIcon({
183
197
  paths: {
184
198
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("rect", { x: "5", y: "2", width: "14", height: "20", rx: "2", fill: primaryColor }), jsx("rect", { x: "6.5", y: "3.5", width: "11", height: "17", rx: "0.75", fill: accentColor, opacity: accentOpacity }), jsx("circle", { cx: "12", cy: "18.4", r: "1.25", fill: primaryColor })] })),
185
199
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "5", y: "2", width: "14", height: "20", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "12", y1: "18", x2: "12.01", y2: "18", stroke: primaryColor, strokeWidth: strokeWidth })] })),
186
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "5", y: "2", width: "14", height: "20", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "5", y: "2", width: "14", height: "20", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "12", y1: "18", x2: "12.01", y2: "18", stroke: primaryColor, strokeWidth: strokeWidth })] })),
200
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "5", y: "2", width: "14", height: "20", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "5", y: "2", width: "14", height: "20", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "12", y1: "18", x2: "12.01", y2: "18", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
187
201
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "5", y: "2", width: "14", height: "20", rx: "2", fill: primaryColor }), jsx("rect", { x: "5", y: "2", width: "14", height: "20", rx: "2", fill: "white", opacity: "0.1" }), jsx("line", { x1: "12", y1: "18", x2: "12.01", y2: "18", stroke: secondaryColor, strokeWidth: "1.8" })] })),
188
202
  },
189
203
  });
@@ -203,16 +217,20 @@ function monitorStand(uid, d, color, width) {
203
217
  }
204
218
  const NtdMonitor = /* @__PURE__ */ createIcon({
205
219
  displayName: 'NtdMonitor',
220
+ perfectStackX: 12,
221
+ perfectStackY: 10,
222
+ perfectStackSize: 0.45,
206
223
  paths: {
207
224
  solid: ({ primaryColor, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: primaryColor }), monitorStand(uid, MONITOR_STAND, primaryColor, strokeWidth * 2)] })),
208
225
  outline: ({ primaryColor, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), monitorStand(uid, MONITOR_STAND_LINE, primaryColor, strokeWidth)] })),
209
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { ...MONITOR_SCREEN, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), monitorStand(uid, MONITOR_STAND, primaryColor, strokeWidth * 2)] })),
226
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { ...MONITOR_SCREEN, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), monitorStand(uid, MONITOR_STAND, primaryColor, strokeWidth * 2)] }))),
210
227
  vivid: ({ primaryColor, secondaryColor, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: primaryColor }), monitorStand(uid, MONITOR_STAND, secondaryColor, strokeWidth * 2)] })),
211
228
  },
212
229
  });
213
230
  // NtdCpu: filled, the body and its pins primary and the die in the accent colour (the body was a
214
231
  // fixed 15% tint). The pins are twice the stroke width and short (2.5 → 4 at the top, and so on)
215
- // so their caps stay in the box. Duotone: the body secondary, the pins and the die primary; vivid:
232
+ // so their caps stay in the box. Duotone: the body primary, the pins and the die secondary (the
233
+ // other way round until 1.3.8); vivid:
216
234
  // the pins and the die secondary around an accent core.
217
235
  const CPU_BODY = { x: 4, y: 4, width: 16, height: 16, rx: 2 };
218
236
  const CPU_DIE = { x: 8.5, y: 8.5, width: 7, height: 7, rx: 1.2 };
@@ -222,7 +240,7 @@ const NtdCpu = /* @__PURE__ */ createIcon({
222
240
  paths: {
223
241
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: CPU_PINS, stroke: primaryColor, strokeWidth: strokeWidth * 2 }), jsx("rect", { ...CPU_BODY, fill: primaryColor }), jsx("rect", { ...CPU_DIE, fill: accentColor, opacity: accentOpacity })] })),
224
242
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { ...CPU_BODY, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "9", y: "9", width: "6", height: "6", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M9 1v3M15 1v3M9 20v3M15 20v3M20 9h3M20 15h3M1 9h3M1 15h3", stroke: primaryColor, strokeWidth: strokeWidth })] })),
225
- duotone: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: CPU_PINS, stroke: primaryColor, strokeWidth: strokeWidth * 2 }), jsx("rect", { ...CPU_BODY, fill: secondaryColor }), jsx("rect", { ...CPU_DIE, fill: primaryColor })] })),
243
+ duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: CPU_PINS, stroke: primaryColor, strokeWidth: strokeWidth * 2 }), jsx("rect", { ...CPU_BODY, fill: secondaryColor }), jsx("rect", { ...CPU_DIE, fill: primaryColor })] }))),
226
244
  vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: CPU_PINS, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("rect", { ...CPU_BODY, fill: primaryColor }), jsx("rect", { ...CPU_DIE, fill: secondaryColor }), jsx("rect", { x: "10.5", y: "10.5", width: "3", height: "3", rx: "0.6", fill: accentColor, opacity: accentOpacity })] })),
227
245
  },
228
246
  });
@@ -254,6 +272,9 @@ function awardFilled({ primaryColor, secondaryColor, strokeWidth }, ribbonEdge)
254
272
  }
255
273
  const NtdAward = /* @__PURE__ */ createIcon({
256
274
  displayName: 'NtdAward',
275
+ perfectStackX: 12,
276
+ perfectStackY: 8,
277
+ perfectStackSize: 0.4,
257
278
  paths: {
258
279
  solid: (props) => awardFilled(props, props.primaryColor),
259
280
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "8", r: "7", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8.21 13.89L7 23l5-3 5 3-1.21-9.12", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
@@ -263,10 +284,13 @@ const NtdAward = /* @__PURE__ */ createIcon({
263
284
  });
264
285
  const NtdCoffee = /* @__PURE__ */ createIcon({
265
286
  displayName: 'NtdCoffee',
287
+ perfectStackX: 10,
288
+ perfectStackY: 14.5,
289
+ perfectStackSize: 0.4,
266
290
  paths: {
267
291
  solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 8h1a4 4 0 010 8h-1M2 8h16v9a4 4 0 01-4 4H6a4 4 0 01-4-4V8z", fill: primaryColor }), jsx("line", { x1: "6", y1: "1", x2: "6", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "10", y1: "1", x2: "10", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "14", y1: "1", x2: "14", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth })] })),
268
292
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 8h1a4 4 0 010 8h-1M2 8h16v9a4 4 0 01-4 4H6a4 4 0 01-4-4V8z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "6", y1: "1", x2: "6", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "10", y1: "1", x2: "10", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "14", y1: "1", x2: "14", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth })] })),
269
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M2 8h16v9a4 4 0 01-4 4H6a4 4 0 01-4-4V8z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M18 8h1a4 4 0 010 8h-1M2 8h16v9a4 4 0 01-4 4H6a4 4 0 01-4-4V8z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "6", y1: "1", x2: "6", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "10", y1: "1", x2: "10", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "14", y1: "1", x2: "14", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth })] })),
293
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M2 8h16v9a4 4 0 01-4 4H6a4 4 0 01-4-4V8z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M18 8h1a4 4 0 010 8h-1M2 8h16v9a4 4 0 01-4 4H6a4 4 0 01-4-4V8z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("line", { x1: "6", y1: "1", x2: "6", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "10", y1: "1", x2: "10", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "14", y1: "1", x2: "14", y2: "4", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
270
294
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M18 8h1a4 4 0 010 8h-1M2 8h16v9a4 4 0 01-4 4H6a4 4 0 01-4-4V8z", fill: primaryColor }), jsx("path", { d: "M18 8h1a4 4 0 010 8h-1M2 8h16v9a4 4 0 01-4 4H6a4 4 0 01-4-4V8z", fill: "white", opacity: "0.1" }), jsx("line", { x1: "6", y1: "1", x2: "6", y2: "4", stroke: secondaryColor, strokeWidth: "1.8" }), jsx("line", { x1: "10", y1: "1", x2: "10", y2: "4", stroke: "#3B82F6", strokeWidth: "1.5" }), jsx("line", { x1: "14", y1: "1", x2: "14", y2: "4", stroke: "#3B82F6", strokeWidth: "1.5" })] })),
271
295
  },
272
296
  });
@@ -307,7 +331,8 @@ const NtdCreditCard = /* @__PURE__ */ createIcon({
307
331
  // — a gap between them. The larger is the three-quarter sector from the centre; it was a segment
308
332
  // cut off by a chord, which read as an odd shape. The whole chart is turned 45° clockwise, so the
309
333
  // slice points right (it filled the top-right quarter). The outline keeps its open arc and the
310
- // slice, turned the same way. Duotone, fills only: the larger sector secondary, the slice primary;
334
+ // slice, turned the same way. Duotone, fills only: the larger sector primary, the slice secondary
335
+ // (the other way round until 1.3.8);
311
336
  // vivid the other way.
312
337
  const PIE_REST = 'M11 12L18.07 4.93A10 10 0 1 0 18.07 19.07Z';
313
338
  const PIE_SLICE = 'M13 12L20.07 4.93A10 10 0 0 1 20.07 19.07Z';
@@ -319,7 +344,7 @@ const NtdPieChart = /* @__PURE__ */ createIcon({
319
344
  paths: {
320
345
  solid: ({ primaryColor }) => pieFilled(primaryColor, primaryColor),
321
346
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M15.76 21.27A10 10 0 1 1 15.65 2.69", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M19.07 19.07A10 10 0 0 0 19.07 4.93L12 12z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
322
- duotone: ({ primaryColor, secondaryColor }) => pieFilled(secondaryColor, primaryColor),
347
+ duotone: swapDuotone(({ primaryColor, secondaryColor }) => pieFilled(secondaryColor, primaryColor)),
323
348
  vivid: ({ primaryColor, secondaryColor }) => pieFilled(primaryColor, secondaryColor),
324
349
  },
325
350
  });
@@ -337,7 +362,7 @@ const NtdActivity = /* @__PURE__ */ createIcon({
337
362
  paths: {
338
363
  solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: strokeWidth })),
339
364
  outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: strokeWidth })),
340
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: secondaryColor, strokeWidth: "4", opacity: secondaryOpacity }), jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: strokeWidth })] })),
365
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: secondaryColor, strokeWidth: "4", opacity: secondaryOpacity }), jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
341
366
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsx(Fragment, { children: jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: "2.2" }) })),
342
367
  },
343
368
  });
@@ -355,7 +380,6 @@ const NtdTruck = /* @__PURE__ */ createIcon({
355
380
  paths: {
356
381
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "1", y: "3", width: "15", height: "13", rx: "1", fill: primaryColor }), jsx("path", { d: "M16 8h4l3 3v5h-7V8z", fill: primaryColor, opacity: "0.7", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "5.5", cy: "18.5", r: "2.5", fill: primaryColor, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity }), jsx("circle", { cx: "18.5", cy: "18.5", r: "2.5", fill: primaryColor, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })] })),
357
382
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M1 3h15v13H1z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 8h4l3 3v5h-7V8z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "5.5", cy: "18.5", r: "2.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "18.5", cy: "18.5", r: "2.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
358
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M1 3h15v13H1z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M16 8h4l3 3v5h-7V8z", fill: secondaryColor, opacity: secondaryOpacity + 0.1 }), jsx("path", { d: "M1 3h15v13H1z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 8h4l3 3v5h-7V8z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "5.5", cy: "18.5", r: "2.5", fill: primaryColor }), jsx("circle", { cx: "18.5", cy: "18.5", r: "2.5", fill: primaryColor })] })),
359
383
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "1", y: "3", width: "15", height: "13", rx: "1", fill: primaryColor }), jsx("rect", { x: "1", y: "3", width: "15", height: "13", rx: "1", fill: "white", opacity: "0.08" }), jsx("path", { d: "M16 8h4l3 3v5h-7V8z", fill: secondaryColor, opacity: "0.7", stroke: secondaryColor, strokeWidth: "2" }), jsx("circle", { cx: "5.5", cy: "18.5", r: "2.5", fill: "#3B82F6", stroke: "#3B82F6", strokeWidth: "1.5" }), jsx("circle", { cx: "18.5", cy: "18.5", r: "2.5", fill: "#F59E0B", stroke: "#F59E0B", strokeWidth: "1.5" })] })),
360
384
  },
361
385
  });
@@ -1,5 +1,6 @@
1
1
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
2
  import { createIcon } from '../createIcon.js';
3
+ import { swapDuotone } from '../iconParts.js';
3
4
 
4
5
  // ═══════════════════════════════════════════════════════════════════════════════
5
6
  // Fintech & Crypto Icons
@@ -10,7 +11,6 @@ const NtdCryptoWallet = /* @__PURE__ */ createIcon({
10
11
  paths: {
11
12
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "6", width: "20", height: "14", rx: "2", fill: primaryColor }), jsx("rect", { x: "14", y: "10", width: "6", height: "6", rx: "1", fill: accentColor, opacity: accentOpacity }), jsx("circle", { cx: "17", cy: "13", r: "1.5", fill: primaryColor }), jsx("path", { d: "M6 6V4a2 2 0 012-2h8a2 2 0 012 2v2", stroke: primaryColor, strokeWidth: "2" })] })),
12
13
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "6", width: "20", height: "14", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "14", y: "10", width: "6", height: "6", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "17", cy: "13", r: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M6 6V4a2 2 0 012-2h8a2 2 0 012 2v2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
13
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "6", width: "20", height: "14", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "2", y: "6", width: "20", height: "14", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "14", y: "10", width: "6", height: "6", rx: "1", fill: primaryColor }), jsx("circle", { cx: "17", cy: "13", r: "1", fill: secondaryColor }), jsx("path", { d: "M6 6V4a2 2 0 012-2h8a2 2 0 012 2v2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
14
14
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "6", width: "20", height: "14", rx: "2", fill: primaryColor }), jsx("rect", { x: "2", y: "6", width: "20", height: "14", rx: "2", fill: "white", opacity: "0.08" }), jsx("rect", { x: "14", y: "10", width: "6", height: "6", rx: "1", fill: secondaryColor }), jsx("circle", { cx: "17", cy: "13", r: "1.5", fill: "#10B981" }), jsx("path", { d: "M6 6V4a2 2 0 012-2h8a2 2 0 012 2v2", stroke: "white", strokeWidth: "1" })] })),
15
15
  },
16
16
  });
@@ -28,7 +28,7 @@ const NtdBitcoin = /* @__PURE__ */ createIcon({
28
28
  paths: {
29
29
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsx("path", { d: "M9 7h4.5a2.5 2.5 0 010 5H9V7zM9 12h5a2.5 2.5 0 010 5H9v-5z", fill: "#fff" }), jsx("path", { d: "M10 5v2M14 5v2M10 17v2M14 17v2", stroke: "#fff", strokeWidth: "1.5" })] })),
30
30
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M9 7h4.5a2.5 2.5 0 010 5H9V7zM9 12h5a2.5 2.5 0 010 5H9v-5z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M10 5v2M14 5v2M10 17v2M14 17v2", stroke: primaryColor, strokeWidth: strokeWidth })] })),
31
- 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: "M9 7h4.5a2.5 2.5 0 010 5H9V7zM9 12h5a2.5 2.5 0 010 5H9v-5z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M10 5v2M14 5v2M10 17v2M14 17v2", stroke: primaryColor, strokeWidth: strokeWidth })] })),
31
+ duotone: swapDuotone(({ 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: "M9 7h4.5a2.5 2.5 0 010 5H9V7zM9 12h5a2.5 2.5 0 010 5H9v-5z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M10 5v2M14 5v2M10 17v2M14 17v2", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
32
32
  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("path", { d: "M9 7h4.5a2.5 2.5 0 010 5H9V7zM9 12h5a2.5 2.5 0 010 5H9v-5z", fill: "#fff" }), jsx("path", { d: "M10 5v2M14 5v2M10 17v2M14 17v2", stroke: "#fff", strokeWidth: "1" })] })),
33
33
  },
34
34
  });
@@ -37,7 +37,6 @@ const NtdEthereum = /* @__PURE__ */ createIcon({
37
37
  paths: {
38
38
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2l-8 10 8 5 8-5-8-10z", fill: primaryColor }), jsx("path", { d: "M12 17l-8-5 8 10 8-10-8 5z", fill: accentColor, opacity: accentOpacity })] })),
39
39
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2l-8 10 8 5 8-5-8-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M12 17l-8-5 8 10 8-10-8 5z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M4 12h16", stroke: primaryColor, strokeWidth: strokeWidth * 0.5 })] })),
40
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2l-8 10 8 5 8-5-8-10z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M12 17l-8-5 8 10 8-10-8 5z", fill: secondaryColor, opacity: secondaryOpacity * 0.6 }), jsx("path", { d: "M12 2l-8 10 8 5 8-5-8-10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M12 17l-8-5 8 10 8-10-8 5z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
41
40
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2l-8 10 8 5 8-5-8-10z", fill: primaryColor }), jsx("path", { d: "M12 2l-8 10 8 5 8-5-8-10z", fill: "white", opacity: "0.08" }), jsx("path", { d: "M12 17l-8-5 8 10 8-10-8 5z", fill: secondaryColor })] })),
42
41
  },
43
42
  });
@@ -46,7 +45,6 @@ const NtdNFT = /* @__PURE__ */ createIcon({
46
45
  paths: {
47
46
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "3", fill: primaryColor }), jsx("path", { d: "M7 8v8l3-4v8", stroke: accentColor, strokeWidth: "2", opacity: accentOpacity, fill: "none" }), jsx("path", { d: "M13 8v8M13 8h4M13 12h3", stroke: accentColor, strokeWidth: "2", opacity: accentOpacity }), jsx("circle", { cx: "18", cy: "6", r: "4", fill: accentColor, opacity: accentOpacity }), jsx("path", { d: "M17 6h2M18 5v2", stroke: primaryColor, strokeWidth: "1.5" })] })),
48
47
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M7 8v8l3-4v8", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M13 8v8M13 8h4M13 12h3", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "18", cy: "6", r: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
49
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "3", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M7 8v8l3-4v8", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M13 8v8M13 8h4M13 12h3", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "18", cy: "6", r: "3", fill: primaryColor })] })),
50
48
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "3", fill: primaryColor }), jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "3", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "18", cy: "6", r: "4", fill: secondaryColor }), jsx("path", { d: "M7 8v8l3-4v8", stroke: "white", strokeWidth: "1", opacity: "0.4", fill: "none" }), jsx("path", { d: "M13 8v8M13 8h4M13 12h3", stroke: "white", strokeWidth: "1", opacity: "0.4" }), jsx("path", { d: "M17 6h2M18 5v2", stroke: "white", strokeWidth: "1" })] })),
51
49
  },
52
50
  });
@@ -55,7 +53,6 @@ const NtdToken = /* @__PURE__ */ createIcon({
55
53
  paths: {
56
54
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsx("circle", { cx: "12", cy: "12", r: "6", fill: accentColor, opacity: accentOpacity }), jsx("circle", { cx: "12", cy: "12", r: "2", fill: primaryColor })] })),
57
55
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "12", cy: "12", r: "6", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "12", cy: "12", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
58
- 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("circle", { cx: "12", cy: "12", r: "6", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "12", cy: "12", r: "2", fill: primaryColor })] })),
59
56
  vivid: ({ primaryColor, 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: "6", fill: secondaryColor }), jsx("circle", { cx: "12", cy: "12", r: "2", fill: "#10B981" })] })),
60
57
  },
61
58
  });
@@ -64,7 +61,6 @@ const NtdExchange = /* @__PURE__ */ createIcon({
64
61
  paths: {
65
62
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "7", cy: "7", r: "5", fill: primaryColor }), jsx("circle", { cx: "17", cy: "17", r: "5", fill: primaryColor }), jsx("path", { d: "M11 8l3 4-3 4", stroke: accentColor, strokeWidth: "2", opacity: accentOpacity, fill: "none" }), jsx("path", { d: "M13 16l-3-4 3-4", stroke: accentColor, strokeWidth: "2", opacity: accentOpacity, fill: "none" })] })),
66
63
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "7", cy: "7", r: "5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "17", cy: "17", r: "5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M11 8l3 4-3 4", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M13 16l-3-4 3-4", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
67
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "7", cy: "7", r: "5", fill: secondaryColor, opacity: secondaryOpacity }), jsx("circle", { cx: "17", cy: "17", r: "5", fill: secondaryColor, opacity: secondaryOpacity }), jsx("circle", { cx: "7", cy: "7", r: "5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "17", cy: "17", r: "5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M11 8l3 4-3 4M13 16l-3-4 3-4", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
68
64
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "7", cy: "7", r: "5", fill: primaryColor }), jsx("circle", { cx: "7", cy: "7", r: "5", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "17", cy: "17", r: "5", fill: secondaryColor }), jsx("path", { d: "M11 8l3 4-3 4", stroke: "white", strokeWidth: "1", opacity: "0.4", fill: "none" }), jsx("path", { d: "M13 16l-3-4 3-4", stroke: "white", strokeWidth: "1", opacity: "0.4", fill: "none" })] })),
69
65
  },
70
66
  });
@@ -73,7 +69,6 @@ const NtdDeFi = /* @__PURE__ */ createIcon({
73
69
  paths: {
74
70
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsx("path", { d: "M12 6v12M8 10h8M8 14h8", stroke: accentColor, strokeWidth: "2", opacity: accentOpacity }), jsx("circle", { cx: "8", cy: "10", r: "1.5", fill: accentColor, opacity: accentOpacity }), jsx("circle", { cx: "16", cy: "14", r: "1.5", fill: accentColor, opacity: accentOpacity })] })),
75
71
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M12 6v12M8 10h8M8 14h8", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "8", cy: "10", r: "1.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "16", cy: "14", r: "1.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
76
- 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 6v12M8 10h8M8 14h8", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "8", cy: "10", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "16", cy: "14", r: "1.5", fill: primaryColor })] })),
77
72
  vivid: ({ primaryColor, 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: "8", cy: "10", r: "1.5", fill: secondaryColor }), jsx("circle", { cx: "16", cy: "14", r: "1.5", fill: "#10B981" }), jsx("path", { d: "M12 6v12M8 10h8M8 14h8", stroke: "white", strokeWidth: "1", opacity: "0.35" })] })),
78
73
  },
79
74
  });
@@ -82,7 +77,6 @@ const NtdStaking = /* @__PURE__ */ createIcon({
82
77
  paths: {
83
78
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("ellipse", { cx: "12", cy: "18", rx: "8", ry: "3", fill: primaryColor }), jsx("ellipse", { cx: "12", cy: "14", rx: "8", ry: "3", fill: primaryColor }), jsx("ellipse", { cx: "12", cy: "10", rx: "8", ry: "3", fill: primaryColor }), jsx("ellipse", { cx: "12", cy: "6", rx: "8", ry: "3", fill: accentColor, opacity: accentOpacity })] })),
84
79
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("ellipse", { cx: "12", cy: "18", rx: "8", ry: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("ellipse", { cx: "12", cy: "14", rx: "8", ry: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("ellipse", { cx: "12", cy: "10", rx: "8", ry: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("ellipse", { cx: "12", cy: "6", rx: "8", ry: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M4 6v12M20 6v12", stroke: primaryColor, strokeWidth: strokeWidth })] })),
85
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("ellipse", { cx: "12", cy: "18", rx: "8", ry: "3", fill: secondaryColor, opacity: secondaryOpacity * 0.6 }), jsx("ellipse", { cx: "12", cy: "14", rx: "8", ry: "3", fill: secondaryColor, opacity: secondaryOpacity * 0.7 }), jsx("ellipse", { cx: "12", cy: "10", rx: "8", ry: "3", fill: secondaryColor, opacity: secondaryOpacity * 0.8 }), jsx("ellipse", { cx: "12", cy: "6", rx: "8", ry: "3", fill: secondaryColor, opacity: secondaryOpacity }), jsx("ellipse", { cx: "12", cy: "18", rx: "8", ry: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("ellipse", { cx: "12", cy: "14", rx: "8", ry: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("ellipse", { cx: "12", cy: "10", rx: "8", ry: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("ellipse", { cx: "12", cy: "6", rx: "8", ry: "3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
86
80
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("ellipse", { cx: "12", cy: "18", rx: "8", ry: "3", fill: primaryColor }), jsx("ellipse", { cx: "12", cy: "18", rx: "8", ry: "3", fill: "white", opacity: "0.08" }), jsx("ellipse", { cx: "12", cy: "14", rx: "8", ry: "3", fill: secondaryColor }), jsx("ellipse", { cx: "12", cy: "10", rx: "8", ry: "3", fill: "#10B981" }), jsx("ellipse", { cx: "12", cy: "6", rx: "8", ry: "3", fill: "#F59E0B" })] })),
87
81
  },
88
82
  });
@@ -100,7 +94,6 @@ const NtdLedger = /* @__PURE__ */ createIcon({
100
94
  paths: {
101
95
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: primaryColor }), jsx("rect", { x: "7", y: "6", width: "10", height: "6", rx: "1", fill: accentColor, opacity: accentOpacity }), jsx("circle", { cx: "12", cy: "16", r: "2", fill: accentColor, opacity: accentOpacity })] })),
102
96
  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("rect", { x: "7", y: "6", width: "10", height: "6", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "12", cy: "16", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
103
- 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("rect", { x: "7", y: "6", width: "10", height: "6", rx: "1", fill: primaryColor }), jsx("circle", { cx: "12", cy: "16", r: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
104
97
  vivid: ({ primaryColor, 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.08" }), jsx("rect", { x: "7", y: "6", width: "10", height: "6", rx: "1", fill: secondaryColor }), jsx("circle", { cx: "12", cy: "16", r: "2", fill: "#10B981" })] })),
105
98
  },
106
99
  });
@@ -109,7 +102,6 @@ const NtdGasFee = /* @__PURE__ */ createIcon({
109
102
  paths: {
110
103
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 21V8a2 2 0 012-2h8a2 2 0 012 2v13H4z", fill: primaryColor }), jsx("rect", { x: "6", y: "8", width: "8", height: "4", rx: "1", fill: accentColor, opacity: accentOpacity }), jsx("path", { d: "M16 10h2a2 2 0 012 2v6a1 1 0 01-1 1h-1", stroke: primaryColor, strokeWidth: "2", fill: "none" }), jsx("path", { d: "M18 10V6l2-2", stroke: accentColor, strokeWidth: "2", opacity: accentOpacity, fill: "none" })] })),
111
104
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 21V8a2 2 0 012-2h8a2 2 0 012 2v13H4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "8", width: "8", height: "4", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 10h2a2 2 0 012 2v6a1 1 0 01-1 1h-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M18 10V6l2-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
112
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 21V8a2 2 0 012-2h8a2 2 0 012 2v13H4z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M4 21V8a2 2 0 012-2h8a2 2 0 012 2v13H4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "8", width: "8", height: "4", rx: "1", fill: primaryColor }), jsx("path", { d: "M16 10h2a2 2 0 012 2v6a1 1 0 01-1 1h-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M18 10V6l2-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
113
105
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 21V8a2 2 0 012-2h8a2 2 0 012 2v13H4z", fill: primaryColor }), jsx("path", { d: "M4 21V8a2 2 0 012-2h8a2 2 0 012 2v13H4z", fill: "white", opacity: "0.08" }), jsx("rect", { x: "6", y: "8", width: "8", height: "4", rx: "1", fill: secondaryColor }), jsx("path", { d: "M16 10h2a2 2 0 012 2v6a1 1 0 01-1 1h-1", stroke: "white", strokeWidth: "1", fill: "none" }), jsx("path", { d: "M18 10V6l2-2", stroke: "white", strokeWidth: "1", opacity: "0.4", fill: "none" })] })),
114
106
  },
115
107
  });
@@ -118,7 +110,6 @@ const NtdSmartContract = /* @__PURE__ */ createIcon({
118
110
  paths: {
119
111
  solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("path", { d: "M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8l-6-6z", fill: primaryColor }), jsx("path", { d: "M14 2v6h6", fill: accentColor, opacity: accentOpacity * 0.5 }), jsx("path", { d: "M8 13l2 2 4-4", stroke: accentColor, strokeWidth: "2", opacity: accentOpacity, fill: "none" }), jsx("path", { d: "M8 18h8", stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })] })),
120
112
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8l-6-6z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M14 2v6h6", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 13l2 2 4-4", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 18h8", stroke: primaryColor, strokeWidth: strokeWidth * 0.75 })] })),
121
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8l-6-6z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8l-6-6z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M14 2v6h6", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 13l2 2 4-4", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 18h8", stroke: primaryColor, strokeWidth: strokeWidth * 0.75 })] })),
122
113
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8l-6-6z", fill: primaryColor }), jsx("path", { d: "M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8l-6-6z", fill: "white", opacity: "0.08" }), jsx("path", { d: "M14 2v6h6", fill: secondaryColor }), jsx("path", { d: "M8 13l2 2 4-4", stroke: "white", strokeWidth: "1", opacity: "0.4", fill: "none" }), jsx("path", { d: "M8 18h8", stroke: "white", strokeWidth: "1", opacity: "0.4" })] })),
123
114
  },
124
115
  });
@@ -1,5 +1,6 @@
1
1
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
2
  import { createIcon } from '../createIcon.js';
3
+ import { swapDuotone } from '../iconParts.js';
3
4
 
4
5
  /* ────────────────────────────────────────────────────────────────────────────
5
6
  FOOD ITEMS
@@ -9,7 +10,7 @@ const NtdPizza = /* @__PURE__ */ createIcon({
9
10
  paths: {
10
11
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2a10 10 0 00-10 10l10 10 10-10A10 10 0 0012 2z", fill: primaryColor }), jsx("circle", { cx: "9", cy: "10", r: "1.5", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "14", cy: "8", r: "1.5", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "11", cy: "14", r: "1.5", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "15", cy: "13", r: "1", fill: "white", opacity: "0.5" })] })),
11
12
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2a10 10 0 00-10 10l10 10 10-10A10 10 0 0012 2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "9", cy: "10", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "14", cy: "8", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "11", cy: "14", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "15", cy: "13", r: "1", fill: primaryColor })] })),
12
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2a10 10 0 00-10 10l10 10 10-10A10 10 0 0012 2z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M12 2a10 10 0 00-10 10l10 10 10-10A10 10 0 0012 2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "9", cy: "10", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "14", cy: "8", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "11", cy: "14", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "15", cy: "13", r: "1", fill: primaryColor })] })),
13
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2a10 10 0 00-10 10l10 10 10-10A10 10 0 0012 2z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M12 2a10 10 0 00-10 10l10 10 10-10A10 10 0 0012 2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "9", cy: "10", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "14", cy: "8", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "11", cy: "14", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "15", cy: "13", r: "1", fill: primaryColor })] }))),
13
14
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2a10 10 0 00-10 10l10 10 10-10A10 10 0 0012 2z", fill: primaryColor }), jsx("path", { d: "M12 2a10 10 0 00-10 10l10 10 10-10A10 10 0 0012 2z", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "9", cy: "10", r: "1.5", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "14", cy: "8", r: "1.5", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "11", cy: "14", r: "1.5", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "15", cy: "13", r: "1", fill: "white", opacity: "0.5" })] })),
14
15
  },
15
16
  });
@@ -45,7 +46,7 @@ const NtdTaco = /* @__PURE__ */ createIcon({
45
46
  paths: {
46
47
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M3 14c0-6 4-10 9-10s9 4 9 10c0 2-2 4-9 4s-9-2-9-4z", fill: primaryColor }), jsx("path", { d: "M5 13c0-4 3-7 7-7s7 3 7 7", fill: "white", opacity: "0.3" }), jsx("circle", { cx: "8", cy: "12", r: "1", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "12", cy: "11", r: "1.5", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "16", cy: "12", r: "1", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "10", cy: "14", r: "1", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "14", cy: "14", r: "1", fill: "white", opacity: "0.5" })] })),
47
48
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M3 14c0-6 4-10 9-10s9 4 9 10c0 2-2 4-9 4s-9-2-9-4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M5 13c0-4 3-7 7-7s7 3 7 7", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("circle", { cx: "8", cy: "12", r: "1", fill: primaryColor }), jsx("circle", { cx: "12", cy: "11", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "16", cy: "12", r: "1", fill: primaryColor })] })),
48
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M3 14c0-6 4-10 9-10s9 4 9 10c0 2-2 4-9 4s-9-2-9-4z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M3 14c0-6 4-10 9-10s9 4 9 10c0 2-2 4-9 4s-9-2-9-4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M5 13c0-4 3-7 7-7s7 3 7 7", fill: primaryColor, opacity: "0.3", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "8", cy: "12", r: "1", fill: primaryColor }), jsx("circle", { cx: "12", cy: "11", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "16", cy: "12", r: "1", fill: primaryColor })] })),
49
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M3 14c0-6 4-10 9-10s9 4 9 10c0 2-2 4-9 4s-9-2-9-4z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M3 14c0-6 4-10 9-10s9 4 9 10c0 2-2 4-9 4s-9-2-9-4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M5 13c0-4 3-7 7-7s7 3 7 7", fill: primaryColor, opacity: "0.3", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "8", cy: "12", r: "1", fill: primaryColor }), jsx("circle", { cx: "12", cy: "11", r: "1.5", fill: primaryColor }), jsx("circle", { cx: "16", cy: "12", r: "1", fill: primaryColor })] }))),
49
50
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M3 14c0-6 4-10 9-10s9 4 9 10c0 2-2 4-9 4s-9-2-9-4z", fill: primaryColor }), jsx("path", { d: "M3 14c0-6 4-10 9-10s9 4 9 10c0 2-2 4-9 4s-9-2-9-4z", fill: "white", opacity: "0.08" }), jsx("path", { d: "M5 13c0-4 3-7 7-7s7 3 7 7", fill: "white", opacity: "0.3" }), jsx("circle", { cx: "8", cy: "12", r: "1", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "12", cy: "11", r: "1.5", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "16", cy: "12", r: "1", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "10", cy: "14", r: "1", fill: "white", opacity: "0.5" }), jsx("circle", { cx: "14", cy: "14", r: "1", fill: "white", opacity: "0.5" })] })),
50
51
  },
51
52
  });
@@ -54,10 +55,13 @@ const NtdTaco = /* @__PURE__ */ createIcon({
54
55
  ───────────────────────────────────────────────────────────────────────────── */
55
56
  const NtdCoffee = /* @__PURE__ */ createIcon({
56
57
  displayName: 'NtdCoffee',
58
+ perfectStackX: 12.5,
59
+ perfectStackY: 14,
60
+ perfectStackSize: 0.4,
57
61
  paths: {
58
62
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 8h12a2 2 0 012 2v6a4 4 0 01-4 4H9a4 4 0 01-4-4v-6a2 2 0 012-2z", fill: primaryColor }), jsx("path", { d: "M17 10h1a2 2 0 012 2v1a2 2 0 01-2 2h-1", stroke: primaryColor, strokeWidth: "2", fill: "none" }), jsx("path", { d: "M8 4c0-1 1-2 2-1s2 0 2-1 1-2 2-1", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round" })] })),
59
63
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 8h12a2 2 0 012 2v6a4 4 0 01-4 4H9a4 4 0 01-4-4v-6a2 2 0 012-2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M17 10h1a2 2 0 012 2v1a2 2 0 01-2 2h-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 4c0-1 1-2 2-1s2 0 2-1 1-2 2-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" })] })),
60
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 8h12a2 2 0 012 2v6a4 4 0 01-4 4H9a4 4 0 01-4-4v-6a2 2 0 012-2z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M5 8h12a2 2 0 012 2v6a4 4 0 01-4 4H9a4 4 0 01-4-4v-6a2 2 0 012-2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M17 10h1a2 2 0 012 2v1a2 2 0 01-2 2h-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 4c0-1 1-2 2-1s2 0 2-1 1-2 2-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" })] })),
64
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 8h12a2 2 0 012 2v6a4 4 0 01-4 4H9a4 4 0 01-4-4v-6a2 2 0 012-2z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M5 8h12a2 2 0 012 2v6a4 4 0 01-4 4H9a4 4 0 01-4-4v-6a2 2 0 012-2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M17 10h1a2 2 0 012 2v1a2 2 0 01-2 2h-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 4c0-1 1-2 2-1s2 0 2-1 1-2 2-1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" })] }))),
61
65
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 8h12a2 2 0 012 2v6a4 4 0 01-4 4H9a4 4 0 01-4-4v-6a2 2 0 012-2z", fill: primaryColor }), jsx("path", { d: "M5 8h12a2 2 0 012 2v6a4 4 0 01-4 4H9a4 4 0 01-4-4v-6a2 2 0 012-2z", fill: "white", opacity: "0.1" }), jsx("path", { d: "M17 10h1a2 2 0 012 2v1a2 2 0 01-2 2h-1", stroke: secondaryColor, strokeWidth: "1.8", fill: "none" }), jsx("path", { d: "M8 4c0-1 1-2 2-1s2 0 2-1 1-2 2-1", stroke: "#EF4444", strokeWidth: "1.5", fill: "none", strokeLinecap: "round" })] })),
62
66
  },
63
67
  });
@@ -75,7 +79,7 @@ const NtdBeer = /* @__PURE__ */ createIcon({
75
79
  paths: {
76
80
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "6", width: "12", height: "16", rx: "2", fill: primaryColor }), jsx("path", { d: "M16 9h2a2 2 0 012 2v4a2 2 0 01-2 2h-2", stroke: primaryColor, strokeWidth: "2", fill: "none" }), jsx("path", { d: "M6 6c0-2 2-4 4-2s4 0 4-2", stroke: primaryColor, strokeWidth: "1.5", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 10h6M7 14h5", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", opacity: "0.3" })] })),
77
81
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "6", width: "12", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 9h2a2 2 0 012 2v4a2 2 0 01-2 2h-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M6 6c0-2 2-4 4-2s4 0 4-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 10h6M7 14h5", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
78
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "6", width: "12", height: "16", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "4", y: "6", width: "12", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 9h2a2 2 0 012 2v4a2 2 0 01-2 2h-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M6 6c0-2 2-4 4-2s4 0 4-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 10h6M7 14h5", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
82
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "6", width: "12", height: "16", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "4", y: "6", width: "12", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M16 9h2a2 2 0 012 2v4a2 2 0 01-2 2h-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M6 6c0-2 2-4 4-2s4 0 4-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 10h6M7 14h5", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] }))),
79
83
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "6", width: "12", height: "16", rx: "2", fill: primaryColor }), jsx("rect", { x: "4", y: "6", width: "12", height: "16", rx: "2", fill: "white", opacity: "0.1" }), jsx("path", { d: "M16 9h2a2 2 0 012 2v4a2 2 0 01-2 2h-2", stroke: secondaryColor, strokeWidth: "1.8", fill: "none" }), jsx("path", { d: "M6 6c0-2 2-4 4-2s4 0 4-2", stroke: "#EF4444", strokeWidth: "1.5", fill: "none", strokeLinecap: "round" }), jsx("path", { d: "M7 10h6M7 14h5", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", opacity: "0.3" })] })),
80
84
  },
81
85
  });
@@ -93,7 +97,7 @@ const NtdSoda = /* @__PURE__ */ createIcon({
93
97
  paths: {
94
98
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8 4h8l1 4H7l1-4z", fill: primaryColor }), jsx("rect", { x: "6", y: "8", width: "12", height: "14", rx: "2", fill: primaryColor }), jsx("path", { d: "M10 2v2M14 2v2", stroke: primaryColor, strokeWidth: "2", strokeLinecap: "round" }), jsx("rect", { x: "9", y: "11", width: "6", height: "3", rx: "1", fill: "white", opacity: "0.3" })] })),
95
99
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8 4h8l1 4H7l1-4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "8", width: "12", height: "14", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M10 2v2M14 2v2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("rect", { x: "9", y: "11", width: "6", height: "3", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
96
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8 4h8l1 4H7l1-4z", fill: primaryColor }), jsx("rect", { x: "6", y: "8", width: "12", height: "14", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "6", y: "8", width: "12", height: "14", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M10 2v2M14 2v2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("rect", { x: "9", y: "11", width: "6", height: "3", rx: "1", fill: primaryColor, opacity: "0.5" })] })),
100
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8 4h8l1 4H7l1-4z", fill: primaryColor }), jsx("rect", { x: "6", y: "8", width: "12", height: "14", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "6", y: "8", width: "12", height: "14", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M10 2v2M14 2v2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("rect", { x: "9", y: "11", width: "6", height: "3", rx: "1", fill: primaryColor, opacity: "0.5" })] }))),
97
101
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8 4h8l1 4H7l1-4z", fill: primaryColor }), jsx("path", { d: "M8 4h8l1 4H7l1-4z", fill: "white", opacity: "0.08" }), jsx("rect", { x: "6", y: "8", width: "12", height: "14", rx: "2", fill: secondaryColor }), jsx("rect", { x: "9", y: "11", width: "6", height: "3", rx: "1", fill: "white", opacity: "0.3" }), jsx("path", { d: "M10 2v2M14 2v2", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })] })),
98
102
  },
99
103
  });
@@ -105,7 +109,7 @@ const NtdChefHat = /* @__PURE__ */ createIcon({
105
109
  paths: {
106
110
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z", fill: primaryColor }), jsx("rect", { x: "6", y: "16", width: "12", height: "6", rx: "1", fill: primaryColor }), jsx("path", { d: "M8 14v6M12 14v6M16 14v6", stroke: "white", strokeWidth: "1", opacity: "0.3" })] })),
107
111
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "16", width: "12", height: "6", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M8 14v8M12 14v8M16 14v8", stroke: primaryColor, strokeWidth: "1" })] })),
108
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "16", width: "12", height: "6", rx: "1", fill: primaryColor })] })),
112
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "16", width: "12", height: "6", rx: "1", fill: primaryColor })] }))),
109
113
  vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z", fill: primaryColor }), jsx("path", { d: "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z", fill: "white", opacity: "0.08" }), jsx("rect", { x: "6", y: "16", width: "12", height: "6", rx: "1", fill: secondaryColor }), jsx("path", { d: "M8 14v6M12 14v6M16 14v6", stroke: "white", strokeWidth: "1", opacity: "0.4" })] })),
110
114
  },
111
115
  });
@@ -132,7 +136,7 @@ const NtdRecipe = /* @__PURE__ */ createIcon({
132
136
  paths: {
133
137
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", fill: primaryColor }), jsx("rect", { x: "7", y: "5", width: "6", height: "6", rx: "1", fill: "white", opacity: "0.3" }), jsx("path", { d: "M7 14h10M7 17h8", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" })] })),
134
138
  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("rect", { x: "7", y: "5", width: "6", height: "6", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M7 14h10M7 17h8", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
135
- 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("rect", { x: "7", y: "5", width: "6", height: "6", rx: "1", fill: primaryColor, opacity: "0.5", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("path", { d: "M7 14h10M7 17h8", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
139
+ duotone: swapDuotone(({ 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("rect", { x: "7", y: "5", width: "6", height: "6", rx: "1", fill: primaryColor, opacity: "0.5", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("path", { d: "M7 14h10M7 17h8", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] }))),
136
140
  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.08" }), jsx("rect", { x: "7", y: "5", width: "6", height: "6", rx: "1", fill: "white", opacity: "0.3" }), jsx("path", { d: "M7 14h10M7 17h8", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })] })),
137
141
  },
138
142
  });
@@ -150,7 +154,7 @@ const NtdRestaurant = /* @__PURE__ */ createIcon({
150
154
  paths: {
151
155
  solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2L2 8v12a2 2 0 002 2h16a2 2 0 002-2V8L12 2z", fill: primaryColor }), jsx("rect", { x: "8", y: "12", width: "8", height: "10", fill: "white", opacity: "0.3" }), jsx("path", { d: "M10 15h4M10 18h4", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" }), jsx("text", { x: "12", y: "9", textAnchor: "middle", fill: "white", fontSize: "4", fontWeight: "bold", fontFamily: "system-ui", children: "OPEN" })] })),
152
156
  outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2L2 8v12a2 2 0 002 2h16a2 2 0 002-2V8L12 2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinejoin: "round" }), jsx("rect", { x: "8", y: "12", width: "8", height: "10", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M10 15h4M10 18h4", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
153
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2L2 8v12a2 2 0 002 2h16a2 2 0 002-2V8L12 2z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M12 2L2 8v12a2 2 0 002 2h16a2 2 0 002-2V8L12 2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinejoin: "round" }), jsx("rect", { x: "8", y: "12", width: "8", height: "10", fill: primaryColor, opacity: "0.3", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("path", { d: "M10 15h4M10 18h4", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] })),
157
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2L2 8v12a2 2 0 002 2h16a2 2 0 002-2V8L12 2z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M12 2L2 8v12a2 2 0 002 2h16a2 2 0 002-2V8L12 2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", strokeLinejoin: "round" }), jsx("rect", { x: "8", y: "12", width: "8", height: "10", fill: primaryColor, opacity: "0.3", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("path", { d: "M10 15h4M10 18h4", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" })] }))),
154
158
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2L2 8v12a2 2 0 002 2h16a2 2 0 002-2V8L12 2z", fill: primaryColor }), jsx("path", { d: "M12 2L2 8v12a2 2 0 002 2h16a2 2 0 002-2V8L12 2z", fill: "white", opacity: "0.08" }), jsx("rect", { x: "8", y: "12", width: "8", height: "10", fill: "white", opacity: "0.3" }), jsx("path", { d: "M10 15h4M10 18h4", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })] })),
155
159
  },
156
160
  });