@nice2dev/icons 1.3.6 → 1.3.8

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 (88) hide show
  1. package/CHANGELOG.md +88 -0
  2. package/README.md +37 -17
  3. package/dist/cjs/NiceIconStacker.js +19 -5
  4. package/dist/cjs/createIcon.js +19 -6
  5. package/dist/cjs/iconParts.js +24 -2
  6. package/dist/cjs/iconStack.js +7 -5
  7. package/dist/cjs/icons/accessibility.js +9 -8
  8. package/dist/cjs/icons/actions.js +42 -32
  9. package/dist/cjs/icons/ai.js +12 -11
  10. package/dist/cjs/icons/brand.js +2 -2
  11. package/dist/cjs/icons/business.js +37 -29
  12. package/dist/cjs/icons/devtech.js +17 -15
  13. package/dist/cjs/icons/ecommerce.js +19 -14
  14. package/dist/cjs/icons/education.js +30 -25
  15. package/dist/cjs/icons/files.js +64 -32
  16. package/dist/cjs/icons/fintech.js +2 -11
  17. package/dist/cjs/icons/food.js +12 -8
  18. package/dist/cjs/icons/fun.js +11 -11
  19. package/dist/cjs/icons/gaming.js +20 -13
  20. package/dist/cjs/icons/health.js +38 -25
  21. package/dist/cjs/icons/index.js +1 -0
  22. package/dist/cjs/icons/input.js +31 -21
  23. package/dist/cjs/icons/legal.js +11 -11
  24. package/dist/cjs/icons/media.js +24 -15
  25. package/dist/cjs/icons/navigation.js +16 -13
  26. package/dist/cjs/icons/omniverk.js +2 -7
  27. package/dist/cjs/icons/realestate.js +14 -14
  28. package/dist/cjs/icons/saas.js +0 -10
  29. package/dist/cjs/icons/science.js +12 -12
  30. package/dist/cjs/icons/shapes.js +20 -17
  31. package/dist/cjs/icons/smarthome.js +0 -11
  32. package/dist/cjs/icons/social.js +7 -6
  33. package/dist/cjs/icons/sports.js +5 -6
  34. package/dist/cjs/icons/sustainability.js +12 -11
  35. package/dist/cjs/icons/travel.js +13 -13
  36. package/dist/cjs/icons/ui.js +60 -35
  37. package/dist/cjs/icons/weather.js +12 -16
  38. package/dist/cjs/index.js +1 -0
  39. package/dist/cjs/resolver.js +1 -0
  40. package/dist/cjs/rsc.js +1 -1
  41. package/dist/cjs/stacking.js +49 -11
  42. package/dist/esm/NiceIconStacker.js +22 -8
  43. package/dist/esm/createIcon.js +20 -7
  44. package/dist/esm/iconParts.js +24 -3
  45. package/dist/esm/iconStack.js +7 -5
  46. package/dist/esm/icons/accessibility.js +9 -8
  47. package/dist/esm/icons/actions.js +43 -33
  48. package/dist/esm/icons/ai.js +12 -11
  49. package/dist/esm/icons/brand.js +2 -2
  50. package/dist/esm/icons/business.js +38 -30
  51. package/dist/esm/icons/devtech.js +17 -15
  52. package/dist/esm/icons/ecommerce.js +19 -14
  53. package/dist/esm/icons/education.js +30 -25
  54. package/dist/esm/icons/files.js +65 -33
  55. package/dist/esm/icons/fintech.js +2 -11
  56. package/dist/esm/icons/food.js +12 -8
  57. package/dist/esm/icons/fun.js +11 -11
  58. package/dist/esm/icons/gaming.js +21 -14
  59. package/dist/esm/icons/health.js +38 -25
  60. package/dist/esm/icons/index.js +1 -1
  61. package/dist/esm/icons/input.js +31 -21
  62. package/dist/esm/icons/legal.js +12 -12
  63. package/dist/esm/icons/media.js +25 -16
  64. package/dist/esm/icons/navigation.js +16 -13
  65. package/dist/esm/icons/omniverk.js +2 -7
  66. package/dist/esm/icons/realestate.js +15 -15
  67. package/dist/esm/icons/saas.js +0 -10
  68. package/dist/esm/icons/science.js +12 -12
  69. package/dist/esm/icons/shapes.js +20 -17
  70. package/dist/esm/icons/smarthome.js +0 -11
  71. package/dist/esm/icons/social.js +8 -7
  72. package/dist/esm/icons/sports.js +6 -7
  73. package/dist/esm/icons/sustainability.js +12 -11
  74. package/dist/esm/icons/travel.js +14 -14
  75. package/dist/esm/icons/ui.js +61 -37
  76. package/dist/esm/icons/weather.js +13 -17
  77. package/dist/esm/index.js +1 -1
  78. package/dist/esm/resolver.js +1 -0
  79. package/dist/esm/rsc.js +1 -1
  80. package/dist/esm/stacking.js +46 -12
  81. package/dist/types/createIcon.d.ts +16 -2
  82. package/dist/types/iconParts.d.ts +8 -2
  83. package/dist/types/iconStack.d.ts +18 -3
  84. package/dist/types/icons/index.d.ts +1 -1
  85. package/dist/types/icons/ui.d.ts +1 -0
  86. package/dist/types/stacking.d.ts +30 -5
  87. package/dist/types/types.d.ts +22 -8
  88. 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,30 +197,40 @@ 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
  });
