@nice2dev/icons 1.3.15 → 1.3.16

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 (140) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/cjs/NiceDesktopIconExporter.js +688 -599
  3. package/dist/cjs/NiceFaviconGenerator.js +603 -417
  4. package/dist/cjs/NiceIconPicker.js +788 -508
  5. package/dist/cjs/NiceIconPreview.js +246 -188
  6. package/dist/cjs/NiceIconSetCreator.js +683 -552
  7. package/dist/cjs/NiceIconStacker.js +547 -171
  8. package/dist/cjs/NiceIconValue.js +27 -35
  9. package/dist/cjs/NtdIconBadge.js +384 -360
  10. package/dist/cjs/NtdIconMorph.js +419 -354
  11. package/dist/cjs/NtdStateMorph.js +150 -147
  12. package/dist/cjs/advancedIconSearch.js +373 -510
  13. package/dist/cjs/animationControls.js +518 -642
  14. package/dist/cjs/client.js +12 -15
  15. package/dist/cjs/createIcon.js +349 -251
  16. package/dist/cjs/design-tokens.js +324 -390
  17. package/dist/cjs/figmaExport.js +162 -257
  18. package/dist/cjs/figmaSync.js +234 -316
  19. package/dist/cjs/headless-ui.js +240 -368
  20. package/dist/cjs/iconAnalytics.js +337 -393
  21. package/dist/cjs/iconHtml.js +64 -86
  22. package/dist/cjs/iconMetadata.js +392 -472
  23. package/dist/cjs/iconParts.js +120 -90
  24. package/dist/cjs/iconStack.js +136 -155
  25. package/dist/cjs/iconStyles.js +1609 -504
  26. package/dist/cjs/iconValue.js +359 -430
  27. package/dist/cjs/icons/accessibility.js +1119 -134
  28. package/dist/cjs/icons/actions.js +1290 -330
  29. package/dist/cjs/icons/ai.js +1424 -144
  30. package/dist/cjs/icons/brand.js +1344 -172
  31. package/dist/cjs/icons/business.js +903 -193
  32. package/dist/cjs/icons/devtech.js +1656 -227
  33. package/dist/cjs/icons/ecommerce.js +802 -111
  34. package/dist/cjs/icons/education.js +1345 -199
  35. package/dist/cjs/icons/files.js +1597 -328
  36. package/dist/cjs/icons/fintech.js +793 -104
  37. package/dist/cjs/icons/food.js +1507 -153
  38. package/dist/cjs/icons/fun.js +786 -109
  39. package/dist/cjs/icons/gaming.js +916 -170
  40. package/dist/cjs/icons/health.js +623 -112
  41. package/dist/cjs/icons/index.js +32 -35
  42. package/dist/cjs/icons/input.js +282 -83
  43. package/dist/cjs/icons/legal.js +1065 -122
  44. package/dist/cjs/icons/media.js +1061 -267
  45. package/dist/cjs/icons/navigation.js +387 -122
  46. package/dist/cjs/icons/omniverk.js +747 -90
  47. package/dist/cjs/icons/realestate.js +1520 -193
  48. package/dist/cjs/icons/saas.js +867 -98
  49. package/dist/cjs/icons/science.js +1451 -202
  50. package/dist/cjs/icons/shapes.js +1316 -308
  51. package/dist/cjs/icons/smarthome.js +786 -90
  52. package/dist/cjs/icons/social.js +591 -59
  53. package/dist/cjs/icons/sports.js +1225 -133
  54. package/dist/cjs/icons/sustainability.js +1211 -139
  55. package/dist/cjs/icons/travel.js +1470 -148
  56. package/dist/cjs/icons/ui.js +1508 -315
  57. package/dist/cjs/icons/weather.js +1160 -173
  58. package/dist/cjs/index.js +566 -568
  59. package/dist/cjs/lottieIntegration.js +261 -266
  60. package/dist/cjs/nicetodev-icons.css +1 -1
  61. package/dist/cjs/particleEffects.js +270 -251
  62. package/dist/cjs/resolver.js +229 -284
  63. package/dist/cjs/rsc.js +175 -193
  64. package/dist/cjs/sharpen.js +73 -130
  65. package/dist/cjs/smilAnimations.js +371 -165
  66. package/dist/cjs/stacking.js +87 -122
  67. package/dist/cjs/tailwind-plugin.js +280 -320
  68. package/dist/cjs/types.js +46 -72
  69. package/dist/cjs/utilities.js +163 -324
  70. package/dist/cjs/variantProps.js +12 -52
  71. package/dist/esm/NiceDesktopIconExporter.js +671 -598
  72. package/dist/esm/NiceFaviconGenerator.js +583 -416
  73. package/dist/esm/NiceIconPicker.js +789 -507
  74. package/dist/esm/NiceIconPreview.js +247 -187
  75. package/dist/esm/NiceIconSetCreator.js +685 -551
  76. package/dist/esm/NiceIconStacker.js +549 -170
  77. package/dist/esm/NiceIconValue.js +29 -34
  78. package/dist/esm/NtdIconBadge.js +388 -359
  79. package/dist/esm/NtdIconMorph.js +423 -353
  80. package/dist/esm/NtdStateMorph.js +152 -146
  81. package/dist/esm/advancedIconSearch.js +391 -509
  82. package/dist/esm/animationControls.js +527 -641
  83. package/dist/esm/client.js +48 -10
  84. package/dist/esm/createIcon.js +350 -250
  85. package/dist/esm/design-tokens.js +334 -387
  86. package/dist/esm/figmaExport.js +170 -256
  87. package/dist/esm/figmaSync.js +237 -315
  88. package/dist/esm/headless-ui.js +254 -365
  89. package/dist/esm/iconAnalytics.js +342 -392
  90. package/dist/esm/iconHtml.js +67 -85
  91. package/dist/esm/iconMetadata.js +404 -471
  92. package/dist/esm/iconParts.js +125 -89
  93. package/dist/esm/iconStack.js +145 -154
  94. package/dist/esm/iconStyles.js +1620 -503
  95. package/dist/esm/iconValue.js +361 -429
  96. package/dist/esm/icons/accessibility.js +1133 -133
  97. package/dist/esm/icons/actions.js +1320 -329
  98. package/dist/esm/icons/ai.js +1441 -143
  99. package/dist/esm/icons/brand.js +1351 -171
  100. package/dist/esm/icons/business.js +931 -201
  101. package/dist/esm/icons/devtech.js +1687 -226
  102. package/dist/esm/icons/ecommerce.js +816 -110
  103. package/dist/esm/icons/education.js +1364 -198
  104. package/dist/esm/icons/files.js +1628 -327
  105. package/dist/esm/icons/fintech.js +807 -103
  106. package/dist/esm/icons/food.js +1524 -152
  107. package/dist/esm/icons/fun.js +801 -108
  108. package/dist/esm/icons/gaming.js +933 -169
  109. package/dist/esm/icons/health.js +636 -111
  110. package/dist/esm/icons/index.js +596 -32
  111. package/dist/esm/icons/input.js +326 -82
  112. package/dist/esm/icons/legal.js +1079 -121
  113. package/dist/esm/icons/media.js +1086 -266
  114. package/dist/esm/icons/navigation.js +401 -121
  115. package/dist/esm/icons/omniverk.js +759 -89
  116. package/dist/esm/icons/realestate.js +1544 -198
  117. package/dist/esm/icons/saas.js +880 -97
  118. package/dist/esm/icons/science.js +1477 -208
  119. package/dist/esm/icons/shapes.js +1343 -307
  120. package/dist/esm/icons/smarthome.js +799 -89
  121. package/dist/esm/icons/social.js +599 -58
  122. package/dist/esm/icons/sports.js +1240 -132
  123. package/dist/esm/icons/sustainability.js +1226 -138
  124. package/dist/esm/icons/travel.js +1486 -147
  125. package/dist/esm/icons/ui.js +1540 -314
  126. package/dist/esm/icons/weather.js +1181 -172
  127. package/dist/esm/index.js +756 -58
  128. package/dist/esm/lottieIntegration.js +264 -265
  129. package/dist/esm/nicetodev-icons.css +1 -1
  130. package/dist/esm/particleEffects.js +271 -250
  131. package/dist/esm/resolver.js +231 -283
  132. package/dist/esm/rsc.js +182 -192
  133. package/dist/esm/sharpen.js +78 -129
  134. package/dist/esm/smilAnimations.js +376 -164
  135. package/dist/esm/stacking.js +99 -121
  136. package/dist/esm/tailwind-plugin.js +282 -319
  137. package/dist/esm/types.js +50 -71
  138. package/dist/esm/utilities.js +177 -321
  139. package/dist/esm/variantProps.js +23 -52
  140. package/package.json +15 -22
@@ -1,396 +1,1387 @@
1
- import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
- import { createIcon } from '../createIcon.js';
3
- import { swapDuotone, within, detailColor } from '../iconParts.js';
4
-
5
- /** The magnifier's lens (r 8 about 11,11) and its handle. */
6
- const LENS = 'M11 19a8 8 0 100-16 8 8 0 000 16z';
7
- const LENS_HANDLE = 'M21 21l-4.35-4.35';
8
- /**
9
- * The magnifier of NtdSearch, NtdZoomIn and NtdZoomOut, so the three share one lens and handle;
10
- * `glyph` is drawn inside the lens. A line glyph: twice the stroke width in every variant but
11
- * `outline`. Duotone and vivid draw the handle and the glyph in secondary; duotone fills the lens
12
- * primary under them (1.3.8: the larger area primary — it was a secondary tint under primary lines).
13
- */
14
- function lensIcon(displayName, glyph = '') {
15
- return createIcon({
16
- displayName,
17
- paths: {
18
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: `${LENS_HANDLE}${LENS}${glyph}`, stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })),
19
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: `${LENS_HANDLE}${LENS}${glyph}`, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
20
- duotone: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: LENS, fill: primaryColor, stroke: primaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: `${LENS_HANDLE}${glyph}`, stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" })] })),
21
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: LENS, stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: `${LENS_HANDLE}${glyph}`, stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" })] })),
22
- },
23
- });
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { createIcon } from "../createIcon.js";
3
+ import { within, detailColor, swapDuotone } from "../iconParts.js";
4
+ const LENS = "M11 19a8 8 0 100-16 8 8 0 000 16z";
5
+ const LENS_HANDLE = "M21 21l-4.35-4.35";
6
+ function lensIcon(displayName, glyph = "") {
7
+ return createIcon({
8
+ displayName,
9
+ paths: {
10
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
11
+ "path",
12
+ {
13
+ d: `${LENS_HANDLE}${LENS}${glyph}`,
14
+ stroke: primaryColor,
15
+ strokeWidth: strokeWidth * 2,
16
+ fill: "none"
17
+ }
18
+ ),
19
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
20
+ "path",
21
+ {
22
+ d: `${LENS_HANDLE}${LENS}${glyph}`,
23
+ stroke: primaryColor,
24
+ strokeWidth,
25
+ fill: "none"
26
+ }
27
+ ),
28
+ duotone: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
29
+ /* @__PURE__ */ jsx("path", { d: LENS, fill: primaryColor, stroke: primaryColor, strokeWidth: strokeWidth * 2 }),
30
+ /* @__PURE__ */ jsx(
31
+ "path",
32
+ {
33
+ d: `${LENS_HANDLE}${glyph}`,
34
+ stroke: secondaryColor,
35
+ strokeWidth: strokeWidth * 2,
36
+ fill: "none"
37
+ }
38
+ )
39
+ ] }),
40
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
41
+ /* @__PURE__ */ jsx("path", { d: LENS, stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }),
42
+ /* @__PURE__ */ jsx(
43
+ "path",
44
+ {
45
+ d: `${LENS_HANDLE}${glyph}`,
46
+ stroke: secondaryColor,
47
+ strokeWidth: strokeWidth * 2,
48
+ fill: "none"
49
+ }
50
+ )
51
+ ] })
52
+ }
53
+ });
24
54
  }
