@nice2dev/icons 1.4.0 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +6 -4
  3. package/dist/cjs/iconParts.js +6 -0
  4. package/dist/cjs/icons/actions.js +3 -3
  5. package/dist/cjs/icons/business.js +210 -64
  6. package/dist/cjs/icons/devtech.js +59 -63
  7. package/dist/cjs/icons/ecommerce.js +0 -62
  8. package/dist/cjs/icons/files.js +38 -88
  9. package/dist/cjs/icons/fintech.js +4 -3
  10. package/dist/cjs/icons/food.js +118 -65
  11. package/dist/cjs/icons/health.js +55 -70
  12. package/dist/cjs/icons/index.js +12 -1
  13. package/dist/cjs/icons/omniverk.js +3 -3
  14. package/dist/cjs/icons/realestate.js +100 -96
  15. package/dist/cjs/icons/science.js +74 -36
  16. package/dist/cjs/icons/smarthome.js +56 -65
  17. package/dist/cjs/icons/ui.js +44 -29
  18. package/dist/cjs/index.js +12 -1
  19. package/dist/esm/iconParts.js +6 -0
  20. package/dist/esm/icons/actions.js +3 -3
  21. package/dist/esm/icons/business.js +210 -64
  22. package/dist/esm/icons/devtech.js +60 -64
  23. package/dist/esm/icons/ecommerce.js +1 -63
  24. package/dist/esm/icons/files.js +38 -88
  25. package/dist/esm/icons/fintech.js +4 -3
  26. package/dist/esm/icons/food.js +119 -66
  27. package/dist/esm/icons/health.js +56 -71
  28. package/dist/esm/icons/index.js +18 -7
  29. package/dist/esm/icons/omniverk.js +4 -4
  30. package/dist/esm/icons/realestate.js +100 -96
  31. package/dist/esm/icons/science.js +75 -37
  32. package/dist/esm/icons/smarthome.js +56 -65
  33. package/dist/esm/icons/ui.js +45 -30
  34. package/dist/esm/index.js +18 -7
  35. package/dist/types/iconParts.d.ts +9 -0
  36. package/dist/types/icons/business.d.ts +2 -0
  37. package/dist/types/icons/devtech.d.ts +22 -0
  38. package/dist/types/icons/ecommerce.d.ts +0 -1
  39. package/dist/types/icons/food.d.ts +4 -0
  40. package/dist/types/icons/index.d.ts +7 -7
  41. package/dist/types/icons/realestate.d.ts +2 -0
  42. package/dist/types/icons/smarthome.d.ts +1 -0
  43. package/dist/types/icons/ui.d.ts +2 -0
  44. package/package.json +2 -2
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const createIcon = require("../createIcon.js");
5
- const iconParts = require("../iconParts.js");
6
5
  const NtdCartAdd = /* @__PURE__ */ createIcon.createIcon({
7
6
  displayName: "NtdCartAdd",
8
7
  paths: {
@@ -248,66 +247,6 @@ const NtdCheckout = /* @__PURE__ */ createIcon.createIcon({
248
247
  ] })
249
248
  }
250
249
  });
