@wise/art 2.9.1 → 2.10.0-beta.2

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-91b74943.js → CheckMark-32e18b44.js} +2 -2
  2. package/dist/CheckMark-32e18b44.js.map +1 -0
  3. package/dist/{CheckMark-75975410.esm.js → CheckMark-ab1ead03.esm.js} +2 -2
  4. package/dist/CheckMark-ab1ead03.esm.js.map +1 -0
  5. package/dist/{Confetti-4e9cc611.js → Confetti-720fd71c.js} +2 -2
  6. package/dist/Confetti-720fd71c.js.map +1 -0
  7. package/dist/{Confetti-eb9add24.esm.js → Confetti-91e21706.esm.js} +2 -2
  8. package/dist/Confetti-91e21706.esm.js.map +1 -0
  9. package/dist/{Flower-66206fda.esm.js → Flower-e9b93cea.esm.js} +2 -2
  10. package/dist/Flower-e9b93cea.esm.js.map +1 -0
  11. package/dist/{Flower-c9d23967.js → Flower-fbad899d.js} +2 -2
  12. package/dist/{Flower-c9d23967.js.map → Flower-fbad899d.js.map} +1 -1
  13. package/dist/{Globe-a27525fe.esm.js → Globe-34d12c6a.esm.js} +2 -2
  14. package/dist/Globe-34d12c6a.esm.js.map +1 -0
  15. package/dist/{Globe-8e3a5a93.js → Globe-d80433f5.js} +2 -2
  16. package/dist/Globe-d80433f5.js.map +1 -0
  17. package/dist/{Graph-9a766bb4.js → Graph-3539b20b.js} +2 -2
  18. package/dist/Graph-3539b20b.js.map +1 -0
  19. package/dist/{Graph-72ebad19.esm.js → Graph-4cbf7c1e.esm.js} +2 -2
  20. package/dist/Graph-4cbf7c1e.esm.js.map +1 -0
  21. package/dist/Illustration.css +1 -27
  22. package/dist/{Jars-bfd6186b.js → Jars-0fa48808.js} +2 -2
  23. package/dist/Jars-0fa48808.js.map +1 -0
  24. package/dist/{Jars-315f0e1e.esm.js → Jars-bfac42bc.esm.js} +2 -2
  25. package/dist/Jars-bfac42bc.esm.js.map +1 -0
  26. package/dist/{Lock-64866d42.esm.js → Lock-2b6bd8bd.esm.js} +2 -2
  27. package/dist/Lock-2b6bd8bd.esm.js.map +1 -0
  28. package/dist/{Lock-9f35874f.js → Lock-4c64a0dc.js} +2 -2
  29. package/dist/Lock-4c64a0dc.js.map +1 -0
  30. package/dist/{MagnifyingGlass-7bcc177b.esm.js → MagnifyingGlass-0603a06c.esm.js} +2 -2
  31. package/dist/MagnifyingGlass-0603a06c.esm.js.map +1 -0
  32. package/dist/{MagnifyingGlass-850402f3.js → MagnifyingGlass-711dbd52.js} +2 -2
  33. package/dist/MagnifyingGlass-711dbd52.js.map +1 -0
  34. package/dist/{Marble-d1c83ca5.js → Marble-4522fae8.js} +2 -2
  35. package/dist/Marble-4522fae8.js.map +1 -0
  36. package/dist/{Marble-8e71ce64.esm.js → Marble-b7bde4af.esm.js} +2 -2
  37. package/dist/Marble-b7bde4af.esm.js.map +1 -0
  38. package/dist/{MarbleCard-a3bee913.esm.js → MarbleCard-1e08f954.esm.js} +2 -2
  39. package/dist/MarbleCard-1e08f954.esm.js.map +1 -0
  40. package/dist/{MarbleCard-c7445571.js → MarbleCard-30796b1c.js} +2 -2
  41. package/dist/MarbleCard-30796b1c.js.map +1 -0
  42. package/dist/{MultiCurrency-32138601.js → MultiCurrency-5a0728f7.js} +2 -2
  43. package/dist/MultiCurrency-5a0728f7.js.map +1 -0
  44. package/dist/{MultiCurrency-93fd79bd.esm.js → MultiCurrency-d001321e.esm.js} +2 -2
  45. package/dist/MultiCurrency-d001321e.esm.js.map +1 -0
  46. package/dist/{Plane-300c9b8d.esm.js → Plane-47138ace.esm.js} +2 -2
  47. package/dist/Plane-47138ace.esm.js.map +1 -0
  48. package/dist/{Plane-531209fc.js → Plane-d51b58a6.js} +2 -2
  49. package/dist/Plane-d51b58a6.js.map +1 -0
  50. package/dist/{Scene-74f99a47.esm.js → Scene-1d582723.esm.js} +2 -2
  51. package/dist/{Scene-74f99a47.esm.js.map → Scene-1d582723.esm.js.map} +1 -1
  52. package/dist/{Scene-fab9127c.js → Scene-de95f891.js} +2 -2
  53. package/dist/{Scene-fab9127c.js.map → Scene-de95f891.js.map} +1 -1
  54. package/dist/Wise-Icons.woff2 +0 -0
  55. package/dist/icons/Icon.d.ts +13 -0
  56. package/dist/icons/Icon.d.ts.map +1 -0
  57. package/dist/icons/index.d.ts +3 -0
  58. package/dist/icons/index.d.ts.map +1 -0
  59. package/dist/{index-d9418379.esm.js → index-1b37285b.esm.js} +38 -15
  60. package/dist/index-1b37285b.esm.js.map +1 -0
  61. package/dist/{index-a4dd3e1a.js → index-4c1d5bff.js} +38 -14
  62. package/dist/index-4c1d5bff.js.map +1 -0
  63. package/dist/index.d.ts +2 -0
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.esm.js +1 -1
  66. package/dist/index.js +2 -1
  67. package/dist/index.js.map +1 -1
  68. package/package.json +12 -5
  69. package/src/icons/Icon.css +13 -0
  70. package/src/icons/Icon.stories.tsx +26 -0
  71. package/src/icons/Icon.tsx +37 -0
  72. package/src/icons/font/Wise-Icons.css +686 -0
  73. package/src/icons/font/Wise-Icons.woff2 +0 -0
  74. package/src/icons/index.ts +2 -0
  75. package/src/index.css +3 -0
  76. package/src/index.ts +2 -0
  77. package/dist/CheckMark-75975410.esm.js.map +0 -1
  78. package/dist/CheckMark-91b74943.js.map +0 -1
  79. package/dist/Confetti-4e9cc611.js.map +0 -1
  80. package/dist/Confetti-eb9add24.esm.js.map +0 -1
  81. package/dist/Flower-66206fda.esm.js.map +0 -1
  82. package/dist/Globe-8e3a5a93.js.map +0 -1
  83. package/dist/Globe-a27525fe.esm.js.map +0 -1
  84. package/dist/Graph-72ebad19.esm.js.map +0 -1
  85. package/dist/Graph-9a766bb4.js.map +0 -1
  86. package/dist/Jars-315f0e1e.esm.js.map +0 -1
  87. package/dist/Jars-bfd6186b.js.map +0 -1
  88. package/dist/Lock-64866d42.esm.js.map +0 -1
  89. package/dist/Lock-9f35874f.js.map +0 -1
  90. package/dist/MagnifyingGlass-7bcc177b.esm.js.map +0 -1
  91. package/dist/MagnifyingGlass-850402f3.js.map +0 -1
  92. package/dist/Marble-8e71ce64.esm.js.map +0 -1
  93. package/dist/Marble-d1c83ca5.js.map +0 -1
  94. package/dist/MarbleCard-a3bee913.esm.js.map +0 -1
  95. package/dist/MarbleCard-c7445571.js.map +0 -1
  96. package/dist/MultiCurrency-32138601.js.map +0 -1
  97. package/dist/MultiCurrency-93fd79bd.esm.js.map +0 -1
  98. package/dist/Plane-300c9b8d.esm.js.map +0 -1
  99. package/dist/Plane-531209fc.js.map +0 -1
  100. package/dist/index-a4dd3e1a.js.map +0 -1
  101. package/dist/index-d9418379.esm.js.map +0 -1
