@wise/art 2.5.0-beta.1 → 2.5.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 (68) hide show
  1. package/dist/CheckMarkModel-8e205e14.js +2 -0
  2. package/dist/{CheckMarkModel-00577d55.js.map → CheckMarkModel-8e205e14.js.map} +1 -1
  3. package/dist/{CheckMarkModel-91d303f1.js → CheckMarkModel-919049a6.js} +2 -2
  4. package/dist/{CheckMarkModel-91d303f1.js.map → CheckMarkModel-919049a6.js.map} +1 -1
  5. package/dist/{ConfettiModel-78ef5fb8.js → ConfettiModel-a18f25b8.js} +2 -2
  6. package/dist/{ConfettiModel-78ef5fb8.js.map → ConfettiModel-a18f25b8.js.map} +1 -1
  7. package/dist/ConfettiModel-ef46f63e.js +2 -0
  8. package/dist/{ConfettiModel-9e208122.js.map → ConfettiModel-ef46f63e.js.map} +1 -1
  9. package/dist/{FlowerModel-148cdedd.js → FlowerModel-81e39017.js} +2 -2
  10. package/dist/{FlowerModel-148cdedd.js.map → FlowerModel-81e39017.js.map} +1 -1
  11. package/dist/{FlowerModel-de915bfb.js → FlowerModel-cdcc8aa5.js} +2 -2
  12. package/dist/{FlowerModel-de915bfb.js.map → FlowerModel-cdcc8aa5.js.map} +1 -1
  13. package/dist/{GlobeModel-4e9a5c3e.js → GlobeModel-09c89fa7.js} +2 -2
  14. package/dist/{GlobeModel-4e9a5c3e.js.map → GlobeModel-09c89fa7.js.map} +1 -1
  15. package/dist/{GlobeModel-2e49e4ee.js → GlobeModel-97c1b902.js} +2 -2
  16. package/dist/{GlobeModel-2e49e4ee.js.map → GlobeModel-97c1b902.js.map} +1 -1
  17. package/dist/{GraphModel-e78eb37d.js → GraphModel-3e32609d.js} +2 -2
  18. package/dist/{GraphModel-e78eb37d.js.map → GraphModel-3e32609d.js.map} +1 -1
  19. package/dist/{GraphModel-e41b50d9.js → GraphModel-93cb7194.js} +2 -2
  20. package/dist/{GraphModel-e41b50d9.js.map → GraphModel-93cb7194.js.map} +1 -1
  21. package/dist/{JarsModel-a3b76034.js → JarsModel-7fd632bc.js} +2 -2
  22. package/dist/{JarsModel-a3b76034.js.map → JarsModel-7fd632bc.js.map} +1 -1
  23. package/dist/{JarsModel-1848e98e.js → JarsModel-8f18b06b.js} +2 -2
  24. package/dist/{JarsModel-1848e98e.js.map → JarsModel-8f18b06b.js.map} +1 -1
  25. package/dist/{LockModel-3b21325c.js → LockModel-96f34637.js} +2 -2
  26. package/dist/{LockModel-3b21325c.js.map → LockModel-96f34637.js.map} +1 -1
  27. package/dist/{LockModel-49a70b69.js → LockModel-db18eaa0.js} +2 -2
  28. package/dist/{LockModel-49a70b69.js.map → LockModel-db18eaa0.js.map} +1 -1
  29. package/dist/{MagnifyingGlassModel-76181ce6.js → MagnifyingGlassModel-9585c9ad.js} +2 -2
  30. package/dist/{MagnifyingGlassModel-76181ce6.js.map → MagnifyingGlassModel-9585c9ad.js.map} +1 -1
  31. package/dist/{MagnifyingGlassModel-6f4ffd2f.js → MagnifyingGlassModel-9ffa4d33.js} +2 -2
  32. package/dist/{MagnifyingGlassModel-6f4ffd2f.js.map → MagnifyingGlassModel-9ffa4d33.js.map} +1 -1
  33. package/dist/{MarbleCardModel-ce65414d.js → MarbleCardModel-23175598.js} +2 -2
  34. package/dist/{MarbleCardModel-ce65414d.js.map → MarbleCardModel-23175598.js.map} +1 -1
  35. package/dist/{MarbleCardModel-81bd47fa.js → MarbleCardModel-7a3b7f47.js} +2 -2
  36. package/dist/{MarbleCardModel-81bd47fa.js.map → MarbleCardModel-7a3b7f47.js.map} +1 -1
  37. package/dist/{MarbleModel-5b73d61c.js → MarbleModel-1d242b36.js} +2 -2
  38. package/dist/{MarbleModel-5b73d61c.js.map → MarbleModel-1d242b36.js.map} +1 -1
  39. package/dist/{MarbleModel-6d9c2e6f.js → MarbleModel-23c0126f.js} +2 -2
  40. package/dist/{MarbleModel-6d9c2e6f.js.map → MarbleModel-23c0126f.js.map} +1 -1
  41. package/dist/{MultiCurrencyModel-48138493.js → MultiCurrencyModel-13bc39e6.js} +2 -2
  42. package/dist/{MultiCurrencyModel-48138493.js.map → MultiCurrencyModel-13bc39e6.js.map} +1 -1
  43. package/dist/{MultiCurrencyModel-b366cd40.js → MultiCurrencyModel-5dcd8947.js} +2 -2
  44. package/dist/{MultiCurrencyModel-b366cd40.js.map → MultiCurrencyModel-5dcd8947.js.map} +1 -1
  45. package/dist/{PlaneModel-e2a4fba0.js → PlaneModel-e34642fb.js} +2 -2
  46. package/dist/{PlaneModel-e2a4fba0.js.map → PlaneModel-e34642fb.js.map} +1 -1
  47. package/dist/{PlaneModel-a8dc239b.js → PlaneModel-f607a661.js} +2 -2
  48. package/dist/{PlaneModel-a8dc239b.js.map → PlaneModel-f607a661.js.map} +1 -1
  49. package/dist/{Scene-fcb0793e.js → Scene-00daeda3.js} +2 -2
  50. package/dist/{Scene-fcb0793e.js.map → Scene-00daeda3.js.map} +1 -1
  51. package/dist/{Scene-338de388.js → Scene-4336521c.js} +2 -2
  52. package/dist/{Scene-338de388.js.map → Scene-4336521c.js.map} +1 -1
  53. package/dist/illustrations3d/index.d.ts +1 -0
  54. package/dist/illustrations3d/utils.d.ts +2 -0
  55. package/dist/index-09633b41.js +2 -0
  56. package/dist/index-09633b41.js.map +1 -0
  57. package/dist/index-560ede9d.js +2 -0
  58. package/dist/index-560ede9d.js.map +1 -0
  59. package/dist/index.d.ts +1 -0
  60. package/dist/index.js +1 -1
  61. package/dist/index.module.js +1 -1
  62. package/package.json +20 -22
  63. package/dist/CheckMarkModel-00577d55.js +0 -2
  64. package/dist/ConfettiModel-9e208122.js +0 -2
  65. package/dist/index-10935fb1.js +0 -2
  66. package/dist/index-10935fb1.js.map +0 -1
  67. package/dist/index-b9b0a6b6.js +0 -2
  68. package/dist/index-b9b0a6b6.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-b9b0a6b6.js","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations3d/Illustration3d.tsx","../src/flags/Flag.tsx","../src/illustrations3d/utils.ts"],"sourcesContent":["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 classNames from 'classnames';\nimport React, { forwardRef, ImgHTMLAttributes } from 'react';\n\nimport { LargeSize, MediumSize, SmallSize, Descriptors, Sizes } from './../common';\nimport { 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<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 ?? name.replace('-', ' ')}\n data-testid={`wds-${name}-illustration`}\n className={classNames(\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\nexport enum Assets {\n BELL = 'bell',\n BRIEFCASE = 'briefcase',\n BUSINESS_CARD = 'business-card',\n CALENDAR = 'calendar',\n CHECK_MARK = 'check-mark',\n CLOSED_WINDOW = 'closed-window',\n COIN_PILE_DOWN = 'coin-pile-down',\n COIN_PILE_UP = 'coin-pile-up',\n CONFETTI = 'confetti',\n CONSTRUCTION_FENCE = 'construction-fence',\n CONVERT = 'convert',\n COOKIE = 'cookie',\n DIGITAL_CARD_2 = 'digital-card-2',\n DIGITAL_CARD = 'digital-card',\n DOCUMENTS = 'documents',\n DOOR = 'door',\n ECO_CARD = 'eco-card',\n ELECTRIC_PLUG = 'electric-plug',\n EMAIL_SUCCESS = 'email-success',\n EMAIL = 'email',\n EXCLAMATION_MARK = 'exclamation-mark',\n FLAG = 'flag',\n FLOWER = 'flower',\n GEAR = 'gear',\n GLOBE = 'globe',\n GRAPH = 'graph',\n HEART_2 = 'heart-2',\n HEART_3 = 'heart-3',\n HEART_4 = 'heart-4',\n HEART_5 = 'heart-5',\n HEART = 'heart',\n HOUSE = 'house',\n ID_CARD = 'id-card',\n INFINITE = 'infinite',\n INVITE_LETTER = 'invite-letter',\n JARS = 'jars',\n KEY = 'key',\n LIGHT_BULB = 'light-bulb',\n LOCK = 'lock',\n MAGNIFYING_GLASS = 'magnifying-glass',\n MAP = 'map',\n MARBLE_CARD_BUSINESS = 'marble-card-business',\n MARBLE_CARD = 'marble-card',\n MARBLE = 'marble',\n MEGAPHONE = 'megaphone',\n MULTI_CURRENCY = 'multi-currency',\n ONE_INVITE_LETTER_OPENED = 'one-invite-letter-opened',\n PALM_TREE = 'palm-tree',\n PERCENTAGE = 'percentage',\n PERSONAL_CARD = 'personal-card',\n PHONES = 'phones',\n PIE_CHART = 'pie-chart',\n PLANE_2 = 'plane-2',\n PLANE = 'plane',\n PUZZLE_PIECES = 'puzzle-pieces',\n QUESTION_MARK = 'question-mark',\n RECEIVE = 'receive',\n REMINDER_LETTER = 'reminder-letter',\n SAND_TIMER = 'sand-timer',\n SHOPPING_BAG = 'shopping-bag',\n SKIP_AUTHENTICATION = 'skip-authentication',\n SPEECH_BUBBLE = 'speech-bubble',\n TOOL = 'tool',\n TWO_INVITE_LETTERS_OPENED = 'two-invite-letters-opened',\n WALLET = 'wallet',\n}\n\nexport type IllustrationNames =\n | 'bell'\n | 'briefcase'\n | 'business-card'\n | 'calendar'\n | 'check-mark'\n | 'closed-window'\n | 'coin-pile-down'\n | 'coin-pile-up'\n | 'confetti'\n | 'construction-fence'\n | 'convert'\n | 'cookie'\n | 'digital-card-2'\n | 'digital-card'\n | 'documents'\n | 'door'\n | 'eco-card'\n | 'electric-plug'\n | 'email-success'\n | 'email'\n | 'exclamation-mark'\n | 'flag'\n | 'flower'\n | 'gear'\n | 'globe'\n | 'graph'\n | 'heart-2'\n | 'heart-3'\n | 'heart-4'\n | 'heart-5'\n | 'heart'\n | 'house'\n | 'id-card'\n | 'infinite'\n | 'invite-letter'\n | 'jars'\n | 'key'\n | 'light-bulb'\n | 'lock'\n | 'magnifying-glass'\n | 'map'\n | 'marble-card-business'\n | 'marble-card'\n | 'marble'\n | 'megaphone'\n | 'multi-currency'\n | 'one-invite-letter-opened'\n | 'palm-tree'\n | 'percentage'\n | 'personal-card'\n | 'phones'\n | 'pie-chart'\n | 'plane-2'\n | 'plane'\n | 'puzzle-pieces'\n | 'question-mark'\n | 'receive'\n | 'reminder-letter'\n | 'sand-timer'\n | 'shopping-bag'\n | 'skip-authentication'\n | 'speech-bubble'\n | 'tool'\n | 'two-invite-letters-opened'\n | 'wallet';\n","/* eslint-disable fp/no-mutation */\n/* eslint-disable react/forbid-dom-props */\n/* eslint-disable react/destructuring-assignment */\n/* eslint-disable @typescript-eslint/restrict-template-expressions */\nimport classNames from 'classnames';\nimport React, { lazy, Suspense, useEffect, useState, LazyExoticComponent } from 'react';\n\nimport { LargeSize, MediumSize, SmallSize, Sizes } from '../common';\n\nimport Illustration, { Assets } from './../illustrations';\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 batteryData = useBattery();\n\n useEffect(() => {\n setRenderMode(\n isConnectionSlow() || isBatteryLow(batteryData.level)\n ? RenderMode.FALLBACK\n : RenderMode.ASSET_3D,\n );\n }, [batteryData]);\n\n const isMobile: boolean = window.matchMedia('(max-width: 575px)').matches;\n const defineSize: Props['size'] = isMobile ? Sizes.SMALL : size;\n\n return (\n <div className={classNames('wds-illustration-3d', `wds-illustration-3d-${name}`, className)}>\n {renderMode === RenderMode.INIT ? null : renderMode === RenderMode.ASSET_3D ? (\n <Suspense fallback={null}>{getModel({ name, size: defineSize })}</Suspense>\n ) : (\n <Illustration name={name} size={size} alt=\"\" />\n )}\n </div>\n );\n};\n\nfunction getModel({ name, size }: Props) {\n // @ts-expect-error later\n let Model: LazyExoticComponent = <></>;\n const Scene = lazy(() => import('./Scene'));\n switch (name) {\n case Assets.LOCK: {\n Model = lazy(() => import('./LockModel'));\n break;\n }\n case Assets.GLOBE: {\n Model = lazy(() => import('./GlobeModel'));\n break;\n }\n case Assets.CONFETTI: {\n Model = lazy(() => import('./ConfettiModel'));\n break;\n }\n case Assets.CHECK_MARK: {\n Model = lazy(() => import('./CheckMarkModel'));\n break;\n }\n case Assets.FLOWER: {\n Model = lazy(() => import('./FlowerModel'));\n break;\n }\n case Assets.PLANE: {\n Model = lazy(() => import('./PlaneModel'));\n break;\n }\n case Assets.GRAPH: {\n Model = lazy(() => import('./GraphModel'));\n break;\n }\n case Assets.MARBLE: {\n Model = lazy(() => import('./MarbleModel'));\n break;\n }\n case Assets.MARBLE_CARD: {\n Model = lazy(() => import('./MarbleCardModel'));\n break;\n }\n case Assets.MAGNIFYING_GLASS: {\n Model = lazy(() => import('./MagnifyingGlassModel'));\n break;\n }\n case Assets.JARS: {\n Model = lazy(() => import('./JarsModel'));\n break;\n }\n case Assets.MULTI_CURRENCY: {\n Model = lazy(() => import('./MultiCurrencyModel'));\n break;\n }\n }\n return (\n <Scene assetName={name} size={size}>\n <Model />\n </Scene>\n );\n}\n\nexport default Illustration3d;\n","import { 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}\n\nconst unknownFlagName = 'wise';\n\nexport const Flag = ({ code, intrinsicSize = 64 }: 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 src={`https://wise.com/web-art/assets/flags/${name}.svg`}\n alt=\"\"\n width={intrinsicSize}\n height={intrinsicSize}\n onError={() => {\n setFallback((prev) => (prev == null && detailed ? 'simple' : 'unknown'));\n }}\n />\n );\n};\n","import { useState, useEffect } from 'react';\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 ('getBattery' in navigator) {\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 console.log('connection API is unsupported');\n return false;\n }\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n console.log('do internet check', connection?.effectiveType);\n return (\n ['slow-2g', '2g'].includes(connection?.effectiveType as string) ||\n // @ts-expect-error later\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"],"names":["_ImageSizes","Sizes","ImageSizes","_imageSizes","Assets","RenderMode","SMALL","MEDIUM","LARGE","imageSizes","Illustration","forwardRef","ref","id","name","_ref","alt","loading","_ref$loading","className","size","_ref$size","disablePadding","_ref$disablePadding","React","createElement","Fragment","width","height","media","srcSet","defineSrc","replace","classNames","src","illustration","descriptor","code","intrinsicSize","_ref$intrinsicSize","_useState","useState","fallback","setFallback","useEffect","detailed","toLowerCase","onError","prev","INIT","renderMode","setRenderMode","batteryData","level","setBatteryData","navigator","getBattery","then","battery","e","Promise","reject","getBatteryData","useBattery","_navigator","_navigator$connection","connection","undefined","window","console","log","effectiveType","includes","saveData","FALLBACK","ASSET_3D","defineSize","matchMedia","matches","Suspense","_ref2","Model","Scene","lazy","resolve","require","LOCK","GLOBE","CONFETTI","CHECK_MARK","FLOWER","PLANE","GRAPH","MARBLE","MARBLE_CARD","MAGNIFYING_GLASS","JARS","MULTI_CURRENCY","assetName","getModel","asset"],"mappings":"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"}