190
204
  // NtdMonitor: the neck and the base are twice the stroke width in every variant but `outline`, and
191
205
  // the base is 30% wider — 13 across with its caps (it was 10); it sits at 21.5 so the heavier line
192
- // stays in the box. Vivid: the stand secondary (it had a fixed #3B82F6 neck).
206
+ // stays in the box. Vivid: the stand secondary (it had a fixed #3B82F6 neck). The stand is clipped
207
+ // to below the screen's bottom edge: the neck's round cap reached up over the screen, which showed
208
+ // through duotone's see-through screen.
193
209
  const MONITOR_SCREEN = { x: 2, y: 3, width: 20, height: 14, rx: 2 };
194
210
  /** Neck and base for a line twice the stroke width: base 9 long + 2 × 2 of cap = 13. */
195
211
  const MONITOR_STAND = 'M12 17v4.5M7.5 21.5h9';
196
212
  /** The outline's neck and base, at the stroke width: base 11 long + 2 × 1 of cap = 13. */
197
213
  const MONITOR_STAND_LINE = 'M12 17v4M6.5 21h11';
214
+ /** The stand, drawn only below the screen's bottom edge (y 17). */
215
+ function monitorStand(uid, d, color, width) {
216
+ return within(uid, 'stand', jsx("rect", { x: "0", y: "17", width: "24", height: "7" }), jsx("path", { d: d, stroke: color, strokeWidth: width }));
217
+ }
198
218
  const NtdMonitor = /* @__PURE__ */ createIcon({
199
219
  displayName: 'NtdMonitor',
220
+ perfectStackX: 12,
221
+ perfectStackY: 10,
222
+ perfectStackSize: 0.45,
200
223
  paths: {
201
- solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: primaryColor }), jsx("path", { d: MONITOR_STAND, stroke: primaryColor, strokeWidth: strokeWidth * 2 })] })),
202
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: MONITOR_STAND_LINE, stroke: primaryColor, strokeWidth: strokeWidth })] })),
203
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { ...MONITOR_SCREEN, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: MONITOR_STAND, stroke: primaryColor, strokeWidth: strokeWidth * 2 })] })),
204
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: primaryColor }), jsx("path", { d: MONITOR_STAND, stroke: secondaryColor, strokeWidth: strokeWidth * 2 })] })),
224
+ solid: ({ primaryColor, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: primaryColor }), monitorStand(uid, MONITOR_STAND, primaryColor, strokeWidth * 2)] })),
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)] })),
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)] }))),
227
+ vivid: ({ primaryColor, secondaryColor, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("rect", { ...MONITOR_SCREEN, fill: primaryColor }), monitorStand(uid, MONITOR_STAND, secondaryColor, strokeWidth * 2)] })),
205
228
  },
206
229
  });
207
230
  // NtdCpu: filled, the body and its pins primary and the die in the accent colour (the body was a
208
231
  // fixed 15% tint). The pins are twice the stroke width and short (2.5 → 4 at the top, and so on)
209
- // 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:
210
234
  // the pins and the die secondary around an accent core.
211
235
  const CPU_BODY = { x: 4, y: 4, width: 16, height: 16, rx: 2 };
212
236
  const CPU_DIE = { x: 8.5, y: 8.5, width: 7, height: 7, rx: 1.2 };
@@ -216,7 +240,7 @@ const NtdCpu = /* @__PURE__ */ createIcon({
216
240
  paths: {
217
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 })] })),
218
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 })] })),
219
- 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 })] }))),
220
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 })] })),
221
245
  },
222
246
  });
@@ -248,6 +272,9 @@ function awardFilled({ primaryColor, secondaryColor, strokeWidth }, ribbonEdge)
248
272
  }
