@nice2dev/icons 1.4.12 → 1.4.13

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # @nice2dev/icons — Changelog
2
2
 
3
+ ## 1.4.13
4
+
5
+ ### Patch Changes
6
+
7
+ - ac79f18: Icon review, round 43 (follow-up 3):
8
+
9
+ - New `NtdWalletOpen`: the wallet with its back pocket rising on a slant, now steeper. `NtdWallet`
10
+ shows a thin back pocket parallel to the body's edge instead.
11
+ - Battery set (`NtdBattery` … `NtdBatteryFull`): duotone and vivid show the battery's inside as a
12
+ secondary window slightly larger than the charge blocks. The blocks are primary in duotone and
13
+ accent in vivid.
14
+ - `NtdUnlock`: the shackle is open wider and swung 10° counter-clockwise.
15
+ - `NtdUsers`: the heads sit closer to the bodies; the two people behind lean outwards by 15°.
16
+ - `NtdWarehouse`: the bottom shelves sit just above the ground; two equal boxes on each level.
17
+ - `NtdForkKnife`: on their own the fork and knife are wider and further apart.
18
+ - `NtdChefHat`: no line under the puff; four pleats instead of two.
19
+ - `NtdAward`: the ribbon's primary border matches the medal's; a vertical line splits the ribbon.
20
+ - `NtdClipboard`: the sheet closes above the board's bottom edge; the text is higher and thinner.
21
+ - `NtdCalculatorEdu`: bigger keys and a wider, higher display.
22
+ - `NtdCookingPan`: the handle and its hole are twice as thick.
23
+ - `NtdTrash`: the lid's eaves and the handle are 1.5× thicker (filled variants).
24
+ - `NtdStore`: the cornice is thinner and square-cornered, so it meets the walls evenly.
25
+ - `NtdRecycle`: in `sharp`, the bands no longer poke out of the arrowheads.
26
+ - `NtdBeer`: the foam head is lower, cut from below.
27
+ - Smaller fixes: `NtdCalendar` (thinner accent line), `NtdMountain` (notch), `NtdWine` (thinner,
28
+ lower surface line).
29
+
3
30
  ## 1.4.12
4
31
 
5
32
  No changes in this release.
package/README.md CHANGED
@@ -528,7 +528,7 @@ Properties passed to every path renderer (pre-resolved from user props):
528
528
 
529
529
  ### Business & Finance (18 icons)
530
530
 
531
- `NtdBriefcase` · `NtdDollar` · `NtdWallet` · `NtdReceipt` · `NtdBank` · `NtdTrendUp` · `NtdTrendDown` · `NtdPercent` · `NtdInvoice` · `NtdStore` · `NtdBarcode` · `NtdCalculator` · `NtdPresentation` · `NtdClipboardCheck` · `NtdPiggyBank` · `NtdCoins` · `NtdCash` · `NtdCashStack`
531
+ `NtdBriefcase` · `NtdDollar` · `NtdWallet` · `NtdWalletOpen` · `NtdReceipt` · `NtdBank` · `NtdTrendUp` · `NtdTrendDown` · `NtdPercent` · `NtdInvoice` · `NtdStore` · `NtdBarcode` · `NtdCalculator` · `NtdPresentation` · `NtdClipboardCheck` · `NtdPiggyBank` · `NtdCoins` · `NtdCash` · `NtdCashStack`
532
532
 
533
533
  ### Social & Communication (8 icons)
534
534
 
@@ -158,13 +158,30 @@ const TRASH_HANDLE = "M9.5 3.8V2.4a1.2 1.2 0 011.2-1.2h2.6a1.2 1.2 0 011.2 1.2v1
158
158
  const TRASH_HANDLE_LINE = "M9.5 3.45V2.4a1.2 1.2 0 011.2-1.2h2.6a1.2 1.2 0 011.2 1.2v1.05";
159
159
  const TRASH_BIN = "M5 6l1 14a2 2 0 002 2h8a2 2 0 002-2l1-14H5z";
160
160
  const TRASH_GROOVES = "M10 10.5v7M14 10.5v7";
161
+ const TRASH_BOLD = 1.5;
161
162
  const NtdTrash = /* @__PURE__ */ createIcon.createIcon({
162
163
  displayName: "NtdTrash",
163
164
  paths: {
164
165
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
165
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRASH_LID, stroke: primaryColor, strokeWidth, fill: "none" }),
166
+ /* @__PURE__ */ jsxRuntime.jsx(
167
+ "path",
168
+ {
169
+ d: TRASH_LID,
170
+ stroke: primaryColor,
171
+ strokeWidth: strokeWidth * TRASH_BOLD,
172
+ fill: "none"
173
+ }
174
+ ),
166
175
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRASH_DOME, fill: primaryColor }),
167
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRASH_HANDLE, stroke: primaryColor, strokeWidth, fill: "none" }),
176
+ /* @__PURE__ */ jsxRuntime.jsx(
177
+ "path",
178
+ {
179
+ d: TRASH_HANDLE,
180
+ stroke: primaryColor,
181
+ strokeWidth: strokeWidth * TRASH_BOLD,
182
+ fill: "none"
183
+ }
184
+ ),
168
185
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRASH_BIN, fill: primaryColor }),
169
186
  /* @__PURE__ */ jsxRuntime.jsx(
170
187
  "line",
@@ -208,9 +225,25 @@ const NtdTrash = /* @__PURE__ */ createIcon.createIcon({
208
225
  ] }),
209
226
  vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
210
227
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRASH_BIN, fill: primaryColor }),
211
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRASH_LID, stroke: secondaryColor, strokeWidth, fill: "none" }),
228
+ /* @__PURE__ */ jsxRuntime.jsx(
229
+ "path",
230
+ {
231
+ d: TRASH_LID,
232
+ stroke: secondaryColor,
233
+ strokeWidth: strokeWidth * TRASH_BOLD,
234
+ fill: "none"
235
+ }
236
+ ),
212
237
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRASH_DOME, fill: secondaryColor }),
213
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRASH_HANDLE, stroke: secondaryColor, strokeWidth, fill: "none" }),
238
+ /* @__PURE__ */ jsxRuntime.jsx(
239
+ "path",
240
+ {
241
+ d: TRASH_HANDLE,
242
+ stroke: secondaryColor,
243
+ strokeWidth: strokeWidth * TRASH_BOLD,
244
+ fill: "none"
245
+ }
246
+ ),
214
247
  /* @__PURE__ */ jsxRuntime.jsx(
215
248
  "path",
216
249
  {
@@ -449,8 +482,9 @@ const NtdCopy = /* @__PURE__ */ createIcon.createIcon({
449
482
  vivid: ({ primaryColor, secondaryColor, strokeWidth }) => copyFilled(primaryColor, secondaryColor, strokeWidth)
450
483
  }
451
484
  });
452
- const CLIPBOARD_TEXT = "M8 11h8M8 14.5h5";
453
- const CLIPBOARD_SHEET = "M6 22V4h12V22";
485
+ const CLIPBOARD_TEXT = "M8 10h8M8 13h5";
486
+ const CLIPBOARD_TEXT_WIDTH = 1.2;
487
+ const CLIPBOARD_SHEET = "M6 4.5h12v16H6z";
454
488
  const NtdClipboard = /* @__PURE__ */ createIcon.createIcon({
455
489
  displayName: "NtdClipboard",
456
490
  perfectStackX: 12,
@@ -491,7 +525,15 @@ const NtdClipboard = /* @__PURE__ */ createIcon.createIcon({
491
525
  opacity: accentOpacity
492
526
  }
493
527
  ),
494
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: CLIPBOARD_TEXT, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
528
+ /* @__PURE__ */ jsxRuntime.jsx(
529
+ "path",
530
+ {
531
+ d: CLIPBOARD_TEXT,
532
+ stroke: accentColor,
533
+ strokeWidth: CLIPBOARD_TEXT_WIDTH,
534
+ opacity: accentOpacity
535
+ }
536
+ )
495
537
  ] }),
496
538
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
497
539
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -551,7 +593,15 @@ const NtdClipboard = /* @__PURE__ */ createIcon.createIcon({
551
593
  strokeWidth
552
594
  }
553
595
  ),
554
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: CLIPBOARD_TEXT, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
596
+ /* @__PURE__ */ jsxRuntime.jsx(
597
+ "path",
598
+ {
599
+ d: CLIPBOARD_TEXT,
600
+ stroke: accentColor,
601
+ strokeWidth: CLIPBOARD_TEXT_WIDTH,
602
+ opacity: accentOpacity
603
+ }
604
+ )
555
605
  ] })
556
606
  }
557
607
  });
@@ -1168,7 +1218,8 @@ const NtdLock = /* @__PURE__ */ createIcon.createIcon({
1168
1218
  vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => lockFilled(primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth * 2)
1169
1219
  }
1170
1220
  });
1171
- const UNLOCK_SHACKLE = "M6 10.5V7a6 6 0 0112 0v0.5";
1221
+ const UNLOCK_SHACKLE = "M6 10.5V8.2a6 6 0 0 1 11.91-1.04";
1222
+ const UNLOCK_SWING = "rotate(-10 6 10)";
1172
1223
  const NtdUnlock = /* @__PURE__ */ createIcon.createIcon({
1173
1224
  displayName: "NtdUnlock",
1174
1225
  perfectStackX: 12,
@@ -1176,14 +1227,23 @@ const NtdUnlock = /* @__PURE__ */ createIcon.createIcon({
1176
1227
  perfectStackSize: 0.4,
1177
1228
  paths: {
1178
1229
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1179
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: UNLOCK_SHACKLE, stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }),
1230
+ /* @__PURE__ */ jsxRuntime.jsx(
1231
+ "path",
1232
+ {
1233
+ d: UNLOCK_SHACKLE,
1234
+ transform: UNLOCK_SWING,
1235
+ stroke: primaryColor,
1236
+ strokeWidth: strokeWidth * 2,
1237
+ fill: "none"
1238
+ }
1239
+ ),
1180
1240
  /* @__PURE__ */ jsxRuntime.jsx("rect", { ...LOCK_BODY, fill: primaryColor }),
1181
1241
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: LOCK_KEYHOLE, fill: accentColor, opacity: accentOpacity })
1182
1242
  ] }),
1183
1243
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1184
1244
  /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", children: [
1185
1245
  /* @__PURE__ */ jsxRuntime.jsx("rect", { ...LOCK_BODY }),
1186
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: UNLOCK_SHACKLE })
1246
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: UNLOCK_SHACKLE, transform: UNLOCK_SWING })
1187
1247
  ] }),
1188
1248
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: LOCK_KEYHOLE, fill: primaryColor })
1189
1249
  ] }),