@@ -26,6 +26,29 @@ const Flag = ({
26
26
  });
27
27
  };
28
28
 
29
+ const Icon = ({
30
+ name,
31
+ size = 16,
32
+ className = undefined,
33
+ filled = false,
34
+ 'data-testid': testId,
35
+ title = undefined,
36
+ role = undefined
37
+ }) => {
38
+ const nameSelector = filled ? `${name}-fill` : name;
39
+ const sizeSelector = [24, '24'].includes(size) ? 'wds-icon-size-24' : null;
40
+ return /*#__PURE__*/jsx("span", {
41
+ className: clsx(`wds-icon wds-icon-${nameSelector}`, sizeSelector, className),
42
+ "aria-hidden": title ? undefined : true,
43
+ role: role ?? (title ? undefined : 'none'),
44
+ "data-testid": testId,
45
+ children: title && /*#__PURE__*/jsx("span", {
46
+ className: "sr-only",
47
+ children: title
48
+ })
49
+ });
50
+ };
51
+
29
52
  var Sizes;
30
53
  (function (Sizes) {
31
54
  Sizes["SMALL"] = "small";
@@ -254,66 +277,66 @@ function getModel({
254
277
  }) {
255
278
  // @ts-expect-error unknown generic
256
279
  let Model = /*#__PURE__*/jsx(Fragment, {});
257
- const Scene = /*#__PURE__*/lazy(() => import('./Scene-74f99a47.esm.js'));
280
+ const Scene = /*#__PURE__*/lazy(() => import('./Scene-1d582723.esm.js'));
258
281
  switch (name) {
259
282
  case Assets.LOCK:
260
283
  {
261
- Model = /*#__PURE__*/lazy(() => import('./Lock-64866d42.esm.js'));
284
+ Model = /*#__PURE__*/lazy(() => import('./Lock-2b6bd8bd.esm.js'));
262
285
  break;
263
286
  }
264
287
  case Assets.GLOBE:
265
288
  {
266
- Model = /*#__PURE__*/lazy(() => import('./Globe-a27525fe.esm.js'));
289
+ Model = /*#__PURE__*/lazy(() => import('./Globe-34d12c6a.esm.js'));
267
290
  break;
268
291
  }
269
292
  case Assets.CONFETTI:
270
293
  {
271
- Model = /*#__PURE__*/lazy(() => import('./Confetti-eb9add24.esm.js'));
294
+ Model = /*#__PURE__*/lazy(() => import('./Confetti-91e21706.esm.js'));
272
295
  break;
273
296
  }
274
297
  case Assets.CHECK_MARK:
275
298
  {
276
- Model = /*#__PURE__*/lazy(() => import('./CheckMark-75975410.esm.js'));
299
+ Model = /*#__PURE__*/lazy(() => import('./CheckMark-ab1ead03.esm.js'));
277
300
  break;
278
301
  }
279
302
  case Assets.FLOWER:
280
303
  {
281
- Model = /*#__PURE__*/lazy(() => import('./Flower-66206fda.esm.js'));
304
+ Model = /*#__PURE__*/lazy(() => import('./Flower-e9b93cea.esm.js'));
282
305
  break;
283
306
  }
284
307
  case Assets.PLANE:
285
308
  {
286
- Model = /*#__PURE__*/lazy(() => import('./Plane-300c9b8d.esm.js'));
309
+ Model = /*#__PURE__*/lazy(() => import('./Plane-47138ace.esm.js'));
287
310
  break;
288
311
  }
289
312
  case Assets.GRAPH:
290
313
  {
291
- Model = /*#__PURE__*/lazy(() => import('./Graph-72ebad19.esm.js'));
314
+ Model = /*#__PURE__*/lazy(() => import('./Graph-4cbf7c1e.esm.js'));
292
315
  break;
293
316
  }
294
317
  case Assets.MARBLE:
295
318
  {
296
- Model = /*#__PURE__*/lazy(() => import('./Marble-8e71ce64.esm.js'));
319
+ Model = /*#__PURE__*/lazy(() => import('./Marble-b7bde4af.esm.js'));
297
320
  break;
298
321
  }
299
322
  case Assets.MARBLE_CARD:
300
323
  {
301
- Model = /*#__PURE__*/lazy(() => import('./MarbleCard-a3bee913.esm.js'));
324
+ Model = /*#__PURE__*/lazy(() => import('./MarbleCard-1e08f954.esm.js'));
302
325
  break;
303
326
  }
304
327
  case Assets.MAGNIFYING_GLASS:
305
328
  {
306
- Model = /*#__PURE__*/lazy(() => import('./MagnifyingGlass-7bcc177b.esm.js'));
329
+ Model = /*#__PURE__*/lazy(() => import('./MagnifyingGlass-0603a06c.esm.js'));
307
330
  break;
308
331
  }
309
332
  case Assets.JARS:
310
333
  {
311
- Model = /*#__PURE__*/lazy(() => import('./Jars-315f0e1e.esm.js'));
334
+ Model = /*#__PURE__*/lazy(() => import('./Jars-bfac42bc.esm.js'));
312
335
  break;
313
336
  }
314
337
  case Assets.MULTI_CURRENCY:
315
338
  {
316
- Model = /*#__PURE__*/lazy(() => import('./MultiCurrency-93fd79bd.esm.js'));
339
+ Model = /*#__PURE__*/lazy(() => import('./MultiCurrency-d001321e.esm.js'));
317
340
  break;
318
341
  }
319
342
  }
@@ -324,5 +347,5 @@ function getModel({
324
347
  });
325
348
  }
326
349
 
327
- export { Assets as A, Flag as F, ImageSizes as I, Sizes as S, Illustration as a, Illustration3D as b, defineSrc as d, isIllustrationSupport3D as i };
328
- //# sourceMappingURL=index-d9418379.esm.js.map
350
+ export { Assets as A, Flag as F, ImageSizes as I, Sizes as S, Icon as a, Illustration as b, Illustration3D as c, defineSrc as d, isIllustrationSupport3D as i };
351
+ //# sourceMappingURL=index-1b37285b.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-1b37285b.esm.js","sources":["../src/flags/Flag.tsx","../src/icons/Icon.tsx","../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations3d/utils.ts","../src/illustrations3d/Illustration3D.tsx"],"sourcesContent":[null,null,null,null,null,null,null],"names":["unknownFlagName","fallback","setFallback","useState","useEffect","detailed","intrinsicSize","name","code","toLowerCase","_jsx","className","clsx","alt","width","height","onError","Icon","size","undefined","filled","testId","title","role","nameSelector","includes","sizeSelector","children","Sizes","LARGE","imageSizes","SMALL","MEDIUM","Illustration","forwardRef","id","loading","disablePadding","ref","_jsxs","_Fragment","media","srcSet","defineSrc","descriptor","Assets","useBattery","batteryData","setBatteryData","level","getBatteryData","battery","RenderMode"],"mappings":"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"}
@@ -28,6 +28,29 @@ const Flag = ({
28
28
  });
29
29
  };
30
30
 
31
+ const Icon = ({
32
+ name,
33
+ size = 16,
34
+ className = undefined,
35
+ filled = false,
36
+ 'data-testid': testId,
37
+ title = undefined,
38
+ role = undefined
39
+ }) => {
40
+ const nameSelector = filled ? `${name}-fill` : name;
41
+ const sizeSelector = [24, '24'].includes(size) ? 'wds-icon-size-24' : null;
42
+ return /*#__PURE__*/jsxRuntime.jsx("span", {
43
+ className: clsx.clsx(`wds-icon wds-icon-${nameSelector}`, sizeSelector, className),
44
+ "aria-hidden": title ? undefined : true,
45
+ role: role ?? (title ? undefined : 'none'),
46
+ "data-testid": testId,
47
+ children: title && /*#__PURE__*/jsxRuntime.jsx("span", {
48
+ className: "sr-only",
49
+ children: title
50
+ })
51
+ });
52
+ };
53
+
31
54
  exports.Sizes = void 0;
32
55
  (function (Sizes) {
33
56
  Sizes["SMALL"] = "small";
@@ -256,66 +279,66 @@ function getModel({
256
279
  }) {
257
280
  // @ts-expect-error unknown generic
258
281
  let Model = /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {});
259
- const Scene = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Scene-fab9127c.js'); }));
282
+ const Scene = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Scene-de95f891.js'); }));
260
283
  switch (name) {
261
284
  case exports.Assets.LOCK:
262
285
  {
263
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Lock-9f35874f.js'); }));
286
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Lock-4c64a0dc.js'); }));
264
287
  break;
265
288
  }
266
289
  case exports.Assets.GLOBE:
267
290
  {
268
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Globe-8e3a5a93.js'); }));
291
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Globe-d80433f5.js'); }));
269
292
  break;
270
293
  }
271
294
  case exports.Assets.CONFETTI:
272
295
  {
273
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Confetti-4e9cc611.js'); }));
296
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Confetti-720fd71c.js'); }));
274
297
  break;
275
298
  }
276
299
  case exports.Assets.CHECK_MARK:
277
300
  {
278
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./CheckMark-91b74943.js'); }));
301
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./CheckMark-32e18b44.js'); }));
279
302
  break;
280
303
  }
281
304
  case exports.Assets.FLOWER:
282
305
  {
283
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Flower-c9d23967.js'); }));
306
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Flower-fbad899d.js'); }));
284
307
  break;
285
308
  }
286
309
  case exports.Assets.PLANE:
287
310
  {
288
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Plane-531209fc.js'); }));
311
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Plane-d51b58a6.js'); }));
289
312
  break;
290
313
  }
291
314
  case exports.Assets.GRAPH:
292
315
  {
293
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Graph-9a766bb4.js'); }));
316
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Graph-3539b20b.js'); }));
294
317
  break;
295
318
  }
296
319
  case exports.Assets.MARBLE:
297
320
  {
298
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Marble-d1c83ca5.js'); }));
321
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Marble-4522fae8.js'); }));
299
322
  break;
300
323
  }
301
324
  case exports.Assets.MARBLE_CARD:
302
325
  {
303
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MarbleCard-c7445571.js'); }));
326
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MarbleCard-30796b1c.js'); }));
304
327
  break;
305
328
  }
306
329
  case exports.Assets.MAGNIFYING_GLASS:
307
330
  {
308
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MagnifyingGlass-850402f3.js'); }));
331
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MagnifyingGlass-711dbd52.js'); }));
309
332
  break;
310
333
  }
311
334
  case exports.Assets.JARS:
312
335
  {
313
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Jars-bfd6186b.js'); }));
336
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./Jars-0fa48808.js'); }));
314
337
  break;
315
338
  }
316
339
  case exports.Assets.MULTI_CURRENCY:
317
340
  {
318
- Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MultiCurrency-32138601.js'); }));
341
+ Model = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./MultiCurrency-5a0728f7.js'); }));
319
342
  break;
320
343
  }
321
344
  }
@@ -327,9 +350,10 @@ function getModel({
327
350
  }
328
351
 
329
352
  exports.Flag = Flag;
353
+ exports.Icon = Icon;
330
354
  exports.Illustration = Illustration;
331
355
  exports.Illustration3D = Illustration3D;
332
356
  exports.ImageSizes = ImageSizes;
333
357
  exports.defineSrc = defineSrc;
334
358
  exports.isIllustrationSupport3D = isIllustrationSupport3D;
335
- //# sourceMappingURL=index-a4dd3e1a.js.map
359
+ //# sourceMappingURL=index-4c1d5bff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-4c1d5bff.js","sources":["../src/flags/Flag.tsx","../src/icons/Icon.tsx","../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations3d/utils.ts","../src/illustrations3d/Illustration3D.tsx"],"sourcesContent":[null,null,null,null,null,null,null],"names":["unknownFlagName","fallback","setFallback","useState","useEffect","detailed","intrinsicSize","name","code","toLowerCase","_jsx","className","clsx","alt","width","height","onError","Icon","size","undefined","filled","testId","title","role","nameSelector","includes","sizeSelector","children","Sizes","LARGE","imageSizes","SMALL","MEDIUM","Illustration","forwardRef","id","loading","disablePadding","ref","_jsxs","_Fragment","media","srcSet","defineSrc","descriptor","Assets","useBattery","batteryData","setBatteryData","level","getBatteryData","battery","RenderMode"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,10 @@
1
1
  export { Flag } from './flags';
2
+ export { default as Icon } from './icons';
2
3
  export { default as Illustration } from './illustrations';
3
4
  export { default as Illustration3D } from './illustrations3d';
4
5
  export { Assets } from './illustrations';
5
6
  export { Sizes } from './common';
7
+ export type { IconProps } from './icons';
6
8
  export type { FlagProps } from './flags';
7
9
  export type { IllustrationNames, IllustrationProps } from './illustrations';
8
10
  export type { Illustration3DNames, Illustration3DProps } from './illustrations3d';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAElF,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAElF,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC"}
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-d9418379.esm.js';
1
+ export { A as Assets, F as Flag, a as Icon, b as Illustration, c as Illustration3D, S as Sizes, i as isIllustrationSupport3D } from './index-1b37285b.esm.js';
2
2
  import 'clsx';
3
3
  import 'react';
4
4
  import 'react/jsx-runtime';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-a4dd3e1a.js');
3
+ var index = require('./index-4c1d5bff.js');
4
4
  require('clsx');
5
5
  require('react');
6
6
  require('react/jsx-runtime');
@@ -12,6 +12,7 @@ Object.defineProperty(exports, 'Assets', {
12
12
  get: function () { return index.Assets; }
13
13
  });
14
14
  exports.Flag = index.Flag;
15
+ exports.Icon = index.Icon;
15
16
  exports.Illustration = index.Illustration;
16
17
  exports.Illustration3D = index.Illustration3D;
17
18
  Object.defineProperty(exports, 'Sizes', {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wise/art",
3
- "version": "2.9.1",
3
+ "version": "2.10.0-beta.2",
4
4
  "license": "MIT",
5
5
  "description": "React library for art elements in UI",
6
6
  "homepage": "https://github.com/transferwise/web-art#readme",
@@ -31,14 +31,16 @@
31
31
  "convert-flags-svg-to-png": "node ./scripts/convert-flags-svg-to-png.mjs",
32
32
  "convert-i10s-png-to-webp": "rm -rf s3-bucket/illustrations/ && copyfiles --f node_modules/wise-atoms/illustrations/**/*.png s3-bucket/illustrations && node ./scripts/convert-png-to-webp.mjs",
33
33
  "generate-i10s-metadata": "node ./scripts/generate-i10s-metadata.mjs && eslint 'src/illustrations/metadata.ts' --fix",
34
- "bundle": "rm -rf dist && rollup --config --sourcemap && cpx src/illustrations/Illustration.css dist/",
34
+ "bundle": "rm -rf dist && rollup --config --sourcemap && yarn build-styles",
35
35
  "cleanup": "rm -rf temp",
36
- "build": "yarn load-i10s && yarn load-3d-i10s && yarn convert-i10s-png-to-webp && yarn generate-i10s-metadata && yarn load-flags && yarn bundle && yarn cleanup",
36
+ "build": "yarn load-i10s && yarn load-3d-i10s && yarn convert-i10s-png-to-webp && yarn generate-i10s-metadata && yarn load-flags && yarn bundle && yarn generate-iconsfont && yarn cleanup",
37
37
  "start": "storybook dev -p 3001",
38
38
  "dev": "yarn start",
39
- "test": "jest && release-to-github-with-changelog-pre-release-checks",
39
+ "test": "jest",
40
40
  "lint-fix": "eslint 'src/**/*.{js,ts,tsx}' 'scripts/*.{mjs,js,ts,tsx}' --fix",
41
- "build-docs": "storybook build -o docs && touch ./docs/.nojekyll"
41
+ "build-docs": "storybook build -o docs && touch ./docs/.nojekyll",
42
+ "build-styles": "postcss src/index.css -o dist/Illustration.css && copyfiles -u 3 src/icons/font/Wise-Icons.woff2 dist/",
43
+ "generate-iconsfont": "mkdir -p ./src/icons/font && fantasticon"
42
44
  },
43
45
  "dependencies": {
44
46
  "@babel/runtime": "^7.22.15",
@@ -49,6 +51,7 @@
49
51
  "@react-three/drei": "^9.96.4"
50
52
  },
51
53
  "devDependencies": {
54
+ "@twbs/fantasticon": "^2.7.2",
52
55
  "@babel/core": "^7.22.15",
53
56
  "@babel/plugin-transform-runtime": "^7.22.15",
54
57
  "@babel/preset-env": "^7.22.15",
@@ -73,6 +76,10 @@
73
76
  "@types/react": "^18.2.21",
74
77
  "@types/react-dom": "^18.2.7",
75
78
  "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",
76
83
  "copyfiles": "^2.4.1",
77
84
  "cpx": "^1.5.0",
78
85
  "eslint": "^8.48.0",
@@ -0,0 +1,13 @@
1
+ .wds-icon {
2
+ display: block;
3
+ font-size: 16px;
4
+ }
5
+
6
+ .wds-icon-size-24 {
7
+ font-size: 24px;
8
+ }
9
+
10
+ /* fallback to fast flag icon */
11
+ .wds-icon::before {
12
+ content: "\f14a";
13
+ }
@@ -0,0 +1,26 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import { Person, StarFill } from '@transferwise/icons';
3
+
4
+ import Icon from './Icon';
5
+
6
+ const meta: Meta<typeof Icon> = {
7
+ title: 'Icon',
8
+ };
9
+ export default meta;
10
+
11
+ type Story = StoryObj<typeof Icon>;
12
+
13
+ export const Basic: Story = {
14
+ render: (args) => (
15
+ <>
16
+ <div style={{ color: 'green' }}>
17
+ 24px: <Icon name="person" size="24" /> <Person size="24" />
18
+ 24px: <Icon name="star" size="24" filled /> <StarFill size="24" />
19
+ </div>
20
+ <div style={{ color: 'orange' }}>
21
+ 16px: <Icon name="person" /> <Person />
22
+ 16px: <Icon name="star" filled /> <StarFill />
23
+ </div>
24
+ </>
25
+ ),
26
+ };
@@ -0,0 +1,37 @@
1
+ import { clsx } from 'clsx';
2
+ import type { AriaRole } from 'react';
3
+
4
+ export type Props = {
5
+ name: string;
6
+ size?: 16 | 24 | '16' | '24';
7
+ className?: string;
8
+ 'data-testid'?: string;
9
+ title?: string;
10
+ role?: AriaRole;
11
+ filled?: boolean;
12
+ };
13
+
14
+ const Icon = ({
15
+ name,
16
+ size = 16,
17
+ className = undefined,
18
+ filled = false,
19
+ 'data-testid': testId,
20
+ title = undefined,
21
+ role = undefined,
22
+ }: Props) => {
23
+ const nameSelector = filled ? `${name}-fill` : name;
24
+ const sizeSelector = [24, '24'].includes(size) ? 'wds-icon-size-24' : null;
25
+ return (
26
+ <span
27
+ className={clsx('wds-icon', `wds-icon-${nameSelector}`, sizeSelector, className)}
28
+ aria-hidden={title ? undefined : true}
29
+ role={role ?? (title ? undefined : 'none')}
30
+ data-testid={testId}
31
+ >
32
+ {title && <span className="sr-only">{title}</span>}
33
+ </span>
34
+ );
35
+ };
36
+
37
+ export default Icon;