@coorpacademy/components 10.30.1 → 10.30.3
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/es/atom/gradient/index.native.d.ts +1 -1
- package/es/atom/gradient/index.native.d.ts.map +1 -1
- package/es/atom/gradient/index.native.js.map +1 -1
- package/es/atom/review-presentation/index.native.d.ts.map +1 -1
- package/es/atom/review-presentation/index.native.js +26 -18
- package/es/atom/review-presentation/index.native.js.map +1 -1
- package/es/atom/text/index.native.d.ts +1 -0
- package/es/atom/text/index.native.d.ts.map +1 -1
- package/es/atom/text/index.native.js +4 -2
- package/es/atom/text/index.native.js.map +1 -1
- package/es/hoc/touchable/index.native.d.ts +1 -0
- package/es/hoc/touchable/index.native.d.ts.map +1 -1
- package/es/hoc/touchable/index.native.js.map +1 -1
- package/es/molecule/review-correction-popin/index.native.d.ts +5 -0
- package/es/molecule/review-correction-popin/index.native.d.ts.map +1 -0
- package/es/molecule/review-correction-popin/index.native.js +316 -0
- package/es/molecule/review-correction-popin/index.native.js.map +1 -0
- package/es/molecule/review-correction-popin/prop-types.d.ts +7 -5
- package/es/molecule/review-correction-popin/prop-types.d.ts.map +1 -1
- package/es/molecule/review-correction-popin/prop-types.js.map +1 -1
- package/es/organism/mooc-header/style.css +2 -2
- package/es/organism/review-slide/index.native.d.ts.map +1 -1
- package/es/organism/review-slide/index.native.js +16 -15
- package/es/organism/review-slide/index.native.js.map +1 -1
- package/es/template/app-review/skills/style.css +2 -1
- package/es/template/review-dashboard-skills/style.css +1 -1
- package/lib/atom/gradient/index.native.d.ts +1 -1
- package/lib/atom/gradient/index.native.d.ts.map +1 -1
- package/lib/atom/gradient/index.native.js.map +1 -1
- package/lib/atom/review-presentation/index.native.d.ts.map +1 -1
- package/lib/atom/review-presentation/index.native.js +27 -18
- package/lib/atom/review-presentation/index.native.js.map +1 -1
- package/lib/atom/text/index.native.d.ts +1 -0
- package/lib/atom/text/index.native.d.ts.map +1 -1
- package/lib/atom/text/index.native.js +4 -2
- package/lib/atom/text/index.native.js.map +1 -1
- package/lib/hoc/touchable/index.native.d.ts +1 -0
- package/lib/hoc/touchable/index.native.d.ts.map +1 -1
- package/lib/hoc/touchable/index.native.js.map +1 -1
- package/lib/molecule/review-correction-popin/index.native.d.ts +5 -0
- package/lib/molecule/review-correction-popin/index.native.d.ts.map +1 -0
- package/lib/molecule/review-correction-popin/index.native.js +334 -0
- package/lib/molecule/review-correction-popin/index.native.js.map +1 -0
- package/lib/molecule/review-correction-popin/prop-types.d.ts +7 -5
- package/lib/molecule/review-correction-popin/prop-types.d.ts.map +1 -1
- package/lib/molecule/review-correction-popin/prop-types.js.map +1 -1
- package/lib/organism/mooc-header/style.css +2 -2
- package/lib/organism/review-slide/index.native.d.ts.map +1 -1
- package/lib/organism/review-slide/index.native.js +19 -16
- package/lib/organism/review-slide/index.native.js.map +1 -1
- package/lib/template/app-review/skills/style.css +2 -1
- package/lib/template/review-dashboard-skills/style.css +1 -1
- package/package.json +2 -2
|
@@ -5,7 +5,7 @@ export declare type Props = {
|
|
|
5
5
|
colors: Array<string>;
|
|
6
6
|
transparencyPosition?: 'top' | 'bottom';
|
|
7
7
|
height?: number;
|
|
8
|
-
style?: ViewStyle | ViewStyle[]
|
|
8
|
+
style?: ViewStyle | ViewStyle[];
|
|
9
9
|
testID?: string;
|
|
10
10
|
pointerEvents?: 'auto' | 'none' | 'box-none' | 'box-only' | undefined;
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/atom/gradient/index.native.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACvC,OAAO,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAIvC,oBAAY,KAAK,GAAG;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtB,oBAAoB,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/atom/gradient/index.native.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACvC,OAAO,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAIvC,oBAAY,KAAK,GAAG;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtB,oBAAoB,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;CACvE,CAAC;AAEF,QAAA,MAAM,QAAQ,qFAQX,KAAK,gBA+BP,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.js","names":["React","LinearGradient","Color","Gradient","children","colors","transparencyPosition","height","style","testID","pointerEvents","calculatedColors","length","r","g","b","object","_style","push"],"sources":["../../../src/atom/gradient/index.native.tsx"],"sourcesContent":["import React, {ReactNode} from 'react';\nimport {ViewStyle} from 'react-native';\nimport LinearGradient from 'react-native-linear-gradient';\nimport Color from 'color';\n\nexport type Props = {\n children?: ReactNode;\n colors: Array<string>;\n transparencyPosition?: 'top' | 'bottom';\n height?: number;\n style?: ViewStyle | ViewStyle[]
|
|
1
|
+
{"version":3,"file":"index.native.js","names":["React","LinearGradient","Color","Gradient","children","colors","transparencyPosition","height","style","testID","pointerEvents","calculatedColors","length","r","g","b","object","_style","push"],"sources":["../../../src/atom/gradient/index.native.tsx"],"sourcesContent":["import React, {ReactNode} from 'react';\nimport {ViewStyle} from 'react-native';\nimport LinearGradient from 'react-native-linear-gradient';\nimport Color from 'color';\n\nexport type Props = {\n children?: ReactNode;\n colors: Array<string>;\n transparencyPosition?: 'top' | 'bottom';\n height?: number;\n style?: ViewStyle | ViewStyle[];\n testID?: string;\n pointerEvents?: 'auto' | 'none' | 'box-none' | 'box-only' | undefined;\n};\n\nconst Gradient = ({\n children,\n colors,\n transparencyPosition = 'top',\n height,\n style,\n testID,\n pointerEvents\n}: Props) => {\n let calculatedColors = colors;\n if (colors.length === 1) {\n const {r, g, b} = Color(colors[0]).object();\n calculatedColors =\n transparencyPosition === 'top'\n ? [`rgba(${r}, ${g}, ${b}, 0)`, colors[0], colors[0]]\n : [colors[0], colors[0], `rgba(${r}, ${g}, ${b}, 0)`];\n }\n\n const _style = [];\n\n if (style) {\n _style.push(style);\n }\n if (height) {\n _style.push({height});\n }\n\n return (\n (\n <LinearGradient\n colors={calculatedColors}\n style={_style}\n pointerEvents={pointerEvents}\n testID={testID}\n >\n {children}\n </LinearGradient>\n ) || null\n );\n};\n\nexport default Gradient;\n"],"mappings":"AAAA,OAAOA,KAAP,MAA+B,OAA/B;AAEA,OAAOC,cAAP,MAA2B,8BAA3B;AACA,OAAOC,KAAP,MAAkB,OAAlB;;AAYA,MAAMC,QAAQ,GAAG,CAAC;EAChBC,QADgB;EAEhBC,MAFgB;EAGhBC,oBAAoB,GAAG,KAHP;EAIhBC,MAJgB;EAKhBC,KALgB;EAMhBC,MANgB;EAOhBC;AAPgB,CAAD,KAQJ;EACX,IAAIC,gBAAgB,GAAGN,MAAvB;;EACA,IAAIA,MAAM,CAACO,MAAP,KAAkB,CAAtB,EAAyB;IACvB,MAAM;MAACC,CAAD;MAAIC,CAAJ;MAAOC;IAAP,IAAYb,KAAK,CAACG,MAAM,CAAC,CAAD,CAAP,CAAL,CAAiBW,MAAjB,EAAlB;IACAL,gBAAgB,GACdL,oBAAoB,KAAK,KAAzB,GACI,CAAE,QAAOO,CAAE,KAAIC,CAAE,KAAIC,CAAE,MAAvB,EAA8BV,MAAM,CAAC,CAAD,CAApC,EAAyCA,MAAM,CAAC,CAAD,CAA/C,CADJ,GAEI,CAACA,MAAM,CAAC,CAAD,CAAP,EAAYA,MAAM,CAAC,CAAD,CAAlB,EAAwB,QAAOQ,CAAE,KAAIC,CAAE,KAAIC,CAAE,MAA7C,CAHN;EAID;;EAED,MAAME,MAAM,GAAG,EAAf;;EAEA,IAAIT,KAAJ,EAAW;IACTS,MAAM,CAACC,IAAP,CAAYV,KAAZ;EACD;;EACD,IAAID,MAAJ,EAAY;IACVU,MAAM,CAACC,IAAP,CAAY;MAACX;IAAD,CAAZ;EACD;;EAED,OACE,aACE,oBAAC,cAAD;IACE,MAAM,EAAEI,gBADV;IAEE,KAAK,EAAEM,MAFT;IAGE,aAAa,EAAEP,aAHjB;IAIE,MAAM,EAAED;EAJV,GAMGL,QANH,CADF,IASK,IAVP;AAYD,CAvCD;;AAyCA,eAAeD,QAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/atom/review-presentation/index.native.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/atom/review-presentation/index.native.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAC,eAAe,EAAW,MAAM,cAAc,CAAC;AA8FvD,QAAA,MAAM,UAAU,UAAW,eAAe,uBA0CzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import React, { useState, useEffect } from 'react';
|
|
2
2
|
import { View, StyleSheet, Text } from 'react-native';
|
|
3
|
-
import { NovaLineSelectionCursorsCursorArrowTarget as TargetIcon, NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionMarkIcon, NovaSolidStatusCheckCircle2 as CheckCircle2Icon,
|
|
3
|
+
import { NovaLineSelectionCursorsCursorArrowTarget as TargetIcon, NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionMarkIcon, NovaSolidStatusCheckCircle2 as CheckCircle2Icon, NovaCompositionCoorpacademyVoteHeartOutline as HeartIcon } from '@coorpacademy/nova-icons';
|
|
4
4
|
import { useTemplateContext } from '../../template/app-review/template-context';
|
|
5
5
|
import { HEADER_HEIGHT } from '../../organism/header-v2/index.native';
|
|
6
6
|
import Touchable from '../../hoc/touchable/index.native';
|
|
7
|
+
import Html from '../html/index.native';
|
|
7
8
|
|
|
8
|
-
const createStyleSheet = theme => StyleSheet.create({
|
|
9
|
+
const createStyleSheet = (brandTheme, theme) => StyleSheet.create({
|
|
9
10
|
container: {
|
|
11
|
+
backgroundColor: theme.colors.white,
|
|
10
12
|
justifyContent: 'space-between',
|
|
11
13
|
flex: 1,
|
|
12
14
|
padding: 20,
|
|
@@ -38,7 +40,8 @@ const createStyleSheet = theme => StyleSheet.create({
|
|
|
38
40
|
marginBottom: theme.spacing.micro
|
|
39
41
|
},
|
|
40
42
|
tipText: {
|
|
41
|
-
fontSize:
|
|
43
|
+
fontSize: 16,
|
|
44
|
+
lineHeight: 22,
|
|
42
45
|
color: theme.colors.text.primary
|
|
43
46
|
},
|
|
44
47
|
icon: {
|
|
@@ -48,12 +51,15 @@ const createStyleSheet = theme => StyleSheet.create({
|
|
|
48
51
|
height: 52,
|
|
49
52
|
borderRadius: 7,
|
|
50
53
|
marginBottom: theme.spacing.large,
|
|
51
|
-
marginTop: theme.spacing.large
|
|
54
|
+
marginTop: theme.spacing.large,
|
|
55
|
+
backgroundColor: brandTheme?.colors?.primary || theme.colors.cta,
|
|
56
|
+
justifyContent: 'center'
|
|
52
57
|
},
|
|
53
58
|
buttonText: {
|
|
59
|
+
alignSelf: 'center',
|
|
54
60
|
fontWeight: theme.fontWeight.bold,
|
|
55
61
|
fontSize: theme.fontSize.large,
|
|
56
|
-
color:
|
|
62
|
+
color: '#fff'
|
|
57
63
|
}
|
|
58
64
|
});
|
|
59
65
|
|
|
@@ -61,6 +67,7 @@ const Tip = props => {
|
|
|
61
67
|
const templateContext = useTemplateContext();
|
|
62
68
|
const [styleSheet, setStylesheet] = useState(null);
|
|
63
69
|
const {
|
|
70
|
+
brandTheme,
|
|
64
71
|
theme
|
|
65
72
|
} = templateContext;
|
|
66
73
|
const {
|
|
@@ -68,10 +75,10 @@ const Tip = props => {
|
|
|
68
75
|
text
|
|
69
76
|
} = props;
|
|
70
77
|
useEffect(() => {
|
|
71
|
-
const _stylesheet = createStyleSheet(theme);
|
|
78
|
+
const _stylesheet = createStyleSheet(brandTheme, theme);
|
|
72
79
|
|
|
73
80
|
setStylesheet(_stylesheet);
|
|
74
|
-
}, [theme]);
|
|
81
|
+
}, [brandTheme, theme]);
|
|
75
82
|
|
|
76
83
|
if (!styleSheet) {
|
|
77
84
|
return null;
|
|
@@ -93,6 +100,7 @@ const Onboarding = props => {
|
|
|
93
100
|
const templateContext = useTemplateContext();
|
|
94
101
|
const [styleSheet, setStylesheet] = useState(null);
|
|
95
102
|
const {
|
|
103
|
+
brandTheme,
|
|
96
104
|
theme,
|
|
97
105
|
translations
|
|
98
106
|
} = templateContext;
|
|
@@ -100,10 +108,10 @@ const Onboarding = props => {
|
|
|
100
108
|
onPress
|
|
101
109
|
} = props;
|
|
102
110
|
useEffect(() => {
|
|
103
|
-
const _stylesheet = createStyleSheet(theme);
|
|
111
|
+
const _stylesheet = createStyleSheet(brandTheme, theme);
|
|
104
112
|
|
|
105
113
|
setStylesheet(_stylesheet);
|
|
106
|
-
}, [theme]); // ------------------------------------
|
|
114
|
+
}, [brandTheme, theme]); // ------------------------------------
|
|
107
115
|
|
|
108
116
|
if (!styleSheet) {
|
|
109
117
|
return null;
|
|
@@ -111,30 +119,30 @@ const Onboarding = props => {
|
|
|
111
119
|
|
|
112
120
|
return /*#__PURE__*/React.createElement(View, {
|
|
113
121
|
style: styleSheet.container
|
|
114
|
-
}, /*#__PURE__*/React.createElement(
|
|
122
|
+
}, /*#__PURE__*/React.createElement(Html, {
|
|
115
123
|
style: styleSheet.title
|
|
116
|
-
}, translations.appReview
|
|
124
|
+
}, translations.appReview.presentation.title), /*#__PURE__*/React.createElement(Html, {
|
|
117
125
|
style: styleSheet.text
|
|
118
|
-
}, translations.appReview
|
|
126
|
+
}, translations.appReview.presentation.text), /*#__PURE__*/React.createElement(Tip, {
|
|
119
127
|
Icon: TargetIcon,
|
|
120
|
-
text: translations.appReview
|
|
128
|
+
text: translations.appReview.presentation.labelList.skills.text
|
|
121
129
|
}), /*#__PURE__*/React.createElement(Tip, {
|
|
122
130
|
Icon: QuestionMarkIcon,
|
|
123
|
-
text: translations.appReview
|
|
131
|
+
text: translations.appReview.presentation.labelList.questions.text
|
|
124
132
|
}), /*#__PURE__*/React.createElement(Tip, {
|
|
125
133
|
Icon: HeartIcon,
|
|
126
|
-
text: translations.appReview
|
|
134
|
+
text: translations.appReview.presentation.labelList.lifes.text
|
|
127
135
|
}), /*#__PURE__*/React.createElement(Tip, {
|
|
128
136
|
Icon: CheckCircle2Icon,
|
|
129
|
-
text: translations.appReview
|
|
137
|
+
text: translations.appReview.presentation.labelList.allright.text
|
|
130
138
|
}), /*#__PURE__*/React.createElement(Touchable, {
|
|
131
|
-
testID:
|
|
139
|
+
testID: "button-quit-revision-onboarding",
|
|
132
140
|
onPress: onPress,
|
|
133
141
|
analyticsID: "button-start",
|
|
134
142
|
style: styleSheet.button
|
|
135
143
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
136
144
|
style: styleSheet.buttonText
|
|
137
|
-
}, translations.
|
|
145
|
+
}, translations.ok)));
|
|
138
146
|
};
|
|
139
147
|
|
|
140
148
|
export default Onboarding;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.js","names":["React","useState","useEffect","View","StyleSheet","Text","NovaLineSelectionCursorsCursorArrowTarget","TargetIcon","NovaSolidInterfaceFeedbackInterfaceQuestionMark","QuestionMarkIcon","NovaSolidStatusCheckCircle2","CheckCircle2Icon","NovaCompositionCoorpacademyHeart","HeartIcon","useTemplateContext","HEADER_HEIGHT","Touchable","createStyleSheet","theme","create","container","justifyContent","flex","padding","paddingTop","title","height","width","fontSize","xxlarge","fontWeight","bold","lineHeight","color","colors","text","primary","marginBottom","spacing","small","large","opacity","tip","flexDirection","overflow","alignItems","borderRadius","backgroundColor","gray","extra","marginTop","micro","tipText","icon","margin","button","buttonText","secondary","Tip","props","templateContext","styleSheet","setStylesheet","Icon","_stylesheet","Onboarding","translations","onPress","appReview","presentation","labelList","skills","questions","lifes","allright"],"sources":["../../../src/atom/review-presentation/index.native.tsx"],"sourcesContent":["import React, {useState, useEffect} from 'react';\nimport {View, StyleSheet, Text, ViewStyle, TextStyle} from 'react-native';\nimport {\n NovaLineSelectionCursorsCursorArrowTarget as TargetIcon,\n NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionMarkIcon,\n NovaSolidStatusCheckCircle2 as CheckCircle2Icon,\n NovaCompositionCoorpacademyHeart as HeartIcon\n} from '@coorpacademy/nova-icons';\n\nimport {useTemplateContext} from '../../template/app-review/template-context';\nimport {Theme} from '../../variables/theme.native';\nimport {HEADER_HEIGHT} from '../../organism/header-v2/index.native';\nimport Touchable from '../../hoc/touchable/index.native';\nimport {OnboardingProps, TipProps} from './prop-types';\n\ntype StyleSheetType = {\n container: ViewStyle;\n title: TextStyle;\n text: TextStyle;\n tip: ViewStyle;\n tipText: TextStyle;\n icon: ViewStyle;\n button: ViewStyle;\n buttonText: TextStyle;\n};\n\nconst createStyleSheet = (theme: Theme): StyleSheetType =>\n StyleSheet.create({\n container: {\n justifyContent: 'space-between',\n flex: 1,\n padding: 20,\n paddingTop: HEADER_HEIGHT + 20\n },\n title: {\n height: 72,\n width: 268,\n fontSize: theme.fontSize.xxlarge,\n fontWeight: theme.fontWeight.bold,\n lineHeight: 36,\n color: theme.colors.text.primary,\n marginBottom: theme.spacing.small\n },\n text: {\n fontSize: theme.fontSize.large,\n color: theme.colors.text.primary,\n opacity: 0.7,\n marginBottom: theme.spacing.small\n },\n tip: {\n flexDirection: 'row',\n overflow: 'hidden',\n alignItems: 'center',\n height: 54,\n borderRadius: 8,\n backgroundColor: theme.colors.gray.extra,\n marginTop: theme.spacing.micro,\n marginBottom: theme.spacing.micro\n },\n tipText: {\n fontSize: theme.fontSize.large,\n color: theme.colors.text.primary\n },\n icon: {\n margin: 10\n },\n button: {\n height: 52,\n borderRadius: 7,\n marginBottom: theme.spacing.large,\n marginTop: theme.spacing.large\n },\n buttonText: {\n fontWeight: theme.fontWeight.bold,\n fontSize: theme.fontSize.large,\n color: theme.colors.text.secondary\n }\n });\n\nconst Tip = (props: TipProps) => {\n const templateContext = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n const {theme} = templateContext;\n const {Icon, text} = props;\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n if (!styleSheet) {\n return null;\n }\n\n return (\n <View style={styleSheet.tip}>\n {<Icon height={16} width={16} style={styleSheet.icon} color={theme.colors.text.primary} />}\n <Text style={styleSheet.tipText}>{text}</Text>\n </View>\n );\n};\n\nconst Onboarding = (props: OnboardingProps) => {\n const templateContext = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n const {theme, translations} = templateContext;\n const {onPress} = props;\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n // ------------------------------------\n\n if (!styleSheet) {\n return null;\n }\n\n return (\n <View style={styleSheet.container}>\n <Text style={styleSheet.title}>{translations.appReview?.presentation.title}</Text>\n <Text style={styleSheet.text}>{translations.appReview?.presentation.text}</Text>\n\n <Tip Icon={TargetIcon} text={translations.appReview?.presentation?.labelList?.skills?.text} />\n <Tip\n Icon={QuestionMarkIcon}\n text={translations.appReview?.presentation?.labelList?.questions?.text}\n />\n <Tip Icon={HeartIcon} text={translations.appReview?.presentation?.labelList?.lifes?.text} />\n <Tip\n Icon={CheckCircle2Icon}\n text={translations.appReview?.presentation?.labelList?.allright?.text}\n />\n <Touchable\n testID={`button-quit-revision-onboarding`}\n onPress={onPress}\n analyticsID=\"button-start\"\n style={styleSheet.button}\n >\n <Text style={styleSheet.buttonText}>{translations.appReview?.presentation.button}</Text>\n </Touchable>\n </View>\n );\n};\n\nexport default Onboarding;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.native.js","names":["React","useState","useEffect","View","StyleSheet","Text","NovaLineSelectionCursorsCursorArrowTarget","TargetIcon","NovaSolidInterfaceFeedbackInterfaceQuestionMark","QuestionMarkIcon","NovaSolidStatusCheckCircle2","CheckCircle2Icon","NovaCompositionCoorpacademyVoteHeartOutline","HeartIcon","useTemplateContext","HEADER_HEIGHT","Touchable","Html","createStyleSheet","brandTheme","theme","create","container","backgroundColor","colors","white","justifyContent","flex","padding","paddingTop","title","height","width","fontSize","xxlarge","fontWeight","bold","lineHeight","color","text","primary","marginBottom","spacing","small","large","opacity","tip","flexDirection","overflow","alignItems","borderRadius","gray","extra","marginTop","micro","tipText","icon","margin","button","cta","buttonText","alignSelf","Tip","props","templateContext","styleSheet","setStylesheet","Icon","_stylesheet","Onboarding","translations","onPress","appReview","presentation","labelList","skills","questions","lifes","allright","ok"],"sources":["../../../src/atom/review-presentation/index.native.tsx"],"sourcesContent":["import React, {useState, useEffect} from 'react';\nimport {View, StyleSheet, Text, ViewStyle, TextStyle} from 'react-native';\nimport {\n NovaLineSelectionCursorsCursorArrowTarget as TargetIcon,\n NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionMarkIcon,\n NovaSolidStatusCheckCircle2 as CheckCircle2Icon,\n NovaCompositionCoorpacademyVoteHeartOutline as HeartIcon\n} from '@coorpacademy/nova-icons';\n\nimport {useTemplateContext} from '../../template/app-review/template-context';\nimport {Theme} from '../../variables/theme.native';\nimport {HEADER_HEIGHT} from '../../organism/header-v2/index.native';\nimport Touchable from '../../hoc/touchable/index.native';\nimport Html from '../html/index.native';\nimport {Brand} from '../../variables/brand.native';\nimport {OnboardingProps, TipProps} from './prop-types';\n\ntype StyleSheetType = {\n container: ViewStyle;\n title: TextStyle;\n text: TextStyle;\n tip: ViewStyle;\n tipText: TextStyle;\n icon: ViewStyle;\n button: ViewStyle;\n buttonText: TextStyle;\n};\n\nconst createStyleSheet = (brandTheme: Brand, theme: Theme): StyleSheetType =>\n StyleSheet.create({\n container: {\n backgroundColor: theme.colors.white,\n justifyContent: 'space-between',\n flex: 1,\n padding: 20,\n paddingTop: HEADER_HEIGHT + 20\n },\n title: {\n height: 72,\n width: 268,\n fontSize: theme.fontSize.xxlarge,\n fontWeight: theme.fontWeight.bold,\n lineHeight: 36,\n color: theme.colors.text.primary,\n marginBottom: theme.spacing.small\n },\n text: {\n fontSize: theme.fontSize.large,\n color: theme.colors.text.primary,\n opacity: 0.7,\n marginBottom: theme.spacing.small\n },\n tip: {\n flexDirection: 'row',\n overflow: 'hidden',\n alignItems: 'center',\n height: 54,\n borderRadius: 8,\n backgroundColor: theme.colors.gray.extra,\n marginTop: theme.spacing.micro,\n marginBottom: theme.spacing.micro\n },\n tipText: {\n fontSize: 16,\n lineHeight: 22,\n color: theme.colors.text.primary\n },\n icon: {\n margin: 10\n },\n button: {\n height: 52,\n borderRadius: 7,\n marginBottom: theme.spacing.large,\n marginTop: theme.spacing.large,\n backgroundColor: brandTheme?.colors?.primary || theme.colors.cta,\n justifyContent: 'center'\n },\n buttonText: {\n alignSelf: 'center',\n fontWeight: theme.fontWeight.bold,\n fontSize: theme.fontSize.large,\n color: '#fff'\n }\n });\n\nconst Tip = (props: TipProps) => {\n const templateContext = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n const {brandTheme, theme} = templateContext;\n const {Icon, text} = props;\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(brandTheme, theme);\n setStylesheet(_stylesheet);\n }, [brandTheme, theme]);\n\n if (!styleSheet) {\n return null;\n }\n\n return (\n <View style={styleSheet.tip}>\n {<Icon height={16} width={16} style={styleSheet.icon} color={theme.colors.text.primary} />}\n <Text style={styleSheet.tipText}>{text}</Text>\n </View>\n );\n};\n\nconst Onboarding = (props: OnboardingProps) => {\n const templateContext = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n const {brandTheme, theme, translations} = templateContext;\n const {onPress} = props;\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(brandTheme, theme);\n setStylesheet(_stylesheet);\n }, [brandTheme, theme]);\n\n // ------------------------------------\n\n if (!styleSheet) {\n return null;\n }\n\n return (\n <View style={styleSheet.container}>\n <Html style={styleSheet.title}>{translations.appReview.presentation.title}</Html>\n <Html style={styleSheet.text}>{translations.appReview.presentation.text}</Html>\n\n <Tip Icon={TargetIcon} text={translations.appReview.presentation.labelList.skills.text} />\n <Tip\n Icon={QuestionMarkIcon}\n text={translations.appReview.presentation.labelList.questions.text}\n />\n <Tip Icon={HeartIcon} text={translations.appReview.presentation.labelList.lifes.text} />\n <Tip\n Icon={CheckCircle2Icon}\n text={translations.appReview.presentation.labelList.allright.text}\n />\n <Touchable\n testID=\"button-quit-revision-onboarding\"\n onPress={onPress}\n analyticsID=\"button-start\"\n style={styleSheet.button}\n >\n <Text style={styleSheet.buttonText}>{translations.ok}</Text>\n </Touchable>\n </View>\n );\n};\n\nexport default Onboarding;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAeC,QAAf,EAAyBC,SAAzB,QAAyC,OAAzC;AACA,SAAQC,IAAR,EAAcC,UAAd,EAA0BC,IAA1B,QAA2D,cAA3D;AACA,SACEC,yCAAyC,IAAIC,UAD/C,EAEEC,+CAA+C,IAAIC,gBAFrD,EAGEC,2BAA2B,IAAIC,gBAHjC,EAIEC,2CAA2C,IAAIC,SAJjD,QAKO,0BALP;AAOA,SAAQC,kBAAR,QAAiC,4CAAjC;AAEA,SAAQC,aAAR,QAA4B,uCAA5B;AACA,OAAOC,SAAP,MAAsB,kCAAtB;AACA,OAAOC,IAAP,MAAiB,sBAAjB;;AAeA,MAAMC,gBAAgB,GAAG,CAACC,UAAD,EAAoBC,KAApB,KACvBhB,UAAU,CAACiB,MAAX,CAAkB;EAChBC,SAAS,EAAE;IACTC,eAAe,EAAEH,KAAK,CAACI,MAAN,CAAaC,KADrB;IAETC,cAAc,EAAE,eAFP;IAGTC,IAAI,EAAE,CAHG;IAITC,OAAO,EAAE,EAJA;IAKTC,UAAU,EAAEd,aAAa,GAAG;EALnB,CADK;EAQhBe,KAAK,EAAE;IACLC,MAAM,EAAE,EADH;IAELC,KAAK,EAAE,GAFF;IAGLC,QAAQ,EAAEb,KAAK,CAACa,QAAN,CAAeC,OAHpB;IAILC,UAAU,EAAEf,KAAK,CAACe,UAAN,CAAiBC,IAJxB;IAKLC,UAAU,EAAE,EALP;IAMLC,KAAK,EAAElB,KAAK,CAACI,MAAN,CAAae,IAAb,CAAkBC,OANpB;IAOLC,YAAY,EAAErB,KAAK,CAACsB,OAAN,CAAcC;EAPvB,CARS;EAiBhBJ,IAAI,EAAE;IACJN,QAAQ,EAAEb,KAAK,CAACa,QAAN,CAAeW,KADrB;IAEJN,KAAK,EAAElB,KAAK,CAACI,MAAN,CAAae,IAAb,CAAkBC,OAFrB;IAGJK,OAAO,EAAE,GAHL;IAIJJ,YAAY,EAAErB,KAAK,CAACsB,OAAN,CAAcC;EAJxB,CAjBU;EAuBhBG,GAAG,EAAE;IACHC,aAAa,EAAE,KADZ;IAEHC,QAAQ,EAAE,QAFP;IAGHC,UAAU,EAAE,QAHT;IAIHlB,MAAM,EAAE,EAJL;IAKHmB,YAAY,EAAE,CALX;IAMH3B,eAAe,EAAEH,KAAK,CAACI,MAAN,CAAa2B,IAAb,CAAkBC,KANhC;IAOHC,SAAS,EAAEjC,KAAK,CAACsB,OAAN,CAAcY,KAPtB;IAQHb,YAAY,EAAErB,KAAK,CAACsB,OAAN,CAAcY;EARzB,CAvBW;EAiChBC,OAAO,EAAE;IACPtB,QAAQ,EAAE,EADH;IAEPI,UAAU,EAAE,EAFL;IAGPC,KAAK,EAAElB,KAAK,CAACI,MAAN,CAAae,IAAb,CAAkBC;EAHlB,CAjCO;EAsChBgB,IAAI,EAAE;IACJC,MAAM,EAAE;EADJ,CAtCU;EAyChBC,MAAM,EAAE;IACN3B,MAAM,EAAE,EADF;IAENmB,YAAY,EAAE,CAFR;IAGNT,YAAY,EAAErB,KAAK,CAACsB,OAAN,CAAcE,KAHtB;IAINS,SAAS,EAAEjC,KAAK,CAACsB,OAAN,CAAcE,KAJnB;IAKNrB,eAAe,EAAEJ,UAAU,EAAEK,MAAZ,EAAoBgB,OAApB,IAA+BpB,KAAK,CAACI,MAAN,CAAamC,GALvD;IAMNjC,cAAc,EAAE;EANV,CAzCQ;EAiDhBkC,UAAU,EAAE;IACVC,SAAS,EAAE,QADD;IAEV1B,UAAU,EAAEf,KAAK,CAACe,UAAN,CAAiBC,IAFnB;IAGVH,QAAQ,EAAEb,KAAK,CAACa,QAAN,CAAeW,KAHf;IAIVN,KAAK,EAAE;EAJG;AAjDI,CAAlB,CADF;;AA0DA,MAAMwB,GAAG,GAAIC,KAAD,IAAqB;EAC/B,MAAMC,eAAe,GAAGlD,kBAAkB,EAA1C;EACA,MAAM,CAACmD,UAAD,EAAaC,aAAb,IAA8BjE,QAAQ,CAAwB,IAAxB,CAA5C;EACA,MAAM;IAACkB,UAAD;IAAaC;EAAb,IAAsB4C,eAA5B;EACA,MAAM;IAACG,IAAD;IAAO5B;EAAP,IAAewB,KAArB;EAEA7D,SAAS,CAAC,MAAM;IACd,MAAMkE,WAAW,GAAGlD,gBAAgB,CAACC,UAAD,EAAaC,KAAb,CAApC;;IACA8C,aAAa,CAACE,WAAD,CAAb;EACD,CAHQ,EAGN,CAACjD,UAAD,EAAaC,KAAb,CAHM,CAAT;;EAKA,IAAI,CAAC6C,UAAL,EAAiB;IACf,OAAO,IAAP;EACD;;EAED,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAEA,UAAU,CAACnB;EAAxB,gBACG,oBAAC,IAAD;IAAM,MAAM,EAAE,EAAd;IAAkB,KAAK,EAAE,EAAzB;IAA6B,KAAK,EAAEmB,UAAU,CAACT,IAA/C;IAAqD,KAAK,EAAEpC,KAAK,CAACI,MAAN,CAAae,IAAb,CAAkBC;EAA9E,EADH,eAEE,oBAAC,IAAD;IAAM,KAAK,EAAEyB,UAAU,CAACV;EAAxB,GAAkChB,IAAlC,CAFF,CADF;AAMD,CArBD;;AAuBA,MAAM8B,UAAU,GAAIN,KAAD,IAA4B;EAC7C,MAAMC,eAAe,GAAGlD,kBAAkB,EAA1C;EACA,MAAM,CAACmD,UAAD,EAAaC,aAAb,IAA8BjE,QAAQ,CAAwB,IAAxB,CAA5C;EACA,MAAM;IAACkB,UAAD;IAAaC,KAAb;IAAoBkD;EAApB,IAAoCN,eAA1C;EACA,MAAM;IAACO;EAAD,IAAYR,KAAlB;EAEA7D,SAAS,CAAC,MAAM;IACd,MAAMkE,WAAW,GAAGlD,gBAAgB,CAACC,UAAD,EAAaC,KAAb,CAApC;;IACA8C,aAAa,CAACE,WAAD,CAAb;EACD,CAHQ,EAGN,CAACjD,UAAD,EAAaC,KAAb,CAHM,CAAT,CAN6C,CAW7C;;EAEA,IAAI,CAAC6C,UAAL,EAAiB;IACf,OAAO,IAAP;EACD;;EAED,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAEA,UAAU,CAAC3C;EAAxB,gBACE,oBAAC,IAAD;IAAM,KAAK,EAAE2C,UAAU,CAACnC;EAAxB,GAAgCwC,YAAY,CAACE,SAAb,CAAuBC,YAAvB,CAAoC3C,KAApE,CADF,eAEE,oBAAC,IAAD;IAAM,KAAK,EAAEmC,UAAU,CAAC1B;EAAxB,GAA+B+B,YAAY,CAACE,SAAb,CAAuBC,YAAvB,CAAoClC,IAAnE,CAFF,eAIE,oBAAC,GAAD;IAAK,IAAI,EAAEhC,UAAX;IAAuB,IAAI,EAAE+D,YAAY,CAACE,SAAb,CAAuBC,YAAvB,CAAoCC,SAApC,CAA8CC,MAA9C,CAAqDpC;EAAlF,EAJF,eAKE,oBAAC,GAAD;IACE,IAAI,EAAE9B,gBADR;IAEE,IAAI,EAAE6D,YAAY,CAACE,SAAb,CAAuBC,YAAvB,CAAoCC,SAApC,CAA8CE,SAA9C,CAAwDrC;EAFhE,EALF,eASE,oBAAC,GAAD;IAAK,IAAI,EAAE1B,SAAX;IAAsB,IAAI,EAAEyD,YAAY,CAACE,SAAb,CAAuBC,YAAvB,CAAoCC,SAApC,CAA8CG,KAA9C,CAAoDtC;EAAhF,EATF,eAUE,oBAAC,GAAD;IACE,IAAI,EAAE5B,gBADR;IAEE,IAAI,EAAE2D,YAAY,CAACE,SAAb,CAAuBC,YAAvB,CAAoCC,SAApC,CAA8CI,QAA9C,CAAuDvC;EAF/D,EAVF,eAcE,oBAAC,SAAD;IACE,MAAM,EAAC,iCADT;IAEE,OAAO,EAAEgC,OAFX;IAGE,WAAW,EAAC,cAHd;IAIE,KAAK,EAAEN,UAAU,CAACP;EAJpB,gBAME,oBAAC,IAAD;IAAM,KAAK,EAAEO,UAAU,CAACL;EAAxB,GAAqCU,YAAY,CAACS,EAAlD,CANF,CAdF,CADF;AAyBD,CA1CD;;AA4CA,eAAeV,UAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/atom/text/index.native.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAyC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE/E,oBAAY,KAAK,GAAG;IAElB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/atom/text/index.native.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAyC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE/E,oBAAY,KAAK,GAAG;IAElB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,aAAa;;CAMzB,CAAC;AAQF,QAAA,MAAM,IAAI,UAAW,KAAK,gBAqBzB,CAAC;AAEF,eAAe,IAAI,CAAC"}
|
|
@@ -17,13 +17,15 @@ const Text = props => {
|
|
|
17
17
|
style,
|
|
18
18
|
testID,
|
|
19
19
|
numberOfLines,
|
|
20
|
-
allowFontScaling = true
|
|
20
|
+
allowFontScaling = true,
|
|
21
|
+
accessibilityLabel
|
|
21
22
|
} = props;
|
|
22
23
|
return /*#__PURE__*/React.createElement(TextBase, {
|
|
23
24
|
allowFontScaling: allowFontScaling,
|
|
24
25
|
style: [styles.text, style],
|
|
25
26
|
testID: testID,
|
|
26
|
-
numberOfLines: numberOfLines
|
|
27
|
+
numberOfLines: numberOfLines,
|
|
28
|
+
accessibilityLabel: accessibilityLabel
|
|
27
29
|
}, children);
|
|
28
30
|
};
|
|
29
31
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.js","names":["React","Text","TextBase","Platform","StyleSheet","DEFAULT_STYLE","select","android","fontFamily","styles","create","text","props","children","style","testID","numberOfLines","allowFontScaling"],"sources":["../../../src/atom/text/index.native.tsx"],"sourcesContent":["import * as React from 'react';\nimport {Text as TextBase, Platform, StyleSheet, TextStyle} from 'react-native';\n\nexport type Props = {\n // copied from node_modules/react-native/Libraries/Text/TextProps.js\n children: React.ReactNode;\n style?: TextStyle | TextStyle[];\n testID?: string;\n numberOfLines?: number;\n allowFontScaling?: boolean;\n};\n\nexport const DEFAULT_STYLE = {\n ...Platform.select({\n android: {\n fontFamily: 'Roboto'\n }\n })\n};\n\nconst styles = StyleSheet.create({\n text: {\n ...DEFAULT_STYLE\n }\n});\n\nconst Text = (props: Props) => {\n const {children
|
|
1
|
+
{"version":3,"file":"index.native.js","names":["React","Text","TextBase","Platform","StyleSheet","DEFAULT_STYLE","select","android","fontFamily","styles","create","text","props","children","style","testID","numberOfLines","allowFontScaling","accessibilityLabel"],"sources":["../../../src/atom/text/index.native.tsx"],"sourcesContent":["import * as React from 'react';\nimport {Text as TextBase, Platform, StyleSheet, TextStyle} from 'react-native';\n\nexport type Props = {\n // copied from node_modules/react-native/Libraries/Text/TextProps.js\n children: React.ReactNode;\n style?: TextStyle | TextStyle[];\n testID?: string;\n numberOfLines?: number;\n allowFontScaling?: boolean;\n accessibilityLabel?: string;\n};\n\nexport const DEFAULT_STYLE = {\n ...Platform.select({\n android: {\n fontFamily: 'Roboto'\n }\n })\n};\n\nconst styles = StyleSheet.create({\n text: {\n ...DEFAULT_STYLE\n }\n});\n\nconst Text = (props: Props) => {\n const {\n children,\n style,\n testID,\n numberOfLines,\n allowFontScaling = true,\n accessibilityLabel\n } = props;\n\n return (\n <TextBase\n allowFontScaling={allowFontScaling}\n style={[styles.text, style]}\n testID={testID}\n numberOfLines={numberOfLines}\n accessibilityLabel={accessibilityLabel}\n >\n {children}\n </TextBase>\n );\n};\n\nexport default Text;\n"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAAQC,IAAI,IAAIC,QAAhB,EAA0BC,QAA1B,EAAoCC,UAApC,QAAgE,cAAhE;AAYA,OAAO,MAAMC,aAAa,gBACrBF,QAAQ,CAACG,MAAT,CAAgB;EACjBC,OAAO,EAAE;IACPC,UAAU,EAAE;EADL;AADQ,CAAhB,CADqB,CAAnB;AAQP,MAAMC,MAAM,GAAGL,UAAU,CAACM,MAAX,CAAkB;EAC/BC,IAAI,eACCN,aADD;AAD2B,CAAlB,CAAf;;AAMA,MAAMJ,IAAI,GAAIW,KAAD,IAAkB;EAC7B,MAAM;IACJC,QADI;IAEJC,KAFI;IAGJC,MAHI;IAIJC,aAJI;IAKJC,gBAAgB,GAAG,IALf;IAMJC;EANI,IAOFN,KAPJ;EASA,oBACE,oBAAC,QAAD;IACE,gBAAgB,EAAEK,gBADpB;IAEE,KAAK,EAAE,CAACR,MAAM,CAACE,IAAR,EAAcG,KAAd,CAFT;IAGE,MAAM,EAAEC,MAHV;IAIE,aAAa,EAAEC,aAJjB;IAKE,kBAAkB,EAAEE;EALtB,GAOGL,QAPH,CADF;AAWD,CArBD;;AAuBA,eAAeZ,IAAf"}
|
|
@@ -3,6 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import { Analytics, AnalyticsEventParams } from '../../variables/analytics';
|
|
4
4
|
import { Vibration } from '../../variables/vibration';
|
|
5
5
|
export declare type Props = {
|
|
6
|
+
accessibilityLabel?: string;
|
|
6
7
|
accessible?: boolean;
|
|
7
8
|
children?: React.ReactNode;
|
|
8
9
|
delayLongPress?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/hoc/touchable/index.native.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACd,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAgB,MAAM,OAAO,CAAC;AAErC,OAAO,EAAuB,SAAS,EAAE,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAC,SAAS,EAAC,MAAM,2BAA2B,CAAC;AASpD,oBAAY,KAAK,GAAG;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IAC9D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACrD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACjD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACnD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAeF,QAAA,MAAM,SAAS,UAAW,KAAK,gBAkE9B,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/hoc/touchable/index.native.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACd,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAgB,MAAM,OAAO,CAAC;AAErC,OAAO,EAAuB,SAAS,EAAE,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAC,SAAS,EAAC,MAAM,2BAA2B,CAAC;AASpD,oBAAY,KAAK,GAAG;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IAC9D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACrD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACjD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACnD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAeF,QAAA,MAAM,SAAS,UAAW,KAAK,gBAkE9B,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.js","names":["TouchableOpacity","TouchableHighlight","React","useMemo","useTemplateContext","ANALYTICS_EVENT_TYPE","hitSlop","left","right","bottom","top","logEvent","eventName","analyticsID","analytics","analyticsParams","id","Touchable","props","templateContext","theme","vibration","onPress","onLongPress","isWithoutFeedback","isHighlight","activeOpacity","disabled","handlePress","event","vibrate","PRESS","handleLongPress","LONG_PRESS","colors","gray","light"],"sources":["../../../src/hoc/touchable/index.native.tsx"],"sourcesContent":["import {\n TouchableOpacity,\n TouchableHighlight,\n ViewStyle,\n LayoutChangeEvent,\n NativeSyntheticEvent,\n GestureResponderEvent,\n TargetedEvent\n} from 'react-native';\n\nimport React, {useMemo} from 'react';\nimport {useTemplateContext} from '../../template/app-review/template-context';\nimport {ANALYTICS_EVENT_TYPE, Analytics, AnalyticsEventParams} from '../../variables/analytics';\nimport {Vibration} from '../../variables/vibration';\n\nconst hitSlop = {\n left: 12,\n right: 12,\n bottom: 12,\n top: 12\n};\n\nexport type Props = {\n accessible?: boolean;\n children?: React.ReactNode;\n delayLongPress?: number;\n delayPressIn?: number;\n delayPressOut?: number;\n disabled?: boolean;\n focusable?: boolean;\n onBlur?: (event: NativeSyntheticEvent<TargetedEvent>) => void;\n onFocus?: (event: NativeSyntheticEvent<TargetedEvent>) => void;\n onLayout?: (event: LayoutChangeEvent) => void;\n onLongPress?: (event: GestureResponderEvent) => void;\n onPress?: (event: GestureResponderEvent) => void;\n onPressIn?: (event: GestureResponderEvent) => void;\n onPressOut?: (event: GestureResponderEvent) => void;\n testID?: string;\n isHighlight?: boolean;\n isWithoutFeedback?: boolean;\n // for TouchableOpacity\n activeOpacity?: number;\n style?: ViewStyle;\n // Analytics\n analytics?: Analytics;\n analyticsID?: string;\n analyticsParams?: AnalyticsEventParams;\n vibration?: Vibration;\n};\n\nconst logEvent = (\n eventName: string,\n analyticsID: string,\n analytics: Analytics,\n analyticsParams?: AnalyticsEventParams\n) => {\n analytics &&\n analytics.logEvent(eventName, {\n ...(analyticsParams || {}),\n id: analyticsID\n });\n};\n\nconst Touchable = (props: Props) => {\n const templateContext = useTemplateContext();\n\n const {theme, vibration, analytics} = templateContext;\n\n const {\n analyticsID,\n analyticsParams,\n onPress,\n onLongPress,\n isWithoutFeedback,\n isHighlight,\n activeOpacity,\n disabled\n } = props;\n\n const handlePress = useMemo(\n () => (event: GestureResponderEvent) => {\n if (!onPress) return;\n\n vibration?.vibrate();\n\n analytics &&\n analyticsID &&\n logEvent(ANALYTICS_EVENT_TYPE.PRESS, analyticsID, analytics, analyticsParams);\n onPress(event);\n },\n [analytics, analyticsID, analyticsParams, onPress, vibration]\n );\n\n const handleLongPress = useMemo(\n () => (event: GestureResponderEvent) => {\n if (!onLongPress) return;\n\n vibration?.vibrate();\n\n analytics &&\n analyticsID &&\n logEvent(ANALYTICS_EVENT_TYPE.LONG_PRESS, analyticsID, analytics, analyticsParams);\n onLongPress(event);\n },\n [analytics, analyticsID, analyticsParams, onLongPress, vibration]\n );\n\n if (isHighlight) {\n return (\n <TouchableHighlight\n {...props}\n hitSlop={hitSlop}\n underlayColor={theme.colors.gray.light}\n onPress={handlePress}\n onLongPress={handleLongPress}\n activeOpacity={activeOpacity || (disabled ? 1 : 0.85)}\n />\n );\n }\n\n return (\n <TouchableOpacity\n {...props}\n hitSlop={hitSlop}\n onPress={handlePress}\n onLongPress={handleLongPress}\n activeOpacity={(isWithoutFeedback && 1) || activeOpacity || (disabled ? 1 : 0.2)}\n />\n );\n};\n\nexport default Touchable;\n"],"mappings":";;AAAA,SACEA,gBADF,EAEEC,kBAFF,QAQO,cARP;AAUA,OAAOC,KAAP,IAAeC,OAAf,QAA6B,OAA7B;AACA,SAAQC,kBAAR,QAAiC,4CAAjC;AACA,SAAQC,oBAAR,QAAoE,2BAApE;AAGA,MAAMC,OAAO,GAAG;EACdC,IAAI,EAAE,EADQ;EAEdC,KAAK,EAAE,EAFO;EAGdC,MAAM,EAAE,EAHM;EAIdC,GAAG,EAAE;AAJS,CAAhB;;
|
|
1
|
+
{"version":3,"file":"index.native.js","names":["TouchableOpacity","TouchableHighlight","React","useMemo","useTemplateContext","ANALYTICS_EVENT_TYPE","hitSlop","left","right","bottom","top","logEvent","eventName","analyticsID","analytics","analyticsParams","id","Touchable","props","templateContext","theme","vibration","onPress","onLongPress","isWithoutFeedback","isHighlight","activeOpacity","disabled","handlePress","event","vibrate","PRESS","handleLongPress","LONG_PRESS","colors","gray","light"],"sources":["../../../src/hoc/touchable/index.native.tsx"],"sourcesContent":["import {\n TouchableOpacity,\n TouchableHighlight,\n ViewStyle,\n LayoutChangeEvent,\n NativeSyntheticEvent,\n GestureResponderEvent,\n TargetedEvent\n} from 'react-native';\n\nimport React, {useMemo} from 'react';\nimport {useTemplateContext} from '../../template/app-review/template-context';\nimport {ANALYTICS_EVENT_TYPE, Analytics, AnalyticsEventParams} from '../../variables/analytics';\nimport {Vibration} from '../../variables/vibration';\n\nconst hitSlop = {\n left: 12,\n right: 12,\n bottom: 12,\n top: 12\n};\n\nexport type Props = {\n accessibilityLabel?: string;\n accessible?: boolean;\n children?: React.ReactNode;\n delayLongPress?: number;\n delayPressIn?: number;\n delayPressOut?: number;\n disabled?: boolean;\n focusable?: boolean;\n onBlur?: (event: NativeSyntheticEvent<TargetedEvent>) => void;\n onFocus?: (event: NativeSyntheticEvent<TargetedEvent>) => void;\n onLayout?: (event: LayoutChangeEvent) => void;\n onLongPress?: (event: GestureResponderEvent) => void;\n onPress?: (event: GestureResponderEvent) => void;\n onPressIn?: (event: GestureResponderEvent) => void;\n onPressOut?: (event: GestureResponderEvent) => void;\n testID?: string;\n isHighlight?: boolean;\n isWithoutFeedback?: boolean;\n // for TouchableOpacity\n activeOpacity?: number;\n style?: ViewStyle;\n // Analytics\n analytics?: Analytics;\n analyticsID?: string;\n analyticsParams?: AnalyticsEventParams;\n vibration?: Vibration;\n};\n\nconst logEvent = (\n eventName: string,\n analyticsID: string,\n analytics: Analytics,\n analyticsParams?: AnalyticsEventParams\n) => {\n analytics &&\n analytics.logEvent(eventName, {\n ...(analyticsParams || {}),\n id: analyticsID\n });\n};\n\nconst Touchable = (props: Props) => {\n const templateContext = useTemplateContext();\n\n const {theme, vibration, analytics} = templateContext;\n\n const {\n analyticsID,\n analyticsParams,\n onPress,\n onLongPress,\n isWithoutFeedback,\n isHighlight,\n activeOpacity,\n disabled\n } = props;\n\n const handlePress = useMemo(\n () => (event: GestureResponderEvent) => {\n if (!onPress) return;\n\n vibration?.vibrate();\n\n analytics &&\n analyticsID &&\n logEvent(ANALYTICS_EVENT_TYPE.PRESS, analyticsID, analytics, analyticsParams);\n onPress(event);\n },\n [analytics, analyticsID, analyticsParams, onPress, vibration]\n );\n\n const handleLongPress = useMemo(\n () => (event: GestureResponderEvent) => {\n if (!onLongPress) return;\n\n vibration?.vibrate();\n\n analytics &&\n analyticsID &&\n logEvent(ANALYTICS_EVENT_TYPE.LONG_PRESS, analyticsID, analytics, analyticsParams);\n onLongPress(event);\n },\n [analytics, analyticsID, analyticsParams, onLongPress, vibration]\n );\n\n if (isHighlight) {\n return (\n <TouchableHighlight\n {...props}\n hitSlop={hitSlop}\n underlayColor={theme.colors.gray.light}\n onPress={handlePress}\n onLongPress={handleLongPress}\n activeOpacity={activeOpacity || (disabled ? 1 : 0.85)}\n />\n );\n }\n\n return (\n <TouchableOpacity\n {...props}\n hitSlop={hitSlop}\n onPress={handlePress}\n onLongPress={handleLongPress}\n activeOpacity={(isWithoutFeedback && 1) || activeOpacity || (disabled ? 1 : 0.2)}\n />\n );\n};\n\nexport default Touchable;\n"],"mappings":";;AAAA,SACEA,gBADF,EAEEC,kBAFF,QAQO,cARP;AAUA,OAAOC,KAAP,IAAeC,OAAf,QAA6B,OAA7B;AACA,SAAQC,kBAAR,QAAiC,4CAAjC;AACA,SAAQC,oBAAR,QAAoE,2BAApE;AAGA,MAAMC,OAAO,GAAG;EACdC,IAAI,EAAE,EADQ;EAEdC,KAAK,EAAE,EAFO;EAGdC,MAAM,EAAE,EAHM;EAIdC,GAAG,EAAE;AAJS,CAAhB;;AAoCA,MAAMC,QAAQ,GAAG,CACfC,SADe,EAEfC,WAFe,EAGfC,SAHe,EAIfC,eAJe,KAKZ;EACHD,SAAS,IACPA,SAAS,CAACH,QAAV,CAAmBC,SAAnB,eACMG,eAAe,IAAI,EADzB;IAEEC,EAAE,EAAEH;EAFN,GADF;AAKD,CAXD;;AAaA,MAAMI,SAAS,GAAIC,KAAD,IAAkB;EAClC,MAAMC,eAAe,GAAGf,kBAAkB,EAA1C;EAEA,MAAM;IAACgB,KAAD;IAAQC,SAAR;IAAmBP;EAAnB,IAAgCK,eAAtC;EAEA,MAAM;IACJN,WADI;IAEJE,eAFI;IAGJO,OAHI;IAIJC,WAJI;IAKJC,iBALI;IAMJC,WANI;IAOJC,aAPI;IAQJC;EARI,IASFT,KATJ;EAWA,MAAMU,WAAW,GAAGzB,OAAO,CACzB,MAAO0B,KAAD,IAAkC;IACtC,IAAI,CAACP,OAAL,EAAc;IAEdD,SAAS,EAAES,OAAX;IAEAhB,SAAS,IACPD,WADF,IAEEF,QAAQ,CAACN,oBAAoB,CAAC0B,KAAtB,EAA6BlB,WAA7B,EAA0CC,SAA1C,EAAqDC,eAArD,CAFV;IAGAO,OAAO,CAACO,KAAD,CAAP;EACD,CAVwB,EAWzB,CAACf,SAAD,EAAYD,WAAZ,EAAyBE,eAAzB,EAA0CO,OAA1C,EAAmDD,SAAnD,CAXyB,CAA3B;EAcA,MAAMW,eAAe,GAAG7B,OAAO,CAC7B,MAAO0B,KAAD,IAAkC;IACtC,IAAI,CAACN,WAAL,EAAkB;IAElBF,SAAS,EAAES,OAAX;IAEAhB,SAAS,IACPD,WADF,IAEEF,QAAQ,CAACN,oBAAoB,CAAC4B,UAAtB,EAAkCpB,WAAlC,EAA+CC,SAA/C,EAA0DC,eAA1D,CAFV;IAGAQ,WAAW,CAACM,KAAD,CAAX;EACD,CAV4B,EAW7B,CAACf,SAAD,EAAYD,WAAZ,EAAyBE,eAAzB,EAA0CQ,WAA1C,EAAuDF,SAAvD,CAX6B,CAA/B;;EAcA,IAAII,WAAJ,EAAiB;IACf,oBACE,oBAAC,kBAAD,eACMP,KADN;MAEE,OAAO,EAAEZ,OAFX;MAGE,aAAa,EAAEc,KAAK,CAACc,MAAN,CAAaC,IAAb,CAAkBC,KAHnC;MAIE,OAAO,EAAER,WAJX;MAKE,WAAW,EAAEI,eALf;MAME,aAAa,EAAEN,aAAa,KAAKC,QAAQ,GAAG,CAAH,GAAO,IAApB;IAN9B,GADF;EAUD;;EAED,oBACE,oBAAC,gBAAD,eACMT,KADN;IAEE,OAAO,EAAEZ,OAFX;IAGE,OAAO,EAAEsB,WAHX;IAIE,WAAW,EAAEI,eAJf;IAKE,aAAa,EAAGR,iBAAiB,IAAI,CAAtB,IAA4BE,aAA5B,KAA8CC,QAAQ,GAAG,CAAH,GAAO,GAA7D;EALjB,GADF;AASD,CAlED;;AAoEA,eAAeV,SAAf"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ReviewCorrectionPopinProps } from './prop-types';
|
|
3
|
+
declare const ReviewCorrectionPopin: ({ information, klf, next, type, resultLabel }: ReviewCorrectionPopinProps) => JSX.Element | null;
|
|
4
|
+
export default ReviewCorrectionPopin;
|
|
5
|
+
//# sourceMappingURL=index.native.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/molecule/review-correction-popin/index.native.tsx"],"names":[],"mappings":";AAYA,OAAO,EAAgC,0BAA0B,EAAC,MAAM,cAAc,CAAC;AA4QvF,QAAA,MAAM,qBAAqB,kDAMxB,0BAA0B,uBAiD5B,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
|
|
3
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
4
|
+
import { Animated, Easing, StyleSheet, View } from 'react-native';
|
|
5
|
+
import { NovaCompositionCoorpacademyCheck as RightIcon, NovaSolidStatusClose as WrongIcon, NovaLineLoginKey1 as KlfIcon } from '@coorpacademy/nova-icons';
|
|
6
|
+
import Html from '../../atom/html/index.native';
|
|
7
|
+
import Text from '../../atom/text/index.native';
|
|
8
|
+
import Touchable from '../../hoc/touchable/index.native';
|
|
9
|
+
import { useTemplateContext } from '../../template/app-review/template-context';
|
|
10
|
+
|
|
11
|
+
const createStyleSheet = (theme, type) => StyleSheet.create({
|
|
12
|
+
wrapper: {
|
|
13
|
+
height: 'auto',
|
|
14
|
+
color: theme.colors.white,
|
|
15
|
+
display: 'flex'
|
|
16
|
+
},
|
|
17
|
+
popin: {
|
|
18
|
+
padding: theme.spacing.medium,
|
|
19
|
+
borderRadius: 16,
|
|
20
|
+
display: 'flex',
|
|
21
|
+
flexDirection: 'column',
|
|
22
|
+
alignItems: 'flex-start',
|
|
23
|
+
backgroundColor: type === 'wrong' ? theme.colors.negative : theme.colors.positive,
|
|
24
|
+
shadowColor: type === 'wrong' ? theme.colors.negative : theme.colors.positive,
|
|
25
|
+
shadowOpacity: 0.5,
|
|
26
|
+
shadowOffset: {
|
|
27
|
+
width: 0,
|
|
28
|
+
height: 0
|
|
29
|
+
},
|
|
30
|
+
shadowRadius: 15,
|
|
31
|
+
elevation: 4
|
|
32
|
+
},
|
|
33
|
+
correctionSection: {
|
|
34
|
+
flexDirection: 'row',
|
|
35
|
+
alignItems: 'center',
|
|
36
|
+
width: '80%'
|
|
37
|
+
},
|
|
38
|
+
iconCircle: {
|
|
39
|
+
width: 60,
|
|
40
|
+
height: 60,
|
|
41
|
+
alignItems: 'center',
|
|
42
|
+
justifyContent: 'center',
|
|
43
|
+
backgroundColor: theme.colors.white,
|
|
44
|
+
opacity: 0.7,
|
|
45
|
+
borderRadius: 50
|
|
46
|
+
},
|
|
47
|
+
icon: {
|
|
48
|
+
height: 30,
|
|
49
|
+
width: 30
|
|
50
|
+
},
|
|
51
|
+
resultLabel: {
|
|
52
|
+
color: theme.colors.white,
|
|
53
|
+
fontSize: 24,
|
|
54
|
+
fontWeight: '600',
|
|
55
|
+
lineHeight: 24,
|
|
56
|
+
marginLeft: 12,
|
|
57
|
+
textTransform: 'uppercase',
|
|
58
|
+
wordBreak: 'break-word'
|
|
59
|
+
},
|
|
60
|
+
feedbackSection: {
|
|
61
|
+
marginVertical: theme.spacing.medium
|
|
62
|
+
},
|
|
63
|
+
labelContainer: {
|
|
64
|
+
alignSelf: 'flex-start',
|
|
65
|
+
backgroundColor: 'rgba(255, 255, 255, 0.3)',
|
|
66
|
+
borderRadius: 56,
|
|
67
|
+
paddingHorizontal: theme.spacing.tiny,
|
|
68
|
+
paddingVertical: theme.spacing.micro,
|
|
69
|
+
marginBottom: 8
|
|
70
|
+
},
|
|
71
|
+
label: {
|
|
72
|
+
color: theme.colors.white,
|
|
73
|
+
fontSize: 14,
|
|
74
|
+
fontWeight: theme.fontWeight.extraBold,
|
|
75
|
+
lineHeight: 17,
|
|
76
|
+
wordBreak: 'break-word'
|
|
77
|
+
},
|
|
78
|
+
htmlInfoMessage: {
|
|
79
|
+
color: theme.colors.white,
|
|
80
|
+
fontSize: 16,
|
|
81
|
+
fontWeight: '600',
|
|
82
|
+
lineHeight: 19
|
|
83
|
+
},
|
|
84
|
+
button: {
|
|
85
|
+
alignSelf: 'stretch',
|
|
86
|
+
backgroundColor: theme.colors.white,
|
|
87
|
+
borderRadius: 7,
|
|
88
|
+
paddingHorizontal: theme.spacing.base,
|
|
89
|
+
paddingVertical: theme.spacing.small
|
|
90
|
+
},
|
|
91
|
+
buttonText: {
|
|
92
|
+
color: theme.colors.cta,
|
|
93
|
+
fontSize: 14,
|
|
94
|
+
fontWeight: theme.fontWeight.bold,
|
|
95
|
+
lineHeight: 20,
|
|
96
|
+
textAlign: 'center'
|
|
97
|
+
},
|
|
98
|
+
containerButtonKlf: {
|
|
99
|
+
width: '100%'
|
|
100
|
+
},
|
|
101
|
+
buttonKlf: {
|
|
102
|
+
flexDirection: 'row',
|
|
103
|
+
alignItems: 'center',
|
|
104
|
+
justifyContent: 'center',
|
|
105
|
+
backgroundColor: 'rgba(255, 255, 255, 0.1)',
|
|
106
|
+
borderRadius: 7,
|
|
107
|
+
paddingHorizontal: theme.spacing.base,
|
|
108
|
+
paddingVertical: theme.spacing.small,
|
|
109
|
+
marginBottom: theme.spacing.tiny
|
|
110
|
+
},
|
|
111
|
+
buttonKlfActive: {
|
|
112
|
+
backgroundColor: 'linear-gradient(0deg, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.25)), rgba(255, 255, 255, 0.1)'
|
|
113
|
+
},
|
|
114
|
+
buttonKlfText: {
|
|
115
|
+
color: 'white',
|
|
116
|
+
fontSize: 14,
|
|
117
|
+
fontWeight: theme.fontWeight.bold,
|
|
118
|
+
lineHeight: 20,
|
|
119
|
+
textAlign: 'center'
|
|
120
|
+
},
|
|
121
|
+
iconKey: {
|
|
122
|
+
width: 12,
|
|
123
|
+
height: 12,
|
|
124
|
+
marginRight: theme.spacing.tiny
|
|
125
|
+
},
|
|
126
|
+
containerTooltip: {
|
|
127
|
+
zIndex: 30,
|
|
128
|
+
position: 'relative',
|
|
129
|
+
shadowColor: theme.colors.black,
|
|
130
|
+
shadowOpacity: 0.3,
|
|
131
|
+
shadowOffset: {
|
|
132
|
+
width: 0,
|
|
133
|
+
height: 0
|
|
134
|
+
},
|
|
135
|
+
shadowRadius: 8
|
|
136
|
+
},
|
|
137
|
+
buttonTooltip: {
|
|
138
|
+
flexDirection: 'column',
|
|
139
|
+
justifyContent: 'center',
|
|
140
|
+
backgroundColor: theme.colors.white,
|
|
141
|
+
borderRadius: 15,
|
|
142
|
+
padding: theme.spacing.small,
|
|
143
|
+
width: '112%',
|
|
144
|
+
position: 'absolute',
|
|
145
|
+
bottom: 4,
|
|
146
|
+
right: -15,
|
|
147
|
+
zIndex: 20
|
|
148
|
+
},
|
|
149
|
+
htmlTooltipText: {
|
|
150
|
+
color: theme.colors.text.primary,
|
|
151
|
+
fontSize: 16,
|
|
152
|
+
fontWeight: '600',
|
|
153
|
+
lineHeight: 22,
|
|
154
|
+
textAlign: 'center'
|
|
155
|
+
},
|
|
156
|
+
triangleTooltip: {
|
|
157
|
+
width: 0,
|
|
158
|
+
height: 0,
|
|
159
|
+
backgroundColor: 'transparent',
|
|
160
|
+
borderStyle: 'solid',
|
|
161
|
+
borderLeftWidth: 13,
|
|
162
|
+
borderRightWidth: 13,
|
|
163
|
+
borderBottomWidth: 13,
|
|
164
|
+
borderTopWidth: 13,
|
|
165
|
+
borderLeftColor: 'transparent',
|
|
166
|
+
borderTopColor: 'transparent',
|
|
167
|
+
borderRightColor: theme.colors.white,
|
|
168
|
+
borderBottomColor: theme.colors.white,
|
|
169
|
+
transform: [{
|
|
170
|
+
rotate: '45deg'
|
|
171
|
+
}],
|
|
172
|
+
position: 'absolute',
|
|
173
|
+
left: 110,
|
|
174
|
+
top: -20,
|
|
175
|
+
borderRadius: 4
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
|
|
179
|
+
const KlfButton = ({
|
|
180
|
+
klf,
|
|
181
|
+
styleSheet
|
|
182
|
+
}) => {
|
|
183
|
+
const [displayTooltip, setDisplayTooltip] = useState(false);
|
|
184
|
+
const fadeAnim = useRef(new Animated.Value(0)).current;
|
|
185
|
+
const fadeIn = useCallback(() => {
|
|
186
|
+
Animated.timing(fadeAnim, {
|
|
187
|
+
toValue: 1,
|
|
188
|
+
duration: 1000,
|
|
189
|
+
easing: Easing.bezier(0.25, 1, 0.5, 1),
|
|
190
|
+
useNativeDriver: true
|
|
191
|
+
}).start();
|
|
192
|
+
}, [fadeAnim]);
|
|
193
|
+
const fadeOut = useCallback(() => {
|
|
194
|
+
Animated.timing(fadeAnim, {
|
|
195
|
+
toValue: 0,
|
|
196
|
+
duration: 500,
|
|
197
|
+
easing: Easing.bezier(0.25, 1, 0.5, 1),
|
|
198
|
+
useNativeDriver: true
|
|
199
|
+
}).start();
|
|
200
|
+
}, [fadeAnim]);
|
|
201
|
+
const handlePressKey = useCallback(() => {
|
|
202
|
+
setDisplayTooltip(!displayTooltip);
|
|
203
|
+
!displayTooltip ? fadeIn() : fadeOut();
|
|
204
|
+
}, [displayTooltip, fadeIn, fadeOut]);
|
|
205
|
+
const {
|
|
206
|
+
buttonKlf,
|
|
207
|
+
buttonKlfActive,
|
|
208
|
+
buttonKlfText,
|
|
209
|
+
containerButtonKlf,
|
|
210
|
+
containerTooltip,
|
|
211
|
+
buttonTooltip,
|
|
212
|
+
htmlTooltipText,
|
|
213
|
+
iconKey,
|
|
214
|
+
triangleTooltip
|
|
215
|
+
} = styleSheet;
|
|
216
|
+
const {
|
|
217
|
+
label,
|
|
218
|
+
tooltip
|
|
219
|
+
} = klf;
|
|
220
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
221
|
+
style: containerButtonKlf
|
|
222
|
+
}, /*#__PURE__*/React.createElement(Animated.View, {
|
|
223
|
+
style: [containerTooltip, {
|
|
224
|
+
opacity: fadeAnim
|
|
225
|
+
}]
|
|
226
|
+
}, /*#__PURE__*/React.createElement(Touchable, {
|
|
227
|
+
style: buttonTooltip,
|
|
228
|
+
accessibilityLabel: `aria-label-tooltip`,
|
|
229
|
+
isHighlight: true,
|
|
230
|
+
onPress: handlePressKey,
|
|
231
|
+
testID: "button-tooltip"
|
|
232
|
+
}, /*#__PURE__*/React.createElement(Html, {
|
|
233
|
+
style: htmlTooltipText
|
|
234
|
+
}, tooltip)), /*#__PURE__*/React.createElement(View, {
|
|
235
|
+
style: triangleTooltip
|
|
236
|
+
})), /*#__PURE__*/React.createElement(Touchable, {
|
|
237
|
+
style: displayTooltip ? _extends({}, buttonKlf, buttonKlfActive) : buttonKlf,
|
|
238
|
+
accessibilityLabel: `aria-label-${label}`,
|
|
239
|
+
onPress: handlePressKey,
|
|
240
|
+
testID: "button-klf"
|
|
241
|
+
}, /*#__PURE__*/React.createElement(KlfIcon, {
|
|
242
|
+
style: iconKey,
|
|
243
|
+
color: "white"
|
|
244
|
+
}), /*#__PURE__*/React.createElement(Text, {
|
|
245
|
+
style: buttonKlfText
|
|
246
|
+
}, label)));
|
|
247
|
+
};
|
|
248
|
+
|
|
249
|
+
const ICONS = {
|
|
250
|
+
right: RightIcon,
|
|
251
|
+
wrong: WrongIcon
|
|
252
|
+
};
|
|
253
|
+
|
|
254
|
+
const ReviewCorrectionPopin = ({
|
|
255
|
+
information,
|
|
256
|
+
klf,
|
|
257
|
+
next,
|
|
258
|
+
type,
|
|
259
|
+
resultLabel
|
|
260
|
+
}) => {
|
|
261
|
+
const templateContext = useTemplateContext();
|
|
262
|
+
const [styleSheet, setStylesheet] = useState(null);
|
|
263
|
+
const {
|
|
264
|
+
theme
|
|
265
|
+
} = templateContext;
|
|
266
|
+
const handlePressNext = next.onClick;
|
|
267
|
+
const Icon = ICONS[type];
|
|
268
|
+
useEffect(() => {
|
|
269
|
+
const _stylesheet = createStyleSheet(theme, type);
|
|
270
|
+
|
|
271
|
+
setStylesheet(_stylesheet);
|
|
272
|
+
}, [theme, type]);
|
|
273
|
+
|
|
274
|
+
if (!styleSheet) {
|
|
275
|
+
return null;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
279
|
+
style: styleSheet.wrapper
|
|
280
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
281
|
+
style: styleSheet.popin
|
|
282
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
283
|
+
style: styleSheet.correctionSection
|
|
284
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
285
|
+
style: styleSheet.iconCircle
|
|
286
|
+
}, /*#__PURE__*/React.createElement(Icon, {
|
|
287
|
+
style: styleSheet.icon,
|
|
288
|
+
color: type === 'wrong' ? theme.colors.negative : theme.colors.positive
|
|
289
|
+
})), /*#__PURE__*/React.createElement(Text, {
|
|
290
|
+
style: styleSheet.resultLabel
|
|
291
|
+
}, resultLabel)), /*#__PURE__*/React.createElement(View, {
|
|
292
|
+
style: styleSheet.feedbackSection,
|
|
293
|
+
accessibilityLabel: "answer-information"
|
|
294
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
295
|
+
style: styleSheet.labelContainer,
|
|
296
|
+
needsOffscreenAlphaCompositing: true
|
|
297
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
298
|
+
accessibilityLabel: information.label,
|
|
299
|
+
style: styleSheet.label
|
|
300
|
+
}, information.label)), /*#__PURE__*/React.createElement(Html, {
|
|
301
|
+
style: styleSheet.htmlInfoMessage
|
|
302
|
+
}, information.message)), klf && type === 'wrong' ? /*#__PURE__*/React.createElement(KlfButton, {
|
|
303
|
+
styleSheet: styleSheet,
|
|
304
|
+
klf: klf
|
|
305
|
+
}) : null, /*#__PURE__*/React.createElement(Touchable, {
|
|
306
|
+
style: styleSheet.button,
|
|
307
|
+
onPress: handlePressNext,
|
|
308
|
+
accessibilityLabel: next['aria-label'],
|
|
309
|
+
testID: next['data-name']
|
|
310
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
311
|
+
style: styleSheet.buttonText
|
|
312
|
+
}, next.label))));
|
|
313
|
+
};
|
|
314
|
+
|
|
315
|
+
export default ReviewCorrectionPopin;
|
|
316
|
+
//# sourceMappingURL=index.native.js.map
|