@@ -1192,6 +1252,7 @@ const NtdUnlock = /* @__PURE__ */ createIcon.createIcon({
1192
1252
  "path",
1193
1253
  {
1194
1254
  d: UNLOCK_SHACKLE,
1255
+ transform: UNLOCK_SWING,
1195
1256
  stroke: secondaryColor,
1196
1257
  strokeWidth: strokeWidth * 2,
1197
1258
  fill: "none"
@@ -101,13 +101,16 @@ const NtdDollar = /* @__PURE__ */ createIcon.createIcon({
101
101
  }
102
102
  });
103
103
  const WALLET_BODY = { x: 2, y: 6.5, width: 20, height: 14.5, rx: 2.5 };
104
- const WALLET_BACK = "M6 8V5.9L19 5a1 1 0 011.1 1V8z";
105
- const WALLET_BACK_LINE = "M6 6.5V5.9L19 5a1 1 0 011.1 1V6.5";
106
104
  const WALLET_POCKET = "M22 10.5h-4.5a2.5 2.5 0 000 5H22z";
107
105
  const WALLET_POCKET_LINE = "M22 10.5h-4.5a2.5 2.5 0 000 5H22";
108
- const NtdWallet = /* @__PURE__ */ createIcon.createIcon({
109
- displayName: "NtdWallet",
110
- paths: {
106
+ function walletIcon(displayName, back, backLine) {
107
+ return createIcon.createIcon({
108
+ displayName,
109
+ paths: walletPaths(back, backLine)
110
+ });
111
+ }
112
+ function walletPaths(WALLET_BACK, WALLET_BACK_LINE) {
113
+ return {
111
114
  // the back pocket is primary like the body: an accent gap (the body's edge, clipped to the pocket)
112
115
  // parts the two
113
116
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -173,8 +176,18 @@ const NtdWallet = /* @__PURE__ */ createIcon.createIcon({
173
176
  ),
174
177
  /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17.6", cy: "13", r: "1.1", fill: secondaryColor })
175
178
  ] })
176
- }
177
- });
179
+ };
180
+ }
181
+ const NtdWallet = /* @__PURE__ */ walletIcon(
182
+ "NtdWallet",
183
+ "M4.5 5h15v3h-15z",
184
+ "M4.5 6.5V5h15v1.5"
185
+ );
186
+ const NtdWalletOpen = /* @__PURE__ */ walletIcon(
187
+ "NtdWalletOpen",
188
+ "M6 8V5.9L19 4a1 1 0 011.1 1V8z",
189
+ "M6 6.5V5.9L19 4a1 1 0 011.1 1V6.5"
190
+ );
178
191
  const RECEIPT = "M4 2v20l3-2 3 2 3-2 3 2 3-2 3 2V2H4z";
179
192
  const RECEIPT_TEXT = "M7 7.5h6.5M16.4 7.5h2M7 11.5h6.5M16.4 11.5h2M14.4 15.5h4";
180
193
  const NtdReceipt = /* @__PURE__ */ createIcon.createIcon({
@@ -378,7 +391,7 @@ const NtdInvoice = /* @__PURE__ */ iconParts.paperIcon(
378
391
  );
379
392
  const NtdInvoiceDoc = NtdInvoice;
380
393
  const STORE_BODY = "M2.5 5H21.5V21H2.5Z";
381
- const STORE_CORNICE = { x: 1.5, y: 3, width: 21, height: 2.4, rx: 0.6 };
394
+ const STORE_CORNICE = { x: 1.5, y: 3.5, width: 21, height: 1.9 };
382
395
  const STORE_CUT = "M2.5 5.4H21.5";
383
396
  const STORE_SIGN = { x: 3.8, y: 6.7, width: 16.4, height: 3.9, rx: 0.5 };
384
397
  const STORE_GLASS = "M4.2 11.9h4.8v6.8H4.2zM15 11.9h4.8v6.8H15zM10.2 12.2h3.6V21h-3.6z";
@@ -1226,3 +1239,4 @@ exports.NtdStore = NtdStore;
1226
1239
  exports.NtdTrendDown = NtdTrendDown;
1227
1240
  exports.NtdTrendUp = NtdTrendUp;
1228
1241
  exports.NtdWallet = NtdWallet;
1242
+ exports.NtdWalletOpen = NtdWalletOpen;
@@ -263,13 +263,15 @@ const BATTERY_BODY = { x: 1.5, y: 6.5, width: 18.5, height: 11, rx: 2 };
263
263
  const BATTERY_TERMINAL = "M19.5 9.5h2a1 1 0 011 1v3a1 1 0 01-1 1h-2z";
264
264
  const BATTERY_TERMINAL_LINE = "M20 9.5h1.5a1 1 0 011 1v3a1 1 0 01-1 1H20";
265
265
  const BATTERY_BLOCKS = [3.5, 7.35, 11.2, 15.05];
266
+ const BATTERY_WINDOW = { x: 2.9, y: 7.9, width: 15.7, height: 8.2 };
266
267
  function batteryBlocks(count, fill) {
267
268
  return BATTERY_BLOCKS.slice(0, count).map((x) => /* @__PURE__ */ jsxRuntime.jsx("rect", { x, y: "8.5", width: "2.95", height: "7", fill }, x));
268
269
  }
269
270
  function batteryIcon(displayName, count) {
270
- const filled = (body, blocks) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
271
+ const filled = (body, blocks, window) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
271
272
  /* @__PURE__ */ jsxRuntime.jsx("rect", { ...BATTERY_BODY, fill: body }),
272
273
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: BATTERY_TERMINAL, fill: body }),
274
+ window && /* @__PURE__ */ jsxRuntime.jsx("rect", { ...BATTERY_WINDOW, fill: window }),
273
275
  batteryBlocks(count, blocks)
274
276
  ] });
275
277
  return createIcon.createIcon({
@@ -292,8 +294,8 @@ function batteryIcon(displayName, count) {
292
294
  ),
293
295
  batteryBlocks(count, primaryColor)
294
296
  ] }),
295
- duotone: ({ primaryColor, secondaryColor }) => filled(primaryColor, secondaryColor),
296
- vivid: ({ primaryColor, secondaryColor }) => filled(primaryColor, secondaryColor)
297
+ duotone: ({ primaryColor, secondaryColor }) => filled(primaryColor, primaryColor, secondaryColor),
298
+ vivid: ({ primaryColor, secondaryColor, accentColor }) => filled(primaryColor, accentColor, secondaryColor)
297
299
  }
298
300
  });
299
301
  }
@@ -930,16 +930,16 @@ const NtdBackpack = /* @__PURE__ */ createIcon.createIcon({
930
930
  }
931
931
  });
932
932
  const CALC_BODY = { x: 4.6, y: 2, width: 14.8, height: 20, rx: 2 };
933
- const CALC_DISPLAY = { x: 6.8, y: 4.5, width: 10.4, height: 4.5, rx: 1 };
934
- const CALC_KEYS = "M6.8 11h2.8v2.4H6.8zM10.6 11h2.8v2.4h-2.8zM14.4 11h2.8v2.4h-2.8zM6.8 14.4h2.8v2.4H6.8zM10.6 14.4h2.8v2.4h-2.8zM14.4 14.4h2.8v2.4h-2.8zM6.8 17.8h2.8v2.4H6.8zM10.6 17.8h6.6v2.4h-6.6z";
933
+ const CALC_DISPLAY = { x: 6, y: 3.4, width: 12, height: 4.8, rx: 1 };
934
+ const CALC_KEYS = "M6 9.4h3.6v3.3H6zM10.2 9.4h3.6v3.3h-3.6zM14.4 9.4h3.6v3.3h-3.6zM6 13.3h3.6v3.3H6zM10.2 13.3h3.6v3.3h-3.6zM14.4 13.3h3.6v3.3h-3.6zM6 17.2h3.6v3.3H6zM10.2 17.2h7.8v3.3h-7.8z";
935
935
  const CALC_DOTS = [
936
- [8.2, 12.2],
937
- [12, 12.2],
938
- [15.8, 12.2],
939
- [8.2, 15.6],
940
- [12, 15.6],
941
- [15.8, 15.6],
942
- [8.2, 19]
936
+ [7.8, 11.05],
937
+ [12, 11.05],
938
+ [16.2, 11.05],
939
+ [7.8, 14.95],
940
+ [12, 14.95],
941
+ [16.2, 14.95],
942
+ [7.8, 18.85]
943
943
  ];
944
944
  function calculatorFilled({ primaryColor, accentColor, accentOpacity, strokeWidth }, display, displayOpacity) {
945
945
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -969,7 +969,7 @@ const NtdCalculator = /* @__PURE__ */ createIcon.createIcon({
969
969
  ] }),
970
970
  /* @__PURE__ */ jsxRuntime.jsxs("g", { fill: primaryColor, children: [
971
971
  CALC_DOTS.map(([cx, cy]) => /* @__PURE__ */ jsxRuntime.jsx("circle", { cx, cy, r: "1" }, `${cx},${cy}`)),
972
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "10.6", y: "18.4", width: "6.6", height: "1.2", rx: "0.5" })
972
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "10.6", y: "18.25", width: "7", height: "1.2", rx: "0.5" })
973
973
  ] })
974
974
  ] }),
975
975
  vivid: (props) => calculatorFilled(props, props.secondaryColor, 1)
@@ -956,7 +956,7 @@ const NtdKey = /* @__PURE__ */ createIcon.createIcon({
956
956
  }
957
957
  });
958
958
  const AWARD_RIBBON = "M8.21 13.89L7 23l5-3 5 3-1.21-9.12";
959
- const AWARD_RIBBON_INNER = "M9.67 13.42L8.9 20.11L12 18.25L15.1 20.11L14.32 13.43";
959
+ const AWARD_RIBBON_INNER = "M8.93 13.04L7.76 21.85L12 19.3L16.24 21.85L15.07 13.04M12 13.9V19.3";
960
960
  function awardInsets(color, opacity, width) {
961
961
  return /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: color, strokeWidth: width, opacity, fill: "none", children: [
962
962
  /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "8", r: "5.9" }),
@@ -417,7 +417,8 @@ const NtdCoffee = /* @__PURE__ */ createIcon.createIcon({
417
417
  }
418
418
  });
419
419
  const WINE_BOWL = "M8 3h8c.9 1.8 1.3 3.5 1.3 5a5.3 5.3 0 01-10.6 0c0-1.5.4-3.2 1.3-5z";
420
- const WINE_LIQUID = "M5 8.5h14V15H5z";
420
+ const WINE_LIQUID = "M5 9.5h14V15H5z";
421
+ const WINE_SURFACE = "M5 9.5h14";
421
422
  const WINE_STEM = { x: 11.2, y: 12.8, width: 1.6, height: 6.7 };
422
423
  const WINE_FOOT = { x: 8, y: 19.25, width: 8, height: 1.5, rx: 0.75 };
423
424
  function wineFilled({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }, wine, surface) {
@@ -432,9 +433,9 @@ function wineFilled({ primaryColor, accentColor, accentOpacity, strokeWidth, uid
432
433
  surface && /* @__PURE__ */ jsxRuntime.jsx(
433
434
  "path",
434
435
  {
435
- d: "M5 8.5h14",
436
+ d: WINE_SURFACE,
436
437
  stroke: accentColor,
437
- strokeWidth: strokeWidth * 0.6,
438
+ strokeWidth: strokeWidth * 0.4,
438
439
  opacity: accentOpacity
439
440
  }
440
441
  )
@@ -450,7 +451,7 @@ const NtdWine = /* @__PURE__ */ createIcon.createIcon({
450
451
  solid: (p) => wineFilled(p, p.primaryColor, true),
451
452
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", children: [
452
453
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: WINE_BOWL, strokeLinejoin: "miter" }),
453
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6.75 8.5h10.5M12 13.3v6.2M8.5 20h7" })
454
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6.95 9.5h10.1M12 13.3v6.2M8.5 20h7" })
454
455
  ] }),
455
456
  duotone: (p) => wineFilled(p, p.secondaryColor, false),
456
457
  vivid: (p) => wineFilled(p, p.secondaryColor, true)
@@ -458,7 +459,7 @@ const NtdWine = /* @__PURE__ */ createIcon.createIcon({
458
459
  });
459
460
  const BEER_GLASS = "M4.5 8H15.5C16.45 11 16.45 17 15.6 19.9A2.1 2.1 0 0 1 13.6 21.5H6.4A2.1 2.1 0 0 1 4.4 19.9C3.55 17 3.55 11 4.5 8Z";
460
461
  const BEER_GLASS_SHARP = "M4.5 8H15.5C16.45 11 16.45 17 15.6 21.5H4.4C3.55 17 3.55 11 4.5 8Z";
461
- const BEER_FOAM = "M4.6 7.55A1.71 1.71 0 0 1 6.49 4.95A2.07 2.07 0 0 1 10.23 4.05A2.07 2.07 0 0 1 13.69 4.95A1.71 1.71 0 0 1 15.4 7.55Z";
462
+ const BEER_FOAM = "M4.6 7.55V6.34A1.71 1.71 0 0 1 6.49 5.65A2.07 2.07 0 0 1 10.23 4.75A2.07 2.07 0 0 1 13.69 5.65A1.71 1.71 0 0 1 15.4 6.43V7.55Z";
462
463
  const BEER_HANDLE = "M16 11H17.5A2 2 0 0 1 19.5 13V16A2 2 0 0 1 17.5 18H16";
