@coorpacademy/components 11.2.10 → 11.2.12-alpha.1
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/lottie-wrapper/index.d.ts.map +1 -1
- package/es/atom/lottie-wrapper/index.js +9 -3
- package/es/atom/lottie-wrapper/index.js.map +1 -1
- package/es/atom/lottie-wrapper/prop-types.d.ts +2 -2
- package/es/atom/lottie-wrapper/prop-types.d.ts.map +1 -1
- package/es/atom/lottie-wrapper/prop-types.js +1 -1
- package/es/atom/lottie-wrapper/prop-types.js.map +1 -1
- package/es/atom/review-presentation/index.d.ts.map +1 -1
- package/es/atom/review-presentation/index.js +9 -5
- package/es/atom/review-presentation/index.js.map +1 -1
- package/es/atom/review-presentation/prop-types.d.ts +8 -0
- package/es/atom/review-presentation/prop-types.d.ts.map +1 -1
- package/es/atom/review-presentation/prop-types.js +2 -1
- package/es/atom/review-presentation/prop-types.js.map +1 -1
- package/es/molecule/add-to-my-list/index.js +3 -1
- package/es/molecule/add-to-my-list/index.js.map +1 -1
- package/es/molecule/card/notification.js +3 -1
- package/es/molecule/card/notification.js.map +1 -1
- package/es/molecule/forum/forum-post/index.d.ts.map +1 -1
- package/es/molecule/forum/forum-post/index.js +2 -1
- package/es/molecule/forum/forum-post/index.js.map +1 -1
- package/es/molecule/review-card-congrats/prop-types.d.ts +1 -1
- package/es/molecule/share/index.d.ts.map +1 -1
- package/es/molecule/share/index.js +7 -2
- package/es/molecule/share/index.js.map +1 -1
- package/es/organism/review-congrats/index.d.ts.map +1 -1
- package/es/organism/review-congrats/index.js +8 -6
- package/es/organism/review-congrats/index.js.map +1 -1
- package/es/organism/review-congrats/prop-types.d.ts +3 -3
- package/es/organism/user-preferences/index.d.ts +1 -0
- package/es/organism/user-preferences/index.d.ts.map +1 -1
- package/es/organism/user-preferences/index.js +11 -6
- package/es/organism/user-preferences/index.js.map +1 -1
- package/es/template/activity/index.d.ts +2 -0
- package/es/template/activity/index.d.ts.map +1 -1
- package/es/template/activity/index.js +4 -1
- package/es/template/activity/index.js.map +1 -1
- package/es/template/activity/progression-item.d.ts +1 -0
- package/es/template/activity/progression-item.d.ts.map +1 -1
- package/es/template/activity/progression-item.js +5 -2
- package/es/template/activity/progression-item.js.map +1 -1
- package/es/template/app-review/index.d.ts +4 -47
- package/es/template/app-review/index.d.ts.map +1 -1
- package/es/template/app-review/index.js +0 -10
- package/es/template/app-review/index.js.map +1 -1
- package/es/template/app-review/index.native.d.ts.map +1 -1
- package/es/template/app-review/index.native.js +0 -8
- package/es/template/app-review/index.native.js.map +1 -1
- package/es/template/app-review/player/prop-types.d.ts +3 -3
- package/es/template/app-review/prop-types.d.ts +4 -51
- package/es/template/app-review/prop-types.d.ts.map +1 -1
- package/es/template/app-review/prop-types.js +1 -5
- package/es/template/app-review/prop-types.js.map +1 -1
- package/es/template/common/search-page/index.d.ts.map +1 -1
- package/es/template/common/search-page/index.js +2 -1
- package/es/template/common/search-page/index.js.map +1 -1
- package/es/template/review-dashboard-skills/index.d.ts +4 -0
- package/lib/atom/lottie-wrapper/index.d.ts.map +1 -1
- package/lib/atom/lottie-wrapper/index.js +9 -3
- package/lib/atom/lottie-wrapper/index.js.map +1 -1
- package/lib/atom/lottie-wrapper/prop-types.d.ts +2 -2
- package/lib/atom/lottie-wrapper/prop-types.d.ts.map +1 -1
- package/lib/atom/lottie-wrapper/prop-types.js +1 -1
- package/lib/atom/lottie-wrapper/prop-types.js.map +1 -1
- package/lib/atom/review-presentation/index.d.ts.map +1 -1
- package/lib/atom/review-presentation/index.js +9 -5
- package/lib/atom/review-presentation/index.js.map +1 -1
- package/lib/atom/review-presentation/prop-types.d.ts +8 -0
- package/lib/atom/review-presentation/prop-types.d.ts.map +1 -1
- package/lib/atom/review-presentation/prop-types.js +2 -1
- package/lib/atom/review-presentation/prop-types.js.map +1 -1
- package/lib/molecule/add-to-my-list/index.js +3 -1
- package/lib/molecule/add-to-my-list/index.js.map +1 -1
- package/lib/molecule/card/notification.js +3 -1
- package/lib/molecule/card/notification.js.map +1 -1
- package/lib/molecule/forum/forum-post/index.d.ts.map +1 -1
- package/lib/molecule/forum/forum-post/index.js +2 -1
- package/lib/molecule/forum/forum-post/index.js.map +1 -1
- package/lib/molecule/review-card-congrats/prop-types.d.ts +1 -1
- package/lib/molecule/share/index.d.ts.map +1 -1
- package/lib/molecule/share/index.js +7 -2
- package/lib/molecule/share/index.js.map +1 -1
- package/lib/organism/review-congrats/index.d.ts.map +1 -1
- package/lib/organism/review-congrats/index.js +3 -1
- package/lib/organism/review-congrats/index.js.map +1 -1
- package/lib/organism/review-congrats/prop-types.d.ts +3 -3
- package/lib/organism/user-preferences/index.d.ts +1 -0
- package/lib/organism/user-preferences/index.d.ts.map +1 -1
- package/lib/organism/user-preferences/index.js +11 -6
- package/lib/organism/user-preferences/index.js.map +1 -1
- package/lib/template/activity/index.d.ts +2 -0
- package/lib/template/activity/index.d.ts.map +1 -1
- package/lib/template/activity/index.js +4 -1
- package/lib/template/activity/index.js.map +1 -1
- package/lib/template/activity/progression-item.d.ts +1 -0
- package/lib/template/activity/progression-item.d.ts.map +1 -1
- package/lib/template/activity/progression-item.js +5 -2
- package/lib/template/activity/progression-item.js.map +1 -1
- package/lib/template/app-review/index.d.ts +4 -47
- package/lib/template/app-review/index.d.ts.map +1 -1
- package/lib/template/app-review/index.js +0 -12
- package/lib/template/app-review/index.js.map +1 -1
- package/lib/template/app-review/index.native.d.ts.map +1 -1
- package/lib/template/app-review/index.native.js +0 -9
- package/lib/template/app-review/index.native.js.map +1 -1
- package/lib/template/app-review/player/prop-types.d.ts +3 -3
- package/lib/template/app-review/prop-types.d.ts +4 -51
- package/lib/template/app-review/prop-types.d.ts.map +1 -1
- package/lib/template/app-review/prop-types.js +1 -7
- package/lib/template/app-review/prop-types.js.map +1 -1
- package/lib/template/common/search-page/index.d.ts.map +1 -1
- package/lib/template/common/search-page/index.js +2 -1
- package/lib/template/common/search-page/index.js.map +1 -1
- package/lib/template/review-dashboard-skills/index.d.ts +4 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/lottie-wrapper/index.js"],"names":[],"mappings":"AAsBO,iMAmCN;;AAED,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/lottie-wrapper/index.js"],"names":[],"mappings":"AAsBO,iMAmCN;;AAED,wDA4HC"}
|
|
@@ -109,9 +109,15 @@ const LottieWrapper = props => {
|
|
|
109
109
|
/* istanbul ignore next */
|
|
110
110
|
lottie.destroy(animationItem.name);
|
|
111
111
|
}, [lottieAnimationClassName, containerRef, hideOnTransparent, loop, animationSrc, _isIE11, animationItem, autoplay]);
|
|
112
|
-
|
|
112
|
+
const accessibilityProps = ariaLabel ? {
|
|
113
|
+
'aria-label': ariaLabel,
|
|
114
|
+
role: 'img'
|
|
115
|
+
} : {
|
|
116
|
+
'aria-hidden': 'true',
|
|
117
|
+
role: 'presentation'
|
|
118
|
+
};
|
|
119
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, accessibilityProps, {
|
|
113
120
|
ref: containerRef,
|
|
114
|
-
"aria-label": ariaLabel,
|
|
115
121
|
"data-name": dataName,
|
|
116
122
|
className: wrapperClassName,
|
|
117
123
|
style: _extends({}, width && {
|
|
@@ -124,7 +130,7 @@ const LottieWrapper = props => {
|
|
|
124
130
|
opacity: isAnimationVisible ? 1 : 0,
|
|
125
131
|
transition: 'opacity 0.25s ease-in'
|
|
126
132
|
})
|
|
127
|
-
}, _isIE11 ? /*#__PURE__*/React.createElement("img", {
|
|
133
|
+
}), _isIE11 ? /*#__PURE__*/React.createElement("img", {
|
|
128
134
|
src: ie11ImageBackup,
|
|
129
135
|
className: ie11BackupImageClassName,
|
|
130
136
|
"data-name": "ie11-backup-image"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useMemo","useRef","useEffect","useState","classnames","lottie","get","has","includes","keys","omit","unfetch","style","propTypes","ANIMATION_CONTROL","isIE11","window","userAgent","hasMsCrypto","hasRevision","hasTrident","fetchAndLoadAnimation","_lottie","_fetch","animationSrc","containerRef","loop","animationClassnames","hideOnTransparent","autoplay","animationUrl","URL","toString","fetchResult","headers","animationData","json","animation","loadAnimation","container","current","renderer","rendererSettings","className","preserveAspectRatio","LottieWrapper","props","dataName","ariaLabel","width","height","ie11ImageBackup","backupImageClassName","animationControl","animationClassName","animationItem","setAnimationItem","isAnimationVisible","setIsAnimationVisible","_isIE11","wrapperClassName","lottieContainer","lottieAnimationClassName","ie11BackupImageClassName","backupImage","stop","destroy","name","maxWidth","maxHeight","opacity","transition"],"sources":["../../../src/atom/lottie-wrapper/index.js"],"sourcesContent":["import React, {useMemo, useRef, useEffect, useState} from 'react';\nimport classnames from 'classnames';\nimport lottie from 'lottie-web';\nimport get from 'lodash/fp/get';\nimport has from 'lodash/fp/has';\nimport includes from 'lodash/fp/includes';\nimport keys from 'lodash/fp/keys';\nimport omit from 'lodash/fp/omit';\nimport unfetch from 'isomorphic-unfetch';\nimport style from './style.css';\nimport propTypes, {ANIMATION_CONTROL} from './prop-types';\n\nconst isIE11 = () => {\n if (typeof window === 'undefined') return;\n const userAgent = get('navigator.userAgent', window);\n const hasMsCrypto = has('msCrypto', window);\n const hasRevision = includes('rv:', userAgent);\n const hasTrident = includes('Trident/', userAgent);\n\n return hasMsCrypto || (hasRevision && hasTrident);\n};\n\nexport const fetchAndLoadAnimation = async (\n _lottie,\n _fetch,\n animationSrc,\n containerRef,\n loop,\n animationClassnames,\n hideOnTransparent,\n autoplay\n) => {\n const animationUrl = new URL(animationSrc).toString();\n const fetchResult = await _fetch(animationUrl, {\n headers: {\n 'X-Requested-With': 'XMLHttpRequest',\n 'Content-Type': 'application/json'\n }\n });\n\n const animationData = await fetchResult.json();\n\n const animation =\n _lottie.loadAnimation &&\n _lottie.loadAnimation({\n container: containerRef.current, // the dom element that will contain the animation\n renderer: 'svg',\n autoplay,\n loop,\n animationData,\n rendererSettings: {\n className: animationClassnames,\n hideOnTransparent,\n preserveAspectRatio: 'xMidYMid meet' // same options as a preserveAspectRatio prop\n }\n });\n return animation;\n};\n\nconst LottieWrapper = props => {\n const {\n className,\n 'data-name': dataName,\n 'aria-label': ariaLabel,\n animationSrc,\n loop = false,\n rendererSettings = {},\n width,\n height,\n ie11ImageBackup,\n backupImageClassName,\n autoplay = true,\n animationControl\n } = props;\n\n const {className: animationClassName, hideOnTransparent = true} = rendererSettings;\n\n const containerRef = useRef(null);\n\n // lottie's animation instance\n const [animationItem, setAnimationItem] = useState(null);\n\n const [isAnimationVisible, setIsAnimationVisible] = useState(autoplay);\n\n const _isIE11 = useMemo(() => isIE11(), []);\n\n const wrapperClassName = useMemo(() => classnames(className, style.lottieContainer), [className]);\n\n const lottieAnimationClassName = useMemo(\n () => classnames(animationClassName, style.animation),\n [animationClassName]\n );\n\n const ie11BackupImageClassName = useMemo(\n () => classnames(backupImageClassName, style.backupImage),\n [backupImageClassName]\n );\n\n useEffect(() => {\n // enzyme does not handle well the state update after an async useEffect in tests\n // to remove when the migration towards @testing-library/react is done\n /* istanbul ignore next */\n if (includes(animationControl, keys(omit('loading', ANIMATION_CONTROL))) && !autoplay) {\n setIsAnimationVisible(true);\n if (animationItem) animationItem[animationControl]();\n if (animationControl === ANIMATION_CONTROL.stop) setIsAnimationVisible(false);\n }\n }, [animationControl, animationItem, autoplay]);\n\n useEffect(() => {\n const loadAnimation = async () => {\n if (!_isIE11 && !animationItem) {\n /* istanbul ignore else */\n if (typeof window !== 'undefined') {\n window.lottie = lottie;\n }\n const animation = await fetchAndLoadAnimation(\n lottie,\n unfetch,\n animationSrc,\n containerRef,\n loop,\n lottieAnimationClassName,\n hideOnTransparent,\n autoplay\n );\n\n /* istanbul ignore next */\n setAnimationItem(animation);\n }\n };\n\n loadAnimation();\n return () => animationItem && /* istanbul ignore next */ lottie.destroy(animationItem.name);\n }, [\n lottieAnimationClassName,\n containerRef,\n hideOnTransparent,\n loop,\n animationSrc,\n _isIE11,\n animationItem,\n autoplay\n ]);\n\n return (\n <div\n ref={containerRef}\n aria-label={ariaLabel}\n data-name={dataName}\n className={wrapperClassName}\n style={{\n ...(width && {\n width: `${width}px`,\n maxWidth: `${width}px`\n }),\n ...(height && {\n height: `${height}px`,\n maxHeight: `${height}px`\n }),\n opacity: isAnimationVisible ? 1 : 0,\n transition: 'opacity 0.25s ease-in'\n }}\n >\n {_isIE11 ? (\n <img\n src={ie11ImageBackup}\n className={ie11BackupImageClassName}\n data-name=\"ie11-backup-image\"\n />\n ) : null}\n </div>\n );\n};\n\nLottieWrapper.propTypes = propTypes;\n\nexport default LottieWrapper;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useMemo","useRef","useEffect","useState","classnames","lottie","get","has","includes","keys","omit","unfetch","style","propTypes","ANIMATION_CONTROL","isIE11","window","userAgent","hasMsCrypto","hasRevision","hasTrident","fetchAndLoadAnimation","_lottie","_fetch","animationSrc","containerRef","loop","animationClassnames","hideOnTransparent","autoplay","animationUrl","URL","toString","fetchResult","headers","animationData","json","animation","loadAnimation","container","current","renderer","rendererSettings","className","preserveAspectRatio","LottieWrapper","props","dataName","ariaLabel","width","height","ie11ImageBackup","backupImageClassName","animationControl","animationClassName","animationItem","setAnimationItem","isAnimationVisible","setIsAnimationVisible","_isIE11","wrapperClassName","lottieContainer","lottieAnimationClassName","ie11BackupImageClassName","backupImage","stop","destroy","name","accessibilityProps","role","maxWidth","maxHeight","opacity","transition"],"sources":["../../../src/atom/lottie-wrapper/index.js"],"sourcesContent":["import React, {useMemo, useRef, useEffect, useState} from 'react';\nimport classnames from 'classnames';\nimport lottie from 'lottie-web';\nimport get from 'lodash/fp/get';\nimport has from 'lodash/fp/has';\nimport includes from 'lodash/fp/includes';\nimport keys from 'lodash/fp/keys';\nimport omit from 'lodash/fp/omit';\nimport unfetch from 'isomorphic-unfetch';\nimport style from './style.css';\nimport propTypes, {ANIMATION_CONTROL} from './prop-types';\n\nconst isIE11 = () => {\n if (typeof window === 'undefined') return;\n const userAgent = get('navigator.userAgent', window);\n const hasMsCrypto = has('msCrypto', window);\n const hasRevision = includes('rv:', userAgent);\n const hasTrident = includes('Trident/', userAgent);\n\n return hasMsCrypto || (hasRevision && hasTrident);\n};\n\nexport const fetchAndLoadAnimation = async (\n _lottie,\n _fetch,\n animationSrc,\n containerRef,\n loop,\n animationClassnames,\n hideOnTransparent,\n autoplay\n) => {\n const animationUrl = new URL(animationSrc).toString();\n const fetchResult = await _fetch(animationUrl, {\n headers: {\n 'X-Requested-With': 'XMLHttpRequest',\n 'Content-Type': 'application/json'\n }\n });\n\n const animationData = await fetchResult.json();\n\n const animation =\n _lottie.loadAnimation &&\n _lottie.loadAnimation({\n container: containerRef.current, // the dom element that will contain the animation\n renderer: 'svg',\n autoplay,\n loop,\n animationData,\n rendererSettings: {\n className: animationClassnames,\n hideOnTransparent,\n preserveAspectRatio: 'xMidYMid meet' // same options as a preserveAspectRatio prop\n }\n });\n return animation;\n};\n\nconst LottieWrapper = props => {\n const {\n className,\n 'data-name': dataName,\n 'aria-label': ariaLabel,\n animationSrc,\n loop = false,\n rendererSettings = {},\n width,\n height,\n ie11ImageBackup,\n backupImageClassName,\n autoplay = true,\n animationControl\n } = props;\n\n const {className: animationClassName, hideOnTransparent = true} = rendererSettings;\n\n const containerRef = useRef(null);\n\n // lottie's animation instance\n const [animationItem, setAnimationItem] = useState(null);\n\n const [isAnimationVisible, setIsAnimationVisible] = useState(autoplay);\n\n const _isIE11 = useMemo(() => isIE11(), []);\n\n const wrapperClassName = useMemo(() => classnames(className, style.lottieContainer), [className]);\n\n const lottieAnimationClassName = useMemo(\n () => classnames(animationClassName, style.animation),\n [animationClassName]\n );\n\n const ie11BackupImageClassName = useMemo(\n () => classnames(backupImageClassName, style.backupImage),\n [backupImageClassName]\n );\n\n useEffect(() => {\n // enzyme does not handle well the state update after an async useEffect in tests\n // to remove when the migration towards @testing-library/react is done\n /* istanbul ignore next */\n if (includes(animationControl, keys(omit('loading', ANIMATION_CONTROL))) && !autoplay) {\n setIsAnimationVisible(true);\n if (animationItem) animationItem[animationControl]();\n if (animationControl === ANIMATION_CONTROL.stop) setIsAnimationVisible(false);\n }\n }, [animationControl, animationItem, autoplay]);\n\n useEffect(() => {\n const loadAnimation = async () => {\n if (!_isIE11 && !animationItem) {\n /* istanbul ignore else */\n if (typeof window !== 'undefined') {\n window.lottie = lottie;\n }\n const animation = await fetchAndLoadAnimation(\n lottie,\n unfetch,\n animationSrc,\n containerRef,\n loop,\n lottieAnimationClassName,\n hideOnTransparent,\n autoplay\n );\n\n /* istanbul ignore next */\n setAnimationItem(animation);\n }\n };\n\n loadAnimation();\n return () => animationItem && /* istanbul ignore next */ lottie.destroy(animationItem.name);\n }, [\n lottieAnimationClassName,\n containerRef,\n hideOnTransparent,\n loop,\n animationSrc,\n _isIE11,\n animationItem,\n autoplay\n ]);\n\n const accessibilityProps = ariaLabel\n ? {\n 'aria-label': ariaLabel,\n role: 'img'\n }\n : {\n 'aria-hidden': 'true',\n role: 'presentation'\n };\n\n return (\n <div\n {...accessibilityProps}\n ref={containerRef}\n data-name={dataName}\n className={wrapperClassName}\n style={{\n ...(width && {\n width: `${width}px`,\n maxWidth: `${width}px`\n }),\n ...(height && {\n height: `${height}px`,\n maxHeight: `${height}px`\n }),\n opacity: isAnimationVisible ? 1 : 0,\n transition: 'opacity 0.25s ease-in'\n }}\n >\n {_isIE11 ? (\n <img\n src={ie11ImageBackup}\n className={ie11BackupImageClassName}\n data-name=\"ie11-backup-image\"\n />\n ) : null}\n </div>\n );\n};\n\nLottieWrapper.propTypes = propTypes;\n\nexport default LottieWrapper;\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import PropTypes from 'prop-types';
|
|
2
2
|
export declare type LottieAnimationProps = {
|
|
3
|
-
'aria-label'
|
|
3
|
+
'aria-label'?: string;
|
|
4
4
|
'data-name'?: string;
|
|
5
5
|
animationSrc: string;
|
|
6
6
|
loop?: boolean;
|
|
@@ -23,7 +23,7 @@ export declare const ANIMATION_CONTROL: {
|
|
|
23
23
|
loading: string;
|
|
24
24
|
};
|
|
25
25
|
declare const propTypes: {
|
|
26
|
-
'aria-label': PropTypes.
|
|
26
|
+
'aria-label': PropTypes.Requireable<string>;
|
|
27
27
|
'data-name': PropTypes.Requireable<string>;
|
|
28
28
|
animationSrc: PropTypes.Validator<string>;
|
|
29
29
|
loop: PropTypes.Requireable<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/atom/lottie-wrapper/prop-types.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,oBAAY,oBAAoB,GAAG;IACjC,YAAY,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/atom/lottie-wrapper/prop-types.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,oBAAY,oBAAoB,GAAG;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gBAAgB,CAAC,EAAE;QACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;CAC1D,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;CAK7B,CAAC;AAEF,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;CAgBd,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -7,7 +7,7 @@ export const ANIMATION_CONTROL = {
|
|
|
7
7
|
loading: 'loading'
|
|
8
8
|
};
|
|
9
9
|
const propTypes = {
|
|
10
|
-
'aria-label': PropTypes.string
|
|
10
|
+
'aria-label': PropTypes.string,
|
|
11
11
|
'data-name': PropTypes.string,
|
|
12
12
|
animationSrc: PropTypes.string.isRequired,
|
|
13
13
|
loop: PropTypes.bool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prop-types.js","names":["keys","PropTypes","ANIMATION_CONTROL","play","pause","stop","loading","propTypes","string","
|
|
1
|
+
{"version":3,"file":"prop-types.js","names":["keys","PropTypes","ANIMATION_CONTROL","play","pause","stop","loading","propTypes","string","animationSrc","isRequired","loop","bool","rendererSettings","shape","hideOnTransparent","className","height","number","width","ie11ImageBackup","backupImageClassName","autoplay","animationControl","oneOf"],"sources":["../../../src/atom/lottie-wrapper/prop-types.ts"],"sourcesContent":["import keys from 'lodash/fp/keys';\nimport PropTypes from 'prop-types';\n\nexport type LottieAnimationProps = {\n 'aria-label'?: string;\n 'data-name'?: string;\n animationSrc: string;\n loop?: boolean;\n rendererSettings?: {\n hideOnTransparent?: boolean;\n className?: string;\n };\n height?: number;\n width?: number;\n className?: string;\n ie11ImageBackup: string;\n backupImageClassName?: string;\n autoplay?: boolean;\n animationControl?: 'play' | 'pause' | 'stop' | 'loading';\n};\n\nexport const ANIMATION_CONTROL = {\n play: 'play',\n pause: 'pause',\n stop: 'stop',\n loading: 'loading'\n};\n\nconst propTypes = {\n 'aria-label': PropTypes.string,\n 'data-name': PropTypes.string,\n animationSrc: PropTypes.string.isRequired,\n loop: PropTypes.bool,\n rendererSettings: PropTypes.shape({\n hideOnTransparent: PropTypes.bool,\n className: PropTypes.string\n }),\n height: PropTypes.number,\n width: PropTypes.number,\n className: PropTypes.string,\n ie11ImageBackup: PropTypes.string.isRequired,\n backupImageClassName: PropTypes.string,\n autoplay: PropTypes.bool,\n animationControl: PropTypes.oneOf(keys(ANIMATION_CONTROL))\n};\n\nexport default propTypes;\n"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,gBAAjB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAoBA,OAAO,MAAMC,iBAAiB,GAAG;EAC/BC,IAAI,EAAE,MADyB;EAE/BC,KAAK,EAAE,OAFwB;EAG/BC,IAAI,EAAE,MAHyB;EAI/BC,OAAO,EAAE;AAJsB,CAA1B;AAOP,MAAMC,SAAS,GAAG;EAChB,cAAcN,SAAS,CAACO,MADR;EAEhB,aAAaP,SAAS,CAACO,MAFP;EAGhBC,YAAY,EAAER,SAAS,CAACO,MAAV,CAAiBE,UAHf;EAIhBC,IAAI,EAAEV,SAAS,CAACW,IAJA;EAKhBC,gBAAgB,EAAEZ,SAAS,CAACa,KAAV,CAAgB;IAChCC,iBAAiB,EAAEd,SAAS,CAACW,IADG;IAEhCI,SAAS,EAAEf,SAAS,CAACO;EAFW,CAAhB,CALF;EAShBS,MAAM,EAAEhB,SAAS,CAACiB,MATF;EAUhBC,KAAK,EAAElB,SAAS,CAACiB,MAVD;EAWhBF,SAAS,EAAEf,SAAS,CAACO,MAXL;EAYhBY,eAAe,EAAEnB,SAAS,CAACO,MAAV,CAAiBE,UAZlB;EAahBW,oBAAoB,EAAEpB,SAAS,CAACO,MAbhB;EAchBc,QAAQ,EAAErB,SAAS,CAACW,IAdJ;EAehBW,gBAAgB,EAAEtB,SAAS,CAACuB,KAAV,CAAgBxB,IAAI,CAACE,iBAAD,CAApB;AAfF,CAAlB;AAkBA,eAAeK,SAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/review-presentation/index.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atom/review-presentation/index.js"],"names":[],"mappings":";AAiDA,6DA8BC"}
|
|
@@ -28,7 +28,8 @@ const getIcon = icon => {
|
|
|
28
28
|
};
|
|
29
29
|
|
|
30
30
|
const ToolTip = ({
|
|
31
|
-
tooltipText
|
|
31
|
+
tooltipText,
|
|
32
|
+
'aria-label': moreDetailsAriaLabel
|
|
32
33
|
}) => {
|
|
33
34
|
return /*#__PURE__*/React.createElement("div", {
|
|
34
35
|
className: style.tooltipContainer
|
|
@@ -37,10 +38,11 @@ const ToolTip = ({
|
|
|
37
38
|
}, /*#__PURE__*/React.createElement(InformationIcon, {
|
|
38
39
|
className: style.informationIcon,
|
|
39
40
|
width: 12,
|
|
40
|
-
height: 12
|
|
41
|
+
height: 12,
|
|
42
|
+
"aria-label": moreDetailsAriaLabel
|
|
41
43
|
})), /*#__PURE__*/React.createElement("div", {
|
|
42
44
|
className: style.toolTip
|
|
43
|
-
}, /*#__PURE__*/React.createElement("
|
|
45
|
+
}, /*#__PURE__*/React.createElement("p", {
|
|
44
46
|
className: style.tooltipText
|
|
45
47
|
}, tooltipText)));
|
|
46
48
|
};
|
|
@@ -82,13 +84,15 @@ const ReviewPresentation = props => {
|
|
|
82
84
|
}, /*#__PURE__*/React.createElement("div", {
|
|
83
85
|
className: style.reviewListText
|
|
84
86
|
}, getIcon(key), " ", label.text), /*#__PURE__*/React.createElement(ToolTip, {
|
|
85
|
-
tooltipText: label.tooltipText
|
|
87
|
+
tooltipText: label.tooltipText,
|
|
88
|
+
"aria-label": label.moreDetailsAriaLabel
|
|
86
89
|
})));
|
|
87
90
|
}, labelsList)));
|
|
88
91
|
};
|
|
89
92
|
|
|
90
93
|
ToolTip.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
91
|
-
tooltipText: PropTypes.string
|
|
94
|
+
tooltipText: PropTypes.string,
|
|
95
|
+
'aria-label': PropTypes.string
|
|
92
96
|
} : {};
|
|
93
97
|
ReviewPresentation.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
|
|
94
98
|
export default ReviewPresentation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","getOr","map","NovaSolidStatusCheckCircle2","CheckIcon","NovaSolidVoteRewardsVoteHeart","HeartIcon","NovaCompositionCoorpacademyInformationIcon","InformationIcon","NovaSolidInterfaceFeedbackInterfaceQuestionMark","QuestionIcon","NovaLineSelectionCursorsCursorArrowTarget","TargetIcon","style","propTypes","ICONS","skills","questions","lifes","allright","getIcon","icon","Icon","labelIcon","ToolTip","tooltipText","tooltipContainer","tooltipIconContainer","informationIcon","toolTip","ReviewPresentation","props","ariaLabel","reviewTitle","reviewText","labelsList","reviewWrapper","__html","reviewListWrapper","convert","cap","label","key","reviewList","reviewListItemWrapper","reviewListText","text","string"],"sources":["../../../src/atom/review-presentation/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport map from 'lodash/fp/map';\nimport {\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaSolidVoteRewardsVoteHeart as HeartIcon,\n NovaCompositionCoorpacademyInformationIcon as InformationIcon,\n NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionIcon,\n NovaLineSelectionCursorsCursorArrowTarget as TargetIcon\n} from '@coorpacademy/nova-icons';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nconst ICONS = {\n skills: TargetIcon,\n questions: QuestionIcon,\n lifes: HeartIcon,\n allright: CheckIcon\n};\n\nconst getIcon = icon => {\n const Icon = getOr(null, icon, ICONS);\n\n /* istanbul ignore next */\n if (!Icon) {\n return <div className={style.labelIcon} />;\n }\n return <Icon className={style.labelIcon} />;\n};\n\nconst ToolTip = ({tooltipText}) => {\n return (\n <div className={style.tooltipContainer}>\n <div className={style.tooltipIconContainer}>\n <InformationIcon
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","getOr","map","NovaSolidStatusCheckCircle2","CheckIcon","NovaSolidVoteRewardsVoteHeart","HeartIcon","NovaCompositionCoorpacademyInformationIcon","InformationIcon","NovaSolidInterfaceFeedbackInterfaceQuestionMark","QuestionIcon","NovaLineSelectionCursorsCursorArrowTarget","TargetIcon","style","propTypes","ICONS","skills","questions","lifes","allright","getIcon","icon","Icon","labelIcon","ToolTip","tooltipText","moreDetailsAriaLabel","tooltipContainer","tooltipIconContainer","informationIcon","toolTip","ReviewPresentation","props","ariaLabel","reviewTitle","reviewText","labelsList","reviewWrapper","__html","reviewListWrapper","convert","cap","label","key","reviewList","reviewListItemWrapper","reviewListText","text","string"],"sources":["../../../src/atom/review-presentation/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport map from 'lodash/fp/map';\nimport {\n NovaSolidStatusCheckCircle2 as CheckIcon,\n NovaSolidVoteRewardsVoteHeart as HeartIcon,\n NovaCompositionCoorpacademyInformationIcon as InformationIcon,\n NovaSolidInterfaceFeedbackInterfaceQuestionMark as QuestionIcon,\n NovaLineSelectionCursorsCursorArrowTarget as TargetIcon\n} from '@coorpacademy/nova-icons';\nimport style from './style.css';\nimport propTypes from './prop-types';\n\nconst ICONS = {\n skills: TargetIcon,\n questions: QuestionIcon,\n lifes: HeartIcon,\n allright: CheckIcon\n};\n\nconst getIcon = icon => {\n const Icon = getOr(null, icon, ICONS);\n\n /* istanbul ignore next */\n if (!Icon) {\n return <div className={style.labelIcon} />;\n }\n return <Icon className={style.labelIcon} />;\n};\n\nconst ToolTip = ({tooltipText, 'aria-label': moreDetailsAriaLabel}) => {\n return (\n <div className={style.tooltipContainer}>\n <div className={style.tooltipIconContainer}>\n <InformationIcon\n className={style.informationIcon}\n width={12}\n height={12}\n aria-label={moreDetailsAriaLabel}\n />\n </div>\n <div className={style.toolTip}>\n <p className={style.tooltipText}>{tooltipText}</p>\n </div>\n </div>\n );\n};\n\nconst ReviewPresentation = props => {\n const {'aria-label': ariaLabel, reviewTitle, reviewText, labelsList} = props;\n return (\n <div className={style.reviewWrapper} aria-label={ariaLabel}>\n <div\n className={style.reviewTitle}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: reviewTitle}}\n />\n <div\n className={style.reviewText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: reviewText}}\n />\n <ul className={style.reviewListWrapper}>\n {map.convert({cap: false})((label, key) => {\n return (\n <li key={`step-${key}`} className={style.reviewList}>\n <div className={style.reviewListItemWrapper} data-tip data-for=\"reviewListItem\">\n <div className={style.reviewListText}>\n {getIcon(key)} {label.text}\n </div>\n <ToolTip tooltipText={label.tooltipText} aria-label={label.moreDetailsAriaLabel} />\n </div>\n </li>\n );\n }, labelsList)}\n </ul>\n </div>\n );\n};\n\nToolTip.propTypes = {\n tooltipText: PropTypes.string,\n 'aria-label': PropTypes.string\n};\n\nReviewPresentation.propTypes = propTypes;\n\nexport default ReviewPresentation;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,iBAAlB;AACA,OAAOC,GAAP,MAAgB,eAAhB;AACA,SACEC,2BAA2B,IAAIC,SADjC,EAEEC,6BAA6B,IAAIC,SAFnC,EAGEC,0CAA0C,IAAIC,eAHhD,EAIEC,+CAA+C,IAAIC,YAJrD,EAKEC,yCAAyC,IAAIC,UAL/C,QAMO,0BANP;AAOA,OAAOC,KAAP,MAAkB,aAAlB;AACA,OAAOC,SAAP,MAAsB,cAAtB;AAEA,MAAMC,KAAK,GAAG;EACZC,MAAM,EAAEJ,UADI;EAEZK,SAAS,EAAEP,YAFC;EAGZQ,KAAK,EAAEZ,SAHK;EAIZa,QAAQ,EAAEf;AAJE,CAAd;;AAOA,MAAMgB,OAAO,GAAGC,IAAI,IAAI;EACtB,MAAMC,IAAI,GAAGrB,KAAK,CAAC,IAAD,EAAOoB,IAAP,EAAaN,KAAb,CAAlB;EAEA;;EACA,IAAI,CAACO,IAAL,EAAW;IACT,oBAAO;MAAK,SAAS,EAAET,KAAK,CAACU;IAAtB,EAAP;EACD;;EACD,oBAAO,oBAAC,IAAD;IAAM,SAAS,EAAEV,KAAK,CAACU;EAAvB,EAAP;AACD,CARD;;AAUA,MAAMC,OAAO,GAAG,CAAC;EAACC,WAAD;EAAc,cAAcC;AAA5B,CAAD,KAAuD;EACrE,oBACE;IAAK,SAAS,EAAEb,KAAK,CAACc;EAAtB,gBACE;IAAK,SAAS,EAAEd,KAAK,CAACe;EAAtB,gBACE,oBAAC,eAAD;IACE,SAAS,EAAEf,KAAK,CAACgB,eADnB;IAEE,KAAK,EAAE,EAFT;IAGE,MAAM,EAAE,EAHV;IAIE,cAAYH;EAJd,EADF,CADF,eASE;IAAK,SAAS,EAAEb,KAAK,CAACiB;EAAtB,gBACE;IAAG,SAAS,EAAEjB,KAAK,CAACY;EAApB,GAAkCA,WAAlC,CADF,CATF,CADF;AAeD,CAhBD;;AAkBA,MAAMM,kBAAkB,GAAGC,KAAK,IAAI;EAClC,MAAM;IAAC,cAAcC,SAAf;IAA0BC,WAA1B;IAAuCC,UAAvC;IAAmDC;EAAnD,IAAiEJ,KAAvE;EACA,oBACE;IAAK,SAAS,EAAEnB,KAAK,CAACwB,aAAtB;IAAqC,cAAYJ;EAAjD,gBACE;IACE,SAAS,EAAEpB,KAAK,CAACqB,WADnB,CAEE;IAFF;IAGE,uBAAuB,EAAE;MAACI,MAAM,EAAEJ;IAAT;EAH3B,EADF,eAME;IACE,SAAS,EAAErB,KAAK,CAACsB,UADnB,CAEE;IAFF;IAGE,uBAAuB,EAAE;MAACG,MAAM,EAAEH;IAAT;EAH3B,EANF,eAWE;IAAI,SAAS,EAAEtB,KAAK,CAAC0B;EAArB,GACGrC,GAAG,CAACsC,OAAJ,CAAY;IAACC,GAAG,EAAE;EAAN,CAAZ,EAA0B,CAACC,KAAD,EAAQC,GAAR,KAAgB;IACzC,oBACE;MAAI,GAAG,EAAG,QAAOA,GAAI,EAArB;MAAwB,SAAS,EAAE9B,KAAK,CAAC+B;IAAzC,gBACE;MAAK,SAAS,EAAE/B,KAAK,CAACgC,qBAAtB;MAA6C,gBAA7C;MAAsD,YAAS;IAA/D,gBACE;MAAK,SAAS,EAAEhC,KAAK,CAACiC;IAAtB,GACG1B,OAAO,CAACuB,GAAD,CADV,OACkBD,KAAK,CAACK,IADxB,CADF,eAIE,oBAAC,OAAD;MAAS,WAAW,EAAEL,KAAK,CAACjB,WAA5B;MAAyC,cAAYiB,KAAK,CAAChB;IAA3D,EAJF,CADF,CADF;EAUD,CAXA,EAWEU,UAXF,CADH,CAXF,CADF;AA4BD,CA9BD;;AAgCAZ,OAAO,CAACV,SAAR,2CAAoB;EAClBW,WAAW,EAAEzB,SAAS,CAACgD,MADL;EAElB,cAAchD,SAAS,CAACgD;AAFN,CAApB;AAKAjB,kBAAkB,CAACjB,SAAnB,2CAA+BA,SAA/B;AAEA,eAAeiB,kBAAf"}
|
|
@@ -9,18 +9,22 @@ declare const propTypes: {
|
|
|
9
9
|
skills: PropTypes.Requireable<PropTypes.InferProps<{
|
|
10
10
|
text: PropTypes.Requireable<string>;
|
|
11
11
|
tooltipText: PropTypes.Requireable<string>;
|
|
12
|
+
moreDetailsAreaLabel: PropTypes.Requireable<string>;
|
|
12
13
|
}>>;
|
|
13
14
|
questions: PropTypes.Requireable<PropTypes.InferProps<{
|
|
14
15
|
text: PropTypes.Requireable<string>;
|
|
15
16
|
tooltipText: PropTypes.Requireable<string>;
|
|
17
|
+
moreDetailsAreaLabel: PropTypes.Requireable<string>;
|
|
16
18
|
}>>;
|
|
17
19
|
lifes: PropTypes.Requireable<PropTypes.InferProps<{
|
|
18
20
|
text: PropTypes.Requireable<string>;
|
|
19
21
|
tooltipText: PropTypes.Requireable<string>;
|
|
22
|
+
moreDetailsAreaLabel: PropTypes.Requireable<string>;
|
|
20
23
|
}>>;
|
|
21
24
|
allright: PropTypes.Requireable<PropTypes.InferProps<{
|
|
22
25
|
text: PropTypes.Requireable<string>;
|
|
23
26
|
tooltipText: PropTypes.Requireable<string>;
|
|
27
|
+
moreDetailsAreaLabel: PropTypes.Requireable<string>;
|
|
24
28
|
}>>;
|
|
25
29
|
}>>;
|
|
26
30
|
};
|
|
@@ -40,18 +44,22 @@ export declare type OnboardingProps = {
|
|
|
40
44
|
skills?: {
|
|
41
45
|
text?: string | undefined;
|
|
42
46
|
tooltipText?: string | undefined;
|
|
47
|
+
'aria-label'?: string | undefined;
|
|
43
48
|
} | undefined;
|
|
44
49
|
questions?: {
|
|
45
50
|
text?: string | undefined;
|
|
46
51
|
tooltipText?: string | undefined;
|
|
52
|
+
'aria-label'?: string | undefined;
|
|
47
53
|
};
|
|
48
54
|
lifes?: {
|
|
49
55
|
text?: string | undefined;
|
|
50
56
|
tooltipText?: string | undefined;
|
|
57
|
+
'aria-label'?: string | undefined;
|
|
51
58
|
} | undefined;
|
|
52
59
|
allright?: {
|
|
53
60
|
text?: string | undefined;
|
|
54
61
|
tooltipText?: string | undefined;
|
|
62
|
+
'aria-label'?: string | undefined;
|
|
55
63
|
} | undefined;
|
|
56
64
|
};
|
|
57
65
|
onPress: (event: GestureResponderEvent) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/atom/review-presentation/prop-types.ts"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAC,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"prop-types.d.ts","sourceRoot":"","sources":["../../../src/atom/review-presentation/prop-types.ts"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAC,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAC,MAAM,cAAc,CAAC;AAQ1E,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;CAUd,CAAC;AAEF,eAAe,SAAS,CAAC;AAEzB,eAAO,MAAM,oBAAoB;;CAEhC,CAAC;AAEF,eAAO,MAAM,aAAa;;;CAGzB,CAAC;AAEF,oBAAY,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,UAAU,CAAC,EAAE;QACX,MAAM,CAAC,EACH;YACE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YACjC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SACnC,GACD,SAAS,CAAC;QACd,SAAS,CAAC,EAAE;YACV,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YACjC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SACnC,CAAC;QACF,KAAK,CAAC,EACF;YACE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YACjC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SACnC,GACD,SAAS,CAAC;QACd,QAAQ,CAAC,EACL;YACE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;YACjC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SACnC,GACD,SAAS,CAAC;KACf,CAAC;IACF,OAAO,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;CACjD,CAAC;AAEF,oBAAY,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAC,CAAC,CAAC;CACtF,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import PropTypes from 'prop-types';
|
|
2
2
|
const levelItem = PropTypes.shape({
|
|
3
3
|
text: PropTypes.string,
|
|
4
|
-
tooltipText: PropTypes.string
|
|
4
|
+
tooltipText: PropTypes.string,
|
|
5
|
+
moreDetailsAreaLabel: PropTypes.string
|
|
5
6
|
});
|
|
6
7
|
const propTypes = {
|
|
7
8
|
'aria-label': PropTypes.string,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prop-types.js","names":["PropTypes","levelItem","shape","text","string","tooltipText","propTypes","reviewTitle","reviewText","labelsList","skills","questions","lifes","allright","OnboardingPropsTypes","onPress","func","TipPropsTypes","Icon","any"],"sources":["../../../src/atom/review-presentation/prop-types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\nimport {ColorValue, GestureResponderEvent, ViewStyle} from 'react-native';\n\nconst levelItem = PropTypes.shape({\n text: PropTypes.string,\n tooltipText: PropTypes.string\n});\n\nconst propTypes = {\n 'aria-label': PropTypes.string,\n reviewTitle: PropTypes.string,\n reviewText: PropTypes.string,\n labelsList: PropTypes.shape({\n skills: levelItem,\n questions: levelItem,\n lifes: levelItem,\n allright: levelItem\n })\n};\n\nexport default propTypes;\n\nexport const OnboardingPropsTypes = {\n onPress: PropTypes.func\n};\n\nexport const TipPropsTypes = {\n text: PropTypes.string,\n Icon: PropTypes.any\n};\n\nexport type OnboardingProps = {\n 'aria-label'?: string | undefined;\n reviewTitle?: string | undefined;\n reviewText?: string | undefined;\n labelsList?: {\n skills?:\n | {\n text?: string | undefined;\n tooltipText?: string | undefined;\n }\n | undefined;\n questions?: {\n text?: string | undefined;\n tooltipText?: string | undefined;\n };\n lifes?:\n | {\n text?: string | undefined;\n tooltipText?: string | undefined;\n }\n | undefined;\n allright?:\n | {\n text?: string | undefined;\n tooltipText?: string | undefined;\n }\n | undefined;\n };\n onPress: (event: GestureResponderEvent) => void;\n};\n\nexport type TipProps = {\n text: string | undefined;\n Icon: React.FC<{height: number; width: number; style: ViewStyle; color: ColorValue}>;\n};\n"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAGA,MAAMC,SAAS,GAAGD,SAAS,CAACE,KAAV,CAAgB;EAChCC,IAAI,EAAEH,SAAS,CAACI,MADgB;EAEhCC,WAAW,EAAEL,SAAS,CAACI;
|
|
1
|
+
{"version":3,"file":"prop-types.js","names":["PropTypes","levelItem","shape","text","string","tooltipText","moreDetailsAreaLabel","propTypes","reviewTitle","reviewText","labelsList","skills","questions","lifes","allright","OnboardingPropsTypes","onPress","func","TipPropsTypes","Icon","any"],"sources":["../../../src/atom/review-presentation/prop-types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\nimport {ColorValue, GestureResponderEvent, ViewStyle} from 'react-native';\n\nconst levelItem = PropTypes.shape({\n text: PropTypes.string,\n tooltipText: PropTypes.string,\n moreDetailsAreaLabel: PropTypes.string\n});\n\nconst propTypes = {\n 'aria-label': PropTypes.string,\n reviewTitle: PropTypes.string,\n reviewText: PropTypes.string,\n labelsList: PropTypes.shape({\n skills: levelItem,\n questions: levelItem,\n lifes: levelItem,\n allright: levelItem\n })\n};\n\nexport default propTypes;\n\nexport const OnboardingPropsTypes = {\n onPress: PropTypes.func\n};\n\nexport const TipPropsTypes = {\n text: PropTypes.string,\n Icon: PropTypes.any\n};\n\nexport type OnboardingProps = {\n 'aria-label'?: string | undefined;\n reviewTitle?: string | undefined;\n reviewText?: string | undefined;\n labelsList?: {\n skills?:\n | {\n text?: string | undefined;\n tooltipText?: string | undefined;\n 'aria-label'?: string | undefined;\n }\n | undefined;\n questions?: {\n text?: string | undefined;\n tooltipText?: string | undefined;\n 'aria-label'?: string | undefined;\n };\n lifes?:\n | {\n text?: string | undefined;\n tooltipText?: string | undefined;\n 'aria-label'?: string | undefined;\n }\n | undefined;\n allright?:\n | {\n text?: string | undefined;\n tooltipText?: string | undefined;\n 'aria-label'?: string | undefined;\n }\n | undefined;\n };\n onPress: (event: GestureResponderEvent) => void;\n};\n\nexport type TipProps = {\n text: string | undefined;\n Icon: React.FC<{height: number; width: number; style: ViewStyle; color: ColorValue}>;\n};\n"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAGA,MAAMC,SAAS,GAAGD,SAAS,CAACE,KAAV,CAAgB;EAChCC,IAAI,EAAEH,SAAS,CAACI,MADgB;EAEhCC,WAAW,EAAEL,SAAS,CAACI,MAFS;EAGhCE,oBAAoB,EAAEN,SAAS,CAACI;AAHA,CAAhB,CAAlB;AAMA,MAAMG,SAAS,GAAG;EAChB,cAAcP,SAAS,CAACI,MADR;EAEhBI,WAAW,EAAER,SAAS,CAACI,MAFP;EAGhBK,UAAU,EAAET,SAAS,CAACI,MAHN;EAIhBM,UAAU,EAAEV,SAAS,CAACE,KAAV,CAAgB;IAC1BS,MAAM,EAAEV,SADkB;IAE1BW,SAAS,EAAEX,SAFe;IAG1BY,KAAK,EAAEZ,SAHmB;IAI1Ba,QAAQ,EAAEb;EAJgB,CAAhB;AAJI,CAAlB;AAYA,eAAeM,SAAf;AAEA,OAAO,MAAMQ,oBAAoB,GAAG;EAClCC,OAAO,EAAEhB,SAAS,CAACiB;AADe,CAA7B;AAIP,OAAO,MAAMC,aAAa,GAAG;EAC3Bf,IAAI,EAAEH,SAAS,CAACI,MADW;EAE3Be,IAAI,EAAEnB,SAAS,CAACoB;AAFW,CAAtB"}
|
|
@@ -42,7 +42,9 @@ export const AddToMyListFeedback = ({
|
|
|
42
42
|
className: styles.checkIcon,
|
|
43
43
|
width: 13,
|
|
44
44
|
height: 13
|
|
45
|
-
}), /*#__PURE__*/React.createElement("p",
|
|
45
|
+
}), /*#__PURE__*/React.createElement("p", {
|
|
46
|
+
role: "status"
|
|
47
|
+
}, favorite ? addToMyListText : removeFromMyListText));
|
|
46
48
|
};
|
|
47
49
|
|
|
48
50
|
const AddToMyList = ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useState","useContext","useEffect","useMemo","PropTypes","classnames","NovaCompositionCoorpacademyCheck","CheckIcon","NovaCompositionNavigationMore","MoreIcon","Link","styles","ADD_TO_MY_LIST_STATUS","IDLE","SUCCESS","StatusContext","createContext","AddToMyListStatusProvider","children","status","setStatus","timeoutId","DURATION","setTimeout","clearTimeout","statusValue","AddToMyListFeedback","addToMyListText","removeFromMyListText","favorite","feedback","checkIcon","AddToMyList","style","addToMyListButton","onFavoriteClick","cb","onClick","container","cta","wrapper","shareIcon","propTypes","node","string","bool","func"],"sources":["../../../src/molecule/add-to-my-list/index.js"],"sourcesContent":["import React, {useState, useContext, useEffect, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaCompositionNavigationMore as MoreIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport styles from './style.css';\n\nconst ADD_TO_MY_LIST_STATUS = {\n IDLE: 'IDLE',\n SUCCESS: 'SUCCESS'\n};\n\nconst StatusContext = React.createContext(ADD_TO_MY_LIST_STATUS.IDLE);\n\nexport const AddToMyListStatusProvider = ({children}) => {\n const [status, setStatus] = useState(ADD_TO_MY_LIST_STATUS.IDLE);\n useEffect(() => {\n let timeoutId;\n const DURATION = 3000;\n if (status !== ADD_TO_MY_LIST_STATUS.IDLE) {\n timeoutId = setTimeout(() => setStatus(ADD_TO_MY_LIST_STATUS.IDLE), DURATION);\n }\n return () => clearTimeout(timeoutId);\n }, [status]);\n const statusValue = useMemo(() => [status, setStatus], [status, setStatus]);\n return <StatusContext.Provider value={statusValue}>{children}</StatusContext.Provider>;\n};\n\nexport const AddToMyListFeedback = ({addToMyListText, removeFromMyListText, favorite}) => {\n const [status] = useContext(StatusContext);\n if (status === ADD_TO_MY_LIST_STATUS.IDLE) return null;\n\n return (\n <div className={classnames(styles.feedback)} data-name={'add-to-my-list-feedback'}>\n <CheckIcon className={styles.checkIcon} width={13} height={13} />\n <p>{favorite ? addToMyListText : removeFromMyListText}</p>\n </div>\n );\n};\n\nconst AddToMyList = ({style, addToMyListButton, favorite, onFavoriteClick}) => {\n const [, setStatus] = useContext(StatusContext);\n const cb = () => setStatus(ADD_TO_MY_LIST_STATUS.SUCCESS);\n\n function onClick() {\n onFavoriteClick(cb);\n }\n\n return (\n <div className={(styles.container, style)}>\n <Link data-name={'add-to-my-list-button'} onClick={onClick} className={styles.cta}>\n <div className={styles.wrapper}>\n {favorite ? (\n <CheckIcon className={styles.shareIcon} width={15} height={15} />\n ) : (\n <MoreIcon className={styles.shareIcon} width={12} height={12} />\n )}\n <p>{addToMyListButton}</p>\n </div>\n </Link>\n </div>\n );\n};\n\nAddToMyListStatusProvider.propTypes = {\n children: PropTypes.node\n};\n\nAddToMyListFeedback.propTypes = {\n addToMyListText: PropTypes.string,\n removeFromMyListText: PropTypes.string,\n favorite: PropTypes.bool\n};\n\nAddToMyList.propTypes = {\n style: PropTypes.string,\n addToMyListButton: PropTypes.string,\n favorite: PropTypes.bool,\n onFavoriteClick: PropTypes.func\n};\n\nexport default AddToMyList;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAeC,QAAf,EAAyBC,UAAzB,EAAqCC,SAArC,EAAgDC,OAAhD,QAA8D,OAA9D;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SACEC,gCAAgC,IAAIC,SADtC,EAEEC,6BAA6B,IAAIC,QAFnC,QAGO,0BAHP;AAIA,OAAOC,IAAP,MAAiB,iBAAjB;AACA,OAAOC,MAAP,MAAmB,aAAnB;AAEA,MAAMC,qBAAqB,GAAG;EAC5BC,IAAI,EAAE,MADsB;EAE5BC,OAAO,EAAE;AAFmB,CAA9B;AAKA,MAAMC,aAAa,gBAAGhB,KAAK,CAACiB,aAAN,CAAoBJ,qBAAqB,CAACC,IAA1C,CAAtB;AAEA,OAAO,MAAMI,yBAAyB,GAAG,CAAC;EAACC;AAAD,CAAD,KAAgB;EACvD,MAAM,CAACC,MAAD,EAASC,SAAT,IAAsBpB,QAAQ,CAACY,qBAAqB,CAACC,IAAvB,CAApC;EACAX,SAAS,CAAC,MAAM;IACd,IAAImB,SAAJ;IACA,MAAMC,QAAQ,GAAG,IAAjB;;IACA,IAAIH,MAAM,KAAKP,qBAAqB,CAACC,IAArC,EAA2C;MACzCQ,SAAS,GAAGE,UAAU,CAAC,MAAMH,SAAS,CAACR,qBAAqB,CAACC,IAAvB,CAAhB,EAA8CS,QAA9C,CAAtB;IACD;;IACD,OAAO,MAAME,YAAY,CAACH,SAAD,CAAzB;EACD,CAPQ,EAON,CAACF,MAAD,CAPM,CAAT;EAQA,MAAMM,WAAW,GAAGtB,OAAO,CAAC,MAAM,CAACgB,MAAD,EAASC,SAAT,CAAP,EAA4B,CAACD,MAAD,EAASC,SAAT,CAA5B,CAA3B;EACA,oBAAO,oBAAC,aAAD,CAAe,QAAf;IAAwB,KAAK,EAAEK;EAA/B,GAA6CP,QAA7C,CAAP;AACD,CAZM;AAcP,OAAO,MAAMQ,mBAAmB,GAAG,CAAC;EAACC,eAAD;EAAkBC,oBAAlB;EAAwCC;AAAxC,CAAD,KAAuD;EACxF,MAAM,CAACV,MAAD,IAAWlB,UAAU,CAACc,aAAD,CAA3B;EACA,IAAII,MAAM,KAAKP,qBAAqB,CAACC,IAArC,EAA2C,OAAO,IAAP;EAE3C,oBACE;IAAK,SAAS,EAAER,UAAU,CAACM,MAAM,CAACmB,QAAR,CAA1B;IAA6C,aAAW;EAAxD,gBACE,oBAAC,SAAD;IAAW,SAAS,EAAEnB,MAAM,CAACoB,SAA7B;IAAwC,KAAK,EAAE,EAA/C;IAAmD,MAAM,EAAE;EAA3D,EADF,eAEE
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useState","useContext","useEffect","useMemo","PropTypes","classnames","NovaCompositionCoorpacademyCheck","CheckIcon","NovaCompositionNavigationMore","MoreIcon","Link","styles","ADD_TO_MY_LIST_STATUS","IDLE","SUCCESS","StatusContext","createContext","AddToMyListStatusProvider","children","status","setStatus","timeoutId","DURATION","setTimeout","clearTimeout","statusValue","AddToMyListFeedback","addToMyListText","removeFromMyListText","favorite","feedback","checkIcon","AddToMyList","style","addToMyListButton","onFavoriteClick","cb","onClick","container","cta","wrapper","shareIcon","propTypes","node","string","bool","func"],"sources":["../../../src/molecule/add-to-my-list/index.js"],"sourcesContent":["import React, {useState, useContext, useEffect, useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaCompositionNavigationMore as MoreIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport styles from './style.css';\n\nconst ADD_TO_MY_LIST_STATUS = {\n IDLE: 'IDLE',\n SUCCESS: 'SUCCESS'\n};\n\nconst StatusContext = React.createContext(ADD_TO_MY_LIST_STATUS.IDLE);\n\nexport const AddToMyListStatusProvider = ({children}) => {\n const [status, setStatus] = useState(ADD_TO_MY_LIST_STATUS.IDLE);\n useEffect(() => {\n let timeoutId;\n const DURATION = 3000;\n if (status !== ADD_TO_MY_LIST_STATUS.IDLE) {\n timeoutId = setTimeout(() => setStatus(ADD_TO_MY_LIST_STATUS.IDLE), DURATION);\n }\n return () => clearTimeout(timeoutId);\n }, [status]);\n const statusValue = useMemo(() => [status, setStatus], [status, setStatus]);\n return <StatusContext.Provider value={statusValue}>{children}</StatusContext.Provider>;\n};\n\nexport const AddToMyListFeedback = ({addToMyListText, removeFromMyListText, favorite}) => {\n const [status] = useContext(StatusContext);\n if (status === ADD_TO_MY_LIST_STATUS.IDLE) return null;\n\n return (\n <div className={classnames(styles.feedback)} data-name={'add-to-my-list-feedback'}>\n <CheckIcon className={styles.checkIcon} width={13} height={13} />\n <p role=\"status\">{favorite ? addToMyListText : removeFromMyListText}</p>\n </div>\n );\n};\n\nconst AddToMyList = ({style, addToMyListButton, favorite, onFavoriteClick}) => {\n const [, setStatus] = useContext(StatusContext);\n const cb = () => setStatus(ADD_TO_MY_LIST_STATUS.SUCCESS);\n\n function onClick() {\n onFavoriteClick(cb);\n }\n\n return (\n <div className={(styles.container, style)}>\n <Link data-name={'add-to-my-list-button'} onClick={onClick} className={styles.cta}>\n <div className={styles.wrapper}>\n {favorite ? (\n <CheckIcon className={styles.shareIcon} width={15} height={15} />\n ) : (\n <MoreIcon className={styles.shareIcon} width={12} height={12} />\n )}\n <p>{addToMyListButton}</p>\n </div>\n </Link>\n </div>\n );\n};\n\nAddToMyListStatusProvider.propTypes = {\n children: PropTypes.node\n};\n\nAddToMyListFeedback.propTypes = {\n addToMyListText: PropTypes.string,\n removeFromMyListText: PropTypes.string,\n favorite: PropTypes.bool\n};\n\nAddToMyList.propTypes = {\n style: PropTypes.string,\n addToMyListButton: PropTypes.string,\n favorite: PropTypes.bool,\n onFavoriteClick: PropTypes.func\n};\n\nexport default AddToMyList;\n"],"mappings":"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"}
|
|
@@ -39,7 +39,9 @@ const Notification = props => {
|
|
|
39
39
|
stroke: null
|
|
40
40
|
}), /*#__PURE__*/React.createElement("div", {
|
|
41
41
|
className: style.message
|
|
42
|
-
}, /*#__PURE__*/React.createElement("span",
|
|
42
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
43
|
+
role: "status"
|
|
44
|
+
}, message))));
|
|
43
45
|
};
|
|
44
46
|
|
|
45
47
|
Notification.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification.js","names":["React","PropTypes","classnames","NovaCompositionNavigationMore","MoreIcon","NovaSolidLoginLocked","LockIcon","NovaSolidLocksLockUnlock1","UnlockIcon","NovaCompositionCoorpacademyCheck","CheckIcon","style","NOTIFICATION_ICON","addFavorite","removeFavorite","lock","unlock","handleOverlayClick","e","stopPropagation","preventDefault","Notification","props","message","icon","IconType","showOverlay","notificationWrapper","notification","propTypes","string","isRequired","oneOf"],"sources":["../../../src/molecule/card/notification.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, keys} from 'lodash/fp';\nimport {\n NovaCompositionNavigationMore as MoreIcon,\n NovaSolidLoginLocked as LockIcon,\n NovaSolidLocksLockUnlock1 as UnlockIcon,\n NovaCompositionCoorpacademyCheck as CheckIcon\n} from '@coorpacademy/nova-icons';\nimport style from './notification.css';\n\nconst NOTIFICATION_ICON = {\n addFavorite: CheckIcon,\n removeFavorite: MoreIcon,\n lock: LockIcon,\n unlock: UnlockIcon\n};\n\nconst handleOverlayClick = e => {\n e.stopPropagation();\n e.preventDefault();\n return false;\n};\n\nconst Notification = props => {\n const {message, icon} = props;\n\n const IconType = get(icon, NOTIFICATION_ICON);\n return (\n <div\n data-name=\"notification\"\n data-type={icon}\n onClick={handleOverlayClick}\n className={classnames(style.showOverlay, style.notificationWrapper)}\n >\n <div className={style.notification}>\n <IconType className={style.icon} color={null} stroke={null} />\n <div className={style.message}>\n <span>{message}</span>\n </div>\n </div>\n </div>\n );\n};\nNotification.propTypes = {\n message: PropTypes.string.isRequired,\n icon: PropTypes.oneOf(keys(NOTIFICATION_ICON)).isRequired\n};\n\nexport default Notification;\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AAEA,SACEC,6BAA6B,IAAIC,QADnC,EAEEC,oBAAoB,IAAIC,QAF1B,EAGEC,yBAAyB,IAAIC,UAH/B,EAIEC,gCAAgC,IAAIC,SAJtC,QAKO,0BALP;AAMA,OAAOC,KAAP,MAAkB,oBAAlB;AAEA,MAAMC,iBAAiB,GAAG;EACxBC,WAAW,EAAEH,SADW;EAExBI,cAAc,EAAEV,QAFQ;EAGxBW,IAAI,EAAET,QAHkB;EAIxBU,MAAM,EAAER;AAJgB,CAA1B;;AAOA,MAAMS,kBAAkB,GAAGC,CAAC,IAAI;EAC9BA,CAAC,CAACC,eAAF;EACAD,CAAC,CAACE,cAAF;EACA,OAAO,KAAP;AACD,CAJD;;AAMA,MAAMC,YAAY,GAAGC,KAAK,IAAI;EAC5B,MAAM;IAACC,OAAD;IAAUC;EAAV,IAAkBF,KAAxB;;EAEA,MAAMG,QAAQ,GAAG,KAAID,IAAJ,EAAUZ,iBAAV,CAAjB;;EACA,oBACE;IACE,aAAU,cADZ;IAEE,aAAWY,IAFb;IAGE,OAAO,EAAEP,kBAHX;IAIE,SAAS,EAAEf,UAAU,CAACS,KAAK,CAACe,WAAP,EAAoBf,KAAK,CAACgB,mBAA1B;EAJvB,gBAME;IAAK,SAAS,EAAEhB,KAAK,CAACiB;EAAtB,gBACE,oBAAC,QAAD;IAAU,SAAS,EAAEjB,KAAK,CAACa,IAA3B;IAAiC,KAAK,EAAE,IAAxC;IAA8C,MAAM,EAAE;EAAtD,EADF,eAEE;IAAK,SAAS,EAAEb,KAAK,CAACY;EAAtB,gBACE,
|
|
1
|
+
{"version":3,"file":"notification.js","names":["React","PropTypes","classnames","NovaCompositionNavigationMore","MoreIcon","NovaSolidLoginLocked","LockIcon","NovaSolidLocksLockUnlock1","UnlockIcon","NovaCompositionCoorpacademyCheck","CheckIcon","style","NOTIFICATION_ICON","addFavorite","removeFavorite","lock","unlock","handleOverlayClick","e","stopPropagation","preventDefault","Notification","props","message","icon","IconType","showOverlay","notificationWrapper","notification","propTypes","string","isRequired","oneOf"],"sources":["../../../src/molecule/card/notification.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {get, keys} from 'lodash/fp';\nimport {\n NovaCompositionNavigationMore as MoreIcon,\n NovaSolidLoginLocked as LockIcon,\n NovaSolidLocksLockUnlock1 as UnlockIcon,\n NovaCompositionCoorpacademyCheck as CheckIcon\n} from '@coorpacademy/nova-icons';\nimport style from './notification.css';\n\nconst NOTIFICATION_ICON = {\n addFavorite: CheckIcon,\n removeFavorite: MoreIcon,\n lock: LockIcon,\n unlock: UnlockIcon\n};\n\nconst handleOverlayClick = e => {\n e.stopPropagation();\n e.preventDefault();\n return false;\n};\n\nconst Notification = props => {\n const {message, icon} = props;\n\n const IconType = get(icon, NOTIFICATION_ICON);\n return (\n <div\n data-name=\"notification\"\n data-type={icon}\n onClick={handleOverlayClick}\n className={classnames(style.showOverlay, style.notificationWrapper)}\n >\n <div className={style.notification}>\n <IconType className={style.icon} color={null} stroke={null} />\n <div className={style.message}>\n <span role=\"status\">{message}</span>\n </div>\n </div>\n </div>\n );\n};\nNotification.propTypes = {\n message: PropTypes.string.isRequired,\n icon: PropTypes.oneOf(keys(NOTIFICATION_ICON)).isRequired\n};\n\nexport default Notification;\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AAEA,SACEC,6BAA6B,IAAIC,QADnC,EAEEC,oBAAoB,IAAIC,QAF1B,EAGEC,yBAAyB,IAAIC,UAH/B,EAIEC,gCAAgC,IAAIC,SAJtC,QAKO,0BALP;AAMA,OAAOC,KAAP,MAAkB,oBAAlB;AAEA,MAAMC,iBAAiB,GAAG;EACxBC,WAAW,EAAEH,SADW;EAExBI,cAAc,EAAEV,QAFQ;EAGxBW,IAAI,EAAET,QAHkB;EAIxBU,MAAM,EAAER;AAJgB,CAA1B;;AAOA,MAAMS,kBAAkB,GAAGC,CAAC,IAAI;EAC9BA,CAAC,CAACC,eAAF;EACAD,CAAC,CAACE,cAAF;EACA,OAAO,KAAP;AACD,CAJD;;AAMA,MAAMC,YAAY,GAAGC,KAAK,IAAI;EAC5B,MAAM;IAACC,OAAD;IAAUC;EAAV,IAAkBF,KAAxB;;EAEA,MAAMG,QAAQ,GAAG,KAAID,IAAJ,EAAUZ,iBAAV,CAAjB;;EACA,oBACE;IACE,aAAU,cADZ;IAEE,aAAWY,IAFb;IAGE,OAAO,EAAEP,kBAHX;IAIE,SAAS,EAAEf,UAAU,CAACS,KAAK,CAACe,WAAP,EAAoBf,KAAK,CAACgB,mBAA1B;EAJvB,gBAME;IAAK,SAAS,EAAEhB,KAAK,CAACiB;EAAtB,gBACE,oBAAC,QAAD;IAAU,SAAS,EAAEjB,KAAK,CAACa,IAA3B;IAAiC,KAAK,EAAE,IAAxC;IAA8C,MAAM,EAAE;EAAtD,EADF,eAEE;IAAK,SAAS,EAAEb,KAAK,CAACY;EAAtB,gBACE;IAAM,IAAI,EAAC;EAAX,GAAqBA,OAArB,CADF,CAFF,CANF,CADF;AAeD,CAnBD;;AAoBAF,YAAY,CAACQ,SAAb,2CAAyB;EACvBN,OAAO,EAAEtB,SAAS,CAAC6B,MAAV,CAAiBC,UADH;EAEvBP,IAAI,EAAEvB,SAAS,CAAC+B,KAAV,CAAgB,MAAKpB,iBAAL,CAAhB,EAAyCmB;AAFxB,CAAzB;AAKA,eAAeV,YAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/forum/forum-post/index.js"],"names":[],"mappings":";AAUA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/molecule/forum/forum-post/index.js"],"names":[],"mappings":";AAUA,kEAkJC"}
|
|
@@ -113,7 +113,8 @@ const ForumPost = (props, context) => {
|
|
|
113
113
|
display: rejectable ? 'block' : 'none'
|
|
114
114
|
}
|
|
115
115
|
}, rejected ? putBackLabel : rejectLabel), /*#__PURE__*/React.createElement("div", {
|
|
116
|
-
className: messageClassName
|
|
116
|
+
className: messageClassName,
|
|
117
|
+
role: "status"
|
|
117
118
|
}, deleted ? infoDeleted : message), /*#__PURE__*/React.createElement("div", {
|
|
118
119
|
className: `${style.edition} ${showEditBox ? style.visible : ''}`
|
|
119
120
|
}, /*#__PURE__*/React.createElement(ForumComment, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","classnames","PropTypes","SrcPropType","Provider","Picture","ForumComment","style","ForumPost","props","context","translate","skin","id","author","avatar","avatarAlt","profileAvatarAlt","date","message","answer","answerPostDisabled","answerTextareaDisabled","answerAvatar","answerable","editable","rejectable","mainPost","rejected","deleted","edition","editionPostDisabled","editionTextareaDisabled","showAnswerBox","showEditBox","onAnswer","onEdit","onPostAnswer","onPostEdition","onChangeAnswer","onChangeEdition","onModerate","onDelete","color","infoDeleted","answerLabel","editLabel","deleteLabel","rejectLabel","putBackLabel","messageClassName","deletedMessage","hiddenMessage","post","avatarWrapper","image","content","body","action","display","visible","contextTypes","childContextTypes","propTypes","string","bool","func"],"sources":["../../../../src/molecule/forum/forum-post/index.js"],"sourcesContent":["import React from 'react';\nimport {get, identity} from 'lodash/fp';\nimport classnames from 'classnames';\nimport PropTypes from 'prop-types';\nimport {SrcPropType} from '../../../util/proptypes';\nimport Provider from '../../../atom/provider';\nimport Picture from '../../../atom/picture';\nimport ForumComment from '../forum-comment';\nimport style from './style.css';\n\nconst ForumPost = (props, context) => {\n const {translate, skin} = context;\n const {\n id,\n author,\n avatar,\n avatarAlt,\n profileAvatarAlt,\n date,\n message,\n answer,\n answerPostDisabled = false,\n answerTextareaDisabled = false,\n answerAvatar,\n answerable = true,\n editable = false,\n rejectable = false,\n mainPost = false,\n rejected = false,\n deleted = false,\n edition,\n editionPostDisabled = false,\n editionTextareaDisabled = false,\n showAnswerBox = false,\n showEditBox = false,\n onAnswer = identity,\n onEdit = identity,\n onPostAnswer = identity,\n onPostEdition = identity,\n onChangeAnswer = identity,\n onChangeEdition = identity,\n onModerate,\n onDelete\n } = props;\n const color = get('common.primary', skin);\n\n const infoDeleted = translate('This message has been removed by its author');\n const answerLabel = translate('Answer');\n const editLabel = translate('Edit');\n const deleteLabel = translate('Delete');\n const rejectLabel = translate('Reject');\n const putBackLabel = translate('Put back');\n let messageClassName = style.message;\n if (deleted) {\n messageClassName = style.deletedMessage;\n } else if (showEditBox) {\n messageClassName = style.hiddenMessage;\n }\n\n return (\n <div\n data-name=\"forumPost\"\n id={`forum-post-${id || 'to-be-posted'}`}\n className={classnames(\n mainPost ? style.mainPost : null,\n rejected ? style.rejected : style.post\n )}\n >\n <div className={style.avatarWrapper}>\n <div className={style.image}>\n <Picture src={avatar} className={style.avatar} alt={avatarAlt} />\n </div>\n <span data-name=\"author\" className={style.author}>\n {author}\n </span>\n </div>\n <div className={style.content}>\n <div>\n <span className={style.date}>{date}</span>\n </div>\n <div className={style.body}>\n <span\n className={style.action}\n onClick={onAnswer}\n style={{\n color,\n display: answerable && !deleted && !rejected ? 'block' : 'none'\n }}\n >\n {answerLabel}\n </span>\n\n <span\n className={style.action}\n onClick={onEdit}\n style={{\n color,\n display: editable ? 'block' : 'none'\n }}\n >\n {editLabel}\n </span>\n\n <span\n className={style.action}\n onClick={onDelete}\n style={{\n color,\n display: editable ? 'block' : 'none'\n }}\n >\n {deleteLabel}\n </span>\n\n <span\n className={style.action}\n onClick={onModerate}\n style={{\n color,\n display: rejectable ? 'block' : 'none'\n }}\n >\n {rejected ? putBackLabel : rejectLabel}\n </span>\n\n <div className={messageClassName}>{deleted ? infoDeleted : message}</div>\n\n <div className={`${style.edition} ${showEditBox ? style.visible : ''}`}>\n <ForumComment\n avatar={null}\n profileAvatarAlt={profileAvatarAlt}\n value={edition}\n textareaDisabled={editionTextareaDisabled}\n postDisabled={editionPostDisabled}\n onPost={onPostEdition}\n onChange={onChangeEdition}\n />\n </div>\n\n <div className={`${style.answer} ${showAnswerBox ? style.visible : ''}`}>\n <ForumComment\n avatar={answerAvatar}\n profileAvatarAlt={profileAvatarAlt}\n textareaDisabled={answerTextareaDisabled}\n postDisabled={answerPostDisabled}\n value={answer}\n onPost={onPostAnswer}\n onChange={onChangeAnswer}\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nForumPost.contextTypes = {\n translate: Provider.childContextTypes.translate,\n skin: Provider.childContextTypes.skin\n};\n\nForumPost.propTypes = {\n id: PropTypes.string,\n author: PropTypes.string,\n avatarAlt: PropTypes.string,\n profileAvatarAlt: PropTypes.string,\n date: PropTypes.string,\n message: PropTypes.string,\n avatar: SrcPropType,\n answerAvatar: SrcPropType,\n answer: PropTypes.string,\n edition: PropTypes.string,\n showAnswerBox: PropTypes.bool,\n showEditBox: PropTypes.bool,\n mainPost: PropTypes.bool,\n onAnswer: PropTypes.func,\n onEdit: PropTypes.func,\n onPostAnswer: PropTypes.func,\n onPostEdition: PropTypes.func,\n onChangeAnswer: PropTypes.func,\n onChangeEdition: PropTypes.func,\n onModerate: PropTypes.func,\n onDelete: PropTypes.func,\n answerPostDisabled: PropTypes.bool,\n answerTextareaDisabled: PropTypes.bool,\n answerable: PropTypes.bool,\n editable: PropTypes.bool,\n rejectable: PropTypes.bool,\n rejected: PropTypes.bool,\n deleted: PropTypes.bool,\n editionPostDisabled: PropTypes.bool,\n editionTextareaDisabled: PropTypes.bool\n};\n\nexport default ForumPost;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","classnames","PropTypes","SrcPropType","Provider","Picture","ForumComment","style","ForumPost","props","context","translate","skin","id","author","avatar","avatarAlt","profileAvatarAlt","date","message","answer","answerPostDisabled","answerTextareaDisabled","answerAvatar","answerable","editable","rejectable","mainPost","rejected","deleted","edition","editionPostDisabled","editionTextareaDisabled","showAnswerBox","showEditBox","onAnswer","onEdit","onPostAnswer","onPostEdition","onChangeAnswer","onChangeEdition","onModerate","onDelete","color","infoDeleted","answerLabel","editLabel","deleteLabel","rejectLabel","putBackLabel","messageClassName","deletedMessage","hiddenMessage","post","avatarWrapper","image","content","body","action","display","visible","contextTypes","childContextTypes","propTypes","string","bool","func"],"sources":["../../../../src/molecule/forum/forum-post/index.js"],"sourcesContent":["import React from 'react';\nimport {get, identity} from 'lodash/fp';\nimport classnames from 'classnames';\nimport PropTypes from 'prop-types';\nimport {SrcPropType} from '../../../util/proptypes';\nimport Provider from '../../../atom/provider';\nimport Picture from '../../../atom/picture';\nimport ForumComment from '../forum-comment';\nimport style from './style.css';\n\nconst ForumPost = (props, context) => {\n const {translate, skin} = context;\n const {\n id,\n author,\n avatar,\n avatarAlt,\n profileAvatarAlt,\n date,\n message,\n answer,\n answerPostDisabled = false,\n answerTextareaDisabled = false,\n answerAvatar,\n answerable = true,\n editable = false,\n rejectable = false,\n mainPost = false,\n rejected = false,\n deleted = false,\n edition,\n editionPostDisabled = false,\n editionTextareaDisabled = false,\n showAnswerBox = false,\n showEditBox = false,\n onAnswer = identity,\n onEdit = identity,\n onPostAnswer = identity,\n onPostEdition = identity,\n onChangeAnswer = identity,\n onChangeEdition = identity,\n onModerate,\n onDelete\n } = props;\n const color = get('common.primary', skin);\n\n const infoDeleted = translate('This message has been removed by its author');\n const answerLabel = translate('Answer');\n const editLabel = translate('Edit');\n const deleteLabel = translate('Delete');\n const rejectLabel = translate('Reject');\n const putBackLabel = translate('Put back');\n let messageClassName = style.message;\n if (deleted) {\n messageClassName = style.deletedMessage;\n } else if (showEditBox) {\n messageClassName = style.hiddenMessage;\n }\n\n return (\n <div\n data-name=\"forumPost\"\n id={`forum-post-${id || 'to-be-posted'}`}\n className={classnames(\n mainPost ? style.mainPost : null,\n rejected ? style.rejected : style.post\n )}\n >\n <div className={style.avatarWrapper}>\n <div className={style.image}>\n <Picture src={avatar} className={style.avatar} alt={avatarAlt} />\n </div>\n <span data-name=\"author\" className={style.author}>\n {author}\n </span>\n </div>\n <div className={style.content}>\n <div>\n <span className={style.date}>{date}</span>\n </div>\n <div className={style.body}>\n <span\n className={style.action}\n onClick={onAnswer}\n style={{\n color,\n display: answerable && !deleted && !rejected ? 'block' : 'none'\n }}\n >\n {answerLabel}\n </span>\n\n <span\n className={style.action}\n onClick={onEdit}\n style={{\n color,\n display: editable ? 'block' : 'none'\n }}\n >\n {editLabel}\n </span>\n\n <span\n className={style.action}\n onClick={onDelete}\n style={{\n color,\n display: editable ? 'block' : 'none'\n }}\n >\n {deleteLabel}\n </span>\n\n <span\n className={style.action}\n onClick={onModerate}\n style={{\n color,\n display: rejectable ? 'block' : 'none'\n }}\n >\n {rejected ? putBackLabel : rejectLabel}\n </span>\n\n <div className={messageClassName} role=\"status\">\n {deleted ? infoDeleted : message}\n </div>\n\n <div className={`${style.edition} ${showEditBox ? style.visible : ''}`}>\n <ForumComment\n avatar={null}\n profileAvatarAlt={profileAvatarAlt}\n value={edition}\n textareaDisabled={editionTextareaDisabled}\n postDisabled={editionPostDisabled}\n onPost={onPostEdition}\n onChange={onChangeEdition}\n />\n </div>\n\n <div className={`${style.answer} ${showAnswerBox ? style.visible : ''}`}>\n <ForumComment\n avatar={answerAvatar}\n profileAvatarAlt={profileAvatarAlt}\n textareaDisabled={answerTextareaDisabled}\n postDisabled={answerPostDisabled}\n value={answer}\n onPost={onPostAnswer}\n onChange={onChangeAnswer}\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nForumPost.contextTypes = {\n translate: Provider.childContextTypes.translate,\n skin: Provider.childContextTypes.skin\n};\n\nForumPost.propTypes = {\n id: PropTypes.string,\n author: PropTypes.string,\n avatarAlt: PropTypes.string,\n profileAvatarAlt: PropTypes.string,\n date: PropTypes.string,\n message: PropTypes.string,\n avatar: SrcPropType,\n answerAvatar: SrcPropType,\n answer: PropTypes.string,\n edition: PropTypes.string,\n showAnswerBox: PropTypes.bool,\n showEditBox: PropTypes.bool,\n mainPost: PropTypes.bool,\n onAnswer: PropTypes.func,\n onEdit: PropTypes.func,\n onPostAnswer: PropTypes.func,\n onPostEdition: PropTypes.func,\n onChangeAnswer: PropTypes.func,\n onChangeEdition: PropTypes.func,\n onModerate: PropTypes.func,\n onDelete: PropTypes.func,\n answerPostDisabled: PropTypes.bool,\n answerTextareaDisabled: PropTypes.bool,\n answerable: PropTypes.bool,\n editable: PropTypes.bool,\n rejectable: PropTypes.bool,\n rejected: PropTypes.bool,\n deleted: PropTypes.bool,\n editionPostDisabled: PropTypes.bool,\n editionTextareaDisabled: PropTypes.bool\n};\n\nexport default ForumPost;\n"],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ declare const _default: {
|
|
|
16
16
|
'aria-label': PropTypes.Requireable<string>;
|
|
17
17
|
'data-name': PropTypes.Requireable<string>;
|
|
18
18
|
animationLottie: PropTypes.Requireable<PropTypes.InferProps<{
|
|
19
|
-
'aria-label': PropTypes.
|
|
19
|
+
'aria-label': PropTypes.Requireable<string>;
|
|
20
20
|
'data-name': PropTypes.Requireable<string>;
|
|
21
21
|
animationSrc: PropTypes.Validator<string>;
|
|
22
22
|
loop: PropTypes.Requireable<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/share/index.js"],"names":[],"mappings":"AAkDO;;gBAcN;;;;;;AAEM;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/share/index.js"],"names":[],"mappings":"AAkDO;;gBAcN;;;;;;AAEM;;;uBAqBN;;;;;;;;;;AAED;;;;gBA8BC"}
|
|
@@ -62,7 +62,8 @@ export const ShareFeedback = ({
|
|
|
62
62
|
successWording,
|
|
63
63
|
errorWording
|
|
64
64
|
}) => {
|
|
65
|
-
const [status] = useContext(StatusContext);
|
|
65
|
+
// const [status] = useContext(StatusContext);
|
|
66
|
+
const [status] = SHARE_STATUS.ERROR;
|
|
66
67
|
if (status === SHARE_STATUS.IDLE) return null;
|
|
67
68
|
return /*#__PURE__*/React.createElement("div", {
|
|
68
69
|
className: classnames(styles.feedback, status === SHARE_STATUS.ERROR && styles.errorFeedback)
|
|
@@ -74,7 +75,11 @@ export const ShareFeedback = ({
|
|
|
74
75
|
className: styles.checkIcon,
|
|
75
76
|
width: 13,
|
|
76
77
|
height: 13
|
|
77
|
-
}), /*#__PURE__*/React.createElement("p",
|
|
78
|
+
}), status === SHARE_STATUS.SUCCESS ? /*#__PURE__*/React.createElement("p", {
|
|
79
|
+
role: "status"
|
|
80
|
+
}, successWording) : /*#__PURE__*/React.createElement("p", {
|
|
81
|
+
role: "alert"
|
|
82
|
+
}, errorWording));
|
|
78
83
|
};
|
|
79
84
|
|
|
80
85
|
const Share = ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useState","useMemo","useCallback","useContext","useEffect","PropTypes","classnames","NovaCompositionCoorpacademyCheck","CheckIcon","NovaCompositionCoorpacademyShare","ShareIcon","NovaCompositionCoorpacademyAttention","AttentionIcon","Link","styles","SHARE_STATUS","IDLE","ERROR","SUCCESS","copyTextViaExecCommand","text","textarea","document","createElement","style","border","padding","visibility","position","setAttribute","value","body","appendChild","status","select","setSelectionRange","length","execCommand","error","removeChild","StatusContext","createContext","ShareStatusProvider","children","setStatus","timeoutId","DURATION","setTimeout","clearTimeout","ShareFeedback","successWording","errorWording","feedback","errorFeedback","checkIcon","Share","wording","onClick","browserSupportsClipboardWriteText","navigator","clipboard","writeText","copyStatus","container","cta","wrapper","shareIcon","propTypes","node","string"],"sources":["../../../src/molecule/share/index.js"],"sourcesContent":["import React, {useState, useMemo, useCallback, useContext, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaCompositionCoorpacademyShare as ShareIcon,\n NovaCompositionCoorpacademyAttention as AttentionIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport styles from './style.css';\n\nconst SHARE_STATUS = {\n IDLE: 'IDLE',\n ERROR: 'ERROR',\n SUCCESS: 'SUCCESS'\n};\n\nconst copyTextViaExecCommand = text => {\n const textarea = document.createElement('textarea');\n\n textarea.style.border = '0';\n textarea.style.padding = '0';\n textarea.style.visibility = 'hidden';\n textarea.style.position = 'absolute';\n textarea.setAttribute('readonly', '');\n textarea.value = text;\n\n // Element.append is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-append\n document.body.appendChild(textarea);\n let status = SHARE_STATUS.IDLE;\n\n try {\n textarea.select();\n textarea.setSelectionRange(0, textarea.value.length);\n document.execCommand('copy');\n status = SHARE_STATUS.SUCCESS;\n } catch (error) {\n status = SHARE_STATUS.ERROR;\n }\n\n // Element.remove is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-remove\n document.body.removeChild(textarea);\n\n return status;\n};\n\nconst StatusContext = React.createContext(SHARE_STATUS.IDLE);\n\nexport const ShareStatusProvider = ({children}) => {\n const [status, setStatus] = useState(SHARE_STATUS.IDLE);\n useEffect(() => {\n let timeoutId;\n const DURATION = 3000;\n if (status !== SHARE_STATUS.IDLE) {\n timeoutId = setTimeout(() => setStatus(SHARE_STATUS.IDLE), DURATION);\n }\n return () => clearTimeout(timeoutId);\n }, [status]);\n\n const value = useMemo(() => [status, setStatus], [status]);\n\n return <StatusContext.Provider value={value}>{children}</StatusContext.Provider>;\n};\n\nexport const ShareFeedback = ({successWording, errorWording}) => {\n const [status] = useContext(StatusContext);\n if (status === SHARE_STATUS.IDLE) return null;\n\n return (\n <div\n className={classnames(styles.feedback, status === SHARE_STATUS.ERROR && styles.errorFeedback)}\n >\n {status === SHARE_STATUS.SUCCESS ? (\n <CheckIcon className={styles.checkIcon} width={13} height={13} />\n ) : (\n <AttentionIcon className={styles.checkIcon} width={13} height={13} />\n )}\n
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useState","useMemo","useCallback","useContext","useEffect","PropTypes","classnames","NovaCompositionCoorpacademyCheck","CheckIcon","NovaCompositionCoorpacademyShare","ShareIcon","NovaCompositionCoorpacademyAttention","AttentionIcon","Link","styles","SHARE_STATUS","IDLE","ERROR","SUCCESS","copyTextViaExecCommand","text","textarea","document","createElement","style","border","padding","visibility","position","setAttribute","value","body","appendChild","status","select","setSelectionRange","length","execCommand","error","removeChild","StatusContext","createContext","ShareStatusProvider","children","setStatus","timeoutId","DURATION","setTimeout","clearTimeout","ShareFeedback","successWording","errorWording","feedback","errorFeedback","checkIcon","Share","wording","onClick","browserSupportsClipboardWriteText","navigator","clipboard","writeText","copyStatus","container","cta","wrapper","shareIcon","propTypes","node","string"],"sources":["../../../src/molecule/share/index.js"],"sourcesContent":["import React, {useState, useMemo, useCallback, useContext, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {\n NovaCompositionCoorpacademyCheck as CheckIcon,\n NovaCompositionCoorpacademyShare as ShareIcon,\n NovaCompositionCoorpacademyAttention as AttentionIcon\n} from '@coorpacademy/nova-icons';\nimport Link from '../../atom/link';\nimport styles from './style.css';\n\nconst SHARE_STATUS = {\n IDLE: 'IDLE',\n ERROR: 'ERROR',\n SUCCESS: 'SUCCESS'\n};\n\nconst copyTextViaExecCommand = text => {\n const textarea = document.createElement('textarea');\n\n textarea.style.border = '0';\n textarea.style.padding = '0';\n textarea.style.visibility = 'hidden';\n textarea.style.position = 'absolute';\n textarea.setAttribute('readonly', '');\n textarea.value = text;\n\n // Element.append is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-append\n document.body.appendChild(textarea);\n let status = SHARE_STATUS.IDLE;\n\n try {\n textarea.select();\n textarea.setSelectionRange(0, textarea.value.length);\n document.execCommand('copy');\n status = SHARE_STATUS.SUCCESS;\n } catch (error) {\n status = SHARE_STATUS.ERROR;\n }\n\n // Element.remove is not supported on IE11 :/\n // eslint-disable-next-line unicorn/prefer-node-remove\n document.body.removeChild(textarea);\n\n return status;\n};\n\nconst StatusContext = React.createContext(SHARE_STATUS.IDLE);\n\nexport const ShareStatusProvider = ({children}) => {\n const [status, setStatus] = useState(SHARE_STATUS.IDLE);\n useEffect(() => {\n let timeoutId;\n const DURATION = 3000;\n if (status !== SHARE_STATUS.IDLE) {\n timeoutId = setTimeout(() => setStatus(SHARE_STATUS.IDLE), DURATION);\n }\n return () => clearTimeout(timeoutId);\n }, [status]);\n\n const value = useMemo(() => [status, setStatus], [status]);\n\n return <StatusContext.Provider value={value}>{children}</StatusContext.Provider>;\n};\n\nexport const ShareFeedback = ({successWording, errorWording}) => {\n // const [status] = useContext(StatusContext);\n const [status] = SHARE_STATUS.ERROR;\n if (status === SHARE_STATUS.IDLE) return null;\n\n return (\n <div\n className={classnames(styles.feedback, status === SHARE_STATUS.ERROR && styles.errorFeedback)}\n >\n {status === SHARE_STATUS.SUCCESS ? (\n <CheckIcon className={styles.checkIcon} width={13} height={13} />\n ) : (\n <AttentionIcon className={styles.checkIcon} width={13} height={13} />\n )}\n {status === SHARE_STATUS.SUCCESS ? (\n <p role=\"status\">{successWording}</p>\n ) : (\n <p role=\"alert\">{errorWording}</p>\n )}\n </div>\n );\n};\n\nconst Share = ({style, text, wording}) => {\n const [, setStatus] = useContext(StatusContext);\n const onClick = useCallback(async () => {\n const browserSupportsClipboardWriteText =\n 'clipboard' in navigator && 'writeText' in navigator.clipboard;\n if (browserSupportsClipboardWriteText) {\n try {\n await navigator.clipboard.writeText(text);\n setStatus(SHARE_STATUS.SUCCESS);\n } catch (error) {\n setStatus(SHARE_STATUS.ERROR);\n }\n return;\n } else {\n const copyStatus = copyTextViaExecCommand(text);\n setStatus(copyStatus);\n }\n return;\n }, [setStatus, text]);\n\n return (\n <div className={(styles.container, style)}>\n <Link onClick={onClick} className={styles.cta} data-name={'share-button'}>\n <div className={styles.wrapper}>\n <ShareIcon className={styles.shareIcon} width={18} height={18} />\n <p>{wording}</p>\n </div>\n </Link>\n </div>\n );\n};\n\nShareStatusProvider.propTypes = {\n children: PropTypes.node\n};\n\nShareFeedback.propTypes = {\n successWording: PropTypes.string,\n errorWording: PropTypes.string\n};\n\nShare.propTypes = {\n style: PropTypes.string,\n text: PropTypes.string,\n wording: PropTypes.string\n};\n\nexport default Share;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/review-congrats/index.js"],"names":[],"mappings":"AAOO,sDAMN;;AAED,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/review-congrats/index.js"],"names":[],"mappings":"AAOO,sDAMN;;AAED,yDAuEC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
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
2
|
|
|
3
3
|
import React, { useEffect, useRef } from 'react';
|
|
4
|
-
import
|
|
4
|
+
import LottieWrapper from '../../atom/lottie-wrapper';
|
|
5
5
|
import ButtonLink from '../../atom/button-link';
|
|
6
|
-
import
|
|
6
|
+
import ReviewCardCongrats from '../../molecule/review-card-congrats';
|
|
7
7
|
import style from './style.css';
|
|
8
8
|
import propTypes from './prop-types';
|
|
9
9
|
export const setScroll = container => () => {
|
|
@@ -34,7 +34,9 @@ const ReviewCongrats = props => {
|
|
|
34
34
|
"aria-label": ariaLabel,
|
|
35
35
|
"data-name": dataName,
|
|
36
36
|
"data-testid": "congrats"
|
|
37
|
-
}, /*#__PURE__*/React.createElement(
|
|
37
|
+
}, /*#__PURE__*/React.createElement(LottieWrapper
|
|
38
|
+
/** confetti animation */
|
|
39
|
+
, _extends({}, animationLottie, {
|
|
38
40
|
loop: false,
|
|
39
41
|
animationControl: 'play',
|
|
40
42
|
autoplay: true,
|
|
@@ -48,12 +50,12 @@ const ReviewCongrats = props => {
|
|
|
48
50
|
}, title), /*#__PURE__*/React.createElement("div", {
|
|
49
51
|
ref: container,
|
|
50
52
|
className: style.containerCards
|
|
51
|
-
}, cardCongratsRank ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(
|
|
53
|
+
}, cardCongratsRank ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ReviewCardCongrats, _extends({}, cardCongratsStar, {
|
|
52
54
|
className: style.cardStar
|
|
53
|
-
})), /*#__PURE__*/React.createElement(
|
|
55
|
+
})), /*#__PURE__*/React.createElement(ReviewCardCongrats, _extends({}, cardCongratsRank, {
|
|
54
56
|
timerAnimation: 1800,
|
|
55
57
|
className: style.cardRank
|
|
56
|
-
}))) : /*#__PURE__*/React.createElement(
|
|
58
|
+
}))) : /*#__PURE__*/React.createElement(ReviewCardCongrats, _extends({}, cardCongratsStar, {
|
|
57
59
|
className: style.cardStarNoRank
|
|
58
60
|
}))), /*#__PURE__*/React.createElement("div", {
|
|
59
61
|
className: style.buttonContainer
|