249
273
  const NtdAward = /* @__PURE__ */ createIcon({
250
274
  displayName: 'NtdAward',
275
+ perfectStackX: 12,
276
+ perfectStackY: 8,
277
+ perfectStackSize: 0.4,
251
278
  paths: {
252
279
  solid: (props) => awardFilled(props, props.primaryColor),
253
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" })] })),
@@ -257,10 +284,13 @@ const NtdAward = /* @__PURE__ */ createIcon({
257
284
  });
258
285
  const NtdCoffee = /* @__PURE__ */ createIcon({
259
286
  displayName: 'NtdCoffee',
287
+ perfectStackX: 10,
288
+ perfectStackY: 14.5,
289
+ perfectStackSize: 0.4,
260
290
  paths: {
261
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 })] })),
262
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 })] })),
263
- 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 })] }))),
264
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" })] })),
265
295
  },
266
296
  });
@@ -297,12 +327,15 @@ const NtdCreditCard = /* @__PURE__ */ createIcon({
297
327
  vivid: ({ primaryColor, accentColor, accentOpacity, uid }) => (jsxs(Fragment, { children: [jsx("rect", { ...CARD_BODY, fill: primaryColor }), jsx("rect", { ...CARD_BODY, fill: "white", opacity: "0.1" }), within(uid, 'stripe', jsx("rect", { ...CARD_BODY }), jsx("rect", { ...CARD_STRIPE, fill: "black", opacity: "0.35" })), jsx("rect", { ...CARD_SIGNATURE, fill: accentColor, opacity: accentOpacity }), jsx("rect", { ...CARD_CVV, fill: accentColor, opacity: accentOpacity })] })),
298
328
  },
299
329
  });
300
- // NtdPieChart: filled, two sectors of one pie (r 10) pulled 0.7 apart along the small one's
301
- // diagonal — a gap between them. The larger is the three-quarter sector from the centre; it was a
302
- // segment cut off by a chord, which read as an odd shape. The outline keeps its open arc and the
303
- // slice. Duotone, fills only: the larger sector secondary, the slice primary; vivid the other way.
304
- const PIE_REST = 'M11.3 12.7V2.7A10 10 0 1 0 21.3 12.7Z';
305
- const PIE_SLICE = 'M12.7 11.3V1.3A10 10 0 0 1 22.7 11.3Z';
330
+ // NtdPieChart: filled, two sectors of one pie (r 10) pulled 1 apart along the small one's middle
331
+ // — a gap between them. The larger is the three-quarter sector from the centre; it was a segment
332
+ // cut off by a chord, which read as an odd shape. The whole chart is turned 45° clockwise, so the
333
+ // slice points right (it filled the top-right quarter). The outline keeps its open arc and the
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);
336
+ // vivid the other way.
337
+ const PIE_REST = 'M11 12L18.07 4.93A10 10 0 1 0 18.07 19.07Z';
338
+ const PIE_SLICE = 'M13 12L20.07 4.93A10 10 0 0 1 20.07 19.07Z';
306
339
  function pieFilled(rest, slice) {
307
340
  return (jsxs(Fragment, { children: [jsx("path", { d: PIE_REST, fill: rest }), jsx("path", { d: PIE_SLICE, fill: slice })] }));
308
341
  }
@@ -310,8 +343,8 @@ const NtdPieChart = /* @__PURE__ */ createIcon({
310
343
  displayName: 'NtdPieChart',
311
344
  paths: {
312
345
  solid: ({ primaryColor }) => pieFilled(primaryColor, primaryColor),
313
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M21.21 15.89A10 10 0 118 2.83", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M22 12A10 10 0 0012 2v10h10z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
314
- duotone: ({ primaryColor, secondaryColor }) => pieFilled(secondaryColor, primaryColor),
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" })] })),
347
+ duotone: swapDuotone(({ primaryColor, secondaryColor }) => pieFilled(secondaryColor, primaryColor)),
315
348
  vivid: ({ primaryColor, secondaryColor }) => pieFilled(primaryColor, secondaryColor),
316
349
  },
317
350
  });
@@ -329,7 +362,7 @@ const NtdActivity = /* @__PURE__ */ createIcon({
329
362
  paths: {
330
363
  solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: strokeWidth })),
331
364
  outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: strokeWidth })),
332
- 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 })] }))),
333
366
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsx(Fragment, { children: jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: "2.2" }) })),
334
367
  },
335
368
  });
@@ -347,7 +380,6 @@ const NtdTruck = /* @__PURE__ */ createIcon({
347
380
  paths: {
348
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 })] })),
349
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" })] })),
350
- 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 })] })),
351
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" })] })),
352
384
  },
353
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
  });