463
464
  const BEER_RIBS = "M8 11V18.5M12 11V18.5";
464
465
  function beer(p, width, glassPath = BEER_GLASS) {
@@ -645,7 +646,8 @@ const NtdSoda = /* @__PURE__ */ createIcon.createIcon({
645
646
  const CHEF_PUFF = "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z";
646
647
  const CHEF_BAND = "M6 16h12v5a1 1 0 01-1 1H7a1 1 0 01-1-1z";
647
648
  const CHEF_BAND_SHARP = "M6 16h12v6H6z";
648
- const CHEF_LINES = "M6 16.25h12M9.5 18v2.5M14.5 18v2.5";
649
+ const CHEF_LINES = "M8.4 16.9v4.2M10.8 16.9v4.2M13.2 16.9v4.2M15.6 16.9v4.2";
650
+ const CHEF_LINES_OUTLINE = "M8.4 17.3v3.4M10.8 17.3v3.4M13.2 17.3v3.4M15.6 17.3v3.4";
649
651
  function chefHatFilled({ primaryColor, accentColor, accentOpacity, strokeWidth }, band, lines, bandPath = CHEF_BAND) {
650
652
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
651
653
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: CHEF_PUFF, fill: primaryColor }),
@@ -672,16 +674,17 @@ const NtdChefHat = /* @__PURE__ */ createIcon.createIcon({
672
674
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", strokeLinejoin: "miter", children: [
673
675
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: CHEF_PUFF }),
674
676
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6 16v5a1 1 0 001 1h10a1 1 0 001-1v-5" }),
675
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M9.5 18v2.5M14.5 18v2.5" })
677
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: CHEF_LINES_OUTLINE })
676
678
  ] }),
677
679
  duotone: (p) => chefHatFilled(p, p.secondaryColor, false),
678
680
  vivid: (p) => chefHatFilled(p, p.secondaryColor, true)
679
681
  }
680
682
  });
681
683
  const FORK_KNIFE_SCALE = 1.15;
684
+ const FORK_KNIFE_WIDEN = 1.3;
682
685
  const FORK_KNIFE_FRAME = `translate(12 12) scale(${FORK_KNIFE_SCALE}) translate(-12 -12)`;
683
- const FORK_KNIFE_FORK_AT = "translate(6.3 0)";
684
- const FORK_KNIFE_KNIFE_AT = "translate(-6.55 0)";
686
+ const FORK_KNIFE_FORK_AT = `translate(7.913 0) scale(${FORK_KNIFE_WIDEN} 1) translate(-2.1 0)`;
687
+ const FORK_KNIFE_KNIFE_AT = `translate(16.609 0) scale(${FORK_KNIFE_WIDEN} 1) translate(-22.3 0)`;
685
688
  function forkKnifeFilled(fork, knife) {
686
689
  return /* @__PURE__ */ jsxRuntime.jsxs("g", { transform: FORK_KNIFE_FRAME, children: [
687
690
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: iconParts.CUTLERY_FORK, transform: FORK_KNIFE_FORK_AT, fill: fork }),
@@ -700,7 +703,7 @@ const NtdForkKnife = /* @__PURE__ */ createIcon.createIcon({
700
703
  d: iconParts.CUTLERY_KNIFE,
701
704
  transform: FORK_KNIFE_KNIFE_AT,
702
705
  stroke: primaryColor,
703
- strokeWidth: strokeWidth / FORK_KNIFE_SCALE,
706
+ strokeWidth: strokeWidth / (FORK_KNIFE_SCALE * FORK_KNIFE_WIDEN),
704
707
  strokeLinejoin: "miter",
705
708
  fill: "none"
706
709
  }
@@ -747,8 +750,8 @@ const NtdKnife = /* @__PURE__ */ createIcon.createIcon({
747
750
  });
748
751
  const PAN_TURN = "rotate(45 12 12)";
749
752
  const PAN_CENTER = { cx: 9.5, cy: 12 };
750
- const PAN_HANDLE = "M16.6 10.8H21.8A1.2 1.2 0 0 1 21.8 13.2H16.6Z";
751
- const PAN_HOLE = { cx: 21.55, cy: 12, r: 0.55 };
753
+ const PAN_HANDLE = "M16 9.6H21A2.4 2.4 0 0 1 21 14.4H16Z";
754
+ const PAN_HOLE = { cx: 21, cy: 12, r: 1.1 };
752
755
  function panFilled({ primaryColor, accentColor, accentOpacity, strokeWidth }, handle, rings, ringsOpacity) {
753
756
  return /* @__PURE__ */ jsxRuntime.jsxs("g", { transform: PAN_TURN, children: [
754
757
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: PAN_HANDLE, fill: handle }),
@@ -774,7 +777,7 @@ const NtdCookingPan = /* @__PURE__ */ createIcon.createIcon({
774
777
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { transform: PAN_TURN, stroke: primaryColor, strokeWidth, fill: "none", children: [
775
778
  /* @__PURE__ */ jsxRuntime.jsx("circle", { ...PAN_CENTER, r: "7.5" }),
776
779
  /* @__PURE__ */ jsxRuntime.jsx("circle", { ...PAN_CENTER, r: "6.2" }),
777
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M17 10.8H21.8A1.2 1.2 0 0 1 21.8 13.2H17" }),
780
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M16.6 9.6H21A2.4 2.4 0 0 1 21 14.4H16.6" }),
778
781
  /* @__PURE__ */ jsxRuntime.jsx("circle", { ...PAN_HOLE })
779
782
  ] }),
780
783
  duotone: (p) => panFilled(p, p.secondaryColor, p.secondaryColor, 1),
@@ -302,6 +302,7 @@ exports.NtdStore = business.NtdStore;
302
302
  exports.NtdTrendDown = business.NtdTrendDown;
303
303
  exports.NtdTrendUp = business.NtdTrendUp;
304
304
  exports.NtdWallet = business.NtdWallet;
305
+ exports.NtdWalletOpen = business.NtdWalletOpen;
305
306
  exports.NtdAtSign = social.NtdAtSign;
306
307
  exports.NtdBellRing = social.NtdBellRing;
307
308
  exports.NtdBubble = social.NtdBubble;
@@ -430,7 +430,7 @@ const RACK_SLOTS = [
430
430
  [6.9, 6.2, 4.2]
431
431
  ];
432
432
  const round = (n) => Math.round(n * 1e3) / 1e3;
433
- function rackGeometry(f, width, boxes) {
433
+ function rackGeometry(f, width, boxes, even = false) {
434
434
  const heavy = width * 1.35;
435
435
  const topEdge = f.top - heavy / 2;
436
436
  const bottomEdge = f.bottom - heavy / 2;
@@ -451,16 +451,22 @@ function rackGeometry(f, width, boxes) {
451
451
  { floor: shelf - half, ceiling: topEdge + width }
452
452
  ];
453
453
  const scale = (f.right - f.left) / 16;
454
+ const gap = 0.6 * scale;
455
+ const evenWidth = (f.right - f.left - width - 3 * gap) / 2;
454
456
  const rects = RACK_SLOTS.slice(0, boxes).map(([x, w, h], i) => {
455
457
  const level = levels[Math.floor(i / 2)];
456
- const gap = 0.6 * scale;
457
- const bh = Math.min(h * scale, level.floor - level.ceiling - gap - 0.4 * scale);
458
+ const room = level.floor - level.ceiling - gap - 0.4 * scale;
459
+ if (even) {
460
+ const left = f.left + half + gap + i % 2 * (evenWidth + gap);
461
+ return rect(left, level.floor - gap - room, evenWidth, room);
462
+ }
463
+ const bh = Math.min(h * scale, room);
458
464
  return rect(f.left + half + x * scale, level.floor - gap - bh, w * scale, bh);
459
465
  }).join("");
460
466
  return { lines, frame, rects };
461
467
  }
462
- function rackDrawing(f, boxes, frame, fill, width, outline) {
463
- const g = rackGeometry(f, width, boxes);
468
+ function rackDrawing(f, boxes, frame, fill, width, outline, even = false) {
469
+ const g = rackGeometry(f, width, boxes, even);
464
470
  if (outline) {
465
471
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
466
472
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: g.lines, stroke: frame, strokeWidth: width, strokeLinecap: "butt", fill: "none" }),
@@ -505,13 +511,13 @@ function shelfRackIconFor(level) {
505
511
  }
506
512
  const WAREHOUSE = "M1.5 9.2L12 3.5L22.5 9.2V21H20.4V11H3.6V21H1.5Z";
507
513
  const WAREHOUSE_RACKS = [
508
- { left: 4.75, right: 11.15, top: 12.3, bottom: 19.25, floor: 21 },
509
- { left: 12.85, right: 19.25, top: 12.3, bottom: 19.25, floor: 21 }
514
+ { left: 4.75, right: 11.15, top: 12.3, bottom: 20.3, floor: 21 },
515
+ { left: 12.85, right: 19.25, top: 12.3, bottom: 20.3, floor: 21 }
510
516
  ];
511
517
  function warehouseDrawing(hall, rackFrame, boxes, width, outline) {
512
518
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
513
519
  outline ? /* @__PURE__ */ jsxRuntime.jsx("path", { d: WAREHOUSE, stroke: hall, strokeWidth: width, strokeLinejoin: "miter", fill: "none" }) : /* @__PURE__ */ jsxRuntime.jsx("path", { d: WAREHOUSE, fill: hall }),
514
- WAREHOUSE_RACKS.map((f) => /* @__PURE__ */ jsxRuntime.jsx("g", { children: rackDrawing(f, 4, rackFrame, boxes, outline ? width * 0.7 : width * 0.35, outline) }, f.left))
520
+ WAREHOUSE_RACKS.map((f) => /* @__PURE__ */ jsxRuntime.jsx("g", { children: rackDrawing(f, 4, rackFrame, boxes, outline ? width * 0.7 : width * 0.35, outline, true) }, f.left))
515
521
  ] });
516
522
  }
517
523
  const NtdWarehouse = /* @__PURE__ */ createIcon.createIcon({
@@ -5,7 +5,7 @@ const createIcon = require("../createIcon.js");
5
5
  const iconParts = require("../iconParts.js");
6
6
  const weather = require("./weather.js");
7
7
  const RECYCLE_TURNS = [0, 120, 240];
8
- const RECYCLE_BAND = "M7.82 12.85L5.42 17H9.5";
8
+ const RECYCLE_BAND = "M7.82 12.85L5.42 17H9.25";
9
9
  const RECYCLE_HEAD = "M9.22 14.7L11.82 17L9.22 19.3Z";
10
10
  function recycleArrows(colors, width, filled) {
11
11
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: RECYCLE_TURNS.map((turn, i) => /* @__PURE__ */ jsxRuntime.jsxs("g", { transform: `rotate(${turn} 12 13.2)`, children: [
@@ -136,21 +136,36 @@ const NtdUserTie = /* @__PURE__ */ createIcon.createIcon({
136
136
  vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity }) => userTieFilled(primaryColor, secondaryColor, accentColor, accentOpacity, primaryColor)
137
137
  }
138
138
  });
139
- const USERS_FRONT_HEAD = { cx: 12, cy: 8, r: 3.75 };
139
+ const USERS_FRONT_HEAD = { cx: 12, cy: 10.2, r: 3.75 };
140
140
  const USERS_FRONT_BODY = "M18 21.5v-2.25a3.75 3.75 0 00-3.75-3.75h-4.5A3.75 3.75 0 006 19.25v2.25";
141
141
  const USERS_BACK_HEADS = [
142
- { cx: 5, cy: 7.5, r: 2.6 },
143
- { cx: 19, cy: 7.5, r: 2.6 }
142
+ { cx: 5, cy: 8.8, r: 2.6 },
143
+ { cx: 19, cy: 8.8, r: 2.6 }
144
144
  ];
145
145
  const USERS_BACK_BODIES = [
146
- "M0.75 19.5v-3.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v3.6",
147
- "M14.75 19.5v-3.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v3.6"
146
+ "M0.75 20.5v-4.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v4.6",
147
+ "M14.75 20.5v-4.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v4.6"
148
148
  ];
149
- function usersFilled(front, back, { accentColor, accentOpacity, strokeWidth }) {
149
+ const USERS_BACK_TURNS = ["rotate(-15 5.15 16)", "rotate(15 19.15 16)"];
150
+ const USERS_BACK_FLOOR = /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "24", height: "19.5" });
151
+ function usersBehind(uid, draw) {
152
+ return iconParts.within(
153
+ uid,
154
+ "floor",
155
+ USERS_BACK_FLOOR,
156
+ /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
157
+ /* @__PURE__ */ jsxRuntime.jsx("g", { transform: USERS_BACK_TURNS[0], children: draw(0) }),
158
+ /* @__PURE__ */ jsxRuntime.jsx("g", { transform: USERS_BACK_TURNS[1], children: draw(1) })
159
+ ] })
160
+ );
161
+ }
162
+ function usersFilled(front, back, { accentColor, accentOpacity, strokeWidth, uid }) {
150
163
  const gap = strokeWidth * 0.5;
151
164
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
152
- USERS_BACK_HEADS.map((h) => /* @__PURE__ */ jsxRuntime.jsx("circle", { ...h, fill: back }, h.cx)),
153
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: USERS_BACK_BODIES.map((d) => `${d}z`).join(""), fill: back }),
165
+ usersBehind(uid, (i) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
166
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { ...USERS_BACK_HEADS[i], fill: back }),
167
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: `${USERS_BACK_BODIES[i]}z`, fill: back })
168
+ ] })),
154
169
  /* @__PURE__ */ jsxRuntime.jsxs("g", { fill: accentColor, opacity: accentOpacity, children: [
155
170
  /* @__PURE__ */ jsxRuntime.jsx("circle", { ...USERS_FRONT_HEAD, r: USERS_FRONT_HEAD.r + gap }),
156
171
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -187,10 +202,10 @@ const NtdUsers = /* @__PURE__ */ createIcon.createIcon({
187
202
  }
188
203
  )
189
204
  ] }),
