@wise/art 0.0.0-experimental-662a539 → 0.0.0-experimental-d56763d

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Illustration3D.d.ts","sourceRoot":"","sources":["../../src/illustrations3d/Illustration3D.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAS,MAAM,WAAW,CAAC;AAEpE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAIpC,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAQF,QAAA,MAAM,cAAc,GAAI,2BAA0C,KAAK,gCAmCtE,CAAC;AAmEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"Illustration3D.d.ts","sourceRoot":"","sources":["../../src/illustrations3d/Illustration3D.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAS,MAAM,WAAW,CAAC;AAEpE,OAAO,EAAU,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC7E,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAIpC,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAQF,QAAA,MAAM,cAAc,GAAI,2BAA0C,KAAK,gCAmCtE,CAAC;AAmEF,eAAe,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index-BxolAMHh.esm.js","sources":["../src/flags/metadata.ts","../src/flags/Flag.tsx","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations3d/utils.ts","../src/illustrations3d/Illustration3D.tsx"],"sourcesContent":["/*\n *\n * DON'T MODIFY THIS FILE IT'S AUTO GENERATED\n * See: `scripts/generate-flags-metadata.mjs`\n *\n */\n\n\n export const DETAILED_FLAG_CODES = ['zm', 'va', 'uy', 'us', 'ug', 'tw', 'tv', 'tm', 'sv', 'sm', 'si', 'sg', 'py', 'pt', 'ph', 'pe', 'pa', 'om', 'nz', 'np', 'ni', 'mz', 'my', 'mx', 'mt', 'mh', 'md', 'ls', 'lk', 'li', 'ki', 'ke', 'je', 'in', 'im', 'hr', 'hn', 'hm', 'hk', 'gt', 'gi', 'gg', 'fj', 'eur', 'es', 'eg', 'do', 'cn', 'by', 'br', 'bn', 'bf', 'ba', 'az', 'au', 'ar', 'an', 'am', 'al', 'ad'];","import { clsx } from 'clsx';\nimport { useEffect, useState } from 'react';\n\nimport { DETAILED_FLAG_CODES } from './metadata';\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 // Only get detailed svg if we know it exists, to avoid the performance hit of failing requests\n const name =\n fallback !== 'unknown'\n ? `${code.toLowerCase()}${\n fallback == null &&\n detailed &&\n DETAILED_FLAG_CODES.includes(code.toLowerCase())\n ? '-detailed'\n : ''\n }`\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) =>\n prev == null && detailed ? 'simple' : 'unknown',\n );\n }}\n />\n );\n};\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_BUSINESS = 'sand-timer-business',SAND_TIMER = 'sand-timer',REMINDER_LETTER = 'reminder-letter',RED_PACKET = 'red-packet',RECEIVE_BUSINESS = 'receive-business',RECEIVE = 'receive',QUESTION_MARK_BUSINESS = 'question-mark-business',QUESTION_MARK = 'question-mark',PUZZLE_PIECES_BUSINESS = 'puzzle-pieces-business',PUZZLE_PIECES = 'puzzle-pieces',PLANE_BUSINESS = 'plane-business',PLANE_2 = 'plane-2',PLANE = 'plane',PIE_CHART_BUSINESS = 'pie-chart-business',PIE_CHART = 'pie-chart',PHONES = 'phones',PERSONAL_CARD = 'personal-card',PERCENTAGE_BUSINESS = 'percentage-business',PERCENTAGE = 'percentage',PASSKEY = 'passkey',PALM_TREE = 'palm-tree',ONE_INVITE_LETTER_OPENED = 'one-invite-letter-opened',MULTI_CURRENCY_BUSINESS = 'multi-currency-business',MULTI_CURRENCY = 'multi-currency',MEGAPHONE = 'megaphone',MARBLE_CARD_FLAG_ONLY_BUSINESS = 'marble-card-flag-only-business',MARBLE_CARD_FLAG_ONLY = 'marble-card-flag-only',MARBLE_CARD_BUSINESS_FLAG_ONLY = 'marble-card-business-flag-only',MARBLE_CARD_BUSINESS = 'marble-card-business',MARBLE_CARD = 'marble-card',MARBLE_BUSINESS = 'marble-business',MARBLE = 'marble',MAP = 'map',MAGNIFYING_GLASS_BUSINESS = 'magnifying-glass-business',MAGNIFYING_GLASS = 'magnifying-glass',LOCK_PLATFORM = 'lock-platform',LOCK_BUSINESS = 'lock-business',LOCK = 'lock',LIGHT_BULB_BUSINESS = 'light-bulb-business',LIGHT_BULB = 'light-bulb',KEY_BUSINESS = 'key-business',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',HEADSET_BUSINESS = 'headset-business',HEADSET = 'headset',GRAPH_BUSINESS = 'graph-business',GRAPH = 'graph',GLOBE = 'globe',GIFT_BOX = 'gift-box',GET_PAID_WITH_CARD_BUSINESS = 'get-paid-with-card-business',GEAR_BUSINESS = 'gear-business',GEAR = 'gear',FLOWER = 'flower',FLAG = 'flag',EXCLAMATION_MARK_BUSINESS = 'exclamation-mark-business',EXCLAMATION_MARK = 'exclamation-mark',EMAIL_SUCCESS_BUSINESS = 'email-success-business',EMAIL_SUCCESS = 'email-success',EMAIL = 'email',ELECTRIC_PLUG = 'electric-plug',ECO_CARD = 'eco-card',DOOR = 'door',DOCUMENTS_FOLDER_BUSINESS = 'documents-folder-business',DOCUMENTS = 'documents',DIGITAL_CARD_BUSINESS = 'digital-card-business',DIGITAL_CARD_2 = 'digital-card-2',DIGITAL_CARD = 'digital-card',COOKIE = 'cookie',CONVERT_BUSINESS = 'convert-business',CONVERT = 'convert',CONSTRUCTION_FENCE = 'construction-fence',CONFETTI_BUSINESS = 'confetti-business',CONFETTI = 'confetti',COIN_PILE_UP_BUSINESS = 'coin-pile-up-business',COIN_PILE_UP = 'coin-pile-up',COIN_PILE_DOWN_BUSINESS = 'coin-pile-down-business',COIN_PILE_DOWN = 'coin-pile-down',CLOSED_WINDOW = 'closed-window',CHECK_MARK_BUSINESS = 'check-mark-business',CHECK_MARK = 'check-mark',CALENDAR_BUSINESS = 'calendar-business',CALENDAR = 'calendar',CALCULATOR_BUSINESS = 'calculator-business',BUSINESS_CARD_BUSINESS = 'business-card-business',BUSINESS_CARD = 'business-card',BRIEFCASE_BUSINESS = 'briefcase-business',BRIEFCASE = 'briefcase',BELL_BUSINESS = 'bell-business',BELL = 'bell',BATCH_PAYMENTS_BUSINESS = 'batch-payments-business',BACKPACK = 'backpack',APP_MARKETPLACE_BUSINESS = 'app-marketplace-business',API_INTEGRATIONS_BUSINESS = 'api-integrations-business'\n }\n\n export const illustrationNames = ['wallet', 'two-invite-letters-opened', 'tool', 'target-platform', 'stopwatch-platform', 'speech-bubble', 'skip-authentication', 'shopping-bag', 'satellite-platform', 'sand-timer-business', 'sand-timer', 'reminder-letter', 'red-packet', 'receive-business', 'receive', 'question-mark-business', 'question-mark', 'puzzle-pieces-business', 'puzzle-pieces', 'plane-business', 'plane-2', 'plane', 'pie-chart-business', 'pie-chart', 'phones', 'personal-card', 'percentage-business', 'percentage', 'passkey', 'palm-tree', 'one-invite-letter-opened', 'multi-currency-business', 'multi-currency', 'megaphone', 'marble-card-flag-only-business', 'marble-card-flag-only', 'marble-card-business-flag-only', 'marble-card-business', 'marble-card', 'marble-business', 'marble', 'map', 'magnifying-glass-business', 'magnifying-glass', 'lock-platform', 'lock-business', 'lock', 'light-bulb-business', 'light-bulb', 'key-business', 'key', 'jars', 'invite-letter', 'interest', 'infinite', 'id-card', 'house', 'heart-5', 'heart-4', 'heart-3', 'heart-2', 'heart', 'headset-business', 'headset', 'graph-business', 'graph', 'globe', 'gift-box', 'get-paid-with-card-business', 'gear-business', 'gear', 'flower', 'flag', 'exclamation-mark-business', 'exclamation-mark', 'email-success-business', 'email-success', 'email', 'electric-plug', 'eco-card', 'door', 'documents-folder-business', 'documents', 'digital-card-business', 'digital-card-2', 'digital-card', 'cookie', 'convert-business', 'convert', 'construction-fence', 'confetti-business', 'confetti', 'coin-pile-up-business', 'coin-pile-up', 'coin-pile-down-business', 'coin-pile-down', 'closed-window', 'check-mark-business', 'check-mark', 'calendar-business', 'calendar', 'calculator-business', 'business-card-business', 'business-card', 'briefcase-business', 'briefcase', 'bell-business', 'bell', 'batch-payments-business', 'backpack', 'app-marketplace-business', 'api-integrations-business'] as const;\n\n export type IllustrationNames = typeof illustrationNames[number];\n\n export const illustration3DNames = ['check-mark', 'confetti', 'flower', 'globe', 'graph', 'interest', 'jars', 'lock', 'magnifying-glass', 'marble', 'marble-card', 'multi-currency', 'plane'] as const;\n\n export type Illustration3DNames = typeof illustration3DNames[number];","import { useState, useEffect } from 'react';\n\nimport { illustration3DNames, 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 const isWebGL2Available = () => {\n try {\n const canvas = document.createElement('canvas');\n return !!(window.WebGL2RenderingContext && canvas.getContext('webgl2'));\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (e) {\n return false;\n }\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\nexport function isIllustrationSupport3D(asset: IllustrationNames): boolean {\n return (illustration3DNames as readonly string[]).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';\nimport { type Illustration3DNames } from '../illustrations/metadata';\nexport type { Illustration3DNames };\n\nimport { useBattery, isConnectionSlow, isBatteryLow, isWebGL2Available } from './utils';\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) || !isWebGL2Available()\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(async () => import('./Scene'));\n switch (name) {\n case Assets.LOCK: {\n Model = lazy(async () => import('./models/Lock'));\n break;\n }\n case Assets.GLOBE: {\n Model = lazy(async () => import('./models/Globe'));\n break;\n }\n case Assets.CONFETTI: {\n Model = lazy(async () => import('./models/Confetti'));\n break;\n }\n case Assets.CHECK_MARK: {\n Model = lazy(async () => import('./models/CheckMark'));\n break;\n }\n case Assets.FLOWER: {\n Model = lazy(async () => import('./models/Flower'));\n break;\n }\n case Assets.PLANE: {\n Model = lazy(async () => import('./models/Plane'));\n break;\n }\n case Assets.GRAPH: {\n Model = lazy(async () => import('./models/Graph'));\n break;\n }\n case Assets.MARBLE: {\n Model = lazy(async () => import('./models/Marble'));\n break;\n }\n case Assets.MARBLE_CARD: {\n Model = lazy(async () => import('./models/MarbleCard'));\n break;\n }\n case Assets.MAGNIFYING_GLASS: {\n Model = lazy(async () => import('./models/MagnifyingGlass'));\n break;\n }\n case Assets.JARS: {\n Model = lazy(async () => import('./models/Jars'));\n break;\n }\n case Assets.MULTI_CURRENCY: {\n Model = lazy(async () => import('./models/MultiCurrency'));\n break;\n }\n case Assets.INTEREST: {\n Model = lazy(async () => import('./models/Interest'));\n break;\n }\n }\n return (\n <Scene assetName={name} size={size}>\n <Model />\n </Scene>\n );\n}\n\nexport default Illustration3D;\n"],"names":["DETAILED_FLAG_CODES","unknownFlagName","Flag","code","intrinsicSize","className","undefined","loading","fallback","setFallback","useState","useEffect","detailed","name","toLowerCase","includes","_jsx","clsx","src","process","env","NODE_ENV","alt","width","height","onError","prev","imageSizes","Sizes","SMALL","MEDIUM","LARGE","Illustration","forwardRef","id","size","disablePadding","ref","_jsxs","children","_Fragment","media","srcSet","defineSrc","illustration","descriptor","Assets","illustration3DNames","useBattery","batteryData","setBatteryData","level","getBatteryData","battery","navigator","getBattery","isBatteryLow","batteryLevel","isWebGL2Available","canvas","document","createElement","window","WebGL2RenderingContext","getContext","e","isConnectionSlow","connection","effectiveType","saveData","asset","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","INTEREST","assetName"],"mappings":"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"}
1
+ {"version":3,"file":"index-BxolAMHh.esm.js","sources":["../src/flags/metadata.ts","../src/flags/Flag.tsx","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations3d/utils.ts","../src/illustrations3d/Illustration3D.tsx"],"sourcesContent":["/*\n *\n * DON'T MODIFY THIS FILE IT'S AUTO GENERATED\n * See: `scripts/generate-flags-metadata.mjs`\n *\n */\n\n\n export const DETAILED_FLAG_CODES = ['zm', 'va', 'uy', 'us', 'ug', 'tw', 'tv', 'tm', 'sv', 'sm', 'si', 'sg', 'py', 'pt', 'ph', 'pe', 'pa', 'om', 'nz', 'np', 'ni', 'mz', 'my', 'mx', 'mt', 'mh', 'md', 'ls', 'lk', 'li', 'ki', 'ke', 'je', 'in', 'im', 'hr', 'hn', 'hm', 'hk', 'gt', 'gi', 'gg', 'fj', 'eur', 'es', 'eg', 'do', 'cn', 'by', 'br', 'bn', 'bf', 'ba', 'az', 'au', 'ar', 'an', 'am', 'al', 'ad'];","import { clsx } from 'clsx';\nimport { useEffect, useState } from 'react';\n\nimport { DETAILED_FLAG_CODES } from './metadata';\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 // Only get detailed svg if we know it exists, to avoid the performance hit of failing requests\n const name =\n fallback !== 'unknown'\n ? `${code.toLowerCase()}${\n fallback == null &&\n detailed &&\n DETAILED_FLAG_CODES.includes(code.toLowerCase())\n ? '-detailed'\n : ''\n }`\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) =>\n prev == null && detailed ? 'simple' : 'unknown',\n );\n }}\n />\n );\n};\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_BUSINESS = 'sand-timer-business',SAND_TIMER = 'sand-timer',REMINDER_LETTER = 'reminder-letter',RED_PACKET = 'red-packet',RECEIVE_BUSINESS = 'receive-business',RECEIVE = 'receive',QUESTION_MARK_BUSINESS = 'question-mark-business',QUESTION_MARK = 'question-mark',PUZZLE_PIECES_BUSINESS = 'puzzle-pieces-business',PUZZLE_PIECES = 'puzzle-pieces',PLANE_BUSINESS = 'plane-business',PLANE_2 = 'plane-2',PLANE = 'plane',PIE_CHART_BUSINESS = 'pie-chart-business',PIE_CHART = 'pie-chart',PHONES = 'phones',PERSONAL_CARD = 'personal-card',PERCENTAGE_BUSINESS = 'percentage-business',PERCENTAGE = 'percentage',PASSKEY = 'passkey',PALM_TREE = 'palm-tree',ONE_INVITE_LETTER_OPENED = 'one-invite-letter-opened',MULTI_CURRENCY_BUSINESS = 'multi-currency-business',MULTI_CURRENCY = 'multi-currency',MEGAPHONE = 'megaphone',MARBLE_CARD_FLAG_ONLY_BUSINESS = 'marble-card-flag-only-business',MARBLE_CARD_FLAG_ONLY = 'marble-card-flag-only',MARBLE_CARD_BUSINESS_FLAG_ONLY = 'marble-card-business-flag-only',MARBLE_CARD_BUSINESS = 'marble-card-business',MARBLE_CARD = 'marble-card',MARBLE_BUSINESS = 'marble-business',MARBLE = 'marble',MAP = 'map',MAGNIFYING_GLASS_BUSINESS = 'magnifying-glass-business',MAGNIFYING_GLASS = 'magnifying-glass',LOCK_PLATFORM = 'lock-platform',LOCK_BUSINESS = 'lock-business',LOCK = 'lock',LIGHT_BULB_BUSINESS = 'light-bulb-business',LIGHT_BULB = 'light-bulb',KEY_BUSINESS = 'key-business',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',HEADSET_BUSINESS = 'headset-business',HEADSET = 'headset',GRAPH_BUSINESS = 'graph-business',GRAPH = 'graph',GLOBE = 'globe',GIFT_BOX = 'gift-box',GET_PAID_WITH_CARD_BUSINESS = 'get-paid-with-card-business',GEAR_BUSINESS = 'gear-business',GEAR = 'gear',FLOWER = 'flower',FLAG = 'flag',EXCLAMATION_MARK_BUSINESS = 'exclamation-mark-business',EXCLAMATION_MARK = 'exclamation-mark',EMAIL_SUCCESS_BUSINESS = 'email-success-business',EMAIL_SUCCESS = 'email-success',EMAIL = 'email',ELECTRIC_PLUG = 'electric-plug',ECO_CARD = 'eco-card',DOOR = 'door',DOCUMENTS_FOLDER_BUSINESS = 'documents-folder-business',DOCUMENTS = 'documents',DIGITAL_CARD_BUSINESS = 'digital-card-business',DIGITAL_CARD_2 = 'digital-card-2',DIGITAL_CARD = 'digital-card',COOKIE = 'cookie',CONVERT_BUSINESS = 'convert-business',CONVERT = 'convert',CONSTRUCTION_FENCE = 'construction-fence',CONFETTI_BUSINESS = 'confetti-business',CONFETTI = 'confetti',COIN_PILE_UP_BUSINESS = 'coin-pile-up-business',COIN_PILE_UP = 'coin-pile-up',COIN_PILE_DOWN_BUSINESS = 'coin-pile-down-business',COIN_PILE_DOWN = 'coin-pile-down',CLOSED_WINDOW = 'closed-window',CHECK_MARK_BUSINESS = 'check-mark-business',CHECK_MARK = 'check-mark',CALENDAR_BUSINESS = 'calendar-business',CALENDAR = 'calendar',CALCULATOR_BUSINESS = 'calculator-business',BUSINESS_CARD_BUSINESS = 'business-card-business',BUSINESS_CARD = 'business-card',BRIEFCASE_BUSINESS = 'briefcase-business',BRIEFCASE = 'briefcase',BELL_BUSINESS = 'bell-business',BELL = 'bell',BATCH_PAYMENTS_BUSINESS = 'batch-payments-business',BACKPACK = 'backpack',APP_MARKETPLACE_BUSINESS = 'app-marketplace-business',API_INTEGRATIONS_BUSINESS = 'api-integrations-business'\n }\n\n export const illustrationNames = ['wallet', 'two-invite-letters-opened', 'tool', 'target-platform', 'stopwatch-platform', 'speech-bubble', 'skip-authentication', 'shopping-bag', 'satellite-platform', 'sand-timer-business', 'sand-timer', 'reminder-letter', 'red-packet', 'receive-business', 'receive', 'question-mark-business', 'question-mark', 'puzzle-pieces-business', 'puzzle-pieces', 'plane-business', 'plane-2', 'plane', 'pie-chart-business', 'pie-chart', 'phones', 'personal-card', 'percentage-business', 'percentage', 'passkey', 'palm-tree', 'one-invite-letter-opened', 'multi-currency-business', 'multi-currency', 'megaphone', 'marble-card-flag-only-business', 'marble-card-flag-only', 'marble-card-business-flag-only', 'marble-card-business', 'marble-card', 'marble-business', 'marble', 'map', 'magnifying-glass-business', 'magnifying-glass', 'lock-platform', 'lock-business', 'lock', 'light-bulb-business', 'light-bulb', 'key-business', 'key', 'jars', 'invite-letter', 'interest', 'infinite', 'id-card', 'house', 'heart-5', 'heart-4', 'heart-3', 'heart-2', 'heart', 'headset-business', 'headset', 'graph-business', 'graph', 'globe', 'gift-box', 'get-paid-with-card-business', 'gear-business', 'gear', 'flower', 'flag', 'exclamation-mark-business', 'exclamation-mark', 'email-success-business', 'email-success', 'email', 'electric-plug', 'eco-card', 'door', 'documents-folder-business', 'documents', 'digital-card-business', 'digital-card-2', 'digital-card', 'cookie', 'convert-business', 'convert', 'construction-fence', 'confetti-business', 'confetti', 'coin-pile-up-business', 'coin-pile-up', 'coin-pile-down-business', 'coin-pile-down', 'closed-window', 'check-mark-business', 'check-mark', 'calendar-business', 'calendar', 'calculator-business', 'business-card-business', 'business-card', 'briefcase-business', 'briefcase', 'bell-business', 'bell', 'batch-payments-business', 'backpack', 'app-marketplace-business', 'api-integrations-business'] as const;\n\n export type IllustrationNames = typeof illustrationNames[number];\n\n export const illustration3DNames = ['check-mark', 'confetti', 'flower', 'globe', 'graph', 'interest', 'jars', 'lock', 'magnifying-glass', 'marble', 'marble-card', 'multi-currency', 'plane'] as const;\n\n export type Illustration3DNames = typeof illustration3DNames[number];","import { useState, useEffect } from 'react';\n\nimport { illustration3DNames, 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 const isWebGL2Available = () => {\n try {\n const canvas = document.createElement('canvas');\n return !!(window.WebGL2RenderingContext && canvas.getContext('webgl2'));\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (e) {\n return false;\n }\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\nexport function isIllustrationSupport3D(asset: IllustrationNames): boolean {\n return (illustration3DNames as readonly string[]).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 from '../illustrations/Illustration';\nimport { Assets, type Illustration3DNames } from '../illustrations/metadata';\nexport type { Illustration3DNames };\n\nimport { useBattery, isConnectionSlow, isBatteryLow, isWebGL2Available } from './utils';\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) || !isWebGL2Available()\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(async () => import('./Scene'));\n switch (name) {\n case Assets.LOCK: {\n Model = lazy(async () => import('./models/Lock'));\n break;\n }\n case Assets.GLOBE: {\n Model = lazy(async () => import('./models/Globe'));\n break;\n }\n case Assets.CONFETTI: {\n Model = lazy(async () => import('./models/Confetti'));\n break;\n }\n case Assets.CHECK_MARK: {\n Model = lazy(async () => import('./models/CheckMark'));\n break;\n }\n case Assets.FLOWER: {\n Model = lazy(async () => import('./models/Flower'));\n break;\n }\n case Assets.PLANE: {\n Model = lazy(async () => import('./models/Plane'));\n break;\n }\n case Assets.GRAPH: {\n Model = lazy(async () => import('./models/Graph'));\n break;\n }\n case Assets.MARBLE: {\n Model = lazy(async () => import('./models/Marble'));\n break;\n }\n case Assets.MARBLE_CARD: {\n Model = lazy(async () => import('./models/MarbleCard'));\n break;\n }\n case Assets.MAGNIFYING_GLASS: {\n Model = lazy(async () => import('./models/MagnifyingGlass'));\n break;\n }\n case Assets.JARS: {\n Model = lazy(async () => import('./models/Jars'));\n break;\n }\n case Assets.MULTI_CURRENCY: {\n Model = lazy(async () => import('./models/MultiCurrency'));\n break;\n }\n case Assets.INTEREST: {\n Model = lazy(async () => import('./models/Interest'));\n break;\n }\n }\n return (\n <Scene assetName={name} size={size}>\n <Model />\n </Scene>\n );\n}\n\nexport default Illustration3D;\n"],"names":["DETAILED_FLAG_CODES","unknownFlagName","Flag","code","intrinsicSize","className","undefined","loading","fallback","setFallback","useState","useEffect","detailed","name","toLowerCase","includes","_jsx","clsx","src","process","env","NODE_ENV","alt","width","height","onError","prev","imageSizes","Sizes","SMALL","MEDIUM","LARGE","Illustration","forwardRef","id","size","disablePadding","ref","_jsxs","children","_Fragment","media","srcSet","defineSrc","illustration","descriptor","Assets","illustration3DNames","useBattery","batteryData","setBatteryData","level","getBatteryData","battery","navigator","getBattery","isBatteryLow","batteryLevel","isWebGL2Available","canvas","document","createElement","window","WebGL2RenderingContext","getContext","e","isConnectionSlow","connection","effectiveType","saveData","asset","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","INTEREST","assetName"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index-wEj9TQCC.js","sources":["../src/flags/metadata.ts","../src/flags/Flag.tsx","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations3d/utils.ts","../src/illustrations3d/Illustration3D.tsx"],"sourcesContent":["/*\n *\n * DON'T MODIFY THIS FILE IT'S AUTO GENERATED\n * See: `scripts/generate-flags-metadata.mjs`\n *\n */\n\n\n export const DETAILED_FLAG_CODES = ['zm', 'va', 'uy', 'us', 'ug', 'tw', 'tv', 'tm', 'sv', 'sm', 'si', 'sg', 'py', 'pt', 'ph', 'pe', 'pa', 'om', 'nz', 'np', 'ni', 'mz', 'my', 'mx', 'mt', 'mh', 'md', 'ls', 'lk', 'li', 'ki', 'ke', 'je', 'in', 'im', 'hr', 'hn', 'hm', 'hk', 'gt', 'gi', 'gg', 'fj', 'eur', 'es', 'eg', 'do', 'cn', 'by', 'br', 'bn', 'bf', 'ba', 'az', 'au', 'ar', 'an', 'am', 'al', 'ad'];","import { clsx } from 'clsx';\nimport { useEffect, useState } from 'react';\n\nimport { DETAILED_FLAG_CODES } from './metadata';\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 // Only get detailed svg if we know it exists, to avoid the performance hit of failing requests\n const name =\n fallback !== 'unknown'\n ? `${code.toLowerCase()}${\n fallback == null &&\n detailed &&\n DETAILED_FLAG_CODES.includes(code.toLowerCase())\n ? '-detailed'\n : ''\n }`\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) =>\n prev == null && detailed ? 'simple' : 'unknown',\n );\n }}\n />\n );\n};\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_BUSINESS = 'sand-timer-business',SAND_TIMER = 'sand-timer',REMINDER_LETTER = 'reminder-letter',RED_PACKET = 'red-packet',RECEIVE_BUSINESS = 'receive-business',RECEIVE = 'receive',QUESTION_MARK_BUSINESS = 'question-mark-business',QUESTION_MARK = 'question-mark',PUZZLE_PIECES_BUSINESS = 'puzzle-pieces-business',PUZZLE_PIECES = 'puzzle-pieces',PLANE_BUSINESS = 'plane-business',PLANE_2 = 'plane-2',PLANE = 'plane',PIE_CHART_BUSINESS = 'pie-chart-business',PIE_CHART = 'pie-chart',PHONES = 'phones',PERSONAL_CARD = 'personal-card',PERCENTAGE_BUSINESS = 'percentage-business',PERCENTAGE = 'percentage',PASSKEY = 'passkey',PALM_TREE = 'palm-tree',ONE_INVITE_LETTER_OPENED = 'one-invite-letter-opened',MULTI_CURRENCY_BUSINESS = 'multi-currency-business',MULTI_CURRENCY = 'multi-currency',MEGAPHONE = 'megaphone',MARBLE_CARD_FLAG_ONLY_BUSINESS = 'marble-card-flag-only-business',MARBLE_CARD_FLAG_ONLY = 'marble-card-flag-only',MARBLE_CARD_BUSINESS_FLAG_ONLY = 'marble-card-business-flag-only',MARBLE_CARD_BUSINESS = 'marble-card-business',MARBLE_CARD = 'marble-card',MARBLE_BUSINESS = 'marble-business',MARBLE = 'marble',MAP = 'map',MAGNIFYING_GLASS_BUSINESS = 'magnifying-glass-business',MAGNIFYING_GLASS = 'magnifying-glass',LOCK_PLATFORM = 'lock-platform',LOCK_BUSINESS = 'lock-business',LOCK = 'lock',LIGHT_BULB_BUSINESS = 'light-bulb-business',LIGHT_BULB = 'light-bulb',KEY_BUSINESS = 'key-business',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',HEADSET_BUSINESS = 'headset-business',HEADSET = 'headset',GRAPH_BUSINESS = 'graph-business',GRAPH = 'graph',GLOBE = 'globe',GIFT_BOX = 'gift-box',GET_PAID_WITH_CARD_BUSINESS = 'get-paid-with-card-business',GEAR_BUSINESS = 'gear-business',GEAR = 'gear',FLOWER = 'flower',FLAG = 'flag',EXCLAMATION_MARK_BUSINESS = 'exclamation-mark-business',EXCLAMATION_MARK = 'exclamation-mark',EMAIL_SUCCESS_BUSINESS = 'email-success-business',EMAIL_SUCCESS = 'email-success',EMAIL = 'email',ELECTRIC_PLUG = 'electric-plug',ECO_CARD = 'eco-card',DOOR = 'door',DOCUMENTS_FOLDER_BUSINESS = 'documents-folder-business',DOCUMENTS = 'documents',DIGITAL_CARD_BUSINESS = 'digital-card-business',DIGITAL_CARD_2 = 'digital-card-2',DIGITAL_CARD = 'digital-card',COOKIE = 'cookie',CONVERT_BUSINESS = 'convert-business',CONVERT = 'convert',CONSTRUCTION_FENCE = 'construction-fence',CONFETTI_BUSINESS = 'confetti-business',CONFETTI = 'confetti',COIN_PILE_UP_BUSINESS = 'coin-pile-up-business',COIN_PILE_UP = 'coin-pile-up',COIN_PILE_DOWN_BUSINESS = 'coin-pile-down-business',COIN_PILE_DOWN = 'coin-pile-down',CLOSED_WINDOW = 'closed-window',CHECK_MARK_BUSINESS = 'check-mark-business',CHECK_MARK = 'check-mark',CALENDAR_BUSINESS = 'calendar-business',CALENDAR = 'calendar',CALCULATOR_BUSINESS = 'calculator-business',BUSINESS_CARD_BUSINESS = 'business-card-business',BUSINESS_CARD = 'business-card',BRIEFCASE_BUSINESS = 'briefcase-business',BRIEFCASE = 'briefcase',BELL_BUSINESS = 'bell-business',BELL = 'bell',BATCH_PAYMENTS_BUSINESS = 'batch-payments-business',BACKPACK = 'backpack',APP_MARKETPLACE_BUSINESS = 'app-marketplace-business',API_INTEGRATIONS_BUSINESS = 'api-integrations-business'\n }\n\n export const illustrationNames = ['wallet', 'two-invite-letters-opened', 'tool', 'target-platform', 'stopwatch-platform', 'speech-bubble', 'skip-authentication', 'shopping-bag', 'satellite-platform', 'sand-timer-business', 'sand-timer', 'reminder-letter', 'red-packet', 'receive-business', 'receive', 'question-mark-business', 'question-mark', 'puzzle-pieces-business', 'puzzle-pieces', 'plane-business', 'plane-2', 'plane', 'pie-chart-business', 'pie-chart', 'phones', 'personal-card', 'percentage-business', 'percentage', 'passkey', 'palm-tree', 'one-invite-letter-opened', 'multi-currency-business', 'multi-currency', 'megaphone', 'marble-card-flag-only-business', 'marble-card-flag-only', 'marble-card-business-flag-only', 'marble-card-business', 'marble-card', 'marble-business', 'marble', 'map', 'magnifying-glass-business', 'magnifying-glass', 'lock-platform', 'lock-business', 'lock', 'light-bulb-business', 'light-bulb', 'key-business', 'key', 'jars', 'invite-letter', 'interest', 'infinite', 'id-card', 'house', 'heart-5', 'heart-4', 'heart-3', 'heart-2', 'heart', 'headset-business', 'headset', 'graph-business', 'graph', 'globe', 'gift-box', 'get-paid-with-card-business', 'gear-business', 'gear', 'flower', 'flag', 'exclamation-mark-business', 'exclamation-mark', 'email-success-business', 'email-success', 'email', 'electric-plug', 'eco-card', 'door', 'documents-folder-business', 'documents', 'digital-card-business', 'digital-card-2', 'digital-card', 'cookie', 'convert-business', 'convert', 'construction-fence', 'confetti-business', 'confetti', 'coin-pile-up-business', 'coin-pile-up', 'coin-pile-down-business', 'coin-pile-down', 'closed-window', 'check-mark-business', 'check-mark', 'calendar-business', 'calendar', 'calculator-business', 'business-card-business', 'business-card', 'briefcase-business', 'briefcase', 'bell-business', 'bell', 'batch-payments-business', 'backpack', 'app-marketplace-business', 'api-integrations-business'] as const;\n\n export type IllustrationNames = typeof illustrationNames[number];\n\n export const illustration3DNames = ['check-mark', 'confetti', 'flower', 'globe', 'graph', 'interest', 'jars', 'lock', 'magnifying-glass', 'marble', 'marble-card', 'multi-currency', 'plane'] as const;\n\n export type Illustration3DNames = typeof illustration3DNames[number];","import { useState, useEffect } from 'react';\n\nimport { illustration3DNames, 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 const isWebGL2Available = () => {\n try {\n const canvas = document.createElement('canvas');\n return !!(window.WebGL2RenderingContext && canvas.getContext('webgl2'));\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (e) {\n return false;\n }\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\nexport function isIllustrationSupport3D(asset: IllustrationNames): boolean {\n return (illustration3DNames as readonly string[]).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';\nimport { type Illustration3DNames } from '../illustrations/metadata';\nexport type { Illustration3DNames };\n\nimport { useBattery, isConnectionSlow, isBatteryLow, isWebGL2Available } from './utils';\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) || !isWebGL2Available()\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(async () => import('./Scene'));\n switch (name) {\n case Assets.LOCK: {\n Model = lazy(async () => import('./models/Lock'));\n break;\n }\n case Assets.GLOBE: {\n Model = lazy(async () => import('./models/Globe'));\n break;\n }\n case Assets.CONFETTI: {\n Model = lazy(async () => import('./models/Confetti'));\n break;\n }\n case Assets.CHECK_MARK: {\n Model = lazy(async () => import('./models/CheckMark'));\n break;\n }\n case Assets.FLOWER: {\n Model = lazy(async () => import('./models/Flower'));\n break;\n }\n case Assets.PLANE: {\n Model = lazy(async () => import('./models/Plane'));\n break;\n }\n case Assets.GRAPH: {\n Model = lazy(async () => import('./models/Graph'));\n break;\n }\n case Assets.MARBLE: {\n Model = lazy(async () => import('./models/Marble'));\n break;\n }\n case Assets.MARBLE_CARD: {\n Model = lazy(async () => import('./models/MarbleCard'));\n break;\n }\n case Assets.MAGNIFYING_GLASS: {\n Model = lazy(async () => import('./models/MagnifyingGlass'));\n break;\n }\n case Assets.JARS: {\n Model = lazy(async () => import('./models/Jars'));\n break;\n }\n case Assets.MULTI_CURRENCY: {\n Model = lazy(async () => import('./models/MultiCurrency'));\n break;\n }\n case Assets.INTEREST: {\n Model = lazy(async () => import('./models/Interest'));\n break;\n }\n }\n return (\n <Scene assetName={name} size={size}>\n <Model />\n </Scene>\n );\n}\n\nexport default Illustration3D;\n"],"names":["DETAILED_FLAG_CODES","unknownFlagName","Flag","code","intrinsicSize","className","undefined","loading","fallback","setFallback","useState","useEffect","detailed","name","toLowerCase","includes","_jsx","clsx","src","process","env","NODE_ENV","alt","width","height","onError","prev","imageSizes","Sizes","SMALL","MEDIUM","LARGE","Illustration","forwardRef","id","size","disablePadding","ref","_jsxs","children","_Fragment","media","srcSet","defineSrc","illustration","descriptor","Assets","illustration3DNames","useBattery","batteryData","setBatteryData","level","getBatteryData","battery","navigator","getBattery","isBatteryLow","batteryLevel","isWebGL2Available","canvas","document","createElement","window","WebGL2RenderingContext","getContext","e","isConnectionSlow","connection","effectiveType","saveData","asset","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","INTEREST","assetName"],"mappings":"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"}
1
+ {"version":3,"file":"index-wEj9TQCC.js","sources":["../src/flags/metadata.ts","../src/flags/Flag.tsx","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations3d/utils.ts","../src/illustrations3d/Illustration3D.tsx"],"sourcesContent":["/*\n *\n * DON'T MODIFY THIS FILE IT'S AUTO GENERATED\n * See: `scripts/generate-flags-metadata.mjs`\n *\n */\n\n\n export const DETAILED_FLAG_CODES = ['zm', 'va', 'uy', 'us', 'ug', 'tw', 'tv', 'tm', 'sv', 'sm', 'si', 'sg', 'py', 'pt', 'ph', 'pe', 'pa', 'om', 'nz', 'np', 'ni', 'mz', 'my', 'mx', 'mt', 'mh', 'md', 'ls', 'lk', 'li', 'ki', 'ke', 'je', 'in', 'im', 'hr', 'hn', 'hm', 'hk', 'gt', 'gi', 'gg', 'fj', 'eur', 'es', 'eg', 'do', 'cn', 'by', 'br', 'bn', 'bf', 'ba', 'az', 'au', 'ar', 'an', 'am', 'al', 'ad'];","import { clsx } from 'clsx';\nimport { useEffect, useState } from 'react';\n\nimport { DETAILED_FLAG_CODES } from './metadata';\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 // Only get detailed svg if we know it exists, to avoid the performance hit of failing requests\n const name =\n fallback !== 'unknown'\n ? `${code.toLowerCase()}${\n fallback == null &&\n detailed &&\n DETAILED_FLAG_CODES.includes(code.toLowerCase())\n ? '-detailed'\n : ''\n }`\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) =>\n prev == null && detailed ? 'simple' : 'unknown',\n );\n }}\n />\n );\n};\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_BUSINESS = 'sand-timer-business',SAND_TIMER = 'sand-timer',REMINDER_LETTER = 'reminder-letter',RED_PACKET = 'red-packet',RECEIVE_BUSINESS = 'receive-business',RECEIVE = 'receive',QUESTION_MARK_BUSINESS = 'question-mark-business',QUESTION_MARK = 'question-mark',PUZZLE_PIECES_BUSINESS = 'puzzle-pieces-business',PUZZLE_PIECES = 'puzzle-pieces',PLANE_BUSINESS = 'plane-business',PLANE_2 = 'plane-2',PLANE = 'plane',PIE_CHART_BUSINESS = 'pie-chart-business',PIE_CHART = 'pie-chart',PHONES = 'phones',PERSONAL_CARD = 'personal-card',PERCENTAGE_BUSINESS = 'percentage-business',PERCENTAGE = 'percentage',PASSKEY = 'passkey',PALM_TREE = 'palm-tree',ONE_INVITE_LETTER_OPENED = 'one-invite-letter-opened',MULTI_CURRENCY_BUSINESS = 'multi-currency-business',MULTI_CURRENCY = 'multi-currency',MEGAPHONE = 'megaphone',MARBLE_CARD_FLAG_ONLY_BUSINESS = 'marble-card-flag-only-business',MARBLE_CARD_FLAG_ONLY = 'marble-card-flag-only',MARBLE_CARD_BUSINESS_FLAG_ONLY = 'marble-card-business-flag-only',MARBLE_CARD_BUSINESS = 'marble-card-business',MARBLE_CARD = 'marble-card',MARBLE_BUSINESS = 'marble-business',MARBLE = 'marble',MAP = 'map',MAGNIFYING_GLASS_BUSINESS = 'magnifying-glass-business',MAGNIFYING_GLASS = 'magnifying-glass',LOCK_PLATFORM = 'lock-platform',LOCK_BUSINESS = 'lock-business',LOCK = 'lock',LIGHT_BULB_BUSINESS = 'light-bulb-business',LIGHT_BULB = 'light-bulb',KEY_BUSINESS = 'key-business',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',HEADSET_BUSINESS = 'headset-business',HEADSET = 'headset',GRAPH_BUSINESS = 'graph-business',GRAPH = 'graph',GLOBE = 'globe',GIFT_BOX = 'gift-box',GET_PAID_WITH_CARD_BUSINESS = 'get-paid-with-card-business',GEAR_BUSINESS = 'gear-business',GEAR = 'gear',FLOWER = 'flower',FLAG = 'flag',EXCLAMATION_MARK_BUSINESS = 'exclamation-mark-business',EXCLAMATION_MARK = 'exclamation-mark',EMAIL_SUCCESS_BUSINESS = 'email-success-business',EMAIL_SUCCESS = 'email-success',EMAIL = 'email',ELECTRIC_PLUG = 'electric-plug',ECO_CARD = 'eco-card',DOOR = 'door',DOCUMENTS_FOLDER_BUSINESS = 'documents-folder-business',DOCUMENTS = 'documents',DIGITAL_CARD_BUSINESS = 'digital-card-business',DIGITAL_CARD_2 = 'digital-card-2',DIGITAL_CARD = 'digital-card',COOKIE = 'cookie',CONVERT_BUSINESS = 'convert-business',CONVERT = 'convert',CONSTRUCTION_FENCE = 'construction-fence',CONFETTI_BUSINESS = 'confetti-business',CONFETTI = 'confetti',COIN_PILE_UP_BUSINESS = 'coin-pile-up-business',COIN_PILE_UP = 'coin-pile-up',COIN_PILE_DOWN_BUSINESS = 'coin-pile-down-business',COIN_PILE_DOWN = 'coin-pile-down',CLOSED_WINDOW = 'closed-window',CHECK_MARK_BUSINESS = 'check-mark-business',CHECK_MARK = 'check-mark',CALENDAR_BUSINESS = 'calendar-business',CALENDAR = 'calendar',CALCULATOR_BUSINESS = 'calculator-business',BUSINESS_CARD_BUSINESS = 'business-card-business',BUSINESS_CARD = 'business-card',BRIEFCASE_BUSINESS = 'briefcase-business',BRIEFCASE = 'briefcase',BELL_BUSINESS = 'bell-business',BELL = 'bell',BATCH_PAYMENTS_BUSINESS = 'batch-payments-business',BACKPACK = 'backpack',APP_MARKETPLACE_BUSINESS = 'app-marketplace-business',API_INTEGRATIONS_BUSINESS = 'api-integrations-business'\n }\n\n export const illustrationNames = ['wallet', 'two-invite-letters-opened', 'tool', 'target-platform', 'stopwatch-platform', 'speech-bubble', 'skip-authentication', 'shopping-bag', 'satellite-platform', 'sand-timer-business', 'sand-timer', 'reminder-letter', 'red-packet', 'receive-business', 'receive', 'question-mark-business', 'question-mark', 'puzzle-pieces-business', 'puzzle-pieces', 'plane-business', 'plane-2', 'plane', 'pie-chart-business', 'pie-chart', 'phones', 'personal-card', 'percentage-business', 'percentage', 'passkey', 'palm-tree', 'one-invite-letter-opened', 'multi-currency-business', 'multi-currency', 'megaphone', 'marble-card-flag-only-business', 'marble-card-flag-only', 'marble-card-business-flag-only', 'marble-card-business', 'marble-card', 'marble-business', 'marble', 'map', 'magnifying-glass-business', 'magnifying-glass', 'lock-platform', 'lock-business', 'lock', 'light-bulb-business', 'light-bulb', 'key-business', 'key', 'jars', 'invite-letter', 'interest', 'infinite', 'id-card', 'house', 'heart-5', 'heart-4', 'heart-3', 'heart-2', 'heart', 'headset-business', 'headset', 'graph-business', 'graph', 'globe', 'gift-box', 'get-paid-with-card-business', 'gear-business', 'gear', 'flower', 'flag', 'exclamation-mark-business', 'exclamation-mark', 'email-success-business', 'email-success', 'email', 'electric-plug', 'eco-card', 'door', 'documents-folder-business', 'documents', 'digital-card-business', 'digital-card-2', 'digital-card', 'cookie', 'convert-business', 'convert', 'construction-fence', 'confetti-business', 'confetti', 'coin-pile-up-business', 'coin-pile-up', 'coin-pile-down-business', 'coin-pile-down', 'closed-window', 'check-mark-business', 'check-mark', 'calendar-business', 'calendar', 'calculator-business', 'business-card-business', 'business-card', 'briefcase-business', 'briefcase', 'bell-business', 'bell', 'batch-payments-business', 'backpack', 'app-marketplace-business', 'api-integrations-business'] as const;\n\n export type IllustrationNames = typeof illustrationNames[number];\n\n export const illustration3DNames = ['check-mark', 'confetti', 'flower', 'globe', 'graph', 'interest', 'jars', 'lock', 'magnifying-glass', 'marble', 'marble-card', 'multi-currency', 'plane'] as const;\n\n export type Illustration3DNames = typeof illustration3DNames[number];","import { useState, useEffect } from 'react';\n\nimport { illustration3DNames, 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 const isWebGL2Available = () => {\n try {\n const canvas = document.createElement('canvas');\n return !!(window.WebGL2RenderingContext && canvas.getContext('webgl2'));\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (e) {\n return false;\n }\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\nexport function isIllustrationSupport3D(asset: IllustrationNames): boolean {\n return (illustration3DNames as readonly string[]).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 from '../illustrations/Illustration';\nimport { Assets, type Illustration3DNames } from '../illustrations/metadata';\nexport type { Illustration3DNames };\n\nimport { useBattery, isConnectionSlow, isBatteryLow, isWebGL2Available } from './utils';\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) || !isWebGL2Available()\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(async () => import('./Scene'));\n switch (name) {\n case Assets.LOCK: {\n Model = lazy(async () => import('./models/Lock'));\n break;\n }\n case Assets.GLOBE: {\n Model = lazy(async () => import('./models/Globe'));\n break;\n }\n case Assets.CONFETTI: {\n Model = lazy(async () => import('./models/Confetti'));\n break;\n }\n case Assets.CHECK_MARK: {\n Model = lazy(async () => import('./models/CheckMark'));\n break;\n }\n case Assets.FLOWER: {\n Model = lazy(async () => import('./models/Flower'));\n break;\n }\n case Assets.PLANE: {\n Model = lazy(async () => import('./models/Plane'));\n break;\n }\n case Assets.GRAPH: {\n Model = lazy(async () => import('./models/Graph'));\n break;\n }\n case Assets.MARBLE: {\n Model = lazy(async () => import('./models/Marble'));\n break;\n }\n case Assets.MARBLE_CARD: {\n Model = lazy(async () => import('./models/MarbleCard'));\n break;\n }\n case Assets.MAGNIFYING_GLASS: {\n Model = lazy(async () => import('./models/MagnifyingGlass'));\n break;\n }\n case Assets.JARS: {\n Model = lazy(async () => import('./models/Jars'));\n break;\n }\n case Assets.MULTI_CURRENCY: {\n Model = lazy(async () => import('./models/MultiCurrency'));\n break;\n }\n case Assets.INTEREST: {\n Model = lazy(async () => import('./models/Interest'));\n break;\n }\n }\n return (\n <Scene assetName={name} size={size}>\n <Model />\n </Scene>\n );\n}\n\nexport default Illustration3D;\n"],"names":["DETAILED_FLAG_CODES","unknownFlagName","Flag","code","intrinsicSize","className","undefined","loading","fallback","setFallback","useState","useEffect","detailed","name","toLowerCase","includes","_jsx","clsx","src","process","env","NODE_ENV","alt","width","height","onError","prev","imageSizes","Sizes","SMALL","MEDIUM","LARGE","Illustration","forwardRef","id","size","disablePadding","ref","_jsxs","children","_Fragment","media","srcSet","defineSrc","illustration","descriptor","Assets","illustration3DNames","useBattery","batteryData","setBatteryData","level","getBatteryData","battery","navigator","getBattery","isBatteryLow","batteryLevel","isWebGL2Available","canvas","document","createElement","window","WebGL2RenderingContext","getContext","e","isConnectionSlow","connection","effectiveType","saveData","asset","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","INTEREST","assetName"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wise/art",
3
- "version": "0.0.0-experimental-662a539",
3
+ "version": "0.0.0-experimental-d56763d",
4
4
  "license": "MIT",
5
5
  "description": "React library for art elements in UI",
6
6
  "homepage": "https://github.com/transferwise/web-art#readme",
@@ -3,8 +3,8 @@ import { clsx } from 'clsx';
3
3
  import { lazy, Suspense, useEffect, useState, LazyExoticComponent } from 'react';
4
4
 
5
5
  import { LargeSize, MediumSize, SmallSize, Sizes } from '../common';
6
- import Illustration, { Assets } from '../illustrations';
7
- import { type Illustration3DNames } from '../illustrations/metadata';
6
+ import Illustration from '../illustrations/Illustration';
7
+ import { Assets, type Illustration3DNames } from '../illustrations/metadata';
8
8
  export type { Illustration3DNames };
9
9
 
10
10
  import { useBattery, isConnectionSlow, isBatteryLow, isWebGL2Available } from './utils';