25
- const NtdSearch = /* @__PURE__ */ lensIcon('NtdSearch');
26
- const EDIT_PENCIL = 'M17 3a2.828 2.828 0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z';
55
+ const NtdSearch = /* @__PURE__ */ lensIcon("NtdSearch");
56
+ const EDIT_PENCIL = "M17 3a2.828 2.828 0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z";
27
57
  const NtdEdit = /* @__PURE__ */ createIcon({
28
- displayName: 'NtdEdit',
29
- paths: {
30
- // The band is a cut across the pencil: kept inside it, its ends meet the edges flush (its
31
- // round caps stuck out of both sides).
32
- solid: ({ primaryColor, accentColor, accentOpacity, uid }) => (jsxs(Fragment, { children: [jsx("path", { d: EDIT_PENCIL, fill: primaryColor }), within(uid, 'band', jsx("path", { d: EDIT_PENCIL }), jsx("path", { d: "M15 5l4 4", stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity }))] })),
33
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M17 3a2.828 2.828 0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M15 5l4 4", stroke: primaryColor, strokeWidth: strokeWidth })] })),
34
- vivid: ({ primaryColor, secondaryColor, uid }) => (jsxs(Fragment, { children: [jsx("path", { d: EDIT_PENCIL, fill: primaryColor }), jsx("path", { d: EDIT_PENCIL, fill: "white", opacity: "0.1" }), within(uid, 'band', jsx("path", { d: EDIT_PENCIL }), jsx("path", { d: "M15 5l4 4", stroke: secondaryColor, strokeWidth: "1.8" }))] })),
35
- },
58
+ displayName: "NtdEdit",
59
+ paths: {
60
+ // The band is a cut across the pencil: kept inside it, its ends meet the edges flush (its
61
+ // round caps stuck out of both sides).
62
+ solid: ({ primaryColor, accentColor, accentOpacity, uid }) => /* @__PURE__ */ jsxs(Fragment, { children: [
63
+ /* @__PURE__ */ jsx("path", { d: EDIT_PENCIL, fill: primaryColor }),
64
+ within(
65
+ uid,
66
+ "band",
67
+ /* @__PURE__ */ jsx("path", { d: EDIT_PENCIL }),
68
+ /* @__PURE__ */ jsx("path", { d: "M15 5l4 4", stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
69
+ )
70
+ ] }),
71
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
72
+ /* @__PURE__ */ jsx(
73
+ "path",
74
+ {
75
+ d: "M17 3a2.828 2.828 0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z",
76
+ stroke: primaryColor,
77
+ strokeWidth,
78
+ fill: "none"
79
+ }
80
+ ),
81
+ /* @__PURE__ */ jsx("path", { d: "M15 5l4 4", stroke: primaryColor, strokeWidth })
82
+ ] }),
83
+ vivid: ({ primaryColor, secondaryColor, uid }) => /* @__PURE__ */ jsxs(Fragment, { children: [
84
+ /* @__PURE__ */ jsx("path", { d: EDIT_PENCIL, fill: primaryColor }),
85
+ /* @__PURE__ */ jsx("path", { d: EDIT_PENCIL, fill: "white", opacity: "0.1" }),
86
+ within(
87
+ uid,
88
+ "band",
89
+ /* @__PURE__ */ jsx("path", { d: EDIT_PENCIL }),
90
+ /* @__PURE__ */ jsx("path", { d: "M15 5l4 4", stroke: secondaryColor, strokeWidth: "1.8" })
91
+ )
92
+ ] })
93
+ }
36
94
  });
37
- // NtdEditDetail: NtdEdit's pencil (scaled 0.62, coordinates baked in so strokes keep their
38
- // weight) over a square frame left open where the pencil comes out of it — the pen-to-square
39
- // "edit details" glyph.
40
- const EDIT_DETAIL_PENCIL = 'M18.54 2.86a1.753 1.753 0 112.48 2.48L12.65 13.71 9.24 14.64l.93-3.41L18.54 2.86z';
41
- const EDIT_DETAIL_BAND = 'M17.3 4.1l2.48 2.48';
42
- const EDIT_DETAIL_FRAME = 'M12 4H6a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2v-6';
95
+ const EDIT_DETAIL_PENCIL = "M18.54 2.86a1.753 1.753 0 112.48 2.48L12.65 13.71 9.24 14.64l.93-3.41L18.54 2.86z";
96
+ const EDIT_DETAIL_BAND = "M17.3 4.1l2.48 2.48";
97
+ const EDIT_DETAIL_FRAME = "M12 4H6a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2v-6";
43
98
  const NtdEditDetail = /* @__PURE__ */ createIcon({
44
- displayName: 'NtdEditDetail',
45
- paths: {
46
- solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("path", { d: EDIT_DETAIL_FRAME, stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: EDIT_DETAIL_PENCIL, fill: primaryColor }), within(uid, 'band', jsx("path", { d: EDIT_DETAIL_PENCIL }), jsx("path", { d: EDIT_DETAIL_BAND, stroke: accentColor, strokeWidth: "1.1", opacity: accentOpacity }))] })),
47
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: EDIT_DETAIL_FRAME, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: EDIT_DETAIL_PENCIL, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
48
- vivid: ({ primaryColor, secondaryColor, strokeWidth, uid }) => (jsxs(Fragment, { children: [jsx("path", { d: EDIT_DETAIL_FRAME, stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: EDIT_DETAIL_PENCIL, fill: primaryColor }), within(uid, 'band', jsx("path", { d: EDIT_DETAIL_PENCIL }), jsx("path", { d: EDIT_DETAIL_BAND, stroke: secondaryColor, strokeWidth: "1.3" }))] })),
49
- },
99
+ displayName: "NtdEditDetail",
100
+ paths: {
101
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }) => /* @__PURE__ */ jsxs(Fragment, { children: [
102
+ /* @__PURE__ */ jsx(
103
+ "path",
104
+ {
105
+ d: EDIT_DETAIL_FRAME,
106
+ stroke: primaryColor,
107
+ strokeWidth: strokeWidth * 2,
108
+ fill: "none"
109
+ }
110
+ ),
111
+ /* @__PURE__ */ jsx("path", { d: EDIT_DETAIL_PENCIL, fill: primaryColor }),
112
+ within(
113
+ uid,
114
+ "band",
115
+ /* @__PURE__ */ jsx("path", { d: EDIT_DETAIL_PENCIL }),
116
+ /* @__PURE__ */ jsx(
117
+ "path",
118
+ {
119
+ d: EDIT_DETAIL_BAND,
120
+ stroke: accentColor,
121
+ strokeWidth: "1.1",
122
+ opacity: accentOpacity
123
+ }
124
+ )
125
+ )
126
+ ] }),
127
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
128
+ /* @__PURE__ */ jsx("path", { d: EDIT_DETAIL_FRAME, stroke: primaryColor, strokeWidth, fill: "none" }),
129
+ /* @__PURE__ */ jsx("path", { d: EDIT_DETAIL_PENCIL, stroke: primaryColor, strokeWidth, fill: "none" })
130
+ ] }),
131
+ vivid: ({ primaryColor, secondaryColor, strokeWidth, uid }) => /* @__PURE__ */ jsxs(Fragment, { children: [
132
+ /* @__PURE__ */ jsx(
133
+ "path",
134
+ {
135
+ d: EDIT_DETAIL_FRAME,
136
+ stroke: secondaryColor,
137
+ strokeWidth: strokeWidth * 2,
138
+ fill: "none"
139
+ }
140
+ ),
141
+ /* @__PURE__ */ jsx("path", { d: EDIT_DETAIL_PENCIL, fill: primaryColor }),
142
+ within(
143
+ uid,
144
+ "band",
145
+ /* @__PURE__ */ jsx("path", { d: EDIT_DETAIL_PENCIL }),
146
+ /* @__PURE__ */ jsx("path", { d: EDIT_DETAIL_BAND, stroke: secondaryColor, strokeWidth: "1.3" })
147
+ )
148
+ ] })
149
+ }
50
150
  });
51
- // NtdTrash: the lid overhangs the bin by 1 a side (16 across; it was 18) and the handle is 6 by 3
52
- // (it was 8 by 4). The lid is flat with its ends bent down, as round as the bin's bottom corners
53
- // (r 2). Vivid: the lid and the handle secondary, the grooves accent (they were a fixed #3B82F6).
54
- const TRASH_LID = 'M4 8a2 2 0 012-2h12a2 2 0 012 2';
55
- const TRASH_HANDLE = 'M9 6V4.5a1.5 1.5 0 011.5-1.5h3a1.5 1.5 0 011.5 1.5V6';
56
- const TRASH_BIN = 'M5 6l1 14a2 2 0 002 2h8a2 2 0 002-2l1-14H5z';
57
- const TRASH_GROOVES = 'M10 10.5v7M14 10.5v7';
151
+ const TRASH_LID = "M4 8a2 2 0 012-2h12a2 2 0 012 2";
152
+ const TRASH_HANDLE = "M9 6V4.5a1.5 1.5 0 011.5-1.5h3a1.5 1.5 0 011.5 1.5V6";
153
+ const TRASH_BIN = "M5 6l1 14a2 2 0 002 2h8a2 2 0 002-2l1-14H5z";
154
+ const TRASH_GROOVES = "M10 10.5v7M14 10.5v7";
58
155
  const NtdTrash = /* @__PURE__ */ createIcon({
59
- displayName: 'NtdTrash',
60
- paths: {
61
- solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: TRASH_LID, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: TRASH_HANDLE, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: TRASH_BIN, fill: primaryColor }), jsx("line", { x1: "10", y1: "10.5", x2: "10", y2: "17.5", stroke: accentColor, strokeWidth: strokeWidth * 0.7, opacity: accentOpacity }), jsx("line", { x1: "14", y1: "10.5", x2: "14", y2: "17.5", stroke: accentColor, strokeWidth: strokeWidth * 0.7, opacity: accentOpacity })] })),
62
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: TRASH_LID, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: TRASH_HANDLE, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M5 6l1 14a2 2 0 002 2h8a2 2 0 002-2l1-14", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: TRASH_GROOVES, stroke: primaryColor, strokeWidth: strokeWidth })] })),
63
- vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: TRASH_BIN, fill: primaryColor }), jsx("path", { d: TRASH_LID, stroke: secondaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: TRASH_HANDLE, stroke: secondaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: TRASH_GROOVES, stroke: accentColor, strokeWidth: strokeWidth * 0.7, opacity: accentOpacity })] })),
64
- },
156
+ displayName: "NtdTrash",
157
+ paths: {
158
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
159
+ /* @__PURE__ */ jsx("path", { d: TRASH_LID, stroke: primaryColor, strokeWidth, fill: "none" }),
160
+ /* @__PURE__ */ jsx("path", { d: TRASH_HANDLE, stroke: primaryColor, strokeWidth, fill: "none" }),
161
+ /* @__PURE__ */ jsx("path", { d: TRASH_BIN, fill: primaryColor }),
162
+ /* @__PURE__ */ jsx(
163
+ "line",
164
+ {
165
+ x1: "10",
166
+ y1: "10.5",
167
+ x2: "10",
168
+ y2: "17.5",
169
+ stroke: accentColor,
170
+ strokeWidth: strokeWidth * 0.7,
171
+ opacity: accentOpacity
172
+ }
173
+ ),
174
+ /* @__PURE__ */ jsx(
175
+ "line",
176
+ {
177
+ x1: "14",
178
+ y1: "10.5",
179
+ x2: "14",
180
+ y2: "17.5",
181
+ stroke: accentColor,
182
+ strokeWidth: strokeWidth * 0.7,
183
+ opacity: accentOpacity
184
+ }
185
+ )
186
+ ] }),
187
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
188
+ /* @__PURE__ */ jsx("path", { d: TRASH_LID, stroke: primaryColor, strokeWidth, fill: "none" }),
189
+ /* @__PURE__ */ jsx("path", { d: TRASH_HANDLE, stroke: primaryColor, strokeWidth, fill: "none" }),
190
+ /* @__PURE__ */ jsx(
191
+ "path",
192
+ {
193
+ d: "M5 6l1 14a2 2 0 002 2h8a2 2 0 002-2l1-14",
194
+ stroke: primaryColor,
195
+ strokeWidth,
196
+ fill: "none"
197
+ }
198
+ ),
199
+ /* @__PURE__ */ jsx("path", { d: TRASH_GROOVES, stroke: primaryColor, strokeWidth })
200
+ ] }),
201
+ vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
202
+ /* @__PURE__ */ jsx("path", { d: TRASH_BIN, fill: primaryColor }),
203
+ /* @__PURE__ */ jsx("path", { d: TRASH_LID, stroke: secondaryColor, strokeWidth, fill: "none" }),
204
+ /* @__PURE__ */ jsx("path", { d: TRASH_HANDLE, stroke: secondaryColor, strokeWidth, fill: "none" }),
205
+ /* @__PURE__ */ jsx(
206
+ "path",
207
+ {
208
+ d: TRASH_GROOVES,
209
+ stroke: accentColor,
210
+ strokeWidth: strokeWidth * 0.7,
211
+ opacity: accentOpacity
212
+ }
213
+ )
214
+ ] })
215
+ }
65
216
  });