190
- /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", mask: `url(#${id})`, children: [
191
- USERS_BACK_HEADS.map((h) => /* @__PURE__ */ jsxRuntime.jsx("circle", { ...h }, h.cx)),
192
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: USERS_BACK_BODIES.join("") })
193
- ] }),
205
+ /* @__PURE__ */ jsxRuntime.jsx("g", { stroke: primaryColor, strokeWidth, fill: "none", mask: `url(#${id})`, children: usersBehind(uid, (i) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
206
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { ...USERS_BACK_HEADS[i] }),
207
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: USERS_BACK_BODIES[i] })
208
+ ] })) }),
194
209
  /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", children: [
195
210
  /* @__PURE__ */ jsxRuntime.jsx("circle", { ...USERS_FRONT_HEAD }),
196
211
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: USERS_FRONT_BODY })
@@ -802,7 +817,7 @@ function calendarIcon(displayName, kind) {
802
817
  /* @__PURE__ */ jsxRuntime.jsx("rect", { ...CALENDAR_PAGE }),
803
818
  /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
804
819
  two && /* @__PURE__ */ jsxRuntime.jsx("path", { d: CALENDAR_HEAD_BAND, fill: secondaryColor }),
805
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M3 9.5h18", stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
820
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M3 9.3h18", stroke: accentColor, strokeWidth: "1.1", opacity: accentOpacity })
806
821
  ] })
807
822
  ),
808
823
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -661,8 +661,8 @@ const NtdTree = /* @__PURE__ */ createIcon.createIcon({
661
661
  }
662
662
  });
663
663
  const MOUNTAIN = "M12 2L2 22h20L12 2z";
664
- const MOUNTAIN_SNOW = "M12 2L16.6 11.2L14.6 12.3L13.2 14.1L10.7 12L8.9 13.7L7 12Z";
665
- const MOUNTAIN_SNOW_LINE = "M7 12L8.9 13.7L10.7 12L13.2 14.1L14.6 12.3L16.6 11.2";
664
+ const MOUNTAIN_SNOW = "M12 2L16.6 11.2L14.6 12.3L13.6 14.6L10.7 12L8.9 13.7L7 12Z";
665
+ const MOUNTAIN_SNOW_LINE = "M7 12L8.9 13.7L10.7 12L13.6 14.6L14.6 12.3L16.6 11.2";
666
666
  const NtdMountain = /* @__PURE__ */ createIcon.createIcon({
667
667
  displayName: "NtdMountain",
668
668
  paths: {
package/dist/cjs/index.js CHANGED
@@ -542,6 +542,7 @@ exports.NtdStore = business.NtdStore;
542
542
  exports.NtdTrendDown = business.NtdTrendDown;
543
543
  exports.NtdTrendUp = business.NtdTrendUp;
544
544
  exports.NtdWallet = business.NtdWallet;
545
+ exports.NtdWalletOpen = business.NtdWalletOpen;
545
546
  exports.NtdBasketball = sports.NtdBasketball;
546
547
  exports.NtdCycling = sports.NtdCycling;
547
548
  exports.NtdDumbbell = sports.NtdDumbbell;
@@ -156,13 +156,30 @@ const TRASH_HANDLE = "M9.5 3.8V2.4a1.2 1.2 0 011.2-1.2h2.6a1.2 1.2 0 011.2 1.2v1
156
156
  const TRASH_HANDLE_LINE = "M9.5 3.45V2.4a1.2 1.2 0 011.2-1.2h2.6a1.2 1.2 0 011.2 1.2v1.05";
157
157
  const TRASH_BIN = "M5 6l1 14a2 2 0 002 2h8a2 2 0 002-2l1-14H5z";
158
158
  const TRASH_GROOVES = "M10 10.5v7M14 10.5v7";
159
+ const TRASH_BOLD = 1.5;
159
160
  const NtdTrash = /* @__PURE__ */ createIcon({
160
161
  displayName: "NtdTrash",
161
162
  paths: {
162
163
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
163
- /* @__PURE__ */ jsx("path", { d: TRASH_LID, stroke: primaryColor, strokeWidth, fill: "none" }),
164
+ /* @__PURE__ */ jsx(
165
+ "path",
166
+ {
167
+ d: TRASH_LID,
168
+ stroke: primaryColor,
169
+ strokeWidth: strokeWidth * TRASH_BOLD,
170
+ fill: "none"
171
+ }
172
+ ),
164
173
  /* @__PURE__ */ jsx("path", { d: TRASH_DOME, fill: primaryColor }),
165
- /* @__PURE__ */ jsx("path", { d: TRASH_HANDLE, stroke: primaryColor, strokeWidth, fill: "none" }),
174
+ /* @__PURE__ */ jsx(
175
+ "path",
176
+ {
177
+ d: TRASH_HANDLE,
178
+ stroke: primaryColor,
179
+ strokeWidth: strokeWidth * TRASH_BOLD,
180
+ fill: "none"
181
+ }
182
+ ),
166
183
  /* @__PURE__ */ jsx("path", { d: TRASH_BIN, fill: primaryColor }),
167
184
  /* @__PURE__ */ jsx(
168
185
  "line",
@@ -206,9 +223,25 @@ const NtdTrash = /* @__PURE__ */ createIcon({
206
223
  ] }),
207
224
  vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
208
225
  /* @__PURE__ */ jsx("path", { d: TRASH_BIN, fill: primaryColor }),
209
- /* @__PURE__ */ jsx("path", { d: TRASH_LID, stroke: secondaryColor, strokeWidth, fill: "none" }),
226
+ /* @__PURE__ */ jsx(
227
+ "path",
228
+ {
229
+ d: TRASH_LID,
230
+ stroke: secondaryColor,
231
+ strokeWidth: strokeWidth * TRASH_BOLD,
232
+ fill: "none"
233
+ }
234
+ ),
210
235
  /* @__PURE__ */ jsx("path", { d: TRASH_DOME, fill: secondaryColor }),
211
- /* @__PURE__ */ jsx("path", { d: TRASH_HANDLE, stroke: secondaryColor, strokeWidth, fill: "none" }),
236
+ /* @__PURE__ */ jsx(
237
+ "path",
238
+ {
239
+ d: TRASH_HANDLE,
240
+ stroke: secondaryColor,
241
+ strokeWidth: strokeWidth * TRASH_BOLD,
242
+ fill: "none"
243
+ }
244
+ ),
212
245
  /* @__PURE__ */ jsx(
213
246
  "path",
214
247
  {
@@ -447,8 +480,9 @@ const NtdCopy = /* @__PURE__ */ createIcon({
447
480
  vivid: ({ primaryColor, secondaryColor, strokeWidth }) => copyFilled(primaryColor, secondaryColor, strokeWidth)
448
481
  }
449
482
  });
450
- const CLIPBOARD_TEXT = "M8 11h8M8 14.5h5";
451
- const CLIPBOARD_SHEET = "M6 22V4h12V22";
483
+ const CLIPBOARD_TEXT = "M8 10h8M8 13h5";
484
+ const CLIPBOARD_TEXT_WIDTH = 1.2;
485
+ const CLIPBOARD_SHEET = "M6 4.5h12v16H6z";
452
486
  const NtdClipboard = /* @__PURE__ */ createIcon({
453
487
  displayName: "NtdClipboard",
454
488
  perfectStackX: 12,
@@ -489,7 +523,15 @@ const NtdClipboard = /* @__PURE__ */ createIcon({
489
523
  opacity: accentOpacity
490
524
  }
491
525
  ),
492
- /* @__PURE__ */ jsx("path", { d: CLIPBOARD_TEXT, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
526
+ /* @__PURE__ */ jsx(
527
+ "path",
528
+ {
529
+ d: CLIPBOARD_TEXT,
530
+ stroke: accentColor,
531
+ strokeWidth: CLIPBOARD_TEXT_WIDTH,
532
+ opacity: accentOpacity
533
+ }
534
+ )
493
535
  ] }),
494
536
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
495
537
  /* @__PURE__ */ jsx(
@@ -549,7 +591,15 @@ const NtdClipboard = /* @__PURE__ */ createIcon({
549
591
  strokeWidth
550
592
  }
551
593
  ),
552
- /* @__PURE__ */ jsx("path", { d: CLIPBOARD_TEXT, stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
594
+ /* @__PURE__ */ jsx(
595
+ "path",
596
+ {
597
+ d: CLIPBOARD_TEXT,
598
+ stroke: accentColor,
599
+ strokeWidth: CLIPBOARD_TEXT_WIDTH,
600
+ opacity: accentOpacity
601
+ }
602
+ )
553
603
  ] })
554
604
  }
555
605
  });
@@ -1166,7 +1216,8 @@ const NtdLock = /* @__PURE__ */ createIcon({
1166
1216
  vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth }) => lockFilled(primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth * 2)
1167
1217
  }
1168
1218
  });
1169
- const UNLOCK_SHACKLE = "M6 10.5V7a6 6 0 0112 0v0.5";
1219
+ const UNLOCK_SHACKLE = "M6 10.5V8.2a6 6 0 0 1 11.91-1.04";
1220
+ const UNLOCK_SWING = "rotate(-10 6 10)";
1170
1221
  const NtdUnlock = /* @__PURE__ */ createIcon({
1171
1222
  displayName: "NtdUnlock",
1172
1223
  perfectStackX: 12,
@@ -1174,14 +1225,23 @@ const NtdUnlock = /* @__PURE__ */ createIcon({
1174
1225
  perfectStackSize: 0.4,
1175
1226
  paths: {
1176
1227
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1177
- /* @__PURE__ */ jsx("path", { d: UNLOCK_SHACKLE, stroke: primaryColor, strokeWidth: strokeWidth * 2, fill: "none" }),
1228
+ /* @__PURE__ */ jsx(
1229
+ "path",
1230
+ {
1231
+ d: UNLOCK_SHACKLE,
1232
+ transform: UNLOCK_SWING,
1233
+ stroke: primaryColor,
1234
+ strokeWidth: strokeWidth * 2,
1235
+ fill: "none"
1236
+ }
1237
+ ),
1178
1238
  /* @__PURE__ */ jsx("rect", { ...LOCK_BODY, fill: primaryColor }),
1179
1239
  /* @__PURE__ */ jsx("path", { d: LOCK_KEYHOLE, fill: accentColor, opacity: accentOpacity })
1180
1240
  ] }),
1181
1241
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
1182
1242
  /* @__PURE__ */ jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", children: [
1183
1243
  /* @__PURE__ */ jsx("rect", { ...LOCK_BODY }),
1184
- /* @__PURE__ */ jsx("path", { d: UNLOCK_SHACKLE })
1244
+ /* @__PURE__ */ jsx("path", { d: UNLOCK_SHACKLE, transform: UNLOCK_SWING })
1185
1245
  ] }),
1186
1246
  /* @__PURE__ */ jsx("path", { d: LOCK_KEYHOLE, fill: primaryColor })
1187
1247
  ] }),
