@wise/art 2.17.0-beta.1 → 2.18.0

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 (101) hide show
  1. package/dist/{CheckMark-6fa127ea.esm.js → CheckMark-Bt-NLK3w.esm.js} +2 -2
  2. package/dist/{CheckMark-6fa127ea.esm.js.map → CheckMark-Bt-NLK3w.esm.js.map} +1 -1
  3. package/dist/{CheckMark-7ddfffc7.js → CheckMark-CFtSfMTm.js} +2 -2
  4. package/dist/{CheckMark-7ddfffc7.js.map → CheckMark-CFtSfMTm.js.map} +1 -1
  5. package/dist/{Confetti-231af510.esm.js → Confetti-BPl4pWAB.esm.js} +2 -2
  6. package/dist/{Confetti-231af510.esm.js.map → Confetti-BPl4pWAB.esm.js.map} +1 -1
  7. package/dist/{Confetti-d9776df0.js → Confetti-CssQQ6EV.js} +2 -2
  8. package/dist/{Confetti-d9776df0.js.map → Confetti-CssQQ6EV.js.map} +1 -1
  9. package/dist/{Flower-62fa1025.js → Flower-Bqnz6_B2.js} +2 -2
  10. package/dist/{Flower-62fa1025.js.map → Flower-Bqnz6_B2.js.map} +1 -1
  11. package/dist/{Flower-5f072c9e.esm.js → Flower-Ctr72OZQ.esm.js} +2 -2
  12. package/dist/{Flower-5f072c9e.esm.js.map → Flower-Ctr72OZQ.esm.js.map} +1 -1
  13. package/dist/{Globe-c146f5b7.js → Globe-6gAGpYQj.js} +2 -2
  14. package/dist/{Globe-c146f5b7.js.map → Globe-6gAGpYQj.js.map} +1 -1
  15. package/dist/{Globe-337cab45.esm.js → Globe-B7tmpH86.esm.js} +2 -2
  16. package/dist/{Globe-337cab45.esm.js.map → Globe-B7tmpH86.esm.js.map} +1 -1
  17. package/dist/{Graph-f478eff5.js → Graph-BlxPEJjp.js} +2 -2
  18. package/dist/{Graph-f478eff5.js.map → Graph-BlxPEJjp.js.map} +1 -1
  19. package/dist/{Graph-78371111.esm.js → Graph-D80FxVsy.esm.js} +2 -2
  20. package/dist/{Graph-78371111.esm.js.map → Graph-D80FxVsy.esm.js.map} +1 -1
  21. package/dist/Illustration.css +1 -1
  22. package/dist/{Jars-29235e45.esm.js → Jars-CDvdI2wl.esm.js} +2 -2
  23. package/dist/{Jars-29235e45.esm.js.map → Jars-CDvdI2wl.esm.js.map} +1 -1
  24. package/dist/{Jars-f9fd754f.js → Jars-GZb9ZEAl.js} +2 -2
  25. package/dist/{Jars-f9fd754f.js.map → Jars-GZb9ZEAl.js.map} +1 -1
  26. package/dist/{Lock-5e3d1013.esm.js → Lock-B1sQObjd.esm.js} +2 -2
  27. package/dist/{Lock-5e3d1013.esm.js.map → Lock-B1sQObjd.esm.js.map} +1 -1
  28. package/dist/{Lock-0b049d2a.js → Lock-C7PL9U0j.js} +2 -2
  29. package/dist/{Lock-0b049d2a.js.map → Lock-C7PL9U0j.js.map} +1 -1
  30. package/dist/{MagnifyingGlass-24cec1d1.esm.js → MagnifyingGlass-CQm72AMb.esm.js} +2 -2
  31. package/dist/{MagnifyingGlass-24cec1d1.esm.js.map → MagnifyingGlass-CQm72AMb.esm.js.map} +1 -1
  32. package/dist/{MagnifyingGlass-4498093d.js → MagnifyingGlass-CTezVIm1.js} +2 -2
  33. package/dist/{MagnifyingGlass-4498093d.js.map → MagnifyingGlass-CTezVIm1.js.map} +1 -1
  34. package/dist/{Marble-4ec2f621.js → Marble-5clyOjC2.js} +2 -2
  35. package/dist/{Marble-4ec2f621.js.map → Marble-5clyOjC2.js.map} +1 -1
  36. package/dist/{Marble-bfed2da3.esm.js → Marble-CUqa7GDz.esm.js} +2 -2
  37. package/dist/{Marble-bfed2da3.esm.js.map → Marble-CUqa7GDz.esm.js.map} +1 -1
  38. package/dist/{MarbleCard-c15f8805.esm.js → MarbleCard-BqYoPldT.esm.js} +2 -2
  39. package/dist/{MarbleCard-c15f8805.esm.js.map → MarbleCard-BqYoPldT.esm.js.map} +1 -1
  40. package/dist/{MarbleCard-ba03de1b.js → MarbleCard-XiiHB0J8.js} +2 -2
  41. package/dist/{MarbleCard-ba03de1b.js.map → MarbleCard-XiiHB0J8.js.map} +1 -1
  42. package/dist/{MultiCurrency-f7d94034.esm.js → MultiCurrency-BhWhXdbo.esm.js} +2 -2
  43. package/dist/{MultiCurrency-f7d94034.esm.js.map → MultiCurrency-BhWhXdbo.esm.js.map} +1 -1
  44. package/dist/{MultiCurrency-87004aba.js → MultiCurrency-ClU7TXLu.js} +2 -2
  45. package/dist/{MultiCurrency-87004aba.js.map → MultiCurrency-ClU7TXLu.js.map} +1 -1
  46. package/dist/{Plane-ad9bf87d.js → Plane-BY-cLvj7.js} +2 -2
  47. package/dist/{Plane-ad9bf87d.js.map → Plane-BY-cLvj7.js.map} +1 -1
  48. package/dist/{Plane-4f1e92e4.esm.js → Plane-BkILCuN_.esm.js} +2 -2
  49. package/dist/{Plane-4f1e92e4.esm.js.map → Plane-BkILCuN_.esm.js.map} +1 -1
  50. package/dist/{Scene-48058bb3.js → Scene-CVWMssg7.js} +2 -2
  51. package/dist/{Scene-48058bb3.js.map → Scene-CVWMssg7.js.map} +1 -1
  52. package/dist/{Scene-6f4fe049.esm.js → Scene-Cc-7GF5w.esm.js} +2 -2
  53. package/dist/{Scene-6f4fe049.esm.js.map → Scene-Cc-7GF5w.esm.js.map} +1 -1
  54. package/dist/flags/Flag.d.ts +0 -1
  55. package/dist/flags/Flag.d.ts.map +1 -1
  56. package/dist/illustrations/Illustration.d.ts +4 -5
  57. package/dist/illustrations/Illustration.d.ts.map +1 -1
  58. package/dist/illustrations/metadata.d.ts +68 -68
  59. package/dist/illustrations/metadata.d.ts.map +1 -1
  60. package/dist/illustrations3d/Illustration3D.d.ts +0 -1
  61. package/dist/illustrations3d/Illustration3D.d.ts.map +1 -1
  62. package/dist/illustrations3d/models/CheckMark.d.ts +0 -1
  63. package/dist/illustrations3d/models/CheckMark.d.ts.map +1 -1
  64. package/dist/illustrations3d/models/Confetti.d.ts +0 -1
  65. package/dist/illustrations3d/models/Confetti.d.ts.map +1 -1
  66. package/dist/illustrations3d/models/Flower.d.ts +0 -1
  67. package/dist/illustrations3d/models/Flower.d.ts.map +1 -1
  68. package/dist/illustrations3d/models/Globe.d.ts +0 -1
  69. package/dist/illustrations3d/models/Globe.d.ts.map +1 -1
  70. package/dist/illustrations3d/models/Graph.d.ts +0 -1
  71. package/dist/illustrations3d/models/Graph.d.ts.map +1 -1
  72. package/dist/illustrations3d/models/Jars.d.ts +0 -1
  73. package/dist/illustrations3d/models/Jars.d.ts.map +1 -1
  74. package/dist/illustrations3d/models/Lock.d.ts +0 -1
  75. package/dist/illustrations3d/models/Lock.d.ts.map +1 -1
  76. package/dist/illustrations3d/models/MagnifyingGlass.d.ts +0 -1
  77. package/dist/illustrations3d/models/MagnifyingGlass.d.ts.map +1 -1
  78. package/dist/illustrations3d/models/Marble.d.ts +0 -1
  79. package/dist/illustrations3d/models/Marble.d.ts.map +1 -1
  80. package/dist/illustrations3d/models/MarbleCard.d.ts +0 -1
  81. package/dist/illustrations3d/models/MarbleCard.d.ts.map +1 -1
  82. package/dist/illustrations3d/models/MultiCurrency.d.ts +0 -1
  83. package/dist/illustrations3d/models/MultiCurrency.d.ts.map +1 -1
  84. package/dist/illustrations3d/models/Plane.d.ts +0 -1
  85. package/dist/illustrations3d/models/Plane.d.ts.map +1 -1
  86. package/dist/{index-27312590.esm.js → index-8Fxev6OI.esm.js} +96 -104
  87. package/dist/index-8Fxev6OI.esm.js.map +1 -0
  88. package/dist/{index-fccd8965.js → index-CQNmYKQM.js} +96 -104
  89. package/dist/index-CQNmYKQM.js.map +1 -0
  90. package/dist/index.esm.js +1 -1
  91. package/dist/index.js +3 -3
  92. package/package.json +53 -51
  93. package/src/flags/Flag.css +1 -15
  94. package/src/flags/Flag.stories.tsx +1 -0
  95. package/src/flags/Flag.tsx +14 -20
  96. package/src/illustrations/Illustration.spec.tsx +1 -1
  97. package/src/illustrations/Illustration.stories.tsx +19 -11
  98. package/src/illustrations/metadata.ts +12 -150
  99. package/src/illustrations3d/Illustration3D.stories.tsx +17 -8
  100. package/dist/index-27312590.esm.js.map +0 -1
  101. package/dist/index-fccd8965.js.map +0 -1