66
- // NtdSave: a 3.5" floppy — the clipped corner, a wide metal shutter at the top edge with its
67
- // window, a large label at the bottom. Every part sits inside the body, so no variant pokes out.
68
- const FLOPPY_BODY = 'M5 3h11.6L21 7.4V19a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2z';
69
- /** The shutter with its window cut out (even-odd). */
70
- const FLOPPY_SHUTTER = 'M7 3h9.2v4.8a.8.8 0 01-.8.8H7.8a.8.8 0 01-.8-.8zM12.6 4.4v2.8h2V4.4z';
71
- const FLOPPY_LABEL = 'M6.8 10.6h10.4a1 1 0 011 1v7a1 1 0 01-1 1H6.8a1 1 0 01-1-1v-7a1 1 0 011-1z';
72
- /** The label's top band — vivid's third colour. */
73
- const FLOPPY_LABEL_BAND = 'M5.8 13.2h12.4v-1.6a1 1 0 00-1-1H6.8a1 1 0 00-1 1z';
217
+ const FLOPPY_BODY = "M5 3h11.6L21 7.4V19a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2z";
218
+ const FLOPPY_SHUTTER = "M7 3h9.2v4.8a.8.8 0 01-.8.8H7.8a.8.8 0 01-.8-.8zM12.6 4.4v2.8h2V4.4z";
219
+ const FLOPPY_LABEL = "M6.8 10.6h10.4a1 1 0 011 1v7a1 1 0 01-1 1H6.8a1 1 0 01-1-1v-7a1 1 0 011-1z";
220
+ const FLOPPY_LABEL_BAND = "M5.8 13.2h12.4v-1.6a1 1 0 00-1-1H6.8a1 1 0 00-1 1z";
74
221
  const NtdSave = /* @__PURE__ */ createIcon({
75
- displayName: 'NtdSave',
76
- paths: {
77
- // the shutter and the label in secondary (the accent is usually black or the page colour)
78
- solid: (props) => (jsxs(Fragment, { children: [jsx("path", { d: FLOPPY_BODY, fill: props.primaryColor }), jsxs("g", { fill: detailColor(props), children: [jsx("path", { d: FLOPPY_SHUTTER, fillRule: "evenodd" }), jsx("path", { d: FLOPPY_LABEL })] })] })),
79
- // the wireframe's construction — body, shutter with its window, label — at the stroke width
80
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: `${FLOPPY_BODY}${FLOPPY_SHUTTER}${FLOPPY_LABEL}`, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
81
- // fills only: the body secondary, the shutter and the label primary
82
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity }) => (jsxs(Fragment, { children: [jsx("path", { d: FLOPPY_BODY, fill: secondaryColor, opacity: secondaryOpacity }), jsxs("g", { fill: primaryColor, children: [jsx("path", { d: FLOPPY_SHUTTER, fillRule: "evenodd" }), jsx("path", { d: FLOPPY_LABEL })] })] })),
83
- vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("path", { d: FLOPPY_BODY, fill: primaryColor }), jsxs("g", { fill: secondaryColor, children: [jsx("path", { d: FLOPPY_SHUTTER, fillRule: "evenodd" }), jsx("path", { d: FLOPPY_LABEL })] }), jsx("path", { d: FLOPPY_LABEL_BAND, fill: accentColor, opacity: accentOpacity })] })),
84
- },
222
+ displayName: "NtdSave",
223
+ paths: {
224
+ // the shutter and the label in secondary (the accent is usually black or the page colour)
225
+ solid: (props) => /* @__PURE__ */ jsxs(Fragment, { children: [
226
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_BODY, fill: props.primaryColor }),
227
+ /* @__PURE__ */ jsxs("g", { fill: detailColor(props), children: [
228
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_SHUTTER, fillRule: "evenodd" }),
229
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_LABEL })
230
+ ] })
231
+ ] }),
232
+ // the wireframe's construction — body, shutter with its window, label — at the stroke width
233
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
234
+ "path",
235
+ {
236
+ d: `${FLOPPY_BODY}${FLOPPY_SHUTTER}${FLOPPY_LABEL}`,
237
+ stroke: primaryColor,
238
+ strokeWidth,
239
+ fill: "none"
240
+ }
241
+ ),
242
+ // fills only: the body secondary, the shutter and the label primary
243
+ duotone: ({ primaryColor, secondaryColor, secondaryOpacity }) => /* @__PURE__ */ jsxs(Fragment, { children: [
244
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_BODY, fill: secondaryColor, opacity: secondaryOpacity }),
245
+ /* @__PURE__ */ jsxs("g", { fill: primaryColor, children: [
246
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_SHUTTER, fillRule: "evenodd" }),
247
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_LABEL })
248
+ ] })
249
+ ] }),
250
+ vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity }) => /* @__PURE__ */ jsxs(Fragment, { children: [
251
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_BODY, fill: primaryColor }),
252
+ /* @__PURE__ */ jsxs("g", { fill: secondaryColor, children: [
253
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_SHUTTER, fillRule: "evenodd" }),
254
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_LABEL })
255
+ ] }),
256
+ /* @__PURE__ */ jsx("path", { d: FLOPPY_LABEL_BAND, fill: accentColor, opacity: accentOpacity })
257
+ ] })
258
+ }
85
259
  });
86
- /** The tray of NtdDownload and NtdUpload. */
87
- const TRAY = 'M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4';
88
- // The shaft stops 2 short of the arrowhead's point: with the square caps of `sharp`, a shaft that
89
- // ran to the point stuck out of it.
260
+ const TRAY = "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4";
90
261
  const NtdDownload = /* @__PURE__ */ createIcon({
91
- displayName: 'NtdDownload',
92
- paths: {
93
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4M7 10l5 5 5-5M12 13V3", stroke: primaryColor, strokeWidth: strokeWidth * 2 })),
94
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4M7 10l5 5 5-5M12 13V3", stroke: primaryColor, strokeWidth: strokeWidth })),
95
- // the tray primary, the arrow secondary — a colour split, no filled tray (swapped in 1.3.8:
96
- // the larger part primary)
97
- duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: TRAY, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: "M7 10l5 5 5-5M12 13V3", stroke: primaryColor, strokeWidth: strokeWidth * 2 })] }))),
98
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: TRAY, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: "M7 10l5 5 5-5M12 13V3", stroke: primaryColor, strokeWidth: strokeWidth * 2 })] })),
99
- },
262
+ displayName: "NtdDownload",
263
+ paths: {
264
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
265
+ "path",
266
+ {
267
+ d: "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4M7 10l5 5 5-5M12 13V3",
268
+ stroke: primaryColor,
269
+ strokeWidth: strokeWidth * 2
270
+ }
271
+ ),
272
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
273
+ "path",
274
+ {
275
+ d: "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4M7 10l5 5 5-5M12 13V3",
276
+ stroke: primaryColor,
277
+ strokeWidth
278
+ }
279
+ ),
280
+ // the tray primary, the arrow secondary — a colour split, no filled tray (swapped in 1.3.8:
281
+ // the larger part primary)
282
+ duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
283
+ /* @__PURE__ */ jsx("path", { d: TRAY, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }),
284
+ /* @__PURE__ */ jsx("path", { d: "M7 10l5 5 5-5M12 13V3", stroke: primaryColor, strokeWidth: strokeWidth * 2 })
285
+ ] })),
286
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
287
+ /* @__PURE__ */ jsx("path", { d: TRAY, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }),
288
+ /* @__PURE__ */ jsx("path", { d: "M7 10l5 5 5-5M12 13V3", stroke: primaryColor, strokeWidth: strokeWidth * 2 })
289
+ ] })
290
+ }
100
291
  });
101
292
  const NtdUpload = /* @__PURE__ */ createIcon({
102
- displayName: 'NtdUpload',
103
- paths: {
104
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4M17 8l-5-5-5 5M12 5v10", stroke: primaryColor, strokeWidth: strokeWidth * 2 })),
105
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4M17 8l-5-5-5 5M12 5v10", stroke: primaryColor, strokeWidth: strokeWidth })),
106
- // as NtdDownload: the tray primary, the arrow secondary
107
- duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: TRAY, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: "M17 8l-5-5-5 5M12 5v10", stroke: primaryColor, strokeWidth: strokeWidth * 2 })] }))),
108
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: TRAY, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: "M17 8l-5-5-5 5M12 5v10", stroke: primaryColor, strokeWidth: strokeWidth * 2 })] })),
109
- },
293
+ displayName: "NtdUpload",
294
+ paths: {
295
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
296
+ "path",
297
+ {
298
+ d: "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4M17 8l-5-5-5 5M12 5v10",
299
+ stroke: primaryColor,
300
+ strokeWidth: strokeWidth * 2
301
+ }
302
+ ),
303
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
304
+ "path",
305
+ {
306
+ d: "M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4M17 8l-5-5-5 5M12 5v10",
307
+ stroke: primaryColor,
308
+ strokeWidth
309
+ }
310
+ ),
311
+ // as NtdDownload: the tray primary, the arrow secondary
312
+ duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
313
+ /* @__PURE__ */ jsx("path", { d: TRAY, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }),
314
+ /* @__PURE__ */ jsx("path", { d: "M17 8l-5-5-5 5M12 5v10", stroke: primaryColor, strokeWidth: strokeWidth * 2 })
315
+ ] })),
316
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
317
+ /* @__PURE__ */ jsx("path", { d: TRAY, stroke: secondaryColor, strokeWidth: strokeWidth * 2 }),
318
+ /* @__PURE__ */ jsx("path", { d: "M17 8l-5-5-5 5M12 5v10", stroke: primaryColor, strokeWidth: strokeWidth * 2 })
319
+ ] })
320
+ }
110
321
  });
111
- // NtdShare: three nodes joined by two links, the links twice the stroke width in every variant but
112
- // `outline`. Duotone and vivid, fills only: the nodes primary, the links secondary (vivid had a
113
- // fixed #3B82F6 node and white links that vanished on a light page).
114
- const SHARE_NODES = 'M18 2a3 3 0 110 6 3 3 0 110-6zM6 9a3 3 0 110 6 3 3 0 110-6zM18 16a3 3 0 110 6 3 3 0 110-6z';
115
- const SHARE_LINKS = 'M8.59 13.51L15.42 17.49M15.41 6.51L8.59 10.49';
322
+ const SHARE_NODES = "M18 2a3 3 0 110 6 3 3 0 110-6zM6 9a3 3 0 110 6 3 3 0 110-6zM18 16a3 3 0 110 6 3 3 0 110-6z";
323
+ const SHARE_LINKS = "M8.59 13.51L15.42 17.49M15.41 6.51L8.59 10.49";
116
324
  function shareFilled(nodes, links, strokeWidth) {
117
- return (jsxs(Fragment, { children: [jsx("path", { d: SHARE_LINKS, stroke: links, strokeWidth: strokeWidth * 2 }), jsx("path", { d: SHARE_NODES, fill: nodes })] }));
325
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
326
+ /* @__PURE__ */ jsx("path", { d: SHARE_LINKS, stroke: links, strokeWidth: strokeWidth * 2 }),
327
+ /* @__PURE__ */ jsx("path", { d: SHARE_NODES, fill: nodes })
328
+ ] });
118
329
  }
119
330
  const NtdShare = /* @__PURE__ */ createIcon({
120
- displayName: 'NtdShare',
121
- paths: {
122
- solid: ({ primaryColor, strokeWidth }) => shareFilled(primaryColor, primaryColor, strokeWidth),
123
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "18", cy: "5", r: "2.5", stroke: primaryColor, strokeWidth: strokeWidth * 0.75, fill: "none" }), jsx("circle", { cx: "6", cy: "12", r: "2.5", stroke: primaryColor, strokeWidth: strokeWidth * 0.75, fill: "none" }), jsx("circle", { cx: "18", cy: "19", r: "2.5", stroke: primaryColor, strokeWidth: strokeWidth * 0.75, fill: "none" }), jsx("line", { x1: "8.59", y1: "13.51", x2: "15.42", y2: "17.49", stroke: primaryColor, strokeWidth: strokeWidth * 0.75 }), jsx("line", { x1: "15.41", y1: "6.51", x2: "8.59", y2: "10.49", stroke: primaryColor, strokeWidth: strokeWidth * 0.75 })] })),
124
- duotone: ({ primaryColor, secondaryColor, strokeWidth }) => shareFilled(primaryColor, secondaryColor, strokeWidth),
125
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => shareFilled(primaryColor, secondaryColor, strokeWidth),
126
- },
331
+ displayName: "NtdShare",
332
+ paths: {
333
+ solid: ({ primaryColor, strokeWidth }) => shareFilled(primaryColor, primaryColor, strokeWidth),
334
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
335
+ /* @__PURE__ */ jsx(
336
+ "circle",
337
+ {
338
+ cx: "18",
339
+ cy: "5",
340
+ r: "2.5",
341
+ stroke: primaryColor,
342
+ strokeWidth: strokeWidth * 0.75,
343
+ fill: "none"
344
+ }
345
+ ),
346
+ /* @__PURE__ */ jsx(
347
+ "circle",
348
+ {
349
+ cx: "6",
350
+ cy: "12",
351
+ r: "2.5",
352
+ stroke: primaryColor,
353
+ strokeWidth: strokeWidth * 0.75,
354
+ fill: "none"
355
+ }
356
+ ),
357
+ /* @__PURE__ */ jsx(
358
+ "circle",
359
+ {
360
+ cx: "18",
361
+ cy: "19",
362
+ r: "2.5",
363
+ stroke: primaryColor,
364
+ strokeWidth: strokeWidth * 0.75,
365
+ fill: "none"
366
+ }
367
+ ),
368
+ /* @__PURE__ */ jsx(
369
+ "line",
370
+ {
371
+ x1: "8.59",
372
+ y1: "13.51",
373
+ x2: "15.42",
374
+ y2: "17.49",
375
+ stroke: primaryColor,
376
+ strokeWidth: strokeWidth * 0.75
377
+ }
378
+ ),
379
+ /* @__PURE__ */ jsx(
380
+ "line",
381
+ {
382
+ x1: "15.41",
383
+ y1: "6.51",
384
+ x2: "8.59",
385
+ y2: "10.49",
386
+ stroke: primaryColor,
387
+ strokeWidth: strokeWidth * 0.75
388
+ }
389
+ )
390
+ ] }),
391
+ duotone: ({ primaryColor, secondaryColor, strokeWidth }) => shareFilled(primaryColor, secondaryColor, strokeWidth),
392
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => shareFilled(primaryColor, secondaryColor, strokeWidth)
393
+ }
127
394
  });
128
- // NtdCopy: the front sheet at the top right (it was at the bottom right), the back one showing at
129
- // the bottom left as a line that stops 1 short of the front — closer than before. The gap is
130
- // worked out from the stroke width, so it stays the same at any weight; `sharp` draws the back
131
- // sheet with square corners (the derived one kept their arcs). Duotone, fills only: the back sheet
132
- // secondary under the primary front one; vivid: the back line secondary. Round 40: the back sheet
133
- // smaller, 11 (was 12.5), kept in the bottom-left corner.
134
395
  const COPY_FRONT = { x: 8.5, y: 3, width: 12.5, height: 12.5, rx: 2.5 };
135
396
  const COPY_BACK = { x: 3, y: 10, width: 11, height: 11, rx: 2.5 };