@@ -1190,6 +1250,7 @@ const NtdUnlock = /* @__PURE__ */ createIcon({
1190
1250
  "path",
1191
1251
  {
1192
1252
  d: UNLOCK_SHACKLE,
1253
+ transform: UNLOCK_SWING,
1193
1254
  stroke: secondaryColor,
1194
1255
  strokeWidth: strokeWidth * 2,
1195
1256
  fill: "none"
@@ -1,6 +1,6 @@
1
1
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
2
  import { createIcon } from "../createIcon.js";
3
- import { paperIcon, swapDuotone, within } from "../iconParts.js";
3
+ import { paperIcon, within, swapDuotone } from "../iconParts.js";
4
4
  const BRIEFCASE_CASE = { x: 2, y: 7, width: 20, height: 14, rx: 2 };
5
5
  const BRIEFCASE_HANDLE = "M16 7V5a2 2 0 00-2-2h-4a2 2 0 00-2 2v2";
6
6
  const BRIEFCASE_BAND = "M2 11.5h20";
@@ -99,13 +99,16 @@ const NtdDollar = /* @__PURE__ */ createIcon({
99
99
  }
100
100
  });
101
101
  const WALLET_BODY = { x: 2, y: 6.5, width: 20, height: 14.5, rx: 2.5 };
102
- const WALLET_BACK = "M6 8V5.9L19 5a1 1 0 011.1 1V8z";
103
- const WALLET_BACK_LINE = "M6 6.5V5.9L19 5a1 1 0 011.1 1V6.5";
104
102
  const WALLET_POCKET = "M22 10.5h-4.5a2.5 2.5 0 000 5H22z";
105
103
  const WALLET_POCKET_LINE = "M22 10.5h-4.5a2.5 2.5 0 000 5H22";
106
- const NtdWallet = /* @__PURE__ */ createIcon({
107
- displayName: "NtdWallet",
108
- paths: {
104
+ function walletIcon(displayName, back, backLine) {
105
+ return createIcon({
106
+ displayName,
107
+ paths: walletPaths(back, backLine)
108
+ });
109
+ }
110
+ function walletPaths(WALLET_BACK, WALLET_BACK_LINE) {
111
+ return {
109
112
  // the back pocket is primary like the body: an accent gap (the body's edge, clipped to the pocket)
110
113
  // parts the two
111
114
  solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }) => /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -171,8 +174,18 @@ const NtdWallet = /* @__PURE__ */ createIcon({
171
174
  ),
172
175
  /* @__PURE__ */ jsx("circle", { cx: "17.6", cy: "13", r: "1.1", fill: secondaryColor })
173
176
  ] })
174
- }
175
- });
177
+ };
178
+ }
179
+ const NtdWallet = /* @__PURE__ */ walletIcon(
180
+ "NtdWallet",
181
+ "M4.5 5h15v3h-15z",
182
+ "M4.5 6.5V5h15v1.5"
183
+ );
184
+ const NtdWalletOpen = /* @__PURE__ */ walletIcon(
185
+ "NtdWalletOpen",
186
+ "M6 8V5.9L19 4a1 1 0 011.1 1V8z",
187
+ "M6 6.5V5.9L19 4a1 1 0 011.1 1V6.5"
188
+ );
176
189
  const RECEIPT = "M4 2v20l3-2 3 2 3-2 3 2 3-2 3 2V2H4z";
177
190
  const RECEIPT_TEXT = "M7 7.5h6.5M16.4 7.5h2M7 11.5h6.5M16.4 11.5h2M14.4 15.5h4";
178
191
  const NtdReceipt = /* @__PURE__ */ createIcon({
@@ -376,7 +389,7 @@ const NtdInvoice = /* @__PURE__ */ paperIcon(
376
389
  );
377
390
  const NtdInvoiceDoc = NtdInvoice;
378
391
  const STORE_BODY = "M2.5 5H21.5V21H2.5Z";
379
- const STORE_CORNICE = { x: 1.5, y: 3, width: 21, height: 2.4, rx: 0.6 };
392
+ const STORE_CORNICE = { x: 1.5, y: 3.5, width: 21, height: 1.9 };
380
393
  const STORE_CUT = "M2.5 5.4H21.5";
381
394
  const STORE_SIGN = { x: 3.8, y: 6.7, width: 16.4, height: 3.9, rx: 0.5 };
382
395
  const STORE_GLASS = "M4.2 11.9h4.8v6.8H4.2zM15 11.9h4.8v6.8H15zM10.2 12.2h3.6V21h-3.6z";
@@ -1224,5 +1237,6 @@ export {
1224
1237
  NtdStore,
1225
1238
  NtdTrendDown,
1226
1239
  NtdTrendUp,
1227
- NtdWallet
1240
+ NtdWallet,
1241
+ NtdWalletOpen
1228
1242
  };
@@ -261,13 +261,15 @@ const BATTERY_BODY = { x: 1.5, y: 6.5, width: 18.5, height: 11, rx: 2 };
261
261
  const BATTERY_TERMINAL = "M19.5 9.5h2a1 1 0 011 1v3a1 1 0 01-1 1h-2z";
262
262
  const BATTERY_TERMINAL_LINE = "M20 9.5h1.5a1 1 0 011 1v3a1 1 0 01-1 1H20";
263
263
  const BATTERY_BLOCKS = [3.5, 7.35, 11.2, 15.05];
264
+ const BATTERY_WINDOW = { x: 2.9, y: 7.9, width: 15.7, height: 8.2 };
264
265
  function batteryBlocks(count, fill) {
265
266
  return BATTERY_BLOCKS.slice(0, count).map((x) => /* @__PURE__ */ jsx("rect", { x, y: "8.5", width: "2.95", height: "7", fill }, x));
266
267
  }
267
268
  function batteryIcon(displayName, count) {
268
- const filled = (body, blocks) => /* @__PURE__ */ jsxs(Fragment, { children: [
269
+ const filled = (body, blocks, window) => /* @__PURE__ */ jsxs(Fragment, { children: [
269
270
  /* @__PURE__ */ jsx("rect", { ...BATTERY_BODY, fill: body }),
270
271
  /* @__PURE__ */ jsx("path", { d: BATTERY_TERMINAL, fill: body }),
272
+ window && /* @__PURE__ */ jsx("rect", { ...BATTERY_WINDOW, fill: window }),
271
273
  batteryBlocks(count, blocks)
272
274
  ] });
273
275
  return createIcon({
@@ -290,8 +292,8 @@ function batteryIcon(displayName, count) {
290
292
  ),
291
293
  batteryBlocks(count, primaryColor)
292
294
  ] }),
293
- duotone: ({ primaryColor, secondaryColor }) => filled(primaryColor, secondaryColor),
294
- vivid: ({ primaryColor, secondaryColor }) => filled(primaryColor, secondaryColor)
295
+ duotone: ({ primaryColor, secondaryColor }) => filled(primaryColor, primaryColor, secondaryColor),
296
+ vivid: ({ primaryColor, secondaryColor, accentColor }) => filled(primaryColor, accentColor, secondaryColor)
295
297
  }
296
298
  });
297
299
  }
@@ -928,16 +928,16 @@ const NtdBackpack = /* @__PURE__ */ createIcon({
928
928
  }
929
929
  });
930
930
  const CALC_BODY = { x: 4.6, y: 2, width: 14.8, height: 20, rx: 2 };
931
- const CALC_DISPLAY = { x: 6.8, y: 4.5, width: 10.4, height: 4.5, rx: 1 };
932
- const CALC_KEYS = "M6.8 11h2.8v2.4H6.8zM10.6 11h2.8v2.4h-2.8zM14.4 11h2.8v2.4h-2.8zM6.8 14.4h2.8v2.4H6.8zM10.6 14.4h2.8v2.4h-2.8zM14.4 14.4h2.8v2.4h-2.8zM6.8 17.8h2.8v2.4H6.8zM10.6 17.8h6.6v2.4h-6.6z";
931
+ const CALC_DISPLAY = { x: 6, y: 3.4, width: 12, height: 4.8, rx: 1 };
932
+ const CALC_KEYS = "M6 9.4h3.6v3.3H6zM10.2 9.4h3.6v3.3h-3.6zM14.4 9.4h3.6v3.3h-3.6zM6 13.3h3.6v3.3H6zM10.2 13.3h3.6v3.3h-3.6zM14.4 13.3h3.6v3.3h-3.6zM6 17.2h3.6v3.3H6zM10.2 17.2h7.8v3.3h-7.8z";
933
933
  const CALC_DOTS = [
934
- [8.2, 12.2],
935
- [12, 12.2],
936
- [15.8, 12.2],
937
- [8.2, 15.6],
938
- [12, 15.6],
939
- [15.8, 15.6],
940
- [8.2, 19]
934
+ [7.8, 11.05],
935
+ [12, 11.05],
936
+ [16.2, 11.05],
937
+ [7.8, 14.95],
938
+ [12, 14.95],
939
+ [16.2, 14.95],
940
+ [7.8, 18.85]
941
941
  ];
942
942
  function calculatorFilled({ primaryColor, accentColor, accentOpacity, strokeWidth }, display, displayOpacity) {
943
943
  return /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -967,7 +967,7 @@ const NtdCalculator = /* @__PURE__ */ createIcon({
967
967
  ] }),
968
968
  /* @__PURE__ */ jsxs("g", { fill: primaryColor, children: [
969
969
  CALC_DOTS.map(([cx, cy]) => /* @__PURE__ */ jsx("circle", { cx, cy, r: "1" }, `${cx},${cy}`)),
970
- /* @__PURE__ */ jsx("rect", { x: "10.6", y: "18.4", width: "6.6", height: "1.2", rx: "0.5" })
970
+ /* @__PURE__ */ jsx("rect", { x: "10.6", y: "18.25", width: "7", height: "1.2", rx: "0.5" })
971
971
  ] })
972
972
  ] }),
973
973
  vivid: (props) => calculatorFilled(props, props.secondaryColor, 1)
@@ -954,7 +954,7 @@ const NtdKey = /* @__PURE__ */ createIcon({
954
954
  }
955
955
  });
956
956
  const AWARD_RIBBON = "M8.21 13.89L7 23l5-3 5 3-1.21-9.12";
