@coorpacademy/components 11.14.20 → 11.14.21
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/molecule/audio/index.d.ts.map +1 -1
- package/es/molecule/audio/index.js +1 -0
- package/es/molecule/audio/index.js.map +1 -1
- package/es/molecule/drag-and-drop/index.js +3 -1
- package/es/molecule/drag-and-drop/index.js.map +1 -1
- package/es/molecule/drag-and-drop/overlay.d.ts.map +1 -1
- package/es/molecule/drag-and-drop/overlay.js +2 -1
- package/es/molecule/drag-and-drop/overlay.js.map +1 -1
- package/es/molecule/drag-and-drop/upload-report.d.ts.map +1 -1
- package/es/molecule/drag-and-drop/upload-report.js +1 -0
- package/es/molecule/drag-and-drop/upload-report.js.map +1 -1
- package/es/molecule/draggable/index.d.ts.map +1 -1
- package/es/molecule/draggable/index.js +1 -0
- package/es/molecule/draggable/index.js.map +1 -1
- package/es/template/app-player/player/slides/header/index.js +2 -1
- package/es/template/app-player/player/slides/header/index.js.map +1 -1
- package/es/template/app-player/player/slides/header/microlearning.css +10 -0
- package/es/template/app-player/player/slides/header/microlearning.d.ts +1 -0
- package/es/template/app-player/player/slides/header/microlearning.d.ts.map +1 -1
- package/es/template/app-player/player/slides/header/microlearning.js +34 -18
- package/es/template/app-player/player/slides/header/microlearning.js.map +1 -1
- package/lib/molecule/audio/index.d.ts.map +1 -1
- package/lib/molecule/audio/index.js +1 -0
- package/lib/molecule/audio/index.js.map +1 -1
- package/lib/molecule/drag-and-drop/index.js +3 -1
- package/lib/molecule/drag-and-drop/index.js.map +1 -1
- package/lib/molecule/drag-and-drop/overlay.d.ts.map +1 -1
- package/lib/molecule/drag-and-drop/overlay.js +2 -1
- package/lib/molecule/drag-and-drop/overlay.js.map +1 -1
- package/lib/molecule/drag-and-drop/upload-report.d.ts.map +1 -1
- package/lib/molecule/drag-and-drop/upload-report.js +1 -0
- package/lib/molecule/drag-and-drop/upload-report.js.map +1 -1
- package/lib/molecule/draggable/index.d.ts.map +1 -1
- package/lib/molecule/draggable/index.js +1 -0
- package/lib/molecule/draggable/index.js.map +1 -1
- package/lib/template/app-player/player/slides/header/index.js +2 -1
- package/lib/template/app-player/player/slides/header/index.js.map +1 -1
- package/lib/template/app-player/player/slides/header/microlearning.css +10 -0
- package/lib/template/app-player/player/slides/header/microlearning.d.ts +1 -0
- package/lib/template/app-player/player/slides/header/microlearning.d.ts.map +1 -1
- package/lib/template/app-player/player/slides/header/microlearning.js +35 -18
- package/lib/template/app-player/player/slides/header/microlearning.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/audio/index.js"],"names":[],"mappings":";AAQA;IACE;;;;;MAKE;IAEF;;;;;;;;;;;;;;;;;;;;;;MAEE;IAEF,sCAKC;IAeD,yBAGC;IApBC,kBAAwB;IAa1B,iCAEE;IAXF,+CAGC;IAED,2BAEC;IAWD,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/audio/index.js"],"names":[],"mappings":";AAQA;IACE;;;;;MAKE;IAEF;;;;;;;;;;;;;;;;;;;;;;MAEE;IAEF,sCAKC;IAeD,yBAGC;IApBC,kBAAwB;IAa1B,iCAEE;IAXF,+CAGC;IAED,2BAEC;IAWD,sBAgCC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","classnames","NovaCompositionCoorpacademyMicrophone","PodcastIcon","Provider","style","Audio","Component","constructor","props","context","setAudio","element","audioElement","handlePlay","bind","shouldComponentUpdate","nextProps","mediaUrl","componentDidUpdate","load","e","onPlay","render","description","poster","skin","white","frame","backgroundImage","color","icon","innerHTML","__html","audio","contextTypes","childContextTypes","propTypes","string","func"],"sources":["../../../src/molecule/audio/index.js"],"sourcesContent":["import React from 'react';\nimport {get} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaCompositionCoorpacademyMicrophone as PodcastIcon} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport style from './style.css';\n\nclass Audio extends React.Component {\n static propTypes = {\n description: PropTypes.string,\n mediaUrl: PropTypes.string,\n poster: PropTypes.string,\n onPlay: PropTypes.func\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin\n };\n\n constructor(props, context) {\n super(props, context);\n this.handlePlay = this.handlePlay.bind(this);\n this.audioElement = null;\n this.setAudio = this.setAudio.bind(this);\n }\n\n shouldComponentUpdate(nextProps) {\n const {mediaUrl} = this.props;\n return nextProps.mediaUrl !== mediaUrl;\n }\n\n componentDidUpdate() {\n this.audioElement.load();\n }\n\n setAudio = element => {\n this.audioElement = element;\n };\n\n handlePlay(e) {\n const {onPlay} = this.props;\n if (onPlay) onPlay(e);\n }\n\n render() {\n const {description, mediaUrl, poster} = this.props;\n const {skin} = this.context;\n\n const white = get('common.white', skin);\n return (\n <div className={style.frame} style={{backgroundImage: `url(${poster})`}}>\n <PodcastIcon style={{color: white}} className={style.icon} />\n {description ? (\n <div\n className={classnames(style.description, style.innerHTML)}\n data-name=\"audioDescription\"\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: description}}\n />\n ) : null}\n <audio\n className={style.audio}\n controls\n controlsList=\"nodownload\"\n ref={this.setAudio}\n autoPlay=\"\"\n onPlay={this.handlePlay}\n name=\"media\"\n data-name=\"audio\"\n preload=\"auto\"\n >\n <source src={mediaUrl} />\n </audio>\n </div>\n );\n }\n}\n\nexport default Audio;\n"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAAQC,qCAAqC,IAAIC,WAAjD,QAAmE,0BAAnE;AACA,OAAOC,QAAP,MAAqB,qBAArB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,KAAN,SAAoBP,KAAK,CAACQ,SAA1B,CAAoC;EAYlCC,WAAW,CAACC,KAAD,EAAQC,OAAR,EAAiB;IAC1B,MAAMD,KAAN,EAAaC,OAAb;;IAD0B,KAgB5BC,QAhB4B,GAgBjBC,OAAO,IAAI;MACpB,KAAKC,YAAL,GAAoBD,OAApB;IACD,CAlB2B;;IAE1B,KAAKE,UAAL,GAAkB,KAAKA,UAAL,CAAgBC,IAAhB,CAAqB,IAArB,CAAlB;IACA,KAAKF,YAAL,GAAoB,IAApB;IACA,KAAKF,QAAL,GAAgB,KAAKA,QAAL,CAAcI,IAAd,CAAmB,IAAnB,CAAhB;EACD;;EAEDC,qBAAqB,CAACC,SAAD,EAAY;IAC/B,MAAM;MAACC;IAAD,IAAa,KAAKT,KAAxB;IACA,OAAOQ,SAAS,CAACC,QAAV,KAAuBA,QAA9B;EACD;;EAEDC,kBAAkB,GAAG;IACnB,KAAKN,YAAL,CAAkBO,IAAlB;EACD;;EAMDN,UAAU,CAACO,CAAD,EAAI;IACZ,MAAM;MAACC;IAAD,IAAW,KAAKb,KAAtB;IACA,IAAIa,MAAJ,EAAYA,MAAM,CAACD,CAAD,CAAN;EACb;;EAEDE,MAAM,GAAG;IACP,MAAM;MAACC,WAAD;MAAcN,QAAd;MAAwBO;IAAxB,IAAkC,KAAKhB,KAA7C;IACA,MAAM;MAACiB;IAAD,IAAS,KAAKhB,OAApB;;IAEA,MAAMiB,KAAK,GAAG,KAAI,cAAJ,EAAoBD,IAApB,CAAd;;IACA,oBACE;MAAK,SAAS,EAAErB,KAAK,CAACuB,KAAtB;MAA6B,KAAK,EAAE;QAACC,eAAe,EAAG,OAAMJ,MAAO;MAAhC;IAApC,gBACE,oBAAC,WAAD;MAAa,KAAK,EAAE;QAACK,KAAK,EAAEH;MAAR,CAApB;MAAoC,SAAS,EAAEtB,KAAK,CAAC0B;IAArD,EADF,EAEGP,WAAW,gBACV;MACE,SAAS,EAAEvB,UAAU,CAACI,KAAK,CAACmB,WAAP,EAAoBnB,KAAK,CAAC2B,SAA1B,CADvB;MAEE,aAAU,kBAFZ,CAGE;MAHF;MAIE,uBAAuB,EAAE;QAACC,MAAM,EAAET;MAAT;IAJ3B,EADU,GAOR,IATN,eAUE;MACE,SAAS,EAAEnB,KAAK,CAAC6B,KADnB;MAEE,QAAQ,MAFV;MAGE,YAAY,EAAC,YAHf;MAIE,GAAG,EAAE,KAAKvB,QAJZ;MAKE,QAAQ,EAAC,EALX;MAME,MAAM,EAAE,KAAKG,UANf;MAOE,IAAI,EAAC,OAPP;MAQE,
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","classnames","NovaCompositionCoorpacademyMicrophone","PodcastIcon","Provider","style","Audio","Component","constructor","props","context","setAudio","element","audioElement","handlePlay","bind","shouldComponentUpdate","nextProps","mediaUrl","componentDidUpdate","load","e","onPlay","render","description","poster","skin","white","frame","backgroundImage","color","icon","innerHTML","__html","audio","contextTypes","childContextTypes","propTypes","string","func"],"sources":["../../../src/molecule/audio/index.js"],"sourcesContent":["import React from 'react';\nimport {get} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaCompositionCoorpacademyMicrophone as PodcastIcon} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport style from './style.css';\n\nclass Audio extends React.Component {\n static propTypes = {\n description: PropTypes.string,\n mediaUrl: PropTypes.string,\n poster: PropTypes.string,\n onPlay: PropTypes.func\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin\n };\n\n constructor(props, context) {\n super(props, context);\n this.handlePlay = this.handlePlay.bind(this);\n this.audioElement = null;\n this.setAudio = this.setAudio.bind(this);\n }\n\n shouldComponentUpdate(nextProps) {\n const {mediaUrl} = this.props;\n return nextProps.mediaUrl !== mediaUrl;\n }\n\n componentDidUpdate() {\n this.audioElement.load();\n }\n\n setAudio = element => {\n this.audioElement = element;\n };\n\n handlePlay(e) {\n const {onPlay} = this.props;\n if (onPlay) onPlay(e);\n }\n\n render() {\n const {description, mediaUrl, poster} = this.props;\n const {skin} = this.context;\n\n const white = get('common.white', skin);\n return (\n <div className={style.frame} style={{backgroundImage: `url(${poster})`}}>\n <PodcastIcon style={{color: white}} className={style.icon} />\n {description ? (\n <div\n className={classnames(style.description, style.innerHTML)}\n data-name=\"audioDescription\"\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: description}}\n />\n ) : null}\n <audio\n className={style.audio}\n controls\n controlsList=\"nodownload\"\n ref={this.setAudio}\n autoPlay=\"\"\n onPlay={this.handlePlay}\n name=\"media\"\n data-testid=\"audio\"\n data-name=\"audio\"\n preload=\"auto\"\n >\n <source src={mediaUrl} />\n </audio>\n </div>\n );\n }\n}\n\nexport default Audio;\n"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAAQC,qCAAqC,IAAIC,WAAjD,QAAmE,0BAAnE;AACA,OAAOC,QAAP,MAAqB,qBAArB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,KAAN,SAAoBP,KAAK,CAACQ,SAA1B,CAAoC;EAYlCC,WAAW,CAACC,KAAD,EAAQC,OAAR,EAAiB;IAC1B,MAAMD,KAAN,EAAaC,OAAb;;IAD0B,KAgB5BC,QAhB4B,GAgBjBC,OAAO,IAAI;MACpB,KAAKC,YAAL,GAAoBD,OAApB;IACD,CAlB2B;;IAE1B,KAAKE,UAAL,GAAkB,KAAKA,UAAL,CAAgBC,IAAhB,CAAqB,IAArB,CAAlB;IACA,KAAKF,YAAL,GAAoB,IAApB;IACA,KAAKF,QAAL,GAAgB,KAAKA,QAAL,CAAcI,IAAd,CAAmB,IAAnB,CAAhB;EACD;;EAEDC,qBAAqB,CAACC,SAAD,EAAY;IAC/B,MAAM;MAACC;IAAD,IAAa,KAAKT,KAAxB;IACA,OAAOQ,SAAS,CAACC,QAAV,KAAuBA,QAA9B;EACD;;EAEDC,kBAAkB,GAAG;IACnB,KAAKN,YAAL,CAAkBO,IAAlB;EACD;;EAMDN,UAAU,CAACO,CAAD,EAAI;IACZ,MAAM;MAACC;IAAD,IAAW,KAAKb,KAAtB;IACA,IAAIa,MAAJ,EAAYA,MAAM,CAACD,CAAD,CAAN;EACb;;EAEDE,MAAM,GAAG;IACP,MAAM;MAACC,WAAD;MAAcN,QAAd;MAAwBO;IAAxB,IAAkC,KAAKhB,KAA7C;IACA,MAAM;MAACiB;IAAD,IAAS,KAAKhB,OAApB;;IAEA,MAAMiB,KAAK,GAAG,KAAI,cAAJ,EAAoBD,IAApB,CAAd;;IACA,oBACE;MAAK,SAAS,EAAErB,KAAK,CAACuB,KAAtB;MAA6B,KAAK,EAAE;QAACC,eAAe,EAAG,OAAMJ,MAAO;MAAhC;IAApC,gBACE,oBAAC,WAAD;MAAa,KAAK,EAAE;QAACK,KAAK,EAAEH;MAAR,CAApB;MAAoC,SAAS,EAAEtB,KAAK,CAAC0B;IAArD,EADF,EAEGP,WAAW,gBACV;MACE,SAAS,EAAEvB,UAAU,CAACI,KAAK,CAACmB,WAAP,EAAoBnB,KAAK,CAAC2B,SAA1B,CADvB;MAEE,aAAU,kBAFZ,CAGE;MAHF;MAIE,uBAAuB,EAAE;QAACC,MAAM,EAAET;MAAT;IAJ3B,EADU,GAOR,IATN,eAUE;MACE,SAAS,EAAEnB,KAAK,CAAC6B,KADnB;MAEE,QAAQ,MAFV;MAGE,YAAY,EAAC,YAHf;MAIE,GAAG,EAAE,KAAKvB,QAJZ;MAKE,QAAQ,EAAC,EALX;MAME,MAAM,EAAE,KAAKG,UANf;MAOE,IAAI,EAAC,OAPP;MAQE,eAAY,OARd;MASE,aAAU,OATZ;MAUE,OAAO,EAAC;IAVV,gBAYE;MAAQ,GAAG,EAAEI;IAAb,EAZF,CAVF,CADF;EA2BD;;AArEiC;;AAA9BZ,K,CAQG6B,Y,GAAe;EACpBT,IAAI,EAAEtB,QAAQ,CAACgC,iBAAT,CAA2BV;AADb,C;AARlBpB,K,CACG+B,S,2CAAY;EACjBb,WAAW,EAAExB,SAAS,CAACsC,MADN;EAEjBpB,QAAQ,EAAElB,SAAS,CAACsC,MAFH;EAGjBb,MAAM,EAAEzB,SAAS,CAACsC,MAHD;EAIjBhB,MAAM,EAAEtB,SAAS,CAACuC;AAJD,C;AAuErB,eAAejC,KAAf"}
|
|
@@ -42,7 +42,8 @@ export const DragAndDrop = (props, context) => {
|
|
|
42
42
|
const loading = state === 'loading';
|
|
43
43
|
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", {
|
|
44
44
|
onClick: handleBack,
|
|
45
|
-
className: style.back
|
|
45
|
+
className: style.back,
|
|
46
|
+
"data-testid": "back"
|
|
46
47
|
}, /*#__PURE__*/React.createElement(ArrowLeft, {
|
|
47
48
|
width: 12,
|
|
48
49
|
height: 12,
|
|
@@ -84,6 +85,7 @@ export const DragAndDrop = (props, context) => {
|
|
|
84
85
|
|
|
85
86
|
const disableFileInput = state === 'success';
|
|
86
87
|
return /*#__PURE__*/React.createElement("div", _extends({}, getRootProps(), {
|
|
88
|
+
"data-testid": "drop-zone",
|
|
87
89
|
className: style.wrapper
|
|
88
90
|
}), /*#__PURE__*/React.createElement("input", _extends({}, getInputProps(), {
|
|
89
91
|
disabled: disableFileInput
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useCallback","PropTypes","getOr","includes","Dropzone","NovaCompositionNavigationArrowLeft","ArrowLeft","Provider","InputText","Overlay","UploadReport","PlaceHolder","style","DragAndDrop","props","context","skin","primaryColor","state","title","message","warningMessage","mode","dragAndDropMessage","buttonTitle","backLabel","orLabel","accept","type","contentType","fields","onDrop","onDelete","onBack","handleBack","e","stopPropagation","preventDefault","loading","back","arrow","getRootProps","getInputProps","isDragActive","getView","disableFileInput","wrapper","contextTypes","childContextTypes","propTypes","oneOf","isRequired","string","func","arrayOf","shape","actions","label","onClick"],"sources":["../../../src/molecule/drag-and-drop/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport includes from 'lodash/fp/includes';\nimport Dropzone from 'react-dropzone';\nimport {NovaCompositionNavigationArrowLeft as ArrowLeft} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport InputText from '../../atom/input-text';\nimport {Overlay} from './overlay';\nimport {UploadReport} from './upload-report';\nimport {PlaceHolder} from './placeholder';\nimport style from './style.css';\n\nexport const DragAndDrop = (props, context) => {\n const {skin} = context;\n const primaryColor = getOr('#00B0FF', 'common.primary', skin);\n\n const {\n state,\n title,\n message,\n warningMessage,\n mode,\n dragAndDropMessage,\n buttonTitle,\n backLabel,\n orLabel,\n accept,\n type: contentType = 'scorm',\n fields,\n onDrop,\n onDelete,\n onBack\n } = props;\n\n const handleBack = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n onBack && onBack(e);\n },\n [onBack]\n );\n\n const loading = state === 'loading';\n return (\n <div>\n <span onClick={handleBack} className={style.back}>\n <ArrowLeft width={12} height={12} className={style.arrow} />\n {backLabel}\n </span>\n <Dropzone accept={accept} disabled={loading} onDrop={onDrop}>\n {({getRootProps, getInputProps, isDragActive}) => {\n const getView = () => {\n if (contentType !== 'scorm' || includes(state, ['success', 'error', 'ready'])) {\n return (\n <UploadReport\n state={state}\n message={message}\n warningMessage={warningMessage}\n fields={fields}\n type={contentType}\n onDelete={onDelete}\n mode={mode}\n orLabel={orLabel}\n onClick={onDrop}\n buttonTitle={buttonTitle}\n primaryColor={primaryColor}\n />\n );\n }\n return (\n <PlaceHolder\n title={title}\n buttonTitle={buttonTitle}\n uploadLabel={message}\n primaryColor={primaryColor}\n onClick={onDrop}\n />\n );\n };\n\n const disableFileInput = state === 'success';\n\n return (\n <div {...getRootProps()} className={style.wrapper}>\n <input {...getInputProps()} disabled={disableFileInput} />\n {getView()}\n {isDragActive || loading ? (\n <Overlay\n iconColor={primaryColor}\n description={dragAndDropMessage}\n isLoading={loading}\n />\n ) : null}\n </div>\n );\n }}\n </Dropzone>\n </div>\n );\n};\n\nDragAndDrop.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nDragAndDrop.propTypes = {\n state: PropTypes.oneOf(['default', 'ready', 'loading', 'success', 'error']).isRequired,\n mode: PropTypes.oneOf(['edit', 'upload']),\n title: PropTypes.string,\n type: PropTypes.string,\n message: PropTypes.string,\n warningMessage: PropTypes.string,\n dragAndDropMessage: PropTypes.string,\n buttonTitle: PropTypes.string,\n backLabel: PropTypes.string,\n orLabel: PropTypes.string,\n onBack: PropTypes.func,\n accept: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text'])\n })\n ),\n onDrop: PropTypes.func,\n onDelete: PropTypes.func,\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.oneOf(['edit', 'upload', 'delete']),\n label: PropTypes.string,\n onClick: PropTypes.func\n })\n )\n};\n\nexport default DragAndDrop;\n"],"mappings":";;AAAA,OAAOA,KAAP,IAAeC,WAAf,QAAiC,OAAjC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,iBAAlB;AACA,OAAOC,QAAP,MAAqB,oBAArB;AACA,OAAOC,QAAP,MAAqB,gBAArB;AACA,SAAQC,kCAAkC,IAAIC,SAA9C,QAA8D,0BAA9D;AACA,OAAOC,QAAP,MAAqB,qBAArB;AACA,OAAOC,SAAP,MAAsB,uBAAtB;AACA,SAAQC,OAAR,QAAsB,WAAtB;AACA,SAAQC,YAAR,QAA2B,iBAA3B;AACA,SAAQC,WAAR,QAA0B,eAA1B;AACA,OAAOC,KAAP,MAAkB,aAAlB;AAEA,OAAO,MAAMC,WAAW,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EAC7C,MAAM;IAACC;EAAD,IAASD,OAAf;EACA,MAAME,YAAY,GAAGf,KAAK,CAAC,SAAD,EAAY,gBAAZ,EAA8Bc,IAA9B,CAA1B;EAEA,MAAM;IACJE,KADI;IAEJC,KAFI;IAGJC,OAHI;IAIJC,cAJI;IAKJC,IALI;IAMJC,kBANI;IAOJC,WAPI;IAQJC,SARI;IASJC,OATI;IAUJC,MAVI;IAWJC,IAAI,EAAEC,WAAW,GAAG,OAXhB;IAYJC,MAZI;IAaJC,MAbI;IAcJC,QAdI;IAeJC;EAfI,IAgBFnB,KAhBJ;EAkBA,MAAMoB,UAAU,GAAGlC,WAAW,CAC5BmC,CAAC,IAAI;IACHA,CAAC,CAACC,eAAF;IACAD,CAAC,CAACE,cAAF;IACAJ,MAAM,IAAIA,MAAM,CAACE,CAAD,CAAhB;EACD,CAL2B,EAM5B,CAACF,MAAD,CAN4B,CAA9B;EASA,MAAMK,OAAO,GAAGpB,KAAK,KAAK,SAA1B;EACA,oBACE,8CACE;IAAM,OAAO,EAAEgB,UAAf;IAA2B,SAAS,EAAEtB,KAAK,CAAC2B;
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","PropTypes","getOr","includes","Dropzone","NovaCompositionNavigationArrowLeft","ArrowLeft","Provider","InputText","Overlay","UploadReport","PlaceHolder","style","DragAndDrop","props","context","skin","primaryColor","state","title","message","warningMessage","mode","dragAndDropMessage","buttonTitle","backLabel","orLabel","accept","type","contentType","fields","onDrop","onDelete","onBack","handleBack","e","stopPropagation","preventDefault","loading","back","arrow","getRootProps","getInputProps","isDragActive","getView","disableFileInput","wrapper","contextTypes","childContextTypes","propTypes","oneOf","isRequired","string","func","arrayOf","shape","actions","label","onClick"],"sources":["../../../src/molecule/drag-and-drop/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport includes from 'lodash/fp/includes';\nimport Dropzone from 'react-dropzone';\nimport {NovaCompositionNavigationArrowLeft as ArrowLeft} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport InputText from '../../atom/input-text';\nimport {Overlay} from './overlay';\nimport {UploadReport} from './upload-report';\nimport {PlaceHolder} from './placeholder';\nimport style from './style.css';\n\nexport const DragAndDrop = (props, context) => {\n const {skin} = context;\n const primaryColor = getOr('#00B0FF', 'common.primary', skin);\n\n const {\n state,\n title,\n message,\n warningMessage,\n mode,\n dragAndDropMessage,\n buttonTitle,\n backLabel,\n orLabel,\n accept,\n type: contentType = 'scorm',\n fields,\n onDrop,\n onDelete,\n onBack\n } = props;\n\n const handleBack = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n onBack && onBack(e);\n },\n [onBack]\n );\n\n const loading = state === 'loading';\n return (\n <div>\n <span onClick={handleBack} className={style.back} data-testid=\"back\">\n <ArrowLeft width={12} height={12} className={style.arrow} />\n {backLabel}\n </span>\n <Dropzone accept={accept} disabled={loading} onDrop={onDrop}>\n {({getRootProps, getInputProps, isDragActive}) => {\n const getView = () => {\n if (contentType !== 'scorm' || includes(state, ['success', 'error', 'ready'])) {\n return (\n <UploadReport\n state={state}\n message={message}\n warningMessage={warningMessage}\n fields={fields}\n type={contentType}\n onDelete={onDelete}\n mode={mode}\n orLabel={orLabel}\n onClick={onDrop}\n buttonTitle={buttonTitle}\n primaryColor={primaryColor}\n />\n );\n }\n return (\n <PlaceHolder\n title={title}\n buttonTitle={buttonTitle}\n uploadLabel={message}\n primaryColor={primaryColor}\n onClick={onDrop}\n />\n );\n };\n\n const disableFileInput = state === 'success';\n\n return (\n <div {...getRootProps()} data-testid=\"drop-zone\" className={style.wrapper}>\n <input {...getInputProps()} disabled={disableFileInput} />\n {getView()}\n {isDragActive || loading ? (\n <Overlay\n iconColor={primaryColor}\n description={dragAndDropMessage}\n isLoading={loading}\n />\n ) : null}\n </div>\n );\n }}\n </Dropzone>\n </div>\n );\n};\n\nDragAndDrop.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nDragAndDrop.propTypes = {\n state: PropTypes.oneOf(['default', 'ready', 'loading', 'success', 'error']).isRequired,\n mode: PropTypes.oneOf(['edit', 'upload']),\n title: PropTypes.string,\n type: PropTypes.string,\n message: PropTypes.string,\n warningMessage: PropTypes.string,\n dragAndDropMessage: PropTypes.string,\n buttonTitle: PropTypes.string,\n backLabel: PropTypes.string,\n orLabel: PropTypes.string,\n onBack: PropTypes.func,\n accept: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text'])\n })\n ),\n onDrop: PropTypes.func,\n onDelete: PropTypes.func,\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.oneOf(['edit', 'upload', 'delete']),\n label: PropTypes.string,\n onClick: PropTypes.func\n })\n )\n};\n\nexport default DragAndDrop;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../src/molecule/drag-and-drop/overlay.js"],"names":[],"mappings":"AAUO;;;;
|
|
1
|
+
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../src/molecule/drag-and-drop/overlay.js"],"names":[],"mappings":"AAUO;;;;gBAkBN"}
|
|
@@ -21,7 +21,8 @@ export const Overlay = ({
|
|
|
21
21
|
className: style.icon
|
|
22
22
|
})), /*#__PURE__*/React.createElement("p", null, description));
|
|
23
23
|
return /*#__PURE__*/React.createElement("div", {
|
|
24
|
-
className: style.overlay
|
|
24
|
+
className: style.overlay,
|
|
25
|
+
"data-testid": "overlay"
|
|
25
26
|
}, isLoading ? /*#__PURE__*/React.createElement(Loader, null) : dropOverlay);
|
|
26
27
|
};
|
|
27
28
|
export default Overlay;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.js","names":["React","PropTypes","NovaSolidDataTransferDataUpload1","UploadIcon","convert","Loader","style","Overlay","description","isLoading","iconColor","dropOverlay","arrow","border","color","icon","overlay","propTypes","string","bool"],"sources":["../../../src/molecule/drag-and-drop/overlay.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {NovaSolidDataTransferDataUpload1 as UploadIcon} from '@coorpacademy/nova-icons';\nimport {convert} from 'css-color-function';\n\nimport Loader from '../../atom/loader';\n\nimport style from './overlay.css';\n\nexport const Overlay = ({description, isLoading, iconColor}) => {\n const dropOverlay = (\n <React.Fragment>\n <div\n className={style.arrow}\n style={{border: `15px solid ${convert(`color(${iconColor} a(-90%))`)}`}}\n >\n <UploadIcon style={{color: iconColor}} className={style.icon} />\n </div>\n <p>{description}</p>\n </React.Fragment>\n );\n\n return <div className={style.overlay}
|
|
1
|
+
{"version":3,"file":"overlay.js","names":["React","PropTypes","NovaSolidDataTransferDataUpload1","UploadIcon","convert","Loader","style","Overlay","description","isLoading","iconColor","dropOverlay","arrow","border","color","icon","overlay","propTypes","string","bool"],"sources":["../../../src/molecule/drag-and-drop/overlay.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {NovaSolidDataTransferDataUpload1 as UploadIcon} from '@coorpacademy/nova-icons';\nimport {convert} from 'css-color-function';\n\nimport Loader from '../../atom/loader';\n\nimport style from './overlay.css';\n\nexport const Overlay = ({description, isLoading, iconColor}) => {\n const dropOverlay = (\n <React.Fragment>\n <div\n className={style.arrow}\n style={{border: `15px solid ${convert(`color(${iconColor} a(-90%))`)}`}}\n >\n <UploadIcon style={{color: iconColor}} className={style.icon} />\n </div>\n <p>{description}</p>\n </React.Fragment>\n );\n\n return (\n <div className={style.overlay} data-testid=\"overlay\">\n {isLoading ? <Loader /> : dropOverlay}\n </div>\n );\n};\n\nexport default Overlay;\n\nOverlay.propTypes = {\n description: PropTypes.string,\n isLoading: PropTypes.bool,\n iconColor: PropTypes.string\n};\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,SAAQC,gCAAgC,IAAIC,UAA5C,QAA6D,0BAA7D;AACA,SAAQC,OAAR,QAAsB,oBAAtB;AAEA,OAAOC,MAAP,MAAmB,mBAAnB;AAEA,OAAOC,KAAP,MAAkB,eAAlB;AAEA,OAAO,MAAMC,OAAO,GAAG,CAAC;EAACC,WAAD;EAAcC,SAAd;EAAyBC;AAAzB,CAAD,KAAyC;EAC9D,MAAMC,WAAW,gBACf,oBAAC,KAAD,CAAO,QAAP,qBACE;IACE,SAAS,EAAEL,KAAK,CAACM,KADnB;IAEE,KAAK,EAAE;MAACC,MAAM,EAAG,cAAaT,OAAO,CAAE,SAAQM,SAAU,WAApB,CAAgC;IAA9D;EAFT,gBAIE,oBAAC,UAAD;IAAY,KAAK,EAAE;MAACI,KAAK,EAAEJ;IAAR,CAAnB;IAAuC,SAAS,EAAEJ,KAAK,CAACS;EAAxD,EAJF,CADF,eAOE,+BAAIP,WAAJ,CAPF,CADF;EAYA,oBACE;IAAK,SAAS,EAAEF,KAAK,CAACU,OAAtB;IAA+B,eAAY;EAA3C,GACGP,SAAS,gBAAG,oBAAC,MAAD,OAAH,GAAgBE,WAD5B,CADF;AAKD,CAlBM;AAoBP,eAAeJ,OAAf;AAEAA,OAAO,CAACU,SAAR,2CAAoB;EAClBT,WAAW,EAAEP,SAAS,CAACiB,MADL;EAElBT,SAAS,EAAER,SAAS,CAACkB,IAFH;EAGlBT,SAAS,EAAET,SAAS,CAACiB;AAHH,CAApB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-report.d.ts","sourceRoot":"","sources":["../../../src/molecule/drag-and-drop/upload-report.js"],"names":[],"mappings":"AAkDO;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"upload-report.d.ts","sourceRoot":"","sources":["../../../src/molecule/drag-and-drop/upload-report.js"],"names":[],"mappings":"AAkDO;;;;;;;;;;;gBAgGN"}
|
|
@@ -107,6 +107,7 @@ export const UploadReport = ({
|
|
|
107
107
|
}));
|
|
108
108
|
|
|
109
109
|
const deleteView = onDelete ? /*#__PURE__*/React.createElement("div", {
|
|
110
|
+
"data-testid": "trash-icon",
|
|
110
111
|
onClick: handleDelete,
|
|
111
112
|
className: classnames(style.actionIcon, style.trashIcon)
|
|
112
113
|
}, /*#__PURE__*/React.createElement(TrashIcon, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-report.js","names":["React","useCallback","PropTypes","NovaCompositionCoorpacademyValidate","Validated","NovaLineContentEditionBin","TrashIcon","NovaCompositionCoorpacademyWarn","WarnIcon","classnames","EXTERNAL_CONTENT_ICONS","InputText","Button","style","SuccessMessage","message","emoticon","propTypes","string","isRequired","ErrorMessage","buttonTitle","primaryColor","selectButton","backgroundColor","UploadReport","state","warningMessage","type","contentType","fields","mode","orLabel","onDelete","handleDelete","e","stopPropagation","preventDefault","stopPropagationHandler","showMessage","fileName","fileView","fileWrapper","validateIcon","warning","showToolTip","warningIcon","emptyFileWrapper","IconType","icon","iconColor","color","buildField","field","index","deleteView","actionIcon","trashIcon","fieldsList","convert","cap","reportingContainer","reportHeader","iconContainer","oval","iconHeader","reportContainer","or","drop","arrayOf","shape","oneOf","func"],"sources":["../../../src/molecule/drag-and-drop/upload-report.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyValidate as Validated,\n NovaLineContentEditionBin as TrashIcon,\n NovaCompositionCoorpacademyWarn as WarnIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport {pipe, split, last, map, head, getOr, isEmpty, includes} from 'lodash/fp';\nimport {EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport InputText from '../../atom/input-text';\n\nimport Button from '../../atom/button';\nimport style from './upload-report.css';\n\nconst SuccessMessage = ({message}) => (\n <div>\n <span className={style.emoticon}>🎉</span>\n <p className={style.message}>{message}</p>\n </div>\n);\n\nSuccessMessage.propTypes = {\n message: PropTypes.string.isRequired\n};\n\nconst ErrorMessage = ({message, buttonTitle, primaryColor}) => (\n <div>\n <div>\n <span className={style.emoticon}>🥺</span>\n <p className={style.message}>{message}</p>\n </div>\n <div>\n <Button\n data-name=\"cta\"\n type=\"link\"\n submitValue={buttonTitle}\n className={style.selectButton}\n style={{backgroundColor: primaryColor}}\n />\n </div>\n </div>\n);\n\nErrorMessage.propTypes = {\n message: PropTypes.string.isRequired,\n buttonTitle: PropTypes.string,\n primaryColor: PropTypes.string\n};\n\nexport const UploadReport = ({\n state,\n message,\n warningMessage,\n type: contentType,\n fields,\n mode = 'upload',\n orLabel,\n buttonTitle,\n primaryColor,\n onDelete\n}) => {\n const handleDelete = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n onDelete && onDelete(e);\n },\n [onDelete]\n );\n\n const stopPropagationHandler = useCallback(e => {\n e.stopPropagation();\n e.preventDefault();\n }, []);\n\n const showMessage = includes(state, ['success', 'error']);\n\n const fileName = pipe(head, getOr('', 'value'), split('/'), last)(fields);\n const fileView = fileName ? (\n <div className={style.fileWrapper}>\n <div className={style.fileName} title={fileName}>\n {fileName}\n </div>\n {isEmpty(warningMessage) ? (\n <Validated className={style.validateIcon} />\n ) : (\n <div className={style.warning}>\n <div className={style.showToolTip}>\n <span>{warningMessage}</span>\n </div>\n <div className={style.warningIcon}>\n <WarnIcon width={11} height={11} />\n </div>\n </div>\n )}\n </div>\n ) : (\n <div className={style.emptyFileWrapper} />\n );\n const IconType = EXTERNAL_CONTENT_ICONS[contentType].icon;\n const iconColor = EXTERNAL_CONTENT_ICONS[contentType].color;\n const buildField = (field, index) => <InputText {...field} key={index} theme={'cockpit'} />;\n const deleteView = onDelete ? (\n <div onClick={handleDelete} className={classnames(style.actionIcon, style.trashIcon)}>\n <TrashIcon width={20} height={20} />\n </div>\n ) : null;\n const fieldsList = map.convert({cap: false})(buildField, fields);\n return (\n <div className={style.reportingContainer}>\n <div className={style.reportHeader} onClick={stopPropagationHandler}>\n <div className={style.iconContainer} style={{backgroundColor: iconColor}}>\n <div className={style.oval}>\n <IconType className={style.iconHeader} style={{color: iconColor}} />\n </div>\n </div>\n {fileView}\n {deleteView}\n </div>\n <div className={style.reportContainer} onClick={stopPropagationHandler}>\n {state === 'success' ? <SuccessMessage message={message} /> : null}\n {state === 'error' ? (\n <ErrorMessage message={message} buttonTitle={buttonTitle} primaryColor={primaryColor} />\n ) : null}\n {mode === 'edit' && !showMessage ? <div>{fieldsList}</div> : null}\n {mode === 'edit' && !showMessage ? <span className={style.or}>{orLabel}</span> : null}\n </div>\n {!showMessage ? (\n <div className={style.drop}>\n <p className={style.message}>{message}</p>\n <Button\n data-name=\"cta\"\n type=\"link\"\n submitValue={buttonTitle}\n className={style.selectButton}\n style={{backgroundColor: primaryColor}}\n />\n </div>\n ) : null}\n </div>\n );\n};\n\nexport default UploadReport;\n\nUploadReport.propTypes = {\n state: PropTypes.string.isRequired,\n message: PropTypes.string.isRequired,\n warningMessage: PropTypes.string,\n orLabel: PropTypes.string,\n type: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text'])\n })\n ),\n mode: PropTypes.oneOf(['edit', 'upload']),\n buttonTitle: PropTypes.string,\n primaryColor: PropTypes.string,\n onDelete: PropTypes.func\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"upload-report.js","names":["React","useCallback","PropTypes","NovaCompositionCoorpacademyValidate","Validated","NovaLineContentEditionBin","TrashIcon","NovaCompositionCoorpacademyWarn","WarnIcon","classnames","EXTERNAL_CONTENT_ICONS","InputText","Button","style","SuccessMessage","message","emoticon","propTypes","string","isRequired","ErrorMessage","buttonTitle","primaryColor","selectButton","backgroundColor","UploadReport","state","warningMessage","type","contentType","fields","mode","orLabel","onDelete","handleDelete","e","stopPropagation","preventDefault","stopPropagationHandler","showMessage","fileName","fileView","fileWrapper","validateIcon","warning","showToolTip","warningIcon","emptyFileWrapper","IconType","icon","iconColor","color","buildField","field","index","deleteView","actionIcon","trashIcon","fieldsList","convert","cap","reportingContainer","reportHeader","iconContainer","oval","iconHeader","reportContainer","or","drop","arrayOf","shape","oneOf","func"],"sources":["../../../src/molecule/drag-and-drop/upload-report.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyValidate as Validated,\n NovaLineContentEditionBin as TrashIcon,\n NovaCompositionCoorpacademyWarn as WarnIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport {pipe, split, last, map, head, getOr, isEmpty, includes} from 'lodash/fp';\nimport {EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport InputText from '../../atom/input-text';\n\nimport Button from '../../atom/button';\nimport style from './upload-report.css';\n\nconst SuccessMessage = ({message}) => (\n <div>\n <span className={style.emoticon}>🎉</span>\n <p className={style.message}>{message}</p>\n </div>\n);\n\nSuccessMessage.propTypes = {\n message: PropTypes.string.isRequired\n};\n\nconst ErrorMessage = ({message, buttonTitle, primaryColor}) => (\n <div>\n <div>\n <span className={style.emoticon}>🥺</span>\n <p className={style.message}>{message}</p>\n </div>\n <div>\n <Button\n data-name=\"cta\"\n type=\"link\"\n submitValue={buttonTitle}\n className={style.selectButton}\n style={{backgroundColor: primaryColor}}\n />\n </div>\n </div>\n);\n\nErrorMessage.propTypes = {\n message: PropTypes.string.isRequired,\n buttonTitle: PropTypes.string,\n primaryColor: PropTypes.string\n};\n\nexport const UploadReport = ({\n state,\n message,\n warningMessage,\n type: contentType,\n fields,\n mode = 'upload',\n orLabel,\n buttonTitle,\n primaryColor,\n onDelete\n}) => {\n const handleDelete = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n onDelete && onDelete(e);\n },\n [onDelete]\n );\n\n const stopPropagationHandler = useCallback(e => {\n e.stopPropagation();\n e.preventDefault();\n }, []);\n\n const showMessage = includes(state, ['success', 'error']);\n\n const fileName = pipe(head, getOr('', 'value'), split('/'), last)(fields);\n const fileView = fileName ? (\n <div className={style.fileWrapper}>\n <div className={style.fileName} title={fileName}>\n {fileName}\n </div>\n {isEmpty(warningMessage) ? (\n <Validated className={style.validateIcon} />\n ) : (\n <div className={style.warning}>\n <div className={style.showToolTip}>\n <span>{warningMessage}</span>\n </div>\n <div className={style.warningIcon}>\n <WarnIcon width={11} height={11} />\n </div>\n </div>\n )}\n </div>\n ) : (\n <div className={style.emptyFileWrapper} />\n );\n const IconType = EXTERNAL_CONTENT_ICONS[contentType].icon;\n const iconColor = EXTERNAL_CONTENT_ICONS[contentType].color;\n const buildField = (field, index) => <InputText {...field} key={index} theme={'cockpit'} />;\n const deleteView = onDelete ? (\n <div\n data-testid=\"trash-icon\"\n onClick={handleDelete}\n className={classnames(style.actionIcon, style.trashIcon)}\n >\n <TrashIcon width={20} height={20} />\n </div>\n ) : null;\n const fieldsList = map.convert({cap: false})(buildField, fields);\n return (\n <div className={style.reportingContainer}>\n <div className={style.reportHeader} onClick={stopPropagationHandler}>\n <div className={style.iconContainer} style={{backgroundColor: iconColor}}>\n <div className={style.oval}>\n <IconType className={style.iconHeader} style={{color: iconColor}} />\n </div>\n </div>\n {fileView}\n {deleteView}\n </div>\n <div className={style.reportContainer} onClick={stopPropagationHandler}>\n {state === 'success' ? <SuccessMessage message={message} /> : null}\n {state === 'error' ? (\n <ErrorMessage message={message} buttonTitle={buttonTitle} primaryColor={primaryColor} />\n ) : null}\n {mode === 'edit' && !showMessage ? <div>{fieldsList}</div> : null}\n {mode === 'edit' && !showMessage ? <span className={style.or}>{orLabel}</span> : null}\n </div>\n {!showMessage ? (\n <div className={style.drop}>\n <p className={style.message}>{message}</p>\n <Button\n data-name=\"cta\"\n type=\"link\"\n submitValue={buttonTitle}\n className={style.selectButton}\n style={{backgroundColor: primaryColor}}\n />\n </div>\n ) : null}\n </div>\n );\n};\n\nexport default UploadReport;\n\nUploadReport.propTypes = {\n state: PropTypes.string.isRequired,\n message: PropTypes.string.isRequired,\n warningMessage: PropTypes.string,\n orLabel: PropTypes.string,\n type: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text'])\n })\n ),\n mode: PropTypes.oneOf(['edit', 'upload']),\n buttonTitle: PropTypes.string,\n primaryColor: PropTypes.string,\n onDelete: PropTypes.func\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/draggable/index.js"],"names":[],"mappings":";AAQA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/draggable/index.js"],"names":[],"mappings":";AAQA,oDA6CC"}
|
|
@@ -35,6 +35,7 @@ const Draggable = props => {
|
|
|
35
35
|
}, [id, onDrop]);
|
|
36
36
|
return /*#__PURE__*/React.createElement("div", {
|
|
37
37
|
className: classnames(dragging ? style.dragging : null, style.draggable),
|
|
38
|
+
"data-testid": `draggable-${id}`,
|
|
38
39
|
onDragStart: dragStartHandler,
|
|
39
40
|
onDragOver: dragOverHandler,
|
|
40
41
|
onDragLeave: dragLeaveHandler,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useCallback","PropTypes","classnames","style","preventDefault","e","stopPropagation","Draggable","props","id","dragging","onDragStart","onDragOver","onDragLeave","onDrop","children","dragStartHandler","dragOverHandler","dragLeaveHandler","dropHandler","draggable","propTypes","string","bool","func","element"],"sources":["../../../src/molecule/draggable/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport style from './style.css';\n\nconst preventDefault = e => e.preventDefault();\nconst stopPropagation = e => e.stopPropagation();\n\nconst Draggable = props => {\n const {id, dragging = false, onDragStart, onDragOver, onDragLeave, onDrop, children} = props;\n\n const dragStartHandler = useCallback(\n e => {\n stopPropagation(e);\n onDragStart(id);\n },\n [id, onDragStart]\n );\n const dragOverHandler = useCallback(\n e => {\n preventDefault(e);\n onDragOver(id);\n },\n [id, onDragOver]\n );\n const dragLeaveHandler = useCallback(\n e => {\n preventDefault(e);\n onDragLeave(id);\n },\n [id, onDragLeave]\n );\n const dropHandler = useCallback(\n e => {\n preventDefault(e);\n onDrop(id);\n },\n [id, onDrop]\n );\n\n return (\n <div\n className={classnames(dragging ? style.dragging : null, style.draggable)}\n onDragStart={dragStartHandler}\n onDragOver={dragOverHandler}\n onDragLeave={dragLeaveHandler}\n onDrop={dropHandler}\n draggable\n >\n {children}\n </div>\n );\n};\nDraggable.propTypes = {\n id: PropTypes.string,\n dragging: PropTypes.bool,\n onDragStart: PropTypes.func,\n onDragOver: PropTypes.func,\n onDragLeave: PropTypes.func,\n onDrop: PropTypes.func,\n children: PropTypes.element\n};\n\nexport default Draggable;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAeC,WAAf,QAAiC,OAAjC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,cAAc,GAAGC,CAAC,IAAIA,CAAC,CAACD,cAAF,EAA5B;;AACA,MAAME,eAAe,GAAGD,CAAC,IAAIA,CAAC,CAACC,eAAF,EAA7B;;AAEA,MAAMC,SAAS,GAAGC,KAAK,IAAI;EACzB,MAAM;IAACC,EAAD;IAAKC,QAAQ,GAAG,KAAhB;IAAuBC,WAAvB;IAAoCC,UAApC;IAAgDC,WAAhD;IAA6DC,MAA7D;IAAqEC;EAArE,IAAiFP,KAAvF;EAEA,MAAMQ,gBAAgB,GAAGhB,WAAW,CAClCK,CAAC,IAAI;IACHC,eAAe,CAACD,CAAD,CAAf;IACAM,WAAW,CAACF,EAAD,CAAX;EACD,CAJiC,EAKlC,CAACA,EAAD,EAAKE,WAAL,CALkC,CAApC;EAOA,MAAMM,eAAe,GAAGjB,WAAW,CACjCK,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAO,UAAU,CAACH,EAAD,CAAV;EACD,CAJgC,EAKjC,CAACA,EAAD,EAAKG,UAAL,CALiC,CAAnC;EAOA,MAAMM,gBAAgB,GAAGlB,WAAW,CAClCK,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAQ,WAAW,CAACJ,EAAD,CAAX;EACD,CAJiC,EAKlC,CAACA,EAAD,EAAKI,WAAL,CALkC,CAApC;EAOA,MAAMM,WAAW,GAAGnB,WAAW,CAC7BK,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAS,MAAM,CAACL,EAAD,CAAN;EACD,CAJ4B,EAK7B,CAACA,EAAD,EAAKK,MAAL,CAL6B,CAA/B;EAQA,oBACE;IACE,SAAS,EAAEZ,UAAU,CAACQ,QAAQ,GAAGP,KAAK,CAACO,QAAT,GAAoB,IAA7B,EAAmCP,KAAK,CAACiB,SAAzC,CADvB;IAEE,
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","PropTypes","classnames","style","preventDefault","e","stopPropagation","Draggable","props","id","dragging","onDragStart","onDragOver","onDragLeave","onDrop","children","dragStartHandler","dragOverHandler","dragLeaveHandler","dropHandler","draggable","propTypes","string","bool","func","element"],"sources":["../../../src/molecule/draggable/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport style from './style.css';\n\nconst preventDefault = e => e.preventDefault();\nconst stopPropagation = e => e.stopPropagation();\n\nconst Draggable = props => {\n const {id, dragging = false, onDragStart, onDragOver, onDragLeave, onDrop, children} = props;\n\n const dragStartHandler = useCallback(\n e => {\n stopPropagation(e);\n onDragStart(id);\n },\n [id, onDragStart]\n );\n const dragOverHandler = useCallback(\n e => {\n preventDefault(e);\n onDragOver(id);\n },\n [id, onDragOver]\n );\n const dragLeaveHandler = useCallback(\n e => {\n preventDefault(e);\n onDragLeave(id);\n },\n [id, onDragLeave]\n );\n const dropHandler = useCallback(\n e => {\n preventDefault(e);\n onDrop(id);\n },\n [id, onDrop]\n );\n\n return (\n <div\n className={classnames(dragging ? style.dragging : null, style.draggable)}\n data-testid={`draggable-${id}`}\n onDragStart={dragStartHandler}\n onDragOver={dragOverHandler}\n onDragLeave={dragLeaveHandler}\n onDrop={dropHandler}\n draggable\n >\n {children}\n </div>\n );\n};\nDraggable.propTypes = {\n id: PropTypes.string,\n dragging: PropTypes.bool,\n onDragStart: PropTypes.func,\n onDragOver: PropTypes.func,\n onDragLeave: PropTypes.func,\n onDrop: PropTypes.func,\n children: PropTypes.element\n};\n\nexport default Draggable;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAeC,WAAf,QAAiC,OAAjC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,KAAP,MAAkB,aAAlB;;AAEA,MAAMC,cAAc,GAAGC,CAAC,IAAIA,CAAC,CAACD,cAAF,EAA5B;;AACA,MAAME,eAAe,GAAGD,CAAC,IAAIA,CAAC,CAACC,eAAF,EAA7B;;AAEA,MAAMC,SAAS,GAAGC,KAAK,IAAI;EACzB,MAAM;IAACC,EAAD;IAAKC,QAAQ,GAAG,KAAhB;IAAuBC,WAAvB;IAAoCC,UAApC;IAAgDC,WAAhD;IAA6DC,MAA7D;IAAqEC;EAArE,IAAiFP,KAAvF;EAEA,MAAMQ,gBAAgB,GAAGhB,WAAW,CAClCK,CAAC,IAAI;IACHC,eAAe,CAACD,CAAD,CAAf;IACAM,WAAW,CAACF,EAAD,CAAX;EACD,CAJiC,EAKlC,CAACA,EAAD,EAAKE,WAAL,CALkC,CAApC;EAOA,MAAMM,eAAe,GAAGjB,WAAW,CACjCK,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAO,UAAU,CAACH,EAAD,CAAV;EACD,CAJgC,EAKjC,CAACA,EAAD,EAAKG,UAAL,CALiC,CAAnC;EAOA,MAAMM,gBAAgB,GAAGlB,WAAW,CAClCK,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAQ,WAAW,CAACJ,EAAD,CAAX;EACD,CAJiC,EAKlC,CAACA,EAAD,EAAKI,WAAL,CALkC,CAApC;EAOA,MAAMM,WAAW,GAAGnB,WAAW,CAC7BK,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAS,MAAM,CAACL,EAAD,CAAN;EACD,CAJ4B,EAK7B,CAACA,EAAD,EAAKK,MAAL,CAL6B,CAA/B;EAQA,oBACE;IACE,SAAS,EAAEZ,UAAU,CAACQ,QAAQ,GAAGP,KAAK,CAACO,QAAT,GAAoB,IAA7B,EAAmCP,KAAK,CAACiB,SAAzC,CADvB;IAEE,eAAc,aAAYX,EAAG,EAF/B;IAGE,WAAW,EAAEO,gBAHf;IAIE,UAAU,EAAEC,eAJd;IAKE,WAAW,EAAEC,gBALf;IAME,MAAM,EAAEC,WANV;IAOE,SAAS;EAPX,GASGJ,QATH,CADF;AAaD,CA7CD;;AA8CAR,SAAS,CAACc,SAAV,2CAAsB;EACpBZ,EAAE,EAAER,SAAS,CAACqB,MADM;EAEpBZ,QAAQ,EAAET,SAAS,CAACsB,IAFA;EAGpBZ,WAAW,EAAEV,SAAS,CAACuB,IAHH;EAIpBZ,UAAU,EAAEX,SAAS,CAACuB,IAJF;EAKpBX,WAAW,EAAEZ,SAAS,CAACuB,IALH;EAMpBV,MAAM,EAAEb,SAAS,CAACuB,IANE;EAOpBT,QAAQ,EAAEd,SAAS,CAACwB;AAPA,CAAtB;AAUA,eAAelB,SAAf"}
|
|
@@ -27,7 +27,8 @@ const SlidesHeader = (props = {}, context = undefined) => {
|
|
|
27
27
|
subcontent: subcontent,
|
|
28
28
|
mode: mode
|
|
29
29
|
}) : null, type === HEADER_TYPE.MICROLEARNING ? /*#__PURE__*/React.createElement(Microlearning, {
|
|
30
|
-
content: content
|
|
30
|
+
content: content,
|
|
31
|
+
mode: mode
|
|
31
32
|
}) : null, lives ? /*#__PURE__*/React.createElement(Lives, {
|
|
32
33
|
count: lives.count
|
|
33
34
|
}) : null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","Link","Learner","Microlearning","Lives","style","HEADER_TYPE","LEARNER","MICROLEARNING","SlidesHeader","props","context","undefined","type","content","subcontent","lives","mode","wrapper","count","propTypes","oneOf","shape","href","title","string","isRequired","details"],"sources":["../../../../../../src/template/app-player/player/slides/header/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Link from '../../../../../atom/link';\nimport Learner from './learner';\nimport Microlearning from './microlearning';\nimport Lives from './lives';\nimport style from './style.css'; // eslint-disable-line css-modules/no-unused-class\n\nconst HEADER_TYPE = {\n LEARNER: 'learner',\n MICROLEARNING: 'microlearning'\n};\n\nconst SlidesHeader = (props = {}, context = undefined) => {\n const {type, content, subcontent, lives, mode} = props;\n\n return (\n <div data-name=\"slidesHeader\" className={style.wrapper}>\n {type === HEADER_TYPE.LEARNER ? (\n <Learner content={content} subcontent={subcontent} mode={mode} />\n ) : null}\n {type === HEADER_TYPE.MICROLEARNING ? <Microlearning content={content} /> : null}\n {lives ? <Lives count={lives.count} /> : null}\n </div>\n );\n};\n\nSlidesHeader.propTypes = {\n type: PropTypes.oneOf([HEADER_TYPE.LEARNER, HEADER_TYPE.MICROLEARNING]),\n content: PropTypes.shape({\n href: Link.propTypes.href,\n title: PropTypes.string.isRequired,\n details: PropTypes.string\n }),\n subcontent: PropTypes.shape({\n title: PropTypes.string,\n details: PropTypes.string\n }),\n lives: PropTypes.shape(Lives.propTypes),\n mode: PropTypes.string\n};\n\nexport default SlidesHeader;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,0BAAjB;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,OAAOC,aAAP,MAA0B,iBAA1B;AACA,OAAOC,KAAP,MAAkB,SAAlB;AACA,OAAOC,KAAP,MAAkB,aAAlB,C,CAAiC;;AAEjC,MAAMC,WAAW,GAAG;EAClBC,OAAO,EAAE,SADS;EAElBC,aAAa,EAAE;AAFG,CAApB;;AAKA,MAAMC,YAAY,GAAG,CAACC,KAAK,GAAG,EAAT,EAAaC,OAAO,GAAGC,SAAvB,KAAqC;EACxD,MAAM;IAACC,IAAD;IAAOC,OAAP;IAAgBC,UAAhB;IAA4BC,KAA5B;IAAmCC;EAAnC,IAA2CP,KAAjD;EAEA,oBACE;IAAK,aAAU,cAAf;IAA8B,SAAS,EAAEL,KAAK,CAACa;EAA/C,GACGL,IAAI,KAAKP,WAAW,CAACC,OAArB,gBACC,oBAAC,OAAD;IAAS,OAAO,EAAEO,OAAlB;IAA2B,UAAU,EAAEC,UAAvC;IAAmD,IAAI,EAAEE;EAAzD,EADD,GAEG,IAHN,EAIGJ,IAAI,KAAKP,WAAW,CAACE,aAArB,gBAAqC,oBAAC,aAAD;IAAe,OAAO,EAAEM;
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","Link","Learner","Microlearning","Lives","style","HEADER_TYPE","LEARNER","MICROLEARNING","SlidesHeader","props","context","undefined","type","content","subcontent","lives","mode","wrapper","count","propTypes","oneOf","shape","href","title","string","isRequired","details"],"sources":["../../../../../../src/template/app-player/player/slides/header/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Link from '../../../../../atom/link';\nimport Learner from './learner';\nimport Microlearning from './microlearning';\nimport Lives from './lives';\nimport style from './style.css'; // eslint-disable-line css-modules/no-unused-class\n\nconst HEADER_TYPE = {\n LEARNER: 'learner',\n MICROLEARNING: 'microlearning'\n};\n\nconst SlidesHeader = (props = {}, context = undefined) => {\n const {type, content, subcontent, lives, mode} = props;\n\n return (\n <div data-name=\"slidesHeader\" className={style.wrapper}>\n {type === HEADER_TYPE.LEARNER ? (\n <Learner content={content} subcontent={subcontent} mode={mode} />\n ) : null}\n {type === HEADER_TYPE.MICROLEARNING ? <Microlearning content={content} mode={mode} /> : null}\n {lives ? <Lives count={lives.count} /> : null}\n </div>\n );\n};\n\nSlidesHeader.propTypes = {\n type: PropTypes.oneOf([HEADER_TYPE.LEARNER, HEADER_TYPE.MICROLEARNING]),\n content: PropTypes.shape({\n href: Link.propTypes.href,\n title: PropTypes.string.isRequired,\n details: PropTypes.string\n }),\n subcontent: PropTypes.shape({\n title: PropTypes.string,\n details: PropTypes.string\n }),\n lives: PropTypes.shape(Lives.propTypes),\n mode: PropTypes.string\n};\n\nexport default SlidesHeader;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,0BAAjB;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,OAAOC,aAAP,MAA0B,iBAA1B;AACA,OAAOC,KAAP,MAAkB,SAAlB;AACA,OAAOC,KAAP,MAAkB,aAAlB,C,CAAiC;;AAEjC,MAAMC,WAAW,GAAG;EAClBC,OAAO,EAAE,SADS;EAElBC,aAAa,EAAE;AAFG,CAApB;;AAKA,MAAMC,YAAY,GAAG,CAACC,KAAK,GAAG,EAAT,EAAaC,OAAO,GAAGC,SAAvB,KAAqC;EACxD,MAAM;IAACC,IAAD;IAAOC,OAAP;IAAgBC,UAAhB;IAA4BC,KAA5B;IAAmCC;EAAnC,IAA2CP,KAAjD;EAEA,oBACE;IAAK,aAAU,cAAf;IAA8B,SAAS,EAAEL,KAAK,CAACa;EAA/C,GACGL,IAAI,KAAKP,WAAW,CAACC,OAArB,gBACC,oBAAC,OAAD;IAAS,OAAO,EAAEO,OAAlB;IAA2B,UAAU,EAAEC,UAAvC;IAAmD,IAAI,EAAEE;EAAzD,EADD,GAEG,IAHN,EAIGJ,IAAI,KAAKP,WAAW,CAACE,aAArB,gBAAqC,oBAAC,aAAD;IAAe,OAAO,EAAEM,OAAxB;IAAiC,IAAI,EAAEG;EAAvC,EAArC,GAAuF,IAJ1F,EAKGD,KAAK,gBAAG,oBAAC,KAAD;IAAO,KAAK,EAAEA,KAAK,CAACG;EAApB,EAAH,GAAmC,IAL3C,CADF;AASD,CAZD;;AAcAV,YAAY,CAACW,SAAb,2CAAyB;EACvBP,IAAI,EAAEb,SAAS,CAACqB,KAAV,CAAgB,CAACf,WAAW,CAACC,OAAb,EAAsBD,WAAW,CAACE,aAAlC,CAAhB,CADiB;EAEvBM,OAAO,EAAEd,SAAS,CAACsB,KAAV,CAAgB;IACvBC,IAAI,EAAEtB,IAAI,CAACmB,SAAL,CAAeG,IADE;IAEvBC,KAAK,EAAExB,SAAS,CAACyB,MAAV,CAAiBC,UAFD;IAGvBC,OAAO,EAAE3B,SAAS,CAACyB;EAHI,CAAhB,CAFc;EAOvBV,UAAU,EAAEf,SAAS,CAACsB,KAAV,CAAgB;IAC1BE,KAAK,EAAExB,SAAS,CAACyB,MADS;IAE1BE,OAAO,EAAE3B,SAAS,CAACyB;EAFO,CAAhB,CAPW;EAWvBT,KAAK,EAAEhB,SAAS,CAACsB,KAAV,CAAgBlB,KAAK,CAACgB,SAAtB,CAXgB;EAYvBH,IAAI,EAAEjB,SAAS,CAACyB;AAZO,CAAzB;AAeA,eAAehB,YAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"microlearning.d.ts","sourceRoot":"","sources":["../../../../../../src/template/app-player/player/slides/header/microlearning.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"microlearning.d.ts","sourceRoot":"","sources":["../../../../../../src/template/app-player/player/slides/header/microlearning.js"],"names":[],"mappings":";AAqCA,4EAGC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
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
|
+
|
|
1
3
|
import React from 'react';
|
|
2
4
|
import PropTypes from 'prop-types';
|
|
3
5
|
import classnames from 'classnames';
|
|
@@ -7,38 +9,52 @@ import style from './microlearning.css';
|
|
|
7
9
|
|
|
8
10
|
const Content = ({
|
|
9
11
|
onClick,
|
|
10
|
-
title
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
12
|
+
title,
|
|
13
|
+
mode
|
|
14
|
+
}, context) => {
|
|
15
|
+
const content = /*#__PURE__*/React.createElement("div", {
|
|
16
|
+
"data-name": "contentTitle",
|
|
17
|
+
className: classnames(style.contentTitle, style.innerHTML) // eslint-disable-next-line react/no-danger
|
|
18
|
+
,
|
|
19
|
+
dangerouslySetInnerHTML: {
|
|
20
|
+
__html: title
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
if (mode === 'scorm') return /*#__PURE__*/React.createElement("div", {
|
|
24
|
+
className: style.contentScorm
|
|
25
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
26
|
+
className: style.backIcon
|
|
27
|
+
}), content);
|
|
28
|
+
return /*#__PURE__*/React.createElement(Link, {
|
|
29
|
+
onClick: onClick,
|
|
30
|
+
className: style.content
|
|
31
|
+
}, /*#__PURE__*/React.createElement(BackIcon, {
|
|
32
|
+
className: style.backIcon
|
|
33
|
+
}), content);
|
|
34
|
+
};
|
|
24
35
|
|
|
25
36
|
Content.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
26
37
|
onClick: Link.propTypes.onClick,
|
|
27
|
-
title: PropTypes.node
|
|
38
|
+
title: PropTypes.node,
|
|
39
|
+
mode: PropTypes.string
|
|
28
40
|
} : {};
|
|
29
41
|
|
|
30
42
|
const MicrolearningHeader = (props, context) => {
|
|
31
43
|
const {
|
|
32
|
-
content
|
|
44
|
+
content,
|
|
45
|
+
mode
|
|
33
46
|
} = props;
|
|
34
|
-
return /*#__PURE__*/React.createElement(Content, content
|
|
47
|
+
return /*#__PURE__*/React.createElement(Content, _extends({}, content, {
|
|
48
|
+
mode: mode
|
|
49
|
+
}));
|
|
35
50
|
};
|
|
36
51
|
|
|
37
52
|
MicrolearningHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
38
53
|
content: PropTypes.shape({
|
|
39
54
|
onClick: Link.propTypes.onClick,
|
|
40
55
|
title: PropTypes.string.isRequired
|
|
41
|
-
})
|
|
56
|
+
}),
|
|
57
|
+
mode: PropTypes.string
|
|
42
58
|
} : {};
|
|
43
59
|
export default MicrolearningHeader;
|
|
44
60
|
//# sourceMappingURL=microlearning.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"microlearning.js","names":["React","PropTypes","classnames","NovaCompositionNavigationArrowLeft","BackIcon","Link","style","Content","onClick","title","
|
|
1
|
+
{"version":3,"file":"microlearning.js","names":["React","PropTypes","classnames","NovaCompositionNavigationArrowLeft","BackIcon","Link","style","Content","onClick","title","mode","context","content","contentTitle","innerHTML","__html","contentScorm","backIcon","propTypes","node","string","MicrolearningHeader","props","shape","isRequired"],"sources":["../../../../../../src/template/app-player/player/slides/header/microlearning.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaCompositionNavigationArrowLeft as BackIcon} from '@coorpacademy/nova-icons';\nimport Link from '../../../../../atom/link';\nimport style from './microlearning.css';\n\nconst Content = ({onClick, title, mode}, context) => {\n const content = (\n <div\n data-name=\"contentTitle\"\n className={classnames(style.contentTitle, style.innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n if (mode === 'scorm')\n return (\n <div className={style.contentScorm}>\n <div className={style.backIcon} />\n {content}\n </div>\n );\n return (\n <Link onClick={onClick} className={style.content}>\n <BackIcon className={style.backIcon} />\n {content}\n </Link>\n );\n};\n\nContent.propTypes = {\n onClick: Link.propTypes.onClick,\n title: PropTypes.node,\n mode: PropTypes.string\n};\n\nconst MicrolearningHeader = (props, context) => {\n const {content, mode} = props;\n return <Content {...content} mode={mode} />;\n};\n\nMicrolearningHeader.propTypes = {\n content: PropTypes.shape({\n onClick: Link.propTypes.onClick,\n title: PropTypes.string.isRequired\n }),\n mode: PropTypes.string\n};\n\nexport default MicrolearningHeader;\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAAQC,kCAAkC,IAAIC,QAA9C,QAA6D,0BAA7D;AACA,OAAOC,IAAP,MAAiB,0BAAjB;AACA,OAAOC,KAAP,MAAkB,qBAAlB;;AAEA,MAAMC,OAAO,GAAG,CAAC;EAACC,OAAD;EAAUC,KAAV;EAAiBC;AAAjB,CAAD,EAAyBC,OAAzB,KAAqC;EACnD,MAAMC,OAAO,gBACX;IACE,aAAU,cADZ;IAEE,SAAS,EAAEV,UAAU,CAACI,KAAK,CAACO,YAAP,EAAqBP,KAAK,CAACQ,SAA3B,CAFvB,CAGE;IAHF;IAIE,uBAAuB,EAAE;MAACC,MAAM,EAAEN;IAAT;EAJ3B,EADF;EAQA,IAAIC,IAAI,KAAK,OAAb,EACE,oBACE;IAAK,SAAS,EAAEJ,KAAK,CAACU;EAAtB,gBACE;IAAK,SAAS,EAAEV,KAAK,CAACW;EAAtB,EADF,EAEGL,OAFH,CADF;EAMF,oBACE,oBAAC,IAAD;IAAM,OAAO,EAAEJ,OAAf;IAAwB,SAAS,EAAEF,KAAK,CAACM;EAAzC,gBACE,oBAAC,QAAD;IAAU,SAAS,EAAEN,KAAK,CAACW;EAA3B,EADF,EAEGL,OAFH,CADF;AAMD,CAtBD;;AAwBAL,OAAO,CAACW,SAAR,2CAAoB;EAClBV,OAAO,EAAEH,IAAI,CAACa,SAAL,CAAeV,OADN;EAElBC,KAAK,EAAER,SAAS,CAACkB,IAFC;EAGlBT,IAAI,EAAET,SAAS,CAACmB;AAHE,CAApB;;AAMA,MAAMC,mBAAmB,GAAG,CAACC,KAAD,EAAQX,OAAR,KAAoB;EAC9C,MAAM;IAACC,OAAD;IAAUF;EAAV,IAAkBY,KAAxB;EACA,oBAAO,oBAAC,OAAD,eAAaV,OAAb;IAAsB,IAAI,EAAEF;EAA5B,GAAP;AACD,CAHD;;AAKAW,mBAAmB,CAACH,SAApB,2CAAgC;EAC9BN,OAAO,EAAEX,SAAS,CAACsB,KAAV,CAAgB;IACvBf,OAAO,EAAEH,IAAI,CAACa,SAAL,CAAeV,OADD;IAEvBC,KAAK,EAAER,SAAS,CAACmB,MAAV,CAAiBI;EAFD,CAAhB,CADqB;EAK9Bd,IAAI,EAAET,SAAS,CAACmB;AALc,CAAhC;AAQA,eAAeC,mBAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/audio/index.js"],"names":[],"mappings":";AAQA;IACE;;;;;MAKE;IAEF;;;;;;;;;;;;;;;;;;;;;;MAEE;IAEF,sCAKC;IAeD,yBAGC;IApBC,kBAAwB;IAa1B,iCAEE;IAXF,+CAGC;IAED,2BAEC;IAWD,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/audio/index.js"],"names":[],"mappings":";AAQA;IACE;;;;;MAKE;IAEF;;;;;;;;;;;;;;;;;;;;;;MAEE;IAEF,sCAKC;IAeD,yBAGC;IApBC,kBAAwB;IAa1B,iCAEE;IAXF,+CAGC;IAED,2BAEC;IAWD,sBAgCC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Audio","React","Component","constructor","props","context","setAudio","element","audioElement","handlePlay","bind","shouldComponentUpdate","nextProps","mediaUrl","componentDidUpdate","load","e","onPlay","render","description","poster","skin","white","style","frame","backgroundImage","color","icon","classnames","innerHTML","__html","audio","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","func"],"sources":["../../../src/molecule/audio/index.js"],"sourcesContent":["import React from 'react';\nimport {get} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaCompositionCoorpacademyMicrophone as PodcastIcon} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport style from './style.css';\n\nclass Audio extends React.Component {\n static propTypes = {\n description: PropTypes.string,\n mediaUrl: PropTypes.string,\n poster: PropTypes.string,\n onPlay: PropTypes.func\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin\n };\n\n constructor(props, context) {\n super(props, context);\n this.handlePlay = this.handlePlay.bind(this);\n this.audioElement = null;\n this.setAudio = this.setAudio.bind(this);\n }\n\n shouldComponentUpdate(nextProps) {\n const {mediaUrl} = this.props;\n return nextProps.mediaUrl !== mediaUrl;\n }\n\n componentDidUpdate() {\n this.audioElement.load();\n }\n\n setAudio = element => {\n this.audioElement = element;\n };\n\n handlePlay(e) {\n const {onPlay} = this.props;\n if (onPlay) onPlay(e);\n }\n\n render() {\n const {description, mediaUrl, poster} = this.props;\n const {skin} = this.context;\n\n const white = get('common.white', skin);\n return (\n <div className={style.frame} style={{backgroundImage: `url(${poster})`}}>\n <PodcastIcon style={{color: white}} className={style.icon} />\n {description ? (\n <div\n className={classnames(style.description, style.innerHTML)}\n data-name=\"audioDescription\"\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: description}}\n />\n ) : null}\n <audio\n className={style.audio}\n controls\n controlsList=\"nodownload\"\n ref={this.setAudio}\n autoPlay=\"\"\n onPlay={this.handlePlay}\n name=\"media\"\n data-name=\"audio\"\n preload=\"auto\"\n >\n <source src={mediaUrl} />\n </audio>\n </div>\n );\n }\n}\n\nexport default Audio;\n"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,MAAMA,KAAN,SAAoBC,cAAA,CAAMC,SAA1B,CAAoC;EAYlCC,WAAW,CAACC,KAAD,EAAQC,OAAR,EAAiB;IAC1B,MAAMD,KAAN,EAAaC,OAAb;;IAD0B,KAgB5BC,QAhB4B,GAgBjBC,OAAO,IAAI;MACpB,KAAKC,YAAL,GAAoBD,OAApB;IACD,CAlB2B;;IAE1B,KAAKE,UAAL,GAAkB,KAAKA,UAAL,CAAgBC,IAAhB,CAAqB,IAArB,CAAlB;IACA,KAAKF,YAAL,GAAoB,IAApB;IACA,KAAKF,QAAL,GAAgB,KAAKA,QAAL,CAAcI,IAAd,CAAmB,IAAnB,CAAhB;EACD;;EAEDC,qBAAqB,CAACC,SAAD,EAAY;IAC/B,MAAM;MAACC;IAAD,IAAa,KAAKT,KAAxB;IACA,OAAOQ,SAAS,CAACC,QAAV,KAAuBA,QAA9B;EACD;;EAEDC,kBAAkB,GAAG;IACnB,KAAKN,YAAL,CAAkBO,IAAlB;EACD;;EAMDN,UAAU,CAACO,CAAD,EAAI;IACZ,MAAM;MAACC;IAAD,IAAW,KAAKb,KAAtB;IACA,IAAIa,MAAJ,EAAYA,MAAM,CAACD,CAAD,CAAN;EACb;;EAEDE,MAAM,GAAG;IACP,MAAM;MAACC,WAAD;MAAcN,QAAd;MAAwBO;IAAxB,IAAkC,KAAKhB,KAA7C;IACA,MAAM;MAACiB;IAAD,IAAS,KAAKhB,OAApB;IAEA,MAAMiB,KAAK,GAAG,mBAAI,cAAJ,EAAoBD,IAApB,CAAd;IACA,oBACE;MAAK,SAAS,EAAEE,cAAA,CAAMC,KAAtB;MAA6B,KAAK,EAAE;QAACC,eAAe,EAAG,OAAML,MAAO;MAAhC;IAApC,gBACE,6BAAC,gDAAD;MAAa,KAAK,EAAE;QAACM,KAAK,EAAEJ;MAAR,CAApB;MAAoC,SAAS,EAAEC,cAAA,CAAMI;IAArD,EADF,EAEGR,WAAW,gBACV;MACE,SAAS,EAAE,IAAAS,mBAAA,EAAWL,cAAA,CAAMJ,WAAjB,EAA8BI,cAAA,CAAMM,SAApC,CADb;MAEE,aAAU,kBAFZ,CAGE;MAHF;MAIE,uBAAuB,EAAE;QAACC,MAAM,EAAEX;MAAT;IAJ3B,EADU,GAOR,IATN,eAUE;MACE,SAAS,EAAEI,cAAA,CAAMQ,KADnB;MAEE,QAAQ,MAFV;MAGE,YAAY,EAAC,YAHf;MAIE,GAAG,EAAE,KAAKzB,QAJZ;MAKE,QAAQ,EAAC,EALX;MAME,MAAM,EAAE,KAAKG,UANf;MAOE,IAAI,EAAC,OAPP;MAQE,
|
|
1
|
+
{"version":3,"file":"index.js","names":["Audio","React","Component","constructor","props","context","setAudio","element","audioElement","handlePlay","bind","shouldComponentUpdate","nextProps","mediaUrl","componentDidUpdate","load","e","onPlay","render","description","poster","skin","white","style","frame","backgroundImage","color","icon","classnames","innerHTML","__html","audio","contextTypes","Provider","childContextTypes","propTypes","PropTypes","string","func"],"sources":["../../../src/molecule/audio/index.js"],"sourcesContent":["import React from 'react';\nimport {get} from 'lodash/fp';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaCompositionCoorpacademyMicrophone as PodcastIcon} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport style from './style.css';\n\nclass Audio extends React.Component {\n static propTypes = {\n description: PropTypes.string,\n mediaUrl: PropTypes.string,\n poster: PropTypes.string,\n onPlay: PropTypes.func\n };\n\n static contextTypes = {\n skin: Provider.childContextTypes.skin\n };\n\n constructor(props, context) {\n super(props, context);\n this.handlePlay = this.handlePlay.bind(this);\n this.audioElement = null;\n this.setAudio = this.setAudio.bind(this);\n }\n\n shouldComponentUpdate(nextProps) {\n const {mediaUrl} = this.props;\n return nextProps.mediaUrl !== mediaUrl;\n }\n\n componentDidUpdate() {\n this.audioElement.load();\n }\n\n setAudio = element => {\n this.audioElement = element;\n };\n\n handlePlay(e) {\n const {onPlay} = this.props;\n if (onPlay) onPlay(e);\n }\n\n render() {\n const {description, mediaUrl, poster} = this.props;\n const {skin} = this.context;\n\n const white = get('common.white', skin);\n return (\n <div className={style.frame} style={{backgroundImage: `url(${poster})`}}>\n <PodcastIcon style={{color: white}} className={style.icon} />\n {description ? (\n <div\n className={classnames(style.description, style.innerHTML)}\n data-name=\"audioDescription\"\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: description}}\n />\n ) : null}\n <audio\n className={style.audio}\n controls\n controlsList=\"nodownload\"\n ref={this.setAudio}\n autoPlay=\"\"\n onPlay={this.handlePlay}\n name=\"media\"\n data-testid=\"audio\"\n data-name=\"audio\"\n preload=\"auto\"\n >\n <source src={mediaUrl} />\n </audio>\n </div>\n );\n }\n}\n\nexport default Audio;\n"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,MAAMA,KAAN,SAAoBC,cAAA,CAAMC,SAA1B,CAAoC;EAYlCC,WAAW,CAACC,KAAD,EAAQC,OAAR,EAAiB;IAC1B,MAAMD,KAAN,EAAaC,OAAb;;IAD0B,KAgB5BC,QAhB4B,GAgBjBC,OAAO,IAAI;MACpB,KAAKC,YAAL,GAAoBD,OAApB;IACD,CAlB2B;;IAE1B,KAAKE,UAAL,GAAkB,KAAKA,UAAL,CAAgBC,IAAhB,CAAqB,IAArB,CAAlB;IACA,KAAKF,YAAL,GAAoB,IAApB;IACA,KAAKF,QAAL,GAAgB,KAAKA,QAAL,CAAcI,IAAd,CAAmB,IAAnB,CAAhB;EACD;;EAEDC,qBAAqB,CAACC,SAAD,EAAY;IAC/B,MAAM;MAACC;IAAD,IAAa,KAAKT,KAAxB;IACA,OAAOQ,SAAS,CAACC,QAAV,KAAuBA,QAA9B;EACD;;EAEDC,kBAAkB,GAAG;IACnB,KAAKN,YAAL,CAAkBO,IAAlB;EACD;;EAMDN,UAAU,CAACO,CAAD,EAAI;IACZ,MAAM;MAACC;IAAD,IAAW,KAAKb,KAAtB;IACA,IAAIa,MAAJ,EAAYA,MAAM,CAACD,CAAD,CAAN;EACb;;EAEDE,MAAM,GAAG;IACP,MAAM;MAACC,WAAD;MAAcN,QAAd;MAAwBO;IAAxB,IAAkC,KAAKhB,KAA7C;IACA,MAAM;MAACiB;IAAD,IAAS,KAAKhB,OAApB;IAEA,MAAMiB,KAAK,GAAG,mBAAI,cAAJ,EAAoBD,IAApB,CAAd;IACA,oBACE;MAAK,SAAS,EAAEE,cAAA,CAAMC,KAAtB;MAA6B,KAAK,EAAE;QAACC,eAAe,EAAG,OAAML,MAAO;MAAhC;IAApC,gBACE,6BAAC,gDAAD;MAAa,KAAK,EAAE;QAACM,KAAK,EAAEJ;MAAR,CAApB;MAAoC,SAAS,EAAEC,cAAA,CAAMI;IAArD,EADF,EAEGR,WAAW,gBACV;MACE,SAAS,EAAE,IAAAS,mBAAA,EAAWL,cAAA,CAAMJ,WAAjB,EAA8BI,cAAA,CAAMM,SAApC,CADb;MAEE,aAAU,kBAFZ,CAGE;MAHF;MAIE,uBAAuB,EAAE;QAACC,MAAM,EAAEX;MAAT;IAJ3B,EADU,GAOR,IATN,eAUE;MACE,SAAS,EAAEI,cAAA,CAAMQ,KADnB;MAEE,QAAQ,MAFV;MAGE,YAAY,EAAC,YAHf;MAIE,GAAG,EAAE,KAAKzB,QAJZ;MAKE,QAAQ,EAAC,EALX;MAME,MAAM,EAAE,KAAKG,UANf;MAOE,IAAI,EAAC,OAPP;MAQE,eAAY,OARd;MASE,aAAU,OATZ;MAUE,OAAO,EAAC;IAVV,gBAYE;MAAQ,GAAG,EAAEI;IAAb,EAZF,CAVF,CADF;EA2BD;;AArEiC;;AAA9Bb,K,CAQGgC,Y,GAAe;EACpBX,IAAI,EAAEY,iBAAA,CAASC,iBAAT,CAA2Bb;AADb,C;AARlBrB,K,CACGmC,S,2CAAY;EACjBhB,WAAW,EAAEiB,kBAAA,CAAUC,MADN;EAEjBxB,QAAQ,EAAEuB,kBAAA,CAAUC,MAFH;EAGjBjB,MAAM,EAAEgB,kBAAA,CAAUC,MAHD;EAIjBpB,MAAM,EAAEmB,kBAAA,CAAUE;AAJD,C;eAuENtC,K"}
|
|
@@ -65,7 +65,8 @@ const DragAndDrop = (props, context) => {
|
|
|
65
65
|
const loading = state === 'loading';
|
|
66
66
|
return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
|
|
67
67
|
onClick: handleBack,
|
|
68
|
-
className: _style.default.back
|
|
68
|
+
className: _style.default.back,
|
|
69
|
+
"data-testid": "back"
|
|
69
70
|
}, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionNavigationArrowLeft, {
|
|
70
71
|
width: 12,
|
|
71
72
|
height: 12,
|
|
@@ -107,6 +108,7 @@ const DragAndDrop = (props, context) => {
|
|
|
107
108
|
|
|
108
109
|
const disableFileInput = state === 'success';
|
|
109
110
|
return /*#__PURE__*/_react.default.createElement("div", _extends({}, getRootProps(), {
|
|
111
|
+
"data-testid": "drop-zone",
|
|
110
112
|
className: _style.default.wrapper
|
|
111
113
|
}), /*#__PURE__*/_react.default.createElement("input", _extends({}, getInputProps(), {
|
|
112
114
|
disabled: disableFileInput
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["DragAndDrop","props","context","skin","primaryColor","getOr","state","title","message","warningMessage","mode","dragAndDropMessage","buttonTitle","backLabel","orLabel","accept","type","contentType","fields","onDrop","onDelete","onBack","handleBack","useCallback","e","stopPropagation","preventDefault","loading","style","back","arrow","getRootProps","getInputProps","isDragActive","getView","includes","disableFileInput","wrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","oneOf","isRequired","string","func","arrayOf","shape","InputText","actions","label","onClick"],"sources":["../../../src/molecule/drag-and-drop/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport includes from 'lodash/fp/includes';\nimport Dropzone from 'react-dropzone';\nimport {NovaCompositionNavigationArrowLeft as ArrowLeft} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport InputText from '../../atom/input-text';\nimport {Overlay} from './overlay';\nimport {UploadReport} from './upload-report';\nimport {PlaceHolder} from './placeholder';\nimport style from './style.css';\n\nexport const DragAndDrop = (props, context) => {\n const {skin} = context;\n const primaryColor = getOr('#00B0FF', 'common.primary', skin);\n\n const {\n state,\n title,\n message,\n warningMessage,\n mode,\n dragAndDropMessage,\n buttonTitle,\n backLabel,\n orLabel,\n accept,\n type: contentType = 'scorm',\n fields,\n onDrop,\n onDelete,\n onBack\n } = props;\n\n const handleBack = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n onBack && onBack(e);\n },\n [onBack]\n );\n\n const loading = state === 'loading';\n return (\n <div>\n <span onClick={handleBack} className={style.back}>\n <ArrowLeft width={12} height={12} className={style.arrow} />\n {backLabel}\n </span>\n <Dropzone accept={accept} disabled={loading} onDrop={onDrop}>\n {({getRootProps, getInputProps, isDragActive}) => {\n const getView = () => {\n if (contentType !== 'scorm' || includes(state, ['success', 'error', 'ready'])) {\n return (\n <UploadReport\n state={state}\n message={message}\n warningMessage={warningMessage}\n fields={fields}\n type={contentType}\n onDelete={onDelete}\n mode={mode}\n orLabel={orLabel}\n onClick={onDrop}\n buttonTitle={buttonTitle}\n primaryColor={primaryColor}\n />\n );\n }\n return (\n <PlaceHolder\n title={title}\n buttonTitle={buttonTitle}\n uploadLabel={message}\n primaryColor={primaryColor}\n onClick={onDrop}\n />\n );\n };\n\n const disableFileInput = state === 'success';\n\n return (\n <div {...getRootProps()} className={style.wrapper}>\n <input {...getInputProps()} disabled={disableFileInput} />\n {getView()}\n {isDragActive || loading ? (\n <Overlay\n iconColor={primaryColor}\n description={dragAndDropMessage}\n isLoading={loading}\n />\n ) : null}\n </div>\n );\n }}\n </Dropzone>\n </div>\n );\n};\n\nDragAndDrop.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nDragAndDrop.propTypes = {\n state: PropTypes.oneOf(['default', 'ready', 'loading', 'success', 'error']).isRequired,\n mode: PropTypes.oneOf(['edit', 'upload']),\n title: PropTypes.string,\n type: PropTypes.string,\n message: PropTypes.string,\n warningMessage: PropTypes.string,\n dragAndDropMessage: PropTypes.string,\n buttonTitle: PropTypes.string,\n backLabel: PropTypes.string,\n orLabel: PropTypes.string,\n onBack: PropTypes.func,\n accept: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text'])\n })\n ),\n onDrop: PropTypes.func,\n onDelete: PropTypes.func,\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.oneOf(['edit', 'upload', 'delete']),\n label: PropTypes.string,\n onClick: PropTypes.func\n })\n )\n};\n\nexport default DragAndDrop;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEO,MAAMA,WAAW,GAAG,CAACC,KAAD,EAAQC,OAAR,KAAoB;EAC7C,MAAM;IAACC;EAAD,IAASD,OAAf;EACA,MAAME,YAAY,GAAG,IAAAC,cAAA,EAAM,SAAN,EAAiB,gBAAjB,EAAmCF,IAAnC,CAArB;EAEA,MAAM;IACJG,KADI;IAEJC,KAFI;IAGJC,OAHI;IAIJC,cAJI;IAKJC,IALI;IAMJC,kBANI;IAOJC,WAPI;IAQJC,SARI;IASJC,OATI;IAUJC,MAVI;IAWJC,IAAI,EAAEC,WAAW,GAAG,OAXhB;IAYJC,MAZI;IAaJC,MAbI;IAcJC,QAdI;IAeJC;EAfI,IAgBFpB,KAhBJ;EAkBA,MAAMqB,UAAU,GAAG,IAAAC,kBAAA,EACjBC,CAAC,IAAI;IACHA,CAAC,CAACC,eAAF;IACAD,CAAC,CAACE,cAAF;IACAL,MAAM,IAAIA,MAAM,CAACG,CAAD,CAAhB;EACD,CALgB,EAMjB,CAACH,MAAD,CANiB,CAAnB;EASA,MAAMM,OAAO,GAAGrB,KAAK,KAAK,SAA1B;EACA,oBACE,uDACE;IAAM,OAAO,EAAEgB,UAAf;IAA2B,SAAS,EAAEM,cAAA,CAAMC;
|
|
1
|
+
{"version":3,"file":"index.js","names":["DragAndDrop","props","context","skin","primaryColor","getOr","state","title","message","warningMessage","mode","dragAndDropMessage","buttonTitle","backLabel","orLabel","accept","type","contentType","fields","onDrop","onDelete","onBack","handleBack","useCallback","e","stopPropagation","preventDefault","loading","style","back","arrow","getRootProps","getInputProps","isDragActive","getView","includes","disableFileInput","wrapper","contextTypes","Provider","childContextTypes","propTypes","PropTypes","oneOf","isRequired","string","func","arrayOf","shape","InputText","actions","label","onClick"],"sources":["../../../src/molecule/drag-and-drop/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport getOr from 'lodash/fp/getOr';\nimport includes from 'lodash/fp/includes';\nimport Dropzone from 'react-dropzone';\nimport {NovaCompositionNavigationArrowLeft as ArrowLeft} from '@coorpacademy/nova-icons';\nimport Provider from '../../atom/provider';\nimport InputText from '../../atom/input-text';\nimport {Overlay} from './overlay';\nimport {UploadReport} from './upload-report';\nimport {PlaceHolder} from './placeholder';\nimport style from './style.css';\n\nexport const DragAndDrop = (props, context) => {\n const {skin} = context;\n const primaryColor = getOr('#00B0FF', 'common.primary', skin);\n\n const {\n state,\n title,\n message,\n warningMessage,\n mode,\n dragAndDropMessage,\n buttonTitle,\n backLabel,\n orLabel,\n accept,\n type: contentType = 'scorm',\n fields,\n onDrop,\n onDelete,\n onBack\n } = props;\n\n const handleBack = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n onBack && onBack(e);\n },\n [onBack]\n );\n\n const loading = state === 'loading';\n return (\n <div>\n <span onClick={handleBack} className={style.back} data-testid=\"back\">\n <ArrowLeft width={12} height={12} className={style.arrow} />\n {backLabel}\n </span>\n <Dropzone accept={accept} disabled={loading} onDrop={onDrop}>\n {({getRootProps, getInputProps, isDragActive}) => {\n const getView = () => {\n if (contentType !== 'scorm' || includes(state, ['success', 'error', 'ready'])) {\n return (\n <UploadReport\n state={state}\n message={message}\n warningMessage={warningMessage}\n fields={fields}\n type={contentType}\n onDelete={onDelete}\n mode={mode}\n orLabel={orLabel}\n onClick={onDrop}\n buttonTitle={buttonTitle}\n primaryColor={primaryColor}\n />\n );\n }\n return (\n <PlaceHolder\n title={title}\n buttonTitle={buttonTitle}\n uploadLabel={message}\n primaryColor={primaryColor}\n onClick={onDrop}\n />\n );\n };\n\n const disableFileInput = state === 'success';\n\n return (\n <div {...getRootProps()} data-testid=\"drop-zone\" className={style.wrapper}>\n <input {...getInputProps()} disabled={disableFileInput} />\n {getView()}\n {isDragActive || loading ? (\n <Overlay\n iconColor={primaryColor}\n description={dragAndDropMessage}\n isLoading={loading}\n />\n ) : null}\n </div>\n );\n }}\n </Dropzone>\n </div>\n );\n};\n\nDragAndDrop.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nDragAndDrop.propTypes = {\n state: PropTypes.oneOf(['default', 'ready', 'loading', 'success', 'error']).isRequired,\n mode: PropTypes.oneOf(['edit', 'upload']),\n title: PropTypes.string,\n type: PropTypes.string,\n message: PropTypes.string,\n warningMessage: PropTypes.string,\n dragAndDropMessage: PropTypes.string,\n buttonTitle: PropTypes.string,\n backLabel: PropTypes.string,\n orLabel: PropTypes.string,\n onBack: PropTypes.func,\n accept: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text'])\n })\n ),\n onDrop: PropTypes.func,\n onDelete: PropTypes.func,\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.oneOf(['edit', 'upload', 'delete']),\n label: PropTypes.string,\n onClick: PropTypes.func\n })\n )\n};\n\nexport default DragAndDrop;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../src/molecule/drag-and-drop/overlay.js"],"names":[],"mappings":"AAUO;;;;
|
|
1
|
+
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../src/molecule/drag-and-drop/overlay.js"],"names":[],"mappings":"AAUO;;;;gBAkBN"}
|
|
@@ -35,7 +35,8 @@ const Overlay = ({
|
|
|
35
35
|
})), /*#__PURE__*/_react.default.createElement("p", null, description));
|
|
36
36
|
|
|
37
37
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
38
|
-
className: _overlay.default.overlay
|
|
38
|
+
className: _overlay.default.overlay,
|
|
39
|
+
"data-testid": "overlay"
|
|
39
40
|
}, isLoading ? /*#__PURE__*/_react.default.createElement(_loader.default, null) : dropOverlay);
|
|
40
41
|
};
|
|
41
42
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.js","names":["Overlay","description","isLoading","iconColor","dropOverlay","style","arrow","border","convert","color","icon","overlay","propTypes","PropTypes","string","bool"],"sources":["../../../src/molecule/drag-and-drop/overlay.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {NovaSolidDataTransferDataUpload1 as UploadIcon} from '@coorpacademy/nova-icons';\nimport {convert} from 'css-color-function';\n\nimport Loader from '../../atom/loader';\n\nimport style from './overlay.css';\n\nexport const Overlay = ({description, isLoading, iconColor}) => {\n const dropOverlay = (\n <React.Fragment>\n <div\n className={style.arrow}\n style={{border: `15px solid ${convert(`color(${iconColor} a(-90%))`)}`}}\n >\n <UploadIcon style={{color: iconColor}} className={style.icon} />\n </div>\n <p>{description}</p>\n </React.Fragment>\n );\n\n return <div className={style.overlay}
|
|
1
|
+
{"version":3,"file":"overlay.js","names":["Overlay","description","isLoading","iconColor","dropOverlay","style","arrow","border","convert","color","icon","overlay","propTypes","PropTypes","string","bool"],"sources":["../../../src/molecule/drag-and-drop/overlay.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {NovaSolidDataTransferDataUpload1 as UploadIcon} from '@coorpacademy/nova-icons';\nimport {convert} from 'css-color-function';\n\nimport Loader from '../../atom/loader';\n\nimport style from './overlay.css';\n\nexport const Overlay = ({description, isLoading, iconColor}) => {\n const dropOverlay = (\n <React.Fragment>\n <div\n className={style.arrow}\n style={{border: `15px solid ${convert(`color(${iconColor} a(-90%))`)}`}}\n >\n <UploadIcon style={{color: iconColor}} className={style.icon} />\n </div>\n <p>{description}</p>\n </React.Fragment>\n );\n\n return (\n <div className={style.overlay} data-testid=\"overlay\">\n {isLoading ? <Loader /> : dropOverlay}\n </div>\n );\n};\n\nexport default Overlay;\n\nOverlay.propTypes = {\n description: PropTypes.string,\n isLoading: PropTypes.bool,\n iconColor: PropTypes.string\n};\n"],"mappings":";;;;;AAAA;;AACA;;AAEA;;AACA;;AAEA;;AAEA;;;;AAEO,MAAMA,OAAO,GAAG,CAAC;EAACC,WAAD;EAAcC,SAAd;EAAyBC;AAAzB,CAAD,KAAyC;EAC9D,MAAMC,WAAW,gBACf,6BAAC,cAAD,CAAO,QAAP,qBACE;IACE,SAAS,EAAEC,gBAAA,CAAMC,KADnB;IAEE,KAAK,EAAE;MAACC,MAAM,EAAG,cAAa,IAAAC,yBAAA,EAAS,SAAQL,SAAU,WAA3B,CAAuC;IAA9D;EAFT,gBAIE,6BAAC,2CAAD;IAAY,KAAK,EAAE;MAACM,KAAK,EAAEN;IAAR,CAAnB;IAAuC,SAAS,EAAEE,gBAAA,CAAMK;EAAxD,EAJF,CADF,eAOE,wCAAIT,WAAJ,CAPF,CADF;;EAYA,oBACE;IAAK,SAAS,EAAEI,gBAAA,CAAMM,OAAtB;IAA+B,eAAY;EAA3C,GACGT,SAAS,gBAAG,6BAAC,eAAD,OAAH,GAAgBE,WAD5B,CADF;AAKD,CAlBM;;;eAoBQJ,O;;AAEfA,OAAO,CAACY,SAAR,2CAAoB;EAClBX,WAAW,EAAEY,kBAAA,CAAUC,MADL;EAElBZ,SAAS,EAAEW,kBAAA,CAAUE,IAFH;EAGlBZ,SAAS,EAAEU,kBAAA,CAAUC;AAHH,CAApB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-report.d.ts","sourceRoot":"","sources":["../../../src/molecule/drag-and-drop/upload-report.js"],"names":[],"mappings":"AAkDO;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"upload-report.d.ts","sourceRoot":"","sources":["../../../src/molecule/drag-and-drop/upload-report.js"],"names":[],"mappings":"AAkDO;;;;;;;;;;;gBAgGN"}
|
|
@@ -130,6 +130,7 @@ const UploadReport = ({
|
|
|
130
130
|
}));
|
|
131
131
|
|
|
132
132
|
const deleteView = onDelete ? /*#__PURE__*/_react.default.createElement("div", {
|
|
133
|
+
"data-testid": "trash-icon",
|
|
133
134
|
onClick: handleDelete,
|
|
134
135
|
className: (0, _classnames.default)(_uploadReport.default.actionIcon, _uploadReport.default.trashIcon)
|
|
135
136
|
}, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaLineContentEditionBin, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-report.js","names":["SuccessMessage","message","style","emoticon","propTypes","PropTypes","string","isRequired","ErrorMessage","buttonTitle","primaryColor","selectButton","backgroundColor","UploadReport","state","warningMessage","type","contentType","fields","mode","orLabel","onDelete","handleDelete","useCallback","e","stopPropagation","preventDefault","stopPropagationHandler","showMessage","fileName","fileView","fileWrapper","validateIcon","warning","showToolTip","warningIcon","emptyFileWrapper","IconType","EXTERNAL_CONTENT_ICONS","icon","iconColor","color","buildField","field","index","deleteView","classnames","actionIcon","trashIcon","fieldsList","convert","cap","reportingContainer","reportHeader","iconContainer","oval","iconHeader","reportContainer","or","drop","arrayOf","shape","InputText","oneOf","func"],"sources":["../../../src/molecule/drag-and-drop/upload-report.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyValidate as Validated,\n NovaLineContentEditionBin as TrashIcon,\n NovaCompositionCoorpacademyWarn as WarnIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport {pipe, split, last, map, head, getOr, isEmpty, includes} from 'lodash/fp';\nimport {EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport InputText from '../../atom/input-text';\n\nimport Button from '../../atom/button';\nimport style from './upload-report.css';\n\nconst SuccessMessage = ({message}) => (\n <div>\n <span className={style.emoticon}>🎉</span>\n <p className={style.message}>{message}</p>\n </div>\n);\n\nSuccessMessage.propTypes = {\n message: PropTypes.string.isRequired\n};\n\nconst ErrorMessage = ({message, buttonTitle, primaryColor}) => (\n <div>\n <div>\n <span className={style.emoticon}>🥺</span>\n <p className={style.message}>{message}</p>\n </div>\n <div>\n <Button\n data-name=\"cta\"\n type=\"link\"\n submitValue={buttonTitle}\n className={style.selectButton}\n style={{backgroundColor: primaryColor}}\n />\n </div>\n </div>\n);\n\nErrorMessage.propTypes = {\n message: PropTypes.string.isRequired,\n buttonTitle: PropTypes.string,\n primaryColor: PropTypes.string\n};\n\nexport const UploadReport = ({\n state,\n message,\n warningMessage,\n type: contentType,\n fields,\n mode = 'upload',\n orLabel,\n buttonTitle,\n primaryColor,\n onDelete\n}) => {\n const handleDelete = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n onDelete && onDelete(e);\n },\n [onDelete]\n );\n\n const stopPropagationHandler = useCallback(e => {\n e.stopPropagation();\n e.preventDefault();\n }, []);\n\n const showMessage = includes(state, ['success', 'error']);\n\n const fileName = pipe(head, getOr('', 'value'), split('/'), last)(fields);\n const fileView = fileName ? (\n <div className={style.fileWrapper}>\n <div className={style.fileName} title={fileName}>\n {fileName}\n </div>\n {isEmpty(warningMessage) ? (\n <Validated className={style.validateIcon} />\n ) : (\n <div className={style.warning}>\n <div className={style.showToolTip}>\n <span>{warningMessage}</span>\n </div>\n <div className={style.warningIcon}>\n <WarnIcon width={11} height={11} />\n </div>\n </div>\n )}\n </div>\n ) : (\n <div className={style.emptyFileWrapper} />\n );\n const IconType = EXTERNAL_CONTENT_ICONS[contentType].icon;\n const iconColor = EXTERNAL_CONTENT_ICONS[contentType].color;\n const buildField = (field, index) => <InputText {...field} key={index} theme={'cockpit'} />;\n const deleteView = onDelete ? (\n <div onClick={handleDelete} className={classnames(style.actionIcon, style.trashIcon)}>\n <TrashIcon width={20} height={20} />\n </div>\n ) : null;\n const fieldsList = map.convert({cap: false})(buildField, fields);\n return (\n <div className={style.reportingContainer}>\n <div className={style.reportHeader} onClick={stopPropagationHandler}>\n <div className={style.iconContainer} style={{backgroundColor: iconColor}}>\n <div className={style.oval}>\n <IconType className={style.iconHeader} style={{color: iconColor}} />\n </div>\n </div>\n {fileView}\n {deleteView}\n </div>\n <div className={style.reportContainer} onClick={stopPropagationHandler}>\n {state === 'success' ? <SuccessMessage message={message} /> : null}\n {state === 'error' ? (\n <ErrorMessage message={message} buttonTitle={buttonTitle} primaryColor={primaryColor} />\n ) : null}\n {mode === 'edit' && !showMessage ? <div>{fieldsList}</div> : null}\n {mode === 'edit' && !showMessage ? <span className={style.or}>{orLabel}</span> : null}\n </div>\n {!showMessage ? (\n <div className={style.drop}>\n <p className={style.message}>{message}</p>\n <Button\n data-name=\"cta\"\n type=\"link\"\n submitValue={buttonTitle}\n className={style.selectButton}\n style={{backgroundColor: primaryColor}}\n />\n </div>\n ) : null}\n </div>\n );\n};\n\nexport default UploadReport;\n\nUploadReport.propTypes = {\n state: PropTypes.string.isRequired,\n message: PropTypes.string.isRequired,\n warningMessage: PropTypes.string,\n orLabel: PropTypes.string,\n type: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text'])\n })\n ),\n mode: PropTypes.oneOf(['edit', 'upload']),\n buttonTitle: PropTypes.string,\n primaryColor: PropTypes.string,\n onDelete: PropTypes.func\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"upload-report.js","names":["SuccessMessage","message","style","emoticon","propTypes","PropTypes","string","isRequired","ErrorMessage","buttonTitle","primaryColor","selectButton","backgroundColor","UploadReport","state","warningMessage","type","contentType","fields","mode","orLabel","onDelete","handleDelete","useCallback","e","stopPropagation","preventDefault","stopPropagationHandler","showMessage","fileName","fileView","fileWrapper","validateIcon","warning","showToolTip","warningIcon","emptyFileWrapper","IconType","EXTERNAL_CONTENT_ICONS","icon","iconColor","color","buildField","field","index","deleteView","classnames","actionIcon","trashIcon","fieldsList","convert","cap","reportingContainer","reportHeader","iconContainer","oval","iconHeader","reportContainer","or","drop","arrayOf","shape","InputText","oneOf","func"],"sources":["../../../src/molecule/drag-and-drop/upload-report.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaCompositionCoorpacademyValidate as Validated,\n NovaLineContentEditionBin as TrashIcon,\n NovaCompositionCoorpacademyWarn as WarnIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport {pipe, split, last, map, head, getOr, isEmpty, includes} from 'lodash/fp';\nimport {EXTERNAL_CONTENT_ICONS} from '../../util/external-content';\nimport InputText from '../../atom/input-text';\n\nimport Button from '../../atom/button';\nimport style from './upload-report.css';\n\nconst SuccessMessage = ({message}) => (\n <div>\n <span className={style.emoticon}>🎉</span>\n <p className={style.message}>{message}</p>\n </div>\n);\n\nSuccessMessage.propTypes = {\n message: PropTypes.string.isRequired\n};\n\nconst ErrorMessage = ({message, buttonTitle, primaryColor}) => (\n <div>\n <div>\n <span className={style.emoticon}>🥺</span>\n <p className={style.message}>{message}</p>\n </div>\n <div>\n <Button\n data-name=\"cta\"\n type=\"link\"\n submitValue={buttonTitle}\n className={style.selectButton}\n style={{backgroundColor: primaryColor}}\n />\n </div>\n </div>\n);\n\nErrorMessage.propTypes = {\n message: PropTypes.string.isRequired,\n buttonTitle: PropTypes.string,\n primaryColor: PropTypes.string\n};\n\nexport const UploadReport = ({\n state,\n message,\n warningMessage,\n type: contentType,\n fields,\n mode = 'upload',\n orLabel,\n buttonTitle,\n primaryColor,\n onDelete\n}) => {\n const handleDelete = useCallback(\n e => {\n e.stopPropagation();\n e.preventDefault();\n onDelete && onDelete(e);\n },\n [onDelete]\n );\n\n const stopPropagationHandler = useCallback(e => {\n e.stopPropagation();\n e.preventDefault();\n }, []);\n\n const showMessage = includes(state, ['success', 'error']);\n\n const fileName = pipe(head, getOr('', 'value'), split('/'), last)(fields);\n const fileView = fileName ? (\n <div className={style.fileWrapper}>\n <div className={style.fileName} title={fileName}>\n {fileName}\n </div>\n {isEmpty(warningMessage) ? (\n <Validated className={style.validateIcon} />\n ) : (\n <div className={style.warning}>\n <div className={style.showToolTip}>\n <span>{warningMessage}</span>\n </div>\n <div className={style.warningIcon}>\n <WarnIcon width={11} height={11} />\n </div>\n </div>\n )}\n </div>\n ) : (\n <div className={style.emptyFileWrapper} />\n );\n const IconType = EXTERNAL_CONTENT_ICONS[contentType].icon;\n const iconColor = EXTERNAL_CONTENT_ICONS[contentType].color;\n const buildField = (field, index) => <InputText {...field} key={index} theme={'cockpit'} />;\n const deleteView = onDelete ? (\n <div\n data-testid=\"trash-icon\"\n onClick={handleDelete}\n className={classnames(style.actionIcon, style.trashIcon)}\n >\n <TrashIcon width={20} height={20} />\n </div>\n ) : null;\n const fieldsList = map.convert({cap: false})(buildField, fields);\n return (\n <div className={style.reportingContainer}>\n <div className={style.reportHeader} onClick={stopPropagationHandler}>\n <div className={style.iconContainer} style={{backgroundColor: iconColor}}>\n <div className={style.oval}>\n <IconType className={style.iconHeader} style={{color: iconColor}} />\n </div>\n </div>\n {fileView}\n {deleteView}\n </div>\n <div className={style.reportContainer} onClick={stopPropagationHandler}>\n {state === 'success' ? <SuccessMessage message={message} /> : null}\n {state === 'error' ? (\n <ErrorMessage message={message} buttonTitle={buttonTitle} primaryColor={primaryColor} />\n ) : null}\n {mode === 'edit' && !showMessage ? <div>{fieldsList}</div> : null}\n {mode === 'edit' && !showMessage ? <span className={style.or}>{orLabel}</span> : null}\n </div>\n {!showMessage ? (\n <div className={style.drop}>\n <p className={style.message}>{message}</p>\n <Button\n data-name=\"cta\"\n type=\"link\"\n submitValue={buttonTitle}\n className={style.selectButton}\n style={{backgroundColor: primaryColor}}\n />\n </div>\n ) : null}\n </div>\n );\n};\n\nexport default UploadReport;\n\nUploadReport.propTypes = {\n state: PropTypes.string.isRequired,\n message: PropTypes.string.isRequired,\n warningMessage: PropTypes.string,\n orLabel: PropTypes.string,\n type: PropTypes.string,\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n ...InputText.propTypes,\n type: PropTypes.oneOf(['text'])\n })\n ),\n mode: PropTypes.oneOf(['edit', 'upload']),\n buttonTitle: PropTypes.string,\n primaryColor: PropTypes.string,\n onDelete: PropTypes.func\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/draggable/index.js"],"names":[],"mappings":";AAQA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/draggable/index.js"],"names":[],"mappings":";AAQA,oDA6CC"}
|
|
@@ -49,6 +49,7 @@ const Draggable = props => {
|
|
|
49
49
|
}, [id, onDrop]);
|
|
50
50
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
51
51
|
className: (0, _classnames.default)(dragging ? _style.default.dragging : null, _style.default.draggable),
|
|
52
|
+
"data-testid": `draggable-${id}`,
|
|
52
53
|
onDragStart: dragStartHandler,
|
|
53
54
|
onDragOver: dragOverHandler,
|
|
54
55
|
onDragLeave: dragLeaveHandler,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["preventDefault","e","stopPropagation","Draggable","props","id","dragging","onDragStart","onDragOver","onDragLeave","onDrop","children","dragStartHandler","useCallback","dragOverHandler","dragLeaveHandler","dropHandler","classnames","style","draggable","propTypes","PropTypes","string","bool","func","element"],"sources":["../../../src/molecule/draggable/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport style from './style.css';\n\nconst preventDefault = e => e.preventDefault();\nconst stopPropagation = e => e.stopPropagation();\n\nconst Draggable = props => {\n const {id, dragging = false, onDragStart, onDragOver, onDragLeave, onDrop, children} = props;\n\n const dragStartHandler = useCallback(\n e => {\n stopPropagation(e);\n onDragStart(id);\n },\n [id, onDragStart]\n );\n const dragOverHandler = useCallback(\n e => {\n preventDefault(e);\n onDragOver(id);\n },\n [id, onDragOver]\n );\n const dragLeaveHandler = useCallback(\n e => {\n preventDefault(e);\n onDragLeave(id);\n },\n [id, onDragLeave]\n );\n const dropHandler = useCallback(\n e => {\n preventDefault(e);\n onDrop(id);\n },\n [id, onDrop]\n );\n\n return (\n <div\n className={classnames(dragging ? style.dragging : null, style.draggable)}\n onDragStart={dragStartHandler}\n onDragOver={dragOverHandler}\n onDragLeave={dragLeaveHandler}\n onDrop={dropHandler}\n draggable\n >\n {children}\n </div>\n );\n};\nDraggable.propTypes = {\n id: PropTypes.string,\n dragging: PropTypes.bool,\n onDragStart: PropTypes.func,\n onDragOver: PropTypes.func,\n onDragLeave: PropTypes.func,\n onDrop: PropTypes.func,\n children: PropTypes.element\n};\n\nexport default Draggable;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;AAEA,MAAMA,cAAc,GAAGC,CAAC,IAAIA,CAAC,CAACD,cAAF,EAA5B;;AACA,MAAME,eAAe,GAAGD,CAAC,IAAIA,CAAC,CAACC,eAAF,EAA7B;;AAEA,MAAMC,SAAS,GAAGC,KAAK,IAAI;EACzB,MAAM;IAACC,EAAD;IAAKC,QAAQ,GAAG,KAAhB;IAAuBC,WAAvB;IAAoCC,UAApC;IAAgDC,WAAhD;IAA6DC,MAA7D;IAAqEC;EAArE,IAAiFP,KAAvF;EAEA,MAAMQ,gBAAgB,GAAG,IAAAC,kBAAA,EACvBZ,CAAC,IAAI;IACHC,eAAe,CAACD,CAAD,CAAf;IACAM,WAAW,CAACF,EAAD,CAAX;EACD,CAJsB,EAKvB,CAACA,EAAD,EAAKE,WAAL,CALuB,CAAzB;EAOA,MAAMO,eAAe,GAAG,IAAAD,kBAAA,EACtBZ,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAO,UAAU,CAACH,EAAD,CAAV;EACD,CAJqB,EAKtB,CAACA,EAAD,EAAKG,UAAL,CALsB,CAAxB;EAOA,MAAMO,gBAAgB,GAAG,IAAAF,kBAAA,EACvBZ,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAQ,WAAW,CAACJ,EAAD,CAAX;EACD,CAJsB,EAKvB,CAACA,EAAD,EAAKI,WAAL,CALuB,CAAzB;EAOA,MAAMO,WAAW,GAAG,IAAAH,kBAAA,EAClBZ,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAS,MAAM,CAACL,EAAD,CAAN;EACD,CAJiB,EAKlB,CAACA,EAAD,EAAKK,MAAL,CALkB,CAApB;EAQA,oBACE;IACE,SAAS,EAAE,IAAAO,mBAAA,EAAWX,QAAQ,GAAGY,cAAA,CAAMZ,QAAT,GAAoB,IAAvC,EAA6CY,cAAA,CAAMC,SAAnD,CADb;IAEE,
|
|
1
|
+
{"version":3,"file":"index.js","names":["preventDefault","e","stopPropagation","Draggable","props","id","dragging","onDragStart","onDragOver","onDragLeave","onDrop","children","dragStartHandler","useCallback","dragOverHandler","dragLeaveHandler","dropHandler","classnames","style","draggable","propTypes","PropTypes","string","bool","func","element"],"sources":["../../../src/molecule/draggable/index.js"],"sourcesContent":["import React, {useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport style from './style.css';\n\nconst preventDefault = e => e.preventDefault();\nconst stopPropagation = e => e.stopPropagation();\n\nconst Draggable = props => {\n const {id, dragging = false, onDragStart, onDragOver, onDragLeave, onDrop, children} = props;\n\n const dragStartHandler = useCallback(\n e => {\n stopPropagation(e);\n onDragStart(id);\n },\n [id, onDragStart]\n );\n const dragOverHandler = useCallback(\n e => {\n preventDefault(e);\n onDragOver(id);\n },\n [id, onDragOver]\n );\n const dragLeaveHandler = useCallback(\n e => {\n preventDefault(e);\n onDragLeave(id);\n },\n [id, onDragLeave]\n );\n const dropHandler = useCallback(\n e => {\n preventDefault(e);\n onDrop(id);\n },\n [id, onDrop]\n );\n\n return (\n <div\n className={classnames(dragging ? style.dragging : null, style.draggable)}\n data-testid={`draggable-${id}`}\n onDragStart={dragStartHandler}\n onDragOver={dragOverHandler}\n onDragLeave={dragLeaveHandler}\n onDrop={dropHandler}\n draggable\n >\n {children}\n </div>\n );\n};\nDraggable.propTypes = {\n id: PropTypes.string,\n dragging: PropTypes.bool,\n onDragStart: PropTypes.func,\n onDragOver: PropTypes.func,\n onDragLeave: PropTypes.func,\n onDrop: PropTypes.func,\n children: PropTypes.element\n};\n\nexport default Draggable;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;AAEA,MAAMA,cAAc,GAAGC,CAAC,IAAIA,CAAC,CAACD,cAAF,EAA5B;;AACA,MAAME,eAAe,GAAGD,CAAC,IAAIA,CAAC,CAACC,eAAF,EAA7B;;AAEA,MAAMC,SAAS,GAAGC,KAAK,IAAI;EACzB,MAAM;IAACC,EAAD;IAAKC,QAAQ,GAAG,KAAhB;IAAuBC,WAAvB;IAAoCC,UAApC;IAAgDC,WAAhD;IAA6DC,MAA7D;IAAqEC;EAArE,IAAiFP,KAAvF;EAEA,MAAMQ,gBAAgB,GAAG,IAAAC,kBAAA,EACvBZ,CAAC,IAAI;IACHC,eAAe,CAACD,CAAD,CAAf;IACAM,WAAW,CAACF,EAAD,CAAX;EACD,CAJsB,EAKvB,CAACA,EAAD,EAAKE,WAAL,CALuB,CAAzB;EAOA,MAAMO,eAAe,GAAG,IAAAD,kBAAA,EACtBZ,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAO,UAAU,CAACH,EAAD,CAAV;EACD,CAJqB,EAKtB,CAACA,EAAD,EAAKG,UAAL,CALsB,CAAxB;EAOA,MAAMO,gBAAgB,GAAG,IAAAF,kBAAA,EACvBZ,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAQ,WAAW,CAACJ,EAAD,CAAX;EACD,CAJsB,EAKvB,CAACA,EAAD,EAAKI,WAAL,CALuB,CAAzB;EAOA,MAAMO,WAAW,GAAG,IAAAH,kBAAA,EAClBZ,CAAC,IAAI;IACHD,cAAc,CAACC,CAAD,CAAd;IACAS,MAAM,CAACL,EAAD,CAAN;EACD,CAJiB,EAKlB,CAACA,EAAD,EAAKK,MAAL,CALkB,CAApB;EAQA,oBACE;IACE,SAAS,EAAE,IAAAO,mBAAA,EAAWX,QAAQ,GAAGY,cAAA,CAAMZ,QAAT,GAAoB,IAAvC,EAA6CY,cAAA,CAAMC,SAAnD,CADb;IAEE,eAAc,aAAYd,EAAG,EAF/B;IAGE,WAAW,EAAEO,gBAHf;IAIE,UAAU,EAAEE,eAJd;IAKE,WAAW,EAAEC,gBALf;IAME,MAAM,EAAEC,WANV;IAOE,SAAS;EAPX,GASGL,QATH,CADF;AAaD,CA7CD;;AA8CAR,SAAS,CAACiB,SAAV,2CAAsB;EACpBf,EAAE,EAAEgB,kBAAA,CAAUC,MADM;EAEpBhB,QAAQ,EAAEe,kBAAA,CAAUE,IAFA;EAGpBhB,WAAW,EAAEc,kBAAA,CAAUG,IAHH;EAIpBhB,UAAU,EAAEa,kBAAA,CAAUG,IAJF;EAKpBf,WAAW,EAAEY,kBAAA,CAAUG,IALH;EAMpBd,MAAM,EAAEW,kBAAA,CAAUG,IANE;EAOpBb,QAAQ,EAAEU,kBAAA,CAAUI;AAPA,CAAtB;eAUetB,S"}
|
|
@@ -41,7 +41,8 @@ const SlidesHeader = (props = {}, context = undefined) => {
|
|
|
41
41
|
subcontent: subcontent,
|
|
42
42
|
mode: mode
|
|
43
43
|
}) : null, type === HEADER_TYPE.MICROLEARNING ? /*#__PURE__*/_react.default.createElement(_microlearning.default, {
|
|
44
|
-
content: content
|
|
44
|
+
content: content,
|
|
45
|
+
mode: mode
|
|
45
46
|
}) : null, lives ? /*#__PURE__*/_react.default.createElement(_lives.default, {
|
|
46
47
|
count: lives.count
|
|
47
48
|
}) : null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["HEADER_TYPE","LEARNER","MICROLEARNING","SlidesHeader","props","context","undefined","type","content","subcontent","lives","mode","style","wrapper","count","propTypes","PropTypes","oneOf","shape","href","Link","title","string","isRequired","details","Lives"],"sources":["../../../../../../src/template/app-player/player/slides/header/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Link from '../../../../../atom/link';\nimport Learner from './learner';\nimport Microlearning from './microlearning';\nimport Lives from './lives';\nimport style from './style.css'; // eslint-disable-line css-modules/no-unused-class\n\nconst HEADER_TYPE = {\n LEARNER: 'learner',\n MICROLEARNING: 'microlearning'\n};\n\nconst SlidesHeader = (props = {}, context = undefined) => {\n const {type, content, subcontent, lives, mode} = props;\n\n return (\n <div data-name=\"slidesHeader\" className={style.wrapper}>\n {type === HEADER_TYPE.LEARNER ? (\n <Learner content={content} subcontent={subcontent} mode={mode} />\n ) : null}\n {type === HEADER_TYPE.MICROLEARNING ? <Microlearning content={content} /> : null}\n {lives ? <Lives count={lives.count} /> : null}\n </div>\n );\n};\n\nSlidesHeader.propTypes = {\n type: PropTypes.oneOf([HEADER_TYPE.LEARNER, HEADER_TYPE.MICROLEARNING]),\n content: PropTypes.shape({\n href: Link.propTypes.href,\n title: PropTypes.string.isRequired,\n details: PropTypes.string\n }),\n subcontent: PropTypes.shape({\n title: PropTypes.string,\n details: PropTypes.string\n }),\n lives: PropTypes.shape(Lives.propTypes),\n mode: PropTypes.string\n};\n\nexport default SlidesHeader;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAAiC;AAEjC,MAAMA,WAAW,GAAG;EAClBC,OAAO,EAAE,SADS;EAElBC,aAAa,EAAE;AAFG,CAApB;;AAKA,MAAMC,YAAY,GAAG,CAACC,KAAK,GAAG,EAAT,EAAaC,OAAO,GAAGC,SAAvB,KAAqC;EACxD,MAAM;IAACC,IAAD;IAAOC,OAAP;IAAgBC,UAAhB;IAA4BC,KAA5B;IAAmCC;EAAnC,IAA2CP,KAAjD;EAEA,oBACE;IAAK,aAAU,cAAf;IAA8B,SAAS,EAAEQ,cAAA,CAAMC;EAA/C,GACGN,IAAI,KAAKP,WAAW,CAACC,OAArB,gBACC,6BAAC,gBAAD;IAAS,OAAO,EAAEO,OAAlB;IAA2B,UAAU,EAAEC,UAAvC;IAAmD,IAAI,EAAEE;EAAzD,EADD,GAEG,IAHN,EAIGJ,IAAI,KAAKP,WAAW,CAACE,aAArB,gBAAqC,6BAAC,sBAAD;IAAe,OAAO,EAAEM;
|
|
1
|
+
{"version":3,"file":"index.js","names":["HEADER_TYPE","LEARNER","MICROLEARNING","SlidesHeader","props","context","undefined","type","content","subcontent","lives","mode","style","wrapper","count","propTypes","PropTypes","oneOf","shape","href","Link","title","string","isRequired","details","Lives"],"sources":["../../../../../../src/template/app-player/player/slides/header/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Link from '../../../../../atom/link';\nimport Learner from './learner';\nimport Microlearning from './microlearning';\nimport Lives from './lives';\nimport style from './style.css'; // eslint-disable-line css-modules/no-unused-class\n\nconst HEADER_TYPE = {\n LEARNER: 'learner',\n MICROLEARNING: 'microlearning'\n};\n\nconst SlidesHeader = (props = {}, context = undefined) => {\n const {type, content, subcontent, lives, mode} = props;\n\n return (\n <div data-name=\"slidesHeader\" className={style.wrapper}>\n {type === HEADER_TYPE.LEARNER ? (\n <Learner content={content} subcontent={subcontent} mode={mode} />\n ) : null}\n {type === HEADER_TYPE.MICROLEARNING ? <Microlearning content={content} mode={mode} /> : null}\n {lives ? <Lives count={lives.count} /> : null}\n </div>\n );\n};\n\nSlidesHeader.propTypes = {\n type: PropTypes.oneOf([HEADER_TYPE.LEARNER, HEADER_TYPE.MICROLEARNING]),\n content: PropTypes.shape({\n href: Link.propTypes.href,\n title: PropTypes.string.isRequired,\n details: PropTypes.string\n }),\n subcontent: PropTypes.shape({\n title: PropTypes.string,\n details: PropTypes.string\n }),\n lives: PropTypes.shape(Lives.propTypes),\n mode: PropTypes.string\n};\n\nexport default SlidesHeader;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAAiC;AAEjC,MAAMA,WAAW,GAAG;EAClBC,OAAO,EAAE,SADS;EAElBC,aAAa,EAAE;AAFG,CAApB;;AAKA,MAAMC,YAAY,GAAG,CAACC,KAAK,GAAG,EAAT,EAAaC,OAAO,GAAGC,SAAvB,KAAqC;EACxD,MAAM;IAACC,IAAD;IAAOC,OAAP;IAAgBC,UAAhB;IAA4BC,KAA5B;IAAmCC;EAAnC,IAA2CP,KAAjD;EAEA,oBACE;IAAK,aAAU,cAAf;IAA8B,SAAS,EAAEQ,cAAA,CAAMC;EAA/C,GACGN,IAAI,KAAKP,WAAW,CAACC,OAArB,gBACC,6BAAC,gBAAD;IAAS,OAAO,EAAEO,OAAlB;IAA2B,UAAU,EAAEC,UAAvC;IAAmD,IAAI,EAAEE;EAAzD,EADD,GAEG,IAHN,EAIGJ,IAAI,KAAKP,WAAW,CAACE,aAArB,gBAAqC,6BAAC,sBAAD;IAAe,OAAO,EAAEM,OAAxB;IAAiC,IAAI,EAAEG;EAAvC,EAArC,GAAuF,IAJ1F,EAKGD,KAAK,gBAAG,6BAAC,cAAD;IAAO,KAAK,EAAEA,KAAK,CAACI;EAApB,EAAH,GAAmC,IAL3C,CADF;AASD,CAZD;;AAcAX,YAAY,CAACY,SAAb,2CAAyB;EACvBR,IAAI,EAAES,kBAAA,CAAUC,KAAV,CAAgB,CAACjB,WAAW,CAACC,OAAb,EAAsBD,WAAW,CAACE,aAAlC,CAAhB,CADiB;EAEvBM,OAAO,EAAEQ,kBAAA,CAAUE,KAAV,CAAgB;IACvBC,IAAI,EAAEC,aAAA,CAAKL,SAAL,CAAeI,IADE;IAEvBE,KAAK,EAAEL,kBAAA,CAAUM,MAAV,CAAiBC,UAFD;IAGvBC,OAAO,EAAER,kBAAA,CAAUM;EAHI,CAAhB,CAFc;EAOvBb,UAAU,EAAEO,kBAAA,CAAUE,KAAV,CAAgB;IAC1BG,KAAK,EAAEL,kBAAA,CAAUM,MADS;IAE1BE,OAAO,EAAER,kBAAA,CAAUM;EAFO,CAAhB,CAPW;EAWvBZ,KAAK,EAAEM,kBAAA,CAAUE,KAAV,CAAgBO,cAAA,CAAMV,SAAtB,CAXgB;EAYvBJ,IAAI,EAAEK,kBAAA,CAAUM;AAZO,CAAzB;eAeenB,Y"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"microlearning.d.ts","sourceRoot":"","sources":["../../../../../../src/template/app-player/player/slides/header/microlearning.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"microlearning.d.ts","sourceRoot":"","sources":["../../../../../../src/template/app-player/player/slides/header/microlearning.js"],"names":[],"mappings":";AAqCA,4EAGC"}
|
|
@@ -17,40 +17,57 @@ var _microlearning = _interopRequireDefault(require("./microlearning.css"));
|
|
|
17
17
|
|
|
18
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
19
|
|
|
20
|
+
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); }
|
|
21
|
+
|
|
20
22
|
const Content = ({
|
|
21
23
|
onClick,
|
|
22
|
-
title
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
24
|
+
title,
|
|
25
|
+
mode
|
|
26
|
+
}, context) => {
|
|
27
|
+
const content = /*#__PURE__*/_react.default.createElement("div", {
|
|
28
|
+
"data-name": "contentTitle",
|
|
29
|
+
className: (0, _classnames.default)(_microlearning.default.contentTitle, _microlearning.default.innerHTML) // eslint-disable-next-line react/no-danger
|
|
30
|
+
,
|
|
31
|
+
dangerouslySetInnerHTML: {
|
|
32
|
+
__html: title
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
if (mode === 'scorm') return /*#__PURE__*/_react.default.createElement("div", {
|
|
37
|
+
className: _microlearning.default.contentScorm
|
|
38
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
39
|
+
className: _microlearning.default.backIcon
|
|
40
|
+
}), content);
|
|
41
|
+
return /*#__PURE__*/_react.default.createElement(_link.default, {
|
|
42
|
+
onClick: onClick,
|
|
43
|
+
className: _microlearning.default.content
|
|
44
|
+
}, /*#__PURE__*/_react.default.createElement(_novaIcons.NovaCompositionNavigationArrowLeft, {
|
|
45
|
+
className: _microlearning.default.backIcon
|
|
46
|
+
}), content);
|
|
47
|
+
};
|
|
36
48
|
|
|
37
49
|
Content.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
38
50
|
onClick: _link.default.propTypes.onClick,
|
|
39
|
-
title: _propTypes.default.node
|
|
51
|
+
title: _propTypes.default.node,
|
|
52
|
+
mode: _propTypes.default.string
|
|
40
53
|
} : {};
|
|
41
54
|
|
|
42
55
|
const MicrolearningHeader = (props, context) => {
|
|
43
56
|
const {
|
|
44
|
-
content
|
|
57
|
+
content,
|
|
58
|
+
mode
|
|
45
59
|
} = props;
|
|
46
|
-
return /*#__PURE__*/_react.default.createElement(Content, content
|
|
60
|
+
return /*#__PURE__*/_react.default.createElement(Content, _extends({}, content, {
|
|
61
|
+
mode: mode
|
|
62
|
+
}));
|
|
47
63
|
};
|
|
48
64
|
|
|
49
65
|
MicrolearningHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
50
66
|
content: _propTypes.default.shape({
|
|
51
67
|
onClick: _link.default.propTypes.onClick,
|
|
52
68
|
title: _propTypes.default.string.isRequired
|
|
53
|
-
})
|
|
69
|
+
}),
|
|
70
|
+
mode: _propTypes.default.string
|
|
54
71
|
} : {};
|
|
55
72
|
var _default = MicrolearningHeader;
|
|
56
73
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"microlearning.js","names":["Content","onClick","title","
|
|
1
|
+
{"version":3,"file":"microlearning.js","names":["Content","onClick","title","mode","context","content","classnames","style","contentTitle","innerHTML","__html","contentScorm","backIcon","propTypes","Link","PropTypes","node","string","MicrolearningHeader","props","shape","isRequired"],"sources":["../../../../../../src/template/app-player/player/slides/header/microlearning.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {NovaCompositionNavigationArrowLeft as BackIcon} from '@coorpacademy/nova-icons';\nimport Link from '../../../../../atom/link';\nimport style from './microlearning.css';\n\nconst Content = ({onClick, title, mode}, context) => {\n const content = (\n <div\n data-name=\"contentTitle\"\n className={classnames(style.contentTitle, style.innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: title}}\n />\n );\n if (mode === 'scorm')\n return (\n <div className={style.contentScorm}>\n <div className={style.backIcon} />\n {content}\n </div>\n );\n return (\n <Link onClick={onClick} className={style.content}>\n <BackIcon className={style.backIcon} />\n {content}\n </Link>\n );\n};\n\nContent.propTypes = {\n onClick: Link.propTypes.onClick,\n title: PropTypes.node,\n mode: PropTypes.string\n};\n\nconst MicrolearningHeader = (props, context) => {\n const {content, mode} = props;\n return <Content {...content} mode={mode} />;\n};\n\nMicrolearningHeader.propTypes = {\n content: PropTypes.shape({\n onClick: Link.propTypes.onClick,\n title: PropTypes.string.isRequired\n }),\n mode: PropTypes.string\n};\n\nexport default MicrolearningHeader;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,MAAMA,OAAO,GAAG,CAAC;EAACC,OAAD;EAAUC,KAAV;EAAiBC;AAAjB,CAAD,EAAyBC,OAAzB,KAAqC;EACnD,MAAMC,OAAO,gBACX;IACE,aAAU,cADZ;IAEE,SAAS,EAAE,IAAAC,mBAAA,EAAWC,sBAAA,CAAMC,YAAjB,EAA+BD,sBAAA,CAAME,SAArC,CAFb,CAGE;IAHF;IAIE,uBAAuB,EAAE;MAACC,MAAM,EAAER;IAAT;EAJ3B,EADF;;EAQA,IAAIC,IAAI,KAAK,OAAb,EACE,oBACE;IAAK,SAAS,EAAEI,sBAAA,CAAMI;EAAtB,gBACE;IAAK,SAAS,EAAEJ,sBAAA,CAAMK;EAAtB,EADF,EAEGP,OAFH,CADF;EAMF,oBACE,6BAAC,aAAD;IAAM,OAAO,EAAEJ,OAAf;IAAwB,SAAS,EAAEM,sBAAA,CAAMF;EAAzC,gBACE,6BAAC,6CAAD;IAAU,SAAS,EAAEE,sBAAA,CAAMK;EAA3B,EADF,EAEGP,OAFH,CADF;AAMD,CAtBD;;AAwBAL,OAAO,CAACa,SAAR,2CAAoB;EAClBZ,OAAO,EAAEa,aAAA,CAAKD,SAAL,CAAeZ,OADN;EAElBC,KAAK,EAAEa,kBAAA,CAAUC,IAFC;EAGlBb,IAAI,EAAEY,kBAAA,CAAUE;AAHE,CAApB;;AAMA,MAAMC,mBAAmB,GAAG,CAACC,KAAD,EAAQf,OAAR,KAAoB;EAC9C,MAAM;IAACC,OAAD;IAAUF;EAAV,IAAkBgB,KAAxB;EACA,oBAAO,6BAAC,OAAD,eAAad,OAAb;IAAsB,IAAI,EAAEF;EAA5B,GAAP;AACD,CAHD;;AAKAe,mBAAmB,CAACL,SAApB,2CAAgC;EAC9BR,OAAO,EAAEU,kBAAA,CAAUK,KAAV,CAAgB;IACvBnB,OAAO,EAAEa,aAAA,CAAKD,SAAL,CAAeZ,OADD;IAEvBC,KAAK,EAAEa,kBAAA,CAAUE,MAAV,CAAiBI;EAFD,CAAhB,CADqB;EAK9BlB,IAAI,EAAEY,kBAAA,CAAUE;AALc,CAAhC;eAQeC,mB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coorpacademy/components",
|
|
3
|
-
"version": "11.14.
|
|
3
|
+
"version": "11.14.21",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "es/index.js",
|
|
@@ -168,5 +168,5 @@
|
|
|
168
168
|
"last 2 versions",
|
|
169
169
|
"IE 11"
|
|
170
170
|
],
|
|
171
|
-
"gitHead": "
|
|
171
|
+
"gitHead": "9fd9ab8ab7f84b619907c12d6a3a008b066c9e0a"
|
|
172
172
|
}
|