@coorpacademy/components 10.22.2 → 10.22.5
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/drag-and-drop/index.js +2 -1
- package/es/atom/drag-and-drop/index.js.map +1 -1
- package/es/atom/header-back-button/index.native.js +74 -0
- package/es/atom/header-back-button/index.native.js.map +1 -0
- package/es/atom/header-back-icon/index.native.js +27 -0
- package/es/atom/header-back-icon/index.native.js.map +1 -0
- package/es/atom/html/index.native.js +146 -0
- package/es/atom/html/index.native.js.map +1 -0
- package/es/atom/input-checkbox/index.js +3 -2
- package/es/atom/input-checkbox/index.js.map +1 -1
- package/es/atom/input-switch/index.js +45 -7
- package/es/atom/input-switch/index.js.map +1 -1
- package/es/atom/input-switch/style.css +56 -6
- package/es/atom/select-modal/index.native.js +113 -0
- package/es/atom/select-modal/index.native.js.map +1 -0
- package/es/atom/space/index.native.js +21 -0
- package/es/atom/space/index.native.js.map +1 -0
- package/es/atom/text/index.native.js +31 -0
- package/es/atom/text/index.native.js.map +1 -0
- package/es/hoc/modal/index.native.js +97 -0
- package/es/hoc/modal/index.native.js.map +1 -0
- package/es/hoc/modal/select/index.native.js +86 -0
- package/es/hoc/modal/select/index.native.js.map +1 -0
- package/es/hoc/modal/select-item/index.native.js +54 -0
- package/es/hoc/modal/select-item/index.native.js.map +1 -0
- package/es/hoc/touchable/index.native.js +8 -0
- package/es/hoc/touchable/index.native.js.map +1 -1
- package/es/index.js +2 -1
- package/es/index.js.map +1 -1
- package/es/molecule/answer/index.js +39 -32
- package/es/molecule/answer/index.js.map +1 -1
- package/es/molecule/cm-popin/index.js +125 -19
- package/es/molecule/cm-popin/index.js.map +1 -1
- package/es/molecule/cm-popin/style.css +176 -9
- package/es/molecule/feedback/index.js +7 -3
- package/es/molecule/feedback/index.js.map +1 -1
- package/es/molecule/feedback/style.css +24 -0
- package/es/molecule/questions/free-text/index.native.js +9 -10
- package/es/molecule/questions/free-text/index.native.js.map +1 -1
- package/es/molecule/questions/mobile/template/index.native.js +222 -0
- package/es/molecule/questions/mobile/template/index.native.js.map +1 -0
- package/es/template/app-player/player/index.js +6 -3
- package/es/template/app-player/player/index.js.map +1 -1
- package/es/template/app-player/popin-end/index.js +21 -6
- package/es/template/app-player/popin-end/index.js.map +1 -1
- package/es/template/app-player/popin-end/style.css +1 -1
- package/es/template/app-player/popin-end/summary.css +65 -0
- package/es/template/app-player/popin-end/summary.js +57 -7
- package/es/template/app-player/popin-end/summary.js.map +1 -1
- package/es/template/app-player/popin-header/index.js +33 -12
- package/es/template/app-player/popin-header/index.js.map +1 -1
- package/es/template/app-player/popin-header/style.css +93 -0
- package/es/template/app-player/popin-no-access/index.js +27 -0
- package/es/template/app-player/popin-no-access/index.js.map +1 -0
- package/es/template/app-review/prop-types.js +2 -1
- package/es/template/app-review/prop-types.js.map +1 -1
- package/es/template/app-review/slides/index.js +2 -2
- package/es/template/app-review/slides/index.js.map +1 -1
- package/es/template/app-review/template-context.js +5 -1
- package/es/template/app-review/template-context.js.map +1 -1
- package/es/template/common/dashboard/index.js +6 -3
- package/es/template/common/dashboard/index.js.map +1 -1
- package/es/types/app-review.d.js +2 -0
- package/es/types/app-review.d.js.map +1 -0
- package/es/types/progression-engine.d.js +2 -0
- package/es/types/progression-engine.d.js.map +1 -0
- package/es/types/translations.js +2 -0
- package/es/types/translations.js.map +1 -0
- package/es/util/parse-template-string.js +4 -2
- package/es/util/parse-template-string.js.map +1 -1
- package/es/variables/colors.css +1 -0
- package/es/variables/theme.native.js +1 -0
- package/es/variables/theme.native.js.map +1 -1
- package/lib/atom/drag-and-drop/index.js +2 -1
- package/lib/atom/drag-and-drop/index.js.map +1 -1
- package/lib/atom/header-back-button/index.native.js +95 -0
- package/lib/atom/header-back-button/index.native.js.map +1 -0
- package/lib/atom/header-back-icon/index.native.js +38 -0
- package/lib/atom/header-back-icon/index.native.js.map +1 -0
- package/lib/atom/html/index.native.js +163 -0
- package/lib/atom/html/index.native.js.map +1 -0
- package/lib/atom/input-checkbox/index.js +2 -1
- package/lib/atom/input-checkbox/index.js.map +1 -1
- package/lib/atom/input-switch/index.js +45 -7
- package/lib/atom/input-switch/index.js.map +1 -1
- package/lib/atom/input-switch/style.css +56 -6
- package/lib/atom/select-modal/index.native.js +135 -0
- package/lib/atom/select-modal/index.native.js.map +1 -0
- package/lib/atom/space/index.native.js +33 -0
- package/lib/atom/space/index.native.js.map +1 -0
- package/lib/atom/text/index.native.js +46 -0
- package/lib/atom/text/index.native.js.map +1 -0
- package/lib/hoc/modal/index.native.js +114 -0
- package/lib/hoc/modal/index.native.js.map +1 -0
- package/lib/hoc/modal/select/index.native.js +103 -0
- package/lib/hoc/modal/select/index.native.js.map +1 -0
- package/lib/hoc/modal/select-item/index.native.js +70 -0
- package/lib/hoc/modal/select-item/index.native.js.map +1 -0
- package/lib/hoc/touchable/index.native.js +9 -0
- package/lib/hoc/touchable/index.native.js.map +1 -1
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -1
- package/lib/molecule/answer/index.js +39 -32
- package/lib/molecule/answer/index.js.map +1 -1
- package/lib/molecule/cm-popin/index.js +126 -18
- package/lib/molecule/cm-popin/index.js.map +1 -1
- package/lib/molecule/cm-popin/style.css +176 -9
- package/lib/molecule/feedback/index.js +7 -3
- package/lib/molecule/feedback/index.js.map +1 -1
- package/lib/molecule/feedback/style.css +24 -0
- package/lib/molecule/questions/free-text/index.native.js +8 -9
- package/lib/molecule/questions/free-text/index.native.js.map +1 -1
- package/lib/molecule/questions/mobile/template/index.native.js +243 -0
- package/lib/molecule/questions/mobile/template/index.native.js.map +1 -0
- package/lib/template/app-player/player/index.js +7 -3
- package/lib/template/app-player/player/index.js.map +1 -1
- package/lib/template/app-player/popin-end/index.js +21 -6
- package/lib/template/app-player/popin-end/index.js.map +1 -1
- package/lib/template/app-player/popin-end/style.css +1 -1
- package/lib/template/app-player/popin-end/summary.css +65 -0
- package/lib/template/app-player/popin-end/summary.js +58 -7
- package/lib/template/app-player/popin-end/summary.js.map +1 -1
- package/lib/template/app-player/popin-header/index.js +32 -11
- package/lib/template/app-player/popin-header/index.js.map +1 -1
- package/lib/template/app-player/popin-header/style.css +93 -0
- package/lib/template/app-player/popin-no-access/index.js +37 -0
- package/lib/template/app-player/popin-no-access/index.js.map +1 -0
- package/lib/template/app-review/prop-types.js +2 -1
- package/lib/template/app-review/prop-types.js.map +1 -1
- package/lib/template/app-review/slides/index.js +2 -2
- package/lib/template/app-review/slides/index.js.map +1 -1
- package/lib/template/app-review/template-context.js +5 -1
- package/lib/template/app-review/template-context.js.map +1 -1
- package/lib/template/common/dashboard/index.js +7 -3
- package/lib/template/common/dashboard/index.js.map +1 -1
- package/lib/types/app-review.d.js +2 -0
- package/lib/types/app-review.d.js.map +1 -0
- package/lib/types/progression-engine.d.js +2 -0
- package/lib/types/progression-engine.d.js.map +1 -0
- package/lib/types/translations.js +2 -0
- package/lib/types/translations.js.map +1 -0
- package/lib/util/parse-template-string.js +4 -2
- package/lib/util/parse-template-string.js.map +1 -1
- package/lib/variables/colors.css +1 -0
- package/lib/variables/theme.native.js +3 -1
- package/lib/variables/theme.native.js.map +1 -1
- package/package.json +6 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/molecule/questions/free-text/index.native.tsx"],"names":["createStyleSheet","brandTheme","theme","StyleSheet","create","input","padding","spacing","tiny","borderWidth","borderColor","colors","gray","lightMedium","borderRadius","radius","common","backgroundColor","white","minWidth","text","primary","color","medium","fontWeight","bold","fontSize","regular","textAlign","spaced","paddingVertical","fullWitdh","width","logEvent","eventName","analytics","questionType","id","FreeText","props","templateContext","styleSheet","setStylesheet","PLACEHOLDER_COLOR","testID","onChange","isDisabled","value","
|
|
1
|
+
{"version":3,"sources":["../../../../src/molecule/questions/free-text/index.native.tsx"],"names":["createStyleSheet","brandTheme","theme","StyleSheet","create","input","padding","spacing","tiny","borderWidth","borderColor","colors","gray","lightMedium","borderRadius","radius","common","backgroundColor","white","minWidth","text","primary","color","medium","fontWeight","bold","fontSize","regular","textAlign","spaced","paddingVertical","fullWitdh","width","logEvent","eventName","analytics","questionType","id","FreeText","props","templateContext","styleSheet","setStylesheet","translations","PLACEHOLDER_COLOR","testID","onChange","isDisabled","value","handleFocus","ANALYTICS_EVENT_TYPE","INPUT_FOCUS","handleBlur","INPUT_BLUR","_stylesheet","typeHere"],"mappings":"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","sourcesContent":["import {View, StyleSheet, TextInput} from 'react-native';\nimport React, {useState, useEffect, useCallback} from 'react';\nimport {useTemplateContext} from '../../../template/app-review/template-context';\nimport {ANALYTICS_EVENT_TYPE, Analytics} from '../../../variables/analytics';\n\ntype QuestionType = 'basic' | 'template';\n\ninterface Props {\n fullWitdh?: boolean;\n testID: string;\n questionType: QuestionType;\n analytics?: Analytics;\n onChange: (text: string) => void;\n isDisabled: boolean;\n value: string;\n}\n\ntype StyleSheetType = {\n input: {\n padding: string;\n borderWidth: number;\n borderColor: string;\n borderRadius: number;\n backgroundColor: string;\n minWidth: number;\n };\n text: {\n color: string;\n fontWeight:\n | 'normal'\n | 'bold'\n | '100'\n | '200'\n | '300'\n | '400'\n | '500'\n | '600'\n | '700'\n | '800'\n | '900'\n | undefined;\n fontSize: number;\n textAlign: 'auto' | 'left' | 'right' | 'center' | 'justify' | undefined;\n };\n spaced: {\n paddingVertical: number;\n };\n fullWitdh: {\n width: string;\n };\n};\n\nconst createStyleSheet = (brandTheme, theme) =>\n StyleSheet.create({\n input: {\n padding: theme.spacing.tiny,\n borderWidth: 1,\n borderColor: theme.colors.gray.lightMedium,\n borderRadius: theme.radius.common,\n backgroundColor: theme.colors.white,\n minWidth: 175\n },\n text: {\n borderColor: brandTheme?.colors.primary,\n color: brandTheme?.colors.primary || theme.colors.gray.medium,\n fontWeight: theme.fontWeight.bold,\n fontSize: theme.fontSize.regular,\n textAlign: 'center'\n },\n spaced: {\n paddingVertical: theme.spacing.tiny\n },\n fullWitdh: {\n width: '100%'\n }\n });\n\nconst logEvent = (eventName: string, analytics: Analytics, questionType: QuestionType) => {\n analytics &&\n analytics.logEvent(eventName, {\n id: `question-input-text`,\n questionType\n });\n};\n\nconst FreeText = (props: Props) => {\n const templateContext = useTemplateContext();\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n const {brandTheme, theme, translations} = templateContext;\n const PLACEHOLDER_COLOR = theme.colors.gray.medium;\n\n // ------------------------------------\n\n const {analytics, questionType, fullWitdh = false, testID, onChange, isDisabled, value} = props;\n\n // ------------------------------------\n\n const handleFocus = useCallback(\n () => analytics && logEvent(ANALYTICS_EVENT_TYPE.INPUT_FOCUS, analytics, questionType),\n [analytics, questionType]\n );\n\n const handleBlur = useCallback(\n () => analytics && logEvent(ANALYTICS_EVENT_TYPE.INPUT_BLUR, analytics, questionType),\n [analytics, questionType]\n );\n\n // ------------------------------------\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.spaced, fullWitdh && styleSheet.fullWitdh]}>\n <TextInput\n style={[styleSheet.input, styleSheet.text]}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChangeText={onChange}\n placeholder={translations.typeHere}\n placeholderTextColor={PLACEHOLDER_COLOR}\n value={value}\n testID={testID}\n editable={!isDisabled}\n selectTextOnFocus={!isDisabled}\n />\n </View>\n );\n};\n\nexport default FreeText;\n"],"file":"index.native.js"}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
|
|
6
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
7
|
+
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
|
|
10
|
+
var _trim = _interopRequireDefault(require("lodash/fp/trim"));
|
|
11
|
+
|
|
12
|
+
var _last = _interopRequireDefault(require("lodash/fp/last"));
|
|
13
|
+
|
|
14
|
+
var _index = _interopRequireDefault(require("../../../../atom/html/index.native"));
|
|
15
|
+
|
|
16
|
+
var _index2 = _interopRequireDefault(require("../../../../atom/select-modal/index.native"));
|
|
17
|
+
|
|
18
|
+
var _index3 = _interopRequireDefault(require("../../../../atom/space/index.native"));
|
|
19
|
+
|
|
20
|
+
var _index4 = _interopRequireDefault(require("../../free-text/index.native"));
|
|
21
|
+
|
|
22
|
+
var _templateContext = require("../../../../template/app-review/template-context");
|
|
23
|
+
|
|
24
|
+
var _parseTemplateString = _interopRequireDefault(require("../../../../util/parse-template-string"));
|
|
25
|
+
|
|
26
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
27
|
+
|
|
28
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
29
|
+
|
|
30
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
|
+
|
|
32
|
+
const createStyleSheet = theme => ({
|
|
33
|
+
section: {
|
|
34
|
+
width: '100%',
|
|
35
|
+
flexDirection: 'row',
|
|
36
|
+
flexWrap: 'wrap',
|
|
37
|
+
justifyContent: 'center',
|
|
38
|
+
alignItems: 'center'
|
|
39
|
+
},
|
|
40
|
+
spaced: {
|
|
41
|
+
paddingVertical: theme.spacing.tiny
|
|
42
|
+
},
|
|
43
|
+
input: {
|
|
44
|
+
padding: theme.spacing.tiny,
|
|
45
|
+
borderWidth: 1,
|
|
46
|
+
borderColor: theme.colors.gray.lightMedium,
|
|
47
|
+
borderRadius: theme.radius.common,
|
|
48
|
+
backgroundColor: theme.colors.white,
|
|
49
|
+
minWidth: 175
|
|
50
|
+
},
|
|
51
|
+
htmlText: {
|
|
52
|
+
padding: theme.spacing.tiny,
|
|
53
|
+
color: theme.colors.black,
|
|
54
|
+
fontWeight: theme.fontWeight.bold,
|
|
55
|
+
lineHeight: 30
|
|
56
|
+
},
|
|
57
|
+
text: {
|
|
58
|
+
color: theme.colors.gray.medium,
|
|
59
|
+
fontWeight: theme.fontWeight.bold,
|
|
60
|
+
fontSize: theme.fontSize.regular,
|
|
61
|
+
textAlign: 'center'
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
const Section = ({
|
|
66
|
+
section,
|
|
67
|
+
items,
|
|
68
|
+
index,
|
|
69
|
+
focusedSelectId,
|
|
70
|
+
onInputChange,
|
|
71
|
+
userChoices,
|
|
72
|
+
handleBlur,
|
|
73
|
+
handleFocus,
|
|
74
|
+
isDisabled,
|
|
75
|
+
styles
|
|
76
|
+
}) => {
|
|
77
|
+
const prefix = `question-section-${index + 1}`;
|
|
78
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
79
|
+
style: styles.section,
|
|
80
|
+
key: `container-${prefix}`
|
|
81
|
+
}, section.map((part, id) => {
|
|
82
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
83
|
+
key: `${prefix}-${id}`,
|
|
84
|
+
style: {
|
|
85
|
+
flexDirection: 'row'
|
|
86
|
+
}
|
|
87
|
+
}, /*#__PURE__*/_react.default.createElement(Item, {
|
|
88
|
+
prefix: prefix,
|
|
89
|
+
part: part,
|
|
90
|
+
items: items,
|
|
91
|
+
index: id,
|
|
92
|
+
focusedSelectId: focusedSelectId,
|
|
93
|
+
isDisabled: isDisabled,
|
|
94
|
+
userChoices: userChoices,
|
|
95
|
+
handleBlur: handleBlur,
|
|
96
|
+
handleFocus: handleFocus,
|
|
97
|
+
onInputChange: onInputChange,
|
|
98
|
+
styles: styles
|
|
99
|
+
}), /*#__PURE__*/_react.default.createElement(_index3.default, {
|
|
100
|
+
type: "micro"
|
|
101
|
+
}));
|
|
102
|
+
}));
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
const Item = props => {
|
|
106
|
+
const {
|
|
107
|
+
part,
|
|
108
|
+
index,
|
|
109
|
+
prefix,
|
|
110
|
+
isDisabled = false,
|
|
111
|
+
focusedSelectId,
|
|
112
|
+
items,
|
|
113
|
+
userChoices,
|
|
114
|
+
onInputChange,
|
|
115
|
+
handleBlur,
|
|
116
|
+
handleFocus,
|
|
117
|
+
styles
|
|
118
|
+
} = props;
|
|
119
|
+
const templateContext = (0, _templateContext.useTemplateContext)();
|
|
120
|
+
const {
|
|
121
|
+
theme,
|
|
122
|
+
brandTheme,
|
|
123
|
+
translations
|
|
124
|
+
} = templateContext;
|
|
125
|
+
const inputNames = items.map(item => item.name);
|
|
126
|
+
const id = `${prefix}-part-${index + 1}`;
|
|
127
|
+
const isFocused = focusedSelectId === id;
|
|
128
|
+
const selectedStyle = brandTheme && {
|
|
129
|
+
borderColor: brandTheme.colors.primary,
|
|
130
|
+
color: brandTheme.colors.primary
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
if (part.type === 'answerField' && inputNames.includes(part.value)) {
|
|
134
|
+
const itemIndex = items.findIndex(_item => _item.name === part.value);
|
|
135
|
+
const item = items[itemIndex];
|
|
136
|
+
const value = userChoices[itemIndex];
|
|
137
|
+
|
|
138
|
+
if (!item || !item.type || !item.name) {
|
|
139
|
+
return null;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
const disabledSuffix = isDisabled ? '-disabled' : '';
|
|
143
|
+
const selectedSuffix = value ? '-selected' : '';
|
|
144
|
+
|
|
145
|
+
const handleInputChange = _item => _value => onInputChange(_item, _value);
|
|
146
|
+
|
|
147
|
+
if (item.type === 'text') {
|
|
148
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
149
|
+
style: styles.spaced,
|
|
150
|
+
testID: id
|
|
151
|
+
}, /*#__PURE__*/_react.default.createElement(_index4.default, {
|
|
152
|
+
key: id,
|
|
153
|
+
isDisabled: isDisabled,
|
|
154
|
+
onChange: handleInputChange(item),
|
|
155
|
+
value: value,
|
|
156
|
+
testID: `${id}-text${selectedSuffix}${disabledSuffix}`,
|
|
157
|
+
questionType: "template"
|
|
158
|
+
}));
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
if (item.type === 'select') {
|
|
162
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
163
|
+
style: styles.spaced,
|
|
164
|
+
testID: id
|
|
165
|
+
}, /*#__PURE__*/_react.default.createElement(_index2.default, {
|
|
166
|
+
isDisabled: isDisabled,
|
|
167
|
+
questionType: "template",
|
|
168
|
+
values: item.items,
|
|
169
|
+
value: value,
|
|
170
|
+
placeholder: translations.selectAnAnswer,
|
|
171
|
+
isFocused: isFocused,
|
|
172
|
+
onBlur: handleBlur,
|
|
173
|
+
onFocus: handleFocus(id),
|
|
174
|
+
onChange: handleInputChange(item),
|
|
175
|
+
textStyle: styles.text,
|
|
176
|
+
style: [styles.input, value && selectedStyle],
|
|
177
|
+
testID: `${id}-select${selectedSuffix}${disabledSuffix}`
|
|
178
|
+
}));
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
return /*#__PURE__*/_react.default.createElement(_index.default, {
|
|
183
|
+
key: id,
|
|
184
|
+
fontSize: theme.fontSize.regular,
|
|
185
|
+
testID: id,
|
|
186
|
+
style: styles.htmlText
|
|
187
|
+
}, (0, _trim.default)(part.value || ''));
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
const QuestionTemplate = props => {
|
|
191
|
+
const {
|
|
192
|
+
template,
|
|
193
|
+
onInputChange,
|
|
194
|
+
userChoices,
|
|
195
|
+
items,
|
|
196
|
+
handleBlur,
|
|
197
|
+
handleFocus,
|
|
198
|
+
focusedSelectId,
|
|
199
|
+
isDisabled = false
|
|
200
|
+
} = props;
|
|
201
|
+
const templateContext = (0, _templateContext.useTemplateContext)();
|
|
202
|
+
const {
|
|
203
|
+
theme
|
|
204
|
+
} = templateContext;
|
|
205
|
+
const [styleSheet, setStylesheet] = (0, _react.useState)(null);
|
|
206
|
+
(0, _react.useEffect)(() => {
|
|
207
|
+
const _stylesheet = createStyleSheet(theme);
|
|
208
|
+
|
|
209
|
+
setStylesheet(_stylesheet);
|
|
210
|
+
}, [theme]);
|
|
211
|
+
|
|
212
|
+
if (!template || !styleSheet) {
|
|
213
|
+
return null;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
const parts = (0, _parseTemplateString.default)(template);
|
|
217
|
+
const sections = parts.reduce((result, item) => {
|
|
218
|
+
const section = (0, _last.default)(result) || [];
|
|
219
|
+
return result.slice(0, -1).concat([section.concat([item])]);
|
|
220
|
+
}, []);
|
|
221
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
222
|
+
style: {
|
|
223
|
+
flex: 1
|
|
224
|
+
},
|
|
225
|
+
testID: "question-template"
|
|
226
|
+
}, sections.map((section, index) => /*#__PURE__*/_react.default.createElement(Section, {
|
|
227
|
+
key: index,
|
|
228
|
+
section: section,
|
|
229
|
+
items: items,
|
|
230
|
+
index: index,
|
|
231
|
+
handleBlur: handleBlur,
|
|
232
|
+
handleFocus: handleFocus,
|
|
233
|
+
focusedSelectId: focusedSelectId,
|
|
234
|
+
onInputChange: onInputChange,
|
|
235
|
+
userChoices: userChoices,
|
|
236
|
+
isDisabled: isDisabled,
|
|
237
|
+
styles: styleSheet
|
|
238
|
+
})));
|
|
239
|
+
};
|
|
240
|
+
|
|
241
|
+
var _default = QuestionTemplate;
|
|
242
|
+
exports.default = _default;
|
|
243
|
+
//# sourceMappingURL=index.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/molecule/questions/mobile/template/index.native.tsx"],"names":["createStyleSheet","theme","section","width","flexDirection","flexWrap","justifyContent","alignItems","spaced","paddingVertical","spacing","tiny","input","padding","borderWidth","borderColor","colors","gray","lightMedium","borderRadius","radius","common","backgroundColor","white","minWidth","htmlText","color","black","fontWeight","bold","lineHeight","text","medium","fontSize","regular","textAlign","Section","items","index","focusedSelectId","onInputChange","userChoices","handleBlur","handleFocus","isDisabled","styles","prefix","map","part","id","Item","props","templateContext","brandTheme","translations","inputNames","item","name","isFocused","selectedStyle","primary","type","includes","value","itemIndex","findIndex","_item","disabledSuffix","selectedSuffix","handleInputChange","_value","selectAnAnswer","QuestionTemplate","template","styleSheet","setStylesheet","_stylesheet","parts","sections","reduce","result","slice","concat","flex"],"mappings":"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","sourcesContent":["import React, {useEffect, useState} from 'react';\nimport {View} from 'react-native';\n\nimport trim from 'lodash/fp/trim';\nimport last from 'lodash/fp/last';\n\nimport Html from '../../../../atom/html/index.native';\nimport Select from '../../../../atom/select-modal/index.native';\nimport Space from '../../../../atom/space/index.native';\nimport {FocusedSelectId, HandleBlur, HandleFocus} from '../../../../types/app-review.d';\nimport type {Choice} from '../../../../types/progression-engine.d';\nimport FreeText from '../../free-text/index.native';\nimport {useTemplateContext} from '../../../../template/app-review/template-context';\nimport {Theme} from '../../../../variables/theme.native';\nimport parseTemplateString from '../../../../util/parse-template-string';\n\nconst createStyleSheet = (theme: Theme) => ({\n section: {\n width: '100%',\n flexDirection: 'row',\n flexWrap: 'wrap',\n justifyContent: 'center',\n alignItems: 'center'\n },\n spaced: {\n paddingVertical: theme.spacing.tiny\n },\n input: {\n padding: theme.spacing.tiny,\n borderWidth: 1,\n borderColor: theme.colors.gray.lightMedium,\n borderRadius: theme.radius.common,\n backgroundColor: theme.colors.white,\n minWidth: 175\n },\n htmlText: {\n padding: theme.spacing.tiny,\n color: theme.colors.black,\n fontWeight: theme.fontWeight.bold,\n lineHeight: 30\n },\n text: {\n color: theme.colors.gray.medium,\n fontWeight: theme.fontWeight.bold,\n fontSize: theme.fontSize.regular,\n textAlign: 'center'\n }\n});\n\ntype TemplatePart = {\n type: 'string' | 'answerField';\n value: string;\n};\n\ntype SectionProps = {\n isDisabled: boolean;\n userChoices: Array<string>;\n section: Array<TemplatePart>;\n items: Array<Choice>;\n index: number;\n onInputChange: (item: Choice, value: string) => void;\n focusedSelectId: FocusedSelectId;\n handleBlur: HandleBlur;\n handleFocus: HandleFocus;\n styles: any;\n};\n\nconst Section = ({\n section,\n items,\n index,\n focusedSelectId,\n onInputChange,\n userChoices,\n handleBlur,\n handleFocus,\n isDisabled,\n styles\n}: SectionProps) => {\n const prefix = `question-section-${index + 1}`;\n\n return (\n <View style={styles.section} key={`container-${prefix}`}>\n {section.map((part, id) => {\n return (\n <View key={`${prefix}-${id}`} style={{flexDirection: 'row'}}>\n <Item\n prefix={prefix}\n part={part}\n items={items}\n index={id}\n focusedSelectId={focusedSelectId}\n isDisabled={isDisabled}\n userChoices={userChoices}\n handleBlur={handleBlur}\n handleFocus={handleFocus}\n onInputChange={onInputChange}\n styles={styles}\n />\n <Space type=\"micro\" />\n </View>\n );\n })}\n </View>\n );\n};\n\ntype ItemProps = {\n part: TemplatePart;\n items: Array<Choice>;\n index: number;\n prefix: string;\n isDisabled?: boolean;\n userChoices: Array<string>;\n onInputChange: (item: Choice, value: string) => void;\n focusedSelectId: FocusedSelectId;\n handleBlur: HandleBlur;\n handleFocus: HandleFocus;\n styles: any;\n};\n\nconst Item = (props: ItemProps) => {\n const {\n part,\n index,\n prefix,\n isDisabled = false,\n focusedSelectId,\n items,\n userChoices,\n onInputChange,\n handleBlur,\n handleFocus,\n styles\n } = props;\n\n const templateContext = useTemplateContext();\n const {theme, brandTheme, translations} = templateContext;\n\n const inputNames = items.map(item => item.name);\n const id = `${prefix}-part-${index + 1}`;\n const isFocused = focusedSelectId === id;\n\n const selectedStyle = brandTheme && {\n borderColor: brandTheme.colors.primary,\n color: brandTheme.colors.primary\n };\n\n if (part.type === 'answerField' && inputNames.includes(part.value)) {\n const itemIndex = items.findIndex(_item => _item.name === part.value);\n const item = items[itemIndex];\n const value = userChoices[itemIndex];\n\n if (!item || !item.type || !item.name) {\n return null;\n }\n\n const disabledSuffix = isDisabled ? '-disabled' : '';\n const selectedSuffix = value ? '-selected' : '';\n\n const handleInputChange = (_item: Choice) => (_value: string) => onInputChange(_item, _value);\n\n if (item.type === 'text') {\n return (\n <View style={styles.spaced} testID={id}>\n <FreeText\n key={id}\n isDisabled={isDisabled}\n onChange={handleInputChange(item)}\n value={value}\n testID={`${id}-text${selectedSuffix}${disabledSuffix}`}\n questionType=\"template\"\n />\n </View>\n );\n }\n\n if (item.type === 'select') {\n return (\n <View style={styles.spaced} testID={id}>\n <Select\n isDisabled={isDisabled}\n questionType=\"template\"\n values={item.items}\n value={value}\n placeholder={translations.selectAnAnswer}\n isFocused={isFocused}\n onBlur={handleBlur}\n onFocus={handleFocus(id)}\n onChange={handleInputChange(item)}\n textStyle={styles.text}\n style={[styles.input, value && selectedStyle]}\n testID={`${id}-select${selectedSuffix}${disabledSuffix}`}\n />\n </View>\n );\n }\n }\n\n return (\n <Html key={id} fontSize={theme.fontSize.regular} testID={id} style={styles.htmlText}>\n {trim(part.value || '')}\n </Html>\n );\n};\n\nexport type Props = {\n isDisabled?: boolean;\n template: string;\n items: Array<Choice>;\n userChoices: Array<string>;\n onInputChange: (item: Choice, value: string) => void;\n focusedSelectId: FocusedSelectId;\n handleBlur: HandleBlur;\n handleFocus: HandleFocus;\n};\n\nconst QuestionTemplate = (props: Props) => {\n const {\n template,\n onInputChange,\n userChoices,\n items,\n handleBlur,\n handleFocus,\n focusedSelectId,\n isDisabled = false\n } = props;\n\n const templateContext = useTemplateContext();\n const {theme} = templateContext;\n\n const [styleSheet, setStylesheet] = useState<any | null>(null);\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n if (!template || !styleSheet) {\n return null;\n }\n\n const parts = parseTemplateString(template);\n\n const sections: Array<Array<TemplatePart>> = parts.reduce((result, item) => {\n const section = last(result) || [];\n return result.slice(0, -1).concat([section.concat([item])]);\n }, []);\n\n return (\n <View style={{flex: 1}} testID=\"question-template\">\n {sections.map((section, index) => (\n <Section\n key={index}\n section={section}\n items={items}\n index={index}\n handleBlur={handleBlur}\n handleFocus={handleFocus}\n focusedSelectId={focusedSelectId}\n onInputChange={onInputChange}\n userChoices={userChoices}\n isDisabled={isDisabled}\n styles={styleSheet}\n />\n ))}\n </View>\n );\n};\n\nexport default QuestionTemplate;\n"],"file":"index.native.js"}
|
|
@@ -7,6 +7,8 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
7
7
|
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
|
|
10
|
+
var _cmPopin = _interopRequireDefault(require("../../../molecule/cm-popin"));
|
|
11
|
+
|
|
10
12
|
var _slides = _interopRequireDefault(require("./slides"));
|
|
11
13
|
|
|
12
14
|
var _style = _interopRequireDefault(require("./style.css"));
|
|
@@ -15,7 +17,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
15
17
|
|
|
16
18
|
const SlidePlayer = props => {
|
|
17
19
|
const {
|
|
18
|
-
player
|
|
20
|
+
player,
|
|
21
|
+
popin
|
|
19
22
|
} = props;
|
|
20
23
|
const backgroundImage = player.backgroundUrl ? `url(${player.backgroundUrl})` : null;
|
|
21
24
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -28,11 +31,12 @@ const SlidePlayer = props => {
|
|
|
28
31
|
style: {
|
|
29
32
|
backgroundImage
|
|
30
33
|
}
|
|
31
|
-
}), /*#__PURE__*/_react.default.createElement(_slides.default, player)));
|
|
34
|
+
}), /*#__PURE__*/_react.default.createElement(_slides.default, player), popin ? /*#__PURE__*/_react.default.createElement(_cmPopin.default, popin) : null));
|
|
32
35
|
};
|
|
33
36
|
|
|
34
37
|
SlidePlayer.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
35
|
-
player: _propTypes.default.shape(_slides.default.propTypes)
|
|
38
|
+
player: _propTypes.default.shape(_slides.default.propTypes),
|
|
39
|
+
popin: _propTypes.default.shape(_cmPopin.default.propTypes)
|
|
36
40
|
} : {};
|
|
37
41
|
var _default = SlidePlayer;
|
|
38
42
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/template/app-player/player/index.js"],"names":["SlidePlayer","props","player","backgroundImage","backgroundUrl","style","wrapper","playerWrapper","playerBackground","propTypes","PropTypes","shape","SlidesPlayer"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;;;AAEA,MAAMA,WAAW,GAAGC,KAAK,IAAI;AAC3B,QAAM;AAACC,IAAAA;
|
|
1
|
+
{"version":3,"sources":["../../../../src/template/app-player/player/index.js"],"names":["SlidePlayer","props","player","popin","backgroundImage","backgroundUrl","style","wrapper","playerWrapper","playerBackground","propTypes","PropTypes","shape","SlidesPlayer","CMPopin"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,MAAMA,WAAW,GAAGC,KAAK,IAAI;AAC3B,QAAM;AAACC,IAAAA,MAAD;AAASC,IAAAA;AAAT,MAAkBF,KAAxB;AACA,QAAMG,eAAe,GAAGF,MAAM,CAACG,aAAP,GAAwB,OAAMH,MAAM,CAACG,aAAc,GAAnD,GAAwD,IAAhF;AACA,sBACE;AAAK,iBAAU,aAAf;AAA6B,IAAA,SAAS,EAAEC,eAAMC;AAA9C,kBACE;AAAK,IAAA,SAAS,EAAED,eAAME;AAAtB,kBACE;AAAK,IAAA,SAAS,EAAEF,eAAMG,gBAAtB;AAAwC,IAAA,KAAK,EAAE;AAACL,MAAAA;AAAD;AAA/C,IADF,eAEE,6BAAC,eAAD,EAAkBF,MAAlB,CAFF,EAGGC,KAAK,gBAAG,6BAAC,gBAAD,EAAaA,KAAb,CAAH,GAA4B,IAHpC,CADF,CADF;AASD,CAZD;;AAcAH,WAAW,CAACU,SAAZ,2CAAwB;AACtBR,EAAAA,MAAM,EAAES,mBAAUC,KAAV,CAAgBC,gBAAaH,SAA7B,CADc;AAEtBP,EAAAA,KAAK,EAAEQ,mBAAUC,KAAV,CAAgBE,iBAAQJ,SAAxB;AAFe,CAAxB;eAKeV,W","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport CMPopin from '../../../molecule/cm-popin';\nimport SlidesPlayer from './slides';\nimport style from './style.css';\n\nconst SlidePlayer = props => {\n const {player, popin} = props;\n const backgroundImage = player.backgroundUrl ? `url(${player.backgroundUrl})` : null;\n return (\n <div data-name=\"slidePlayer\" className={style.wrapper}>\n <div className={style.playerWrapper}>\n <div className={style.playerBackground} style={{backgroundImage}} />\n <SlidesPlayer {...player} />\n {popin ? <CMPopin {...popin} /> : null}\n </div>\n </div>\n );\n};\n\nSlidePlayer.propTypes = {\n player: PropTypes.shape(SlidesPlayer.propTypes),\n popin: PropTypes.shape(CMPopin.propTypes)\n};\n\nexport default SlidePlayer;\n"],"file":"index.js"}
|
|
@@ -15,26 +15,41 @@ var _style = _interopRequireDefault(require("./style.css"));
|
|
|
15
15
|
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
function _extends() { _extends = Object.assign || 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); }
|
|
19
|
+
|
|
20
|
+
const Content = props => {
|
|
21
|
+
const {
|
|
22
|
+
mode = 'default'
|
|
23
|
+
} = props;
|
|
24
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
25
|
+
className: mode !== 'scorm' ? _style.default.popinWrapper : null
|
|
26
|
+
}, /*#__PURE__*/_react.default.createElement(_summary.default, props));
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
Content.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
30
|
+
mode: _propTypes.default.oneOf(['scorm', 'default'])
|
|
31
|
+
} : {};
|
|
21
32
|
|
|
22
33
|
const PopinEnd = props => {
|
|
23
34
|
const {
|
|
24
35
|
header,
|
|
25
|
-
summary
|
|
36
|
+
summary,
|
|
37
|
+
mode = 'default'
|
|
26
38
|
} = props;
|
|
27
39
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
28
40
|
"data-name": "popinEnd",
|
|
29
41
|
className: _style.default.wrapper
|
|
30
42
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
31
43
|
className: _style.default.slidesHeader
|
|
32
|
-
}, /*#__PURE__*/_react.default.createElement(_header.default, header)), /*#__PURE__*/_react.default.createElement(Content, summary
|
|
44
|
+
}, /*#__PURE__*/_react.default.createElement(_header.default, header)), /*#__PURE__*/_react.default.createElement(Content, _extends({}, summary, {
|
|
45
|
+
mode: mode
|
|
46
|
+
})));
|
|
33
47
|
};
|
|
34
48
|
|
|
35
49
|
PopinEnd.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
36
50
|
header: _propTypes.default.shape(_header.default.propTypes),
|
|
37
|
-
summary: _propTypes.default.shape(_summary.default.propTypes)
|
|
51
|
+
summary: _propTypes.default.shape(_summary.default.propTypes),
|
|
52
|
+
mode: _propTypes.default.oneOf(['scorm', 'default'])
|
|
38
53
|
} : {};
|
|
39
54
|
var _default = PopinEnd;
|
|
40
55
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/template/app-player/popin-end/index.js"],"names":["Content","props","style","popinWrapper","
|
|
1
|
+
{"version":3,"sources":["../../../../src/template/app-player/popin-end/index.js"],"names":["Content","props","mode","style","popinWrapper","propTypes","PropTypes","oneOf","PopinEnd","header","summary","wrapper","slidesHeader","shape","Header","Summary"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,MAAMA,OAAO,GAAGC,KAAK,IAAI;AACvB,QAAM;AAACC,IAAAA,IAAI,GAAG;AAAR,MAAqBD,KAA3B;AACA,sBACE;AAAK,IAAA,SAAS,EAAEC,IAAI,KAAK,OAAT,GAAmBC,eAAMC,YAAzB,GAAwC;AAAxD,kBACE,6BAAC,gBAAD,EAAaH,KAAb,CADF,CADF;AAKD,CAPD;;AAQAD,OAAO,CAACK,SAAR,2CAAoB;AAClBH,EAAAA,IAAI,EAAEI,mBAAUC,KAAV,CAAgB,CAAC,OAAD,EAAU,SAAV,CAAhB;AADY,CAApB;;AAIA,MAAMC,QAAQ,GAAGP,KAAK,IAAI;AACxB,QAAM;AAACQ,IAAAA,MAAD;AAASC,IAAAA,OAAT;AAAkBR,IAAAA,IAAI,GAAG;AAAzB,MAAsCD,KAA5C;AACA,sBACE;AAAK,iBAAU,UAAf;AAA0B,IAAA,SAAS,EAAEE,eAAMQ;AAA3C,kBACE;AAAK,IAAA,SAAS,EAAER,eAAMS;AAAtB,kBACE,6BAAC,eAAD,EAAYH,MAAZ,CADF,CADF,eAIE,6BAAC,OAAD,eAAaC,OAAb;AAAsB,IAAA,IAAI,EAAER;AAA5B,KAJF,CADF;AAQD,CAVD;;AAYAM,QAAQ,CAACH,SAAT,2CAAqB;AACnBI,EAAAA,MAAM,EAAEH,mBAAUO,KAAV,CAAgBC,gBAAOT,SAAvB,CADW;AAEnBK,EAAAA,OAAO,EAAEJ,mBAAUO,KAAV,CAAgBE,iBAAQV,SAAxB,CAFU;AAGnBH,EAAAA,IAAI,EAAEI,mBAAUC,KAAV,CAAgB,CAAC,OAAD,EAAU,SAAV,CAAhB;AAHa,CAArB;eAMeC,Q","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Header from '../player/slides/header';\nimport Summary from './summary';\nimport style from './style.css';\n\nconst Content = props => {\n const {mode = 'default'} = props;\n return (\n <div className={mode !== 'scorm' ? style.popinWrapper : null}>\n <Summary {...props} />\n </div>\n );\n};\nContent.propTypes = {\n mode: PropTypes.oneOf(['scorm', 'default'])\n};\n\nconst PopinEnd = props => {\n const {header, summary, mode = 'default'} = props;\n return (\n <div data-name=\"popinEnd\" className={style.wrapper}>\n <div className={style.slidesHeader}>\n <Header {...header} />\n </div>\n <Content {...summary} mode={mode} />\n </div>\n );\n};\n\nPopinEnd.propTypes = {\n header: PropTypes.shape(Header.propTypes),\n summary: PropTypes.shape(Summary.propTypes),\n mode: PropTypes.oneOf(['scorm', 'default'])\n};\n\nexport default PopinEnd;\n"],"file":"index.js"}
|
|
@@ -253,6 +253,60 @@
|
|
|
253
253
|
margin: 0;
|
|
254
254
|
}
|
|
255
255
|
|
|
256
|
+
.circle {
|
|
257
|
+
border-radius: 50%;
|
|
258
|
+
border: 1px solid light;
|
|
259
|
+
display: flex;
|
|
260
|
+
justify-content: center;
|
|
261
|
+
align-items: center;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
.smallCircle {
|
|
265
|
+
height: calc(100vh + 136px);
|
|
266
|
+
width: calc(100vh + 136px);
|
|
267
|
+
composes: circle;
|
|
268
|
+
}
|
|
269
|
+
.mediumCircle {
|
|
270
|
+
height: calc(100vh + 386px);
|
|
271
|
+
width: calc(100vh + 386px);
|
|
272
|
+
composes: circle;
|
|
273
|
+
}
|
|
274
|
+
.largeCircle {
|
|
275
|
+
height: calc(100vh + 636px);
|
|
276
|
+
width: calc(100vh + 636px);
|
|
277
|
+
composes: circle;
|
|
278
|
+
}
|
|
279
|
+
.organismPlayerResultContainerScorm {
|
|
280
|
+
height: calc(100vh - 60px);
|
|
281
|
+
width: 100%;
|
|
282
|
+
display: flex;
|
|
283
|
+
justify-content: center;
|
|
284
|
+
align-items: center;
|
|
285
|
+
overflow: hidden;
|
|
286
|
+
}
|
|
287
|
+
.lottie {
|
|
288
|
+
display: flex;
|
|
289
|
+
height: 135%;
|
|
290
|
+
width: 135%;
|
|
291
|
+
transform: translate(-13%, -13%);
|
|
292
|
+
}
|
|
293
|
+
.animationContainer {
|
|
294
|
+
height: calc(100vh - 60px);
|
|
295
|
+
overflow: hidden;
|
|
296
|
+
position: absolute;
|
|
297
|
+
z-index: 1;
|
|
298
|
+
width: 100%;
|
|
299
|
+
}
|
|
300
|
+
.ie11Backup {
|
|
301
|
+
position: relative;
|
|
302
|
+
transform: translate(0%, 10%);
|
|
303
|
+
height: 80%;
|
|
304
|
+
width: 80%;
|
|
305
|
+
margin: 0 auto;
|
|
306
|
+
z-index: 1;
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
|
|
256
310
|
@media mobile {
|
|
257
311
|
.commentSection {
|
|
258
312
|
flex-direction: column;
|
|
@@ -265,6 +319,17 @@
|
|
|
265
319
|
width: 100%;
|
|
266
320
|
}
|
|
267
321
|
}
|
|
322
|
+
@media tablet {
|
|
323
|
+
.organismPlayerResultContainerScorm {
|
|
324
|
+
height: 100%;
|
|
325
|
+
}
|
|
326
|
+
.largeCircle , .mediumCircle, .smallCircle {
|
|
327
|
+
border: 0px;
|
|
328
|
+
height: 100%;
|
|
329
|
+
width: 100%;
|
|
330
|
+
border-radius: 0;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
268
333
|
|
|
269
334
|
.commentSectionLink {
|
|
270
335
|
font-family: Gilroy;
|
|
@@ -39,6 +39,8 @@ var _style = require("../../../atom/label/style.css");
|
|
|
39
39
|
|
|
40
40
|
var _popinHeader = _interopRequireDefault(require("../popin-header"));
|
|
41
41
|
|
|
42
|
+
var _lottieWrapper = _interopRequireDefault(require("../../../atom/lottie-wrapper"));
|
|
43
|
+
|
|
42
44
|
var _summary = _interopRequireDefault(require("./summary.css"));
|
|
43
45
|
|
|
44
46
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -288,7 +290,8 @@ const Summary = (props, context) => {
|
|
|
288
290
|
comment,
|
|
289
291
|
footer,
|
|
290
292
|
action,
|
|
291
|
-
feedback
|
|
293
|
+
feedback,
|
|
294
|
+
mode
|
|
292
295
|
} = props;
|
|
293
296
|
const {
|
|
294
297
|
skin
|
|
@@ -300,12 +303,59 @@ const Summary = (props, context) => {
|
|
|
300
303
|
const footerView = footer && header ? /*#__PURE__*/_react.default.createElement(Footer, _extends({}, footer, {
|
|
301
304
|
color: primary
|
|
302
305
|
})) : null;
|
|
303
|
-
const feedbackView = feedback ? /*#__PURE__*/_react.default.createElement(_feedback.default, feedback
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
306
|
+
const feedbackView = feedback ? /*#__PURE__*/_react.default.createElement(_feedback.default, _extends({}, feedback, {
|
|
307
|
+
mode: mode
|
|
308
|
+
})) : null;
|
|
309
|
+
return /*#__PURE__*/_react.default.createElement(BackgroundScorm, {
|
|
310
|
+
mode: mode,
|
|
311
|
+
failed: header.failed
|
|
312
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
313
|
+
className: mode !== 'scorm' ? _summary.default.summaryWrapper : null
|
|
314
|
+
}, /*#__PURE__*/_react.default.createElement(Header, _extends({}, header, {
|
|
315
|
+
mode: mode
|
|
316
|
+
})), feedbackView, /*#__PURE__*/_react.default.createElement(Action, _extends({}, action, {
|
|
307
317
|
color: primary
|
|
308
|
-
})), /*#__PURE__*/_react.default.createElement(Cards, recommendation), commentView, footerView);
|
|
318
|
+
})), /*#__PURE__*/_react.default.createElement(Cards, recommendation), commentView, footerView));
|
|
319
|
+
};
|
|
320
|
+
|
|
321
|
+
const BackgroundScorm = props => {
|
|
322
|
+
const {
|
|
323
|
+
mode = 'default',
|
|
324
|
+
children,
|
|
325
|
+
failed
|
|
326
|
+
} = props;
|
|
327
|
+
if (mode === 'scorm') return /*#__PURE__*/_react.default.createElement("div", {
|
|
328
|
+
className: _summary.default.organismPlayerResultContainerScorm
|
|
329
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
330
|
+
className: _summary.default.animationContainer
|
|
331
|
+
}, !failed ? /*#__PURE__*/_react.default.createElement(_lottieWrapper.default, _extends({
|
|
332
|
+
'aria-label': 'aria lottie',
|
|
333
|
+
'data-name': 'default-lottie',
|
|
334
|
+
className: undefined,
|
|
335
|
+
animationSrc: 'https://static-staging.coorpacademy.com/animations/review/confetti.json',
|
|
336
|
+
loop: undefined,
|
|
337
|
+
autoplay: true,
|
|
338
|
+
rendererSettings: {
|
|
339
|
+
hideOnTransparent: false,
|
|
340
|
+
animationClassName: ''
|
|
341
|
+
},
|
|
342
|
+
ie11ImageBackup: 'https://static-staging.coorpacademy.com/animations/review/conffeti_congrats.svg',
|
|
343
|
+
animationControl: undefined
|
|
344
|
+
}, {
|
|
345
|
+
loop: false,
|
|
346
|
+
animationControl: 'play',
|
|
347
|
+
autoplay: true,
|
|
348
|
+
"data-name": "lottie-wrapper",
|
|
349
|
+
className: _summary.default.lottie,
|
|
350
|
+
backupImageClassName: _summary.default.ie11Backup
|
|
351
|
+
})) : null), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
|
|
352
|
+
className: _summary.default.largeCircle
|
|
353
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
354
|
+
className: _summary.default.mediumCircle
|
|
355
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
356
|
+
className: _summary.default.smallCircle
|
|
357
|
+
}, children)))));
|
|
358
|
+
return children;
|
|
309
359
|
};
|
|
310
360
|
|
|
311
361
|
Summary.contextTypes = {
|
|
@@ -323,7 +373,8 @@ Summary.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
323
373
|
type: _propTypes.default.oneOf((0, _keys2.default)(actions)).isRequired
|
|
324
374
|
}),
|
|
325
375
|
recommendation: _propTypes.default.shape(_cardsList.default.propTypes),
|
|
326
|
-
feedback: _propTypes.default.shape(_feedback.default.propTypes)
|
|
376
|
+
feedback: _propTypes.default.shape(_feedback.default.propTypes),
|
|
377
|
+
mode: _propTypes.default.oneOf(['scorm', 'default'])
|
|
327
378
|
} : {};
|
|
328
379
|
var _default = Summary;
|
|
329
380
|
exports.default = _default;
|