957
- const AWARD_RIBBON_INNER = "M9.67 13.42L8.9 20.11L12 18.25L15.1 20.11L14.32 13.43";
957
+ const AWARD_RIBBON_INNER = "M8.93 13.04L7.76 21.85L12 19.3L16.24 21.85L15.07 13.04M12 13.9V19.3";
958
958
  function awardInsets(color, opacity, width) {
959
959
  return /* @__PURE__ */ jsxs("g", { stroke: color, strokeWidth: width, opacity, fill: "none", children: [
960
960
  /* @__PURE__ */ jsx("circle", { cx: "12", cy: "8", r: "5.9" }),
@@ -415,7 +415,8 @@ const NtdCoffee = /* @__PURE__ */ createIcon({
415
415
  }
416
416
  });
417
417
  const WINE_BOWL = "M8 3h8c.9 1.8 1.3 3.5 1.3 5a5.3 5.3 0 01-10.6 0c0-1.5.4-3.2 1.3-5z";
418
- const WINE_LIQUID = "M5 8.5h14V15H5z";
418
+ const WINE_LIQUID = "M5 9.5h14V15H5z";
419
+ const WINE_SURFACE = "M5 9.5h14";
419
420
  const WINE_STEM = { x: 11.2, y: 12.8, width: 1.6, height: 6.7 };
420
421
  const WINE_FOOT = { x: 8, y: 19.25, width: 8, height: 1.5, rx: 0.75 };
421
422
  function wineFilled({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }, wine, surface) {
@@ -430,9 +431,9 @@ function wineFilled({ primaryColor, accentColor, accentOpacity, strokeWidth, uid
430
431
  surface && /* @__PURE__ */ jsx(
431
432
  "path",
432
433
  {
433
- d: "M5 8.5h14",
434
+ d: WINE_SURFACE,
434
435
  stroke: accentColor,
435
- strokeWidth: strokeWidth * 0.6,
436
+ strokeWidth: strokeWidth * 0.4,
436
437
  opacity: accentOpacity
437
438
  }
438
439
  )
@@ -448,7 +449,7 @@ const NtdWine = /* @__PURE__ */ createIcon({
448
449
  solid: (p) => wineFilled(p, p.primaryColor, true),
449
450
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", children: [
450
451
  /* @__PURE__ */ jsx("path", { d: WINE_BOWL, strokeLinejoin: "miter" }),
451
- /* @__PURE__ */ jsx("path", { d: "M6.75 8.5h10.5M12 13.3v6.2M8.5 20h7" })
452
+ /* @__PURE__ */ jsx("path", { d: "M6.95 9.5h10.1M12 13.3v6.2M8.5 20h7" })
452
453
  ] }),
453
454
  duotone: (p) => wineFilled(p, p.secondaryColor, false),
454
455
  vivid: (p) => wineFilled(p, p.secondaryColor, true)
@@ -456,7 +457,7 @@ const NtdWine = /* @__PURE__ */ createIcon({
456
457
  });
457
458
  const BEER_GLASS = "M4.5 8H15.5C16.45 11 16.45 17 15.6 19.9A2.1 2.1 0 0 1 13.6 21.5H6.4A2.1 2.1 0 0 1 4.4 19.9C3.55 17 3.55 11 4.5 8Z";
458
459
  const BEER_GLASS_SHARP = "M4.5 8H15.5C16.45 11 16.45 17 15.6 21.5H4.4C3.55 17 3.55 11 4.5 8Z";
459
- const BEER_FOAM = "M4.6 7.55A1.71 1.71 0 0 1 6.49 4.95A2.07 2.07 0 0 1 10.23 4.05A2.07 2.07 0 0 1 13.69 4.95A1.71 1.71 0 0 1 15.4 7.55Z";
460
+ const BEER_FOAM = "M4.6 7.55V6.34A1.71 1.71 0 0 1 6.49 5.65A2.07 2.07 0 0 1 10.23 4.75A2.07 2.07 0 0 1 13.69 5.65A1.71 1.71 0 0 1 15.4 6.43V7.55Z";
460
461
  const BEER_HANDLE = "M16 11H17.5A2 2 0 0 1 19.5 13V16A2 2 0 0 1 17.5 18H16";
461
462
  const BEER_RIBS = "M8 11V18.5M12 11V18.5";
462
463
  function beer(p, width, glassPath = BEER_GLASS) {
@@ -643,7 +644,8 @@ const NtdSoda = /* @__PURE__ */ createIcon({
643
644
  const CHEF_PUFF = "M6 8a4 4 0 014-4h4a4 4 0 014 4c2 0 4 1.5 4 4s-2 4-4 4H6c-2 0-4-1.5-4-4s2-4 4-4z";
644
645
  const CHEF_BAND = "M6 16h12v5a1 1 0 01-1 1H7a1 1 0 01-1-1z";
645
646
  const CHEF_BAND_SHARP = "M6 16h12v6H6z";
646
- const CHEF_LINES = "M6 16.25h12M9.5 18v2.5M14.5 18v2.5";
647
+ const CHEF_LINES = "M8.4 16.9v4.2M10.8 16.9v4.2M13.2 16.9v4.2M15.6 16.9v4.2";
648
+ const CHEF_LINES_OUTLINE = "M8.4 17.3v3.4M10.8 17.3v3.4M13.2 17.3v3.4M15.6 17.3v3.4";
647
649
  function chefHatFilled({ primaryColor, accentColor, accentOpacity, strokeWidth }, band, lines, bandPath = CHEF_BAND) {
648
650
  return /* @__PURE__ */ jsxs(Fragment, { children: [
649
651
  /* @__PURE__ */ jsx("path", { d: CHEF_PUFF, fill: primaryColor }),
@@ -670,16 +672,17 @@ const NtdChefHat = /* @__PURE__ */ createIcon({
670
672
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", strokeLinejoin: "miter", children: [
671
673
  /* @__PURE__ */ jsx("path", { d: CHEF_PUFF }),
672
674
  /* @__PURE__ */ jsx("path", { d: "M6 16v5a1 1 0 001 1h10a1 1 0 001-1v-5" }),
673
- /* @__PURE__ */ jsx("path", { d: "M9.5 18v2.5M14.5 18v2.5" })
675
+ /* @__PURE__ */ jsx("path", { d: CHEF_LINES_OUTLINE })
674
676
  ] }),
675
677
  duotone: (p) => chefHatFilled(p, p.secondaryColor, false),
676
678
  vivid: (p) => chefHatFilled(p, p.secondaryColor, true)
677
679
  }
678
680
  });
679
681
  const FORK_KNIFE_SCALE = 1.15;
682
+ const FORK_KNIFE_WIDEN = 1.3;
680
683
  const FORK_KNIFE_FRAME = `translate(12 12) scale(${FORK_KNIFE_SCALE}) translate(-12 -12)`;
681
- const FORK_KNIFE_FORK_AT = "translate(6.3 0)";
682
- const FORK_KNIFE_KNIFE_AT = "translate(-6.55 0)";
684
+ const FORK_KNIFE_FORK_AT = `translate(7.913 0) scale(${FORK_KNIFE_WIDEN} 1) translate(-2.1 0)`;
685
+ const FORK_KNIFE_KNIFE_AT = `translate(16.609 0) scale(${FORK_KNIFE_WIDEN} 1) translate(-22.3 0)`;
683
686
  function forkKnifeFilled(fork, knife) {
684
687
  return /* @__PURE__ */ jsxs("g", { transform: FORK_KNIFE_FRAME, children: [
685
688
  /* @__PURE__ */ jsx("path", { d: CUTLERY_FORK, transform: FORK_KNIFE_FORK_AT, fill: fork }),
@@ -698,7 +701,7 @@ const NtdForkKnife = /* @__PURE__ */ createIcon({
698
701
  d: CUTLERY_KNIFE,
699
702
  transform: FORK_KNIFE_KNIFE_AT,
700
703
  stroke: primaryColor,
701
- strokeWidth: strokeWidth / FORK_KNIFE_SCALE,
704
+ strokeWidth: strokeWidth / (FORK_KNIFE_SCALE * FORK_KNIFE_WIDEN),
702
705
  strokeLinejoin: "miter",
703
706
  fill: "none"
704
707
  }
@@ -745,8 +748,8 @@ const NtdKnife = /* @__PURE__ */ createIcon({
745
748
  });
746
749
  const PAN_TURN = "rotate(45 12 12)";
747
750
  const PAN_CENTER = { cx: 9.5, cy: 12 };
748
- const PAN_HANDLE = "M16.6 10.8H21.8A1.2 1.2 0 0 1 21.8 13.2H16.6Z";
749
- const PAN_HOLE = { cx: 21.55, cy: 12, r: 0.55 };
751
+ const PAN_HANDLE = "M16 9.6H21A2.4 2.4 0 0 1 21 14.4H16Z";
752
+ const PAN_HOLE = { cx: 21, cy: 12, r: 1.1 };
750
753
  function panFilled({ primaryColor, accentColor, accentOpacity, strokeWidth }, handle, rings, ringsOpacity) {
751
754
  return /* @__PURE__ */ jsxs("g", { transform: PAN_TURN, children: [
752
755
  /* @__PURE__ */ jsx("path", { d: PAN_HANDLE, fill: handle }),
@@ -772,7 +775,7 @@ const NtdCookingPan = /* @__PURE__ */ createIcon({
772
775
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs("g", { transform: PAN_TURN, stroke: primaryColor, strokeWidth, fill: "none", children: [
773
776
  /* @__PURE__ */ jsx("circle", { ...PAN_CENTER, r: "7.5" }),
774
777
  /* @__PURE__ */ jsx("circle", { ...PAN_CENTER, r: "6.2" }),
775
- /* @__PURE__ */ jsx("path", { d: "M17 10.8H21.8A1.2 1.2 0 0 1 21.8 13.2H17" }),
778
+ /* @__PURE__ */ jsx("path", { d: "M16.6 9.6H21A2.4 2.4 0 0 1 21 14.4H16.6" }),
776
779
  /* @__PURE__ */ jsx("circle", { ...PAN_HOLE })
777
780
  ] }),
778
781
  duotone: (p) => panFilled(p, p.secondaryColor, p.secondaryColor, 1),
@@ -9,7 +9,7 @@ import { NtdActivity, NtdArchive, NtdAward, NtdBarChart, NtdCart, NtdCloud, NtdC
9
9
  import { NtdCrown, NtdDice, NtdDicePips1, NtdDicePips2, NtdDicePips3, NtdDicePips4, NtdDicePips5, NtdDicePips6, NtdDumpsterFire, NtdGamepadOldschool, NtdGhost, NtdLightning, NtdPartyPopper, NtdPuzzle, NtdRocket, NtdSad, NtdSkull, NtdSmile, NtdSmiley, NtdTrophy, NtdZap, dicePipsIconFor } from "./fun.js";
10
10
  import { NtdAnchor, NtdBug, NtdCompass, NtdDroplet, NtdFeather, NtdFire, NtdFlower, NtdHydropower, NtdLeaf, NtdMountain, NtdRain, NtdSnow, NtdSnowflake, NtdSunrise, NtdSunset, NtdThermometer, NtdThunderstorm, NtdTree, NtdUmbrella, NtdWave, NtdWind } from "./weather.js";
11
11
  import { NtdAngleBisector, NtdArrowDownCircle, NtdArrowLeftCircle, NtdArrowRightCircle, NtdArrowUpCircle, NtdCircle, NtdCornerDownLeft, NtdCornerDownRight, NtdCornerUpLeft, NtdCornerUpRight, NtdCross, NtdDiamond, NtdHexagon, NtdMaximize, NtdMidpoint, NtdMinimize, NtdMove, NtdOctagon, NtdParallel, NtdPentagon, NtdPerpendicular, NtdPoint, NtdRepeat, NtdSegment, NtdShuffle, NtdSquare, NtdTriangle } from "./shapes.js";
12
- import { NtdBank, NtdBarcode, NtdBriefcase, NtdCalculator, NtdCash, NtdCashStack, NtdClipboardCheck, NtdCoins, NtdDollar, NtdInvoice, NtdInvoiceDoc, NtdKanban, NtdMarket, NtdMilestone, NtdPercent, NtdPiggyBank, NtdPresentation, NtdReceipt, NtdStore, NtdTrendDown, NtdTrendUp, NtdWallet } from "./business.js";
12
+ import { NtdBank, NtdBarcode, NtdBriefcase, NtdCalculator, NtdCash, NtdCashStack, NtdClipboardCheck, NtdCoins, NtdDollar, NtdInvoice, NtdInvoiceDoc, NtdKanban, NtdMarket, NtdMilestone, NtdPercent, NtdPiggyBank, NtdPresentation, NtdReceipt, NtdStore, NtdTrendDown, NtdTrendUp, NtdWallet, NtdWalletOpen } from "./business.js";
13
13
  import { NtdAtSign, NtdBellRing, NtdBubble, NtdMegaphone, NtdPhoneOff, NtdQrCode, NtdThumbsDown, NtdThumbsUp } from "./social.js";
14
14
  import { NtdAIBrain, NtdAstroLogo, NtdBattery, NtdBatteryFull, NtdBatteryHalf, NtdBatteryQuarter, NtdBatteryThreeQuarters, NtdBlueprint, NtdBrackets, NtdBugDev, NtdBunLogo, NtdComponent, NtdDataMesh, NtdDenoLogo, NtdDeploy, NtdFeatureFlag, NtdFlow, NtdForge, NtdGateway, NtdGitBranch, NtdGitCommit, NtdGitMerge, NtdHash, NtdNeural, NtdNextJsLogo, NtdNodes, NtdPipeline, NtdPrototype, NtdQwikLogo, NtdServer, NtdSlash, NtdSolidJsLogo, NtdSvelteLogo, NtdTauriLogo, NtdViteLogo, batteryIconFor } from "./devtech.js";
15
15
  import { NtdCartAdd, NtdCartRemove, NtdCheckout, NtdCompare, NtdCoupon, NtdDiscount, NtdGiftCard, NtdPayment, NtdPromoTag, NtdRefund, NtdReturn, NtdShipping, NtdStorefront } from "./ecommerce.js";
@@ -582,6 +582,7 @@ export {
582
582
  NtdVolumeMute,
583
583
  NtdVrHeadset,
584
584
  NtdWallet,
585
+ NtdWalletOpen,
585
586
  NtdWarehouse,
586
587
  NtdWarning,
587
588
  NtdWave,
@@ -428,7 +428,7 @@ const RACK_SLOTS = [
428
428
  [6.9, 6.2, 4.2]
429
429
  ];
430
430
  const round = (n) => Math.round(n * 1e3) / 1e3;
431
- function rackGeometry(f, width, boxes) {
431
+ function rackGeometry(f, width, boxes, even = false) {
432
432
  const heavy = width * 1.35;
433
433
  const topEdge = f.top - heavy / 2;
434
434
  const bottomEdge = f.bottom - heavy / 2;
@@ -449,16 +449,22 @@ function rackGeometry(f, width, boxes) {
449
449
  { floor: shelf - half, ceiling: topEdge + width }
450
450
  ];
451
451
  const scale = (f.right - f.left) / 16;
452
+ const gap = 0.6 * scale;
453
+ const evenWidth = (f.right - f.left - width - 3 * gap) / 2;
452
454
  const rects = RACK_SLOTS.slice(0, boxes).map(([x, w, h], i) => {
453
455
  const level = levels[Math.floor(i / 2)];
454
- const gap = 0.6 * scale;
455
- const bh = Math.min(h * scale, level.floor - level.ceiling - gap - 0.4 * scale);
456
+ const room = level.floor - level.ceiling - gap - 0.4 * scale;
457
+ if (even) {
458
+ const left = f.left + half + gap + i % 2 * (evenWidth + gap);
459
+ return rect(left, level.floor - gap - room, evenWidth, room);
460
+ }
461
+ const bh = Math.min(h * scale, room);
456
462
  return rect(f.left + half + x * scale, level.floor - gap - bh, w * scale, bh);
457
463
  }).join("");
458
464
  return { lines, frame, rects };
459
465
  }
460
- function rackDrawing(f, boxes, frame, fill, width, outline) {
461
- const g = rackGeometry(f, width, boxes);
466
+ function rackDrawing(f, boxes, frame, fill, width, outline, even = false) {
467
+ const g = rackGeometry(f, width, boxes, even);
462
468
  if (outline) {
463
469
  return /* @__PURE__ */ jsxs(Fragment, { children: [
464
470
  /* @__PURE__ */ jsx("path", { d: g.lines, stroke: frame, strokeWidth: width, strokeLinecap: "butt", fill: "none" }),
@@ -503,13 +509,13 @@ function shelfRackIconFor(level) {
503
509
  }
504
510
  const WAREHOUSE = "M1.5 9.2L12 3.5L22.5 9.2V21H20.4V11H3.6V21H1.5Z";
505
511
  const WAREHOUSE_RACKS = [
506
- { left: 4.75, right: 11.15, top: 12.3, bottom: 19.25, floor: 21 },
507
- { left: 12.85, right: 19.25, top: 12.3, bottom: 19.25, floor: 21 }
512
+ { left: 4.75, right: 11.15, top: 12.3, bottom: 20.3, floor: 21 },
513
+ { left: 12.85, right: 19.25, top: 12.3, bottom: 20.3, floor: 21 }
508
514
  ];
509
515
  function warehouseDrawing(hall, rackFrame, boxes, width, outline) {
510
516
  return /* @__PURE__ */ jsxs(Fragment, { children: [
511
517
  outline ? /* @__PURE__ */ jsx("path", { d: WAREHOUSE, stroke: hall, strokeWidth: width, strokeLinejoin: "miter", fill: "none" }) : /* @__PURE__ */ jsx("path", { d: WAREHOUSE, fill: hall }),
512
- WAREHOUSE_RACKS.map((f) => /* @__PURE__ */ jsx("g", { children: rackDrawing(f, 4, rackFrame, boxes, outline ? width * 0.7 : width * 0.35, outline) }, f.left))
518
+ WAREHOUSE_RACKS.map((f) => /* @__PURE__ */ jsx("g", { children: rackDrawing(f, 4, rackFrame, boxes, outline ? width * 0.7 : width * 0.35, outline, true) }, f.left))
513
519
  ] });
514
520
  }
515
521
  const NtdWarehouse = /* @__PURE__ */ createIcon({
@@ -3,7 +3,7 @@ import { createIcon } from "../createIcon.js";
3
3
  import { swapDuotone } from "../iconParts.js";
4
4
  import { NtdHydropower } from "./weather.js";
5
5
  const RECYCLE_TURNS = [0, 120, 240];
6
- const RECYCLE_BAND = "M7.82 12.85L5.42 17H9.5";
6
+ const RECYCLE_BAND = "M7.82 12.85L5.42 17H9.25";
7
7
  const RECYCLE_HEAD = "M9.22 14.7L11.82 17L9.22 19.3Z";
8
8
  function recycleArrows(colors, width, filled) {
9
9
  return /* @__PURE__ */ jsx(Fragment, { children: RECYCLE_TURNS.map((turn, i) => /* @__PURE__ */ jsxs("g", { transform: `rotate(${turn} 12 13.2)`, children: [
@@ -134,21 +134,36 @@ const NtdUserTie = /* @__PURE__ */ createIcon({
134
134
  vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity }) => userTieFilled(primaryColor, secondaryColor, accentColor, accentOpacity, primaryColor)
135
135
  }
136
136
  });
137
- const USERS_FRONT_HEAD = { cx: 12, cy: 8, r: 3.75 };
137
+ const USERS_FRONT_HEAD = { cx: 12, cy: 10.2, r: 3.75 };
138
138
  const USERS_FRONT_BODY = "M18 21.5v-2.25a3.75 3.75 0 00-3.75-3.75h-4.5A3.75 3.75 0 006 19.25v2.25";
139
139
  const USERS_BACK_HEADS = [
140
- { cx: 5, cy: 7.5, r: 2.6 },
141
- { cx: 19, cy: 7.5, r: 2.6 }
140
+ { cx: 5, cy: 8.8, r: 2.6 },
141
+ { cx: 19, cy: 8.8, r: 2.6 }
142
142
  ];
143
143
  const USERS_BACK_BODIES = [
144
- "M0.75 19.5v-3.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v3.6",
145
- "M14.75 19.5v-3.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v3.6"
144
+ "M0.75 20.5v-4.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v4.6",
145
+ "M14.75 20.5v-4.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v4.6"
146
146
  ];
147
- function usersFilled(front, back, { accentColor, accentOpacity, strokeWidth }) {
147
+ const USERS_BACK_TURNS = ["rotate(-15 5.15 16)", "rotate(15 19.15 16)"];
148
+ const USERS_BACK_FLOOR = /* @__PURE__ */ jsx("rect", { width: "24", height: "19.5" });
149
+ function usersBehind(uid, draw) {
150
+ return within(
151
+ uid,
152
+ "floor",
153
+ USERS_BACK_FLOOR,
154
+ /* @__PURE__ */ jsxs(Fragment, { children: [
155
+ /* @__PURE__ */ jsx("g", { transform: USERS_BACK_TURNS[0], children: draw(0) }),
156
+ /* @__PURE__ */ jsx("g", { transform: USERS_BACK_TURNS[1], children: draw(1) })
157
+ ] })
158
+ );
159
+ }
160
+ function usersFilled(front, back, { accentColor, accentOpacity, strokeWidth, uid }) {
148
161
  const gap = strokeWidth * 0.5;
149
162
  return /* @__PURE__ */ jsxs(Fragment, { children: [
150
- USERS_BACK_HEADS.map((h) => /* @__PURE__ */ jsx("circle", { ...h, fill: back }, h.cx)),
151
- /* @__PURE__ */ jsx("path", { d: USERS_BACK_BODIES.map((d) => `${d}z`).join(""), fill: back }),
163
+ usersBehind(uid, (i) => /* @__PURE__ */ jsxs(Fragment, { children: [
164
+ /* @__PURE__ */ jsx("circle", { ...USERS_BACK_HEADS[i], fill: back }),
165
+ /* @__PURE__ */ jsx("path", { d: `${USERS_BACK_BODIES[i]}z`, fill: back })
166
+ ] })),
152
167
  /* @__PURE__ */ jsxs("g", { fill: accentColor, opacity: accentOpacity, children: [
153
168
  /* @__PURE__ */ jsx("circle", { ...USERS_FRONT_HEAD, r: USERS_FRONT_HEAD.r + gap }),
154
169
  /* @__PURE__ */ jsx(
@@ -185,10 +200,10 @@ const NtdUsers = /* @__PURE__ */ createIcon({
185
200
  }
186
201
  )
187
202
  ] }),
188
- /* @__PURE__ */ jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", mask: `url(#${id})`, children: [
189
- USERS_BACK_HEADS.map((h) => /* @__PURE__ */ jsx("circle", { ...h }, h.cx)),
190
- /* @__PURE__ */ jsx("path", { d: USERS_BACK_BODIES.join("") })
191
- ] }),
203
+ /* @__PURE__ */ jsx("g", { stroke: primaryColor, strokeWidth, fill: "none", mask: `url(#${id})`, children: usersBehind(uid, (i) => /* @__PURE__ */ jsxs(Fragment, { children: [
204
+ /* @__PURE__ */ jsx("circle", { ...USERS_BACK_HEADS[i] }),
205
+ /* @__PURE__ */ jsx("path", { d: USERS_BACK_BODIES[i] })
206
+ ] })) }),
192
207
  /* @__PURE__ */ jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", children: [
193
208
  /* @__PURE__ */ jsx("circle", { ...USERS_FRONT_HEAD }),
194
209
  /* @__PURE__ */ jsx("path", { d: USERS_FRONT_BODY })
@@ -800,7 +815,7 @@ function calendarIcon(displayName, kind) {
800
815
  /* @__PURE__ */ jsx("rect", { ...CALENDAR_PAGE }),
801
816
  /* @__PURE__ */ jsxs(Fragment, { children: [
802
817
  two && /* @__PURE__ */ jsx("path", { d: CALENDAR_HEAD_BAND, fill: secondaryColor }),
803
- /* @__PURE__ */ jsx("path", { d: "M3 9.5h18", stroke: accentColor, strokeWidth: "1.5", opacity: accentOpacity })
818
+ /* @__PURE__ */ jsx("path", { d: "M3 9.3h18", stroke: accentColor, strokeWidth: "1.1", opacity: accentOpacity })
804
819
  ] })
805
820
  ),
806
821
  /* @__PURE__ */ jsx(
@@ -659,8 +659,8 @@ const NtdTree = /* @__PURE__ */ createIcon({
659
659
  }
660
660
  });
661
661
  const MOUNTAIN = "M12 2L2 22h20L12 2z";
662
- const MOUNTAIN_SNOW = "M12 2L16.6 11.2L14.6 12.3L13.2 14.1L10.7 12L8.9 13.7L7 12Z";
663
- const MOUNTAIN_SNOW_LINE = "M7 12L8.9 13.7L10.7 12L13.2 14.1L14.6 12.3L16.6 11.2";
662
+ const MOUNTAIN_SNOW = "M12 2L16.6 11.2L14.6 12.3L13.6 14.6L10.7 12L8.9 13.7L7 12Z";
663
+ const MOUNTAIN_SNOW_LINE = "M7 12L8.9 13.7L10.7 12L13.6 14.6L14.6 12.3L16.6 11.2";
664
664
  const NtdMountain = /* @__PURE__ */ createIcon({
665
665
  displayName: "NtdMountain",
666
666
  paths: {
package/dist/esm/index.js CHANGED
@@ -45,7 +45,7 @@ import { NtdAtom, NtdBeaker, NtdExperiment, NtdFlask, NtdHypothesis, NtdMagnet,
45
45
  import { NtdAudit, NtdCcpa, NtdCompliance, NtdContract, NtdCookieConsent, NtdCopyright, NtdGdpr, NtdLegalDocument, NtdPatent, NtdPrivacyPolicy, NtdTermsOfService, NtdTrademark, legalIcons } from "./icons/legal.js";
46
46
  import { NtdBackpack, NtdBook, NtdBookBookmark, NtdCalculator, NtdCertificate, NtdFlashcard, NtdGraduationCap, NtdNotebook, NtdOnlineCourse, NtdOpenBook, NtdPen, NtdPencil, NtdQuiz, NtdSchool, NtdScroll, NtdScrollRolled, NtdUniversity, NtdWebinar, educationIcons } from "./icons/education.js";
47
47
  import { NtdBackspace, NtdBell, NtdBookmark, NtdCalendar, NtdCalendarDay, NtdCalendarMonth, NtdCalendarWeek, NtdClock, NtdCursor, NtdError, NtdEye, NtdEyeOff, NtdFlag, NtdGlobe, NtdHeart, NtdHelp, NtdHome, NtdHourglass, NtdInfo, NtdMap, NtdMapPin, NtdMoon, NtdPin, NtdShield, NtdStar, NtdSuccess, NtdSun, NtdTag, NtdThumbDown, NtdThumbUp, NtdUser, NtdUserTie, NtdUsers, NtdWarning, NtdWireframe, NtdWishlist } from "./icons/ui.js";
48
- import { NtdBank, NtdBarcode, NtdBriefcase, NtdCalculator as NtdCalculator2, NtdCash, NtdCashStack, NtdClipboardCheck, NtdCoins, NtdDollar, NtdInvoice, NtdInvoiceDoc, NtdKanban, NtdMarket, NtdMilestone, NtdPercent, NtdPiggyBank, NtdPresentation, NtdReceipt, NtdStore, NtdTrendDown, NtdTrendUp, NtdWallet } from "./icons/business.js";
48
+ import { NtdBank, NtdBarcode, NtdBriefcase, NtdCalculator as NtdCalculator2, NtdCash, NtdCashStack, NtdClipboardCheck, NtdCoins, NtdDollar, NtdInvoice, NtdInvoiceDoc, NtdKanban, NtdMarket, NtdMilestone, NtdPercent, NtdPiggyBank, NtdPresentation, NtdReceipt, NtdStore, NtdTrendDown, NtdTrendUp, NtdWallet, NtdWalletOpen } from "./icons/business.js";
49
49
  import { NtdBasketball, NtdCycling, NtdDumbbell, NtdGolf, NtdMedal, NtdPodium, NtdRunning, NtdSoccerBall, NtdStopwatch, NtdSwimming, NtdTarget as NtdTarget2, NtdTennis, NtdWhistle, NtdYoga, sportsIcons } from "./icons/sports.js";
50
50
  import { NtdBeach, NtdBike, NtdBus, NtdCamping, NtdCar, NtdCompassRose, NtdHotel, NtdLuggage, NtdPassport, NtdPlane, NtdPlaneTakeoff, NtdShip, NtdTaxi, NtdTicket, NtdTrain, travelIcons } from "./icons/travel.js";
51
51
  import { NtdBeer, NtdBurger, NtdChefHat, NtdCocktail, NtdCoffee, NtdCookingPan, NtdForkKnife, NtdHotdog, NtdKnife, NtdPlate, NtdRecipe, NtdRestaurant, NtdSoda, NtdSushi, NtdTaco, NtdWine, foodIcons } from "./icons/food.js";
@@ -654,6 +654,7 @@ export {
654
654
  NtdVolumeMute,
655
655
  NtdVrHeadset,
656
656
  NtdWallet,
657
+ NtdWalletOpen,
657
658
  NtdWarehouse,
658
659
  NtdWarning,
659
660
  NtdWave,
@@ -1,6 +1,9 @@
1
1
  export declare const NtdBriefcase: import("react").ForwardRefExoticComponent<import("..").NtdIconProps & import("react").RefAttributes<SVGSVGElement>>;
2
2
  export declare const NtdDollar: import("react").ForwardRefExoticComponent<import("..").NtdIconProps & import("react").RefAttributes<SVGSVGElement>>;
3
+ /** A wallet: the body with its clasp pocket, a thin back pocket showing above it. */
3
4
  export declare const NtdWallet: import("react").ForwardRefExoticComponent<import("..").NtdIconProps & import("react").RefAttributes<SVGSVGElement>>;
5
+ /** An open wallet: the back pocket rising above the body on a slant (1.4.13). */
6
+ export declare const NtdWalletOpen: import("react").ForwardRefExoticComponent<import("..").NtdIconProps & import("react").RefAttributes<SVGSVGElement>>;
4
7
  export declare const NtdReceipt: import("react").ForwardRefExoticComponent<import("..").NtdIconProps & import("react").RefAttributes<SVGSVGElement>>;
5
8
  export declare const NtdBank: import("react").ForwardRefExoticComponent<import("..").NtdIconProps & import("react").RefAttributes<SVGSVGElement>>;
6
9
  export declare const NtdTrendUp: import("react").ForwardRefExoticComponent<import("..").NtdIconProps & import("react").RefAttributes<SVGSVGElement>>;
@@ -9,7 +9,7 @@ export { NtdFile, NtdFileText, NtdFolder, NtdFolderOpen, NtdArchive, NtdDatabase
9
9
  export { NtdDumpsterFire, NtdRocket, NtdGamepadOldschool, NtdPuzzle, NtdPartyPopper, NtdTrophy, NtdCrown, NtdDice, NtdDicePips1, NtdDicePips2, NtdDicePips3, NtdDicePips4, NtdDicePips5, NtdDicePips6, dicePipsIconFor, NtdSmile, NtdSmiley, NtdSad, NtdSkull, NtdGhost, NtdLightning, NtdZap, } from './fun';
10
10
  export { NtdSunrise, NtdSunset, NtdRain, NtdSnow, NtdThunderstorm, NtdWind, NtdDroplet, NtdHydropower, NtdThermometer, NtdUmbrella, NtdLeaf, NtdFlower, NtdTree, NtdMountain, NtdWave, NtdFire, NtdSnowflake, NtdCompass, NtdAnchor, NtdFeather, NtdBug, } from './weather';
11
11
  export { NtdArrowUpCircle, NtdArrowDownCircle, NtdArrowLeftCircle, NtdArrowRightCircle, NtdSquare, NtdCircle, NtdTriangle, NtdHexagon, NtdOctagon, NtdDiamond, NtdPentagon, NtdCross, NtdCornerUpLeft, NtdCornerUpRight, NtdCornerDownLeft, NtdCornerDownRight, NtdMaximize, NtdMinimize, NtdMove, NtdRepeat, NtdShuffle, NtdPoint, NtdSegment, NtdPerpendicular, NtdParallel, NtdMidpoint, NtdAngleBisector, } from './shapes';
12
- export { NtdBriefcase, NtdDollar, NtdWallet, NtdReceipt, NtdBank, NtdTrendUp, NtdTrendDown, NtdPercent, NtdInvoice, NtdInvoiceDoc, NtdStore, NtdMarket, NtdBarcode, NtdCalculator, NtdPresentation, NtdClipboardCheck, NtdPiggyBank, NtdCoins, NtdCash, NtdCashStack, NtdKanban, NtdMilestone, } from './business';
12
+ export { NtdBriefcase, NtdDollar, NtdWallet, NtdWalletOpen, NtdReceipt, NtdBank, NtdTrendUp, NtdTrendDown, NtdPercent, NtdInvoice, NtdInvoiceDoc, NtdStore, NtdMarket, NtdBarcode, NtdCalculator, NtdPresentation, NtdClipboardCheck, NtdPiggyBank, NtdCoins, NtdCash, NtdCashStack, NtdKanban, NtdMilestone, } from './business';
13
13
  export { NtdAtSign, NtdPhoneOff, NtdBubble, NtdThumbsUp, NtdThumbsDown, NtdBellRing, NtdMegaphone, NtdQrCode, } from './social';
14
14
  export { NtdBrackets, NtdServer, NtdGitBranch, NtdGitCommit, NtdGitMerge, NtdBattery, NtdBatteryQuarter, NtdBatteryHalf, NtdBatteryThreeQuarters, NtdBatteryFull, batteryIconFor, NtdSlash, NtdHash, NtdBugDev, NtdBlueprint, NtdPrototype, NtdComponent, NtdNodes, NtdFlow, NtdAIBrain, NtdNeural, NtdForge, NtdPipeline, NtdDeploy, NtdGateway, NtdDataMesh, NtdFeatureFlag, NtdViteLogo, NtdBunLogo, NtdDenoLogo, NtdTauriLogo, NtdSvelteLogo, NtdNextJsLogo, NtdAstroLogo, NtdQwikLogo, NtdSolidJsLogo, } from './devtech';
15
15
  export { NtdCartAdd, NtdCartRemove, NtdCheckout, NtdCompare, NtdShipping, NtdReturn, NtdDiscount, NtdPromoTag, NtdGiftCard, NtdCoupon, NtdStorefront, NtdPayment, NtdRefund, } from './ecommerce';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nice2dev/icons",
3
- "version": "1.4.12",
3
+ "version": "1.4.13",
4
4
  "description": "Beautiful, lightweight, multi-color SVG icon library for React with animations",
5
5
  "author": "NiceToDev <contact@nicetodev.com>",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -109,7 +109,7 @@
109
109
  },
110
110
  "devDependencies": {
111
111
  "@chromatic-com/storybook": "^5.3.1",
112
- "@nice2dev/ui-core": "^1.4.12",
112
+ "@nice2dev/ui-core": "^1.4.13",
113
113
  "@storybook/addon-a11y": "^10.6.6",
114
114
  "@storybook/addon-docs": "^10.6.6",
115
115
  "@storybook/react-vite": "^10.6.6",