136
- /** What shows of the back sheet: its edges outside the front one, `gap` short of it. */
137
397
  function copyBack(gap, square = false) {
138
- const { x, y, width, height, rx } = COPY_BACK;
139
- const top = COPY_FRONT.x - gap;
140
- const right = COPY_FRONT.y + COPY_FRONT.height + gap;
141
- const arc = `a${rx} ${rx} 0 00`;
142
- return square
143
- ? `M${top} ${y}H${x}V${y + height}H${x + width}V${right}`
144
- : `M${top} ${y}H${x + rx}${arc}-${rx} ${rx}V${y + height - rx}${arc}${rx} ${rx}H${x + width - rx}${arc}${rx}-${rx}V${right}`;
398
+ const { x, y, width, height, rx } = COPY_BACK;
399
+ const top = COPY_FRONT.x - gap;
400
+ const right = COPY_FRONT.y + COPY_FRONT.height + gap;
401
+ const arc = `a${rx} ${rx} 0 00`;
402
+ return square ? `M${top} ${y}H${x}V${y + height}H${x + width}V${right}` : `M${top} ${y}H${x + rx}${arc}-${rx} ${rx}V${y + height - rx}${arc}${rx} ${rx}H${x + width - rx}${arc}${rx}-${rx}V${right}`;
145
403
  }
146
- /** The front sheet filled and the back one as a line 1 short of it (past its round cap). */
147
404
  function copyFilled(front, back, strokeWidth, square = false) {
148
- return (jsxs(Fragment, { children: [jsx("rect", { ...COPY_FRONT, fill: front }), jsx("path", { d: copyBack(1 + strokeWidth / 2, square), stroke: back, strokeWidth: strokeWidth, fill: "none" })] }));
405
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
406
+ /* @__PURE__ */ jsx("rect", { ...COPY_FRONT, fill: front }),
407
+ /* @__PURE__ */ jsx(
408
+ "path",
409
+ {
410
+ d: copyBack(1 + strokeWidth / 2, square),
411
+ stroke: back,
412
+ strokeWidth,
413
+ fill: "none"
414
+ }
415
+ )
416
+ ] });
149
417
  }
150
418
  const NtdCopy = /* @__PURE__ */ createIcon({
151
- displayName: 'NtdCopy',
152
- paths: {
153
- solid: ({ primaryColor, strokeWidth }) => copyFilled(primaryColor, primaryColor, strokeWidth),
154
- sharp: ({ primaryColor, strokeWidth }) => copyFilled(primaryColor, primaryColor, strokeWidth, true),
155
- // both sheets stroked: the back line stops 1 short of the front sheet's line
156
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { ...COPY_FRONT, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: copyBack(1 + strokeWidth), stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
157
- duotone: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { ...COPY_BACK, fill: secondaryColor }), jsx("rect", { ...COPY_FRONT, fill: primaryColor })] })),
158
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => copyFilled(primaryColor, secondaryColor, strokeWidth),
159
- },
419
+ displayName: "NtdCopy",
420
+ paths: {
421
+ solid: ({ primaryColor, strokeWidth }) => copyFilled(primaryColor, primaryColor, strokeWidth),
422
+ sharp: ({ primaryColor, strokeWidth }) => copyFilled(primaryColor, primaryColor, strokeWidth, true),
423
+ // both sheets stroked: the back line stops 1 short of the front sheet's line
424
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
425
+ /* @__PURE__ */ jsx("rect", { ...COPY_FRONT, stroke: primaryColor, strokeWidth, fill: "none" }),
426
+ /* @__PURE__ */ jsx(
427
+ "path",
428
+ {
429
+ d: copyBack(1 + strokeWidth),
430
+ stroke: primaryColor,
431
+ strokeWidth,
432
+ fill: "none"
433
+ }
434
+ )
435
+ ] }),
436
+ duotone: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
437
+ /* @__PURE__ */ jsx("rect", { ...COPY_BACK, fill: secondaryColor }),
438
+ /* @__PURE__ */ jsx("rect", { ...COPY_FRONT, fill: primaryColor })
439
+ ] }),
440
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => copyFilled(primaryColor, secondaryColor, strokeWidth)
441
+ }
160
442
  });
161
- /** NtdClipboard's two lines of text, high on the board (they sat below its middle). */
162
- const CLIPBOARD_TEXT = 'M8 11h8M8 14.5h5';
443
+ const CLIPBOARD_TEXT = "M8 11h8M8 14.5h5";
163
444
  const NtdClipboard = /* @__PURE__ */ createIcon({
164
- displayName: 'NtdClipboard',
165
- perfectStackX: 12,
166
- perfectStackY: 12.5,
167
- perfectStackSize: 0.5,
168
- paths: {
169
- solid: ({ primaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("path", { d: "M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2", fill: primaryColor }), jsx("rect", { x: "8", y: "2", width: "8", height: "3.5", rx: "1.5", fill: primaryColor, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity }), jsx("path", { d: CLIPBOARD_TEXT, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })] })),
170
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "8", y: "2", width: "8", height: "3.5", rx: "1.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: CLIPBOARD_TEXT, stroke: primaryColor, strokeWidth: strokeWidth })] })),
171
- vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity }) => (jsxs(Fragment, { children: [jsx("path", { d: "M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2", fill: primaryColor }), jsx("rect", { x: "8", y: "2", width: "8", height: "3.5", rx: "1.5", fill: secondaryColor, stroke: secondaryColor, strokeWidth: "1.5" }), jsx("path", { d: CLIPBOARD_TEXT, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })] })),
172
- },
445
+ displayName: "NtdClipboard",
446
+ perfectStackX: 12,
447
+ perfectStackY: 12.5,
448
+ perfectStackSize: 0.5,
449
+ paths: {
450
+ solid: ({ primaryColor, accentColor, accentOpacity }) => /* @__PURE__ */ jsxs(Fragment, { children: [
451
+ /* @__PURE__ */ jsx(
452
+ "path",
453
+ {
454
+ d: "M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2",
455
+ fill: primaryColor
456
+ }
457
+ ),
458
+ /* @__PURE__ */ jsx(
459
+ "rect",
460
+ {
461
+ x: "8",
462
+ y: "2",
463
+ width: "8",
464
+ height: "3.5",
465
+ rx: "1.5",
466
+ fill: primaryColor,
467
+ stroke: accentColor,
468
+ strokeWidth: "1.5",
469
+ opacity: accentOpacity
470
+ }
471
+ ),
472
+ /* @__PURE__ */ jsx("path", { d: CLIPBOARD_TEXT, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
473
+ ] }),
474
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
475
+ /* @__PURE__ */ jsx(
476
+ "path",
477
+ {
478
+ d: "M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2",
479
+ stroke: primaryColor,
480
+ strokeWidth,
481
+ fill: "none"
482
+ }
483
+ ),
484
+ /* @__PURE__ */ jsx(
485
+ "rect",
486
+ {
487
+ x: "8",
488
+ y: "2",
489
+ width: "8",
490
+ height: "3.5",
491
+ rx: "1.5",
492
+ stroke: primaryColor,
493
+ strokeWidth,
494
+ fill: "none"
495
+ }
496
+ ),
497
+ /* @__PURE__ */ jsx("path", { d: CLIPBOARD_TEXT, stroke: primaryColor, strokeWidth })
498
+ ] }),
499
+ vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity }) => /* @__PURE__ */ jsxs(Fragment, { children: [
500
+ /* @__PURE__ */ jsx(
501
+ "path",
502
+ {
503
+ d: "M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2",
504
+ fill: primaryColor
505
+ }
506
+ ),
507
+ /* @__PURE__ */ jsx(
508
+ "rect",
509
+ {
510
+ x: "8",
511
+ y: "2",
512
+ width: "8",
513
+ height: "3.5",
514
+ rx: "1.5",
515
+ fill: secondaryColor,
516
+ stroke: secondaryColor,
517
+ strokeWidth: "1.5"
518
+ }
519
+ ),
520
+ /* @__PURE__ */ jsx("path", { d: CLIPBOARD_TEXT, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
521
+ ] })
522
+ }
173
523
  });
174
- // The stroke glyphs (plus, minus, check, the arrows) are twice the stroke width when filled, so
175
- // `solid` reads bold next to `outline` and still follows `strokeWidth`. Plus, check and close
176
- // split their two strokes between the colours in duotone and vivid (no backing disc); vivid adds
177
- // the crossing of the plus and the close in the accent colour.
178
524
  const NtdPlus = /* @__PURE__ */ createIcon({
179
- displayName: 'NtdPlus',
180
- paths: {
181
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M12 5v14M5 12h14", stroke: primaryColor, strokeWidth: strokeWidth * 2 })),
182
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M12 5v14M5 12h14", stroke: primaryColor, strokeWidth: strokeWidth })),
183
- duotone: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 12h14", stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: "M12 5v14", stroke: primaryColor, strokeWidth: strokeWidth * 2 })] })),
184
- vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 12h14", stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: "M12 5v14", stroke: primaryColor, strokeWidth: strokeWidth * 2 }), jsx("rect", { x: 12 - strokeWidth, y: 12 - strokeWidth, width: strokeWidth * 2, height: strokeWidth * 2, fill: accentColor, opacity: accentOpacity })] })),
185
- },
525
+ displayName: "NtdPlus",
526
+ paths: {
527
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx("path", { d: "M12 5v14M5 12h14", stroke: primaryColor, strokeWidth: strokeWidth * 2 }),
528
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx("path", { d: "M12 5v14M5 12h14", stroke: primaryColor, strokeWidth }),
529
+ duotone: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
530
+ /* @__PURE__ */ jsx("path", { d: "M5 12h14", stroke: secondaryColor, strokeWidth: strokeWidth * 2 }),
531
+ /* @__PURE__ */ jsx("path", { d: "M12 5v14", stroke: primaryColor, strokeWidth: strokeWidth * 2 })
532
+ ] }),
533
+ vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
534
+ /* @__PURE__ */ jsx("path", { d: "M5 12h14", stroke: secondaryColor, strokeWidth: strokeWidth * 2 }),
535
+ /* @__PURE__ */ jsx("path", { d: "M12 5v14", stroke: primaryColor, strokeWidth: strokeWidth * 2 }),
536
+ /* @__PURE__ */ jsx(
537
+ "rect",
538
+ {
539
+ x: 12 - strokeWidth,
540
+ y: 12 - strokeWidth,
541
+ width: strokeWidth * 2,
542
+ height: strokeWidth * 2,
543
+ fill: accentColor,
544
+ opacity: accentOpacity
545
+ }
546
+ )
547
+ ] })
548
+ }
186
549
  });
187
550
  const NtdMinus = /* @__PURE__ */ createIcon({
188
- displayName: 'NtdMinus',
189
- paths: {
190
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M5 12h14", stroke: primaryColor, strokeWidth: strokeWidth * 2 })),
191
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M5 12h14", stroke: primaryColor, strokeWidth: strokeWidth })),
192
- duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "9", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M8 12h8", stroke: primaryColor, strokeWidth: strokeWidth })] }))),
193
- vivid: ({ primaryColor, strokeWidth }) => (jsx(Fragment, { children: jsx("path", { d: "M5 12h14", stroke: primaryColor, strokeWidth: strokeWidth * 2 }) })),
194
- },
551
+ displayName: "NtdMinus",
552
+ paths: {
553
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx("path", { d: "M5 12h14", stroke: primaryColor, strokeWidth: strokeWidth * 2 }),
554
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx("path", { d: "M5 12h14", stroke: primaryColor, strokeWidth }),
555
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
556
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "12", r: "9", fill: secondaryColor, opacity: secondaryOpacity }),
557
+ /* @__PURE__ */ jsx("path", { d: "M8 12h8", stroke: primaryColor, strokeWidth })
558
+ ] })),
559
+ vivid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("path", { d: "M5 12h14", stroke: primaryColor, strokeWidth: strokeWidth * 2 }) })
560
+ }
195
561
  });
196
562
  const NtdCheck = /* @__PURE__ */ createIcon({
197
- displayName: 'NtdCheck',
198
- paths: {
199
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M20 6L9 17l-5-5", stroke: primaryColor, strokeWidth: strokeWidth * 2 })),
200
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M20 6L9 17l-5-5", stroke: primaryColor, strokeWidth: strokeWidth })),
201
- duotone: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M9 17l-5-5", stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: "M20 6L9 17", stroke: primaryColor, strokeWidth: strokeWidth * 2 })] })),
202
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M9 17l-5-5", stroke: secondaryColor, strokeWidth: strokeWidth * 2 }), jsx("path", { d: "M20 6L9 17", stroke: primaryColor, strokeWidth: strokeWidth * 2 })] })),
203
- },
563
+ displayName: "NtdCheck",
564
+ paths: {
565
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx("path", { d: "M20 6L9 17l-5-5", stroke: primaryColor, strokeWidth: strokeWidth * 2 }),
566
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx("path", { d: "M20 6L9 17l-5-5", stroke: primaryColor, strokeWidth }),
567
+ duotone: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
568
+ /* @__PURE__ */ jsx("path", { d: "M9 17l-5-5", stroke: secondaryColor, strokeWidth: strokeWidth * 2 }),
569
+ /* @__PURE__ */ jsx("path", { d: "M20 6L9 17", stroke: primaryColor, strokeWidth: strokeWidth * 2 })
570
+ ] }),
571
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
572
+ /* @__PURE__ */ jsx("path", { d: "M9 17l-5-5", stroke: secondaryColor, strokeWidth: strokeWidth * 2 }),
573
+ /* @__PURE__ */ jsx("path", { d: "M20 6L9 17", stroke: primaryColor, strokeWidth: strokeWidth * 2 })
574
+ ] })
575
+ }
204
576
  });