251
- const NtdWishlist = /* @__PURE__ */ createIcon.createIcon({
252
- displayName: "NtdWishlist",
253
- perfectStackX: 12,
254
- perfectStackY: 11.5,
255
- perfectStackSize: 0.45,
256
- paths: {
257
- solid: ({ primaryColor }) => /* @__PURE__ */ jsxRuntime.jsx(
258
- "path",
259
- {
260
- d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z",
261
- fill: primaryColor
262
- }
263
- ),
264
- outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsx(
265
- "path",
266
- {
267
- d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z",
268
- stroke: primaryColor,
269
- strokeWidth,
270
- fill: "none"
271
- }
272
- ),
273
- duotone: iconParts.swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
274
- /* @__PURE__ */ jsxRuntime.jsx(
275
- "path",
276
- {
277
- d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z",
278
- fill: secondaryColor,
279
- opacity: secondaryOpacity
280
- }
281
- ),
282
- /* @__PURE__ */ jsxRuntime.jsx(
283
- "path",
284
- {
285
- d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z",
286
- stroke: primaryColor,
287
- strokeWidth,
288
- fill: "none"
289
- }
290
- )
291
- ] })),
292
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
293
- /* @__PURE__ */ jsxRuntime.jsx(
294
- "path",
295
- {
296
- d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z",
297
- fill: primaryColor
298
- }
299
- ),
300
- /* @__PURE__ */ jsxRuntime.jsx(
301
- "path",
302
- {
303
- d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z",
304
- fill: "white",
305
- opacity: "0.1"
306
- }
307
- )
308
- ] })
309
- }
310
- });
311
250
  const NtdCompare = /* @__PURE__ */ createIcon.createIcon({
312
251
  displayName: "NtdCompare",
313
252
  paths: {
@@ -843,4 +782,3 @@ exports.NtdRefund = NtdRefund;
843
782
  exports.NtdReturn = NtdReturn;
844
783
  exports.NtdShipping = NtdShipping;
845
784
  exports.NtdStorefront = NtdStorefront;
846
- exports.NtdWishlist = NtdWishlist;
@@ -635,29 +635,37 @@ const NtdPackage = /* @__PURE__ */ createIcon.createIcon({
635
635
  ] })
636
636
  }
637
637
  });
638
- const LAYERS_TOP = "M12 3.9L21.5 8.7L12 13.5L2.5 8.7Z";
639
- const LAYERS_UNDER = "M2.5 9.8L12 14.6L21.5 9.8V12L12 16.8L2.5 12ZM2.5 13.1L12 17.9L21.5 13.1V15.3L12 20.1L2.5 15.3Z";
640
- function layers(top, under, round = false) {
638
+ const LAYERS_TOP = "M12 2.8L21.5 7.6V9.8L12 14.6L2.5 9.8V7.6Z";
639
+ const LAYERS_CREASE = "M2.5 7.6L12 12.4L21.5 7.6";
640
+ const LAYERS_UNDER = "M2.5 10.9L12 15.7L21.5 10.9V13.1L12 17.9L2.5 13.1ZM2.5 14.2L12 19L21.5 14.2V16.4L12 21.2L2.5 16.4Z";
641
+ function layers(top, under, crease, width, uid, round = false) {
641
642
  const rounded = round ? (
642
643
  // round joins, thin enough to keep the 1.1 gaps open
643
644
  { stroke: void 0, strokeWidth: 0.4, strokeLinejoin: "round" }
644
645
  ) : void 0;
645
646
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
646
647
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: LAYERS_UNDER, fill: under, ...rounded && { ...rounded, stroke: under } }),
647
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: LAYERS_TOP, fill: top, ...rounded && { ...rounded, stroke: top } })
648
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: LAYERS_TOP, fill: top, ...rounded && { ...rounded, stroke: top } }),
649
+ iconParts.within(
650
+ uid,
651
+ "slab",
652
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: LAYERS_TOP }),
653
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: LAYERS_CREASE, stroke: crease, strokeWidth: width, fill: "none" })
654
+ )
648
655
  ] });
649
656
  }
650
657
  const NtdLayers = /* @__PURE__ */ createIcon.createIcon({
651
658
  displayName: "NtdLayers",
652
659
  paths: {
653
- solid: ({ primaryColor }) => layers(primaryColor, primaryColor),
654
- rounded: ({ primaryColor }) => layers(primaryColor, primaryColor, true),
660
+ solid: ({ primaryColor, accentColor, strokeWidth, uid }) => layers(primaryColor, primaryColor, accentColor, strokeWidth, uid),
661
+ rounded: ({ primaryColor, accentColor, strokeWidth, uid }) => layers(primaryColor, primaryColor, accentColor, strokeWidth, uid, true),
655
662
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, strokeLinejoin: "miter", fill: "none", children: [
656
663
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: LAYERS_TOP }),
664
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: LAYERS_CREASE }),
657
665
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: LAYERS_UNDER })
658
666
  ] }),
