@wise/art 2.3.2 → 2.3.4-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -79,7 +79,7 @@ in Angular HTML template file
79
79
 
80
80
  ## Flags
81
81
 
82
- Two types of flags are generated from the wise-atoms svgs: country and currency.
82
+ Two types of flags are generated from the [wise-atoms SVGs](https://github.com/transferwise/wise-atoms/tree/main/flags): country and currency.
83
83
  The country flags have two letter codes and the currency flags have three letter codes. They can be accessed with URLs like:
84
84
  https://wise.com/web-art/assets/flags/be.svg
85
85
  and
@@ -88,6 +88,8 @@ https://wise.com/web-art/assets/flags/huf.svg
88
88
  If there is a detailed variant it can be found at
89
89
  https://wise.com/web-art/assets/flags/usd-detailed.svg
90
90
 
91
+ If you want to see all the flags, head over to [wise.design](https://wise.design/foundations/flags#flag-library)
92
+
91
93
  # Maintenance
92
94
 
93
95
  ## Release
@@ -103,4 +105,4 @@ All the resources are pulled from wise-atoms which does not use version numbers.
103
105
 
104
106
  Grab the commit hash from the latest version of [wise-atoms](https://github.com/transferwise/wise-atoms) and paste it in to the package.json here:
105
107
 
106
- ```"wise-atoms": "git+ssh://git@github.com:transferwise/wise-atoms.git#{commit-hash}",```
108
+ `"wise-atoms": "git+ssh://git@github.com:transferwise/wise-atoms.git#{commit-hash}",`
@@ -6,3 +6,21 @@ img.wds-illustration {
6
6
  .wds-illustration-padding {
7
7
  padding: 24px;
8
8
  }
9
+
10
+ .wds-animated-illustration {
11
+ --image-small: 200px;
12
+ --image-medium: 300px;
13
+ --image-large: 500px;
14
+ max-width: 100%;
15
+ min-height: var(--image-large);
16
+ }
17
+ @media (min-width: 768px) {
18
+ .wds-animated-illustration {
19
+ min-height: var(--image-small);
20
+ }
21
+ }
22
+ @media (min-width: 992px) {
23
+ .wds-animated-illustration {
24
+ min-height: var(--image-medium);
25
+ }
26
+ }
package/dist/common.d.ts CHANGED
@@ -3,6 +3,11 @@ export declare enum Sizes {
3
3
  MEDIUM = "medium",
4
4
  LARGE = "large"
5
5
  }
6
+ export declare const ImageSizes: {
7
+ small: number;
8
+ medium: number;
9
+ large: number;
10
+ };
6
11
  export declare type LargeSize = 'large';
7
12
  export declare type MediumSize = 'medium';
8
13
  export declare type SmallSize = 'small';
@@ -0,0 +1,27 @@
1
+ declare namespace _default {
2
+ const title: string;
3
+ namespace argTypes {
4
+ namespace size {
5
+ const options: Sizes[];
6
+ namespace control {
7
+ const type: string;
8
+ }
9
+ }
10
+ namespace backgroundColor {
11
+ const options_1: string[];
12
+ export { options_1 as options };
13
+ export namespace control_1 {
14
+ const type_1: string;
15
+ export { type_1 as type };
16
+ }
17
+ export { control_1 as control };
18
+ }
19
+ }
20
+ }
21
+ export default _default;
22
+ export namespace ConfettiIllustration {
23
+ function render(args: any): JSX.Element;
24
+ }
25
+ export function GlobeIllustration(): JSX.Element;
26
+ export function LockIllustration(): JSX.Element;
27
+ import { Sizes } from "../common";
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { PrimitiveProps } from '@react-three/fiber';
3
+ export declare type Props = {
4
+ id?: string;
5
+ } & PrimitiveProps;
6
+ declare const ConfettiModel: ({ name, ...props }: Props) => JSX.Element;
7
+ export default ConfettiModel;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const Globe: () => JSX.Element;
3
+ export default Globe;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const GlobeModel: () => JSX.Element;
3
+ export default GlobeModel;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { Props as IllustrationProps } from './Illustration';
3
+ declare type Props = Omit<IllustrationProps, 'loading' | 'name'>;
4
+ declare const Lock: (props: Props) => JSX.Element;
5
+ export default Lock;
@@ -0,0 +1,2 @@
1
+ export default LockModel;
2
+ declare function LockModel(): JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare type Props = PropsWithChildren<{
3
+ textureAnimationXSpeed?: number;
4
+ textureAnimationYSpeed?: number;
5
+ castShadow?: boolean;
6
+ }>;
7
+ export default function Scene({ children, castShadow }: Props): JSX.Element;
@@ -0,0 +1,5 @@
1
+ declare namespace _default {
2
+ const title: string;
3
+ }
4
+ export default _default;
5
+ export function Model(props: any): JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const DEFAULT_CAMERA_POSITION_Z = 80;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,7 @@
1
1
  export { default as Illustration } from './illustrations';
2
+ export { default as Lock } from './illustrations/Lock';
3
+ export { default as GlobeModel } from './illustrations/GlobeModel';
4
+ export { default as ConfettiModel } from './illustrations/ConfettiModel';
2
5
  export { Assets } from './illustrations';
3
6
  export { Sizes } from './common';
4
7
  export type { IllustrationNames, IllustrationProps } from './illustrations';
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var e=require("classnames"),t=require("react");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var i,r,s=/*#__PURE__*/a(e),E=/*#__PURE__*/a(t);exports.Sizes=void 0,(i=exports.Sizes||(exports.Sizes={})).SMALL="small",i.MEDIUM="medium",i.LARGE="large";var l,n=((r={})[exports.Sizes.SMALL]=200,r[exports.Sizes.MEDIUM]=300,r[exports.Sizes.LARGE]=500,r),o=t.forwardRef(function(e,t){var a=e.id,i=e.name,r=e.alt,l=e.loading,o=void 0===l?"eager":l,d=e.className,A=e.size,I=void 0===A?exports.Sizes.MEDIUM:A,u=e.disablePadding,R=void 0!==u&&u,p=exports.Sizes.SMALL,L=exports.Sizes.MEDIUM;return i?/*#__PURE__*/E.default.createElement("picture",null,I===exports.Sizes.LARGE||I===exports.Sizes.MEDIUM?/*#__PURE__*/E.default.createElement(E.default.Fragment,null,/*#__PURE__*/E.default.createElement("source",{width:n[p],height:n[p],media:"(max-width: 575px)",srcSet:c(i,p,"1x")+", "+c(i,p,"2x")+" 2x"}),I!==exports.Sizes.MEDIUM?/*#__PURE__*/E.default.createElement("source",{width:n[L],height:n[L],media:"(max-width: 992px)",srcSet:c(i,L,"1x")+", "+c(i,L,"2x")+" 2x"}):null):null,/*#__PURE__*/E.default.createElement("img",{id:a,ref:t,alt:r||i.replace("-"," "),"data-testid":"wds-"+i+"-illustration",className:s.default("wds-illustration","wds-illustration-"+i,{"wds-illustration-padding":!R},d),loading:o,src:c(i,I,"1x"),srcSet:c(i,I,"2x")+" 2x",width:n[I],height:n[I]})):null});function c(e,t,a){return"https://wise.com/web-art/assets/illustrations/"+e+"-"+t+"@"+a+".webp"}exports.Assets=void 0,(l=exports.Assets||(exports.Assets={})).BELL="bell",l.BRIEFCASE="briefcase",l.BUSINESS_CARD="business-card",l.CALENDAR="calendar",l.CHECK_MARK="check-mark",l.CLOSED_WINDOW="closed-window",l.COIN_PILE_DOWN="coin-pile-down",l.COIN_PILE_UP="coin-pile-up",l.CONFETTI="confetti",l.CONSTRUCTION_FENCE="construction-fence",l.CONVERT="convert",l.COOKIE="cookie",l.DIGITAL_CARD_2="digital-card-2",l.DIGITAL_CARD="digital-card",l.DOCUMENTS="documents",l.DOOR="door",l.ECO_CARD="eco-card",l.ELECTRIC_PLUG="electric-plug",l.EMAIL_SUCCESS="email-success",l.EMAIL="email",l.EXCLAMATION_MARK="exclamation-mark",l.FLAG="flag",l.FLOWER="flower",l.GEAR="gear",l.GLOBE="globe",l.GRAPH="graph",l.HEART_2="heart-2",l.HEART_3="heart-3",l.HEART_4="heart-4",l.HEART_5="heart-5",l.HEART="heart",l.HOUSE="house",l.ID_CARD="id-card",l.INFINITE="infinite",l.INVITE_LETTER="invite-letter",l.JARS="jars",l.KEY="key",l.LIGHT_BULB="light-bulb",l.LOCK="lock",l.MAGNIFYING_GLASS="magnifying-glass",l.MAP="map",l.MARBLE_CARD_BUSINESS="marble-card-business",l.MARBLE_CARD="marble-card",l.MARBLE="marble",l.MEGAPHONE="megaphone",l.MULTI_CURRENCY="multi-currency",l.ONE_INVITE_LETTER_OPENED="one-invite-letter-opened",l.PALM_TREE="palm-tree",l.PERCENTAGE="percentage",l.PERSONAL_CARD="personal-card",l.PHONES="phones",l.PIE_CHART="pie-chart",l.PLANE_2="plane-2",l.PLANE="plane",l.PUZZLE_PIECES="puzzle-pieces",l.QUESTION_MARK="question-mark",l.RECEIVE="receive",l.REMINDER_LETTER="reminder-letter",l.SAND_TIMER="sand-timer",l.SHOPPING_BAG="shopping-bag",l.SKIP_AUTHENTICATION="skip-authentication",l.SPEECH_BUBBLE="speech-bubble",l.TOOL="tool",l.TWO_INVITE_LETTERS_OPENED="two-invite-letters-opened",l.WALLET="wallet",exports.Illustration=o;
1
+ var e=require("classnames"),t=require("react"),a=require("@react-three/fiber"),r=require("three"),i=require("@react-three/drei");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o,s,l,c=/*#__PURE__*/n(e),E=/*#__PURE__*/n(t);exports.Sizes=void 0,(s=exports.Sizes||(exports.Sizes={})).SMALL="small",s.MEDIUM="medium",s.LARGE="large",(o={})[exports.Sizes.SMALL]=200,o[exports.Sizes.MEDIUM]=300,o[exports.Sizes.LARGE]=500;var p,u=((l={})[exports.Sizes.SMALL]=200,l[exports.Sizes.MEDIUM]=300,l[exports.Sizes.LARGE]=500,l),d=t.forwardRef(function(e,t){var a=e.id,r=e.name,i=e.alt,n=e.loading,o=void 0===n?"eager":n,s=e.className,l=e.size,p=void 0===l?exports.Sizes.MEDIUM:l,d=e.disablePadding,f=void 0!==d&&d,R=exports.Sizes.SMALL,A=exports.Sizes.MEDIUM;return r?/*#__PURE__*/E.default.createElement("picture",null,p===exports.Sizes.LARGE||p===exports.Sizes.MEDIUM?/*#__PURE__*/E.default.createElement(E.default.Fragment,null,/*#__PURE__*/E.default.createElement("source",{width:u[R],height:u[R],media:"(max-width: 575px)",srcSet:m(r,R,"1x")+", "+m(r,R,"2x")+" 2x"}),p!==exports.Sizes.MEDIUM?/*#__PURE__*/E.default.createElement("source",{width:u[A],height:u[A],media:"(max-width: 992px)",srcSet:m(r,A,"1x")+", "+m(r,A,"2x")+" 2x"}):null):null,/*#__PURE__*/E.default.createElement("img",{id:a,ref:t,alt:null!=i?i:r.replace("-"," "),"data-testid":"wds-"+r+"-illustration",className:c.default("wds-illustration","wds-illustration-"+r,{"wds-illustration-padding":!f},s),loading:o,src:m(r,p,"1x"),srcSet:m(r,p,"2x")+" 2x",width:u[p],height:u[p]})):null});function m(e,t,a){return"https://wise.com/web-art/assets/illustrations/"+e+"-"+t+"@"+a+".webp"}exports.Assets=void 0,(p=exports.Assets||(exports.Assets={})).BELL="bell",p.BRIEFCASE="briefcase",p.BUSINESS_CARD="business-card",p.CALENDAR="calendar",p.CHECK_MARK="check-mark",p.CLOSED_WINDOW="closed-window",p.COIN_PILE_DOWN="coin-pile-down",p.COIN_PILE_UP="coin-pile-up",p.CONFETTI="confetti",p.CONSTRUCTION_FENCE="construction-fence",p.CONVERT="convert",p.COOKIE="cookie",p.DIGITAL_CARD_2="digital-card-2",p.DIGITAL_CARD="digital-card",p.DOCUMENTS="documents",p.DOOR="door",p.ECO_CARD="eco-card",p.ELECTRIC_PLUG="electric-plug",p.EMAIL_SUCCESS="email-success",p.EMAIL="email",p.EXCLAMATION_MARK="exclamation-mark",p.FLAG="flag",p.FLOWER="flower",p.GEAR="gear",p.GLOBE="globe",p.GRAPH="graph",p.HEART_2="heart-2",p.HEART_3="heart-3",p.HEART_4="heart-4",p.HEART_5="heart-5",p.HEART="heart",p.HOUSE="house",p.ID_CARD="id-card",p.INFINITE="infinite",p.INVITE_LETTER="invite-letter",p.JARS="jars",p.KEY="key",p.LIGHT_BULB="light-bulb",p.LOCK="lock",p.MAGNIFYING_GLASS="magnifying-glass",p.MAP="map",p.MARBLE_CARD_BUSINESS="marble-card-business",p.MARBLE_CARD="marble-card",p.MARBLE="marble",p.MEGAPHONE="megaphone",p.MULTI_CURRENCY="multi-currency",p.ONE_INVITE_LETTER_OPENED="one-invite-letter-opened",p.PALM_TREE="palm-tree",p.PERCENTAGE="percentage",p.PERSONAL_CARD="personal-card",p.PHONES="phones",p.PIE_CHART="pie-chart",p.PLANE_2="plane-2",p.PLANE="plane",p.PUZZLE_PIECES="puzzle-pieces",p.QUESTION_MARK="question-mark",p.RECEIVE="receive",p.REMINDER_LETTER="reminder-letter",p.SAND_TIMER="sand-timer",p.SHOPPING_BAG="shopping-bag",p.SKIP_AUTHENTICATION="skip-authentication",p.SPEECH_BUBBLE="speech-bubble",p.TOOL="tool",p.TWO_INVITE_LETTERS_OPENED="two-invite-letters-opened",p.WALLET="wallet";var f=function(){var e=t.useRef(),n=i.useGLTF("../gltf/lock.gltf",!0),o=n.scene,s=n.animations;o.traverse(function(e){e.isMesh&&(e.castShadow=!0,e.receiveShadow=!0)});var l=i.useAnimations(s,e),c=l.clips,E=l.mixer,p=0;return a.useFrame(function(e,t){var a=E.clipAction(c[0]);a.play(),a.setLoop(r.LoopOnce),o.position.y=.2*Math.sin(.04*p++),n.materials.Standard.map.offset.x+=-.001,n.materials.Standard.map.offset.y+=0}),/*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement("primitive",{ref:e,object:o}))},R={root:{minHeight:"500px"}};function A(e){var t=e.children,n=e.castShadow;/*#__PURE__*/return React.createElement("div",{style:R.root},/*#__PURE__*/React.createElement(a.Canvas,{gl:{alpha:!0,antialias:!0,pixelRatio:1*window.devicePixelRatio,toneMapping:r.LinearToneMapping,outputColorSpace:r.SRGBColorSpace},shadows:{type:r.PCFShadowMap,enabled:void 0!==n&&n}},/*#__PURE__*/React.createElement(i.PerspectiveCamera,{makeDefault:!0,far:1e12,near:.1,fov:10.29,aspect:window.innerWidth/window.innerHeight,position:[0,0,80]}),t))}function L(){return L=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},L.apply(this,arguments)}var S=["name"];exports.ConfettiModel=function(e){var n=function(e,t){if(null==e)return{};var a,r,i={},n=Object.keys(e);for(r=0;r<n.length;r++)t.indexOf(a=n[r])>=0||(i[a]=e[a]);return i}(e,S),o=t.useRef(),s=i.useGLTF("../gltf/confetti.gltf"),l=s.animations,c=s.scene,E=a.useLoader(r.ObjectLoader,"../gltf/confetti-lights.json"),p=i.useAnimations(l,o),u=p.mixer,d=p.clips;return a.useFrame(function(){u.clipAction(d[0]).play(),u.clipAction(d[0]).setLoop(r.LoopOnce,1)}),/*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement("primitive",L({ref:o},n,{object:c})),/*#__PURE__*/React.createElement("primitive",{object:E}))},exports.GlobeModel=function(){var e=t.useRef(),n=i.useGLTF("../gltf/globe.gltf").scene,o=a.useLoader(r.TextureLoader,"../gltf/coinBumpMap.jpg"),s=n.getObjectByName("Globe"),l=n.getObjectByName("Coins_Axis_Rotation_Animate");return n.traverse(function(e){e.name.startsWith("Coin_")&&(e.material.bumpMap=o,e.material.bumpMap.flipY=!1,e.castShadow=!1,e.receiveShadow=!1)}),a.useFrame(function(){l.rotation.y+=.002,s.material.map.offset.x+=-2e-4,s.material.map.offset.y+=0}),/*#__PURE__*/React.createElement("primitive",{ref:e,position:[0,-10,0],scale:1.3,object:n})},exports.Illustration=d,exports.Lock=function(e){var t=a.useLoader(r.ObjectLoader,"../gltf/lock-lights.json");/*#__PURE__*/return React.createElement(A,{castShadow:!0},/*#__PURE__*/React.createElement(f,null),/*#__PURE__*/React.createElement("primitive",{object:t}))};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts"],"sourcesContent":["export enum Sizes {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\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 ? 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"],"names":["Sizes","_imageSizes","Assets","imageSizes","SMALL","MEDIUM","LARGE","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"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations/LockModel.jsx","../src/illustrations/Scene.tsx","../src/illustrations/common.ts","../src/illustrations/ConfettiModel.tsx","../src/illustrations/GlobeModel.tsx","../src/illustrations/Lock.tsx"],"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 */\nimport { useGLTF, useAnimations } from '@react-three/drei';\nimport { useFrame } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { LoopOnce } from 'three';\n\nconst LockModel = () => {\n const modelRef = useRef();\n const model = useGLTF(`../gltf/lock.gltf`, true);\n const { scene, animations } = model;\n scene.traverse((node) => {\n if (node.isMesh) {\n node.castShadow = true;\n node.receiveShadow = true;\n }\n });\n\n const { clips, mixer } = useAnimations(animations, modelRef);\n let frame = 0;\n useFrame((state, delta) => {\n const lockAction = mixer.clipAction(clips[0]);\n lockAction.play();\n lockAction.setLoop(LoopOnce);\n scene.position.y = Math.sin(frame++ * 0.04) * 0.2;\n model.materials.Standard.map.offset.x += -0.001;\n model.materials.Standard.map.offset.y += 0;\n });\n\n return (\n <>\n <primitive ref={modelRef} object={scene} />\n </>\n );\n};\n\nexport default LockModel;\n","/* eslint-disable react/forbid-dom-props */\n/* eslint-disable react/function-component-definition */\nimport { Environment, OrbitControls, PerspectiveCamera, Stage } from '@react-three/drei';\nimport { Canvas } from '@react-three/fiber';\nimport { PropsWithChildren } from 'react';\nimport { PCFShadowMap, LinearToneMapping, SRGBColorSpace } from 'three';\n\nimport { DEFAULT_CAMERA_POSITION_Z } from './common';\n\nexport type Props = PropsWithChildren<{\n textureAnimationXSpeed?: number;\n textureAnimationYSpeed?: number;\n castShadow?: boolean;\n}>;\n\nconst sceneStyles = {\n root: {\n minHeight: '500px',\n },\n};\n\nexport default function Scene({ children, castShadow = false }: Props) {\n return (\n <div style={sceneStyles.root}>\n <Canvas\n gl={{\n alpha: true,\n antialias: true,\n pixelRatio: window.devicePixelRatio * 1,\n toneMapping: LinearToneMapping,\n outputColorSpace: SRGBColorSpace,\n }}\n shadows={{ type: PCFShadowMap, enabled: castShadow }}\n >\n <PerspectiveCamera\n makeDefault\n far={1000000000000}\n near={0.1}\n fov={10.29}\n aspect={window.innerWidth / window.innerHeight}\n position={[0, 0, DEFAULT_CAMERA_POSITION_Z]}\n />\n {children}\n </Canvas>\n </div>\n );\n}\n","export const DEFAULT_CAMERA_POSITION_Z = 80;\n","import { useGLTF, useAnimations } from '@react-three/drei';\nimport { PrimitiveProps, useFrame, useLoader } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { ObjectLoader, LoopOnce } from 'three';\n\nexport type Props = { id?: string } & PrimitiveProps;\n\nconst ConfettiModel = ({ name, ...props }: Props) => {\n const modelRef = useRef();\n const model = useGLTF(`../gltf/confetti.gltf` /*, true*/);\n const { animations, scene } = model;\n // @ts-expect-error later\n const lights = useLoader(ObjectLoader, '../gltf/confetti-lights.json');\n\n const { mixer, clips } = useAnimations(animations, modelRef);\n useFrame(() => {\n mixer.clipAction(clips[0]).play();\n mixer.clipAction(clips[0]).setLoop(LoopOnce, 1);\n });\n\n return (\n <>\n <primitive ref={modelRef} {...props} object={scene} />\n <primitive object={lights} />\n </>\n );\n};\n\nexport default ConfettiModel;\n","/* eslint-disable fp/no-mutation */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\nimport { useGLTF } from '@react-three/drei';\nimport { useFrame, useLoader } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { TextureLoader } from 'three';\n\nconst GlobeModel = () => {\n const ref = useRef();\n const { scene } = useGLTF(`../gltf/globe.gltf`);\n const wiseLogo = useLoader(TextureLoader, '../gltf/coinBumpMap.jpg');\n const planet = scene.getObjectByName('Globe') as THREE.Mesh;\n const orbit = scene.getObjectByName('Coins_Axis_Rotation_Animate');\n\n scene.traverse((child) => {\n const isCoin = child.name.startsWith('Coin_');\n if (isCoin) {\n // @ts-expect-error later\n child.material.bumpMap = wiseLogo;\n // @ts-expect-error later\n child.material.bumpMap.flipY = false;\n child.castShadow = false;\n child.receiveShadow = false;\n }\n });\n\n useFrame(() => {\n // @ts-expect-error later\n orbit.rotation.y += 0.002;\n // @ts-expect-error later\n planet.material.map.offset.x += -0.0002;\n // @ts-expect-error later\n planet.material.map.offset.y += 0.0;\n });\n\n return <primitive ref={ref} position={[0, -10, 0]} scale={1.3} object={scene} />;\n};\n\nexport default GlobeModel;\n","import { useLoader } from '@react-three/fiber';\nimport { ObjectLoader } from 'three';\n\nimport { Props as IllustrationProps } from './Illustration';\nimport LockModel from './LockModel';\nimport Scene from './Scene';\n\ntype Props = Omit<IllustrationProps, 'loading' | 'name'>;\n\nconst Lock = (props: Props) => {\n // @ts-expect-error later\n const lights = useLoader(ObjectLoader, '../gltf/lock-lights.json');\n return (\n <Scene castShadow>\n <LockModel />\n <primitive object={lights} />\n </Scene>\n );\n};\n\nexport default Lock;\n"],"names":["_ImageSizes","Sizes","_imageSizes","SMALL","MEDIUM","LARGE","Assets","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","LockModel","useRef","model","useGLTF","scene","animations","traverse","node","isMesh","castShadow","receiveShadow","useAnimations","modelRef","clips","_useAnimations","mixer","useFrame","state","delta","lockAction","clipAction","play","setLoop","LoopOnce","position","y","Math","sin","frame","materials","Standard","map","offset","x","object","sceneStyles","root","minHeight","Scene","children","_ref$castShadow","style","Canvas","gl","alpha","antialias","pixelRatio","window","devicePixelRatio","toneMapping","LinearToneMapping","outputColorSpace","SRGBColorSpace","shadows","type","PCFShadowMap","enabled","PerspectiveCamera","makeDefault","far","near","fov","aspect","innerWidth","innerHeight","_excluded","props","_objectWithoutPropertiesLoose","lights","useLoader","ObjectLoader","_extends","wiseLogo","TextureLoader","planet","getObjectByName","child","startsWith","material","bumpMap","flipY","orbit","rotation","scale"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import e from"classnames";import E,{forwardRef as t}from"react";var a;!function(e){e.SMALL="small",e.MEDIUM="medium",e.LARGE="large"}(a||(a={}));const i={[a.SMALL]:200,[a.MEDIUM]:300,[a.LARGE]:500},r=t(({id:t,name:r,alt:n,loading:c="eager",className:s,size:A=a.MEDIUM,disablePadding:o=!1},I)=>{const{SMALL:L,MEDIUM:R}=a;return r?/*#__PURE__*/E.createElement("picture",null,A===a.LARGE||A===a.MEDIUM?/*#__PURE__*/E.createElement(E.Fragment,null,/*#__PURE__*/E.createElement("source",{width:i[L],height:i[L],media:"(max-width: 575px)",srcSet:`${l(r,L,"1x")}, ${l(r,L,"2x")} 2x`}),A!==a.MEDIUM?/*#__PURE__*/E.createElement("source",{width:i[R],height:i[R],media:"(max-width: 992px)",srcSet:`${l(r,R,"1x")}, ${l(r,R,"2x")} 2x`}):null):null,/*#__PURE__*/E.createElement("img",{id:t,ref:I,alt:n||r.replace("-"," "),"data-testid":`wds-${r}-illustration`,className:e("wds-illustration",`wds-illustration-${r}`,{"wds-illustration-padding":!o},s),loading:c,src:l(r,A,"1x"),srcSet:`${l(r,A,"2x")} 2x`,width:i[A],height:i[A]})):null});function l(e,E,t){return`https://wise.com/web-art/assets/illustrations/${e}-${E}@${t}.webp`}var n;!function(e){e.BELL="bell",e.BRIEFCASE="briefcase",e.BUSINESS_CARD="business-card",e.CALENDAR="calendar",e.CHECK_MARK="check-mark",e.CLOSED_WINDOW="closed-window",e.COIN_PILE_DOWN="coin-pile-down",e.COIN_PILE_UP="coin-pile-up",e.CONFETTI="confetti",e.CONSTRUCTION_FENCE="construction-fence",e.CONVERT="convert",e.COOKIE="cookie",e.DIGITAL_CARD_2="digital-card-2",e.DIGITAL_CARD="digital-card",e.DOCUMENTS="documents",e.DOOR="door",e.ECO_CARD="eco-card",e.ELECTRIC_PLUG="electric-plug",e.EMAIL_SUCCESS="email-success",e.EMAIL="email",e.EXCLAMATION_MARK="exclamation-mark",e.FLAG="flag",e.FLOWER="flower",e.GEAR="gear",e.GLOBE="globe",e.GRAPH="graph",e.HEART_2="heart-2",e.HEART_3="heart-3",e.HEART_4="heart-4",e.HEART_5="heart-5",e.HEART="heart",e.HOUSE="house",e.ID_CARD="id-card",e.INFINITE="infinite",e.INVITE_LETTER="invite-letter",e.JARS="jars",e.KEY="key",e.LIGHT_BULB="light-bulb",e.LOCK="lock",e.MAGNIFYING_GLASS="magnifying-glass",e.MAP="map",e.MARBLE_CARD_BUSINESS="marble-card-business",e.MARBLE_CARD="marble-card",e.MARBLE="marble",e.MEGAPHONE="megaphone",e.MULTI_CURRENCY="multi-currency",e.ONE_INVITE_LETTER_OPENED="one-invite-letter-opened",e.PALM_TREE="palm-tree",e.PERCENTAGE="percentage",e.PERSONAL_CARD="personal-card",e.PHONES="phones",e.PIE_CHART="pie-chart",e.PLANE_2="plane-2",e.PLANE="plane",e.PUZZLE_PIECES="puzzle-pieces",e.QUESTION_MARK="question-mark",e.RECEIVE="receive",e.REMINDER_LETTER="reminder-letter",e.SAND_TIMER="sand-timer",e.SHOPPING_BAG="shopping-bag",e.SKIP_AUTHENTICATION="skip-authentication",e.SPEECH_BUBBLE="speech-bubble",e.TOOL="tool",e.TWO_INVITE_LETTERS_OPENED="two-invite-letters-opened",e.WALLET="wallet"}(n||(n={}));export{n as Assets,r as Illustration,a as Sizes};
1
+ import e from"classnames";import t,{forwardRef as a,useRef as i}from"react";import{useFrame as r,Canvas as n,useLoader as l}from"@react-three/fiber";import{LoopOnce as c,LinearToneMapping as o,SRGBColorSpace as s,PCFShadowMap as E,ObjectLoader as m,TextureLoader as p}from"three";import{useGLTF as d,useAnimations as R,PerspectiveCamera as u}from"@react-three/drei";var A;!function(e){e.SMALL="small",e.MEDIUM="medium",e.LARGE="large"}(A||(A={}));const f={[A.SMALL]:200,[A.MEDIUM]:300,[A.LARGE]:500},g=a(({id:a,name:i,alt:r,loading:n="eager",className:l,size:c=A.MEDIUM,disablePadding:o=!1},s)=>{const{SMALL:E,MEDIUM:m}=A;return i?/*#__PURE__*/t.createElement("picture",null,c===A.LARGE||c===A.MEDIUM?/*#__PURE__*/t.createElement(t.Fragment,null,/*#__PURE__*/t.createElement("source",{width:f[E],height:f[E],media:"(max-width: 575px)",srcSet:`${h(i,E,"1x")}, ${h(i,E,"2x")} 2x`}),c!==A.MEDIUM?/*#__PURE__*/t.createElement("source",{width:f[m],height:f[m],media:"(max-width: 992px)",srcSet:`${h(i,m,"1x")}, ${h(i,m,"2x")} 2x`}):null):null,/*#__PURE__*/t.createElement("img",{id:a,ref:s,alt:null!=r?r:i.replace("-"," "),"data-testid":`wds-${i}-illustration`,className:e("wds-illustration",`wds-illustration-${i}`,{"wds-illustration-padding":!o},l),loading:n,src:h(i,c,"1x"),srcSet:`${h(i,c,"2x")} 2x`,width:f[c],height:f[c]})):null});function h(e,t,a){return`https://wise.com/web-art/assets/illustrations/${e}-${t}@${a}.webp`}var I;!function(e){e.BELL="bell",e.BRIEFCASE="briefcase",e.BUSINESS_CARD="business-card",e.CALENDAR="calendar",e.CHECK_MARK="check-mark",e.CLOSED_WINDOW="closed-window",e.COIN_PILE_DOWN="coin-pile-down",e.COIN_PILE_UP="coin-pile-up",e.CONFETTI="confetti",e.CONSTRUCTION_FENCE="construction-fence",e.CONVERT="convert",e.COOKIE="cookie",e.DIGITAL_CARD_2="digital-card-2",e.DIGITAL_CARD="digital-card",e.DOCUMENTS="documents",e.DOOR="door",e.ECO_CARD="eco-card",e.ELECTRIC_PLUG="electric-plug",e.EMAIL_SUCCESS="email-success",e.EMAIL="email",e.EXCLAMATION_MARK="exclamation-mark",e.FLAG="flag",e.FLOWER="flower",e.GEAR="gear",e.GLOBE="globe",e.GRAPH="graph",e.HEART_2="heart-2",e.HEART_3="heart-3",e.HEART_4="heart-4",e.HEART_5="heart-5",e.HEART="heart",e.HOUSE="house",e.ID_CARD="id-card",e.INFINITE="infinite",e.INVITE_LETTER="invite-letter",e.JARS="jars",e.KEY="key",e.LIGHT_BULB="light-bulb",e.LOCK="lock",e.MAGNIFYING_GLASS="magnifying-glass",e.MAP="map",e.MARBLE_CARD_BUSINESS="marble-card-business",e.MARBLE_CARD="marble-card",e.MARBLE="marble",e.MEGAPHONE="megaphone",e.MULTI_CURRENCY="multi-currency",e.ONE_INVITE_LETTER_OPENED="one-invite-letter-opened",e.PALM_TREE="palm-tree",e.PERCENTAGE="percentage",e.PERSONAL_CARD="personal-card",e.PHONES="phones",e.PIE_CHART="pie-chart",e.PLANE_2="plane-2",e.PLANE="plane",e.PUZZLE_PIECES="puzzle-pieces",e.QUESTION_MARK="question-mark",e.RECEIVE="receive",e.REMINDER_LETTER="reminder-letter",e.SAND_TIMER="sand-timer",e.SHOPPING_BAG="shopping-bag",e.SKIP_AUTHENTICATION="skip-authentication",e.SPEECH_BUBBLE="speech-bubble",e.TOOL="tool",e.TWO_INVITE_LETTERS_OPENED="two-invite-letters-opened",e.WALLET="wallet"}(I||(I={}));const L=()=>{const e=i(),t=d("../gltf/lock.gltf",!0),{scene:a,animations:n}=t;a.traverse(e=>{e.isMesh&&(e.castShadow=!0,e.receiveShadow=!0)});const{clips:l,mixer:o}=R(n,e);let s=0;return r((e,i)=>{const r=o.clipAction(l[0]);r.play(),r.setLoop(c),a.position.y=.2*Math.sin(.04*s++),t.materials.Standard.map.offset.x+=-.001,t.materials.Standard.map.offset.y+=0}),/*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement("primitive",{ref:e,object:a}))},_={root:{minHeight:"500px"}};function N({children:e,castShadow:t=!1}){/*#__PURE__*/return React.createElement("div",{style:_.root},/*#__PURE__*/React.createElement(n,{gl:{alpha:!0,antialias:!0,pixelRatio:1*window.devicePixelRatio,toneMapping:o,outputColorSpace:s},shadows:{type:E,enabled:t}},/*#__PURE__*/React.createElement(u,{makeDefault:!0,far:1e12,near:.1,fov:10.29,aspect:window.innerWidth/window.innerHeight,position:[0,0,80]}),e))}const S=e=>{const t=l(m,"../gltf/lock-lights.json");/*#__PURE__*/return React.createElement(N,{castShadow:!0},/*#__PURE__*/React.createElement(L,null),/*#__PURE__*/React.createElement("primitive",{object:t}))},C=()=>{const e=i(),{scene:t}=d("../gltf/globe.gltf"),a=l(p,"../gltf/coinBumpMap.jpg"),n=t.getObjectByName("Globe"),c=t.getObjectByName("Coins_Axis_Rotation_Animate");return t.traverse(e=>{e.name.startsWith("Coin_")&&(e.material.bumpMap=a,e.material.bumpMap.flipY=!1,e.castShadow=!1,e.receiveShadow=!1)}),r(()=>{c.rotation.y+=.002,n.material.map.offset.x+=-2e-4,n.material.map.offset.y+=0}),/*#__PURE__*/React.createElement("primitive",{ref:e,position:[0,-10,0],scale:1.3,object:t})};function O(){return O=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var i in a)Object.prototype.hasOwnProperty.call(a,i)&&(e[i]=a[i])}return e},O.apply(this,arguments)}const T=["name"],M=e=>{let t=function(e,t){if(null==e)return{};var a,i,r={},n=Object.keys(e);for(i=0;i<n.length;i++)t.indexOf(a=n[i])>=0||(r[a]=e[a]);return r}(e,T);const a=i(),n=d("../gltf/confetti.gltf"),{animations:o,scene:s}=n,E=l(m,"../gltf/confetti-lights.json"),{mixer:p,clips:u}=R(o,a);return r(()=>{p.clipAction(u[0]).play(),p.clipAction(u[0]).setLoop(c,1)}),/*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement("primitive",O({ref:a},t,{object:s})),/*#__PURE__*/React.createElement("primitive",{object:E}))};export{I as Assets,M as ConfettiModel,C as GlobeModel,g as Illustration,S as Lock,A as Sizes};
2
2
  //# sourceMappingURL=index.modern.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.modern.mjs","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts"],"sourcesContent":["export enum Sizes {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\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 ? 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"],"names":["Sizes","imageSizes","SMALL","MEDIUM","LARGE","Illustration","forwardRef","id","name","alt","loading","className","size","disablePadding","ref","React","createElement","Fragment","width","height","media","srcSet","defineSrc","replace","classNames","src","illustration","descriptor","Assets"],"mappings":"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"}