205
577
  const NtdFilter = /* @__PURE__ */ createIcon({
206
- displayName: 'NtdFilter',
207
- paths: {
208
- solid: ({ primaryColor }) => jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", fill: primaryColor }),
209
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
210
- duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] }))),
211
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", fill: primaryColor }), jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", fill: "white", opacity: "0.1" })] })),
212
- },
578
+ displayName: "NtdFilter",
579
+ paths: {
580
+ solid: ({ primaryColor }) => /* @__PURE__ */ jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", fill: primaryColor }),
581
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
582
+ "path",
583
+ {
584
+ d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z",
585
+ stroke: primaryColor,
586
+ strokeWidth,
587
+ fill: "none"
588
+ }
589
+ ),
590
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
591
+ /* @__PURE__ */ jsx(
592
+ "path",
593
+ {
594
+ d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z",
595
+ fill: secondaryColor,
596
+ opacity: secondaryOpacity
597
+ }
598
+ ),
599
+ /* @__PURE__ */ jsx(
600
+ "path",
601
+ {
602
+ d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z",
603
+ stroke: primaryColor,
604
+ strokeWidth,
605
+ fill: "none"
606
+ }
607
+ )
608
+ ] })),
609
+ vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
610
+ /* @__PURE__ */ jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", fill: primaryColor }),
611
+ /* @__PURE__ */ jsx("path", { d: "M21 4H3l7 8.5v4.5l4 2.5v-7L21 4z", fill: "white", opacity: "0.1" })
612
+ ] })
613
+ }
213
614
  });
214
615
  const NtdSort = /* @__PURE__ */ createIcon({
215
- displayName: 'NtdSort',
216
- paths: {
217
- solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "5", width: "16", height: "2", rx: "1", fill: primaryColor }), jsx("rect", { x: "4", y: "11", width: "11", height: "2", rx: "1", fill: primaryColor }), jsx("rect", { x: "4", y: "17", width: "6", height: "2", rx: "1", fill: primaryColor })] })),
218
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("line", { x1: "4", y1: "6", x2: "20", y2: "6", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "4", y1: "12", x2: "15", y2: "12", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "4", y1: "18", x2: "10", y2: "18", stroke: primaryColor, strokeWidth: strokeWidth })] })),
219
- duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("line", { x1: "4", y1: "6", x2: "20", y2: "6", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "4", y1: "12", x2: "15", y2: "12", stroke: secondaryColor, strokeWidth: strokeWidth, opacity: secondaryOpacity + 0.3 }), jsx("line", { x1: "4", y1: "18", x2: "10", y2: "18", stroke: secondaryColor, strokeWidth: strokeWidth, opacity: secondaryOpacity })] }))),
220
- vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "4", y: "5", width: "16", height: "2", rx: "1", fill: primaryColor }), jsx("rect", { x: "4", y: "5", width: "16", height: "2", rx: "1", fill: "white", opacity: "0.08" }), jsx("rect", { x: "4", y: "11", width: "11", height: "2", rx: "1", fill: secondaryColor }), jsx("rect", { x: "4", y: "17", width: "6", height: "2", rx: "1", fill: "#3B82F6" })] })),
221
- },
616
+ displayName: "NtdSort",
617
+ paths: {
618
+ solid: ({ primaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
619
+ /* @__PURE__ */ jsx("rect", { x: "4", y: "5", width: "16", height: "2", rx: "1", fill: primaryColor }),
620
+ /* @__PURE__ */ jsx("rect", { x: "4", y: "11", width: "11", height: "2", rx: "1", fill: primaryColor }),
621
+ /* @__PURE__ */ jsx("rect", { x: "4", y: "17", width: "6", height: "2", rx: "1", fill: primaryColor })
622
+ ] }),
623
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
624
+ /* @__PURE__ */ jsx("line", { x1: "4", y1: "6", x2: "20", y2: "6", stroke: primaryColor, strokeWidth }),
625
+ /* @__PURE__ */ jsx("line", { x1: "4", y1: "12", x2: "15", y2: "12", stroke: primaryColor, strokeWidth }),
626
+ /* @__PURE__ */ jsx("line", { x1: "4", y1: "18", x2: "10", y2: "18", stroke: primaryColor, strokeWidth })
627
+ ] }),
628
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
629
+ /* @__PURE__ */ jsx("line", { x1: "4", y1: "6", x2: "20", y2: "6", stroke: primaryColor, strokeWidth }),
630
+ /* @__PURE__ */ jsx(
631
+ "line",
632
+ {
633
+ x1: "4",
634
+ y1: "12",
635
+ x2: "15",
636
+ y2: "12",
637
+ stroke: secondaryColor,
638
+ strokeWidth,
639
+ opacity: secondaryOpacity + 0.3
640
+ }
641
+ ),
642
+ /* @__PURE__ */ jsx(
643
+ "line",
644
+ {
645
+ x1: "4",
646
+ y1: "18",
647
+ x2: "10",
648
+ y2: "18",
649
+ stroke: secondaryColor,
650
+ strokeWidth,
651
+ opacity: secondaryOpacity
652
+ }
653
+ )
654
+ ] })),
655
+ vivid: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
656
+ /* @__PURE__ */ jsx("rect", { x: "4", y: "5", width: "16", height: "2", rx: "1", fill: primaryColor }),
657
+ /* @__PURE__ */ jsx("rect", { x: "4", y: "5", width: "16", height: "2", rx: "1", fill: "white", opacity: "0.08" }),
658
+ /* @__PURE__ */ jsx("rect", { x: "4", y: "11", width: "11", height: "2", rx: "1", fill: secondaryColor }),
659
+ /* @__PURE__ */ jsx("rect", { x: "4", y: "17", width: "6", height: "2", rx: "1", fill: "#3B82F6" })
660
+ ] })
661
+ }
222
662
  });
223
663
  const NtdPrint = /* @__PURE__ */ createIcon({
224
- displayName: 'NtdPrint',
225
- paths: {
226
- solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 9h16a2 2 0 012 2v5a2 2 0 01-2 2H4a2 2 0 01-2-2v-5a2 2 0 012-2z", fill: primaryColor }), jsx("path", { d: "M6 9V3h12v6", stroke: primaryColor, strokeWidth: strokeWidth, fill: accentColor, opacity: accentOpacity * 0.5 }), jsx("rect", { x: "6", y: "15", width: "12", height: "7", rx: "1", fill: accentColor, opacity: accentOpacity }), jsx("line", { x1: "9", y1: "18", x2: "15", y2: "18", stroke: primaryColor, strokeWidth: "1", opacity: "0.15" })] })),
227
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M6 9V3h12v6", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M6 18H4a2 2 0 01-2-2v-5a2 2 0 012-2h16a2 2 0 012 2v5a2 2 0 01-2 2h-2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("rect", { x: "6", y: "15", width: "12", height: "7", rx: "1", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
228
- vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 9h16a2 2 0 012 2v5a2 2 0 01-2 2H4a2 2 0 01-2-2v-5a2 2 0 012-2z", fill: primaryColor }), jsx("path", { d: "M4 9h16a2 2 0 012 2v5a2 2 0 01-2 2H4a2 2 0 01-2-2v-5a2 2 0 012-2z", fill: "white", opacity: "0.08" }), jsx("path", { d: "M6 9V3h12v6", stroke: secondaryColor, strokeWidth: "2", fill: secondaryColor }), jsx("rect", { x: "6", y: "15", width: "12", height: "7", rx: "1", fill: "#3B82F6" }), jsx("line", { x1: "9", y1: "18", x2: "15", y2: "18", stroke: "white", strokeWidth: "1", opacity: "0.35" })] })),
229
- },
664
+ displayName: "NtdPrint",
665
+ paths: {
666
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
667
+ /* @__PURE__ */ jsx(
668
+ "path",
669
+ {
670
+ d: "M4 9h16a2 2 0 012 2v5a2 2 0 01-2 2H4a2 2 0 01-2-2v-5a2 2 0 012-2z",
671
+ fill: primaryColor
672
+ }
673
+ ),
674
+ /* @__PURE__ */ jsx(
675
+ "path",
676
+ {
677
+ d: "M6 9V3h12v6",
678
+ stroke: primaryColor,
679
+ strokeWidth,
680
+ fill: accentColor,
681
+ opacity: accentOpacity * 0.5
682
+ }
683
+ ),
684
+ /* @__PURE__ */ jsx(
685
+ "rect",
686
+ {
687
+ x: "6",
688
+ y: "15",
689
+ width: "12",
690
+ height: "7",
691
+ rx: "1",
692
+ fill: accentColor,
693
+ opacity: accentOpacity
694
+ }
695
+ ),
696
+ /* @__PURE__ */ jsx("line", { x1: "9", y1: "18", x2: "15", y2: "18", stroke: primaryColor, strokeWidth: "1", opacity: "0.15" })
697
+ ] }),
698
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
699
+ /* @__PURE__ */ jsx("path", { d: "M6 9V3h12v6", stroke: primaryColor, strokeWidth, fill: "none" }),
700
+ /* @__PURE__ */ jsx(
701
+ "path",
702
+ {
703
+ d: "M6 18H4a2 2 0 01-2-2v-5a2 2 0 012-2h16a2 2 0 012 2v5a2 2 0 01-2 2h-2",
704
+ stroke: primaryColor,
705
+ strokeWidth,
706
+ fill: "none"
707
+ }
708
+ ),
709
+ /* @__PURE__ */ jsx(
710
+ "rect",
711
+ {
712
+ x: "6",
713
+ y: "15",
714
+ width: "12",
715
+ height: "7",
716
+ rx: "1",
717
+ stroke: primaryColor,
718
+ strokeWidth,
719
+ fill: "none"
720
+ }
721
+ )
722
+ ] }),
723
+ vivid: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
724
+ /* @__PURE__ */ jsx(
725
+ "path",
726
+ {
727
+ d: "M4 9h16a2 2 0 012 2v5a2 2 0 01-2 2H4a2 2 0 01-2-2v-5a2 2 0 012-2z",
728
+ fill: primaryColor
729
+ }
730
+ ),
731
+ /* @__PURE__ */ jsx(
732
+ "path",
733
+ {
734
+ d: "M4 9h16a2 2 0 012 2v5a2 2 0 01-2 2H4a2 2 0 01-2-2v-5a2 2 0 012-2z",
735
+ fill: "white",
736
+ opacity: "0.08"
737
+ }
738
+ ),
739
+ /* @__PURE__ */ jsx("path", { d: "M6 9V3h12v6", stroke: secondaryColor, strokeWidth: "2", fill: secondaryColor }),
740
+ /* @__PURE__ */ jsx("rect", { x: "6", y: "15", width: "12", height: "7", rx: "1", fill: "#3B82F6" }),
741
+ /* @__PURE__ */ jsx("line", { x1: "9", y1: "18", x2: "15", y2: "18", stroke: "white", strokeWidth: "1", opacity: "0.35" })
742
+ ] })
743
+ }
230
744
  });
231
- const NtdZoomIn = /* @__PURE__ */ lensIcon('NtdZoomIn', 'M11 8v6M8 11h6');
232
- const NtdZoomOut = /* @__PURE__ */ lensIcon('NtdZoomOut', 'M8 11h6');
233
- /* NtdUndo / NtdRedo — the old glyph was two arcs of different radii whose ends
234
- never met the arrow, which read as a fish rather than a rotation. Redrawn as
235
- one semicircular loop (r 5.5 about 13.5,14 — mirrored to 10.5,14 for redo)
236
- plus a chevron whose apex lands exactly on the tail start, so the arrow and
237
- the tail close. `solid` fills the head so it is no longer byte-identical to
238
- `outline`; the tail then starts at the head's back edge (9.5 / 14.5) instead
239
- of the apex, keeping the stroke cap from poking past the tip — duotone and
240
- vivid too. Every variant but `outline` draws the tail at twice the stroke
241
- width. */
745
+ const NtdZoomIn = /* @__PURE__ */ lensIcon("NtdZoomIn", "M11 8v6M8 11h6");
746
+ const NtdZoomOut = /* @__PURE__ */ lensIcon("NtdZoomOut", "M8 11h6");
242
747
  const NtdUndo = /* @__PURE__ */ createIcon({
243
- displayName: 'NtdUndo',
244
- paths: {
245
- solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M9.5 8.5H13.5a5.5 5.5 0 1 1 0 11H9", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M9.5 4L5 8.5l4.5 4.5z", fill: primaryColor })] })),
246
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 8.5H13.5a5.5 5.5 0 1 1 0 11H9", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M9.5 4L5 8.5l4.5 4.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
247
- // Two-tone by PART, not by a backing blob: the tail in primary, the arrowhead
248
- // in secondary (swapped in 1.3.8: the larger part primary), both at full
249
- // strength. (The old version put a secondary disc
250
- // behind the curve, which read as "a ball in the middle"; a washed-out tail
251
- // would likewise miss the point — this is a colour split, not an underlay.)
252
- duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M9.5 8.5H13.5a5.5 5.5 0 1 1 0 11H9", stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M9.5 4L5 8.5l4.5 4.5z", fill: primaryColor })] }))),
253
- vivid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M9.5 8.5H13.5a5.5 5.5 0 1 1 0 11H9", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M9.5 4L5 8.5l4.5 4.5z", fill: primaryColor })] })),
254
- },
748
+ displayName: "NtdUndo",
749
+ paths: {
750
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
751
+ /* @__PURE__ */ jsx(
752
+ "path",
753
+ {
754
+ d: "M9.5 8.5H13.5a5.5 5.5 0 1 1 0 11H9",
755
+ stroke: primaryColor,
756
+ strokeWidth: strokeWidth * 2,
757
+ fill: "none"
758
+ }
759
+ ),
760
+ /* @__PURE__ */ jsx("path", { d: "M9.5 4L5 8.5l4.5 4.5z", fill: primaryColor })
761
+ ] }),
762
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
763
+ /* @__PURE__ */ jsx(
764
+ "path",
765
+ {
766
+ d: "M5 8.5H13.5a5.5 5.5 0 1 1 0 11H9",
767
+ stroke: primaryColor,
768
+ strokeWidth,
769
+ fill: "none"
770
+ }
771
+ ),
772
+ /* @__PURE__ */ jsx(
773
+ "path",
774
+ {
775
+ d: "M9.5 4L5 8.5l4.5 4.5",
776
+ stroke: primaryColor,
777
+ strokeWidth,
778
+ fill: "none"
779
+ }
780
+ )
781
+ ] }),
782
+ // Two-tone by PART, not by a backing blob: the tail in primary, the arrowhead
783
+ // in secondary (swapped in 1.3.8: the larger part primary), both at full
784
+ // strength. (The old version put a secondary disc
785
+ // behind the curve, which read as "a ball in the middle"; a washed-out tail
786
+ // would likewise miss the point — this is a colour split, not an underlay.)
787
+ duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
788
+ /* @__PURE__ */ jsx(
789
+ "path",
790
+ {
791
+ d: "M9.5 8.5H13.5a5.5 5.5 0 1 1 0 11H9",
792
+ stroke: secondaryColor,
793
+ strokeWidth: strokeWidth * 2,
794
+ fill: "none"
795
+ }
796
+ ),
797
+ /* @__PURE__ */ jsx("path", { d: "M9.5 4L5 8.5l4.5 4.5z", fill: primaryColor })
798
+ ] })),
799
+ vivid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
800
+ /* @__PURE__ */ jsx(
801
+ "path",
802
+ {
803
+ d: "M9.5 8.5H13.5a5.5 5.5 0 1 1 0 11H9",
804
+ stroke: primaryColor,
805
+ strokeWidth: strokeWidth * 2,
806
+ fill: "none"
807
+ }
808
+ ),
809
+ /* @__PURE__ */ jsx("path", { d: "M9.5 4L5 8.5l4.5 4.5z", fill: primaryColor })
810
+ ] })
811
+ }
255
812
  });
