@coorpacademy/components 11.14.6 → 11.14.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../../src/template/mobile-login/qr-code-scanner/index.native.tsx"],"names":[],"mappings":";AAQA,MAAM,WAAW,KAAK;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAuPD,QAAA,MAAM,aAAa,UAAW,KAAK,gBAkDlC,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../../src/template/mobile-login/qr-code-scanner/index.native.tsx"],"names":[],"mappings":";AAQA,MAAM,WAAW,KAAK;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAyPD,QAAA,MAAM,aAAa,UAAW,KAAK,gBAkDlC,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -101,11 +101,13 @@ const explanationsStyle = StyleSheet.create({
101
101
  explanations: {
102
102
  position: 'absolute',
103
103
  width: '100%',
104
- height: 300,
104
+ height: 260,
105
105
  bottom: 0,
106
106
  backgroundColor: '#fff',
107
- borderRadius: 30,
108
- padding: 24
107
+ borderTopLeftRadius: 30,
108
+ borderTopRightRadius: 30,
109
+ paddingHorizontal: 24,
110
+ paddingVertical: 8
109
111
  },
110
112
  titleWrapper: {
111
113
  flexDirection: 'row',
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.js","names":["React","useCallback","useEffect","useRef","Animated","Easing","StyleSheet","Text","View","QRCodeScannerBase","NovaCompositionCoorpacademyQrCode","QrCodeIcon","Touchable","HEIGHT","WIDTH","COLOR","BORDER_RADIUS","LINE_WIDTH","styles","create","container","width","height","camera","blurs","position","opacity","blurTop","backgroundColor","transform","translateY","blurBottom","bottom","blurLeft","left","top","translateX","blurRight","right","targetStyle","target","borderRadius","overflow","square","stroke","explanationsStyle","explanations","padding","titleWrapper","flexDirection","alignItems","justifyContent","paddingVertical","qrCodeIcon","fill","titleText","fontWeight","color","fontSize","lineHeight","letterSpacing","marginLeft","line","paddingRight","lineText","marginRight","help","marginTop","titleHelp","ctaHelp","textDecorationLine","Corner","props","lineLength","Target","animationRef","Value","current","interpolate","inputRange","outputRange","animation","timing","toValue","duration","delay","easing","out","sin","useNativeDriver","start","rotate","Explanations","locales","onHelpPress","animateBottom","title","explanation1","explanation2","QRCodeScanner","hasPermission","onScan","handleRead","data","undefined","blurRef","blurOpacity","captureAudio"],"sources":["../../../../src/template/mobile-login/qr-code-scanner/index.native.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useRef} from 'react';\nimport {Animated, Easing, StyleSheet, Text, View, ViewStyle} from 'react-native';\n\nimport QRCodeScannerBase from 'react-native-qrcode-scanner';\nimport type {BarCodeReadEvent} from 'react-native-camera';\nimport {NovaCompositionCoorpacademyQrCode as QrCodeIcon} from '@coorpacademy/nova-icons';\nimport Touchable from '../../../hoc/touchable/index.native';\n\nexport interface Props {\n hasPermission: boolean;\n onScan: (token?: string) => void;\n onHelpPress: () => void;\n locales: {\n title: string;\n explanation1: string;\n explanation2: string;\n ctaHelp: string;\n titleHelp: string;\n };\n}\n\nconst HEIGHT = 280;\nconst WIDTH = 280;\nconst COLOR = '#fff';\nconst BORDER_RADIUS = 8;\n\nconst LINE_WIDTH = 7;\n\nconst styles = StyleSheet.create({\n container: {\n width: '100%',\n height: '100%'\n },\n camera: {\n width: '100%',\n height: '100%'\n },\n blurs: {\n position: 'absolute',\n width: '100%',\n height: '100%',\n opacity: 0.6\n },\n blurTop: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '100%',\n height: '35%',\n transform: [{translateY: -HEIGHT / 2 + LINE_WIDTH / 2}]\n },\n blurBottom: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '100%',\n height: '65%',\n bottom: 0,\n transform: [{translateY: HEIGHT / 2 - LINE_WIDTH / 2}]\n },\n blurLeft: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '50%',\n height: HEIGHT - LINE_WIDTH,\n left: 0,\n top: '35%',\n transform: [\n {translateX: -WIDTH / 2 + LINE_WIDTH / 2},\n {translateY: -HEIGHT / 2 + LINE_WIDTH / 2}\n ]\n },\n blurRight: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '50%',\n height: HEIGHT - LINE_WIDTH,\n right: 0,\n top: '35%',\n transform: [\n {translateX: WIDTH / 2 - LINE_WIDTH / 2},\n {translateY: -HEIGHT / 2 + LINE_WIDTH / 2}\n ]\n }\n});\n\nconst targetStyle = StyleSheet.create({\n target: {\n width: HEIGHT,\n height: WIDTH,\n top: '35%',\n left: '50%',\n transform: [{translateX: -WIDTH / 2}, {translateY: -HEIGHT / 2}],\n borderRadius: BORDER_RADIUS,\n position: 'absolute',\n overflow: 'hidden'\n },\n square: {\n position: 'absolute',\n width: '35%',\n height: '35%'\n },\n stroke: {\n position: 'absolute',\n top: 0,\n left: 0,\n backgroundColor: COLOR,\n borderRadius: BORDER_RADIUS\n }\n});\n\nconst explanationsStyle = StyleSheet.create({\n explanations: {\n position: 'absolute',\n width: '100%',\n height: 300,\n bottom: 0,\n backgroundColor: '#fff',\n borderRadius: 30,\n padding: 24\n },\n titleWrapper: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'flex-start',\n paddingVertical: 16\n },\n qrCodeIcon: {\n fill: '#000',\n height: 14,\n width: 14\n },\n titleText: {\n fontWeight: '600',\n color: '#1D1D2B',\n fontSize: 21,\n lineHeight: 30,\n letterSpacing: 0.5,\n marginLeft: 5\n },\n line: {\n flexDirection: 'row',\n paddingRight: 24,\n paddingVertical: 8\n },\n lineText: {\n fontWeight: '400',\n color: '#1D1D2B',\n fontSize: 18,\n lineHeight: 24,\n letterSpacing: 0.5,\n marginRight: 7\n },\n help: {\n flexDirection: 'row',\n marginTop: 12\n },\n titleHelp: {\n fontSize: 16,\n color: '#9999A8'\n },\n ctaHelp: {\n marginLeft: 5,\n fontSize: 16,\n letterSpacing: 0.5,\n textDecorationLine: 'underline',\n color: '#9999A8'\n }\n});\n\nconst Corner = (props: {position: ViewStyle; lineLength: Animated.AnimatedInterpolation}) => {\n const {position, lineLength} = props;\n\n return (\n <View style={[targetStyle.square, position]}>\n <Animated.View style={[targetStyle.stroke, {height: LINE_WIDTH, width: lineLength}]} />\n <Animated.View style={[targetStyle.stroke, {width: LINE_WIDTH, height: lineLength}]} />\n </View>\n );\n};\n\nconst Target = () => {\n const animationRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const lineLength = animationRef.interpolate({\n inputRange: [0, 1],\n outputRange: [0, WIDTH * 0.35]\n });\n\n useEffect(() => {\n const animation = Animated.timing(animationRef, {\n toValue: 1,\n duration: 700,\n delay: 400,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <View style={targetStyle.target}>\n <Corner lineLength={lineLength} position={{top: 0, left: 0, transform: [{rotate: '0deg'}]}} />\n <Corner\n lineLength={lineLength}\n position={{top: 0, right: 0, transform: [{rotate: '90deg'}]}}\n />\n <Corner\n lineLength={lineLength}\n position={{bottom: 0, right: 0, transform: [{rotate: '180deg'}]}}\n />\n <Corner\n lineLength={lineLength}\n position={{bottom: 0, left: 0, transform: [{rotate: '270deg'}]}}\n />\n </View>\n );\n};\n\nconst Explanations = (props: {locales: Props['locales']; onHelpPress: Props['onHelpPress']}) => {\n const {locales, onHelpPress} = props;\n\n const animationRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const animateBottom = animationRef.interpolate({\n inputRange: [0, 1],\n outputRange: [-300, 0]\n });\n\n useEffect(() => {\n const animation = Animated.timing(animationRef, {\n toValue: 1,\n duration: 600,\n delay: 400,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <Animated.View style={[explanationsStyle.explanations, {bottom: animateBottom}]}>\n <View style={explanationsStyle.titleWrapper}>\n <QrCodeIcon style={explanationsStyle.qrCodeIcon} />\n <Text style={explanationsStyle.titleText}>{locales.title}</Text>\n </View>\n <View style={explanationsStyle.line}>\n <Text style={explanationsStyle.lineText}>1.</Text>\n <Text style={explanationsStyle.lineText}>{locales.explanation1}</Text>\n </View>\n <View style={explanationsStyle.line}>\n <Text style={explanationsStyle.lineText}>2.</Text>\n <Text style={explanationsStyle.lineText}>{locales.explanation2}</Text>\n </View>\n\n <Touchable onPress={onHelpPress} style={explanationsStyle.help}>\n <Text style={explanationsStyle.titleHelp}>{locales.titleHelp}</Text>\n <Text style={explanationsStyle.ctaHelp}>{locales.ctaHelp}</Text>\n </Touchable>\n </Animated.View>\n );\n};\n\nconst QRCodeScanner = (props: Props) => {\n const {hasPermission, locales, onScan, onHelpPress} = props;\n\n const handleRead = useCallback(({data}: BarCodeReadEvent) => {\n onScan(typeof data === 'string' ? data : undefined);\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const blurRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const blurOpacity = blurRef.interpolate({\n inputRange: [0, 1],\n outputRange: [0, 0.7]\n });\n\n useEffect(() => {\n const animation = Animated.timing(blurRef, {\n toValue: 1,\n duration: 800,\n delay: 600,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <View style={styles.container} testID=\"qr-code-scanner\">\n {hasPermission ? (\n <QRCodeScannerBase\n fadeIn={false}\n onRead={handleRead}\n cameraStyle={styles.camera}\n cameraProps={{captureAudio: false}}\n />\n ) : null}\n <Animated.View style={[styles.blurs, {opacity: blurOpacity}]}>\n <View style={styles.blurTop} />\n <View style={styles.blurBottom} />\n <View style={styles.blurLeft} />\n <View style={styles.blurRight} />\n </Animated.View>\n <Target />\n <Explanations locales={locales} onHelpPress={onHelpPress} />\n </View>\n );\n};\n\nexport default QRCodeScanner;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.native.js","names":["React","useCallback","useEffect","useRef","Animated","Easing","StyleSheet","Text","View","QRCodeScannerBase","NovaCompositionCoorpacademyQrCode","QrCodeIcon","Touchable","HEIGHT","WIDTH","COLOR","BORDER_RADIUS","LINE_WIDTH","styles","create","container","width","height","camera","blurs","position","opacity","blurTop","backgroundColor","transform","translateY","blurBottom","bottom","blurLeft","left","top","translateX","blurRight","right","targetStyle","target","borderRadius","overflow","square","stroke","explanationsStyle","explanations","borderTopLeftRadius","borderTopRightRadius","paddingHorizontal","paddingVertical","titleWrapper","flexDirection","alignItems","justifyContent","qrCodeIcon","fill","titleText","fontWeight","color","fontSize","lineHeight","letterSpacing","marginLeft","line","paddingRight","lineText","marginRight","help","marginTop","titleHelp","ctaHelp","textDecorationLine","Corner","props","lineLength","Target","animationRef","Value","current","interpolate","inputRange","outputRange","animation","timing","toValue","duration","delay","easing","out","sin","useNativeDriver","start","rotate","Explanations","locales","onHelpPress","animateBottom","title","explanation1","explanation2","QRCodeScanner","hasPermission","onScan","handleRead","data","undefined","blurRef","blurOpacity","captureAudio"],"sources":["../../../../src/template/mobile-login/qr-code-scanner/index.native.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useRef} from 'react';\nimport {Animated, Easing, StyleSheet, Text, View, ViewStyle} from 'react-native';\n\nimport QRCodeScannerBase from 'react-native-qrcode-scanner';\nimport type {BarCodeReadEvent} from 'react-native-camera';\nimport {NovaCompositionCoorpacademyQrCode as QrCodeIcon} from '@coorpacademy/nova-icons';\nimport Touchable from '../../../hoc/touchable/index.native';\n\nexport interface Props {\n hasPermission: boolean;\n onScan: (token?: string) => void;\n onHelpPress: () => void;\n locales: {\n title: string;\n explanation1: string;\n explanation2: string;\n ctaHelp: string;\n titleHelp: string;\n };\n}\n\nconst HEIGHT = 280;\nconst WIDTH = 280;\nconst COLOR = '#fff';\nconst BORDER_RADIUS = 8;\n\nconst LINE_WIDTH = 7;\n\nconst styles = StyleSheet.create({\n container: {\n width: '100%',\n height: '100%'\n },\n camera: {\n width: '100%',\n height: '100%'\n },\n blurs: {\n position: 'absolute',\n width: '100%',\n height: '100%',\n opacity: 0.6\n },\n blurTop: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '100%',\n height: '35%',\n transform: [{translateY: -HEIGHT / 2 + LINE_WIDTH / 2}]\n },\n blurBottom: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '100%',\n height: '65%',\n bottom: 0,\n transform: [{translateY: HEIGHT / 2 - LINE_WIDTH / 2}]\n },\n blurLeft: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '50%',\n height: HEIGHT - LINE_WIDTH,\n left: 0,\n top: '35%',\n transform: [\n {translateX: -WIDTH / 2 + LINE_WIDTH / 2},\n {translateY: -HEIGHT / 2 + LINE_WIDTH / 2}\n ]\n },\n blurRight: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '50%',\n height: HEIGHT - LINE_WIDTH,\n right: 0,\n top: '35%',\n transform: [\n {translateX: WIDTH / 2 - LINE_WIDTH / 2},\n {translateY: -HEIGHT / 2 + LINE_WIDTH / 2}\n ]\n }\n});\n\nconst targetStyle = StyleSheet.create({\n target: {\n width: HEIGHT,\n height: WIDTH,\n top: '35%',\n left: '50%',\n transform: [{translateX: -WIDTH / 2}, {translateY: -HEIGHT / 2}],\n borderRadius: BORDER_RADIUS,\n position: 'absolute',\n overflow: 'hidden'\n },\n square: {\n position: 'absolute',\n width: '35%',\n height: '35%'\n },\n stroke: {\n position: 'absolute',\n top: 0,\n left: 0,\n backgroundColor: COLOR,\n borderRadius: BORDER_RADIUS\n }\n});\n\nconst explanationsStyle = StyleSheet.create({\n explanations: {\n position: 'absolute',\n width: '100%',\n height: 260,\n bottom: 0,\n backgroundColor: '#fff',\n borderTopLeftRadius: 30,\n borderTopRightRadius: 30,\n paddingHorizontal: 24,\n paddingVertical: 8\n },\n titleWrapper: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'flex-start',\n paddingVertical: 16\n },\n qrCodeIcon: {\n fill: '#000',\n height: 14,\n width: 14\n },\n titleText: {\n fontWeight: '600',\n color: '#1D1D2B',\n fontSize: 21,\n lineHeight: 30,\n letterSpacing: 0.5,\n marginLeft: 5\n },\n line: {\n flexDirection: 'row',\n paddingRight: 24,\n paddingVertical: 8\n },\n lineText: {\n fontWeight: '400',\n color: '#1D1D2B',\n fontSize: 18,\n lineHeight: 24,\n letterSpacing: 0.5,\n marginRight: 7\n },\n help: {\n flexDirection: 'row',\n marginTop: 12\n },\n titleHelp: {\n fontSize: 16,\n color: '#9999A8'\n },\n ctaHelp: {\n marginLeft: 5,\n fontSize: 16,\n letterSpacing: 0.5,\n textDecorationLine: 'underline',\n color: '#9999A8'\n }\n});\n\nconst Corner = (props: {position: ViewStyle; lineLength: Animated.AnimatedInterpolation}) => {\n const {position, lineLength} = props;\n\n return (\n <View style={[targetStyle.square, position]}>\n <Animated.View style={[targetStyle.stroke, {height: LINE_WIDTH, width: lineLength}]} />\n <Animated.View style={[targetStyle.stroke, {width: LINE_WIDTH, height: lineLength}]} />\n </View>\n );\n};\n\nconst Target = () => {\n const animationRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const lineLength = animationRef.interpolate({\n inputRange: [0, 1],\n outputRange: [0, WIDTH * 0.35]\n });\n\n useEffect(() => {\n const animation = Animated.timing(animationRef, {\n toValue: 1,\n duration: 700,\n delay: 400,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <View style={targetStyle.target}>\n <Corner lineLength={lineLength} position={{top: 0, left: 0, transform: [{rotate: '0deg'}]}} />\n <Corner\n lineLength={lineLength}\n position={{top: 0, right: 0, transform: [{rotate: '90deg'}]}}\n />\n <Corner\n lineLength={lineLength}\n position={{bottom: 0, right: 0, transform: [{rotate: '180deg'}]}}\n />\n <Corner\n lineLength={lineLength}\n position={{bottom: 0, left: 0, transform: [{rotate: '270deg'}]}}\n />\n </View>\n );\n};\n\nconst Explanations = (props: {locales: Props['locales']; onHelpPress: Props['onHelpPress']}) => {\n const {locales, onHelpPress} = props;\n\n const animationRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const animateBottom = animationRef.interpolate({\n inputRange: [0, 1],\n outputRange: [-300, 0]\n });\n\n useEffect(() => {\n const animation = Animated.timing(animationRef, {\n toValue: 1,\n duration: 600,\n delay: 400,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <Animated.View style={[explanationsStyle.explanations, {bottom: animateBottom}]}>\n <View style={explanationsStyle.titleWrapper}>\n <QrCodeIcon style={explanationsStyle.qrCodeIcon} />\n <Text style={explanationsStyle.titleText}>{locales.title}</Text>\n </View>\n <View style={explanationsStyle.line}>\n <Text style={explanationsStyle.lineText}>1.</Text>\n <Text style={explanationsStyle.lineText}>{locales.explanation1}</Text>\n </View>\n <View style={explanationsStyle.line}>\n <Text style={explanationsStyle.lineText}>2.</Text>\n <Text style={explanationsStyle.lineText}>{locales.explanation2}</Text>\n </View>\n\n <Touchable onPress={onHelpPress} style={explanationsStyle.help}>\n <Text style={explanationsStyle.titleHelp}>{locales.titleHelp}</Text>\n <Text style={explanationsStyle.ctaHelp}>{locales.ctaHelp}</Text>\n </Touchable>\n </Animated.View>\n );\n};\n\nconst QRCodeScanner = (props: Props) => {\n const {hasPermission, locales, onScan, onHelpPress} = props;\n\n const handleRead = useCallback(({data}: BarCodeReadEvent) => {\n onScan(typeof data === 'string' ? data : undefined);\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const blurRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const blurOpacity = blurRef.interpolate({\n inputRange: [0, 1],\n outputRange: [0, 0.7]\n });\n\n useEffect(() => {\n const animation = Animated.timing(blurRef, {\n toValue: 1,\n duration: 800,\n delay: 600,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <View style={styles.container} testID=\"qr-code-scanner\">\n {hasPermission ? (\n <QRCodeScannerBase\n fadeIn={false}\n onRead={handleRead}\n cameraStyle={styles.camera}\n cameraProps={{captureAudio: false}}\n />\n ) : null}\n <Animated.View style={[styles.blurs, {opacity: blurOpacity}]}>\n <View style={styles.blurTop} />\n <View style={styles.blurBottom} />\n <View style={styles.blurLeft} />\n <View style={styles.blurRight} />\n </Animated.View>\n <Target />\n <Explanations locales={locales} onHelpPress={onHelpPress} />\n </View>\n );\n};\n\nexport default QRCodeScanner;\n"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  /// <reference types="react" />
2
2
  export declare type Props = {
3
3
  onDemoPress: () => void;
4
- onDesktopButtonPress: () => void;
5
4
  onHelpPress: () => void;
6
- onMobileButtonPress: () => void;
5
+ onQRCodeButtonPress: () => void;
6
+ onReceiveEmailButtonPress: () => void;
7
7
  locales: {
8
8
  title: string;
9
9
  description: string;
10
- ctaQRCode: string;
10
+ ctaQrCode: string;
11
11
  ctaReceiveMail: string;
12
12
  titleHelp: string;
13
13
  ctaHelp: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../../src/template/mobile-login/welcome/index.native.tsx"],"names":[],"mappings":";AA0KA,oBAAY,KAAK,GAAG;IAClB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,QAAA,MAAM,OAAO,UAAW,KAAK,uBAqI5B,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../../src/template/mobile-login/welcome/index.native.tsx"],"names":[],"mappings":";AA2KA,oBAAY,KAAK,GAAG;IAClB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,QAAA,MAAM,OAAO,UAAW,KAAK,uBAuI5B,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -69,6 +69,7 @@ const createStyleSheet = theme => StyleSheet.create({
69
69
  height: 60
70
70
  },
71
71
  title: {
72
+ color: '#1D1D2B',
72
73
  fontWeight: '600',
73
74
  fontSize: 28,
74
75
  lineHeight: 36,
@@ -96,10 +97,10 @@ const createStyleSheet = theme => StyleSheet.create({
96
97
  alignItems: 'center',
97
98
  overflow: 'hidden'
98
99
  },
99
- ctaQRCode: {
100
+ ctaQrCode: {
100
101
  backgroundColor: theme.colors.cta
101
102
  },
102
- ctaQRCodeText: {
103
+ ctaQrCodeText: {
103
104
  marginLeft: 8,
104
105
  color: '#fff',
105
106
  fontWeight: '700',
@@ -144,9 +145,9 @@ const Welcome = props => {
144
145
  const {
145
146
  locales,
146
147
  onDemoPress,
147
- onDesktopButtonPress,
148
+ onQRCodeButtonPress,
148
149
  onHelpPress,
149
- onMobileButtonPress
150
+ onReceiveEmailButtonPress
150
151
  } = props;
151
152
  const {
152
153
  theme
@@ -257,15 +258,17 @@ const Welcome = props => {
257
258
  }, /*#__PURE__*/React.createElement(View, {
258
259
  style: styleSheet.buttons
259
260
  }, /*#__PURE__*/React.createElement(Touchable, {
260
- style: [styleSheet.button, styleSheet.ctaQRCode],
261
- onPress: onDesktopButtonPress
261
+ style: [styleSheet.button, styleSheet.ctaQrCode],
262
+ onPress: onQRCodeButtonPress,
263
+ testID: "qr-code-button"
262
264
  }, /*#__PURE__*/React.createElement(QrCodeIcon, {
263
265
  style: styleSheet.qrCodeIcon
264
266
  }), /*#__PURE__*/React.createElement(Text, {
265
- style: styleSheet.ctaQRCodeText
266
- }, locales.ctaQRCode)), /*#__PURE__*/React.createElement(Touchable, {
267
+ style: styleSheet.ctaQrCodeText
268
+ }, locales.ctaQrCode)), /*#__PURE__*/React.createElement(Touchable, {
267
269
  style: [styleSheet.button, styleSheet.ctaReceiveMail],
268
- onPress: onMobileButtonPress
270
+ onPress: onReceiveEmailButtonPress,
271
+ testID: "receive-email-button"
269
272
  }, /*#__PURE__*/React.createElement(MailIcon, {
270
273
  style: styleSheet.mailIcon
271
274
  }), /*#__PURE__*/React.createElement(Text, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.js","names":["React","useEffect","useRef","useState","Animated","StyleSheet","Text","View","LinearGradient","NovaCompositionCoorpacademyLogoCoorp","LogoCoorp","NovaCompositionCoorpacademyQrCode","QrCodeIcon","NovaCompositionCoorpacademyEmail","MailIcon","useAnimateProp","useTranslateY","Touchable","useTemplateContext","createStyleSheet","theme","create","wrapper","top","bottom","left","right","flex","justifyContent","alignItems","paddingHorizontal","content","width","gradients","position","gradient","opacity","transform","rotate","gradient2","animatedLogoWrapper","animatedLogo","height","logo","padding","logoBG","backgroundColor","title","fontWeight","fontSize","lineHeight","paddingVertical","description","actions","buttons","button","marginVertical","flexDirection","borderRadius","overflow","ctaQRCode","colors","cta","ctaQRCodeText","marginLeft","color","qrCodeIcon","fill","ctaReceiveMail","ctaReceiveMailText","mailIcon","help","titleHelp","ctaHelp","textDecorationLine","Welcome","props","locales","onDemoPress","onDesktopButtonPress","onHelpPress","onMobileButtonPress","styleSheet","setStylesheet","translateGradients","fromValue","toValue","duration","delay","translateContent","fadeInContent","property","fadeOutStartLogo","fadeInFinalLogo","scaleAnim","Value","current","interpolateScale","interpolate","inputRange","outputRange","_stylesheet","start","animatedScale","timing","useNativeDriver","animatedStyle","scale"],"sources":["../../../../src/template/mobile-login/welcome/index.native.tsx"],"sourcesContent":["import React, {useEffect, useRef, useState} from 'react';\nimport {Animated, StyleSheet, Text, TextStyle, View, ViewStyle} from 'react-native';\nimport LinearGradient from 'react-native-linear-gradient';\nimport {\n NovaCompositionCoorpacademyLogoCoorp as LogoCoorp,\n NovaCompositionCoorpacademyQrCode as QrCodeIcon,\n NovaCompositionCoorpacademyEmail as MailIcon\n} from '@coorpacademy/nova-icons';\nimport {useAnimateProp, useTranslateY} from '@coorpacademy/react-native-animation';\nimport Touchable from '../../../hoc/touchable/index.native';\nimport {useTemplateContext} from '../../app-review/template-context';\nimport {Theme} from '../../../variables/theme.native';\n\ntype StyleSheetType = {\n wrapper: ViewStyle;\n animatedLogoWrapper: ViewStyle;\n animatedLogo: ViewStyle;\n logo: ViewStyle;\n logoBG: ViewStyle;\n content: ViewStyle;\n gradients: ViewStyle;\n gradient: ViewStyle;\n gradient2: ViewStyle;\n title: TextStyle;\n description: TextStyle;\n actions: ViewStyle;\n buttons: ViewStyle;\n button: ViewStyle;\n qrCodeIcon: ViewStyle;\n mailIcon: ViewStyle;\n ctaQRCode: ViewStyle;\n ctaQRCodeText: TextStyle;\n ctaReceiveMail: ViewStyle;\n ctaReceiveMailText: TextStyle;\n help: ViewStyle;\n titleHelp: TextStyle;\n ctaHelp: ViewStyle;\n};\n\nconst createStyleSheet = (theme: Theme): StyleSheetType =>\n StyleSheet.create({\n wrapper: {\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n flex: 1,\n justifyContent: 'space-around',\n alignItems: 'center',\n paddingHorizontal: 24\n },\n content: {\n width: '100%',\n alignItems: 'flex-start'\n },\n gradients: {\n position: 'absolute',\n top: 400,\n bottom: 400,\n left: 0,\n right: 0,\n flex: 1\n },\n gradient: {\n position: 'absolute',\n top: -730,\n bottom: 0,\n left: -380,\n right: -380,\n opacity: 1,\n transform: [{rotate: '35deg'}]\n },\n gradient2: {\n position: 'absolute',\n top: -630,\n bottom: -200,\n left: -300,\n right: -400,\n opacity: 0.6,\n transform: [{rotate: '-35deg'}]\n },\n animatedLogoWrapper: {\n alignItems: 'center'\n },\n animatedLogo: {\n position: 'absolute',\n width: 77,\n height: 100\n },\n logo: {\n padding: 100\n },\n logoBG: {\n backgroundColor: '#fff',\n top: 20,\n width: 60,\n height: 60\n },\n title: {\n fontWeight: '600',\n fontSize: 28,\n lineHeight: 36,\n paddingVertical: 8\n },\n description: {\n fontSize: 18,\n lineHeight: 24,\n paddingVertical: 8\n },\n actions: {\n width: '100%'\n },\n buttons: {\n paddingVertical: 20,\n alignItems: 'center'\n },\n button: {\n paddingVertical: 12,\n marginVertical: 4,\n width: '100%',\n flexDirection: 'row',\n justifyContent: 'center',\n borderRadius: 12,\n alignItems: 'center',\n overflow: 'hidden'\n },\n ctaQRCode: {\n backgroundColor: theme.colors.cta\n },\n ctaQRCodeText: {\n marginLeft: 8,\n color: '#fff',\n fontWeight: '700',\n fontSize: 14,\n lineHeight: 24\n },\n qrCodeIcon: {\n fill: '#fff',\n height: 14,\n width: 14\n },\n ctaReceiveMail: {\n backgroundColor: '#eaeaeb'\n },\n ctaReceiveMailText: {\n marginLeft: 8,\n color: '#1D1D2B',\n fontWeight: '700',\n fontSize: 14,\n lineHeight: 24\n },\n mailIcon: {\n fill: '#1D1D2B',\n height: 12,\n width: 16\n },\n help: {\n flexDirection: 'row',\n justifyContent: 'center'\n },\n titleHelp: {\n color: '#9999A8'\n },\n ctaHelp: {\n marginLeft: 5,\n textDecorationLine: 'underline',\n color: '#9999A8'\n }\n });\n\nexport type Props = {\n onDemoPress: () => void;\n onDesktopButtonPress: () => void;\n onHelpPress: () => void;\n onMobileButtonPress: () => void;\n locales: {\n title: string;\n description: string;\n ctaQRCode: string;\n ctaReceiveMail: string;\n titleHelp: string;\n ctaHelp: string;\n };\n};\n\nconst Welcome = (props: Props) => {\n const {locales, onDemoPress, onDesktopButtonPress, onHelpPress, onMobileButtonPress} = props;\n const {theme} = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n\n const translateGradients = useTranslateY({\n fromValue: 0,\n toValue: -200,\n duration: 300,\n delay: 750\n });\n\n const translateContent = useTranslateY({\n fromValue: 170,\n toValue: 0,\n duration: 450,\n delay: 750\n });\n\n const fadeInContent = useAnimateProp({\n property: 'opacity',\n fromValue: 0,\n toValue: 1,\n duration: 650,\n delay: 750\n });\n\n const fadeOutStartLogo = useAnimateProp({\n property: 'opacity',\n fromValue: 1,\n toValue: 0,\n duration: 450,\n delay: 1000\n });\n\n const fadeInFinalLogo = useAnimateProp({\n property: 'opacity',\n fromValue: 0,\n toValue: 1,\n duration: 250,\n delay: 900\n });\n\n const scaleAnim = useRef<Animated.Value>(new Animated.Value(0)).current;\n const interpolateScale = scaleAnim.interpolate({\n inputRange: [0, 0.4, 0.5, 0.6, 1],\n outputRange: [1, 1.7, 1.7, 1.7, 1]\n });\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n useEffect(() => {\n fadeInContent.start();\n fadeInFinalLogo.start();\n fadeOutStartLogo.start();\n translateContent.start();\n translateGradients.start();\n\n const animatedScale = Animated.timing(scaleAnim, {\n toValue: 1,\n duration: 1000,\n useNativeDriver: true\n });\n\n animatedScale.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (!styleSheet) {\n return null;\n }\n return (\n <Animated.View style={[styleSheet.wrapper, translateContent.animatedStyle]} testID=\"welcome\">\n <Animated.View style={[styleSheet.gradients, translateGradients.animatedStyle]}>\n <LinearGradient\n colors={['#0061FF', '#fff']}\n locations={[0, 0.95]}\n style={styleSheet.gradient}\n />\n <LinearGradient\n colors={['#2199AB', '#fff']}\n locations={[0, 0.95]}\n style={styleSheet.gradient2}\n />\n </Animated.View>\n\n <Touchable onLongPress={onDemoPress} style={styleSheet.logo}>\n <Animated.View\n style={[styleSheet.animatedLogoWrapper, {transform: [{scale: interpolateScale}]}]}\n >\n <Animated.View style={[styleSheet.logoBG, fadeInFinalLogo.animatedStyle]} />\n <Animated.View style={[styleSheet.animatedLogo, fadeInFinalLogo.animatedStyle]}>\n <LogoCoorp fill=\"#0061FF\" />\n </Animated.View>\n <Animated.View style={[styleSheet.animatedLogo, fadeOutStartLogo.animatedStyle]}>\n <LogoCoorp fill=\"#fff\" />\n </Animated.View>\n </Animated.View>\n </Touchable>\n <Animated.View style={[styleSheet.content, fadeInContent.animatedStyle]}>\n <Text style={styleSheet.title}>{locales.title}</Text>\n <Text style={styleSheet.description}>{locales.description}</Text>\n\n <View style={styleSheet.actions}>\n <View style={styleSheet.buttons}>\n <Touchable\n style={[styleSheet.button, styleSheet.ctaQRCode]}\n onPress={onDesktopButtonPress}\n >\n <QrCodeIcon style={styleSheet.qrCodeIcon} />\n <Text style={styleSheet.ctaQRCodeText}>{locales.ctaQRCode}</Text>\n </Touchable>\n <Touchable\n style={[styleSheet.button, styleSheet.ctaReceiveMail]}\n onPress={onMobileButtonPress}\n >\n <MailIcon style={styleSheet.mailIcon} />\n <Text style={styleSheet.ctaReceiveMailText}>{locales.ctaReceiveMail}</Text>\n </Touchable>\n </View>\n <Touchable onPress={onHelpPress} style={styleSheet.help}>\n <Text style={styleSheet.titleHelp}>{locales.titleHelp}</Text>\n <Text style={styleSheet.ctaHelp}>{locales.ctaHelp}</Text>\n </Touchable>\n </View>\n </Animated.View>\n </Animated.View>\n );\n};\n\nexport default Welcome;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.native.js","names":["React","useEffect","useRef","useState","Animated","StyleSheet","Text","View","LinearGradient","NovaCompositionCoorpacademyLogoCoorp","LogoCoorp","NovaCompositionCoorpacademyQrCode","QrCodeIcon","NovaCompositionCoorpacademyEmail","MailIcon","useAnimateProp","useTranslateY","Touchable","useTemplateContext","createStyleSheet","theme","create","wrapper","top","bottom","left","right","flex","justifyContent","alignItems","paddingHorizontal","content","width","gradients","position","gradient","opacity","transform","rotate","gradient2","animatedLogoWrapper","animatedLogo","height","logo","padding","logoBG","backgroundColor","title","color","fontWeight","fontSize","lineHeight","paddingVertical","description","actions","buttons","button","marginVertical","flexDirection","borderRadius","overflow","ctaQrCode","colors","cta","ctaQrCodeText","marginLeft","qrCodeIcon","fill","ctaReceiveMail","ctaReceiveMailText","mailIcon","help","titleHelp","ctaHelp","textDecorationLine","Welcome","props","locales","onDemoPress","onQRCodeButtonPress","onHelpPress","onReceiveEmailButtonPress","styleSheet","setStylesheet","translateGradients","fromValue","toValue","duration","delay","translateContent","fadeInContent","property","fadeOutStartLogo","fadeInFinalLogo","scaleAnim","Value","current","interpolateScale","interpolate","inputRange","outputRange","_stylesheet","start","animatedScale","timing","useNativeDriver","animatedStyle","scale"],"sources":["../../../../src/template/mobile-login/welcome/index.native.tsx"],"sourcesContent":["import React, {useEffect, useRef, useState} from 'react';\nimport {Animated, StyleSheet, Text, TextStyle, View, ViewStyle} from 'react-native';\nimport LinearGradient from 'react-native-linear-gradient';\nimport {\n NovaCompositionCoorpacademyLogoCoorp as LogoCoorp,\n NovaCompositionCoorpacademyQrCode as QrCodeIcon,\n NovaCompositionCoorpacademyEmail as MailIcon\n} from '@coorpacademy/nova-icons';\nimport {useAnimateProp, useTranslateY} from '@coorpacademy/react-native-animation';\nimport Touchable from '../../../hoc/touchable/index.native';\nimport {useTemplateContext} from '../../app-review/template-context';\nimport {Theme} from '../../../variables/theme.native';\n\ntype StyleSheetType = {\n wrapper: ViewStyle;\n animatedLogoWrapper: ViewStyle;\n animatedLogo: ViewStyle;\n logo: ViewStyle;\n logoBG: ViewStyle;\n content: ViewStyle;\n gradients: ViewStyle;\n gradient: ViewStyle;\n gradient2: ViewStyle;\n title: TextStyle;\n description: TextStyle;\n actions: ViewStyle;\n buttons: ViewStyle;\n button: ViewStyle;\n qrCodeIcon: ViewStyle;\n mailIcon: ViewStyle;\n ctaQrCode: ViewStyle;\n ctaQrCodeText: TextStyle;\n ctaReceiveMail: ViewStyle;\n ctaReceiveMailText: TextStyle;\n help: ViewStyle;\n titleHelp: TextStyle;\n ctaHelp: ViewStyle;\n};\n\nconst createStyleSheet = (theme: Theme): StyleSheetType =>\n StyleSheet.create({\n wrapper: {\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n flex: 1,\n justifyContent: 'space-around',\n alignItems: 'center',\n paddingHorizontal: 24\n },\n content: {\n width: '100%',\n alignItems: 'flex-start'\n },\n gradients: {\n position: 'absolute',\n top: 400,\n bottom: 400,\n left: 0,\n right: 0,\n flex: 1\n },\n gradient: {\n position: 'absolute',\n top: -730,\n bottom: 0,\n left: -380,\n right: -380,\n opacity: 1,\n transform: [{rotate: '35deg'}]\n },\n gradient2: {\n position: 'absolute',\n top: -630,\n bottom: -200,\n left: -300,\n right: -400,\n opacity: 0.6,\n transform: [{rotate: '-35deg'}]\n },\n animatedLogoWrapper: {\n alignItems: 'center'\n },\n animatedLogo: {\n position: 'absolute',\n width: 77,\n height: 100\n },\n logo: {\n padding: 100\n },\n logoBG: {\n backgroundColor: '#fff',\n top: 20,\n width: 60,\n height: 60\n },\n title: {\n color: '#1D1D2B',\n fontWeight: '600',\n fontSize: 28,\n lineHeight: 36,\n paddingVertical: 8\n },\n description: {\n fontSize: 18,\n lineHeight: 24,\n paddingVertical: 8\n },\n actions: {\n width: '100%'\n },\n buttons: {\n paddingVertical: 20,\n alignItems: 'center'\n },\n button: {\n paddingVertical: 12,\n marginVertical: 4,\n width: '100%',\n flexDirection: 'row',\n justifyContent: 'center',\n borderRadius: 12,\n alignItems: 'center',\n overflow: 'hidden'\n },\n ctaQrCode: {\n backgroundColor: theme.colors.cta\n },\n ctaQrCodeText: {\n marginLeft: 8,\n color: '#fff',\n fontWeight: '700',\n fontSize: 14,\n lineHeight: 24\n },\n qrCodeIcon: {\n fill: '#fff',\n height: 14,\n width: 14\n },\n ctaReceiveMail: {\n backgroundColor: '#eaeaeb'\n },\n ctaReceiveMailText: {\n marginLeft: 8,\n color: '#1D1D2B',\n fontWeight: '700',\n fontSize: 14,\n lineHeight: 24\n },\n mailIcon: {\n fill: '#1D1D2B',\n height: 12,\n width: 16\n },\n help: {\n flexDirection: 'row',\n justifyContent: 'center'\n },\n titleHelp: {\n color: '#9999A8'\n },\n ctaHelp: {\n marginLeft: 5,\n textDecorationLine: 'underline',\n color: '#9999A8'\n }\n });\n\nexport type Props = {\n onDemoPress: () => void;\n onHelpPress: () => void;\n onQRCodeButtonPress: () => void;\n onReceiveEmailButtonPress: () => void;\n locales: {\n title: string;\n description: string;\n ctaQrCode: string;\n ctaReceiveMail: string;\n titleHelp: string;\n ctaHelp: string;\n };\n};\n\nconst Welcome = (props: Props) => {\n const {locales, onDemoPress, onQRCodeButtonPress, onHelpPress, onReceiveEmailButtonPress} = props;\n const {theme} = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n\n const translateGradients = useTranslateY({\n fromValue: 0,\n toValue: -200,\n duration: 300,\n delay: 750\n });\n\n const translateContent = useTranslateY({\n fromValue: 170,\n toValue: 0,\n duration: 450,\n delay: 750\n });\n\n const fadeInContent = useAnimateProp({\n property: 'opacity',\n fromValue: 0,\n toValue: 1,\n duration: 650,\n delay: 750\n });\n\n const fadeOutStartLogo = useAnimateProp({\n property: 'opacity',\n fromValue: 1,\n toValue: 0,\n duration: 450,\n delay: 1000\n });\n\n const fadeInFinalLogo = useAnimateProp({\n property: 'opacity',\n fromValue: 0,\n toValue: 1,\n duration: 250,\n delay: 900\n });\n\n const scaleAnim = useRef<Animated.Value>(new Animated.Value(0)).current;\n const interpolateScale = scaleAnim.interpolate({\n inputRange: [0, 0.4, 0.5, 0.6, 1],\n outputRange: [1, 1.7, 1.7, 1.7, 1]\n });\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n useEffect(() => {\n fadeInContent.start();\n fadeInFinalLogo.start();\n fadeOutStartLogo.start();\n translateContent.start();\n translateGradients.start();\n\n const animatedScale = Animated.timing(scaleAnim, {\n toValue: 1,\n duration: 1000,\n useNativeDriver: true\n });\n\n animatedScale.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (!styleSheet) {\n return null;\n }\n return (\n <Animated.View style={[styleSheet.wrapper, translateContent.animatedStyle]} testID=\"welcome\">\n <Animated.View style={[styleSheet.gradients, translateGradients.animatedStyle]}>\n <LinearGradient\n colors={['#0061FF', '#fff']}\n locations={[0, 0.95]}\n style={styleSheet.gradient}\n />\n <LinearGradient\n colors={['#2199AB', '#fff']}\n locations={[0, 0.95]}\n style={styleSheet.gradient2}\n />\n </Animated.View>\n\n <Touchable onLongPress={onDemoPress} style={styleSheet.logo}>\n <Animated.View\n style={[styleSheet.animatedLogoWrapper, {transform: [{scale: interpolateScale}]}]}\n >\n <Animated.View style={[styleSheet.logoBG, fadeInFinalLogo.animatedStyle]} />\n <Animated.View style={[styleSheet.animatedLogo, fadeInFinalLogo.animatedStyle]}>\n <LogoCoorp fill=\"#0061FF\" />\n </Animated.View>\n <Animated.View style={[styleSheet.animatedLogo, fadeOutStartLogo.animatedStyle]}>\n <LogoCoorp fill=\"#fff\" />\n </Animated.View>\n </Animated.View>\n </Touchable>\n <Animated.View style={[styleSheet.content, fadeInContent.animatedStyle]}>\n <Text style={styleSheet.title}>{locales.title}</Text>\n <Text style={styleSheet.description}>{locales.description}</Text>\n\n <View style={styleSheet.actions}>\n <View style={styleSheet.buttons}>\n <Touchable\n style={[styleSheet.button, styleSheet.ctaQrCode]}\n onPress={onQRCodeButtonPress}\n testID=\"qr-code-button\"\n >\n <QrCodeIcon style={styleSheet.qrCodeIcon} />\n <Text style={styleSheet.ctaQrCodeText}>{locales.ctaQrCode}</Text>\n </Touchable>\n <Touchable\n style={[styleSheet.button, styleSheet.ctaReceiveMail]}\n onPress={onReceiveEmailButtonPress}\n testID=\"receive-email-button\"\n >\n <MailIcon style={styleSheet.mailIcon} />\n <Text style={styleSheet.ctaReceiveMailText}>{locales.ctaReceiveMail}</Text>\n </Touchable>\n </View>\n <Touchable onPress={onHelpPress} style={styleSheet.help}>\n <Text style={styleSheet.titleHelp}>{locales.titleHelp}</Text>\n <Text style={styleSheet.ctaHelp}>{locales.ctaHelp}</Text>\n </Touchable>\n </View>\n </Animated.View>\n </Animated.View>\n );\n};\n\nexport default Welcome;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../../src/template/mobile-login/qr-code-scanner/index.native.tsx"],"names":[],"mappings":";AAQA,MAAM,WAAW,KAAK;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAuPD,QAAA,MAAM,aAAa,UAAW,KAAK,gBAkDlC,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../../src/template/mobile-login/qr-code-scanner/index.native.tsx"],"names":[],"mappings":";AAQA,MAAM,WAAW,KAAK;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAyPD,QAAA,MAAM,aAAa,UAAW,KAAK,gBAkDlC,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -120,11 +120,13 @@ const explanationsStyle = _reactNative.StyleSheet.create({
120
120
  explanations: {
121
121
  position: 'absolute',
122
122
  width: '100%',
123
- height: 300,
123
+ height: 260,
124
124
  bottom: 0,
125
125
  backgroundColor: '#fff',
126
- borderRadius: 30,
127
- padding: 24
126
+ borderTopLeftRadius: 30,
127
+ borderTopRightRadius: 30,
128
+ paddingHorizontal: 24,
129
+ paddingVertical: 8
128
130
  },
129
131
  titleWrapper: {
130
132
  flexDirection: 'row',
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.js","names":["HEIGHT","WIDTH","COLOR","BORDER_RADIUS","LINE_WIDTH","styles","StyleSheet","create","container","width","height","camera","blurs","position","opacity","blurTop","backgroundColor","transform","translateY","blurBottom","bottom","blurLeft","left","top","translateX","blurRight","right","targetStyle","target","borderRadius","overflow","square","stroke","explanationsStyle","explanations","padding","titleWrapper","flexDirection","alignItems","justifyContent","paddingVertical","qrCodeIcon","fill","titleText","fontWeight","color","fontSize","lineHeight","letterSpacing","marginLeft","line","paddingRight","lineText","marginRight","help","marginTop","titleHelp","ctaHelp","textDecorationLine","Corner","props","lineLength","Target","animationRef","useRef","Animated","Value","current","interpolate","inputRange","outputRange","useEffect","animation","timing","toValue","duration","delay","easing","Easing","out","sin","useNativeDriver","start","rotate","Explanations","locales","onHelpPress","animateBottom","title","explanation1","explanation2","QRCodeScanner","hasPermission","onScan","handleRead","useCallback","data","undefined","blurRef","blurOpacity","captureAudio"],"sources":["../../../../src/template/mobile-login/qr-code-scanner/index.native.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useRef} from 'react';\nimport {Animated, Easing, StyleSheet, Text, View, ViewStyle} from 'react-native';\n\nimport QRCodeScannerBase from 'react-native-qrcode-scanner';\nimport type {BarCodeReadEvent} from 'react-native-camera';\nimport {NovaCompositionCoorpacademyQrCode as QrCodeIcon} from '@coorpacademy/nova-icons';\nimport Touchable from '../../../hoc/touchable/index.native';\n\nexport interface Props {\n hasPermission: boolean;\n onScan: (token?: string) => void;\n onHelpPress: () => void;\n locales: {\n title: string;\n explanation1: string;\n explanation2: string;\n ctaHelp: string;\n titleHelp: string;\n };\n}\n\nconst HEIGHT = 280;\nconst WIDTH = 280;\nconst COLOR = '#fff';\nconst BORDER_RADIUS = 8;\n\nconst LINE_WIDTH = 7;\n\nconst styles = StyleSheet.create({\n container: {\n width: '100%',\n height: '100%'\n },\n camera: {\n width: '100%',\n height: '100%'\n },\n blurs: {\n position: 'absolute',\n width: '100%',\n height: '100%',\n opacity: 0.6\n },\n blurTop: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '100%',\n height: '35%',\n transform: [{translateY: -HEIGHT / 2 + LINE_WIDTH / 2}]\n },\n blurBottom: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '100%',\n height: '65%',\n bottom: 0,\n transform: [{translateY: HEIGHT / 2 - LINE_WIDTH / 2}]\n },\n blurLeft: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '50%',\n height: HEIGHT - LINE_WIDTH,\n left: 0,\n top: '35%',\n transform: [\n {translateX: -WIDTH / 2 + LINE_WIDTH / 2},\n {translateY: -HEIGHT / 2 + LINE_WIDTH / 2}\n ]\n },\n blurRight: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '50%',\n height: HEIGHT - LINE_WIDTH,\n right: 0,\n top: '35%',\n transform: [\n {translateX: WIDTH / 2 - LINE_WIDTH / 2},\n {translateY: -HEIGHT / 2 + LINE_WIDTH / 2}\n ]\n }\n});\n\nconst targetStyle = StyleSheet.create({\n target: {\n width: HEIGHT,\n height: WIDTH,\n top: '35%',\n left: '50%',\n transform: [{translateX: -WIDTH / 2}, {translateY: -HEIGHT / 2}],\n borderRadius: BORDER_RADIUS,\n position: 'absolute',\n overflow: 'hidden'\n },\n square: {\n position: 'absolute',\n width: '35%',\n height: '35%'\n },\n stroke: {\n position: 'absolute',\n top: 0,\n left: 0,\n backgroundColor: COLOR,\n borderRadius: BORDER_RADIUS\n }\n});\n\nconst explanationsStyle = StyleSheet.create({\n explanations: {\n position: 'absolute',\n width: '100%',\n height: 300,\n bottom: 0,\n backgroundColor: '#fff',\n borderRadius: 30,\n padding: 24\n },\n titleWrapper: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'flex-start',\n paddingVertical: 16\n },\n qrCodeIcon: {\n fill: '#000',\n height: 14,\n width: 14\n },\n titleText: {\n fontWeight: '600',\n color: '#1D1D2B',\n fontSize: 21,\n lineHeight: 30,\n letterSpacing: 0.5,\n marginLeft: 5\n },\n line: {\n flexDirection: 'row',\n paddingRight: 24,\n paddingVertical: 8\n },\n lineText: {\n fontWeight: '400',\n color: '#1D1D2B',\n fontSize: 18,\n lineHeight: 24,\n letterSpacing: 0.5,\n marginRight: 7\n },\n help: {\n flexDirection: 'row',\n marginTop: 12\n },\n titleHelp: {\n fontSize: 16,\n color: '#9999A8'\n },\n ctaHelp: {\n marginLeft: 5,\n fontSize: 16,\n letterSpacing: 0.5,\n textDecorationLine: 'underline',\n color: '#9999A8'\n }\n});\n\nconst Corner = (props: {position: ViewStyle; lineLength: Animated.AnimatedInterpolation}) => {\n const {position, lineLength} = props;\n\n return (\n <View style={[targetStyle.square, position]}>\n <Animated.View style={[targetStyle.stroke, {height: LINE_WIDTH, width: lineLength}]} />\n <Animated.View style={[targetStyle.stroke, {width: LINE_WIDTH, height: lineLength}]} />\n </View>\n );\n};\n\nconst Target = () => {\n const animationRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const lineLength = animationRef.interpolate({\n inputRange: [0, 1],\n outputRange: [0, WIDTH * 0.35]\n });\n\n useEffect(() => {\n const animation = Animated.timing(animationRef, {\n toValue: 1,\n duration: 700,\n delay: 400,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <View style={targetStyle.target}>\n <Corner lineLength={lineLength} position={{top: 0, left: 0, transform: [{rotate: '0deg'}]}} />\n <Corner\n lineLength={lineLength}\n position={{top: 0, right: 0, transform: [{rotate: '90deg'}]}}\n />\n <Corner\n lineLength={lineLength}\n position={{bottom: 0, right: 0, transform: [{rotate: '180deg'}]}}\n />\n <Corner\n lineLength={lineLength}\n position={{bottom: 0, left: 0, transform: [{rotate: '270deg'}]}}\n />\n </View>\n );\n};\n\nconst Explanations = (props: {locales: Props['locales']; onHelpPress: Props['onHelpPress']}) => {\n const {locales, onHelpPress} = props;\n\n const animationRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const animateBottom = animationRef.interpolate({\n inputRange: [0, 1],\n outputRange: [-300, 0]\n });\n\n useEffect(() => {\n const animation = Animated.timing(animationRef, {\n toValue: 1,\n duration: 600,\n delay: 400,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <Animated.View style={[explanationsStyle.explanations, {bottom: animateBottom}]}>\n <View style={explanationsStyle.titleWrapper}>\n <QrCodeIcon style={explanationsStyle.qrCodeIcon} />\n <Text style={explanationsStyle.titleText}>{locales.title}</Text>\n </View>\n <View style={explanationsStyle.line}>\n <Text style={explanationsStyle.lineText}>1.</Text>\n <Text style={explanationsStyle.lineText}>{locales.explanation1}</Text>\n </View>\n <View style={explanationsStyle.line}>\n <Text style={explanationsStyle.lineText}>2.</Text>\n <Text style={explanationsStyle.lineText}>{locales.explanation2}</Text>\n </View>\n\n <Touchable onPress={onHelpPress} style={explanationsStyle.help}>\n <Text style={explanationsStyle.titleHelp}>{locales.titleHelp}</Text>\n <Text style={explanationsStyle.ctaHelp}>{locales.ctaHelp}</Text>\n </Touchable>\n </Animated.View>\n );\n};\n\nconst QRCodeScanner = (props: Props) => {\n const {hasPermission, locales, onScan, onHelpPress} = props;\n\n const handleRead = useCallback(({data}: BarCodeReadEvent) => {\n onScan(typeof data === 'string' ? data : undefined);\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const blurRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const blurOpacity = blurRef.interpolate({\n inputRange: [0, 1],\n outputRange: [0, 0.7]\n });\n\n useEffect(() => {\n const animation = Animated.timing(blurRef, {\n toValue: 1,\n duration: 800,\n delay: 600,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <View style={styles.container} testID=\"qr-code-scanner\">\n {hasPermission ? (\n <QRCodeScannerBase\n fadeIn={false}\n onRead={handleRead}\n cameraStyle={styles.camera}\n cameraProps={{captureAudio: false}}\n />\n ) : null}\n <Animated.View style={[styles.blurs, {opacity: blurOpacity}]}>\n <View style={styles.blurTop} />\n <View style={styles.blurBottom} />\n <View style={styles.blurLeft} />\n <View style={styles.blurRight} />\n </Animated.View>\n <Target />\n <Explanations locales={locales} onHelpPress={onHelpPress} />\n </View>\n );\n};\n\nexport default QRCodeScanner;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.native.js","names":["HEIGHT","WIDTH","COLOR","BORDER_RADIUS","LINE_WIDTH","styles","StyleSheet","create","container","width","height","camera","blurs","position","opacity","blurTop","backgroundColor","transform","translateY","blurBottom","bottom","blurLeft","left","top","translateX","blurRight","right","targetStyle","target","borderRadius","overflow","square","stroke","explanationsStyle","explanations","borderTopLeftRadius","borderTopRightRadius","paddingHorizontal","paddingVertical","titleWrapper","flexDirection","alignItems","justifyContent","qrCodeIcon","fill","titleText","fontWeight","color","fontSize","lineHeight","letterSpacing","marginLeft","line","paddingRight","lineText","marginRight","help","marginTop","titleHelp","ctaHelp","textDecorationLine","Corner","props","lineLength","Target","animationRef","useRef","Animated","Value","current","interpolate","inputRange","outputRange","useEffect","animation","timing","toValue","duration","delay","easing","Easing","out","sin","useNativeDriver","start","rotate","Explanations","locales","onHelpPress","animateBottom","title","explanation1","explanation2","QRCodeScanner","hasPermission","onScan","handleRead","useCallback","data","undefined","blurRef","blurOpacity","captureAudio"],"sources":["../../../../src/template/mobile-login/qr-code-scanner/index.native.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useRef} from 'react';\nimport {Animated, Easing, StyleSheet, Text, View, ViewStyle} from 'react-native';\n\nimport QRCodeScannerBase from 'react-native-qrcode-scanner';\nimport type {BarCodeReadEvent} from 'react-native-camera';\nimport {NovaCompositionCoorpacademyQrCode as QrCodeIcon} from '@coorpacademy/nova-icons';\nimport Touchable from '../../../hoc/touchable/index.native';\n\nexport interface Props {\n hasPermission: boolean;\n onScan: (token?: string) => void;\n onHelpPress: () => void;\n locales: {\n title: string;\n explanation1: string;\n explanation2: string;\n ctaHelp: string;\n titleHelp: string;\n };\n}\n\nconst HEIGHT = 280;\nconst WIDTH = 280;\nconst COLOR = '#fff';\nconst BORDER_RADIUS = 8;\n\nconst LINE_WIDTH = 7;\n\nconst styles = StyleSheet.create({\n container: {\n width: '100%',\n height: '100%'\n },\n camera: {\n width: '100%',\n height: '100%'\n },\n blurs: {\n position: 'absolute',\n width: '100%',\n height: '100%',\n opacity: 0.6\n },\n blurTop: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '100%',\n height: '35%',\n transform: [{translateY: -HEIGHT / 2 + LINE_WIDTH / 2}]\n },\n blurBottom: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '100%',\n height: '65%',\n bottom: 0,\n transform: [{translateY: HEIGHT / 2 - LINE_WIDTH / 2}]\n },\n blurLeft: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '50%',\n height: HEIGHT - LINE_WIDTH,\n left: 0,\n top: '35%',\n transform: [\n {translateX: -WIDTH / 2 + LINE_WIDTH / 2},\n {translateY: -HEIGHT / 2 + LINE_WIDTH / 2}\n ]\n },\n blurRight: {\n position: 'absolute',\n backgroundColor: '#000',\n width: '50%',\n height: HEIGHT - LINE_WIDTH,\n right: 0,\n top: '35%',\n transform: [\n {translateX: WIDTH / 2 - LINE_WIDTH / 2},\n {translateY: -HEIGHT / 2 + LINE_WIDTH / 2}\n ]\n }\n});\n\nconst targetStyle = StyleSheet.create({\n target: {\n width: HEIGHT,\n height: WIDTH,\n top: '35%',\n left: '50%',\n transform: [{translateX: -WIDTH / 2}, {translateY: -HEIGHT / 2}],\n borderRadius: BORDER_RADIUS,\n position: 'absolute',\n overflow: 'hidden'\n },\n square: {\n position: 'absolute',\n width: '35%',\n height: '35%'\n },\n stroke: {\n position: 'absolute',\n top: 0,\n left: 0,\n backgroundColor: COLOR,\n borderRadius: BORDER_RADIUS\n }\n});\n\nconst explanationsStyle = StyleSheet.create({\n explanations: {\n position: 'absolute',\n width: '100%',\n height: 260,\n bottom: 0,\n backgroundColor: '#fff',\n borderTopLeftRadius: 30,\n borderTopRightRadius: 30,\n paddingHorizontal: 24,\n paddingVertical: 8\n },\n titleWrapper: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'flex-start',\n paddingVertical: 16\n },\n qrCodeIcon: {\n fill: '#000',\n height: 14,\n width: 14\n },\n titleText: {\n fontWeight: '600',\n color: '#1D1D2B',\n fontSize: 21,\n lineHeight: 30,\n letterSpacing: 0.5,\n marginLeft: 5\n },\n line: {\n flexDirection: 'row',\n paddingRight: 24,\n paddingVertical: 8\n },\n lineText: {\n fontWeight: '400',\n color: '#1D1D2B',\n fontSize: 18,\n lineHeight: 24,\n letterSpacing: 0.5,\n marginRight: 7\n },\n help: {\n flexDirection: 'row',\n marginTop: 12\n },\n titleHelp: {\n fontSize: 16,\n color: '#9999A8'\n },\n ctaHelp: {\n marginLeft: 5,\n fontSize: 16,\n letterSpacing: 0.5,\n textDecorationLine: 'underline',\n color: '#9999A8'\n }\n});\n\nconst Corner = (props: {position: ViewStyle; lineLength: Animated.AnimatedInterpolation}) => {\n const {position, lineLength} = props;\n\n return (\n <View style={[targetStyle.square, position]}>\n <Animated.View style={[targetStyle.stroke, {height: LINE_WIDTH, width: lineLength}]} />\n <Animated.View style={[targetStyle.stroke, {width: LINE_WIDTH, height: lineLength}]} />\n </View>\n );\n};\n\nconst Target = () => {\n const animationRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const lineLength = animationRef.interpolate({\n inputRange: [0, 1],\n outputRange: [0, WIDTH * 0.35]\n });\n\n useEffect(() => {\n const animation = Animated.timing(animationRef, {\n toValue: 1,\n duration: 700,\n delay: 400,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <View style={targetStyle.target}>\n <Corner lineLength={lineLength} position={{top: 0, left: 0, transform: [{rotate: '0deg'}]}} />\n <Corner\n lineLength={lineLength}\n position={{top: 0, right: 0, transform: [{rotate: '90deg'}]}}\n />\n <Corner\n lineLength={lineLength}\n position={{bottom: 0, right: 0, transform: [{rotate: '180deg'}]}}\n />\n <Corner\n lineLength={lineLength}\n position={{bottom: 0, left: 0, transform: [{rotate: '270deg'}]}}\n />\n </View>\n );\n};\n\nconst Explanations = (props: {locales: Props['locales']; onHelpPress: Props['onHelpPress']}) => {\n const {locales, onHelpPress} = props;\n\n const animationRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const animateBottom = animationRef.interpolate({\n inputRange: [0, 1],\n outputRange: [-300, 0]\n });\n\n useEffect(() => {\n const animation = Animated.timing(animationRef, {\n toValue: 1,\n duration: 600,\n delay: 400,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <Animated.View style={[explanationsStyle.explanations, {bottom: animateBottom}]}>\n <View style={explanationsStyle.titleWrapper}>\n <QrCodeIcon style={explanationsStyle.qrCodeIcon} />\n <Text style={explanationsStyle.titleText}>{locales.title}</Text>\n </View>\n <View style={explanationsStyle.line}>\n <Text style={explanationsStyle.lineText}>1.</Text>\n <Text style={explanationsStyle.lineText}>{locales.explanation1}</Text>\n </View>\n <View style={explanationsStyle.line}>\n <Text style={explanationsStyle.lineText}>2.</Text>\n <Text style={explanationsStyle.lineText}>{locales.explanation2}</Text>\n </View>\n\n <Touchable onPress={onHelpPress} style={explanationsStyle.help}>\n <Text style={explanationsStyle.titleHelp}>{locales.titleHelp}</Text>\n <Text style={explanationsStyle.ctaHelp}>{locales.ctaHelp}</Text>\n </Touchable>\n </Animated.View>\n );\n};\n\nconst QRCodeScanner = (props: Props) => {\n const {hasPermission, locales, onScan, onHelpPress} = props;\n\n const handleRead = useCallback(({data}: BarCodeReadEvent) => {\n onScan(typeof data === 'string' ? data : undefined);\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const blurRef = useRef<Animated.Value>(new Animated.Value(0)).current;\n const blurOpacity = blurRef.interpolate({\n inputRange: [0, 1],\n outputRange: [0, 0.7]\n });\n\n useEffect(() => {\n const animation = Animated.timing(blurRef, {\n toValue: 1,\n duration: 800,\n delay: 600,\n easing: Easing.out(Easing.sin),\n useNativeDriver: false\n });\n\n animation.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <View style={styles.container} testID=\"qr-code-scanner\">\n {hasPermission ? (\n <QRCodeScannerBase\n fadeIn={false}\n onRead={handleRead}\n cameraStyle={styles.camera}\n cameraProps={{captureAudio: false}}\n />\n ) : null}\n <Animated.View style={[styles.blurs, {opacity: blurOpacity}]}>\n <View style={styles.blurTop} />\n <View style={styles.blurBottom} />\n <View style={styles.blurLeft} />\n <View style={styles.blurRight} />\n </Animated.View>\n <Target />\n <Explanations locales={locales} onHelpPress={onHelpPress} />\n </View>\n );\n};\n\nexport default QRCodeScanner;\n"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  /// <reference types="react" />
2
2
  export declare type Props = {
3
3
  onDemoPress: () => void;
4
- onDesktopButtonPress: () => void;
5
4
  onHelpPress: () => void;
6
- onMobileButtonPress: () => void;
5
+ onQRCodeButtonPress: () => void;
6
+ onReceiveEmailButtonPress: () => void;
7
7
  locales: {
8
8
  title: string;
9
9
  description: string;
10
- ctaQRCode: string;
10
+ ctaQrCode: string;
11
11
  ctaReceiveMail: string;
12
12
  titleHelp: string;
13
13
  ctaHelp: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../../src/template/mobile-login/welcome/index.native.tsx"],"names":[],"mappings":";AA0KA,oBAAY,KAAK,GAAG;IAClB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,QAAA,MAAM,OAAO,UAAW,KAAK,uBAqI5B,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../../src/template/mobile-login/welcome/index.native.tsx"],"names":[],"mappings":";AA2KA,oBAAY,KAAK,GAAG;IAClB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,QAAA,MAAM,OAAO,UAAW,KAAK,uBAuI5B,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -86,6 +86,7 @@ const createStyleSheet = theme => _reactNative.StyleSheet.create({
86
86
  height: 60
87
87
  },
88
88
  title: {
89
+ color: '#1D1D2B',
89
90
  fontWeight: '600',
90
91
  fontSize: 28,
91
92
  lineHeight: 36,
@@ -113,10 +114,10 @@ const createStyleSheet = theme => _reactNative.StyleSheet.create({
113
114
  alignItems: 'center',
114
115
  overflow: 'hidden'
115
116
  },
116
- ctaQRCode: {
117
+ ctaQrCode: {
117
118
  backgroundColor: theme.colors.cta
118
119
  },
119
- ctaQRCodeText: {
120
+ ctaQrCodeText: {
120
121
  marginLeft: 8,
121
122
  color: '#fff',
122
123
  fontWeight: '700',
@@ -161,9 +162,9 @@ const Welcome = props => {
161
162
  const {
162
163
  locales,
163
164
  onDemoPress,
164
- onDesktopButtonPress,
165
+ onQRCodeButtonPress,
165
166
  onHelpPress,
166
- onMobileButtonPress
167
+ onReceiveEmailButtonPress
167
168
  } = props;
168
169
  const {
169
170
  theme
@@ -276,15 +277,17 @@ const Welcome = props => {
276
277
  }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
277
278
  style: styleSheet.buttons
278
279
  }, /*#__PURE__*/_react.default.createElement(_index.default, {
279
- style: [styleSheet.button, styleSheet.ctaQRCode],
280
- onPress: onDesktopButtonPress
280
+ style: [styleSheet.button, styleSheet.ctaQrCode],
281
+ onPress: onQRCodeButtonPress,
282
+ testID: "qr-code-button"
281
283
  }, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyQrCode, {
282
284
  style: styleSheet.qrCodeIcon
283
285
  }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
284
- style: styleSheet.ctaQRCodeText
285
- }, locales.ctaQRCode)), /*#__PURE__*/_react.default.createElement(_index.default, {
286
+ style: styleSheet.ctaQrCodeText
287
+ }, locales.ctaQrCode)), /*#__PURE__*/_react.default.createElement(_index.default, {
286
288
  style: [styleSheet.button, styleSheet.ctaReceiveMail],
287
- onPress: onMobileButtonPress
289
+ onPress: onReceiveEmailButtonPress,
290
+ testID: "receive-email-button"
288
291
  }, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionCoorpacademyEmail, {
289
292
  style: styleSheet.mailIcon
290
293
  }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.js","names":["createStyleSheet","theme","StyleSheet","create","wrapper","top","bottom","left","right","flex","justifyContent","alignItems","paddingHorizontal","content","width","gradients","position","gradient","opacity","transform","rotate","gradient2","animatedLogoWrapper","animatedLogo","height","logo","padding","logoBG","backgroundColor","title","fontWeight","fontSize","lineHeight","paddingVertical","description","actions","buttons","button","marginVertical","flexDirection","borderRadius","overflow","ctaQRCode","colors","cta","ctaQRCodeText","marginLeft","color","qrCodeIcon","fill","ctaReceiveMail","ctaReceiveMailText","mailIcon","help","titleHelp","ctaHelp","textDecorationLine","Welcome","props","locales","onDemoPress","onDesktopButtonPress","onHelpPress","onMobileButtonPress","useTemplateContext","styleSheet","setStylesheet","useState","translateGradients","useTranslateY","fromValue","toValue","duration","delay","translateContent","fadeInContent","useAnimateProp","property","fadeOutStartLogo","fadeInFinalLogo","scaleAnim","useRef","Animated","Value","current","interpolateScale","interpolate","inputRange","outputRange","useEffect","_stylesheet","start","animatedScale","timing","useNativeDriver","animatedStyle","scale"],"sources":["../../../../src/template/mobile-login/welcome/index.native.tsx"],"sourcesContent":["import React, {useEffect, useRef, useState} from 'react';\nimport {Animated, StyleSheet, Text, TextStyle, View, ViewStyle} from 'react-native';\nimport LinearGradient from 'react-native-linear-gradient';\nimport {\n NovaCompositionCoorpacademyLogoCoorp as LogoCoorp,\n NovaCompositionCoorpacademyQrCode as QrCodeIcon,\n NovaCompositionCoorpacademyEmail as MailIcon\n} from '@coorpacademy/nova-icons';\nimport {useAnimateProp, useTranslateY} from '@coorpacademy/react-native-animation';\nimport Touchable from '../../../hoc/touchable/index.native';\nimport {useTemplateContext} from '../../app-review/template-context';\nimport {Theme} from '../../../variables/theme.native';\n\ntype StyleSheetType = {\n wrapper: ViewStyle;\n animatedLogoWrapper: ViewStyle;\n animatedLogo: ViewStyle;\n logo: ViewStyle;\n logoBG: ViewStyle;\n content: ViewStyle;\n gradients: ViewStyle;\n gradient: ViewStyle;\n gradient2: ViewStyle;\n title: TextStyle;\n description: TextStyle;\n actions: ViewStyle;\n buttons: ViewStyle;\n button: ViewStyle;\n qrCodeIcon: ViewStyle;\n mailIcon: ViewStyle;\n ctaQRCode: ViewStyle;\n ctaQRCodeText: TextStyle;\n ctaReceiveMail: ViewStyle;\n ctaReceiveMailText: TextStyle;\n help: ViewStyle;\n titleHelp: TextStyle;\n ctaHelp: ViewStyle;\n};\n\nconst createStyleSheet = (theme: Theme): StyleSheetType =>\n StyleSheet.create({\n wrapper: {\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n flex: 1,\n justifyContent: 'space-around',\n alignItems: 'center',\n paddingHorizontal: 24\n },\n content: {\n width: '100%',\n alignItems: 'flex-start'\n },\n gradients: {\n position: 'absolute',\n top: 400,\n bottom: 400,\n left: 0,\n right: 0,\n flex: 1\n },\n gradient: {\n position: 'absolute',\n top: -730,\n bottom: 0,\n left: -380,\n right: -380,\n opacity: 1,\n transform: [{rotate: '35deg'}]\n },\n gradient2: {\n position: 'absolute',\n top: -630,\n bottom: -200,\n left: -300,\n right: -400,\n opacity: 0.6,\n transform: [{rotate: '-35deg'}]\n },\n animatedLogoWrapper: {\n alignItems: 'center'\n },\n animatedLogo: {\n position: 'absolute',\n width: 77,\n height: 100\n },\n logo: {\n padding: 100\n },\n logoBG: {\n backgroundColor: '#fff',\n top: 20,\n width: 60,\n height: 60\n },\n title: {\n fontWeight: '600',\n fontSize: 28,\n lineHeight: 36,\n paddingVertical: 8\n },\n description: {\n fontSize: 18,\n lineHeight: 24,\n paddingVertical: 8\n },\n actions: {\n width: '100%'\n },\n buttons: {\n paddingVertical: 20,\n alignItems: 'center'\n },\n button: {\n paddingVertical: 12,\n marginVertical: 4,\n width: '100%',\n flexDirection: 'row',\n justifyContent: 'center',\n borderRadius: 12,\n alignItems: 'center',\n overflow: 'hidden'\n },\n ctaQRCode: {\n backgroundColor: theme.colors.cta\n },\n ctaQRCodeText: {\n marginLeft: 8,\n color: '#fff',\n fontWeight: '700',\n fontSize: 14,\n lineHeight: 24\n },\n qrCodeIcon: {\n fill: '#fff',\n height: 14,\n width: 14\n },\n ctaReceiveMail: {\n backgroundColor: '#eaeaeb'\n },\n ctaReceiveMailText: {\n marginLeft: 8,\n color: '#1D1D2B',\n fontWeight: '700',\n fontSize: 14,\n lineHeight: 24\n },\n mailIcon: {\n fill: '#1D1D2B',\n height: 12,\n width: 16\n },\n help: {\n flexDirection: 'row',\n justifyContent: 'center'\n },\n titleHelp: {\n color: '#9999A8'\n },\n ctaHelp: {\n marginLeft: 5,\n textDecorationLine: 'underline',\n color: '#9999A8'\n }\n });\n\nexport type Props = {\n onDemoPress: () => void;\n onDesktopButtonPress: () => void;\n onHelpPress: () => void;\n onMobileButtonPress: () => void;\n locales: {\n title: string;\n description: string;\n ctaQRCode: string;\n ctaReceiveMail: string;\n titleHelp: string;\n ctaHelp: string;\n };\n};\n\nconst Welcome = (props: Props) => {\n const {locales, onDemoPress, onDesktopButtonPress, onHelpPress, onMobileButtonPress} = props;\n const {theme} = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n\n const translateGradients = useTranslateY({\n fromValue: 0,\n toValue: -200,\n duration: 300,\n delay: 750\n });\n\n const translateContent = useTranslateY({\n fromValue: 170,\n toValue: 0,\n duration: 450,\n delay: 750\n });\n\n const fadeInContent = useAnimateProp({\n property: 'opacity',\n fromValue: 0,\n toValue: 1,\n duration: 650,\n delay: 750\n });\n\n const fadeOutStartLogo = useAnimateProp({\n property: 'opacity',\n fromValue: 1,\n toValue: 0,\n duration: 450,\n delay: 1000\n });\n\n const fadeInFinalLogo = useAnimateProp({\n property: 'opacity',\n fromValue: 0,\n toValue: 1,\n duration: 250,\n delay: 900\n });\n\n const scaleAnim = useRef<Animated.Value>(new Animated.Value(0)).current;\n const interpolateScale = scaleAnim.interpolate({\n inputRange: [0, 0.4, 0.5, 0.6, 1],\n outputRange: [1, 1.7, 1.7, 1.7, 1]\n });\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n useEffect(() => {\n fadeInContent.start();\n fadeInFinalLogo.start();\n fadeOutStartLogo.start();\n translateContent.start();\n translateGradients.start();\n\n const animatedScale = Animated.timing(scaleAnim, {\n toValue: 1,\n duration: 1000,\n useNativeDriver: true\n });\n\n animatedScale.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (!styleSheet) {\n return null;\n }\n return (\n <Animated.View style={[styleSheet.wrapper, translateContent.animatedStyle]} testID=\"welcome\">\n <Animated.View style={[styleSheet.gradients, translateGradients.animatedStyle]}>\n <LinearGradient\n colors={['#0061FF', '#fff']}\n locations={[0, 0.95]}\n style={styleSheet.gradient}\n />\n <LinearGradient\n colors={['#2199AB', '#fff']}\n locations={[0, 0.95]}\n style={styleSheet.gradient2}\n />\n </Animated.View>\n\n <Touchable onLongPress={onDemoPress} style={styleSheet.logo}>\n <Animated.View\n style={[styleSheet.animatedLogoWrapper, {transform: [{scale: interpolateScale}]}]}\n >\n <Animated.View style={[styleSheet.logoBG, fadeInFinalLogo.animatedStyle]} />\n <Animated.View style={[styleSheet.animatedLogo, fadeInFinalLogo.animatedStyle]}>\n <LogoCoorp fill=\"#0061FF\" />\n </Animated.View>\n <Animated.View style={[styleSheet.animatedLogo, fadeOutStartLogo.animatedStyle]}>\n <LogoCoorp fill=\"#fff\" />\n </Animated.View>\n </Animated.View>\n </Touchable>\n <Animated.View style={[styleSheet.content, fadeInContent.animatedStyle]}>\n <Text style={styleSheet.title}>{locales.title}</Text>\n <Text style={styleSheet.description}>{locales.description}</Text>\n\n <View style={styleSheet.actions}>\n <View style={styleSheet.buttons}>\n <Touchable\n style={[styleSheet.button, styleSheet.ctaQRCode]}\n onPress={onDesktopButtonPress}\n >\n <QrCodeIcon style={styleSheet.qrCodeIcon} />\n <Text style={styleSheet.ctaQRCodeText}>{locales.ctaQRCode}</Text>\n </Touchable>\n <Touchable\n style={[styleSheet.button, styleSheet.ctaReceiveMail]}\n onPress={onMobileButtonPress}\n >\n <MailIcon style={styleSheet.mailIcon} />\n <Text style={styleSheet.ctaReceiveMailText}>{locales.ctaReceiveMail}</Text>\n </Touchable>\n </View>\n <Touchable onPress={onHelpPress} style={styleSheet.help}>\n <Text style={styleSheet.titleHelp}>{locales.titleHelp}</Text>\n <Text style={styleSheet.ctaHelp}>{locales.ctaHelp}</Text>\n </Touchable>\n </View>\n </Animated.View>\n </Animated.View>\n );\n};\n\nexport default Welcome;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.native.js","names":["createStyleSheet","theme","StyleSheet","create","wrapper","top","bottom","left","right","flex","justifyContent","alignItems","paddingHorizontal","content","width","gradients","position","gradient","opacity","transform","rotate","gradient2","animatedLogoWrapper","animatedLogo","height","logo","padding","logoBG","backgroundColor","title","color","fontWeight","fontSize","lineHeight","paddingVertical","description","actions","buttons","button","marginVertical","flexDirection","borderRadius","overflow","ctaQrCode","colors","cta","ctaQrCodeText","marginLeft","qrCodeIcon","fill","ctaReceiveMail","ctaReceiveMailText","mailIcon","help","titleHelp","ctaHelp","textDecorationLine","Welcome","props","locales","onDemoPress","onQRCodeButtonPress","onHelpPress","onReceiveEmailButtonPress","useTemplateContext","styleSheet","setStylesheet","useState","translateGradients","useTranslateY","fromValue","toValue","duration","delay","translateContent","fadeInContent","useAnimateProp","property","fadeOutStartLogo","fadeInFinalLogo","scaleAnim","useRef","Animated","Value","current","interpolateScale","interpolate","inputRange","outputRange","useEffect","_stylesheet","start","animatedScale","timing","useNativeDriver","animatedStyle","scale"],"sources":["../../../../src/template/mobile-login/welcome/index.native.tsx"],"sourcesContent":["import React, {useEffect, useRef, useState} from 'react';\nimport {Animated, StyleSheet, Text, TextStyle, View, ViewStyle} from 'react-native';\nimport LinearGradient from 'react-native-linear-gradient';\nimport {\n NovaCompositionCoorpacademyLogoCoorp as LogoCoorp,\n NovaCompositionCoorpacademyQrCode as QrCodeIcon,\n NovaCompositionCoorpacademyEmail as MailIcon\n} from '@coorpacademy/nova-icons';\nimport {useAnimateProp, useTranslateY} from '@coorpacademy/react-native-animation';\nimport Touchable from '../../../hoc/touchable/index.native';\nimport {useTemplateContext} from '../../app-review/template-context';\nimport {Theme} from '../../../variables/theme.native';\n\ntype StyleSheetType = {\n wrapper: ViewStyle;\n animatedLogoWrapper: ViewStyle;\n animatedLogo: ViewStyle;\n logo: ViewStyle;\n logoBG: ViewStyle;\n content: ViewStyle;\n gradients: ViewStyle;\n gradient: ViewStyle;\n gradient2: ViewStyle;\n title: TextStyle;\n description: TextStyle;\n actions: ViewStyle;\n buttons: ViewStyle;\n button: ViewStyle;\n qrCodeIcon: ViewStyle;\n mailIcon: ViewStyle;\n ctaQrCode: ViewStyle;\n ctaQrCodeText: TextStyle;\n ctaReceiveMail: ViewStyle;\n ctaReceiveMailText: TextStyle;\n help: ViewStyle;\n titleHelp: TextStyle;\n ctaHelp: ViewStyle;\n};\n\nconst createStyleSheet = (theme: Theme): StyleSheetType =>\n StyleSheet.create({\n wrapper: {\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n flex: 1,\n justifyContent: 'space-around',\n alignItems: 'center',\n paddingHorizontal: 24\n },\n content: {\n width: '100%',\n alignItems: 'flex-start'\n },\n gradients: {\n position: 'absolute',\n top: 400,\n bottom: 400,\n left: 0,\n right: 0,\n flex: 1\n },\n gradient: {\n position: 'absolute',\n top: -730,\n bottom: 0,\n left: -380,\n right: -380,\n opacity: 1,\n transform: [{rotate: '35deg'}]\n },\n gradient2: {\n position: 'absolute',\n top: -630,\n bottom: -200,\n left: -300,\n right: -400,\n opacity: 0.6,\n transform: [{rotate: '-35deg'}]\n },\n animatedLogoWrapper: {\n alignItems: 'center'\n },\n animatedLogo: {\n position: 'absolute',\n width: 77,\n height: 100\n },\n logo: {\n padding: 100\n },\n logoBG: {\n backgroundColor: '#fff',\n top: 20,\n width: 60,\n height: 60\n },\n title: {\n color: '#1D1D2B',\n fontWeight: '600',\n fontSize: 28,\n lineHeight: 36,\n paddingVertical: 8\n },\n description: {\n fontSize: 18,\n lineHeight: 24,\n paddingVertical: 8\n },\n actions: {\n width: '100%'\n },\n buttons: {\n paddingVertical: 20,\n alignItems: 'center'\n },\n button: {\n paddingVertical: 12,\n marginVertical: 4,\n width: '100%',\n flexDirection: 'row',\n justifyContent: 'center',\n borderRadius: 12,\n alignItems: 'center',\n overflow: 'hidden'\n },\n ctaQrCode: {\n backgroundColor: theme.colors.cta\n },\n ctaQrCodeText: {\n marginLeft: 8,\n color: '#fff',\n fontWeight: '700',\n fontSize: 14,\n lineHeight: 24\n },\n qrCodeIcon: {\n fill: '#fff',\n height: 14,\n width: 14\n },\n ctaReceiveMail: {\n backgroundColor: '#eaeaeb'\n },\n ctaReceiveMailText: {\n marginLeft: 8,\n color: '#1D1D2B',\n fontWeight: '700',\n fontSize: 14,\n lineHeight: 24\n },\n mailIcon: {\n fill: '#1D1D2B',\n height: 12,\n width: 16\n },\n help: {\n flexDirection: 'row',\n justifyContent: 'center'\n },\n titleHelp: {\n color: '#9999A8'\n },\n ctaHelp: {\n marginLeft: 5,\n textDecorationLine: 'underline',\n color: '#9999A8'\n }\n });\n\nexport type Props = {\n onDemoPress: () => void;\n onHelpPress: () => void;\n onQRCodeButtonPress: () => void;\n onReceiveEmailButtonPress: () => void;\n locales: {\n title: string;\n description: string;\n ctaQrCode: string;\n ctaReceiveMail: string;\n titleHelp: string;\n ctaHelp: string;\n };\n};\n\nconst Welcome = (props: Props) => {\n const {locales, onDemoPress, onQRCodeButtonPress, onHelpPress, onReceiveEmailButtonPress} = props;\n const {theme} = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n\n const translateGradients = useTranslateY({\n fromValue: 0,\n toValue: -200,\n duration: 300,\n delay: 750\n });\n\n const translateContent = useTranslateY({\n fromValue: 170,\n toValue: 0,\n duration: 450,\n delay: 750\n });\n\n const fadeInContent = useAnimateProp({\n property: 'opacity',\n fromValue: 0,\n toValue: 1,\n duration: 650,\n delay: 750\n });\n\n const fadeOutStartLogo = useAnimateProp({\n property: 'opacity',\n fromValue: 1,\n toValue: 0,\n duration: 450,\n delay: 1000\n });\n\n const fadeInFinalLogo = useAnimateProp({\n property: 'opacity',\n fromValue: 0,\n toValue: 1,\n duration: 250,\n delay: 900\n });\n\n const scaleAnim = useRef<Animated.Value>(new Animated.Value(0)).current;\n const interpolateScale = scaleAnim.interpolate({\n inputRange: [0, 0.4, 0.5, 0.6, 1],\n outputRange: [1, 1.7, 1.7, 1.7, 1]\n });\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n useEffect(() => {\n fadeInContent.start();\n fadeInFinalLogo.start();\n fadeOutStartLogo.start();\n translateContent.start();\n translateGradients.start();\n\n const animatedScale = Animated.timing(scaleAnim, {\n toValue: 1,\n duration: 1000,\n useNativeDriver: true\n });\n\n animatedScale.start();\n\n // on mount only\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (!styleSheet) {\n return null;\n }\n return (\n <Animated.View style={[styleSheet.wrapper, translateContent.animatedStyle]} testID=\"welcome\">\n <Animated.View style={[styleSheet.gradients, translateGradients.animatedStyle]}>\n <LinearGradient\n colors={['#0061FF', '#fff']}\n locations={[0, 0.95]}\n style={styleSheet.gradient}\n />\n <LinearGradient\n colors={['#2199AB', '#fff']}\n locations={[0, 0.95]}\n style={styleSheet.gradient2}\n />\n </Animated.View>\n\n <Touchable onLongPress={onDemoPress} style={styleSheet.logo}>\n <Animated.View\n style={[styleSheet.animatedLogoWrapper, {transform: [{scale: interpolateScale}]}]}\n >\n <Animated.View style={[styleSheet.logoBG, fadeInFinalLogo.animatedStyle]} />\n <Animated.View style={[styleSheet.animatedLogo, fadeInFinalLogo.animatedStyle]}>\n <LogoCoorp fill=\"#0061FF\" />\n </Animated.View>\n <Animated.View style={[styleSheet.animatedLogo, fadeOutStartLogo.animatedStyle]}>\n <LogoCoorp fill=\"#fff\" />\n </Animated.View>\n </Animated.View>\n </Touchable>\n <Animated.View style={[styleSheet.content, fadeInContent.animatedStyle]}>\n <Text style={styleSheet.title}>{locales.title}</Text>\n <Text style={styleSheet.description}>{locales.description}</Text>\n\n <View style={styleSheet.actions}>\n <View style={styleSheet.buttons}>\n <Touchable\n style={[styleSheet.button, styleSheet.ctaQrCode]}\n onPress={onQRCodeButtonPress}\n testID=\"qr-code-button\"\n >\n <QrCodeIcon style={styleSheet.qrCodeIcon} />\n <Text style={styleSheet.ctaQrCodeText}>{locales.ctaQrCode}</Text>\n </Touchable>\n <Touchable\n style={[styleSheet.button, styleSheet.ctaReceiveMail]}\n onPress={onReceiveEmailButtonPress}\n testID=\"receive-email-button\"\n >\n <MailIcon style={styleSheet.mailIcon} />\n <Text style={styleSheet.ctaReceiveMailText}>{locales.ctaReceiveMail}</Text>\n </Touchable>\n </View>\n <Touchable onPress={onHelpPress} style={styleSheet.help}>\n <Text style={styleSheet.titleHelp}>{locales.titleHelp}</Text>\n <Text style={styleSheet.ctaHelp}>{locales.ctaHelp}</Text>\n </Touchable>\n </View>\n </Animated.View>\n </Animated.View>\n );\n};\n\nexport default Welcome;\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coorpacademy/components",
3
- "version": "11.14.6",
3
+ "version": "11.14.7",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -168,5 +168,5 @@
168
168
  "last 2 versions",
169
169
  "IE 11"
170
170
  ],
171
- "gitHead": "298364f952f3c2cfae797b66ba3b60a89f8dd9f5"
171
+ "gitHead": "f4096ff384af06662667596fa6e9ce56914889fb"
172
172
  }