1
+ {"version":3,"file":"index.modern.mjs","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations/LockModel.jsx","../src/illustrations/Scene.tsx","../src/illustrations/common.ts","../src/illustrations/Lock.tsx","../src/illustrations/GlobeModel.tsx","../src/illustrations/ConfettiModel.tsx"],"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 */\nimport { useGLTF, useAnimations } from '@react-three/drei';\nimport { useFrame } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { LoopOnce } from 'three';\n\nconst LockModel = () => {\n const modelRef = useRef();\n const model = useGLTF(`../gltf/lock.gltf`, true);\n const { scene, animations } = model;\n scene.traverse((node) => {\n if (node.isMesh) {\n node.castShadow = true;\n node.receiveShadow = true;\n }\n });\n\n const { clips, mixer } = useAnimations(animations, modelRef);\n let frame = 0;\n useFrame((state, delta) => {\n const lockAction = mixer.clipAction(clips[0]);\n lockAction.play();\n lockAction.setLoop(LoopOnce);\n scene.position.y = Math.sin(frame++ * 0.04) * 0.2;\n model.materials.Standard.map.offset.x += -0.001;\n model.materials.Standard.map.offset.y += 0;\n });\n\n return (\n <>\n <primitive ref={modelRef} object={scene} />\n </>\n );\n};\n\nexport default LockModel;\n","/* eslint-disable react/forbid-dom-props */\n/* eslint-disable react/function-component-definition */\nimport { Environment, OrbitControls, PerspectiveCamera, Stage } from '@react-three/drei';\nimport { Canvas } from '@react-three/fiber';\nimport { PropsWithChildren } from 'react';\nimport { PCFShadowMap, LinearToneMapping, SRGBColorSpace } from 'three';\n\nimport { DEFAULT_CAMERA_POSITION_Z } from './common';\n\nexport type Props = PropsWithChildren<{\n textureAnimationXSpeed?: number;\n textureAnimationYSpeed?: number;\n castShadow?: boolean;\n}>;\n\nconst sceneStyles = {\n root: {\n minHeight: '500px',\n },\n};\n\nexport default function Scene({ children, castShadow = false }: Props) {\n return (\n <div style={sceneStyles.root}>\n <Canvas\n gl={{\n alpha: true,\n antialias: true,\n pixelRatio: window.devicePixelRatio * 1,\n toneMapping: LinearToneMapping,\n outputColorSpace: SRGBColorSpace,\n }}\n shadows={{ type: PCFShadowMap, enabled: castShadow }}\n >\n <PerspectiveCamera\n makeDefault\n far={1000000000000}\n near={0.1}\n fov={10.29}\n aspect={window.innerWidth / window.innerHeight}\n position={[0, 0, DEFAULT_CAMERA_POSITION_Z]}\n />\n {children}\n </Canvas>\n </div>\n );\n}\n","export const DEFAULT_CAMERA_POSITION_Z = 80;\n","import { useLoader } from '@react-three/fiber';\nimport { ObjectLoader } from 'three';\n\nimport { Props as IllustrationProps } from './Illustration';\nimport LockModel from './LockModel';\nimport Scene from './Scene';\n\ntype Props = Omit<IllustrationProps, 'loading' | 'name'>;\n\nconst Lock = (props: Props) => {\n // @ts-expect-error later\n const lights = useLoader(ObjectLoader, '../gltf/lock-lights.json');\n return (\n <Scene castShadow>\n <LockModel />\n <primitive object={lights} />\n </Scene>\n );\n};\n\nexport default Lock;\n","/* eslint-disable fp/no-mutation */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\nimport { useGLTF } from '@react-three/drei';\nimport { useFrame, useLoader } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { TextureLoader } from 'three';\n\nconst GlobeModel = () => {\n const ref = useRef();\n const { scene } = useGLTF(`../gltf/globe.gltf`);\n const wiseLogo = useLoader(TextureLoader, '../gltf/coinBumpMap.jpg');\n const planet = scene.getObjectByName('Globe') as THREE.Mesh;\n const orbit = scene.getObjectByName('Coins_Axis_Rotation_Animate');\n\n scene.traverse((child) => {\n const isCoin = child.name.startsWith('Coin_');\n if (isCoin) {\n // @ts-expect-error later\n child.material.bumpMap = wiseLogo;\n // @ts-expect-error later\n child.material.bumpMap.flipY = false;\n child.castShadow = false;\n child.receiveShadow = false;\n }\n });\n\n useFrame(() => {\n // @ts-expect-error later\n orbit.rotation.y += 0.002;\n // @ts-expect-error later\n planet.material.map.offset.x += -0.0002;\n // @ts-expect-error later\n planet.material.map.offset.y += 0.0;\n });\n\n return <primitive ref={ref} position={[0, -10, 0]} scale={1.3} object={scene} />;\n};\n\nexport default GlobeModel;\n","import { useGLTF, useAnimations } from '@react-three/drei';\nimport { PrimitiveProps, useFrame, useLoader } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { ObjectLoader, LoopOnce } from 'three';\n\nexport type Props = { id?: string } & PrimitiveProps;\n\nconst ConfettiModel = ({ name, ...props }: Props) => {\n const modelRef = useRef();\n const model = useGLTF(`../gltf/confetti.gltf` /*, true*/);\n const { animations, scene } = model;\n // @ts-expect-error later\n const lights = useLoader(ObjectLoader, '../gltf/confetti-lights.json');\n\n const { mixer, clips } = useAnimations(animations, modelRef);\n useFrame(() => {\n mixer.clipAction(clips[0]).play();\n mixer.clipAction(clips[0]).setLoop(LoopOnce, 1);\n });\n\n return (\n <>\n <primitive ref={modelRef} {...props} object={scene} />\n <primitive object={lights} />\n </>\n );\n};\n\nexport default ConfettiModel;\n"],"names":["Sizes","imageSizes","SMALL","MEDIUM","LARGE","Illustration","forwardRef","id","name","alt","loading","className","size","disablePadding","ref","React","createElement","Fragment","width","height","media","srcSet","defineSrc","replace","classNames","src","illustration","descriptor","Assets","modelRef","useRef","model","useGLTF","scene","animations","traverse","node","isMesh","castShadow","receiveShadow","clips","mixer","useAnimations","frame","useFrame","state","delta","lockAction","clipAction","play","setLoop","LoopOnce","position","y","Math","sin","materials","Standard","map","offset","x","object","sceneStyles","root","minHeight","Scene","children","style","Canvas","gl","alpha","antialias","pixelRatio","window","devicePixelRatio","toneMapping","LinearToneMapping","outputColorSpace","SRGBColorSpace","shadows","type","PCFShadowMap","enabled","PerspectiveCamera","makeDefault","far","near","fov","aspect","innerWidth","innerHeight","Lock","props","lights","useLoader","ObjectLoader","LockModel","wiseLogo","TextureLoader","getObjectByName","orbit","child","startsWith","material","bumpMap","flipY","rotation","planet","scale","_excluded","ConfettiModel","_ref","_objectWithoutPropertiesLoose","_extends"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import e from"classnames";import E,{forwardRef as t}from"react";var a,i;!function(e){e.SMALL="small",e.MEDIUM="medium",e.LARGE="large"}(a||(a={}));var r,l=((i={})[a.SMALL]=200,i[a.MEDIUM]=300,i[a.LARGE]=500,i),n=t(function(t,i){var r=t.id,n=t.name,s=t.alt,o=t.loading,A=void 0===o?"eager":o,I=t.className,d=t.size,L=void 0===d?a.MEDIUM:d,R=t.disablePadding,_=void 0!==R&&R,m=a.SMALL,T=a.MEDIUM;return n?/*#__PURE__*/E.createElement("picture",null,L===a.LARGE||L===a.MEDIUM?/*#__PURE__*/E.createElement(E.Fragment,null,/*#__PURE__*/E.createElement("source",{width:l[m],height:l[m],media:"(max-width: 575px)",srcSet:c(n,m,"1x")+", "+c(n,m,"2x")+" 2x"}),L!==a.MEDIUM?/*#__PURE__*/E.createElement("source",{width:l[T],height:l[T],media:"(max-width: 992px)",srcSet:c(n,T,"1x")+", "+c(n,T,"2x")+" 2x"}):null):null,/*#__PURE__*/E.createElement("img",{id:r,ref:i,alt:s||n.replace("-"," "),"data-testid":"wds-"+n+"-illustration",className:e("wds-illustration","wds-illustration-"+n,{"wds-illustration-padding":!_},I),loading:A,src:c(n,L,"1x"),srcSet:c(n,L,"2x")+" 2x",width:l[L],height:l[L]})):null});function c(e,E,t){return"https://wise.com/web-art/assets/illustrations/"+e+"-"+E+"@"+t+".webp"}!function(e){e.BELL="bell",e.BRIEFCASE="briefcase",e.BUSINESS_CARD="business-card",e.CALENDAR="calendar",e.CHECK_MARK="check-mark",e.CLOSED_WINDOW="closed-window",e.COIN_PILE_DOWN="coin-pile-down",e.COIN_PILE_UP="coin-pile-up",e.CONFETTI="confetti",e.CONSTRUCTION_FENCE="construction-fence",e.CONVERT="convert",e.COOKIE="cookie",e.DIGITAL_CARD_2="digital-card-2",e.DIGITAL_CARD="digital-card",e.DOCUMENTS="documents",e.DOOR="door",e.ECO_CARD="eco-card",e.ELECTRIC_PLUG="electric-plug",e.EMAIL_SUCCESS="email-success",e.EMAIL="email",e.EXCLAMATION_MARK="exclamation-mark",e.FLAG="flag",e.FLOWER="flower",e.GEAR="gear",e.GLOBE="globe",e.GRAPH="graph",e.HEART_2="heart-2",e.HEART_3="heart-3",e.HEART_4="heart-4",e.HEART_5="heart-5",e.HEART="heart",e.HOUSE="house",e.ID_CARD="id-card",e.INFINITE="infinite",e.INVITE_LETTER="invite-letter",e.JARS="jars",e.KEY="key",e.LIGHT_BULB="light-bulb",e.LOCK="lock",e.MAGNIFYING_GLASS="magnifying-glass",e.MAP="map",e.MARBLE_CARD_BUSINESS="marble-card-business",e.MARBLE_CARD="marble-card",e.MARBLE="marble",e.MEGAPHONE="megaphone",e.MULTI_CURRENCY="multi-currency",e.ONE_INVITE_LETTER_OPENED="one-invite-letter-opened",e.PALM_TREE="palm-tree",e.PERCENTAGE="percentage",e.PERSONAL_CARD="personal-card",e.PHONES="phones",e.PIE_CHART="pie-chart",e.PLANE_2="plane-2",e.PLANE="plane",e.PUZZLE_PIECES="puzzle-pieces",e.QUESTION_MARK="question-mark",e.RECEIVE="receive",e.REMINDER_LETTER="reminder-letter",e.SAND_TIMER="sand-timer",e.SHOPPING_BAG="shopping-bag",e.SKIP_AUTHENTICATION="skip-authentication",e.SPEECH_BUBBLE="speech-bubble",e.TOOL="tool",e.TWO_INVITE_LETTERS_OPENED="two-invite-letters-opened",e.WALLET="wallet"}(r||(r={}));export{r as Assets,n as Illustration,a as Sizes};
1
+ import e from"classnames";import t,{forwardRef as a,useRef as i}from"react";import{useFrame as r,Canvas as n,useLoader as l}from"@react-three/fiber";import{LoopOnce as o,LinearToneMapping as c,SRGBColorSpace as E,PCFShadowMap as s,ObjectLoader as m,TextureLoader as p}from"three";import{useGLTF as d,useAnimations as u,PerspectiveCamera as R}from"@react-three/drei";var f,A,g;!function(e){e.SMALL="small",e.MEDIUM="medium",e.LARGE="large"}(A||(A={})),(f={})[A.SMALL]=200,f[A.MEDIUM]=300,f[A.LARGE]=500;var h,L=((g={})[A.SMALL]=200,g[A.MEDIUM]=300,g[A.LARGE]=500,g),I=a(function(a,i){var r=a.id,n=a.name,l=a.alt,o=a.loading,c=void 0===o?"eager":o,E=a.className,s=a.size,m=void 0===s?A.MEDIUM:s,p=a.disablePadding,d=void 0!==p&&p,u=A.SMALL,R=A.MEDIUM;return n?/*#__PURE__*/t.createElement("picture",null,m===A.LARGE||m===A.MEDIUM?/*#__PURE__*/t.createElement(t.Fragment,null,/*#__PURE__*/t.createElement("source",{width:L[u],height:L[u],media:"(max-width: 575px)",srcSet:_(n,u,"1x")+", "+_(n,u,"2x")+" 2x"}),m!==A.MEDIUM?/*#__PURE__*/t.createElement("source",{width:L[R],height:L[R],media:"(max-width: 992px)",srcSet:_(n,R,"1x")+", "+_(n,R,"2x")+" 2x"}):null):null,/*#__PURE__*/t.createElement("img",{id:r,ref:i,alt:null!=l?l:n.replace("-"," "),"data-testid":"wds-"+n+"-illustration",className:e("wds-illustration","wds-illustration-"+n,{"wds-illustration-padding":!d},E),loading:c,src:_(n,m,"1x"),srcSet:_(n,m,"2x")+" 2x",width:L[m],height:L[m]})):null});function _(e,t,a){return"https://wise.com/web-art/assets/illustrations/"+e+"-"+t+"@"+a+".webp"}!function(e){e.BELL="bell",e.BRIEFCASE="briefcase",e.BUSINESS_CARD="business-card",e.CALENDAR="calendar",e.CHECK_MARK="check-mark",e.CLOSED_WINDOW="closed-window",e.COIN_PILE_DOWN="coin-pile-down",e.COIN_PILE_UP="coin-pile-up",e.CONFETTI="confetti",e.CONSTRUCTION_FENCE="construction-fence",e.CONVERT="convert",e.COOKIE="cookie",e.DIGITAL_CARD_2="digital-card-2",e.DIGITAL_CARD="digital-card",e.DOCUMENTS="documents",e.DOOR="door",e.ECO_CARD="eco-card",e.ELECTRIC_PLUG="electric-plug",e.EMAIL_SUCCESS="email-success",e.EMAIL="email",e.EXCLAMATION_MARK="exclamation-mark",e.FLAG="flag",e.FLOWER="flower",e.GEAR="gear",e.GLOBE="globe",e.GRAPH="graph",e.HEART_2="heart-2",e.HEART_3="heart-3",e.HEART_4="heart-4",e.HEART_5="heart-5",e.HEART="heart",e.HOUSE="house",e.ID_CARD="id-card",e.INFINITE="infinite",e.INVITE_LETTER="invite-letter",e.JARS="jars",e.KEY="key",e.LIGHT_BULB="light-bulb",e.LOCK="lock",e.MAGNIFYING_GLASS="magnifying-glass",e.MAP="map",e.MARBLE_CARD_BUSINESS="marble-card-business",e.MARBLE_CARD="marble-card",e.MARBLE="marble",e.MEGAPHONE="megaphone",e.MULTI_CURRENCY="multi-currency",e.ONE_INVITE_LETTER_OPENED="one-invite-letter-opened",e.PALM_TREE="palm-tree",e.PERCENTAGE="percentage",e.PERSONAL_CARD="personal-card",e.PHONES="phones",e.PIE_CHART="pie-chart",e.PLANE_2="plane-2",e.PLANE="plane",e.PUZZLE_PIECES="puzzle-pieces",e.QUESTION_MARK="question-mark",e.RECEIVE="receive",e.REMINDER_LETTER="reminder-letter",e.SAND_TIMER="sand-timer",e.SHOPPING_BAG="shopping-bag",e.SKIP_AUTHENTICATION="skip-authentication",e.SPEECH_BUBBLE="speech-bubble",e.TOOL="tool",e.TWO_INVITE_LETTERS_OPENED="two-invite-letters-opened",e.WALLET="wallet"}(h||(h={}));var S=function(){var e=i(),t=d("../gltf/lock.gltf",!0),a=t.scene,n=t.animations;a.traverse(function(e){e.isMesh&&(e.castShadow=!0,e.receiveShadow=!0)});var l=u(n,e),c=l.clips,E=l.mixer,s=0;return r(function(e,i){var r=E.clipAction(c[0]);r.play(),r.setLoop(o),a.position.y=.2*Math.sin(.04*s++),t.materials.Standard.map.offset.x+=-.001,t.materials.Standard.map.offset.y+=0}),/*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement("primitive",{ref:e,object:a}))},M={root:{minHeight:"500px"}};function N(e){var t=e.children,a=e.castShadow;/*#__PURE__*/return React.createElement("div",{style:M.root},/*#__PURE__*/React.createElement(n,{gl:{alpha:!0,antialias:!0,pixelRatio:1*window.devicePixelRatio,toneMapping:c,outputColorSpace:E},shadows:{type:s,enabled:void 0!==a&&a}},/*#__PURE__*/React.createElement(R,{makeDefault:!0,far:1e12,near:.1,fov:10.29,aspect:window.innerWidth/window.innerHeight,position:[0,0,80]}),t))}var C=function(e){var t=l(m,"../gltf/lock-lights.json");/*#__PURE__*/return React.createElement(N,{castShadow:!0},/*#__PURE__*/React.createElement(S,null),/*#__PURE__*/React.createElement("primitive",{object:t}))},O=function(){var e=i(),t=d("../gltf/globe.gltf").scene,a=l(p,"../gltf/coinBumpMap.jpg"),n=t.getObjectByName("Globe"),o=t.getObjectByName("Coins_Axis_Rotation_Animate");return t.traverse(function(e){e.name.startsWith("Coin_")&&(e.material.bumpMap=a,e.material.bumpMap.flipY=!1,e.castShadow=!1,e.receiveShadow=!1)}),r(function(){o.rotation.y+=.002,n.material.map.offset.x+=-2e-4,n.material.map.offset.y+=0}),/*#__PURE__*/React.createElement("primitive",{ref:e,position:[0,-10,0],scale:1.3,object:t})};function T(){return T=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var i in a)Object.prototype.hasOwnProperty.call(a,i)&&(e[i]=a[i])}return e},T.apply(this,arguments)}var v=["name"],b=function(e){var t=function(e,t){if(null==e)return{};var a,i,r={},n=Object.keys(e);for(i=0;i<n.length;i++)t.indexOf(a=n[i])>=0||(r[a]=e[a]);return r}(e,v),a=i(),n=d("../gltf/confetti.gltf"),c=n.animations,E=n.scene,s=l(m,"../gltf/confetti-lights.json"),p=u(c,a),R=p.mixer,f=p.clips;return r(function(){R.clipAction(f[0]).play(),R.clipAction(f[0]).setLoop(o,1)}),/*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement("primitive",T({ref:a},t,{object:E})),/*#__PURE__*/React.createElement("primitive",{object:s}))};export{h as Assets,b as ConfettiModel,O as GlobeModel,I as Illustration,C as Lock,A as Sizes};
2
2
  //# sourceMappingURL=index.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.module.js","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts"],"sourcesContent":["export enum Sizes {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\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 ? 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"],"names":["Sizes","_imageSizes","Assets","imageSizes","SMALL","MEDIUM","LARGE","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"],"mappings":"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"}