256
813
  const NtdRedo = /* @__PURE__ */ createIcon({
257
- displayName: 'NtdRedo',
258
- paths: {
259
- solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M14.5 8.5H10.5a5.5 5.5 0 1 0 0 11H15", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M14.5 4L19 8.5l-4.5 4.5z", fill: primaryColor })] })),
260
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M19 8.5H10.5a5.5 5.5 0 1 0 0 11H15", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M14.5 4L19 8.5l-4.5 4.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
261
- // Mirror of NtdUndo: tail primary, arrowhead secondary — no backing disc.
262
- duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M14.5 8.5H10.5a5.5 5.5 0 1 0 0 11H15", stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M14.5 4L19 8.5l-4.5 4.5z", fill: primaryColor })] }))),
263
- vivid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M14.5 8.5H10.5a5.5 5.5 0 1 0 0 11H15", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M14.5 4L19 8.5l-4.5 4.5z", fill: primaryColor })] })),
264
- },
814
+ displayName: "NtdRedo",
815
+ paths: {
816
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
817
+ /* @__PURE__ */ jsx(
818
+ "path",
819
+ {
820
+ d: "M14.5 8.5H10.5a5.5 5.5 0 1 0 0 11H15",
821
+ stroke: primaryColor,
822
+ strokeWidth: strokeWidth * 2,
823
+ fill: "none"
824
+ }
825
+ ),
826
+ /* @__PURE__ */ jsx("path", { d: "M14.5 4L19 8.5l-4.5 4.5z", fill: primaryColor })
827
+ ] }),
828
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
829
+ /* @__PURE__ */ jsx(
830
+ "path",
831
+ {
832
+ d: "M19 8.5H10.5a5.5 5.5 0 1 0 0 11H15",
833
+ stroke: primaryColor,
834
+ strokeWidth,
835
+ fill: "none"
836
+ }
837
+ ),
838
+ /* @__PURE__ */ jsx(
839
+ "path",
840
+ {
841
+ d: "M14.5 4L19 8.5l-4.5 4.5",
842
+ stroke: primaryColor,
843
+ strokeWidth,
844
+ fill: "none"
845
+ }
846
+ )
847
+ ] }),
848
+ // Mirror of NtdUndo: tail primary, arrowhead secondary — no backing disc.
849
+ duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
850
+ /* @__PURE__ */ jsx(
851
+ "path",
852
+ {
853
+ d: "M14.5 8.5H10.5a5.5 5.5 0 1 0 0 11H15",
854
+ stroke: secondaryColor,
855
+ strokeWidth: strokeWidth * 2,
856
+ fill: "none"
857
+ }
858
+ ),
859
+ /* @__PURE__ */ jsx("path", { d: "M14.5 4L19 8.5l-4.5 4.5z", fill: primaryColor })
860
+ ] })),
861
+ vivid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
862
+ /* @__PURE__ */ jsx(
863
+ "path",
864
+ {
865
+ d: "M14.5 8.5H10.5a5.5 5.5 0 1 0 0 11H15",
866
+ stroke: primaryColor,
867
+ strokeWidth: strokeWidth * 2,
868
+ fill: "none"
869
+ }
870
+ ),
871
+ /* @__PURE__ */ jsx("path", { d: "M14.5 4L19 8.5l-4.5 4.5z", fill: primaryColor })
872
+ ] })
873
+ }
265
874
  });
266
- // Reply: the arrow turns back to the left at a right angle (the "corner-up-left" of a message
267
- // thread), unlike NtdUndo's loop. Same split as NtdUndo: arrowhead primary, tail secondary.
268
875
  const NtdReply = /* @__PURE__ */ createIcon({
269
- displayName: 'NtdReply',
270
- paths: {
271
- solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M20 18v-2a4 4 0 0 0-4-4H8", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M9 7L4 12l5 5z", fill: primaryColor })] })),
272
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M20 18v-2a4 4 0 0 0-4-4H4", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M9 7L4 12l5 5", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", fill: "none" })] })),
273
- duotone: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M20 18v-2a4 4 0 0 0-4-4H8", stroke: secondaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M9 7L4 12l5 5z", fill: primaryColor })] })),
274
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M20 18v-2a4 4 0 0 0-4-4H8", stroke: primaryColor, strokeWidth: "2.2", fill: "none" }), jsx("path", { d: "M9 7L4 12l5 5z", fill: primaryColor })] })),
275
- },
876
+ displayName: "NtdReply",
877
+ paths: {
878
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
879
+ /* @__PURE__ */ jsx(
880
+ "path",
881
+ {
882
+ d: "M20 18v-2a4 4 0 0 0-4-4H8",
883
+ stroke: primaryColor,
884
+ strokeWidth,
885
+ fill: "none"
886
+ }
887
+ ),
888
+ /* @__PURE__ */ jsx("path", { d: "M9 7L4 12l5 5z", fill: primaryColor })
889
+ ] }),
890
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
891
+ /* @__PURE__ */ jsx(
892
+ "path",
893
+ {
894
+ d: "M20 18v-2a4 4 0 0 0-4-4H4",
895
+ stroke: primaryColor,
896
+ strokeWidth,
897
+ fill: "none"
898
+ }
899
+ ),
900
+ /* @__PURE__ */ jsx(
901
+ "path",
902
+ {
903
+ d: "M9 7L4 12l5 5",
904
+ stroke: primaryColor,
905
+ strokeWidth,
906
+ strokeLinecap: "round",
907
+ strokeLinejoin: "round",
908
+ fill: "none"
909
+ }
910
+ )
911
+ ] }),
912
+ duotone: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
913
+ /* @__PURE__ */ jsx(
914
+ "path",
915
+ {
916
+ d: "M20 18v-2a4 4 0 0 0-4-4H8",
917
+ stroke: secondaryColor,
918
+ strokeWidth,
919
+ fill: "none"
920
+ }
921
+ ),
922
+ /* @__PURE__ */ jsx("path", { d: "M9 7L4 12l5 5z", fill: primaryColor })
923
+ ] }),
924
+ vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
925
+ /* @__PURE__ */ jsx("path", { d: "M20 18v-2a4 4 0 0 0-4-4H8", stroke: primaryColor, strokeWidth: "2.2", fill: "none" }),
926
+ /* @__PURE__ */ jsx("path", { d: "M9 7L4 12l5 5z", fill: primaryColor })
927
+ ] })
928
+ }
276
929
  });
277
- // A line glyph: twice the stroke width in every variant but `outline`.
278
930
  const NtdLink = /* @__PURE__ */ createIcon({
279
- displayName: 'NtdLink',
280
- paths: {
281
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })),
282
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
283
- // one ring per colour: the left link primary, the right one secondary (swapped in 1.3.8)
284
- duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71", stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })] }))),
285
- vivid: ({ primaryColor, strokeWidth }) => (jsx(Fragment, { children: jsx("path", { d: "M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }) })),
286
- },
931
+ displayName: "NtdLink",
932
+ paths: {
933
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
934
+ "path",
935
+ {
936
+ d: "M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71",
937
+ stroke: primaryColor,
938
+ strokeWidth: strokeWidth * 2,
939
+ fill: "none"
940
+ }
941
+ ),
942
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
943
+ "path",
944
+ {
945
+ d: "M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71",
946
+ stroke: primaryColor,
947
+ strokeWidth,
948
+ fill: "none"
949
+ }
950
+ ),
951
+ // one ring per colour: the left link primary, the right one secondary (swapped in 1.3.8)
952
+ duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
953
+ /* @__PURE__ */ jsx(
954
+ "path",
955
+ {
956
+ d: "M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71",
957
+ stroke: secondaryColor,
958
+ strokeWidth: strokeWidth * 2,
959
+ fill: "none"
960
+ }
961
+ ),
962
+ /* @__PURE__ */ jsx(
963
+ "path",
964
+ {
965
+ d: "M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71",
966
+ stroke: primaryColor,
967
+ strokeWidth: strokeWidth * 2,
968
+ fill: "none"
969
+ }
970
+ )
971
+ ] })),
972
+ vivid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(
973
+ "path",
974
+ {
975
+ d: "M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71",
976
+ stroke: primaryColor,
977
+ strokeWidth: strokeWidth * 2,
978
+ fill: "none"
979
+ }
980
+ ) })
981
+ }
287
982
  });