659
- duotone: ({ primaryColor, secondaryColor }) => layers(primaryColor, secondaryColor),
660
- vivid: ({ primaryColor, secondaryColor }) => layers(primaryColor, secondaryColor)
667
+ duotone: ({ primaryColor, secondaryColor, accentColor, strokeWidth, uid }) => layers(primaryColor, secondaryColor, accentColor, strokeWidth, uid),
668
+ vivid: ({ primaryColor, secondaryColor, accentColor, strokeWidth, uid }) => layers(primaryColor, secondaryColor, accentColor, strokeWidth, uid)
661
669
  }
662
670
  });
663
671
  const NtdGrid = /* @__PURE__ */ createIcon.createIcon({
@@ -1521,87 +1529,28 @@ const NtdActivity = /* @__PURE__ */ createIcon.createIcon({
1521
1529
  vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M22 12h-4l-3 9L9 3l-3 9H2", stroke: primaryColor, strokeWidth: "2.2" }) })
1522
1530
  }
1523
1531
  });
1532
+ const TARGET_OUTER = 10;
1533
+ const TARGET_DOT = 1.4;
1534
+ function target(outer, middle, dot, width, dotFilled) {
1535
+ const m = (TARGET_OUTER + TARGET_DOT) / 2 - width / 4;
1536
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1537
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: TARGET_OUTER, stroke: outer, strokeWidth: width, fill: "none" }),
1538
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: m, stroke: middle, strokeWidth: width, fill: "none" }),
1539
+ dotFilled ? /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: TARGET_DOT, fill: dot }) : /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: TARGET_DOT, stroke: dot, strokeWidth: width, fill: "none" })
1540
+ ] });
1541
+ }
1524
1542
  const NtdTarget = /* @__PURE__ */ createIcon.createIcon({
1525
1543
  displayName: "NtdTarget",
1526
1544
  paths: {
1527
- solid: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1528
- /* @__PURE__ */ jsxRuntime.jsx(
1529
- "circle",
1530
- {
1531
- cx: "12",
1532
- cy: "12",
1533
- r: "10",
1534
- stroke: primaryColor,
1535
- strokeWidth,
1536
- fill: "none"
1537
- }
1538
- ),
1539
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "6", stroke: primaryColor, strokeWidth, fill: "none" }),
1540
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "1.4", fill: primaryColor })
1541
- ] }),
1542
- outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1543
- /* @__PURE__ */ jsxRuntime.jsx(
1544
- "circle",
1545
- {
1546
- cx: "12",
1547
- cy: "12",
1548
- r: "10",
1549
- stroke: primaryColor,
1550
- strokeWidth,
1551
- fill: "none"
1552
- }
1553
- ),
1554
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "6", stroke: primaryColor, strokeWidth, fill: "none" }),
1555
- /* @__PURE__ */ jsxRuntime.jsx(
1556
- "circle",
1557
- {
1558
- cx: "12",
1559
- cy: "12",
1560
- r: "1.4",
1561
- stroke: primaryColor,
1562
- strokeWidth,
1563
- fill: "none"
1564
- }
1565
- )
1566
- ] }),
1567
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1568
- /* @__PURE__ */ jsxRuntime.jsx(
1569
- "circle",
1570
- {
1571
- cx: "12",
1572
- cy: "12",
1573
- r: "10",
1574
- stroke: secondaryColor,
1575
- strokeWidth,
1576
- fill: "none",
1577
- opacity: secondaryOpacity + 0.2
1578
- }
1579
- ),
1580
- /* @__PURE__ */ jsxRuntime.jsx(
1581
- "circle",
1582
- {
1583
- cx: "12",
1584
- cy: "12",
1585
- r: "10",
1586
- stroke: primaryColor,
1587
- strokeWidth,
1588
- fill: "none"
1589
- }
1590
- ),
1591
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "6", stroke: primaryColor, strokeWidth, fill: "none" }),
1592
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "1.4", fill: primaryColor })
1593
- ] }),
1594
- vivid: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1595
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "1.4", fill: primaryColor }),
1596
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "1.4", fill: "white", opacity: "0.1" }),
1597
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10", stroke: secondaryColor, strokeWidth: "1.8", fill: "none" }),
1598
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "6", stroke: "#3B82F6", strokeWidth: "1.5", fill: "none" })
1599
- ] })
1545
+ solid: ({ primaryColor, strokeWidth }) => target(primaryColor, primaryColor, primaryColor, strokeWidth * 2, true),
1546
+ outline: ({ primaryColor, strokeWidth }) => target(primaryColor, primaryColor, primaryColor, strokeWidth, false),
1547
+ duotone: ({ primaryColor, secondaryColor, strokeWidth }) => target(primaryColor, secondaryColor, primaryColor, strokeWidth * 2, true),
1548
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => target(primaryColor, secondaryColor, secondaryColor, strokeWidth * 2, true)
1600
1549
  }
