@nice2dev/icons 1.4.12 → 1.4.14

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.
@@ -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: 9.8, r: 2.6 },
143
+ { cx: 19, cy: 9.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 21.5v-4.6a3.4 3.4 0 013.4-3.4h1.7a3.4 3.4 0 013.4 3.4v4.6",
147
+ "M14.75 21.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 17)", "rotate(15 19.15 17)"];
150
+ const USERS_BACK_FLOOR = /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "24", height: "20.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,40 +99,46 @@ 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, backSharp) {
105
+ return createIcon({
106
+ displayName,
107
+ paths: walletPaths(back, backLine, backSharp)
108
+ });
109
+ }
110
+ function walletPaths(WALLET_BACK, WALLET_BACK_LINE, WALLET_BACK_SHARP) {
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
- solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }) => /* @__PURE__ */ jsxs(Fragment, { children: [
112
- /* @__PURE__ */ jsx("path", { d: WALLET_BACK, fill: primaryColor }),
113
- within(
114
- uid,
115
- "back",
116
- /* @__PURE__ */ jsx("path", { d: WALLET_BACK }),
117
- /* @__PURE__ */ jsx(
118
- "rect",
119
- {
120
- ...WALLET_BODY,
121
- stroke: accentColor,
122
- strokeWidth: strokeWidth * 0.9,
123
- fill: "none"
124
- }
125
- )
126
- ),
127
- /* @__PURE__ */ jsx("rect", { ...WALLET_BODY, fill: primaryColor }),
128
- within(
129
- uid,
130
- "pocket",
131
- /* @__PURE__ */ jsx("rect", { ...WALLET_BODY }),
132
- /* @__PURE__ */ jsx("path", { d: WALLET_POCKET, fill: accentColor, opacity: accentOpacity })
133
- ),
134
- /* @__PURE__ */ jsx("circle", { cx: "17.6", cy: "13", r: "1.1", fill: primaryColor })
135
- ] }),
114
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth, uid, variant }) => {
115
+ const back = variant === "sharp" ? WALLET_BACK_SHARP : WALLET_BACK;
116
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
117
+ /* @__PURE__ */ jsx("path", { d: back, fill: primaryColor }),
118
+ within(
119
+ uid,
120
+ "back",
121
+ /* @__PURE__ */ jsx("path", { d: back }),
122
+ /* @__PURE__ */ jsx(
123
+ "rect",
124
+ {
125
+ ...WALLET_BODY,
126
+ stroke: accentColor,
127
+ strokeWidth: strokeWidth * 0.9,
128
+ fill: "none"
129
+ }
130
+ )
131
+ ),
132
+ /* @__PURE__ */ jsx("rect", { ...WALLET_BODY, fill: primaryColor }),
133
+ within(
134
+ uid,
135
+ "pocket",
136
+ /* @__PURE__ */ jsx("rect", { ...WALLET_BODY }),
137
+ /* @__PURE__ */ jsx("path", { d: WALLET_POCKET, fill: accentColor, opacity: accentOpacity })
138
+ ),
139
+ /* @__PURE__ */ jsx("circle", { cx: "17.6", cy: "13", r: "1.1", fill: primaryColor })
140
+ ] });
141
+ },
136
142
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxs(Fragment, { children: [
137
143
  /* @__PURE__ */ jsx(
138
144
  "path",
@@ -171,8 +177,20 @@ const NtdWallet = /* @__PURE__ */ createIcon({
171
177
  ),
172
178
  /* @__PURE__ */ jsx("circle", { cx: "17.6", cy: "13", r: "1.1", fill: secondaryColor })
173
179
  ] })
174
- }
175
- });
180
+ };
181
+ }
182
+ const NtdWallet = /* @__PURE__ */ walletIcon(
183
+ "NtdWallet",
184
+ "M4.5 6.5V5.4a0.8 0.8 0 0 1 0.8-0.8h13.4a0.8 0.8 0 0 1 0.8 0.8V6.5Z",
185
+ "M4.5 6.5V5.4a0.8 0.8 0 0 1 0.8-0.8h13.4a0.8 0.8 0 0 1 0.8 0.8V6.5",
186
+ "M4.5 6.5V4.6h15V6.5Z"
187
+ );
188
+ const NtdWalletOpen = /* @__PURE__ */ walletIcon(
189
+ "NtdWalletOpen",
190
+ "M6 6.5V5.9L19 2.6a1 1 0 0 1 1.1 1V6.5Z",
191
+ "M6 6.5V5.9L19 2.6a1 1 0 0 1 1.1 1V6.5",
192
+ "M6 6.5V5.9L20.1 2.32V6.5Z"
193
+ );
176
194
  const RECEIPT = "M4 2v20l3-2 3 2 3-2 3 2 3-2 3 2V2H4z";