288
- // NtdSettings: a gear whose eight teeth have flat tops, in every variant but `rounded`, which
289
- // keeps the round-toothed gear it used to draw everywhere.
290
- const GEAR = 'M9.95 4.58L10.55 1.7L13.45 1.7L14.05 4.58A7.7 7.7 0 0 1 15.8 5.3L18.26 3.69L20.31 5.74L18.7 8.2A7.7 7.7 0 0 1 19.42 9.95L22.3 10.55L22.3 13.45L19.42 14.05A7.7 7.7 0 0 1 18.7 15.8L20.31 18.26L18.26 20.31L15.8 18.7A7.7 7.7 0 0 1 14.05 19.42L13.45 22.3L10.55 22.3L9.95 19.42A7.7 7.7 0 0 1 8.2 18.7L5.74 20.31L3.69 18.26L5.3 15.8A7.7 7.7 0 0 1 4.58 14.05L1.7 13.45L1.7 10.55L4.58 9.95A7.7 7.7 0 0 1 5.3 8.2L3.69 5.74L5.74 3.69L8.2 5.3A7.7 7.7 0 0 1 9.95 4.58Z';
291
- const GEAR_ROUND = 'M19.4 15a1.65 1.65 0 00.33 1.82l.06.06a2 2 0 01-2.83 2.83l-.06-.06a1.65 1.65 0 00-1.82-.33 1.65 1.65 0 00-1 1.51V21a2 2 0 01-4 0v-.09A1.65 1.65 0 009 19.4a1.65 1.65 0 00-1.82.33l-.06.06a2 2 0 01-2.83-2.83l.06-.06A1.65 1.65 0 004.68 15a1.65 1.65 0 00-1.51-1H3a2 2 0 010-4h.09A1.65 1.65 0 004.6 8.68a1.65 1.65 0 00-.33-1.82l-.06-.06a2 2 0 012.83-2.83l.06.06A1.65 1.65 0 009 4.6a1.65 1.65 0 001-1.51V3a2 2 0 014 0v.09a1.65 1.65 0 001 1.51 1.65 1.65 0 001.82-.33l.06-.06a2 2 0 012.83 2.83l-.06.06a1.65 1.65 0 00-.33 1.82V9a1.65 1.65 0 001.51 1H21a2 2 0 010 4h-.09a1.65 1.65 0 00-1.51 1z';
292
- /** The axle hole, r 3.2. */
293
- const GEAR_HOLE = 'M12 8.8a3.2 3.2 0 100 6.4 3.2 3.2 0 100-6.4z';
294
- /** The hub around the hole, r 5 — duotone and vivid only. */
295
- const GEAR_HUB = 'M12 7a5 5 0 100 10 5 5 0 100-10z';
983
+ const GEAR = "M9.95 4.58L10.55 1.7L13.45 1.7L14.05 4.58A7.7 7.7 0 0 1 15.8 5.3L18.26 3.69L20.31 5.74L18.7 8.2A7.7 7.7 0 0 1 19.42 9.95L22.3 10.55L22.3 13.45L19.42 14.05A7.7 7.7 0 0 1 18.7 15.8L20.31 18.26L18.26 20.31L15.8 18.7A7.7 7.7 0 0 1 14.05 19.42L13.45 22.3L10.55 22.3L9.95 19.42A7.7 7.7 0 0 1 8.2 18.7L5.74 20.31L3.69 18.26L5.3 15.8A7.7 7.7 0 0 1 4.58 14.05L1.7 13.45L1.7 10.55L4.58 9.95A7.7 7.7 0 0 1 5.3 8.2L3.69 5.74L5.74 3.69L8.2 5.3A7.7 7.7 0 0 1 9.95 4.58Z";
984
+ const GEAR_ROUND = "M19.4 15a1.65 1.65 0 00.33 1.82l.06.06a2 2 0 01-2.83 2.83l-.06-.06a1.65 1.65 0 00-1.82-.33 1.65 1.65 0 00-1 1.51V21a2 2 0 01-4 0v-.09A1.65 1.65 0 009 19.4a1.65 1.65 0 00-1.82.33l-.06.06a2 2 0 01-2.83-2.83l.06-.06A1.65 1.65 0 004.68 15a1.65 1.65 0 00-1.51-1H3a2 2 0 010-4h.09A1.65 1.65 0 004.6 8.68a1.65 1.65 0 00-.33-1.82l-.06-.06a2 2 0 012.83-2.83l.06.06A1.65 1.65 0 009 4.6a1.65 1.65 0 001-1.51V3a2 2 0 014 0v.09a1.65 1.65 0 001 1.51 1.65 1.65 0 001.82-.33l.06-.06a2 2 0 012.83 2.83l-.06.06a1.65 1.65 0 00-.33 1.82V9a1.65 1.65 0 001.51 1H21a2 2 0 010 4h-.09a1.65 1.65 0 00-1.51 1z";
985
+ const GEAR_HOLE = "M12 8.8a3.2 3.2 0 100 6.4 3.2 3.2 0 100-6.4z";
986
+ const GEAR_HUB = "M12 7a5 5 0 100 10 5 5 0 100-10z";
296
987
  const NtdSettings = /* @__PURE__ */ createIcon({
297
- displayName: 'NtdSettings',
298
- paths: {
299
- solid: ({ primaryColor }) => (jsx("path", { d: `${GEAR}${GEAR_HOLE}`, fillRule: "evenodd", fill: primaryColor })),
300
- rounded: ({ primaryColor }) => (jsx("path", { d: `${GEAR_ROUND}${GEAR_HOLE}`, fillRule: "evenodd", fill: primaryColor })),
301
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: `${GEAR}M12 9a3 3 0 100 6 3 3 0 100-6z`, stroke: primaryColor, strokeWidth: strokeWidth, strokeLinejoin: "round", fill: "none" })),
302
- // fills only: the gear primary, its hub secondary (swapped in 1.3.8: the larger part primary)
303
- duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity }) => (jsxs(Fragment, { children: [jsx("path", { d: `${GEAR}${GEAR_HOLE}`, fillRule: "evenodd", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: `${GEAR_HUB}${GEAR_HOLE}`, fillRule: "evenodd", fill: primaryColor })] }))),
304
- vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: `${GEAR}${GEAR_HOLE}`, fillRule: "evenodd", fill: primaryColor }), jsx("path", { d: `${GEAR_HUB}${GEAR_HOLE}`, fillRule: "evenodd", fill: secondaryColor })] })),
305
- },
988
+ displayName: "NtdSettings",
989
+ paths: {
990
+ solid: ({ primaryColor }) => /* @__PURE__ */ jsx("path", { d: `${GEAR}${GEAR_HOLE}`, fillRule: "evenodd", fill: primaryColor }),
991
+ rounded: ({ primaryColor }) => /* @__PURE__ */ jsx("path", { d: `${GEAR_ROUND}${GEAR_HOLE}`, fillRule: "evenodd", fill: primaryColor }),
992
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
993
+ "path",
994
+ {
995
+ d: `${GEAR}M12 9a3 3 0 100 6 3 3 0 100-6z`,
996
+ stroke: primaryColor,
997
+ strokeWidth,
998
+ strokeLinejoin: "round",
999
+ fill: "none"
1000
+ }
1001
+ ),
1002
+ // fills only: the gear primary, its hub secondary (swapped in 1.3.8: the larger part primary)
1003
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1004
+ /* @__PURE__ */ jsx(
1005
+ "path",
1006
+ {
1007
+ d: `${GEAR}${GEAR_HOLE}`,
1008
+ fillRule: "evenodd",
1009
+ fill: secondaryColor,
1010
+ opacity: secondaryOpacity
1011
+ }
1012
+ ),
1013
+ /* @__PURE__ */ jsx("path", { d: `${GEAR_HUB}${GEAR_HOLE}`, fillRule: "evenodd", fill: primaryColor })
1014
+ ] })),
1015
+ vivid: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1016
+ /* @__PURE__ */ jsx("path", { d: `${GEAR}${GEAR_HOLE}`, fillRule: "evenodd", fill: primaryColor }),
1017
+ /* @__PURE__ */ jsx("path", { d: `${GEAR_HUB}${GEAR_HOLE}`, fillRule: "evenodd", fill: secondaryColor })
1018
+ ] })
1019
+ }
306
1020
  });
307
- // NtdLogIn / NtdLogOut: a line glyph, twice the stroke width in every variant but `outline`. The
308
- // shaft stops 2 short of the arrowhead's point, so the square caps of `sharp` stay inside it.
309
- // Vivid splits it like NtdDownload: the arrow primary, the door frame secondary; duotone the other
310
- // way round, the larger frame primary (1.3.8).
311
1021
  const NtdLogIn = /* @__PURE__ */ createIcon({
312
- displayName: 'NtdLogIn',
313
- paths: {
314
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M9 7l5 5-5 5M12 12H3", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })),
315
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M9 7l5 5-5 5M14 12H3", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
316
- duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4", stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M9 7l5 5-5 5M12 12H3", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })] }))),
317
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4", stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M9 7l5 5-5 5M12 12H3", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })] })),
318
- },
1022
+ displayName: "NtdLogIn",
1023
+ paths: {
1024
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
1025
+ "path",
1026
+ {
1027
+ d: "M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M9 7l5 5-5 5M12 12H3",
1028
+ stroke: primaryColor,
1029
+ strokeWidth: strokeWidth * 2,
1030
+ fill: "none"
1031
+ }
1032
+ ),
1033
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
1034
+ "path",
1035
+ {
1036
+ d: "M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M9 7l5 5-5 5M14 12H3",
1037
+ stroke: primaryColor,
1038
+ strokeWidth,
1039
+ fill: "none"
1040
+ }
1041
+ ),
1042
+ duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1043
+ /* @__PURE__ */ jsx(
1044
+ "path",
1045
+ {
1046
+ d: "M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4",
1047
+ stroke: secondaryColor,
1048
+ strokeWidth: strokeWidth * 2,
1049
+ fill: "none"
1050
+ }
1051
+ ),
1052
+ /* @__PURE__ */ jsx(
1053
+ "path",
1054
+ {
1055
+ d: "M9 7l5 5-5 5M12 12H3",
1056
+ stroke: primaryColor,
1057
+ strokeWidth: strokeWidth * 2,
1058
+ fill: "none"
1059
+ }
1060
+ )
1061
+ ] })),
1062
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1063
+ /* @__PURE__ */ jsx(
1064
+ "path",
1065
+ {
1066
+ d: "M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4",
1067
+ stroke: secondaryColor,
1068
+ strokeWidth: strokeWidth * 2,
1069
+ fill: "none"
1070
+ }
1071
+ ),
1072
+ /* @__PURE__ */ jsx(
1073
+ "path",
1074
+ {
1075
+ d: "M9 7l5 5-5 5M12 12H3",
1076
+ stroke: primaryColor,
1077
+ strokeWidth: strokeWidth * 2,
1078
+ fill: "none"
1079
+ }
1080
+ )
1081
+ ] })
1082
+ }
319
1083
  });
320
1084
  const NtdLogOut = /* @__PURE__ */ createIcon({
321
- displayName: 'NtdLogOut',
322
- paths: {
323
- solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4M15 7l5 5-5 5M18 12H9", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })),
324
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4M15 7l5 5-5 5M20 12H9", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
325
- duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4", stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M15 7l5 5-5 5M18 12H9", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })] }))),
326
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4", stroke: secondaryColor, strokeWidth: strokeWidth * 2, fill: "none" }), jsx("path", { d: "M15 7l5 5-5 5M18 12H9", stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" })] })),
327
- },
1085
+ displayName: "NtdLogOut",
1086
+ paths: {
1087
+ solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
1088
+ "path",
1089
+ {
1090
+ d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4M15 7l5 5-5 5M18 12H9",
1091
+ stroke: primaryColor,
1092
+ strokeWidth: strokeWidth * 2,
1093
+ fill: "none"
1094
+ }
1095
+ ),
1096
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
1097
+ "path",
1098
+ {
1099
+ d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4M15 7l5 5-5 5M20 12H9",
1100
+ stroke: primaryColor,
1101
+ strokeWidth,
1102
+ fill: "none"
1103
+ }
1104
+ ),
1105
+ duotone: swapDuotone(({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1106
+ /* @__PURE__ */ jsx(
1107
+ "path",
1108
+ {
1109
+ d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4",
1110
+ stroke: secondaryColor,
1111
+ strokeWidth: strokeWidth * 2,
1112
+ fill: "none"
1113
+ }
1114
+ ),
1115
+ /* @__PURE__ */ jsx(
1116
+ "path",
1117
+ {
1118
+ d: "M15 7l5 5-5 5M18 12H9",
1119
+ stroke: primaryColor,
1120
+ strokeWidth: strokeWidth * 2,
1121
+ fill: "none"
1122
+ }
1123
+ )
1124
+ ] })),
1125
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1126
+ /* @__PURE__ */ jsx(
1127
+ "path",
1128
+ {
1129
+ d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4",
1130
+ stroke: secondaryColor,
1131
+ strokeWidth: strokeWidth * 2,
1132
+ fill: "none"
1133
+ }
1134
+ ),
1135
+ /* @__PURE__ */ jsx(
1136
+ "path",
1137
+ {
1138
+ d: "M15 7l5 5-5 5M18 12H9",
1139
+ stroke: primaryColor,
1140
+ strokeWidth: strokeWidth * 2,
1141
+ fill: "none"
1142
+ }
1143
+ )
1144
+ ] })
1145
+ }
328
1146
  });
329
1147
  const NtdLock = /* @__PURE__ */ createIcon({
330
- displayName: 'NtdLock',
331
- perfectStackX: 12,
332
- perfectStackY: 16.5,
333
- perfectStackSize: 0.35,
334
- paths: {
335
- solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: primaryColor }), jsx("path", { d: "M7 11V7a5 5 0 0110 0v4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: accentColor, opacity: accentOpacity }), jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: accentColor, opacity: accentOpacity })] })),
336
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M7 11V7a5 5 0 0110 0v4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: primaryColor }), jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: primaryColor })] })),
337
- vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: primaryColor }), jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: secondaryColor }), jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: "#3B82F6" }), jsx("path", { d: "M7 11V7a5 5 0 0110 0v4", stroke: "white", strokeWidth: "1" })] })),
338
- },
1148
+ displayName: "NtdLock",
1149
+ perfectStackX: 12,
1150
+ perfectStackY: 16.5,
1151
+ perfectStackSize: 0.35,
1152
+ paths: {
1153
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1154
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: primaryColor }),
1155
+ /* @__PURE__ */ jsx("path", { d: "M7 11V7a5 5 0 0110 0v4", stroke: primaryColor, strokeWidth }),
1156
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: accentColor, opacity: accentOpacity }),
1157
+ /* @__PURE__ */ jsx(
1158
+ "rect",
1159
+ {
1160
+ x: "11.25",
1161
+ y: "16.5",
1162
+ width: "1.5",
1163
+ height: "2",
1164
+ rx: "0.5",
1165
+ fill: accentColor,
1166
+ opacity: accentOpacity
1167
+ }
1168
+ )
1169
+ ] }),
1170
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1171
+ /* @__PURE__ */ jsx(
1172
+ "rect",
1173
+ {
1174
+ x: "3",
1175
+ y: "11",
1176
+ width: "18",
1177
+ height: "11",
1178
+ rx: "2.5",
1179
+ stroke: primaryColor,
1180
+ strokeWidth,
1181
+ fill: "none"
1182
+ }
1183
+ ),
1184
+ /* @__PURE__ */ jsx("path", { d: "M7 11V7a5 5 0 0110 0v4", stroke: primaryColor, strokeWidth }),
1185
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: primaryColor }),
1186
+ /* @__PURE__ */ jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: primaryColor })
1187
+ ] }),
1188
+ vivid: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1189
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: primaryColor }),
1190
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: "white", opacity: "0.08" }),
1191
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: secondaryColor }),
1192
+ /* @__PURE__ */ jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: "#3B82F6" }),
1193
+ /* @__PURE__ */ jsx("path", { d: "M7 11V7a5 5 0 0110 0v4", stroke: "white", strokeWidth: "1" })
1194
+ ] })
1195
+ }
339
1196
  });