1601
1550
  });
1602
- const TRUCK_BODY = "M2 4.5h13a1 1 0 011 1V9h4l3 3v4.5H2a1 1 0 01-1-1v-10a1 1 0 011-1z";
1603
- const TRUCK_BODY_ROUNDED = "M4 4.5h9a3 3 0 013 3V9h4l3 3v2.5a2 2 0 01-2 2H4a3 3 0 01-3-3v-7a3 3 0 013-3z";
1604
- const TRUCK_BOX = "M2 4.5h13a1 1 0 011 1v11H2a1 1 0 01-1-1v-10a1 1 0 011-1z";
1551
+ const TRUCK_BODY = "M2 6h13a1 1 0 011 1V9h4l3 3v4.5H2a1 1 0 01-1-1V7a1 1 0 011-1z";
1552
+ const TRUCK_BODY_ROUNDED = "M4 6h9a3 3 0 013 3h4l3 3v2.5a2 2 0 01-2 2H4a3 3 0 01-3-3V9a3 3 0 013-3z";
1553
+ const TRUCK_BOX = "M2 6h13a1 1 0 011 1v9.5H2a1 1 0 01-1-1V7a1 1 0 011-1z";
1605
1554
  const TRUCK_CAB = "M15.5 9H20l3 3v4.5h-7.5z";
1606
1555
  const TRUCK_WHEELS = [5.5, 18.5];
1607
1556
  function truckWheels(fill, ring, opacity) {
@@ -1613,7 +1562,7 @@ function truckWheels(fill, ring, opacity) {
1613
1562
  r: "3",
1614
1563
  fill,
1615
1564
  stroke: ring,
1616
- strokeWidth: "1.5",
1565
+ strokeWidth: "0.75",
1617
1566
  opacity
1618
1567
  },
1619
1568
  cx
@@ -1631,7 +1580,7 @@ const NtdTruck = /* @__PURE__ */ createIcon.createIcon({
1631
1580
  solid: (props) => truckSolid(TRUCK_BODY, props),
1632
1581
  rounded: (props) => truckSolid(TRUCK_BODY_ROUNDED, props),
1633
1582
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1634
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M1 4.5h15v12H1z", stroke: primaryColor, strokeWidth, fill: "none" }),
1583
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M1 6h15v10.5H1z", stroke: primaryColor, strokeWidth, fill: "none" }),
1635
1584
  /* @__PURE__ */ jsxRuntime.jsx(
1636
1585
  "path",
1637
1586
  {
@@ -1664,9 +1613,10 @@ const NtdTruck = /* @__PURE__ */ createIcon.createIcon({
1664
1613
  }
1665
1614
  )
1666
1615
  ] }),
1667
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1616
+ // the cab in full secondary, as every duotone split
1617
+ duotone: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1668
1618
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRUCK_BOX, fill: primaryColor }),
1669
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRUCK_CAB, fill: secondaryColor, opacity: secondaryOpacity }),
1619
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: TRUCK_CAB, fill: secondaryColor }),
1670
1620
  truckWheels(primaryColor, secondaryColor)
1671
1621
  ] }),
1672
1622
  vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -257,6 +257,7 @@ const NtdBlockchain = /* @__PURE__ */ createIcon.createIcon({
257
257
  });
258
258
  const BITCOIN_B = "M7 12V5h6a3.5 3.5 0 010 7zm0 0v7h7a3.5 3.5 0 000-7z";