177
195
  const RECEIPT_TEXT = "M7 7.5h6.5M16.4 7.5h2M7 11.5h6.5M16.4 11.5h2M14.4 15.5h4";
178
196
  const NtdReceipt = /* @__PURE__ */ createIcon({
@@ -376,7 +394,7 @@ const NtdInvoice = /* @__PURE__ */ paperIcon(
376
394
  );
377
395
  const NtdInvoiceDoc = NtdInvoice;
378
396
  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 };
397
+ const STORE_CORNICE = { x: 1.5, y: 3.5, width: 21, height: 1.9 };
380
398
  const STORE_CUT = "M2.5 5.4H21.5";
381
399
  const STORE_SIGN = { x: 3.8, y: 6.7, width: 16.4, height: 3.9, rx: 0.5 };
382
400
  const STORE_GLASS = "M4.2 11.9h4.8v6.8H4.2zM15 11.9h4.8v6.8H15zM10.2 12.2h3.6V21h-3.6z";
@@ -1224,5 +1242,6 @@ export {
1224
1242
  NtdStore,
1225
1243
  NtdTrendDown,
1226
1244
  NtdTrendUp,
1227
- NtdWallet
1245
+ NtdWallet,
1246
+ NtdWalletOpen
1228
1247
  };
@@ -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,36 @@ 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
+ const AWARD_RIBBON_INSIDE = "M8.93 13.04L7.76 21.85L12 19.3L16.24 21.85L15.07 13.04Z";
959
+ const AWARD_RIBBON_SPLIT = "M12 13.9V19.3";
960
+ function awardTwoTone({ primaryColor, secondaryColor, strokeWidth }, inside, insideOpacity, joined) {
961
+ const ribbonInside = /* @__PURE__ */ jsx("path", { d: AWARD_RIBBON_INSIDE, fill: inside, opacity: insideOpacity });
962
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
963
+ /* @__PURE__ */ jsx(
964
+ "path",
965
+ {
966
+ d: AWARD_RIBBON,
967
+ fill: secondaryColor,
968
+ stroke: secondaryColor,
969
+ strokeWidth
970
+ }
971
+ ),
972
+ !joined && ribbonInside,
973
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "8", r: "7", fill: secondaryColor }),
974
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "8", r: "5.9", fill: primaryColor }),
975
+ joined && ribbonInside,
976
+ /* @__PURE__ */ jsx(
977
+ "path",
978
+ {
979
+ d: AWARD_RIBBON_SPLIT,
980
+ stroke: secondaryColor,
981
+ strokeWidth: strokeWidth * 0.6,
982
+ strokeLinecap: "butt"
983
+ }
984
+ )
985
+ ] });
986
+ }
958
987
  function awardInsets(color, opacity, width) {
959
988
  return /* @__PURE__ */ jsxs("g", { stroke: color, strokeWidth: width, opacity, fill: "none", children: [
960
989
  /* @__PURE__ */ jsx("circle", { cx: "12", cy: "8", r: "5.9" }),
@@ -988,8 +1017,8 @@ const NtdAward = /* @__PURE__ */ createIcon({
988
1017
  ),
989
1018
  awardInsets(primaryColor, 1, strokeWidth * 0.6)
990
1019
  ] }),
991
- duotone: (p) => awardFilled(p, p.secondaryColor),
992
- vivid: (p) => awardFilled(p, p.secondaryColor)
1020
+ duotone: (p) => awardTwoTone(p, p.primaryColor, 1, true),
1021
+ vivid: (p) => awardTwoTone(p, p.accentColor, p.accentOpacity, false)
993
1022
  }
994
1023
  });
995
1024
  const CART_FRAME = "M2 3.5h2.3l3.3 12.9H19.3";
@@ -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,