@@ -17,24 +17,16 @@ const Flag = ({
17
17
  }, [code]);
18
18
  const detailed = intrinsicSize >= 150;
19
19
  const name = fallback !== 'unknown' ? `${code.toLowerCase()}${fallback == null && detailed ? '-detailed' : ''}` : unknownFlagName;
20
- return /*#__PURE__*/jsxRuntime.jsx("span", {
21
- className: clsx.clsx(`wds-flag wds-flag-${name}`, className)
22
- // @ts-expect-error CSS props allowed
23
- // eslint-disable-next-line react/forbid-dom-props
24
- ,
25
- style: {
26
- '--wds-flag-size': `${intrinsicSize}px`
27
- },
28
- children: /*#__PURE__*/jsxRuntime.jsx("img", {
29
- src: process.env.NODE_ENV === 'web-art-dev' ? `${name}.svg` : `https://wise.com/web-art/assets/flags/${name}.svg`,
30
- loading: loading,
31
- alt: "",
32
- width: intrinsicSize,
33
- height: intrinsicSize,
34
- onError: () => {
35
- setFallback(prev => prev == null && detailed ? 'simple' : 'unknown');
36
- }
37
- })
20
+ return /*#__PURE__*/jsxRuntime.jsx("img", {
21
+ className: clsx.clsx(`wds-flag wds-flag-${name}`, className),
22
+ src: process.env.NODE_ENV === 'web-art-dev' ? `${name}.svg` : `https://wise.com/web-art/assets/flags/${name}.svg`,
23
+ loading: loading,
24
+ alt: "",
25
+ width: intrinsicSize,
26
+ height: intrinsicSize,
27
+ onError: () => {
28
+ setFallback(prev => prev == null && detailed ? 'simple' : 'unknown');
29
+ }
38
30
  });
39
31
  };
40
32
 
@@ -100,83 +92,83 @@ function defineSrc$1(illustration, size, descriptor) {
100
92
  }
101
93
 
102
94
  /*
103
- *
104
- * DON'T MODIFY THIS FILE IT'S AUTO GENERATED
105
- * See: `scripts/generate-i10s-metadata.mjs`
106
- *
107
- */
95
+ *
96
+ * DON'T MODIFY THIS FILE IT'S AUTO GENERATED
97
+ * See: `scripts/generate-i10s-metadata.mjs`
98
+ *
99
+ */
108
100
  exports.Assets = void 0;
109
101
  (function (Assets) {
110
- Assets["BELL"] = "bell";
111
- Assets["BRIEFCASE"] = "briefcase";
112
- Assets["BUSINESS_CARD"] = "business-card";
113
- Assets["CALENDAR"] = "calendar";
114
- Assets["CHECK_MARK"] = "check-mark";
115
- Assets["CLOSED_WINDOW"] = "closed-window";
116
- Assets["COIN_PILE_DOWN"] = "coin-pile-down";
117
- Assets["COIN_PILE_UP"] = "coin-pile-up";
118
- Assets["CONFETTI"] = "confetti";
119
- Assets["CONSTRUCTION_FENCE"] = "construction-fence";
120
- Assets["CONVERT"] = "convert";
121
- Assets["COOKIE"] = "cookie";
122
- Assets["DIGITAL_CARD_2"] = "digital-card-2";
123
- Assets["DIGITAL_CARD"] = "digital-card";
124
- Assets["DOCUMENTS"] = "documents";
125
- Assets["DOOR"] = "door";
126
- Assets["ECO_CARD"] = "eco-card";
127
- Assets["ELECTRIC_PLUG"] = "electric-plug";
128
- Assets["EMAIL_SUCCESS"] = "email-success";
129
- Assets["EMAIL"] = "email";
130
- Assets["EXCLAMATION_MARK"] = "exclamation-mark";
131
- Assets["FLAG"] = "flag";
132
- Assets["FLOWER"] = "flower";
133
- Assets["GEAR"] = "gear";
134
- Assets["GLOBE"] = "globe";
135
- Assets["GRAPH"] = "graph";
136
- Assets["HEART_2"] = "heart-2";
137
- Assets["HEART_3"] = "heart-3";
138
- Assets["HEART_4"] = "heart-4";
139
- Assets["HEART_5"] = "heart-5";
140
- Assets["HEART"] = "heart";
141
- Assets["HOUSE"] = "house";
142
- Assets["ID_CARD"] = "id-card";
143
- Assets["INFINITE"] = "infinite";
144
- Assets["INTEREST"] = "interest";
145
- Assets["INVITE_LETTER"] = "invite-letter";
146
- Assets["JARS"] = "jars";
147
- Assets["KEY"] = "key";
148
- Assets["LIGHT_BULB"] = "light-bulb";
149
- Assets["LOCK_PLATFORM"] = "lock-platform";
150
- Assets["LOCK"] = "lock";
151
- Assets["MAGNIFYING_GLASS"] = "magnifying-glass";
152
- Assets["MAP"] = "map";
102
+ Assets["WALLET"] = "wallet";
103
+ Assets["TWO_INVITE_LETTERS_OPENED"] = "two-invite-letters-opened";
104
+ Assets["TOOL"] = "tool";
105
+ Assets["TARGET_PLATFORM"] = "target-platform";
106
+ Assets["STOPWATCH_PLATFORM"] = "stopwatch-platform";
107
+ Assets["SPEECH_BUBBLE"] = "speech-bubble";
108
+ Assets["SKIP_AUTHENTICATION"] = "skip-authentication";
109
+ Assets["SHOPPING_BAG"] = "shopping-bag";
110
+ Assets["SATELLITE_PLATFORM"] = "satellite-platform";
111
+ Assets["SAND_TIMER"] = "sand-timer";
112
+ Assets["REMINDER_LETTER"] = "reminder-letter";
113
+ Assets["RECEIVE"] = "receive";
114
+ Assets["QUESTION_MARK"] = "question-mark";
115
+ Assets["PUZZLE_PIECES"] = "puzzle-pieces";
116
+ Assets["PLANE_2"] = "plane-2";
117
+ Assets["PLANE"] = "plane";
118
+ Assets["PIE_CHART"] = "pie-chart";
119
+ Assets["PHONES"] = "phones";
120
+ Assets["PERSONAL_CARD"] = "personal-card";
121
+ Assets["PERCENTAGE"] = "percentage";
122
+ Assets["PALM_TREE"] = "palm-tree";
123
+ Assets["ONE_INVITE_LETTER_OPENED"] = "one-invite-letter-opened";
124
+ Assets["MULTI_CURRENCY"] = "multi-currency";
125
+ Assets["MEGAPHONE"] = "megaphone";
153
126
  Assets["MARBLE_CARD_BUSINESS"] = "marble-card-business";
154
127
  Assets["MARBLE_CARD"] = "marble-card";
155
128
  Assets["MARBLE"] = "marble";
156
- Assets["MEGAPHONE"] = "megaphone";
157
- Assets["MULTI_CURRENCY"] = "multi-currency";
158
- Assets["ONE_INVITE_LETTER_OPENED"] = "one-invite-letter-opened";
159
- Assets["PALM_TREE"] = "palm-tree";
160
- Assets["PERCENTAGE"] = "percentage";
161
- Assets["PERSONAL_CARD"] = "personal-card";
162
- Assets["PHONES"] = "phones";
163
- Assets["PIE_CHART"] = "pie-chart";
164
- Assets["PLANE_2"] = "plane-2";
165
- Assets["PLANE"] = "plane";
166
- Assets["PUZZLE_PIECES"] = "puzzle-pieces";
167
- Assets["QUESTION_MARK"] = "question-mark";
168
- Assets["RECEIVE"] = "receive";
169
- Assets["REMINDER_LETTER"] = "reminder-letter";
170
- Assets["SAND_TIMER"] = "sand-timer";
171
- Assets["SATELLITE_PLATFORM"] = "satellite-platform";
172
- Assets["SHOPPING_BAG"] = "shopping-bag";
173
- Assets["SKIP_AUTHENTICATION"] = "skip-authentication";
174
- Assets["SPEECH_BUBBLE"] = "speech-bubble";
175
- Assets["STOPWATCH_PLATFORM"] = "stopwatch-platform";
176
- Assets["TARGET_PLATFORM"] = "target-platform";
177
- Assets["TOOL"] = "tool";
178
- Assets["TWO_INVITE_LETTERS_OPENED"] = "two-invite-letters-opened";
179
- Assets["WALLET"] = "wallet";
129
+ Assets["MAP"] = "map";
130
+ Assets["MAGNIFYING_GLASS"] = "magnifying-glass";
131
+ Assets["LOCK_PLATFORM"] = "lock-platform";
132
+ Assets["LOCK"] = "lock";
133
+ Assets["LIGHT_BULB"] = "light-bulb";
134
+ Assets["KEY"] = "key";
135
+ Assets["JARS"] = "jars";
136
+ Assets["INVITE_LETTER"] = "invite-letter";
137
+ Assets["INTEREST"] = "interest";
138
+ Assets["INFINITE"] = "infinite";
139
+ Assets["ID_CARD"] = "id-card";
140
+ Assets["HOUSE"] = "house";
141
+ Assets["HEART_5"] = "heart-5";
142
+ Assets["HEART_4"] = "heart-4";
143
+ Assets["HEART_3"] = "heart-3";
144
+ Assets["HEART_2"] = "heart-2";
145
+ Assets["HEART"] = "heart";
146
+ Assets["GRAPH"] = "graph";
147
+ Assets["GLOBE"] = "globe";
148
+ Assets["GEAR"] = "gear";
149
+ Assets["FLOWER"] = "flower";
150
+ Assets["FLAG"] = "flag";
151
+ Assets["EXCLAMATION_MARK"] = "exclamation-mark";
152
+ Assets["EMAIL_SUCCESS"] = "email-success";
153
+ Assets["EMAIL"] = "email";
154
+ Assets["ELECTRIC_PLUG"] = "electric-plug";
155
+ Assets["ECO_CARD"] = "eco-card";
156
+ Assets["DOOR"] = "door";
157
+ Assets["DOCUMENTS"] = "documents";
158
+ Assets["DIGITAL_CARD_2"] = "digital-card-2";
159
+ Assets["DIGITAL_CARD"] = "digital-card";
160
+ Assets["COOKIE"] = "cookie";
161
+ Assets["CONVERT"] = "convert";
162
+ Assets["CONSTRUCTION_FENCE"] = "construction-fence";
163
+ Assets["CONFETTI"] = "confetti";
164
+ Assets["COIN_PILE_UP"] = "coin-pile-up";
165
+ Assets["COIN_PILE_DOWN"] = "coin-pile-down";
166
+ Assets["CLOSED_WINDOW"] = "closed-window";
167
+ Assets["CHECK_MARK"] = "check-mark";
168
+ Assets["CALENDAR"] = "calendar";
169
+ Assets["BUSINESS_CARD"] = "business-card";
170
+ Assets["BRIEFCASE"] = "briefcase";
171
+ Assets["BELL"] = "bell";
180
172
  })(exports.Assets || (exports.Assets = {}));
181
173
 
182
174
  function useBattery() {
@@ -271,66 +263,66 @@ function getModel({
271
263
  }) {
272
264
  // @ts-expect-error unknown generic
273
265
  let Model = /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {});
274
- const Scene = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Scene-48058bb3.js'); }));
266
+ const Scene = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Scene-CVWMssg7.js'); }));
275
267
  switch (name) {
276
268
  case exports.Assets.LOCK:
277
269
  {
278
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Lock-0b049d2a.js'); }));
270
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Lock-C7PL9U0j.js'); }));
279
271
  break;
280
272
  }
281
273
  case exports.Assets.GLOBE:
282
274
  {
283
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Globe-c146f5b7.js'); }));
275
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Globe-6gAGpYQj.js'); }));
284
276
  break;
285
277
  }
286
278
  case exports.Assets.CONFETTI:
287
279
  {
288
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Confetti-d9776df0.js'); }));
280
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Confetti-CssQQ6EV.js'); }));
289
281
  break;
290
282
  }
291
283
  case exports.Assets.CHECK_MARK:
292
284
  {
293
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./CheckMark-7ddfffc7.js'); }));
285
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./CheckMark-CFtSfMTm.js'); }));
294
286
  break;
295
287
  }
296
288
  case exports.Assets.FLOWER:
297
289
  {
298
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Flower-62fa1025.js'); }));
290
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Flower-Bqnz6_B2.js'); }));
299
291
  break;
300
292
  }
301
293
  case exports.Assets.PLANE:
302
294
  {
303
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Plane-ad9bf87d.js'); }));
295
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Plane-BY-cLvj7.js'); }));
304
296
  break;
305
297
  }
306
298
  case exports.Assets.GRAPH:
307
299
  {
308
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Graph-f478eff5.js'); }));
300
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Graph-BlxPEJjp.js'); }));
309
301
  break;
310
302
  }
311
303
  case exports.Assets.MARBLE:
312
304
  {
313
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Marble-4ec2f621.js'); }));
305
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Marble-5clyOjC2.js'); }));
314
306
  break;
315
307
  }
316
308
  case exports.Assets.MARBLE_CARD:
317
309
  {
318
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MarbleCard-ba03de1b.js'); }));
310
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MarbleCard-XiiHB0J8.js'); }));
319
311
  break;
320
312
  }
321
313
  case exports.Assets.MAGNIFYING_GLASS:
322
314
  {
323
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MagnifyingGlass-4498093d.js'); }));
315
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MagnifyingGlass-CTezVIm1.js'); }));
324
316
  break;
325
317
  }
326
318
  case exports.Assets.JARS:
327
319
  {
328
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Jars-f9fd754f.js'); }));
320
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Jars-GZb9ZEAl.js'); }));
329
321
  break;
330
322
  }
331
323
  case exports.Assets.MULTI_CURRENCY:
332
324
  {
333
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MultiCurrency-87004aba.js'); }));
325
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MultiCurrency-ClU7TXLu.js'); }));
334
326
  break;
335
327
  }
336
328
  }
@@ -347,4 +339,4 @@ exports.Illustration3D = Illustration3D;
347
339
  exports.ImageSizes = ImageSizes;
348
340
  exports.defineSrc = defineSrc;
349
341
  exports.isIllustrationSupport3D = isIllustrationSupport3D;
350
- //# sourceMappingURL=index-fccd8965.js.map
342
+ //# sourceMappingURL=index-CQNmYKQM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-CQNmYKQM.js","sources":["../src/flags/Flag.tsx","../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations3d/utils.ts","../src/illustrations3d/Illustration3D.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { useEffect, useState } from 'react';\n\nexport interface FlagProps {\n /**\n * Two-letter country code (ISO 3166-1 alpha-2) or three-letter currency code (ISO 4217).\n */\n code: string;\n\n /**\n * Width and height to reserve for the underlying image, in pixels. A detailed variant is shown from 150px and above.\n */\n intrinsicSize?: number;\n className?: string;\n loading?: 'lazy' | 'eager';\n}\n\nconst unknownFlagName = 'wise';\n\nexport const Flag = ({\n code,\n intrinsicSize = 64,\n className = undefined,\n loading = 'lazy',\n}: FlagProps) => {\n const [fallback, setFallback] = useState<'simple' | 'unknown' | null>(null);\n useEffect(() => {\n setFallback(null);\n }, [code]);\n\n const detailed = intrinsicSize >= 150;\n const name =\n fallback !== 'unknown'\n ? `${code.toLowerCase()}${fallback == null && detailed ? '-detailed' : ''}`\n : unknownFlagName;\n\n return (\n <img\n className={clsx('wds-flag', `wds-flag-${name}`, className)}\n src={\n process.env.NODE_ENV === 'web-art-dev'\n ? `${name}.svg`\n : `https://wise.com/web-art/assets/flags/${name}.svg`\n }\n loading={loading}\n alt=\"\"\n width={intrinsicSize}\n height={intrinsicSize}\n onError={() => {\n setFallback((prev) => (prev == null && detailed ? 'simple' : 'unknown'));\n }}\n />\n );\n};\n","export enum Sizes {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n}\n\nexport const ImageSizes = {\n [Sizes.SMALL]: 200,\n [Sizes.MEDIUM]: 300,\n [Sizes.LARGE]: 500,\n};\n\nexport type LargeSize = 'large';\nexport type MediumSize = 'medium';\nexport type SmallSize = 'small';\n\nexport type Descriptors = '1x' | '1.5x' | '2x' | '3x' | '4x';\n","import { clsx } from 'clsx';\nimport { forwardRef } from 'react';\n\nimport {\n type LargeSize,\n type MediumSize,\n type SmallSize,\n type Descriptors,\n Sizes,\n} from './../common';\nimport type { IllustrationNames } from './metadata';\n\n// Picking only a few props from Image element to avoid breaking change\n// as in future underlying element might change\ntype ImgProps = Pick<React.ImgHTMLAttributes<HTMLImageElement>, 'id' | 'className'>;\n\nexport type IllustrationSizes = LargeSize | MediumSize | SmallSize;\n\nexport type Props = {\n name: IllustrationNames;\n alt?: string;\n size?: IllustrationSizes;\n loading?: 'eager' | 'lazy';\n disablePadding?: boolean;\n} & ImgProps;\n\nconst imageSizes = {\n [Sizes.SMALL]: 200,\n [Sizes.MEDIUM]: 300,\n [Sizes.LARGE]: 500,\n};\n\nconst Illustration = forwardRef<HTMLImageElement, Props>(\n (\n {\n id,\n name,\n alt = '',\n loading = 'eager',\n className,\n size = Sizes.MEDIUM,\n disablePadding = false,\n }: Props,\n ref,\n ) => {\n const { SMALL, MEDIUM } = Sizes;\n\n return name ? (\n <picture>\n {size === Sizes.LARGE || size === Sizes.MEDIUM ? (\n <>\n <source\n width={imageSizes[SMALL]}\n height={imageSizes[SMALL]}\n media=\"(max-width: 575px)\"\n srcSet={`${defineSrc(name, SMALL, '1x')}, ${defineSrc(name, SMALL, '2x')} 2x`}\n />\n {size !== Sizes.MEDIUM ? (\n <source\n width={imageSizes[MEDIUM]}\n height={imageSizes[MEDIUM]}\n media=\"(max-width: 992px)\"\n srcSet={`${defineSrc(name, MEDIUM, '1x')}, ${defineSrc(name, MEDIUM, '2x')} 2x`}\n />\n ) : null}\n </>\n ) : null}\n\n <img\n id={id}\n ref={ref}\n alt={alt}\n data-testid={`wds-${name}-illustration`}\n className={clsx(\n 'wds-illustration',\n `wds-illustration-${name}`,\n { 'wds-illustration-padding': !disablePadding },\n className,\n )}\n loading={loading}\n src={defineSrc(name, size, '1x')}\n srcSet={`${defineSrc(name, size, '2x')} 2x`}\n width={imageSizes[size]}\n height={imageSizes[size]}\n />\n </picture>\n ) : null;\n },\n);\n\nfunction defineSrc(illustration: string, size: IllustrationSizes, descriptor: Descriptors) {\n return `https://wise.com/web-art/assets/illustrations/${illustration}-${size}@${descriptor}.webp`;\n}\n\nexport default Illustration;\n","/*\n *\n * DON'T MODIFY THIS FILE IT'S AUTO GENERATED\n * See: `scripts/generate-i10s-metadata.mjs`\n *\n */\n \n \n export enum Assets {\n WALLET = 'wallet',TWO_INVITE_LETTERS_OPENED = 'two-invite-letters-opened',TOOL = 'tool',TARGET_PLATFORM = 'target-platform',STOPWATCH_PLATFORM = 'stopwatch-platform',SPEECH_BUBBLE = 'speech-bubble',SKIP_AUTHENTICATION = 'skip-authentication',SHOPPING_BAG = 'shopping-bag',SATELLITE_PLATFORM = 'satellite-platform',SAND_TIMER = 'sand-timer',REMINDER_LETTER = 'reminder-letter',RECEIVE = 'receive',QUESTION_MARK = 'question-mark',PUZZLE_PIECES = 'puzzle-pieces',PLANE_2 = 'plane-2',PLANE = 'plane',PIE_CHART = 'pie-chart',PHONES = 'phones',PERSONAL_CARD = 'personal-card',PERCENTAGE = 'percentage',PALM_TREE = 'palm-tree',ONE_INVITE_LETTER_OPENED = 'one-invite-letter-opened',MULTI_CURRENCY = 'multi-currency',MEGAPHONE = 'megaphone',MARBLE_CARD_BUSINESS = 'marble-card-business',MARBLE_CARD = 'marble-card',MARBLE = 'marble',MAP = 'map',MAGNIFYING_GLASS = 'magnifying-glass',LOCK_PLATFORM = 'lock-platform',LOCK = 'lock',LIGHT_BULB = 'light-bulb',KEY = 'key',JARS = 'jars',INVITE_LETTER = 'invite-letter',INTEREST = 'interest',INFINITE = 'infinite',ID_CARD = 'id-card',HOUSE = 'house',HEART_5 = 'heart-5',HEART_4 = 'heart-4',HEART_3 = 'heart-3',HEART_2 = 'heart-2',HEART = 'heart',GRAPH = 'graph',GLOBE = 'globe',GEAR = 'gear',FLOWER = 'flower',FLAG = 'flag',EXCLAMATION_MARK = 'exclamation-mark',EMAIL_SUCCESS = 'email-success',EMAIL = 'email',ELECTRIC_PLUG = 'electric-plug',ECO_CARD = 'eco-card',DOOR = 'door',DOCUMENTS = 'documents',DIGITAL_CARD_2 = 'digital-card-2',DIGITAL_CARD = 'digital-card',COOKIE = 'cookie',CONVERT = 'convert',CONSTRUCTION_FENCE = 'construction-fence',CONFETTI = 'confetti',COIN_PILE_UP = 'coin-pile-up',COIN_PILE_DOWN = 'coin-pile-down',CLOSED_WINDOW = 'closed-window',CHECK_MARK = 'check-mark',CALENDAR = 'calendar',BUSINESS_CARD = 'business-card',BRIEFCASE = 'briefcase',BELL = 'bell'\n }\n \n export type IllustrationNames = 'wallet' | 'two-invite-letters-opened' | 'tool' | 'target-platform' | 'stopwatch-platform' | 'speech-bubble' | 'skip-authentication' | 'shopping-bag' | 'satellite-platform' | 'sand-timer' | 'reminder-letter' | 'receive' | 'question-mark' | 'puzzle-pieces' | 'plane-2' | 'plane' | 'pie-chart' | 'phones' | 'personal-card' | 'percentage' | 'palm-tree' | 'one-invite-letter-opened' | 'multi-currency' | 'megaphone' | 'marble-card-business' | 'marble-card' | 'marble' | 'map' | 'magnifying-glass' | 'lock-platform' | 'lock' | 'light-bulb' | 'key' | 'jars' | 'invite-letter' | 'interest' | 'infinite' | 'id-card' | 'house' | 'heart-5' | 'heart-4' | 'heart-3' | 'heart-2' | 'heart' | 'graph' | 'globe' | 'gear' | 'flower' | 'flag' | 'exclamation-mark' | 'email-success' | 'email' | 'electric-plug' | 'eco-card' | 'door' | 'documents' | 'digital-card-2' | 'digital-card' | 'cookie' | 'convert' | 'construction-fence' | 'confetti' | 'coin-pile-up' | 'coin-pile-down' | 'closed-window' | 'check-mark' | 'calendar' | 'business-card' | 'briefcase' | 'bell'","import { useState, useEffect } from 'react';\n\nimport type { IllustrationNames } from '../illustrations/metadata';\n\nexport function useBattery() {\n const [batteryData, setBatteryData] = useState<{ level: number }>({ level: 1.0 });\n\n useEffect(() => {\n const getBatteryData = async () => {\n // @ts-expect-error .getBattery exists in Navigator interface\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n const battery = await navigator.getBattery();\n\n setBatteryData({\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n level: battery?.level,\n });\n };\n // Check if the browser supports the Battery API\n if (\n 'getBattery' in navigator &&\n navigator.getBattery !== undefined &&\n typeof navigator.getBattery === 'function'\n ) {\n void getBatteryData();\n }\n }, []);\n\n return batteryData;\n}\n\nexport function isBatteryLow(batteryLevel: number): boolean {\n return batteryLevel < 0.2;\n}\n\nexport function isConnectionSlow(): boolean {\n // @ts-expect-error .connection prop exists in Navigator interface\n const { connection } = window.navigator;\n if (connection === undefined) {\n return false;\n }\n return (\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n ['slow-2g', '2g'].includes(connection?.effectiveType as string) ||\n // @ts-expect-error Property 'connection' does exist on type 'Navigator'\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n navigator?.connection?.saveData === true\n );\n}\n\nexport function defineSrc(asset: string): string {\n return `https://wise.com/web-art/assets/illustrations3d/${asset}`;\n}\n\nconst illustration3DNames = [\n 'lock',\n 'globe',\n 'confetti',\n 'check-mark',\n 'flower',\n 'graph',\n 'jars',\n 'magnifying-glass',\n 'marble',\n 'marble-card',\n 'multi-currency',\n 'plane',\n];\n\nexport function isIllustrationSupport3D(asset: IllustrationNames): boolean {\n return illustration3DNames.includes(asset);\n}\n","/* eslint-disable fp/no-mutation */\nimport { clsx } from 'clsx';\nimport { lazy, Suspense, useEffect, useState, LazyExoticComponent } from 'react';\n\nimport { LargeSize, MediumSize, SmallSize, Sizes } from '../common';\nimport Illustration, { Assets } from '../illustrations';\n\nimport { useBattery, isConnectionSlow, isBatteryLow } from './utils';\n\nexport type Illustration3DNames =\n | 'lock'\n | 'globe'\n | 'confetti'\n | 'check-mark'\n | 'flower'\n | 'graph'\n | 'jars'\n | 'magnifying-glass'\n | 'marble'\n | 'marble-card'\n | 'multi-currency'\n | 'plane';\n\nexport type Props = {\n name: Illustration3DNames;\n size?: SmallSize | MediumSize | LargeSize;\n className?: string;\n};\n\nenum RenderMode {\n INIT,\n FALLBACK,\n ASSET_3D,\n}\n\nconst Illustration3D = ({ name, size = Sizes.MEDIUM, className }: Props) => {\n const [renderMode, setRenderMode] = useState<RenderMode>(RenderMode.INIT);\n const [inintrinsicSize, setInintrinsicSize] = useState<Props['size']>(size);\n const batteryData = useBattery();\n\n useEffect(() => {\n setRenderMode(\n isConnectionSlow() || isBatteryLow(batteryData.level)\n ? RenderMode.FALLBACK\n : RenderMode.ASSET_3D,\n );\n const isMobile: boolean =\n (typeof window !== undefined && window?.matchMedia('(max-width: 575px)')?.matches) ?? false;\n if (isMobile) {\n setInintrinsicSize(Sizes.SMALL);\n }\n }, [batteryData]);\n\n return (\n <div\n className={clsx(\n 'wds-illustration-3d',\n `wds-illustration-3d-${name}`,\n `wds-illustration-3d-${inintrinsicSize as string}`,\n className,\n )}\n aria-hidden\n >\n {renderMode === RenderMode.INIT ? null : renderMode === RenderMode.ASSET_3D ? (\n <Suspense fallback={null}>{getModel({ name, size: inintrinsicSize })}</Suspense>\n ) : (\n <Illustration name={name} size={size} alt=\"\" />\n )}\n </div>\n );\n};\n\nfunction getModel({ name, size }: Props) {\n // @ts-expect-error unknown generic\n let Model: LazyExoticComponent = <></>;\n const Scene = lazy(() => import('./Scene'));\n switch (name) {\n case Assets.LOCK: {\n Model = lazy(() => import('./models/Lock'));\n break;\n }\n case Assets.GLOBE: {\n Model = lazy(() => import('./models/Globe'));\n break;\n }\n case Assets.CONFETTI: {\n Model = lazy(() => import('./models/Confetti'));\n break;\n }\n case Assets.CHECK_MARK: {\n Model = lazy(() => import('./models/CheckMark'));\n break;\n }\n case Assets.FLOWER: {\n Model = lazy(() => import('./models/Flower'));\n break;\n }\n case Assets.PLANE: {\n Model = lazy(() => import('./models/Plane'));\n break;\n }\n case Assets.GRAPH: {\n Model = lazy(() => import('./models/Graph'));\n break;\n }\n case Assets.MARBLE: {\n Model = lazy(() => import('./models/Marble'));\n break;\n }\n case Assets.MARBLE_CARD: {\n Model = lazy(() => import('./models/MarbleCard'));\n break;\n }\n case Assets.MAGNIFYING_GLASS: {\n Model = lazy(() => import('./models/MagnifyingGlass'));\n break;\n }\n case Assets.JARS: {\n Model = lazy(() => import('./models/Jars'));\n break;\n }\n case Assets.MULTI_CURRENCY: {\n Model = lazy(() => import('./models/MultiCurrency'));\n break;\n }\n }\n return (\n <Scene assetName={name} size={size}>\n <Model />\n </Scene>\n );\n}\n\nexport default Illustration3D;\n"],"names":["unknownFlagName","Flag","code","intrinsicSize","className","undefined","loading","fallback","setFallback","useState","useEffect","detailed","name","toLowerCase","_jsx","clsx","src","process","env","NODE_ENV","alt","width","height","onError","prev","Sizes","ImageSizes","SMALL","MEDIUM","LARGE","imageSizes","Illustration","forwardRef","id","size","disablePadding","ref","_jsxs","children","_Fragment","media","srcSet","defineSrc","illustration","descriptor","Assets","useBattery","batteryData","setBatteryData","level","getBatteryData","battery","navigator","getBattery","isBatteryLow","batteryLevel","isConnectionSlow","connection","window","includes","effectiveType","saveData","asset","illustration3DNames","isIllustrationSupport3D","RenderMode","Illustration3D","renderMode","setRenderMode","INIT","inintrinsicSize","setInintrinsicSize","FALLBACK","ASSET_3D","isMobile","matchMedia","matches","Suspense","getModel","Model","Scene","lazy","LOCK","GLOBE","CONFETTI","CHECK_MARK","FLOWER","PLANE","GRAPH","MARBLE","MARBLE_CARD","MAGNIFYING_GLASS","JARS","MULTI_CURRENCY","assetName"],"mappings":"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"}
package/dist/index.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- export { A as Assets, F as Flag, a as Illustration, b as Illustration3D, S as Sizes, i as isIllustrationSupport3D } from './index-27312590.esm.js';
1
+ export { A as Assets, F as Flag, a as Illustration, b as Illustration3D, S as Sizes, i as isIllustrationSupport3D } from './index-8Fxev6OI.esm.js';
2
2
  import 'clsx';
3
3
  import 'react';
4
4
  import 'react/jsx-runtime';
package/dist/index.js CHANGED
@@ -1,20 +1,20 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-fccd8965.js');
3
+ var index = require('./index-CQNmYKQM.js');
4
4
  require('clsx');
5
5
  require('react');
6
6
  require('react/jsx-runtime');
7
7
 
8
8
 
9
9
 
10
- Object.defineProperty(exports, 'Assets', {
10
+ Object.defineProperty(exports, "Assets", {
11
11
  enumerable: true,
12
12
  get: function () { return index.Assets; }
13
13
  });
14
14
  exports.Flag = index.Flag;
15
15
  exports.Illustration = index.Illustration;
16
16
  exports.Illustration3D = index.Illustration3D;
17
- Object.defineProperty(exports, 'Sizes', {
17
+ Object.defineProperty(exports, "Sizes", {
18
18
  enumerable: true,
19
19
  get: function () { return index.Sizes; }
20
20
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wise/art",
3
- "version": "2.17.0-beta.1",
4
- "packageManager": "pnpm@8.7.5",
3
+ "version": "2.18.0",
4
+ "packageManager": "pnpm@8.15.9+sha256.daa27a0b541bc635323ff96c2ded995467ff9fe6d69ff67021558aa9ad9dcc36",
5
5
  "license": "MIT",
6
6
  "description": "React library for art elements in UI",
7
7
  "homepage": "https://github.com/transferwise/web-art#readme",
@@ -22,7 +22,7 @@
22
22
  "!**/*.tsbuildinfo"
23
23
  ],
24
24
  "scripts": {
25
- "setup": "pnpm && pnpm build",
25
+ "setup": "pnpm install && pnpm build",
26
26
  "load-3d-i10s": "rm -rf s3-bucket/illustrations3d/ && node ./scripts/load-3d-i10s.mjs",
27
27
  "load-i10s": "copyfiles -u 3 node_modules/wise-atoms/illustrations/**/*.png temp",
28
28
  "load-flags": "rm -rf s3-bucket/flags/* && pnpm load-country-flags && pnpm load-currency-flags && pnpm transform-flags && pnpm convert-flags-svg-to-png",
@@ -37,73 +37,75 @@
37
37
  "build": "NODE_ENV=web-art-prod pnpm load-i10s && pnpm load-3d-i10s && pnpm convert-i10s-png-to-webp && pnpm generate-i10s-metadata && pnpm load-flags && pnpm bundle && pnpm cleanup",
38
38
  "start": "storybook dev -p 3001",
39
39
  "dev": "NODE_ENV=web-art-dev pnpm start",
40
- "test": "jest",
40
+ "test": "jest && release-to-github-with-changelog-pre-release-checks",
41
+ "test:watch": "jest --watch",
41
42
  "lint-fix": "eslint 'src/**/*.{js,ts,tsx}' 'scripts/*.{mjs,js,ts,tsx}' --fix",
42
43
  "build-docs": "storybook build -o docs && touch ./docs/.nojekyll",
43
44
  "build-styles": "postcss src/index.css -o dist/Illustration.css"
44
45
  },
45
46
  "dependencies": {
46
- "@babel/runtime": "^7.22.15",
47
- "clsx": "^2.0.0",
48
- "three": "^0.154.0",
49
- "@types/three": "^0.154.0",
47
+ "@babel/runtime": "^7.26.0",
48
+ "@react-three/drei": "^9.96.4",
50
49
  "@react-three/fiber": "^8.13.5",
51
- "@react-three/drei": "^9.96.4"
50
+ "@types/three": "^0.171.0",
51
+ "clsx": "^2.1.1",
52
+ "three": "^0.154.0"
52
53
  },
53
54
  "devDependencies": {
54
- "@babel/core": "^7.22.15",
55
- "@babel/plugin-transform-runtime": "^7.22.15",
56
- "@babel/preset-env": "^7.22.15",
57
- "@babel/preset-react": "^7.22.15",
58
- "@babel/preset-typescript": "^7.22.15",
59
- "rollup": "^3.29.4",
60
- "@rollup/plugin-babel": "^6.0.3",
61
- "@rollup/plugin-typescript": "^11.1.3",
62
- "@storybook/addon-essentials": "^7.4.0",
63
- "@storybook/react": "^7.4.0",
64
- "@storybook/react-vite": "^7.4.0",
65
- "@testing-library/react": "^14.0.0",
66
- "@testing-library/jest-dom": "^6.1.3",
55
+ "@babel/core": "^7.26.0",
56
+ "@babel/plugin-transform-runtime": "^7.25.9",
57
+ "@babel/preset-env": "^7.26.0",
58
+ "@babel/preset-react": "^7.26.3",
59
+ "@babel/preset-typescript": "^7.26.0",
60
+ "@csstools/postcss-minify": "^2.0.3",
61
+ "@rollup/plugin-babel": "^6.0.4",
62
+ "@rollup/plugin-typescript": "^12.1.2",
63
+ "@storybook/addon-essentials": "^8.4.7",
64
+ "@storybook/react": "^8.4.7",
65
+ "@storybook/react-vite": "^8.4.7",
66
+ "@testing-library/jest-dom": "^6.6.3",
67
+ "@testing-library/react": "^16.1.0",
67
68
  "@testing-library/react-hooks": "^8.0.1",
68
- "@transferwise/eslint-config": "^8.0.0",
69
- "@tsconfig/recommended": "^1.0.2",
70
- "@types/babel__core": "^7.20.1",
69
+ "@transferwise/neptune-css": "^14.20.1",
70
+ "@tsconfig/recommended": "^1.0.8",
71
+ "@types/babel__core": "^7.20.5",
71
72
  "@types/glob": "^8.1.0",
72
- "@types/imagemin": "^8.0.1",
73
- "@types/imagemin-webp": "^7.0.0",
74
- "@types/jest": "^28.1.8",
75
- "@types/jsdom": "^21.1.2",
76
- "@types/react": "^18.2.21",
77
- "@types/react-dom": "^18.2.7",
73
+ "@types/imagemin": "^9.0.0",
74
+ "@types/imagemin-webp": "^7.0.3",
75
+ "@types/jest": "^29.5.14",
76
+ "@types/jsdom": "^21.1.7",
77
+ "@types/react": "^19.0.1",
78
+ "@types/react-dom": "^19.0.2",
79
+ "@vitejs/plugin-react": "^4.3.4",
80
+ "@wise/eslint-config": "^12.1.0",
78
81
  "babel-plugin-optimize-clsx": "^2.6.2",
79
- "postcss": "^8.4.33",
80
- "postcss-cli": "^11.0.0",
81
- "postcss-import": "^16.0.0",
82
- "@csstools/postcss-minify": "^1.1.0",
83
82
  "copyfiles": "^2.4.1",
84
- "eslint": "^8.48.0",
85
- "glob": "^8.1.0",
86
- "imagemin": "^8.0.1",
87
- "imagemin-webp": "^8.0.0",
83
+ "eslint": "^9.17.0",
84
+ "glob": "^11.0.0",
88
85
  "gltf-pipeline": "^4.1.0",
89
- "jest": "^28.1.3",
90
- "jest-environment-jsdom": "^28.1.3",
91
- "jsdom": "~21.1.2",
92
- "prettier": "^2.8.8",
86
+ "imagemin": "^9.0.0",
87
+ "imagemin-webp": "^8.0.0",
88
+ "jest": "^29.7.0",
89
+ "jest-environment-jsdom": "^29.7.0",
90
+ "jsdom": "~25.0.1",
91
+ "postcss": "^8.4.49",
92
+ "postcss-cli": "^11.0.0",
93
+ "postcss-import": "^16.1.0",
94
+ "prettier": "^3.4.2",
93
95
  "react": "^18.2.0",
94
96
  "react-dom": "^18.2.0",
95
97
  "release-to-github-with-changelog": "^1.2.4",
98
+ "rollup": "^4.28.1",
96
99
  "sharp": "^0.32.5",
97
- "storybook": "^7.4.0",
98
- "typescript": "^4.9.5",
99
- "vite": "^4.4.9",
100
- "wise-atoms": "git+https://github.com/transferwise/wise-atoms.git#85245884508dede05a3d13d0357977fec45b97ee",
101
- "@transferwise/neptune-css": "^14.9.3"
100
+ "storybook": "^8.4.7",
101
+ "typescript": "^5.7.2",
102
+ "vite": "^6.0.3",
103
+ "wise-atoms": "git+https://github.com/transferwise/wise-atoms.git#2071ba4a8dc3322f953420ba16cf957d7a8ffa9b"
102
104
  },
103
105
  "peerDependencies": {
104
- "react": ">=17",
105
- "react-dom": ">=17",
106
- "@transferwise/neptune-css": "^14.7"
106
+ "@transferwise/neptune-css": "^14.20.1",
107
+ "react": ">=18",
108
+ "react-dom": ">=18"
107
109
  },
108
110
  "prettier": "@transferwise/eslint-config/.prettierrc.js",
109
111
  "publishConfig": {
@@ -1,18 +1,4 @@
1
1
  .wds-flag {
2
+ box-shadow: 0 0 0 1px var(--color-border-neutral);
2
3
  border-radius: var(--radius-full);
3
- width: var(--wds-flag-size);
4
- height: var(--wds-flag-size);
5
- position: relative;
6
- display: inline-block;
7
- }
8
-
9
- .wds-flag::after {
10
- content: "";
11
- position: absolute;
12
- top: 0;
13
- left: 0;
14
- width: 100%;
15
- height: 100%;
16
- border-radius: var(--radius-full);
17
- box-shadow: inset 0 0 0 1px var(--color-border-neutral);
18
4
  }
@@ -12,6 +12,7 @@ type Story = StoryObj<typeof Flag>;
12
12
 
13
13
  export const Basic: Story = {
14
14
  render: (args) => <Flag {...args} />,
15
+ tags: ['autodocs'],
15
16
  args: {
16
17
  code: 'GBP',
17
18
  intrinsicSize: 64,
@@ -35,26 +35,20 @@ export const Flag = ({
35
35
  : unknownFlagName;
36
36
 
37
37
  return (
38
- <span
38
+ <img
39
39
  className={clsx('wds-flag', `wds-flag-${name}`, className)}
40
- // @ts-expect-error CSS props allowed
41
- // eslint-disable-next-line react/forbid-dom-props
42
- style={{ '--wds-flag-size': `${intrinsicSize}px` }}
43
- >
44
- <img
45
- src={
46
- process.env.NODE_ENV === 'web-art-dev'
47
- ? `${name}.svg`
48
- : `https://wise.com/web-art/assets/flags/${name}.svg`
49
- }
50
- loading={loading}
51
- alt=""
52
- width={intrinsicSize}
53
- height={intrinsicSize}
54
- onError={() => {
55
- setFallback((prev) => (prev == null && detailed ? 'simple' : 'unknown'));
56
- }}
57
- />
58
- </span>
40
+ src={
41
+ process.env.NODE_ENV === 'web-art-dev'
42
+ ? `${name}.svg`
43
+ : `https://wise.com/web-art/assets/flags/${name}.svg`
44
+ }
45
+ loading={loading}
46
+ alt=""
47
+ width={intrinsicSize}
48
+ height={intrinsicSize}
49
+ onError={() => {
50
+ setFallback((prev) => (prev == null && detailed ? 'simple' : 'unknown'));
51
+ }}
52
+ />
59
53
  );
60
54
  };
@@ -8,7 +8,7 @@ describe('Illustration', () => {
8
8
  it('should create empty alt att', () => {
9
9
  render(<Illustration name={Assets.CHECK_MARK} />);
10
10
 
11
- expect(screen.getByRole('img')).toHaveAttribute('alt', '');
11
+ expect(screen.getByRole('presentation')).toHaveAttribute('alt', '');
12
12
  });
13
13
 
14
14
  it('should create alt with custom text', () => {