259
259
  const BITCOIN_BARS = "M9.5 2v3M13 2v3M9.5 19v3M13 19v3";
260
+ const BITCOIN_WIDTH = 2;
260
261
  function bitcoinSign(letter, bars, width, barsOpacity) {
261
262
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
262
263
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: BITCOIN_BARS, stroke: bars, strokeWidth: width, opacity: barsOpacity }),
@@ -266,10 +267,10 @@ function bitcoinSign(letter, bars, width, barsOpacity) {
266
267
  const NtdBitcoin = /* @__PURE__ */ createIcon.createIcon({
267
268
  displayName: "NtdBitcoin",
268
269
  paths: {
269
- solid: ({ primaryColor, strokeWidth }) => bitcoinSign(primaryColor, primaryColor, strokeWidth * 1.5),
270
+ solid: ({ primaryColor, strokeWidth }) => bitcoinSign(primaryColor, primaryColor, strokeWidth * BITCOIN_WIDTH),
270
271
  outline: ({ primaryColor, strokeWidth }) => bitcoinSign(primaryColor, primaryColor, strokeWidth),
271
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => bitcoinSign(primaryColor, secondaryColor, strokeWidth * 1.5, secondaryOpacity),
272
- vivid: ({ primaryColor, secondaryColor, strokeWidth }) => bitcoinSign(primaryColor, secondaryColor, strokeWidth * 1.5)
272
+ duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => bitcoinSign(primaryColor, secondaryColor, strokeWidth * BITCOIN_WIDTH, secondaryOpacity),
273
+ vivid: ({ primaryColor, secondaryColor, strokeWidth }) => bitcoinSign(primaryColor, secondaryColor, strokeWidth * BITCOIN_WIDTH)
273
274
  }
274
275
  });
275
276
  const NtdEthereum = /* @__PURE__ */ createIcon.createIcon({
@@ -372,14 +372,25 @@ const NtdTaco = /* @__PURE__ */ createIcon.createIcon({
372
372
  });
373
373
  const COFFEE_CUP = "M5 9H17L15.8 16.6A2 2 0 0 1 13.8 18.3H8.2A2 2 0 0 1 6.2 16.6Z";
374
374
  const COFFEE_CUP_SHARP = "M5 9H17L15.6 18.3H6.4Z";
375
- const COFFEE_HANDLE = "M16.7 10.6H18.6A2 2 0 0 1 20.6 12.6A2.8 2.8 0 0 1 17.8 15.4H16";
376
- const COFFEE_STEAM = "M9.4 7.4C8.6 6.6 8.6 5.8 9.4 5S10.2 3.4 9.4 2.6M12.9 7.4C12.1 6.6 12.1 5.8 12.9 5S13.7 3.4 12.9 2.6";
375
+ const COFFEE_HANDLE = "M16.7 10.8H18.2A1.6 1.6 0 0 1 19.8 12.4A2.2 2.2 0 0 1 17.6 14.6H16.1";
376
+ const COFFEE_SAUCER = { x: 4.8, y: 19.5, width: 12.4, height: 1.4, rx: 0.7 };
377
+ const COFFEE_WISP = "c-.7-.64-.7-1.28 0-1.92s.7-1.28 0-1.92";
378
+ const COFFEE_STEAM = `M7.8 7.4${COFFEE_WISP}M11 7.4${COFFEE_WISP}M14.2 7.4${COFFEE_WISP}`;
379
+ const COFFEE_STEAM_WIDTH = 0.7;
377
380
  function coffee(p, width, cupPath = COFFEE_CUP) {
378
381
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
379
382
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: COFFEE_HANDLE, stroke: p.cup, strokeWidth: width, fill: "none" }),
380
383
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: cupPath, fill: p.cup }),
381
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3.5", y: "19.4", width: "15", height: "1.6", rx: "0.8", fill: p.saucer }),
382
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: COFFEE_STEAM, stroke: p.steam, strokeWidth: width, fill: "none" })
384
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...COFFEE_SAUCER, fill: p.saucer }),
385
+ /* @__PURE__ */ jsxRuntime.jsx(
386
+ "path",
387
+ {
388
+ d: COFFEE_STEAM,
389
+ stroke: p.steam,
390
+ strokeWidth: width * COFFEE_STEAM_WIDTH,
391
+ fill: "none"
392
+ }
393
+ )
383
394
  ] });