340
1197
  const NtdUnlock = /* @__PURE__ */ createIcon({
341
- displayName: 'NtdUnlock',
342
- paths: {
343
- solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: primaryColor }), jsx("path", { d: "M7 11V7a5 5 0 019.9-1", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: accentColor, opacity: accentOpacity }), jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: accentColor, opacity: accentOpacity })] })),
344
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M7 11V7a5 5 0 019.9-1", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: primaryColor }), jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: primaryColor })] })),
345
- vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: primaryColor }), jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: secondaryColor }), jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: "#3B82F6" }), jsx("path", { d: "M7 11V7a5 5 0 019.9-1", stroke: "white", strokeWidth: "1" })] })),
346
- },
1198
+ displayName: "NtdUnlock",
1199
+ paths: {
1200
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1201
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: primaryColor }),
1202
+ /* @__PURE__ */ jsx("path", { d: "M7 11V7a5 5 0 019.9-1", stroke: primaryColor, strokeWidth }),
1203
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: accentColor, opacity: accentOpacity }),
1204
+ /* @__PURE__ */ jsx(
1205
+ "rect",
1206
+ {
1207
+ x: "11.25",
1208
+ y: "16.5",
1209
+ width: "1.5",
1210
+ height: "2",
1211
+ rx: "0.5",
1212
+ fill: accentColor,
1213
+ opacity: accentOpacity
1214
+ }
1215
+ )
1216
+ ] }),
1217
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1218
+ /* @__PURE__ */ jsx(
1219
+ "rect",
1220
+ {
1221
+ x: "3",
1222
+ y: "11",
1223
+ width: "18",
1224
+ height: "11",
1225
+ rx: "2.5",
1226
+ stroke: primaryColor,
1227
+ strokeWidth,
1228
+ fill: "none"
1229
+ }
1230
+ ),
1231
+ /* @__PURE__ */ jsx("path", { d: "M7 11V7a5 5 0 019.9-1", stroke: primaryColor, strokeWidth }),
1232
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: primaryColor }),
1233
+ /* @__PURE__ */ jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: primaryColor })
1234
+ ] }),
1235
+ vivid: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1236
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: primaryColor }),
1237
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2.5", fill: "white", opacity: "0.08" }),
1238
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "15.5", r: "1.5", fill: secondaryColor }),
1239
+ /* @__PURE__ */ jsx("rect", { x: "11.25", y: "16.5", width: "1.5", height: "2", rx: "0.5", fill: "#3B82F6" }),
1240
+ /* @__PURE__ */ jsx("path", { d: "M7 11V7a5 5 0 019.9-1", stroke: "white", strokeWidth: "1" })
1241
+ ] })
1242
+ }
347
1243
  });
348
- // The selection frame of four corners, shared by NtdFrameCorners and NtdGroup (round 40: the user
349
- // asked for the frame as an icon of its own). A frame glyph: twice the stroke width in every variant
350
- // but `outline`, mitred corners.
351
- /** The top-left and bottom-right corners. */
352
- const FRAME_CORNERS_MAIN = 'M3 7V3h4M21 17v4h-4';
353
- /** The top-right and bottom-left corners. */
354
- const FRAME_CORNERS_OTHER = 'M17 3h4v4M7 21H3v-4';
1244
+ const FRAME_CORNERS_MAIN = "M3 7V3h4M21 17v4h-4";
1245
+ const FRAME_CORNERS_OTHER = "M17 3h4v4M7 21H3v-4";
355
1246
  function frameCorners(main, other, width) {
356
- return main === other ? (jsx("path", { d: `${FRAME_CORNERS_MAIN}${FRAME_CORNERS_OTHER}`, stroke: main, strokeWidth: width, strokeLinejoin: "miter", fill: "none" })) : (jsxs(Fragment, { children: [jsx("path", { d: FRAME_CORNERS_MAIN, stroke: main, strokeWidth: width, strokeLinejoin: "miter", fill: "none" }), jsx("path", { d: FRAME_CORNERS_OTHER, stroke: other, strokeWidth: width, strokeLinejoin: "miter", fill: "none" })] }));
1247
+ return main === other ? /* @__PURE__ */ jsx(
1248
+ "path",
1249
+ {
1250
+ d: `${FRAME_CORNERS_MAIN}${FRAME_CORNERS_OTHER}`,
1251
+ stroke: main,
1252
+ strokeWidth: width,
1253
+ strokeLinejoin: "miter",
1254
+ fill: "none"
1255
+ }
1256
+ ) : /* @__PURE__ */ jsxs(Fragment, { children: [
1257
+ /* @__PURE__ */ jsx(
1258
+ "path",
1259
+ {
1260
+ d: FRAME_CORNERS_MAIN,
1261
+ stroke: main,
1262
+ strokeWidth: width,
1263
+ strokeLinejoin: "miter",
1264
+ fill: "none"
1265
+ }
1266
+ ),
1267
+ /* @__PURE__ */ jsx(
1268
+ "path",
1269
+ {
1270
+ d: FRAME_CORNERS_OTHER,
1271
+ stroke: other,
1272
+ strokeWidth: width,
1273
+ strokeLinejoin: "miter",
1274
+ fill: "none"
1275
+ }
1276
+ )
1277
+ ] });
357
1278
  }
358
- // Duotone and vivid: two opposite corners primary, the other two secondary.
359
1279
  const NtdFrameCorners = /* @__PURE__ */ createIcon({
360
- displayName: 'NtdFrameCorners',
361
- paths: {
362
- solid: ({ primaryColor, strokeWidth }) => frameCorners(primaryColor, primaryColor, strokeWidth * 2),
363
- outline: ({ primaryColor, strokeWidth }) => frameCorners(primaryColor, primaryColor, strokeWidth),
364
- duotone: ({ primaryColor, secondaryColor, strokeWidth }) => frameCorners(primaryColor, secondaryColor, strokeWidth * 2),
365
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => frameCorners(primaryColor, secondaryColor, strokeWidth * 2),
366
- },
1280
+ displayName: "NtdFrameCorners",
1281
+ paths: {
1282
+ solid: ({ primaryColor, strokeWidth }) => frameCorners(primaryColor, primaryColor, strokeWidth * 2),
1283
+ outline: ({ primaryColor, strokeWidth }) => frameCorners(primaryColor, primaryColor, strokeWidth),
1284
+ duotone: ({ primaryColor, secondaryColor, strokeWidth }) => frameCorners(primaryColor, secondaryColor, strokeWidth * 2),
1285
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => frameCorners(primaryColor, secondaryColor, strokeWidth * 2)
1286
+ }
367
1287
  });
368
- // Group / ungroup selected objects (1.2.2: the diagram toolbar drew them as ⊞ / ⊟).
369
- // Group: two objects inside the corners of one selection frame; ungroup: the two apart.
370
- // Round 40: the frame is NtdFrameCorners' (2× the stroke width; the solid one was 1×, vivid's a
371
- // fixed 2.2). Duotone, fills and the frame: the frame and the top-left object primary, the other
372
- // object secondary; vivid puts the frame in the accent colour.
373
- const GROUP_OBJECTS = ['M7 7h5v5H7z', 'M12 12h5v5h-5z'];
1288
+ const GROUP_OBJECTS = ["M7 7h5v5H7z", "M12 12h5v5h-5z"];
374
1289
  function groupFilled(frame, first, second, strokeWidth, frameOpacity) {
375
- return (jsxs(Fragment, { children: [jsx("g", { opacity: frameOpacity, children: frameCorners(frame, frame, strokeWidth * 2) }), jsx("path", { d: GROUP_OBJECTS[0], fill: first }), jsx("path", { d: GROUP_OBJECTS[1], fill: second })] }));
1290
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
1291
+ /* @__PURE__ */ jsx("g", { opacity: frameOpacity, children: frameCorners(frame, frame, strokeWidth * 2) }),
1292
+ /* @__PURE__ */ jsx("path", { d: GROUP_OBJECTS[0], fill: first }),
1293
+ /* @__PURE__ */ jsx("path", { d: GROUP_OBJECTS[1], fill: second })
1294
+ ] });
376
1295
  }
377
1296
  const NtdGroup = /* @__PURE__ */ createIcon({
378
- displayName: 'NtdGroup',
379
- paths: {
380
- solid: ({ primaryColor, strokeWidth }) => groupFilled(primaryColor, primaryColor, primaryColor, strokeWidth),
381
- outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [frameCorners(primaryColor, primaryColor, strokeWidth), jsx("path", { d: GROUP_OBJECTS.join(''), stroke: primaryColor, strokeWidth: strokeWidth, strokeLinejoin: "miter", fill: "none" })] })),
382
- duotone: ({ primaryColor, secondaryColor, strokeWidth }) => groupFilled(primaryColor, primaryColor, secondaryColor, strokeWidth),
383
- vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => groupFilled(accentColor, primaryColor, secondaryColor, strokeWidth, accentOpacity),
384
- },
1297
+ displayName: "NtdGroup",
1298
+ paths: {
1299
+ solid: ({ primaryColor, strokeWidth }) => groupFilled(primaryColor, primaryColor, primaryColor, strokeWidth),
1300
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1301
+ frameCorners(primaryColor, primaryColor, strokeWidth),
1302
+ /* @__PURE__ */ jsx(
1303
+ "path",
1304
+ {
1305
+ d: GROUP_OBJECTS.join(""),
1306
+ stroke: primaryColor,
1307
+ strokeWidth,
1308
+ strokeLinejoin: "miter",
1309
+ fill: "none"
1310
+ }
1311
+ )
1312
+ ] }),
1313
+ duotone: ({ primaryColor, secondaryColor, strokeWidth }) => groupFilled(primaryColor, primaryColor, secondaryColor, strokeWidth),
1314
+ vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => groupFilled(accentColor, primaryColor, secondaryColor, strokeWidth, accentOpacity)
1315
+ }
385
1316
  });
386
1317
  const NtdUngroup = /* @__PURE__ */ createIcon({
387
- displayName: 'NtdUngroup',
388
- paths: {
389
- solid: ({ primaryColor, strokeWidth: _strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "8", height: "8", rx: "1", fill: primaryColor }), jsx("rect", { x: "13", y: "13", width: "8", height: "8", rx: "1", fill: primaryColor })] })),
390
- outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M3 3h8v8H3zM13 13h8v8h-8z", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinejoin: "round", fill: "none" })),
391
- duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "8", height: "8", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "13", y: "13", width: "8", height: "8", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M3 3h8v8H3zM13 13h8v8h-8z", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinejoin: "round", fill: "none" })] }))),
392
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "8", height: "8", rx: "1", fill: primaryColor }), jsx("rect", { x: "13", y: "13", width: "8", height: "8", rx: "1", fill: primaryColor }), jsx("rect", { x: "3", y: "3", width: "8", height: "8", rx: "1", fill: "white", opacity: "0.1" }), jsx("rect", { x: "13", y: "13", width: "8", height: "8", rx: "1", fill: "white", opacity: "0.1" })] })),
393
- },
1318
+ displayName: "NtdUngroup",
1319
+ paths: {
1320
+ solid: ({ primaryColor, strokeWidth: _strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1321
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "3", width: "8", height: "8", rx: "1", fill: primaryColor }),
1322
+ /* @__PURE__ */ jsx("rect", { x: "13", y: "13", width: "8", height: "8", rx: "1", fill: primaryColor })
1323
+ ] }),
1324
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsx(
1325
+ "path",
1326
+ {
1327
+ d: "M3 3h8v8H3zM13 13h8v8h-8z",
1328
+ stroke: primaryColor,
1329
+ strokeWidth,
1330
+ strokeLinejoin: "round",
1331
+ fill: "none"
1332
+ }
1333
+ ),
1334
+ duotone: swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1335
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "3", width: "8", height: "8", fill: secondaryColor, opacity: secondaryOpacity }),
1336
+ /* @__PURE__ */ jsx("rect", { x: "13", y: "13", width: "8", height: "8", fill: secondaryColor, opacity: secondaryOpacity }),
1337
+ /* @__PURE__ */ jsx(
1338
+ "path",
1339
+ {
1340
+ d: "M3 3h8v8H3zM13 13h8v8h-8z",
1341
+ stroke: primaryColor,
1342
+ strokeWidth,
1343
+ strokeLinejoin: "round",
1344
+ fill: "none"
1345
+ }
1346
+ )
1347
+ ] })),
1348
+ vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1349
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "3", width: "8", height: "8", rx: "1", fill: primaryColor }),
1350
+ /* @__PURE__ */ jsx("rect", { x: "13", y: "13", width: "8", height: "8", rx: "1", fill: primaryColor }),
1351
+ /* @__PURE__ */ jsx("rect", { x: "3", y: "3", width: "8", height: "8", rx: "1", fill: "white", opacity: "0.1" }),
1352
+ /* @__PURE__ */ jsx("rect", { x: "13", y: "13", width: "8", height: "8", rx: "1", fill: "white", opacity: "0.1" })
1353
+ ] })
1354
+ }
394
1355
  });
395
-
396
- export { NtdCheck, NtdClipboard, NtdCopy, NtdDownload, NtdEdit, NtdEditDetail, NtdFilter, NtdFrameCorners, NtdGroup, NtdLink, NtdLock, NtdLogIn, NtdLogOut, NtdMinus, NtdPlus, NtdPrint, NtdRedo, NtdReply, NtdSave, NtdSearch, NtdSettings, NtdShare, NtdSort, NtdTrash, NtdUndo, NtdUngroup, NtdUnlock, NtdUpload, NtdZoomIn, NtdZoomOut };
1356
+ export {
1357
+ NtdCheck,
1358
+ NtdClipboard,
1359
+ NtdCopy,
1360
+ NtdDownload,
1361
+ NtdEdit,
1362
+ NtdEditDetail,
1363
+ NtdFilter,
1364
+ NtdFrameCorners,
1365
+ NtdGroup,
1366
+ NtdLink,
1367
+ NtdLock,
1368
+ NtdLogIn,
1369
+ NtdLogOut,
1370
+ NtdMinus,
1371
+ NtdPlus,
1372
+ NtdPrint,
1373
+ NtdRedo,
1374
+ NtdReply,
1375
+ NtdSave,
1376
+ NtdSearch,
1377
+ NtdSettings,
1378
+ NtdShare,
1379
+ NtdSort,
1380
+ NtdTrash,
1381
+ NtdUndo,
1382
+ NtdUngroup,
1383
+ NtdUnlock,
1384
+ NtdUpload,
1385
+ NtdZoomIn,
1386
+ NtdZoomOut
1387
+ };