1
+ {"version":3,"file":"index.module.js","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations/LockModel.jsx","../src/illustrations/Scene.tsx","../src/illustrations/common.ts","../src/illustrations/Lock.tsx","../src/illustrations/GlobeModel.tsx","../src/illustrations/ConfettiModel.tsx"],"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 */\nimport { useGLTF, useAnimations } from '@react-three/drei';\nimport { useFrame } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { LoopOnce } from 'three';\n\nconst LockModel = () => {\n const modelRef = useRef();\n const model = useGLTF(`../gltf/lock.gltf`, true);\n const { scene, animations } = model;\n scene.traverse((node) => {\n if (node.isMesh) {\n node.castShadow = true;\n node.receiveShadow = true;\n }\n });\n\n const { clips, mixer } = useAnimations(animations, modelRef);\n let frame = 0;\n useFrame((state, delta) => {\n const lockAction = mixer.clipAction(clips[0]);\n lockAction.play();\n lockAction.setLoop(LoopOnce);\n scene.position.y = Math.sin(frame++ * 0.04) * 0.2;\n model.materials.Standard.map.offset.x += -0.001;\n model.materials.Standard.map.offset.y += 0;\n });\n\n return (\n <>\n <primitive ref={modelRef} object={scene} />\n </>\n );\n};\n\nexport default LockModel;\n","/* eslint-disable react/forbid-dom-props */\n/* eslint-disable react/function-component-definition */\nimport { Environment, OrbitControls, PerspectiveCamera, Stage } from '@react-three/drei';\nimport { Canvas } from '@react-three/fiber';\nimport { PropsWithChildren } from 'react';\nimport { PCFShadowMap, LinearToneMapping, SRGBColorSpace } from 'three';\n\nimport { DEFAULT_CAMERA_POSITION_Z } from './common';\n\nexport type Props = PropsWithChildren<{\n textureAnimationXSpeed?: number;\n textureAnimationYSpeed?: number;\n castShadow?: boolean;\n}>;\n\nconst sceneStyles = {\n root: {\n minHeight: '500px',\n },\n};\n\nexport default function Scene({ children, castShadow = false }: Props) {\n return (\n <div style={sceneStyles.root}>\n <Canvas\n gl={{\n alpha: true,\n antialias: true,\n pixelRatio: window.devicePixelRatio * 1,\n toneMapping: LinearToneMapping,\n outputColorSpace: SRGBColorSpace,\n }}\n shadows={{ type: PCFShadowMap, enabled: castShadow }}\n >\n <PerspectiveCamera\n makeDefault\n far={1000000000000}\n near={0.1}\n fov={10.29}\n aspect={window.innerWidth / window.innerHeight}\n position={[0, 0, DEFAULT_CAMERA_POSITION_Z]}\n />\n {children}\n </Canvas>\n </div>\n );\n}\n","export const DEFAULT_CAMERA_POSITION_Z = 80;\n","import { useLoader } from '@react-three/fiber';\nimport { ObjectLoader } from 'three';\n\nimport { Props as IllustrationProps } from './Illustration';\nimport LockModel from './LockModel';\nimport Scene from './Scene';\n\ntype Props = Omit<IllustrationProps, 'loading' | 'name'>;\n\nconst Lock = (props: Props) => {\n // @ts-expect-error later\n const lights = useLoader(ObjectLoader, '../gltf/lock-lights.json');\n return (\n <Scene castShadow>\n <LockModel />\n <primitive object={lights} />\n </Scene>\n );\n};\n\nexport default Lock;\n","/* eslint-disable fp/no-mutation */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\nimport { useGLTF } from '@react-three/drei';\nimport { useFrame, useLoader } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { TextureLoader } from 'three';\n\nconst GlobeModel = () => {\n const ref = useRef();\n const { scene } = useGLTF(`../gltf/globe.gltf`);\n const wiseLogo = useLoader(TextureLoader, '../gltf/coinBumpMap.jpg');\n const planet = scene.getObjectByName('Globe') as THREE.Mesh;\n const orbit = scene.getObjectByName('Coins_Axis_Rotation_Animate');\n\n scene.traverse((child) => {\n const isCoin = child.name.startsWith('Coin_');\n if (isCoin) {\n // @ts-expect-error later\n child.material.bumpMap = wiseLogo;\n // @ts-expect-error later\n child.material.bumpMap.flipY = false;\n child.castShadow = false;\n child.receiveShadow = false;\n }\n });\n\n useFrame(() => {\n // @ts-expect-error later\n orbit.rotation.y += 0.002;\n // @ts-expect-error later\n planet.material.map.offset.x += -0.0002;\n // @ts-expect-error later\n planet.material.map.offset.y += 0.0;\n });\n\n return <primitive ref={ref} position={[0, -10, 0]} scale={1.3} object={scene} />;\n};\n\nexport default GlobeModel;\n","import { useGLTF, useAnimations } from '@react-three/drei';\nimport { PrimitiveProps, useFrame, useLoader } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { ObjectLoader, LoopOnce } from 'three';\n\nexport type Props = { id?: string } & PrimitiveProps;\n\nconst ConfettiModel = ({ name, ...props }: Props) => {\n const modelRef = useRef();\n const model = useGLTF(`../gltf/confetti.gltf` /*, true*/);\n const { animations, scene } = model;\n // @ts-expect-error later\n const lights = useLoader(ObjectLoader, '../gltf/confetti-lights.json');\n\n const { mixer, clips } = useAnimations(animations, modelRef);\n useFrame(() => {\n mixer.clipAction(clips[0]).play();\n mixer.clipAction(clips[0]).setLoop(LoopOnce, 1);\n });\n\n return (\n <>\n <primitive ref={modelRef} {...props} object={scene} />\n <primitive object={lights} />\n </>\n );\n};\n\nexport default ConfettiModel;\n"],"names":["_ImageSizes","Sizes","_imageSizes","SMALL","MEDIUM","LARGE","Assets","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","LockModel","useRef","model","useGLTF","scene","animations","traverse","node","isMesh","castShadow","receiveShadow","useAnimations","modelRef","clips","_useAnimations","mixer","useFrame","state","delta","lockAction","clipAction","play","setLoop","LoopOnce","position","y","Math","sin","frame","materials","Standard","map","offset","x","object","sceneStyles","root","minHeight","Scene","children","_ref$castShadow","style","Canvas","gl","alpha","antialias","pixelRatio","window","devicePixelRatio","toneMapping","LinearToneMapping","outputColorSpace","SRGBColorSpace","shadows","type","PCFShadowMap","enabled","PerspectiveCamera","makeDefault","far","near","fov","aspect","innerWidth","innerHeight","Lock","props","lights","useLoader","ObjectLoader","GlobeModel","wiseLogo","TextureLoader","planet","getObjectByName","child","startsWith","material","bumpMap","flipY","orbit","rotation","scale","_excluded","ConfettiModel","_objectWithoutPropertiesLoose","_extends"],"mappings":"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"}
package/dist/index.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("classnames"),require("react")):"function"==typeof define&&define.amd?define(["exports","classnames","react"],t):t((e||self).art={},e.classnames,e.react)}(this,function(e,t,i){function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var E,l,s=/*#__PURE__*/a(t),r=/*#__PURE__*/a(i);e.Sizes=void 0,(E=e.Sizes||(e.Sizes={})).SMALL="small",E.MEDIUM="medium",E.LARGE="large";var n,d=((l={})[e.Sizes.SMALL]=200,l[e.Sizes.MEDIUM]=300,l[e.Sizes.LARGE]=500,l),o=i.forwardRef(function(t,i){var a=t.id,E=t.name,l=t.alt,n=t.loading,o=void 0===n?"eager":n,A=t.className,u=t.size,I=void 0===u?e.Sizes.MEDIUM:u,R=t.disablePadding,L=void 0!==R&&R,S=e.Sizes.SMALL,_=e.Sizes.MEDIUM;return E?/*#__PURE__*/r.default.createElement("picture",null,I===e.Sizes.LARGE||I===e.Sizes.MEDIUM?/*#__PURE__*/r.default.createElement(r.default.Fragment,null,/*#__PURE__*/r.default.createElement("source",{width:d[S],height:d[S],media:"(max-width: 575px)",srcSet:c(E,S,"1x")+", "+c(E,S,"2x")+" 2x"}),I!==e.Sizes.MEDIUM?/*#__PURE__*/r.default.createElement("source",{width:d[_],height:d[_],media:"(max-width: 992px)",srcSet:c(E,_,"1x")+", "+c(E,_,"2x")+" 2x"}):null):null,/*#__PURE__*/r.default.createElement("img",{id:a,ref:i,alt:l||E.replace("-"," "),"data-testid":"wds-"+E+"-illustration",className:s.default("wds-illustration","wds-illustration-"+E,{"wds-illustration-padding":!L},A),loading:o,src:c(E,I,"1x"),srcSet:c(E,I,"2x")+" 2x",width:d[I],height:d[I]})):null});function c(e,t,i){return"https://wise.com/web-art/assets/illustrations/"+e+"-"+t+"@"+i+".webp"}e.Assets=void 0,(n=e.Assets||(e.Assets={})).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",e.Illustration=o});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("classnames"),require("react"),require("@react-three/fiber"),require("three"),require("@react-three/drei")):"function"==typeof define&&define.amd?define(["exports","classnames","react","@react-three/fiber","three","@react-three/drei"],t):t((e||self).art={},e.classnames,e.react,e.fiber,e.three,e.drei)}(this,function(e,t,a,i,r,n){function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l,s,c,E=/*#__PURE__*/o(t),u=/*#__PURE__*/o(a);e.Sizes=void 0,(s=e.Sizes||(e.Sizes={})).SMALL="small",s.MEDIUM="medium",s.LARGE="large",(l={})[e.Sizes.SMALL]=200,l[e.Sizes.MEDIUM]=300,l[e.Sizes.LARGE]=500;var d,m=((c={})[e.Sizes.SMALL]=200,c[e.Sizes.MEDIUM]=300,c[e.Sizes.LARGE]=500,c),f=a.forwardRef(function(t,a){var i=t.id,r=t.name,n=t.alt,o=t.loading,l=void 0===o?"eager":o,s=t.className,c=t.size,d=void 0===c?e.Sizes.MEDIUM:c,f=t.disablePadding,R=void 0!==f&&f,A=e.Sizes.SMALL,L=e.Sizes.MEDIUM;return r?/*#__PURE__*/u.default.createElement("picture",null,d===e.Sizes.LARGE||d===e.Sizes.MEDIUM?/*#__PURE__*/u.default.createElement(u.default.Fragment,null,/*#__PURE__*/u.default.createElement("source",{width:m[A],height:m[A],media:"(max-width: 575px)",srcSet:p(r,A,"1x")+", "+p(r,A,"2x")+" 2x"}),d!==e.Sizes.MEDIUM?/*#__PURE__*/u.default.createElement("source",{width:m[L],height:m[L],media:"(max-width: 992px)",srcSet:p(r,L,"1x")+", "+p(r,L,"2x")+" 2x"}):null):null,/*#__PURE__*/u.default.createElement("img",{id:i,ref:a,alt:null!=n?n:r.replace("-"," "),"data-testid":"wds-"+r+"-illustration",className:E.default("wds-illustration","wds-illustration-"+r,{"wds-illustration-padding":!R},s),loading:l,src:p(r,d,"1x"),srcSet:p(r,d,"2x")+" 2x",width:m[d],height:m[d]})):null});function p(e,t,a){return"https://wise.com/web-art/assets/illustrations/"+e+"-"+t+"@"+a+".webp"}e.Assets=void 0,(d=e.Assets||(e.Assets={})).BELL="bell",d.BRIEFCASE="briefcase",d.BUSINESS_CARD="business-card",d.CALENDAR="calendar",d.CHECK_MARK="check-mark",d.CLOSED_WINDOW="closed-window",d.COIN_PILE_DOWN="coin-pile-down",d.COIN_PILE_UP="coin-pile-up",d.CONFETTI="confetti",d.CONSTRUCTION_FENCE="construction-fence",d.CONVERT="convert",d.COOKIE="cookie",d.DIGITAL_CARD_2="digital-card-2",d.DIGITAL_CARD="digital-card",d.DOCUMENTS="documents",d.DOOR="door",d.ECO_CARD="eco-card",d.ELECTRIC_PLUG="electric-plug",d.EMAIL_SUCCESS="email-success",d.EMAIL="email",d.EXCLAMATION_MARK="exclamation-mark",d.FLAG="flag",d.FLOWER="flower",d.GEAR="gear",d.GLOBE="globe",d.GRAPH="graph",d.HEART_2="heart-2",d.HEART_3="heart-3",d.HEART_4="heart-4",d.HEART_5="heart-5",d.HEART="heart",d.HOUSE="house",d.ID_CARD="id-card",d.INFINITE="infinite",d.INVITE_LETTER="invite-letter",d.JARS="jars",d.KEY="key",d.LIGHT_BULB="light-bulb",d.LOCK="lock",d.MAGNIFYING_GLASS="magnifying-glass",d.MAP="map",d.MARBLE_CARD_BUSINESS="marble-card-business",d.MARBLE_CARD="marble-card",d.MARBLE="marble",d.MEGAPHONE="megaphone",d.MULTI_CURRENCY="multi-currency",d.ONE_INVITE_LETTER_OPENED="one-invite-letter-opened",d.PALM_TREE="palm-tree",d.PERCENTAGE="percentage",d.PERSONAL_CARD="personal-card",d.PHONES="phones",d.PIE_CHART="pie-chart",d.PLANE_2="plane-2",d.PLANE="plane",d.PUZZLE_PIECES="puzzle-pieces",d.QUESTION_MARK="question-mark",d.RECEIVE="receive",d.REMINDER_LETTER="reminder-letter",d.SAND_TIMER="sand-timer",d.SHOPPING_BAG="shopping-bag",d.SKIP_AUTHENTICATION="skip-authentication",d.SPEECH_BUBBLE="speech-bubble",d.TOOL="tool",d.TWO_INVITE_LETTERS_OPENED="two-invite-letters-opened",d.WALLET="wallet";var R=function(){var e=a.useRef(),t=n.useGLTF("../gltf/lock.gltf",!0),o=t.scene,l=t.animations;o.traverse(function(e){e.isMesh&&(e.castShadow=!0,e.receiveShadow=!0)});var s=n.useAnimations(l,e),c=s.clips,E=s.mixer,u=0;return i.useFrame(function(e,a){var i=E.clipAction(c[0]);i.play(),i.setLoop(r.LoopOnce),o.position.y=.2*Math.sin(.04*u++),t.materials.Standard.map.offset.x+=-.001,t.materials.Standard.map.offset.y+=0}),/*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement("primitive",{ref:e,object:o}))},A={root:{minHeight:"500px"}};function L(e){var t=e.children,a=e.castShadow;/*#__PURE__*/return React.createElement("div",{style:A.root},/*#__PURE__*/React.createElement(i.Canvas,{gl:{alpha:!0,antialias:!0,pixelRatio:1*window.devicePixelRatio,toneMapping:r.LinearToneMapping,outputColorSpace:r.SRGBColorSpace},shadows:{type:r.PCFShadowMap,enabled:void 0!==a&&a}},/*#__PURE__*/React.createElement(n.PerspectiveCamera,{makeDefault:!0,far:1e12,near:.1,fov:10.29,aspect:window.innerWidth/window.innerHeight,position:[0,0,80]}),t))}function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var i in a)Object.prototype.hasOwnProperty.call(a,i)&&(e[i]=a[i])}return e},S.apply(this,arguments)}var h=["name"];e.ConfettiModel=function(e){var t=function(e,t){if(null==e)return{};var a,i,r={},n=Object.keys(e);for(i=0;i<n.length;i++)t.indexOf(a=n[i])>=0||(r[a]=e[a]);return r}(e,h),o=a.useRef(),l=n.useGLTF("../gltf/confetti.gltf"),s=l.animations,c=l.scene,E=i.useLoader(r.ObjectLoader,"../gltf/confetti-lights.json"),u=n.useAnimations(s,o),d=u.mixer,m=u.clips;return i.useFrame(function(){d.clipAction(m[0]).play(),d.clipAction(m[0]).setLoop(r.LoopOnce,1)}),/*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement("primitive",S({ref:o},t,{object:c})),/*#__PURE__*/React.createElement("primitive",{object:E}))},e.GlobeModel=function(){var e=a.useRef(),t=n.useGLTF("../gltf/globe.gltf").scene,o=i.useLoader(r.TextureLoader,"../gltf/coinBumpMap.jpg"),l=t.getObjectByName("Globe"),s=t.getObjectByName("Coins_Axis_Rotation_Animate");return t.traverse(function(e){e.name.startsWith("Coin_")&&(e.material.bumpMap=o,e.material.bumpMap.flipY=!1,e.castShadow=!1,e.receiveShadow=!1)}),i.useFrame(function(){s.rotation.y+=.002,l.material.map.offset.x+=-2e-4,l.material.map.offset.y+=0}),/*#__PURE__*/React.createElement("primitive",{ref:e,position:[0,-10,0],scale:1.3,object:t})},e.Illustration=f,e.Lock=function(e){var t=i.useLoader(r.ObjectLoader,"../gltf/lock-lights.json");/*#__PURE__*/return React.createElement(L,{castShadow:!0},/*#__PURE__*/React.createElement(R,null),/*#__PURE__*/React.createElement("primitive",{object:t}))}});
2
2
  //# sourceMappingURL=index.umd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts"],"sourcesContent":["export enum Sizes {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\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 ? 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"],"names":["Sizes","_imageSizes","Assets","imageSizes","SMALL","MEDIUM","LARGE","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","exports"],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.js","sources":["../src/common.ts","../src/illustrations/Illustration.tsx","../src/illustrations/metadata.ts","../src/illustrations/LockModel.jsx","../src/illustrations/Scene.tsx","../src/illustrations/common.ts","../src/illustrations/ConfettiModel.tsx","../src/illustrations/GlobeModel.tsx","../src/illustrations/Lock.tsx"],"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 */\nimport { useGLTF, useAnimations } from '@react-three/drei';\nimport { useFrame } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { LoopOnce } from 'three';\n\nconst LockModel = () => {\n const modelRef = useRef();\n const model = useGLTF(`../gltf/lock.gltf`, true);\n const { scene, animations } = model;\n scene.traverse((node) => {\n if (node.isMesh) {\n node.castShadow = true;\n node.receiveShadow = true;\n }\n });\n\n const { clips, mixer } = useAnimations(animations, modelRef);\n let frame = 0;\n useFrame((state, delta) => {\n const lockAction = mixer.clipAction(clips[0]);\n lockAction.play();\n lockAction.setLoop(LoopOnce);\n scene.position.y = Math.sin(frame++ * 0.04) * 0.2;\n model.materials.Standard.map.offset.x += -0.001;\n model.materials.Standard.map.offset.y += 0;\n });\n\n return (\n <>\n <primitive ref={modelRef} object={scene} />\n </>\n );\n};\n\nexport default LockModel;\n","/* eslint-disable react/forbid-dom-props */\n/* eslint-disable react/function-component-definition */\nimport { Environment, OrbitControls, PerspectiveCamera, Stage } from '@react-three/drei';\nimport { Canvas } from '@react-three/fiber';\nimport { PropsWithChildren } from 'react';\nimport { PCFShadowMap, LinearToneMapping, SRGBColorSpace } from 'three';\n\nimport { DEFAULT_CAMERA_POSITION_Z } from './common';\n\nexport type Props = PropsWithChildren<{\n textureAnimationXSpeed?: number;\n textureAnimationYSpeed?: number;\n castShadow?: boolean;\n}>;\n\nconst sceneStyles = {\n root: {\n minHeight: '500px',\n },\n};\n\nexport default function Scene({ children, castShadow = false }: Props) {\n return (\n <div style={sceneStyles.root}>\n <Canvas\n gl={{\n alpha: true,\n antialias: true,\n pixelRatio: window.devicePixelRatio * 1,\n toneMapping: LinearToneMapping,\n outputColorSpace: SRGBColorSpace,\n }}\n shadows={{ type: PCFShadowMap, enabled: castShadow }}\n >\n <PerspectiveCamera\n makeDefault\n far={1000000000000}\n near={0.1}\n fov={10.29}\n aspect={window.innerWidth / window.innerHeight}\n position={[0, 0, DEFAULT_CAMERA_POSITION_Z]}\n />\n {children}\n </Canvas>\n </div>\n );\n}\n","export const DEFAULT_CAMERA_POSITION_Z = 80;\n","import { useGLTF, useAnimations } from '@react-three/drei';\nimport { PrimitiveProps, useFrame, useLoader } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { ObjectLoader, LoopOnce } from 'three';\n\nexport type Props = { id?: string } & PrimitiveProps;\n\nconst ConfettiModel = ({ name, ...props }: Props) => {\n const modelRef = useRef();\n const model = useGLTF(`../gltf/confetti.gltf` /*, true*/);\n const { animations, scene } = model;\n // @ts-expect-error later\n const lights = useLoader(ObjectLoader, '../gltf/confetti-lights.json');\n\n const { mixer, clips } = useAnimations(animations, modelRef);\n useFrame(() => {\n mixer.clipAction(clips[0]).play();\n mixer.clipAction(clips[0]).setLoop(LoopOnce, 1);\n });\n\n return (\n <>\n <primitive ref={modelRef} {...props} object={scene} />\n <primitive object={lights} />\n </>\n );\n};\n\nexport default ConfettiModel;\n","/* eslint-disable fp/no-mutation */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\nimport { useGLTF } from '@react-three/drei';\nimport { useFrame, useLoader } from '@react-three/fiber';\nimport { useRef } from 'react';\nimport { TextureLoader } from 'three';\n\nconst GlobeModel = () => {\n const ref = useRef();\n const { scene } = useGLTF(`../gltf/globe.gltf`);\n const wiseLogo = useLoader(TextureLoader, '../gltf/coinBumpMap.jpg');\n const planet = scene.getObjectByName('Globe') as THREE.Mesh;\n const orbit = scene.getObjectByName('Coins_Axis_Rotation_Animate');\n\n scene.traverse((child) => {\n const isCoin = child.name.startsWith('Coin_');\n if (isCoin) {\n // @ts-expect-error later\n child.material.bumpMap = wiseLogo;\n // @ts-expect-error later\n child.material.bumpMap.flipY = false;\n child.castShadow = false;\n child.receiveShadow = false;\n }\n });\n\n useFrame(() => {\n // @ts-expect-error later\n orbit.rotation.y += 0.002;\n // @ts-expect-error later\n planet.material.map.offset.x += -0.0002;\n // @ts-expect-error later\n planet.material.map.offset.y += 0.0;\n });\n\n return <primitive ref={ref} position={[0, -10, 0]} scale={1.3} object={scene} />;\n};\n\nexport default GlobeModel;\n","import { useLoader } from '@react-three/fiber';\nimport { ObjectLoader } from 'three';\n\nimport { Props as IllustrationProps } from './Illustration';\nimport LockModel from './LockModel';\nimport Scene from './Scene';\n\ntype Props = Omit<IllustrationProps, 'loading' | 'name'>;\n\nconst Lock = (props: Props) => {\n // @ts-expect-error later\n const lights = useLoader(ObjectLoader, '../gltf/lock-lights.json');\n return (\n <Scene castShadow>\n <LockModel />\n <primitive object={lights} />\n </Scene>\n );\n};\n\nexport default Lock;\n"],"names":["_ImageSizes","Sizes","_imageSizes","SMALL","MEDIUM","LARGE","Assets","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","exports","LockModel","useRef","model","useGLTF","scene","animations","traverse","node","isMesh","castShadow","receiveShadow","useAnimations","modelRef","clips","_useAnimations","mixer","useFrame","state","delta","lockAction","clipAction","play","setLoop","LoopOnce","position","y","Math","sin","frame","materials","Standard","map","offset","x","object","sceneStyles","root","minHeight","Scene","children","_ref$castShadow","style","Canvas","gl","alpha","antialias","pixelRatio","window","devicePixelRatio","toneMapping","LinearToneMapping","outputColorSpace","SRGBColorSpace","shadows","type","PCFShadowMap","enabled","PerspectiveCamera","makeDefault","far","near","fov","aspect","innerWidth","innerHeight","_excluded","props","_objectWithoutPropertiesLoose","lights","useLoader","ObjectLoader","_extends","wiseLogo","TextureLoader","planet","getObjectByName","child","startsWith","material","bumpMap","flipY","orbit","rotation","scale"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wise/art",
3
- "version": "2.3.2",
3
+ "version": "2.3.4-beta.0",
4
4
  "license": "MIT",
5
5
  "description": "React library for art elements in UI",
6
6
  "homepage": "https://github.com/transferwise/web-art#readme",
@@ -19,57 +19,75 @@
19
19
  "scripts": {
20
20
  "setup": "yarn && yarn build",
21
21
  "load-i10s": "copyfiles -u 3 node_modules/wise-atoms/illustrations/**/*.png temp",
22
+ "load-flags": "yarn load-country-flags && yarn load-currency-flags && yarn transform-flags && yarn convert-flags-svg-to-png",
22
23
  "load-country-flags": "copyfiles -u 3 node_modules/wise-atoms/flags/*.svg s3-bucket/flags && node ./scripts/generate-country-flags.mjs",
23
24
  "load-currency-flags": "copyfiles -u 3 node_modules/wise-atoms/flags/.metadata.json s3-bucket/flags && node ./scripts/generate-currency-flags.mjs",
25
+ "transform-flags": "node ./scripts/transform-flags.mjs",
26
+ "convert-flags-svg-to-png": "node ./scripts/convert-flags-svg-to-png.mjs",
24
27
  "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",
25
28
  "generate-i10s-metadata": "node ./scripts/generate-i10s-metadata.mjs && eslint 'src/illustrations/metadata.ts' --fix",
26
29
  "bundle": "rm -rf dist && microbundle --jsxFragment React.Fragment --jsx React.createElement && cpx src/illustrations/Illustration.css dist/",
30
+ "bundle:analyze": "mkdir -p dist-temp && webpack -p --profile --json > dist-temp/stats.json && webpack-bundle-analyzer dist-temp/stats.json",
27
31
  "cleanup": "rm -rf temp",
28
- "build": "yarn load-i10s && yarn load-country-flags && yarn load-currency-flags && yarn convert-i10s-png-to-webp && yarn generate-i10s-metadata && yarn bundle && yarn cleanup",
32
+ "build": "yarn load-i10s && yarn convert-i10s-png-to-webp && yarn generate-i10s-metadata && yarn load-flags && yarn bundle && yarn cleanup",
29
33
  "start": "start-storybook -p 3001",
30
34
  "dev": "yarn start",
31
- "test": "release-to-github-with-changelog-pre-release-checks",
35
+ "test": "echo 'Tests not implemented yet'",
32
36
  "lint-fix": "eslint 'src/**/*.{js,ts,tsx}' 'scripts/*.{mjs,js,ts,tsx}' --fix",
33
37
  "build-docs": "build-storybook -o docs",
34
38
  "deploy-docs": "deploy-to-github-pages -d docs -m main"
35
39
  },
40
+ "dependencies": {
41
+ "three": "^0.154.0",
42
+ "@react-three/fiber": "^8.13.5",
43
+ "@react-three/drei": "^9.78.2"
44
+ },
36
45
  "devDependencies": {
37
- "wise-atoms": "git+ssh://git@github.com:transferwise/wise-atoms.git#2fa3ee7faf1ab88367c376d8432051e0ca23a6ea",
38
- "imagemin": "^8.0.1",
39
- "imagemin-webp": "^7.0.0",
46
+ "babel-loader": "^8.3.0",
47
+ "@babel/core": "^7.22.5",
48
+ "webpack": "^4.46.0",
49
+ "webpack-bundle-analyzer": "^4.9.0",
50
+ "webpack-cli": "^3.3.12",
51
+ "@babel/preset-env": "^7.18.9",
52
+ "@babel/preset-react": "^7.18.6",
53
+ "@babel/preset-typescript": "^7.18.6",
54
+ "@storybook/addon-essentials": "^6.5.13",
55
+ "@storybook/react": "^6.5.13",
56
+ "@transferwise/eslint-config": "^8.0.0",
57
+ "@tsconfig/node16": "^1.0.3",
58
+ "@types/glob": "^8.0.0",
40
59
  "@types/imagemin": "^8.0.0",
41
60
  "@types/imagemin-webp": "^7.0.0",
42
61
  "@types/jest": "^28.1.6",
62
+ "@types/jsdom": "^21.1.0",
43
63
  "@types/react": "^18.0.15",
44
64
  "@types/react-dom": "^18.0.6",
45
- "react": "^18.2.0",
46
- "react-dom": "^18.2.0",
47
- "@babel/preset-env": "^7.18.9",
48
- "@babel/preset-react": "^7.18.6",
49
- "@babel/preset-typescript": "^7.18.6",
50
- "@transferwise/eslint-config": "^8.0.0",
65
+ "@types/three": "^0.154.0",
51
66
  "classnames": "^2.3.1",
67
+ "copyfiles": "^2.4.1",
68
+ "cpx": "^1.5.0",
69
+ "deploy-to-github-pages": "^1.0.1",
52
70
  "eslint": "^8.21.0",
71
+ "glob": "^8.0.3",
72
+ "imagemin": "^8.0.1",
73
+ "imagemin-webp": "^7.0.0",
53
74
  "jest": "^28.1.3",
54
75
  "jest-environment-jsdom": "^28.1.3",
76
+ "jsdom": "~21.1.1",
77
+ "microbundle": "^0.15.1",
55
78
  "prettier": "^2.7.1",
79
+ "react": "^18.2.0",
80
+ "react-dom": "^18.2.0",
56
81
  "release-to-github-with-changelog": "^1.2.4",
82
+ "sharp": "^0.32.1",
57
83
  "ts-node": "10.9.1",
58
84
  "typescript": "^4.7.4",
59
- "@tsconfig/node16": "^1.0.3",
60
- "cpx": "^1.5.0",
61
- "copyfiles": "^2.4.1",
62
- "glob": "^8.0.3",
63
- "@types/glob": "^8.0.0",
64
- "@storybook/addon-essentials": "^6.5.13",
65
- "@storybook/react": "^6.5.13",
66
- "microbundle": "^0.15.1",
67
- "deploy-to-github-pages": "^1.0.1"
85
+ "wise-atoms": "git+ssh://git@github.com:transferwise/wise-atoms.git#2fa3ee7faf1ab88367c376d8432051e0ca23a6ea"
68
86
  },
69
87
  "peerDependencies": {
88
+ "classnames": "^2.3",
70
89
  "react": ">=17",
71
- "react-dom": ">=17",
72
- "classnames": "^2.3"
90
+ "react-dom": ">=17"
73
91
  },
74
92
  "prettier": "@transferwise/eslint-config/.prettierrc.js",
75
93
  "publishConfig": {