384
395
  }
385
396
  const NtdCoffee = /* @__PURE__ */ createIcon.createIcon({
@@ -397,8 +408,8 @@ const NtdCoffee = /* @__PURE__ */ createIcon.createIcon({
397
408
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", children: [
398
409
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: COFFEE_HANDLE }),
399
410
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: COFFEE_CUP }),
400
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3.5", y: "19.4", width: "15", height: "1.6", rx: "0.8" }),
401
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: COFFEE_STEAM })
411
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...COFFEE_SAUCER }),
412
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: COFFEE_STEAM, strokeWidth: strokeWidth * COFFEE_STEAM_WIDTH })
402
413
  ] }),
403
414
  duotone: ({ primaryColor, secondaryColor, strokeWidth }) => coffee({ cup: primaryColor, saucer: secondaryColor, steam: secondaryColor }, strokeWidth * 2),
404
415
  vivid: ({ primaryColor, secondaryColor, strokeWidth }) => coffee({ cup: primaryColor, saucer: secondaryColor, steam: secondaryColor }, strokeWidth * 2)
@@ -735,70 +746,108 @@ const NtdChefHat = /* @__PURE__ */ createIcon.createIcon({
735
746
  ] })
736
747
  }
737
748
  });
749
+ const FORK_KNIFE_SCALE = 1.1;
750
+ const FORK_KNIFE_FRAME = `translate(12 12) scale(${FORK_KNIFE_SCALE}) translate(-12 -12)`;
751
+ const FORK_KNIFE_FORK_AT = "translate(6.14 0)";
752
+ const FORK_KNIFE_KNIFE_AT = "translate(-6.05 0)";
753
+ function forkKnifeFilled(fork, knife) {
754
+ return /* @__PURE__ */ jsxRuntime.jsxs("g", { transform: FORK_KNIFE_FRAME, children: [
755
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: iconParts.CUTLERY_FORK, transform: FORK_KNIFE_FORK_AT, fill: fork }),
756
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: iconParts.CUTLERY_KNIFE, transform: FORK_KNIFE_KNIFE_AT, fill: knife })
757
+ ] });
758
+ }
738
759
  const NtdForkKnife = /* @__PURE__ */ createIcon.createIcon({
739
760
  displayName: "NtdForkKnife",
740
761
  paths: {
741
- solid: ({ primaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
742
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 2v8c0 1.5 1 3 3 3v9h2v-9c2 0 3-1.5 3-3V2H5z", fill: primaryColor }),
743
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 2v5M9 2v5", stroke: "white", strokeWidth: "1.5" }),
744
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M17 2v7c-2 0-3 1-3 2l1 1v10h2V12l1-1c0-1-1-2-3-2V2h2z", fill: primaryColor })
745
- ] }),
762
+ solid: ({ primaryColor }) => forkKnifeFilled(primaryColor, primaryColor),
763
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(
764
+ "g",
765
+ {
766
+ transform: FORK_KNIFE_FRAME,
767
+ stroke: primaryColor,
768
+ strokeWidth: strokeWidth / FORK_KNIFE_SCALE,
769
+ fill: "none",
770
+ children: [
771
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: iconParts.CUTLERY_FORK_LINES, transform: FORK_KNIFE_FORK_AT }),
772
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: iconParts.CUTLERY_KNIFE, transform: FORK_KNIFE_KNIFE_AT, strokeLinejoin: "miter" })
773
+ ]
774
+ }
775
+ ),
776
+ duotone: ({ primaryColor, secondaryColor }) => forkKnifeFilled(secondaryColor, primaryColor),
777
+ vivid: ({ primaryColor, secondaryColor }) => forkKnifeFilled(secondaryColor, primaryColor)
778
+ }
779
+ });
780
+ const KNIFE_TURN = "rotate(45 12 12)";
781
+ const KNIFE_BLADE = "M10.4 14.2V0.8C13 2.2 15.8 5.6 15.8 10.2V14.2Z";
782
+ const KNIFE_BOLSTER = { x: 10.2, y: 14.2, width: 4.2, height: 1.3 };
783
+ const KNIFE_HANDLE = "M10.6 15.5H14.2V22A1.2 1.2 0 0 1 13 23.2H11.8A1.2 1.2 0 0 1 10.6 22Z";
784
+ const KNIFE_RIVETS = [17.6, 20.8];
785
+ function knifeFilled(blade, handle, accent, gap) {
786
+ return /* @__PURE__ */ jsxRuntime.jsxs("g", { transform: KNIFE_TURN, children: [
787
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: KNIFE_BLADE, fill: blade }),
788
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...KNIFE_BOLSTER, fill: handle }),
789
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: KNIFE_HANDLE, fill: handle }),
790
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M10.2 15.5H14.4", stroke: accent, strokeWidth: gap }),
791
+ KNIFE_RIVETS.map((cy) => /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12.4", cy, r: "0.55", fill: accent }, cy))
792
+ ] });
793
+ }
794
+ const NtdKnife = /* @__PURE__ */ createIcon.createIcon({
795
+ displayName: "NtdKnife",
796
+ paths: {
797
+ solid: ({ primaryColor, accentColor, strokeWidth }) => knifeFilled(primaryColor, primaryColor, accentColor, strokeWidth * 0.6),
798
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(
799
+ "g",
800
+ {
801
+ transform: KNIFE_TURN,
802
+ stroke: primaryColor,
803
+ strokeWidth,
804
+ strokeLinejoin: "miter",
805
+ fill: "none",
806
+ children: [
807
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: KNIFE_BLADE }),
808
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...KNIFE_BOLSTER }),
809
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: KNIFE_HANDLE }),
810
+ KNIFE_RIVETS.map((cy) => /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12.4", cy, r: "0.55", fill: primaryColor, stroke: "none" }, cy))
811
+ ]
812
+ }
813
+ ),
814
+ duotone: ({ primaryColor, secondaryColor, accentColor, strokeWidth }) => knifeFilled(primaryColor, secondaryColor, accentColor, strokeWidth * 0.6),
815
+ vivid: ({ primaryColor, secondaryColor, accentColor, strokeWidth }) => knifeFilled(primaryColor, secondaryColor, accentColor, strokeWidth * 0.6)
816
+ }
817
+ });
818
+ const PAN_BODY = "M2 9.5H16.5L15.3 14.1Q15 15.3 13.8 15.3H4.7Q3.5 15.3 3.2 14.1Z";
819
+ const PAN_LIP = { x: 1.7, y: 8.6, width: 15.1, height: 1.3 };
820
+ const PAN_HANDLE = "M16.5 9.2H22.4A1 1 0 0 1 22.4 11.2H16.5Z";
821
+ const PAN_HANDLE_LINE = "M16.8 9.2H22.4A1 1 0 0 1 22.4 11.2H16.06";
822
+ const PAN_HOLE = { cx: 21.9, cy: 10.2, r: 0.5 };
823
+ function panFilled({ primaryColor, accentColor, strokeWidth, uid }, handle) {
824
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
825
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: PAN_HANDLE, fill: handle }),
826
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: PAN_BODY, fill: primaryColor }),
827
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...PAN_LIP, fill: primaryColor }),
828
+ iconParts.within(
829
+ uid,
830
+ "pan",
831
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: PAN_BODY }),
832
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M1 9.9H18", stroke: accentColor, strokeWidth: strokeWidth * 0.6 })
833
+ ),
834
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { ...PAN_HOLE, fill: accentColor })
835
+ ] });
836
+ }
837
+ const NtdCookingPan = /* @__PURE__ */ createIcon.createIcon({
838
+ displayName: "NtdCookingPan",
839
+ paths: {
840
+ solid: (props) => panFilled(props, props.primaryColor),
746
841
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
747
- /* @__PURE__ */ jsxRuntime.jsx(
748
- "path",
749
- {
750
- d: "M5 2v8c0 1.5 1 3 3 3v9h2v-9c2 0 3-1.5 3-3V2",
751
- stroke: primaryColor,
752
- strokeWidth,
753
- fill: "none"
754
- }
755
- ),
756
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 2v5M9 2v5", stroke: primaryColor, strokeWidth }),
757
- /* @__PURE__ */ jsxRuntime.jsx(
758
- "path",
759
- {
760
- d: "M17 2v7c-2 0-3 1-3 2l1 1v10h2V12l1-1c0-1-1-2-3-2V2",
761
- stroke: primaryColor,
762
- strokeWidth,
763
- fill: "none"
764
- }
765
- )
842
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, strokeLinejoin: "miter", fill: "none", children: [
843
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: PAN_BODY }),
844
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...PAN_LIP }),
845
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: PAN_HANDLE_LINE })
846
+ ] }),
847
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { ...PAN_HOLE, fill: primaryColor })
766
848
  ] }),
767
- duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
768
- /* @__PURE__ */ jsxRuntime.jsx(
769
- "path",
770
- {
771
- d: "M5 2v8c0 1.5 1 3 3 3v9h2v-9c2 0 3-1.5 3-3V2H5z",
772
- fill: secondaryColor,
773
- opacity: secondaryOpacity
774
- }
775
- ),
776
- /* @__PURE__ */ jsxRuntime.jsx(
777
- "path",
778
- {
779
- d: "M5 2v8c0 1.5 1 3 3 3v9h2v-9c2 0 3-1.5 3-3V2",
780
- stroke: primaryColor,
781
- strokeWidth,
782
- fill: "none"
783
- }
784
- ),
785
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 2v5M9 2v5", stroke: primaryColor, strokeWidth }),
786
- /* @__PURE__ */ jsxRuntime.jsx(
787
- "path",
788
- {
789
- d: "M17 2v7c-2 0-3 1-3 2l1 1v10h2V12l1-1c0-1-1-2-3-2V2",
790
- stroke: primaryColor,
791
- strokeWidth,
792
- fill: "none"
793
- }
794
- )
795
- ] }),
796
- vivid: ({ primaryColor, secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
797
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 2v8c0 1.5 1 3 3 3v9h2v-9c2 0 3-1.5 3-3V2H5z", fill: primaryColor }),
798
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 2v8c0 1.5 1 3 3 3v9h2v-9c2 0 3-1.5 3-3V2H5z", fill: "white", opacity: "0.08" }),
799
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M17 2v7c-2 0-3 1-3 2l1 1v10h2V12l1-1c0-1-1-2-3-2V2h2z", fill: secondaryColor }),
800
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 2v5M9 2v5", stroke: "white", strokeWidth: "1" })
801
- ] })
849
+ duotone: (props) => panFilled(props, props.secondaryColor),
850
+ vivid: (props) => panFilled(props, props.secondaryColor)
802
851
  }
803
852
  });
804
853
  const NtdPlate = /* @__PURE__ */ createIcon.createIcon({
@@ -1052,6 +1101,8 @@ const foodIcons = {
1052
1101
  NtdSoda,
1053
1102
  NtdChefHat,
1054
1103
  NtdForkKnife,
1104
+ NtdKnife,
1105
+ NtdCookingPan,
1055
1106
  NtdPlate,
1056
1107
  NtdRecipe,
1057
1108
  NtdRestaurant
@@ -1061,8 +1112,10 @@ exports.NtdBurger = NtdBurger;
1061
1112
  exports.NtdChefHat = NtdChefHat;
1062
1113
  exports.NtdCocktail = NtdCocktail;
1063
1114
  exports.NtdCoffee = NtdCoffee;
1115
+ exports.NtdCookingPan = NtdCookingPan;
1064
1116
  exports.NtdForkKnife = NtdForkKnife;
1065
1117
  exports.NtdHotdog = NtdHotdog;
1118
+ exports.NtdKnife = NtdKnife;
1066
1119
  exports.NtdPlate = NtdPlate;
1067
1120
  exports.NtdRecipe = NtdRecipe;
1068
1121
  exports.NtdRestaurant = NtdRestaurant;