@coorpacademy/components 10.22.6 → 10.22.9

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.
Files changed (127) hide show
  1. package/es/atom/choice/index.native.js +1 -1
  2. package/es/atom/choice/index.native.js.map +1 -1
  3. package/es/atom/{image-backgound → image-background}/index.native.js +0 -0
  4. package/es/atom/image-background/index.native.js.map +1 -0
  5. package/es/atom/resource-miniature/index.js +1 -2
  6. package/es/atom/resource-miniature/index.js.map +1 -1
  7. package/es/atom/resource-miniature/style.css +4 -0
  8. package/es/molecule/cm-popin/index.js +4 -2
  9. package/es/molecule/cm-popin/index.js.map +1 -1
  10. package/es/molecule/review-correction-popin/prop-types.js +0 -1
  11. package/es/molecule/review-correction-popin/prop-types.js.map +1 -1
  12. package/es/organism/review-congrats/style.css +1 -1
  13. package/es/organism/review-slide/index.js +184 -0
  14. package/es/organism/review-slide/index.js.map +1 -0
  15. package/es/organism/review-slide/prop-types.js +37 -0
  16. package/es/organism/review-slide/prop-types.js.map +1 -0
  17. package/es/organism/review-slide/style.css +171 -0
  18. package/es/organism/review-stacked-slides/index.js +81 -0
  19. package/es/organism/review-stacked-slides/index.js.map +1 -0
  20. package/es/organism/review-stacked-slides/prop-types.js +16 -0
  21. package/es/organism/review-stacked-slides/prop-types.js.map +1 -0
  22. package/es/organism/review-stacked-slides/style.css +179 -0
  23. package/es/template/app-player/player/slides/header/learner.css +4 -0
  24. package/es/template/app-player/player/slides/header/learner.js +2 -3
  25. package/es/template/app-player/player/slides/header/learner.js.map +1 -1
  26. package/es/template/app-player/player/slides/header/microlearning.css +4 -0
  27. package/es/template/app-player/player/slides/header/microlearning.js +1 -2
  28. package/es/template/app-player/player/slides/header/microlearning.js.map +1 -1
  29. package/es/template/app-player/player/slides/index.js +3 -4
  30. package/es/template/app-player/player/slides/index.js.map +1 -1
  31. package/es/template/app-player/player/slides/style.css +5 -0
  32. package/es/template/app-player/popin-correction/index.js +3 -4
  33. package/es/template/app-player/popin-correction/index.js.map +1 -1
  34. package/es/template/app-player/popin-correction/style.css +4 -0
  35. package/es/template/app-player/popin-end/summary.css +4 -0
  36. package/es/template/app-player/popin-end/summary.js +3 -4
  37. package/es/template/app-player/popin-end/summary.js.map +1 -1
  38. package/es/template/app-player/popin-header/index.js +3 -4
  39. package/es/template/app-player/popin-header/index.js.map +1 -1
  40. package/es/template/app-player/popin-header/style.css +4 -0
  41. package/es/template/app-review/index.js +7 -8
  42. package/es/template/app-review/index.js.map +1 -1
  43. package/es/template/app-review/index.native.js +6 -10
  44. package/es/template/app-review/index.native.js.map +1 -1
  45. package/es/template/app-review/player/index.js +36 -0
  46. package/es/template/app-review/player/index.js.map +1 -0
  47. package/es/template/app-review/{slides → player}/index.native.js +15 -13
  48. package/es/template/app-review/player/index.native.js.map +1 -0
  49. package/es/template/app-review/player/prop-types.js +12 -0
  50. package/es/template/app-review/player/prop-types.js.map +1 -0
  51. package/es/template/app-review/player/style.css +41 -0
  52. package/es/template/app-review/prop-types.js +3 -3
  53. package/es/template/app-review/prop-types.js.map +1 -1
  54. package/es/template/common/authors/index.js +1 -2
  55. package/es/template/common/authors/index.js.map +1 -1
  56. package/es/template/common/authors/style.css +4 -0
  57. package/lib/atom/choice/index.native.js +1 -1
  58. package/lib/atom/choice/index.native.js.map +1 -1
  59. package/lib/atom/{image-backgound → image-background}/index.native.js +0 -0
  60. package/lib/atom/image-background/index.native.js.map +1 -0
  61. package/lib/atom/resource-miniature/index.js +9 -11
  62. package/lib/atom/resource-miniature/index.js.map +1 -1
  63. package/lib/atom/resource-miniature/style.css +4 -0
  64. package/lib/molecule/cm-popin/index.js +4 -2
  65. package/lib/molecule/cm-popin/index.js.map +1 -1
  66. package/lib/molecule/review-correction-popin/prop-types.js +0 -1
  67. package/lib/molecule/review-correction-popin/prop-types.js.map +1 -1
  68. package/lib/organism/review-congrats/style.css +1 -1
  69. package/lib/organism/review-slide/index.js +206 -0
  70. package/lib/organism/review-slide/index.js.map +1 -0
  71. package/lib/organism/review-slide/prop-types.js +50 -0
  72. package/lib/organism/review-slide/prop-types.js.map +1 -0
  73. package/lib/organism/review-slide/style.css +171 -0
  74. package/lib/organism/review-stacked-slides/index.js +99 -0
  75. package/lib/organism/review-stacked-slides/index.js.map +1 -0
  76. package/lib/organism/review-stacked-slides/prop-types.js +30 -0
  77. package/lib/organism/review-stacked-slides/prop-types.js.map +1 -0
  78. package/lib/organism/review-stacked-slides/style.css +179 -0
  79. package/lib/template/app-player/player/slides/header/learner.css +4 -0
  80. package/lib/template/app-player/player/slides/header/learner.js +2 -4
  81. package/lib/template/app-player/player/slides/header/learner.js.map +1 -1
  82. package/lib/template/app-player/player/slides/header/microlearning.css +4 -0
  83. package/lib/template/app-player/player/slides/header/microlearning.js +1 -3
  84. package/lib/template/app-player/player/slides/header/microlearning.js.map +1 -1
  85. package/lib/template/app-player/player/slides/index.js +23 -25
  86. package/lib/template/app-player/player/slides/index.js.map +1 -1
  87. package/lib/template/app-player/player/slides/style.css +5 -0
  88. package/lib/template/app-player/popin-correction/index.js +20 -22
  89. package/lib/template/app-player/popin-correction/index.js.map +1 -1
  90. package/lib/template/app-player/popin-correction/style.css +4 -0
  91. package/lib/template/app-player/popin-end/summary.css +4 -0
  92. package/lib/template/app-player/popin-end/summary.js +3 -5
  93. package/lib/template/app-player/popin-end/summary.js.map +1 -1
  94. package/lib/template/app-player/popin-header/index.js +32 -34
  95. package/lib/template/app-player/popin-header/index.js.map +1 -1
  96. package/lib/template/app-player/popin-header/style.css +4 -0
  97. package/lib/template/app-review/index.js +6 -8
  98. package/lib/template/app-review/index.js.map +1 -1
  99. package/lib/template/app-review/index.native.js +6 -11
  100. package/lib/template/app-review/index.native.js.map +1 -1
  101. package/lib/template/app-review/player/index.js +51 -0
  102. package/lib/template/app-review/player/index.js.map +1 -0
  103. package/lib/template/app-review/{slides → player}/index.native.js +14 -12
  104. package/lib/template/app-review/player/index.native.js.map +1 -0
  105. package/lib/template/app-review/player/prop-types.js +25 -0
  106. package/lib/template/app-review/player/prop-types.js.map +1 -0
  107. package/lib/template/app-review/player/style.css +41 -0
  108. package/lib/template/app-review/prop-types.js +3 -3
  109. package/lib/template/app-review/prop-types.js.map +1 -1
  110. package/lib/template/common/authors/index.js +15 -17
  111. package/lib/template/common/authors/index.js.map +1 -1
  112. package/lib/template/common/authors/style.css +4 -0
  113. package/package.json +2 -2
  114. package/es/atom/image-backgound/index.native.js.map +0 -1
  115. package/es/template/app-review/slides/index.js +0 -352
  116. package/es/template/app-review/slides/index.js.map +0 -1
  117. package/es/template/app-review/slides/index.native.js.map +0 -1
  118. package/es/template/app-review/slides/prop-types.js +0 -111
  119. package/es/template/app-review/slides/prop-types.js.map +0 -1
  120. package/es/template/app-review/slides/style.css +0 -409
  121. package/lib/atom/image-backgound/index.native.js.map +0 -1
  122. package/lib/template/app-review/slides/index.js +0 -385
  123. package/lib/template/app-review/slides/index.js.map +0 -1
  124. package/lib/template/app-review/slides/index.native.js.map +0 -1
  125. package/lib/template/app-review/slides/prop-types.js +0 -131
  126. package/lib/template/app-review/slides/prop-types.js.map +0 -1
  127. package/lib/template/app-review/slides/style.css +0 -409
@@ -1,7 +1,7 @@
1
1
  import React, { useEffect, useState } from 'react';
2
2
  import { View, StyleSheet } from 'react-native';
3
3
  import Html from '../html/index.native';
4
- import ImageBackground from '../image-backgound/index.native';
4
+ import ImageBackground from '../image-background/index.native';
5
5
  import getCleanUri from '../../util/get-clean-uri';
6
6
  import Touchable from '../../hoc/touchable/index.native';
7
7
  import { useTemplateContext } from '../../template/app-review/template-context';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/choice/index.native.tsx"],"names":["React","useEffect","useState","View","StyleSheet","Html","ImageBackground","getCleanUri","Touchable","useTemplateContext","createStyleSheet","theme","create","boxShadow","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","backgroundColor","container","minHeight","colors","white","borderRadius","radius","regular","overflow","flexDirection","alignItems","textContainer","paddingHorizontal","paddingVertical","justifyContent","flex","squeezedTextContainer","padding","spacing","small","paddingLeft","undefined","paddingRight","text","fontWeight","bold","color","black","textSelected","unselectedImageContainer","borderRightColor","border","imageContainer","image","Choice","children","isSelected","squeezed","isDisabled","onPress","media","testID","prefixTestID","style","questionType","templateContext","brandTheme","styleSheet","setStylesheet","_stylesheet","selectedStyle","primary","borderColor","common","selectedSuffix","mediaType","type","toLowerCase","url","src","length","source","uri","mediaSuffix","htmlStyle","push","fontSize","medium"],"mappings":"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","sourcesContent":["import React, {useEffect, useState} from 'react';\nimport {View, StyleSheet, ViewStyle} from 'react-native';\nimport type {Media, QuestionType} from '../../types/progression-engine';\n\nimport Html from '../html/index.native';\nimport ImageBackground from '../image-backgound/index.native';\nimport getCleanUri from '../../util/get-clean-uri';\nimport Touchable from '../../hoc/touchable/index.native';\nimport {useTemplateContext} from '../../template/app-review/template-context';\nimport {Theme} from '../../variables/theme.native';\n\nexport type Props = {\n isSelected?: boolean;\n onPress: () => void;\n children: string;\n isDisabled?: boolean;\n testID?: string;\n media?: Media;\n squeezed?: boolean;\n style?: ViewStyle;\n questionType: QuestionType;\n};\n\ntype StyleSheetType = {\n boxShadow: any;\n container: any;\n text: any;\n textSelected: any;\n textContainer: any;\n squeezedTextContainer: any;\n unselectedImageContainer: any;\n imageContainer: any;\n image: any;\n};\n\nconst createStyleSheet = (theme: Theme): StyleSheetType =>\n StyleSheet.create({\n boxShadow: {\n shadowColor: '#000',\n shadowOffset: {width: 0, height: 4},\n shadowOpacity: 0.12,\n shadowRadius: 16,\n elevation: 8,\n backgroundColor: '#0000'\n },\n container: {\n minHeight: 80,\n backgroundColor: theme.colors.white,\n borderRadius: theme.radius.regular,\n overflow: 'hidden',\n flexDirection: 'row',\n alignItems: 'stretch'\n },\n textContainer: {\n paddingHorizontal: 24,\n paddingVertical: 12,\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1\n },\n squeezedTextContainer: {\n padding: theme.spacing.small,\n paddingLeft: undefined,\n paddingVertical: undefined,\n paddingRight: undefined,\n flex: 0\n },\n text: {\n fontWeight: theme.fontWeight.bold,\n color: theme.colors.black\n },\n textSelected: {\n color: theme.colors.white\n },\n unselectedImageContainer: {\n borderRightColor: theme.colors.border\n },\n imageContainer: {\n height: '100%',\n width: '25%'\n },\n image: {\n flex: 1\n }\n });\n\nconst Choice = ({\n children,\n isSelected = false,\n squeezed = false,\n isDisabled,\n onPress,\n media,\n testID: prefixTestID,\n style,\n questionType\n}: Props) => {\n const templateContext = useTemplateContext();\n const {theme, brandTheme} = templateContext;\n\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n if (!styleSheet) {\n return null;\n }\n\n const selectedStyle = brandTheme && {\n backgroundColor: brandTheme.colors.primary,\n borderColor: brandTheme.colors.primary,\n borderRadius: theme.radius.common\n };\n\n const selectedSuffix = prefixTestID && isSelected ? '-selected' : '';\n const mediaType = media && media.type && media.type === 'img' && media.type.toLowerCase();\n const url =\n media &&\n media.type === 'img' &&\n media.src &&\n media.src.length > 0 &&\n getCleanUri(media.src[0].url);\n\n const source = {uri: url ? getCleanUri(url) : undefined};\n const mediaSuffix = prefixTestID && mediaType ? `-${mediaType}` : '';\n\n const htmlStyle: ViewStyle[] = [styleSheet.text];\n\n if (isSelected) {\n htmlStyle.push(styleSheet.textSelected);\n }\n\n return (\n <Touchable\n onPress={!isDisabled ? onPress : undefined}\n style={style}\n analyticsID=\"question-choice\"\n analyticsParams={{questionType}}\n >\n <View\n style={[styleSheet.boxShadow, styleSheet.container]}\n testID={prefixTestID && `${prefixTestID}${selectedSuffix}`}\n >\n {url ? (\n <View style={styleSheet.imageContainer}>\n <ImageBackground\n testID={prefixTestID && `${prefixTestID}${mediaSuffix}`}\n source={source}\n style={styleSheet.image}\n />\n </View>\n ) : null}\n <View\n style={[\n styleSheet.textContainer,\n squeezed && styleSheet.squeezedTextContainer,\n isSelected && selectedStyle\n ]}\n >\n <Html\n fontSize={squeezed ? theme.fontSize.medium : theme.fontSize.regular}\n style={htmlStyle}\n >\n {children}\n </Html>\n </View>\n </View>\n </Touchable>\n );\n};\n\nexport default Choice;\n"],"file":"index.native.js"}
1
+ {"version":3,"sources":["../../../src/atom/choice/index.native.tsx"],"names":["React","useEffect","useState","View","StyleSheet","Html","ImageBackground","getCleanUri","Touchable","useTemplateContext","createStyleSheet","theme","create","boxShadow","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","backgroundColor","container","minHeight","colors","white","borderRadius","radius","regular","overflow","flexDirection","alignItems","textContainer","paddingHorizontal","paddingVertical","justifyContent","flex","squeezedTextContainer","padding","spacing","small","paddingLeft","undefined","paddingRight","text","fontWeight","bold","color","black","textSelected","unselectedImageContainer","borderRightColor","border","imageContainer","image","Choice","children","isSelected","squeezed","isDisabled","onPress","media","testID","prefixTestID","style","questionType","templateContext","brandTheme","styleSheet","setStylesheet","_stylesheet","selectedStyle","primary","borderColor","common","selectedSuffix","mediaType","type","toLowerCase","url","src","length","source","uri","mediaSuffix","htmlStyle","push","fontSize","medium"],"mappings":"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","sourcesContent":["import React, {useEffect, useState} from 'react';\nimport {View, StyleSheet, ViewStyle} from 'react-native';\nimport type {Media, QuestionType} from '../../types/progression-engine';\n\nimport Html from '../html/index.native';\nimport ImageBackground from '../image-background/index.native';\nimport getCleanUri from '../../util/get-clean-uri';\nimport Touchable from '../../hoc/touchable/index.native';\nimport {useTemplateContext} from '../../template/app-review/template-context';\nimport {Theme} from '../../variables/theme.native';\n\nexport type Props = {\n isSelected?: boolean;\n onPress: () => void;\n children: string;\n isDisabled?: boolean;\n testID?: string;\n media?: Media;\n squeezed?: boolean;\n style?: ViewStyle;\n questionType: QuestionType;\n};\n\ntype StyleSheetType = {\n boxShadow: any;\n container: any;\n text: any;\n textSelected: any;\n textContainer: any;\n squeezedTextContainer: any;\n unselectedImageContainer: any;\n imageContainer: any;\n image: any;\n};\n\nconst createStyleSheet = (theme: Theme): StyleSheetType =>\n StyleSheet.create({\n boxShadow: {\n shadowColor: '#000',\n shadowOffset: {width: 0, height: 4},\n shadowOpacity: 0.12,\n shadowRadius: 16,\n elevation: 8,\n backgroundColor: '#0000'\n },\n container: {\n minHeight: 80,\n backgroundColor: theme.colors.white,\n borderRadius: theme.radius.regular,\n overflow: 'hidden',\n flexDirection: 'row',\n alignItems: 'stretch'\n },\n textContainer: {\n paddingHorizontal: 24,\n paddingVertical: 12,\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1\n },\n squeezedTextContainer: {\n padding: theme.spacing.small,\n paddingLeft: undefined,\n paddingVertical: undefined,\n paddingRight: undefined,\n flex: 0\n },\n text: {\n fontWeight: theme.fontWeight.bold,\n color: theme.colors.black\n },\n textSelected: {\n color: theme.colors.white\n },\n unselectedImageContainer: {\n borderRightColor: theme.colors.border\n },\n imageContainer: {\n height: '100%',\n width: '25%'\n },\n image: {\n flex: 1\n }\n });\n\nconst Choice = ({\n children,\n isSelected = false,\n squeezed = false,\n isDisabled,\n onPress,\n media,\n testID: prefixTestID,\n style,\n questionType\n}: Props) => {\n const templateContext = useTemplateContext();\n const {theme, brandTheme} = templateContext;\n\n const [styleSheet, setStylesheet] = useState<StyleSheetType | null>(null);\n\n useEffect(() => {\n const _stylesheet = createStyleSheet(theme);\n setStylesheet(_stylesheet);\n }, [theme]);\n\n if (!styleSheet) {\n return null;\n }\n\n const selectedStyle = brandTheme && {\n backgroundColor: brandTheme.colors.primary,\n borderColor: brandTheme.colors.primary,\n borderRadius: theme.radius.common\n };\n\n const selectedSuffix = prefixTestID && isSelected ? '-selected' : '';\n const mediaType = media && media.type && media.type === 'img' && media.type.toLowerCase();\n const url =\n media &&\n media.type === 'img' &&\n media.src &&\n media.src.length > 0 &&\n getCleanUri(media.src[0].url);\n\n const source = {uri: url ? getCleanUri(url) : undefined};\n const mediaSuffix = prefixTestID && mediaType ? `-${mediaType}` : '';\n\n const htmlStyle: ViewStyle[] = [styleSheet.text];\n\n if (isSelected) {\n htmlStyle.push(styleSheet.textSelected);\n }\n\n return (\n <Touchable\n onPress={!isDisabled ? onPress : undefined}\n style={style}\n analyticsID=\"question-choice\"\n analyticsParams={{questionType}}\n >\n <View\n style={[styleSheet.boxShadow, styleSheet.container]}\n testID={prefixTestID && `${prefixTestID}${selectedSuffix}`}\n >\n {url ? (\n <View style={styleSheet.imageContainer}>\n <ImageBackground\n testID={prefixTestID && `${prefixTestID}${mediaSuffix}`}\n source={source}\n style={styleSheet.image}\n />\n </View>\n ) : null}\n <View\n style={[\n styleSheet.textContainer,\n squeezed && styleSheet.squeezedTextContainer,\n isSelected && selectedStyle\n ]}\n >\n <Html\n fontSize={squeezed ? theme.fontSize.medium : theme.fontSize.regular}\n style={htmlStyle}\n >\n {children}\n </Html>\n </View>\n </View>\n </Touchable>\n );\n};\n\nexport default Choice;\n"],"file":"index.native.js"}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/atom/image-background/index.native.tsx"],"names":["React","ImageBackground","ImageBackgroundBase","StyleSheet","getCleanUri","getResizedImage","Gradient","styles","create","image","width","height","gradient","flex","source","gradientStyle","style","testID","props","uri","_width","_height","resizeMode","flatten","maxHeight","undefined","maxWidth","resizedSource","children","remainingProps","_style","push"],"mappings":";;;;AAAA,OAAOA,KAAP,MAA+B,OAA/B;AACA,SACEC,eAAe,IAAIC,mBADrB,EAEEC,UAFF,QAKO,cALP;AAOA,OAAOC,WAAP,MAAwB,0BAAxB;AAEA,OAAOC,eAAP,MAA4B,8BAA5B;AACA,OAAOC,QAAP,MAAqB,0BAArB;AAEA,MAAMC,MAAM,GAAGJ,UAAU,CAACK,MAAX,CAAkB;AAC/BC,EAAAA,KAAK,EAAE;AACLC,IAAAA,KAAK,EAAE,MADF;AAELC,IAAAA,MAAM,EAAE;AAFH,GADwB;AAK/BC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,IAAI,EAAE;AADE;AALqB,CAAlB,CAAf;;AAmBA,MAAMZ,eAAe,GAAG,UAOX;AAAA,MAPY;AACvBa,IAAAA,MADuB;AAEvBF,IAAAA,QAFuB;AAGvBG,IAAAA,aAHuB;AAIvBC,IAAAA,KAJuB;AAKvBC,IAAAA,MAAM,GAAG;AALc,GAOZ;AAAA,MADRC,KACQ;;AACX;AACA,MAAIC,GAAuB,GAAGL,MAAM,IAAIA,MAAM,CAACK,GAA/C;;AAEA,MAAIA,GAAJ,EAAS;AACP,UAAM;AAACT,MAAAA,KAAK,EAAEU,MAAR;AAAgBT,MAAAA,MAAM,EAAEU,OAAxB;AAAiCC,MAAAA;AAAjC,QAA+CJ,KAArD;AACA,UAAM;AAACR,MAAAA,KAAD;AAAQC,MAAAA;AAAR,QAAkBR,UAAU,CAACoB,OAAX,CAAmB,CAAC;AAACb,MAAAA,KAAK,EAAEU,MAAR;AAAgBT,MAAAA,MAAM,EAAEU;AAAxB,KAAD,EAAmCL,KAAnC,CAAnB,CAAxB;AACA,UAAMQ,SAA6B,GAAG,OAAOb,MAAP,KAAkB,QAAlB,GAA6BA,MAA7B,GAAsCc,SAA5E;AACA,UAAMC,QAA4B,GAAG,OAAOhB,KAAP,KAAiB,QAAjB,GAA4BA,KAA5B,GAAoCe,SAAzE;AAEAN,IAAAA,GAAG,GAAGd,eAAe,CAACD,WAAW,CAACe,GAAD,CAAZ,EAAmB;AACtCK,MAAAA,SADsC;AAEtCE,MAAAA,QAFsC;AAGtCJ,MAAAA;AAHsC,KAAnB,CAArB;AAKD;;AAED,QAAMK,aAAa,GAAIR,GAAG,IAAI;AAACA,IAAAA;AAAD,GAAR,IAAkBL,MAAxC;;AAEA,MAAIF,QAAJ,EAAc;AACZ,UAAM;AAACgB,MAAAA;AAAD,QAAgCV,KAAtC;AAAA,UAAoBW,cAApB,iCAAsCX,KAAtC;;AACA,UAAMY,MAAmB,GAAG,CAACvB,MAAM,CAACK,QAAR,CAA5B;;AAEA,QAAIG,aAAJ,EAAmB;AACjBe,MAAAA,MAAM,CAACC,IAAP,CAAYhB,aAAZ;AACD;;AAED,wBACE,oBAAC,mBAAD,eACMc,cADN;AAEE,MAAA,MAAM,EAAEF,aAFV;AAGE,MAAA,KAAK,EAAE,CAACpB,MAAM,CAACE,KAAR,EAAeO,KAAf,CAHT;AAIE,MAAA,MAAM,EAAEC;AAJV,qBAME,oBAAC,QAAD;AAAU,MAAA,MAAM,EAAG,GAAEA,MAAO,WAA5B;AAAwC,MAAA,MAAM,EAAEL,QAAhD;AAA0D,MAAA,KAAK,EAAEkB;AAAjE,OACGF,QADH,CANF,CADF;AAYD;;AAED,sBACE,oBAAC,mBAAD,eACMV,KADN;AAEE,IAAA,MAAM,EAAES,aAFV;AAGE,IAAA,KAAK,EAAE,CAACpB,MAAM,CAACE,KAAR,EAAeO,KAAf,CAHT;AAIE,IAAA,MAAM,EAAEC;AAJV,KADF;AAQD,CAxDD;;AA0DA,eAAehB,eAAf","sourcesContent":["import React, {ReactNode} from 'react';\nimport {\n ImageBackground as ImageBackgroundBase,\n StyleSheet,\n ViewStyle,\n ImageStyle\n} from 'react-native';\n\nimport getCleanUri from '../../util/get-clean-uri';\n\nimport getResizedImage from '../../util/get-resized-image';\nimport Gradient from '../gradient/index.native';\n\nconst styles = StyleSheet.create({\n image: {\n width: '100%',\n height: '100%'\n },\n gradient: {\n flex: 1\n }\n});\n\nexport type Props = ImageStyle & {\n children?: ReactNode;\n gradient?: Array<string>;\n gradientStyle?: ViewStyle;\n testID?: string;\n source: {uri: string | undefined};\n style?: ViewStyle;\n};\n\nconst ImageBackground = ({\n source,\n gradient,\n gradientStyle,\n style,\n testID = 'image-background',\n ...props\n}: Props) => {\n // @ts-ignore this statement is enough but type is too weak\n let uri: string | undefined = source && source.uri;\n\n if (uri) {\n const {width: _width, height: _height, resizeMode} = props;\n const {width, height} = StyleSheet.flatten([{width: _width, height: _height}, style]);\n const maxHeight: number | undefined = typeof height === 'number' ? height : undefined;\n const maxWidth: number | undefined = typeof width === 'number' ? width : undefined;\n\n uri = getResizedImage(getCleanUri(uri), {\n maxHeight,\n maxWidth,\n resizeMode\n });\n }\n\n const resizedSource = (uri && {uri}) || source;\n\n if (gradient) {\n const {children, ...remainingProps} = props;\n const _style: ViewStyle[] = [styles.gradient];\n\n if (gradientStyle) {\n _style.push(gradientStyle);\n }\n\n return (\n <ImageBackgroundBase\n {...remainingProps}\n source={resizedSource}\n style={[styles.image, style]}\n testID={testID}\n >\n <Gradient testID={`${testID}-gradient`} colors={gradient} style={_style}>\n {children}\n </Gradient>\n </ImageBackgroundBase>\n );\n }\n\n return (\n <ImageBackgroundBase\n {...props}\n source={resizedSource}\n style={[styles.image, style]}\n testID={testID}\n />\n );\n};\n\nexport default ImageBackground;\n"],"file":"index.native.js"}
@@ -5,7 +5,6 @@ import PropTypes from 'prop-types';
5
5
  import { NovaSolidAudioAudioControlPlay as PlayIcon, NovaLineFilesOfficeFileOfficePdf as PDFIcon, NovaCompositionCoorpacademyMicrophone as PodcastIcon } from '@coorpacademy/nova-icons';
6
6
  import classnames from 'classnames';
7
7
  import Provider from '../provider';
8
- import { innerHTML } from '../label/style.css';
9
8
  import style from './style.css';
10
9
  const TYPES = {
11
10
  pdf: {
@@ -59,7 +58,7 @@ const ResourceMiniature = (props, context) => {
59
58
  color: white,
60
59
  className: style.icon
61
60
  }) : null), /*#__PURE__*/React.createElement("div", {
62
- className: classnames(descriptionClassName, innerHTML) // eslint-disable-next-line react/no-danger
61
+ className: classnames(descriptionClassName, style.innerHTML) // eslint-disable-next-line react/no-danger
63
62
  ,
64
63
  dangerouslySetInnerHTML: {
65
64
  __html: description
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/atom/resource-miniature/index.js"],"names":["React","PropTypes","NovaSolidAudioAudioControlPlay","PlayIcon","NovaLineFilesOfficeFileOfficePdf","PDFIcon","NovaCompositionCoorpacademyMicrophone","PodcastIcon","classnames","Provider","innerHTML","style","TYPES","pdf","icon","audio","video","ResourceMiniature","props","context","skin","type","description","poster","onClick","handleOnClick","selected","descriptionClassName","selectedDescription","white","primary","posterOutlineColor","Icon","posterWrapper","borderColor","backgroundImage","__html","propTypes","oneOf","bool","string","func","contextTypes","childContextTypes"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {get, keys} from 'lodash/fp';\nimport {\n NovaSolidAudioAudioControlPlay as PlayIcon,\n NovaLineFilesOfficeFileOfficePdf as PDFIcon,\n NovaCompositionCoorpacademyMicrophone as PodcastIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport Provider from '../provider';\nimport {innerHTML} from '../label/style.css';\nimport style from './style.css';\n\nconst TYPES = {\n pdf: {style: style.pdf, icon: PDFIcon},\n audio: {style: style.audio, icon: PodcastIcon},\n video: {style: style.video, icon: PlayIcon}\n};\n\nconst ResourceMiniature = (props, context) => {\n const {skin} = context;\n const {type, description, poster, onClick: handleOnClick, selected = false} = props;\n const descriptionClassName = selected ? style.selectedDescription : style.description;\n const white = get('common.white', skin);\n const primary = get('common.primary', skin);\n const posterOutlineColor = selected ? primary : white;\n const Icon = TYPES[type].icon;\n return (\n <div className={TYPES[type].style} onClick={handleOnClick} data-type={type}>\n <div className={style.posterWrapper} style={{borderColor: posterOutlineColor}}>\n <div className={style.poster} style={{backgroundImage: `url(${poster})`}} />\n {!selected ? <Icon color={white} className={style.icon} /> : null}\n </div>\n <div\n className={classnames(descriptionClassName, innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: description}}\n />\n </div>\n );\n};\n\nResourceMiniature.propTypes = {\n type: PropTypes.oneOf(keys(TYPES)),\n selected: PropTypes.bool,\n description: PropTypes.string,\n poster: PropTypes.string,\n onClick: PropTypes.func\n};\n\nResourceMiniature.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default ResourceMiniature;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/atom/resource-miniature/index.js"],"names":["React","PropTypes","NovaSolidAudioAudioControlPlay","PlayIcon","NovaLineFilesOfficeFileOfficePdf","PDFIcon","NovaCompositionCoorpacademyMicrophone","PodcastIcon","classnames","Provider","style","TYPES","pdf","icon","audio","video","ResourceMiniature","props","context","skin","type","description","poster","onClick","handleOnClick","selected","descriptionClassName","selectedDescription","white","primary","posterOutlineColor","Icon","posterWrapper","borderColor","backgroundImage","innerHTML","__html","propTypes","oneOf","bool","string","func","contextTypes","childContextTypes"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {get, keys} from 'lodash/fp';\nimport {\n NovaSolidAudioAudioControlPlay as PlayIcon,\n NovaLineFilesOfficeFileOfficePdf as PDFIcon,\n NovaCompositionCoorpacademyMicrophone as PodcastIcon\n} from '@coorpacademy/nova-icons';\nimport classnames from 'classnames';\nimport Provider from '../provider';\nimport style from './style.css';\n\nconst TYPES = {\n pdf: {style: style.pdf, icon: PDFIcon},\n audio: {style: style.audio, icon: PodcastIcon},\n video: {style: style.video, icon: PlayIcon}\n};\n\nconst ResourceMiniature = (props, context) => {\n const {skin} = context;\n const {type, description, poster, onClick: handleOnClick, selected = false} = props;\n const descriptionClassName = selected ? style.selectedDescription : style.description;\n const white = get('common.white', skin);\n const primary = get('common.primary', skin);\n const posterOutlineColor = selected ? primary : white;\n const Icon = TYPES[type].icon;\n return (\n <div className={TYPES[type].style} onClick={handleOnClick} data-type={type}>\n <div className={style.posterWrapper} style={{borderColor: posterOutlineColor}}>\n <div className={style.poster} style={{backgroundImage: `url(${poster})`}} />\n {!selected ? <Icon color={white} className={style.icon} /> : null}\n </div>\n <div\n className={classnames(descriptionClassName, style.innerHTML)}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: description}}\n />\n </div>\n );\n};\n\nResourceMiniature.propTypes = {\n type: PropTypes.oneOf(keys(TYPES)),\n selected: PropTypes.bool,\n description: PropTypes.string,\n poster: PropTypes.string,\n onClick: PropTypes.func\n};\n\nResourceMiniature.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default ResourceMiniature;\n"],"file":"index.js"}
@@ -75,3 +75,7 @@
75
75
  flex: 1 0 52px;
76
76
  }
77
77
  }
78
+
79
+ .innerHTML {
80
+ composes: innerHTML from '../label/style.css';
81
+ }
@@ -76,7 +76,8 @@ const CMPopin = props => {
76
76
  theme,
77
77
  details,
78
78
  requiredSelection,
79
- disabled
79
+ disabled,
80
+ id
80
81
  } = el;
81
82
  return /*#__PURE__*/React.createElement("div", {
82
83
  key: index,
@@ -90,7 +91,8 @@ const CMPopin = props => {
90
91
  theme,
91
92
  details,
92
93
  requiredSelection,
93
- disabled
94
+ disabled,
95
+ id
94
96
  }));
95
97
  })(listBtnSwicth);
96
98
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/cm-popin/index.js"],"names":["React","PropTypes","NovaSolidInterfaceFeedbackInterfaceAlertDiamond","AlertDiamond","NovaSolidApplicationsWindowUpload3","WindowUpload","NovaLineSettingsCookie","Cookie","map","Cta","ButtonLinkIconOnly","InputSwitch","style","CMPopin","props","content","mode","firstButton","secondButton","onClose","header","icon","backgroundImageUrl","descriptionText","thirdButton","cookieTitle","descriptionBtnTxt","listBtnSwicth","logo","LogoComponent","backgroundImageStyle","backgroundImage","backgroundSize","renderHeader","headerBackground","cookieHeader","cookieIconContainer","cookieIcon","getClassBtnSwitch","index","btnList","firstBtnSwitchContainer","length","lastBtnSwitchContainer","singleSwitchContainer","renderBtnSwitch","convert","cap","el","type","title","value","onChange","titlePosition","theme","details","requiredSelection","disabled","background","popinCookie","popin","popinHeader","titleContainer","contentSection","message","__html","descriptionBtn","buttonContainer","largeButton","button","label","handleOnclick","propTypes","string","oneOf","shape","func","bool","boolean","arrayOf"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaSolidInterfaceFeedbackInterfaceAlertDiamond as AlertDiamond,\n NovaSolidApplicationsWindowUpload3 as WindowUpload,\n NovaLineSettingsCookie as Cookie\n} from '@coorpacademy/nova-icons';\nimport map from 'lodash/fp/map';\nimport Cta from '../../atom/button-link';\nimport ButtonLinkIconOnly from '../../atom/button-link-icon-only';\nimport InputSwitch from '../../atom/input-switch';\nimport style from './style.css';\n\nconst CMPopin = props => {\n const {\n content,\n mode = 'alert',\n firstButton,\n secondButton,\n onClose,\n header,\n icon,\n backgroundImageUrl,\n descriptionText,\n thirdButton,\n cookieTitle,\n descriptionBtnTxt,\n listBtnSwicth\n } = props;\n\n const logo = {\n AlertDiamond,\n WindowUpload\n };\n const LogoComponent = logo[icon];\n\n const backgroundImageStyle = backgroundImageUrl\n ? {\n backgroundImage: `url(${backgroundImageUrl})`,\n backgroundSize: 'cover'\n }\n : null;\n const renderHeader = () => {\n if (header) return <img className={style.headerBackground} src={header} />;\n if (mode === 'cookie')\n return (\n <div className={style.cookieHeader}>\n <div className={style.cookieIconContainer}>\n <Cookie className={style.cookieIcon} />\n </div>\n <div className={style.cookieTitle}>{cookieTitle}</div>\n </div>\n );\n return null;\n };\n const getClassBtnSwitch = (index, btnList) => {\n switch (index) {\n case 0:\n return style.firstBtnSwitchContainer;\n case btnList.length - 1:\n return style.lastBtnSwitchContainer;\n default:\n return style.singleSwitchContainer;\n }\n };\n const renderBtnSwitch = () => {\n return map.convert({cap: false})((el, index) => {\n const {\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled\n } = el;\n return (\n <div key={index} className={getClassBtnSwitch(index, listBtnSwicth)}>\n <InputSwitch\n {...{\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled\n }}\n />\n </div>\n );\n })(listBtnSwicth);\n };\n return (\n <div\n className={mode !== 'cookie' ? style.background : null}\n style={backgroundImageStyle}\n data-name={'cm-popin-container'}\n >\n <div className={mode === 'cookie' ? style.popinCookie : style.popin}>\n <header className={style.popinHeader}>\n {renderHeader()}\n {onClose ? (\n <ButtonLinkIconOnly\n onClick={onClose}\n data-name={'close-icon'}\n aria-label={'close-icon'}\n size=\"small\"\n icon=\"close\"\n />\n ) : null}\n </header>\n <div className={style.titleContainer}>\n <div className={style.contentSection}>\n {LogoComponent ? <LogoComponent className={style.icon} /> : null}\n {content ? (\n <p\n className={mode === 'alert' ? style.content : style.message}\n data-name={'cm-popin-content'}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n ) : null}\n </div>\n {descriptionText ? (\n <p\n className={style.descriptionText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: descriptionText}}\n />\n ) : null}\n </div>\n {descriptionBtnTxt ? <div className={style.descriptionBtn}>{descriptionBtnTxt}</div> : null}\n {renderBtnSwitch()}\n <div className={style.buttonContainer}>\n {firstButton ? (\n <div className={firstButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={firstButton.label}\n onClick={firstButton.handleOnclick}\n data-name={'cm-popin-cta'}\n aria-label={firstButton['aria-label']}\n type={firstButton.type}\n />\n </div>\n ) : null}\n {secondButton ? (\n <div className={secondButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={secondButton.label}\n onClick={secondButton.handleOnclick}\n data-name={`cm-popin-cta-${secondButton.type}`}\n aria-label={secondButton['aria-label']}\n type={secondButton.type}\n />\n </div>\n ) : null}\n {thirdButton ? (\n <div className={thirdButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={thirdButton.label}\n onClick={thirdButton.handleOnclick}\n data-name={`cm-popin-cta-${thirdButton.type}`}\n aria-label={thirdButton['aria-label']}\n type={thirdButton.type}\n />\n </div>\n ) : null}\n </div>\n </div>\n </div>\n );\n};\n\nCMPopin.propTypes = {\n content: PropTypes.string,\n mode: PropTypes.oneOf(['alert', 'information', 'cookie']),\n header: PropTypes.string,\n firstButton: PropTypes.shape({\n label: PropTypes.string,\n handleOnclick: PropTypes.func,\n 'aria-label': PropTypes.string,\n largeButton: PropTypes.bool,\n type: PropTypes.oneOf(['dangerous', 'primary', 'secondary'])\n }),\n secondButton: PropTypes.shape({\n label: PropTypes.string,\n handleOnclick: PropTypes.func,\n type: PropTypes.oneOf(['dangerous', 'primary', 'secondary']),\n 'aria-label': PropTypes.string,\n largeButton: PropTypes.boolean\n }),\n thirdButton: PropTypes.shape({\n label: PropTypes.string,\n handleOnclick: PropTypes.func,\n type: PropTypes.oneOf(['dangerous', 'primary', 'secondary']),\n 'aria-label': PropTypes.string,\n largeButton: PropTypes.boolean\n }),\n onClose: PropTypes.func,\n icon: PropTypes.string,\n backgroundImageUrl: PropTypes.string,\n descriptionText: PropTypes.string,\n cookieTitle: PropTypes.string,\n descriptionBtnTxt: PropTypes.string,\n listBtnSwicth: PropTypes.arrayOf(PropTypes.shape(InputSwitch.propTypes))\n};\n\nexport default CMPopin;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/molecule/cm-popin/index.js"],"names":["React","PropTypes","NovaSolidInterfaceFeedbackInterfaceAlertDiamond","AlertDiamond","NovaSolidApplicationsWindowUpload3","WindowUpload","NovaLineSettingsCookie","Cookie","map","Cta","ButtonLinkIconOnly","InputSwitch","style","CMPopin","props","content","mode","firstButton","secondButton","onClose","header","icon","backgroundImageUrl","descriptionText","thirdButton","cookieTitle","descriptionBtnTxt","listBtnSwicth","logo","LogoComponent","backgroundImageStyle","backgroundImage","backgroundSize","renderHeader","headerBackground","cookieHeader","cookieIconContainer","cookieIcon","getClassBtnSwitch","index","btnList","firstBtnSwitchContainer","length","lastBtnSwitchContainer","singleSwitchContainer","renderBtnSwitch","convert","cap","el","type","title","value","onChange","titlePosition","theme","details","requiredSelection","disabled","id","background","popinCookie","popin","popinHeader","titleContainer","contentSection","message","__html","descriptionBtn","buttonContainer","largeButton","button","label","handleOnclick","propTypes","string","oneOf","shape","func","bool","boolean","arrayOf"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n NovaSolidInterfaceFeedbackInterfaceAlertDiamond as AlertDiamond,\n NovaSolidApplicationsWindowUpload3 as WindowUpload,\n NovaLineSettingsCookie as Cookie\n} from '@coorpacademy/nova-icons';\nimport map from 'lodash/fp/map';\nimport Cta from '../../atom/button-link';\nimport ButtonLinkIconOnly from '../../atom/button-link-icon-only';\nimport InputSwitch from '../../atom/input-switch';\nimport style from './style.css';\n\nconst CMPopin = props => {\n const {\n content,\n mode = 'alert',\n firstButton,\n secondButton,\n onClose,\n header,\n icon,\n backgroundImageUrl,\n descriptionText,\n thirdButton,\n cookieTitle,\n descriptionBtnTxt,\n listBtnSwicth\n } = props;\n\n const logo = {\n AlertDiamond,\n WindowUpload\n };\n const LogoComponent = logo[icon];\n\n const backgroundImageStyle = backgroundImageUrl\n ? {\n backgroundImage: `url(${backgroundImageUrl})`,\n backgroundSize: 'cover'\n }\n : null;\n const renderHeader = () => {\n if (header) return <img className={style.headerBackground} src={header} />;\n if (mode === 'cookie')\n return (\n <div className={style.cookieHeader}>\n <div className={style.cookieIconContainer}>\n <Cookie className={style.cookieIcon} />\n </div>\n <div className={style.cookieTitle}>{cookieTitle}</div>\n </div>\n );\n return null;\n };\n const getClassBtnSwitch = (index, btnList) => {\n switch (index) {\n case 0:\n return style.firstBtnSwitchContainer;\n case btnList.length - 1:\n return style.lastBtnSwitchContainer;\n default:\n return style.singleSwitchContainer;\n }\n };\n const renderBtnSwitch = () => {\n return map.convert({cap: false})((el, index) => {\n const {\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id\n } = el;\n return (\n <div key={index} className={getClassBtnSwitch(index, listBtnSwicth)}>\n <InputSwitch\n {...{\n type,\n title,\n value,\n onChange,\n titlePosition,\n theme,\n details,\n requiredSelection,\n disabled,\n id\n }}\n />\n </div>\n );\n })(listBtnSwicth);\n };\n return (\n <div\n className={mode !== 'cookie' ? style.background : null}\n style={backgroundImageStyle}\n data-name={'cm-popin-container'}\n >\n <div className={mode === 'cookie' ? style.popinCookie : style.popin}>\n <header className={style.popinHeader}>\n {renderHeader()}\n {onClose ? (\n <ButtonLinkIconOnly\n onClick={onClose}\n data-name={'close-icon'}\n aria-label={'close-icon'}\n size=\"small\"\n icon=\"close\"\n />\n ) : null}\n </header>\n <div className={style.titleContainer}>\n <div className={style.contentSection}>\n {LogoComponent ? <LogoComponent className={style.icon} /> : null}\n {content ? (\n <p\n className={mode === 'alert' ? style.content : style.message}\n data-name={'cm-popin-content'}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: content}}\n />\n ) : null}\n </div>\n {descriptionText ? (\n <p\n className={style.descriptionText}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: descriptionText}}\n />\n ) : null}\n </div>\n {descriptionBtnTxt ? <div className={style.descriptionBtn}>{descriptionBtnTxt}</div> : null}\n {renderBtnSwitch()}\n <div className={style.buttonContainer}>\n {firstButton ? (\n <div className={firstButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={firstButton.label}\n onClick={firstButton.handleOnclick}\n data-name={'cm-popin-cta'}\n aria-label={firstButton['aria-label']}\n type={firstButton.type}\n />\n </div>\n ) : null}\n {secondButton ? (\n <div className={secondButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={secondButton.label}\n onClick={secondButton.handleOnclick}\n data-name={`cm-popin-cta-${secondButton.type}`}\n aria-label={secondButton['aria-label']}\n type={secondButton.type}\n />\n </div>\n ) : null}\n {thirdButton ? (\n <div className={thirdButton.largeButton ? style.largeButton : style.button}>\n <Cta\n label={thirdButton.label}\n onClick={thirdButton.handleOnclick}\n data-name={`cm-popin-cta-${thirdButton.type}`}\n aria-label={thirdButton['aria-label']}\n type={thirdButton.type}\n />\n </div>\n ) : null}\n </div>\n </div>\n </div>\n );\n};\n\nCMPopin.propTypes = {\n content: PropTypes.string,\n mode: PropTypes.oneOf(['alert', 'information', 'cookie']),\n header: PropTypes.string,\n firstButton: PropTypes.shape({\n label: PropTypes.string,\n handleOnclick: PropTypes.func,\n 'aria-label': PropTypes.string,\n largeButton: PropTypes.bool,\n type: PropTypes.oneOf(['dangerous', 'primary', 'secondary'])\n }),\n secondButton: PropTypes.shape({\n label: PropTypes.string,\n handleOnclick: PropTypes.func,\n type: PropTypes.oneOf(['dangerous', 'primary', 'secondary']),\n 'aria-label': PropTypes.string,\n largeButton: PropTypes.boolean\n }),\n thirdButton: PropTypes.shape({\n label: PropTypes.string,\n handleOnclick: PropTypes.func,\n type: PropTypes.oneOf(['dangerous', 'primary', 'secondary']),\n 'aria-label': PropTypes.string,\n largeButton: PropTypes.boolean\n }),\n onClose: PropTypes.func,\n icon: PropTypes.string,\n backgroundImageUrl: PropTypes.string,\n descriptionText: PropTypes.string,\n cookieTitle: PropTypes.string,\n descriptionBtnTxt: PropTypes.string,\n listBtnSwicth: PropTypes.arrayOf(PropTypes.shape(InputSwitch.propTypes))\n};\n\nexport default CMPopin;\n"],"file":"index.js"}
@@ -14,7 +14,6 @@ export default {
14
14
  }),
15
15
  klf: PropTypes.shape({
16
16
  label: PropTypes.string,
17
- onClick: PropTypes.func,
18
17
  tooltip: PropTypes.string
19
18
  })
20
19
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/molecule/review-correction-popin/prop-types.js"],"names":["PropTypes","type","oneOf","resultLabel","string","information","shape","label","message","next","onClick","func","klf","tooltip"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,eAAe;AACbC,EAAAA,IAAI,EAAED,SAAS,CAACE,KAAV,CAAgB,CAAC,OAAD,EAAU,OAAV,CAAhB,CADO;AAEbC,EAAAA,WAAW,EAAEH,SAAS,CAACI,MAFV;AAGbC,EAAAA,WAAW,EAAEL,SAAS,CAACM,KAAV,CAAgB;AAC3BC,IAAAA,KAAK,EAAEP,SAAS,CAACI,MADU;AAE3BI,IAAAA,OAAO,EAAER,SAAS,CAACI;AAFQ,GAAhB,CAHA;AAObK,EAAAA,IAAI,EAAET,SAAS,CAACM,KAAV,CAAgB;AACpBC,IAAAA,KAAK,EAAEP,SAAS,CAACI,MADG;AAEpBM,IAAAA,OAAO,EAAEV,SAAS,CAACW,IAFC;AAGpB,iBAAaX,SAAS,CAACI,MAHH;AAIpB,kBAAcJ,SAAS,CAACI;AAJJ,GAAhB,CAPO;AAabQ,EAAAA,GAAG,EAAEZ,SAAS,CAACM,KAAV,CAAgB;AACnBC,IAAAA,KAAK,EAAEP,SAAS,CAACI,MADE;AAEnBM,IAAAA,OAAO,EAAEV,SAAS,CAACW,IAFA;AAGnBE,IAAAA,OAAO,EAAEb,SAAS,CAACI;AAHA,GAAhB;AAbQ,CAAf","sourcesContent":["import PropTypes from 'prop-types';\n\nexport default {\n type: PropTypes.oneOf(['right', 'wrong']),\n resultLabel: PropTypes.string,\n information: PropTypes.shape({\n label: PropTypes.string,\n message: PropTypes.string\n }),\n next: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n 'data-name': PropTypes.string,\n 'aria-label': PropTypes.string\n }),\n klf: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n tooltip: PropTypes.string\n })\n};\n"],"file":"prop-types.js"}
1
+ {"version":3,"sources":["../../../src/molecule/review-correction-popin/prop-types.js"],"names":["PropTypes","type","oneOf","resultLabel","string","information","shape","label","message","next","onClick","func","klf","tooltip"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AAEA,eAAe;AACbC,EAAAA,IAAI,EAAED,SAAS,CAACE,KAAV,CAAgB,CAAC,OAAD,EAAU,OAAV,CAAhB,CADO;AAEbC,EAAAA,WAAW,EAAEH,SAAS,CAACI,MAFV;AAGbC,EAAAA,WAAW,EAAEL,SAAS,CAACM,KAAV,CAAgB;AAC3BC,IAAAA,KAAK,EAAEP,SAAS,CAACI,MADU;AAE3BI,IAAAA,OAAO,EAAER,SAAS,CAACI;AAFQ,GAAhB,CAHA;AAObK,EAAAA,IAAI,EAAET,SAAS,CAACM,KAAV,CAAgB;AACpBC,IAAAA,KAAK,EAAEP,SAAS,CAACI,MADG;AAEpBM,IAAAA,OAAO,EAAEV,SAAS,CAACW,IAFC;AAGpB,iBAAaX,SAAS,CAACI,MAHH;AAIpB,kBAAcJ,SAAS,CAACI;AAJJ,GAAhB,CAPO;AAabQ,EAAAA,GAAG,EAAEZ,SAAS,CAACM,KAAV,CAAgB;AACnBC,IAAAA,KAAK,EAAEP,SAAS,CAACI,MADE;AAEnBS,IAAAA,OAAO,EAAEb,SAAS,CAACI;AAFA,GAAhB;AAbQ,CAAf","sourcesContent":["import PropTypes from 'prop-types';\n\nexport default {\n type: PropTypes.oneOf(['right', 'wrong']),\n resultLabel: PropTypes.string,\n information: PropTypes.shape({\n label: PropTypes.string,\n message: PropTypes.string\n }),\n next: PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n 'data-name': PropTypes.string,\n 'aria-label': PropTypes.string\n }),\n klf: PropTypes.shape({\n label: PropTypes.string,\n tooltip: PropTypes.string\n })\n};\n"],"file":"prop-types.js"}
@@ -277,7 +277,7 @@ _:-ms-fullscreen,
277
277
  display: flex;
278
278
  flex-direction: column;
279
279
  margin-top: 25px;
280
- width: 90%;
280
+ max-width: 335px;
281
281
  }
282
282
 
283
283
  .buttonRevise {
@@ -0,0 +1,184 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ import React, { useMemo } from 'react';
4
+ import PropTypes from 'prop-types';
5
+ import classnames from 'classnames';
6
+ import get from 'lodash/fp/get';
7
+ import getOr from 'lodash/fp/getOr';
8
+ import Answer from '../../molecule/answer';
9
+ import ButtonLink from '../../atom/button-link';
10
+ import Provider from '../../atom/provider';
11
+ import ReviewCorrectionPopin from '../../molecule/review-correction-popin';
12
+ import propTypes from './prop-types';
13
+ import style from './style.css';
14
+
15
+ const CorrectionPopin = ({
16
+ correctionPopinProps,
17
+ slideIndex,
18
+ showCorrectionPopin,
19
+ animateCorrectionPopin
20
+ }) => {
21
+ if (!showCorrectionPopin) return null;
22
+ const klf = getOr({}, 'klf', correctionPopinProps);
23
+ const information = getOr({
24
+ label: '',
25
+ message: ''
26
+ }, 'information', correctionPopinProps);
27
+ const next = get('next', correctionPopinProps);
28
+ const _correctionPopinProps = {
29
+ next: {
30
+ onClick: () => {
31
+ // eslint-disable-next-line no-console
32
+ console.log('Next Slide');
33
+ },
34
+ label: next && next.label,
35
+ 'data-name': `next-question-button-${slideIndex}`,
36
+ 'aria-label': next && next['aria-label']
37
+ },
38
+ klf,
39
+ information,
40
+ type: correctionPopinProps.type,
41
+ resultLabel: correctionPopinProps.resultLabel
42
+ };
43
+ return /*#__PURE__*/React.createElement("div", {
44
+ className: classnames(style.correctionPopinWrapper, animateCorrectionPopin ? style.popinAnimation : null)
45
+ }, /*#__PURE__*/React.createElement(ReviewCorrectionPopin, _correctionPopinProps));
46
+ };
47
+
48
+ CorrectionPopin.propTypes = process.env.NODE_ENV !== "production" ? {
49
+ slideIndex: PropTypes.string,
50
+ showCorrectionPopin: PropTypes.bool,
51
+ animateCorrectionPopin: PropTypes.bool,
52
+ correctionPopinProps: propTypes.correctionPopinProps
53
+ } : {};
54
+
55
+ const ValidateButton = ({
56
+ slideIndex,
57
+ validateButton,
58
+ primarySkinColor
59
+ }) => {
60
+ const {
61
+ label,
62
+ onClick,
63
+ disabled
64
+ } = validateButton;
65
+ const validateButtonProps = {
66
+ type: 'primary',
67
+ label,
68
+ 'aria-label': label,
69
+ 'data-name': `slide-validate-button-${slideIndex}`,
70
+ onClick,
71
+ disabled,
72
+ className: style.validateButton,
73
+ customStyle: {
74
+ backgroundColor: primarySkinColor
75
+ }
76
+ /*
77
+ slide validation action, this will trigger the correction popin
78
+ (with the useEffect that fires the dispatchers, if there is a nextContent content,
79
+ it will be loaded here) but will not trigger any animations unless the endReview
80
+ signal is received (all slide will disappear, also fired in a useEffect),
81
+ if it is the last slide and the content needs to be different, then that update will
82
+ be handled on the next slide logic but the content will be carried from here.
83
+ onClick: async () => {
84
+ // endReview based on nextContent ref exit node values: 'successExitNode' : 'failExitNode'
85
+ await validateSlide();
86
+ },
87
+ */
88
+
89
+ };
90
+ return /*#__PURE__*/React.createElement("div", {
91
+ key: "button-wrapper",
92
+ className: style.validateButtonWrapper
93
+ }, /*#__PURE__*/React.createElement(ButtonLink, validateButtonProps));
94
+ };
95
+
96
+ ValidateButton.propTypes = process.env.NODE_ENV !== "production" ? {
97
+ slideIndex: PropTypes.string,
98
+ validateButton: propTypes.validateButton,
99
+ primarySkinColor: PropTypes.string
100
+ } : {};
101
+
102
+ const QuestionContainer = props => {
103
+ const {
104
+ answerUI,
105
+ questionText,
106
+ questionOrigin
107
+ } = props;
108
+ if (!answerUI || !questionText) return null;
109
+ const answerProps = get(['model', 'choices'], answerUI) ?
110
+ /* istanbul ignore next */
111
+ _extends(_extends({}, answerUI), {}, {
112
+ model: _extends(_extends({}, answerUI.model), {}, {
113
+ answers: answerUI.model.choices
114
+ })
115
+ }) : answerUI;
116
+ return /*#__PURE__*/React.createElement("div", {
117
+ key: "content-container",
118
+ className: style.slideContentContainer
119
+ }, /*#__PURE__*/React.createElement("div", {
120
+ key: "from-course",
121
+ className: style.questionOrigin
122
+ }, questionOrigin), /*#__PURE__*/React.createElement("div", {
123
+ key: "title",
124
+ className: style.question
125
+ }, questionText), /*#__PURE__*/React.createElement("div", {
126
+ key: "help",
127
+ className: style.help
128
+ }, get('help', answerUI)), /*#__PURE__*/React.createElement("div", {
129
+ key: "answer-container",
130
+ className: style.answerContainer
131
+ }, /*#__PURE__*/React.createElement(Answer, _extends({}, answerProps, {
132
+ key: "answer"
133
+ }))));
134
+ };
135
+
136
+ QuestionContainer.propTypes = process.env.NODE_ENV !== "production" ? {
137
+ answerUI: PropTypes.shape(propTypes.slide.answerUI),
138
+ questionText: PropTypes.string,
139
+ questionOrigin: PropTypes.string
140
+ } : {};
141
+
142
+ const Slide = (props, context) => {
143
+ const {
144
+ slide,
145
+ validateButton,
146
+ correctionPopinProps,
147
+ slideIndex = '0'
148
+ } = props;
149
+ const {
150
+ skin
151
+ } = context;
152
+ const primarySkinColor = useMemo(() => getOr('#00B0FF', 'common.primary', skin), [skin]);
153
+ const {
154
+ parentContentTitle,
155
+ questionText,
156
+ answerUI,
157
+ showCorrectionPopin,
158
+ animateCorrectionPopin
159
+ } = slide;
160
+ return /*#__PURE__*/React.createElement("div", {
161
+ "data-name": `slide-container`,
162
+ className: style.slide
163
+ }, /*#__PURE__*/React.createElement(QuestionContainer, {
164
+ questionOrigin: parentContentTitle,
165
+ questionText: questionText,
166
+ answerUI: answerUI
167
+ }), /*#__PURE__*/React.createElement(ValidateButton, {
168
+ slideIndex: slideIndex,
169
+ validateButton: validateButton,
170
+ primarySkinColor: primarySkinColor
171
+ }), /*#__PURE__*/React.createElement(CorrectionPopin, {
172
+ correctionPopinProps: correctionPopinProps,
173
+ slideIndex: slideIndex,
174
+ showCorrectionPopin: showCorrectionPopin,
175
+ animateCorrectionPopin: animateCorrectionPopin
176
+ }));
177
+ };
178
+
179
+ Slide.propTypes = process.env.NODE_ENV !== "production" ? propTypes : {};
180
+ Slide.contextTypes = {
181
+ skin: Provider.childContextTypes.skin
182
+ };
183
+ export default Slide;
184
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/organism/review-slide/index.js"],"names":["React","useMemo","PropTypes","classnames","get","getOr","Answer","ButtonLink","Provider","ReviewCorrectionPopin","propTypes","style","CorrectionPopin","correctionPopinProps","slideIndex","showCorrectionPopin","animateCorrectionPopin","klf","information","label","message","next","_correctionPopinProps","onClick","console","log","type","resultLabel","correctionPopinWrapper","popinAnimation","string","bool","ValidateButton","validateButton","primarySkinColor","disabled","validateButtonProps","className","customStyle","backgroundColor","validateButtonWrapper","QuestionContainer","props","answerUI","questionText","questionOrigin","answerProps","model","answers","choices","slideContentContainer","question","help","answerContainer","shape","slide","Slide","context","skin","parentContentTitle","contextTypes","childContextTypes"],"mappings":"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","sourcesContent":["import React, {useMemo} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport get from 'lodash/fp/get';\nimport getOr from 'lodash/fp/getOr';\nimport Answer from '../../molecule/answer';\nimport ButtonLink from '../../atom/button-link';\nimport Provider from '../../atom/provider';\nimport ReviewCorrectionPopin from '../../molecule/review-correction-popin';\nimport propTypes from './prop-types';\nimport style from './style.css';\n\nconst CorrectionPopin = ({\n correctionPopinProps,\n slideIndex,\n showCorrectionPopin,\n animateCorrectionPopin\n}) => {\n if (!showCorrectionPopin) return null;\n\n const klf = getOr({}, 'klf', correctionPopinProps);\n const information = getOr({label: '', message: ''}, 'information', correctionPopinProps);\n const next = get('next', correctionPopinProps);\n\n const _correctionPopinProps = {\n next: {\n onClick: () => {\n // eslint-disable-next-line no-console\n console.log('Next Slide');\n },\n label: next && next.label,\n 'data-name': `next-question-button-${slideIndex}`,\n 'aria-label': next && next['aria-label']\n },\n klf,\n information,\n type: correctionPopinProps.type,\n resultLabel: correctionPopinProps.resultLabel\n };\n\n return (\n <div\n className={classnames(\n style.correctionPopinWrapper,\n animateCorrectionPopin ? style.popinAnimation : null\n )}\n >\n <ReviewCorrectionPopin {..._correctionPopinProps} />\n </div>\n );\n};\n\nCorrectionPopin.propTypes = {\n slideIndex: PropTypes.string,\n showCorrectionPopin: PropTypes.bool,\n animateCorrectionPopin: PropTypes.bool,\n correctionPopinProps: propTypes.correctionPopinProps\n};\n\nconst ValidateButton = ({slideIndex, validateButton, primarySkinColor}) => {\n const {label, onClick, disabled} = validateButton;\n const validateButtonProps = {\n type: 'primary',\n label,\n 'aria-label': label,\n 'data-name': `slide-validate-button-${slideIndex}`,\n onClick,\n disabled,\n className: style.validateButton,\n customStyle: {\n backgroundColor: primarySkinColor\n }\n /*\n slide validation action, this will trigger the correction popin\n (with the useEffect that fires the dispatchers, if there is a nextContent content,\n it will be loaded here) but will not trigger any animations unless the endReview\n signal is received (all slide will disappear, also fired in a useEffect),\n\n if it is the last slide and the content needs to be different, then that update will\n be handled on the next slide logic but the content will be carried from here.\n onClick: async () => {\n // endReview based on nextContent ref exit node values: 'successExitNode' : 'failExitNode'\n await validateSlide();\n },\n */\n };\n\n return (\n <div key=\"button-wrapper\" className={style.validateButtonWrapper}>\n <ButtonLink {...validateButtonProps} />\n </div>\n );\n};\n\nValidateButton.propTypes = {\n slideIndex: PropTypes.string,\n validateButton: propTypes.validateButton,\n primarySkinColor: PropTypes.string\n};\n\nconst QuestionContainer = props => {\n const {answerUI, questionText, questionOrigin} = props;\n if (!answerUI || !questionText) return null;\n\n const answerProps = get(['model', 'choices'], answerUI)\n ? /* istanbul ignore next */ {\n ...answerUI,\n model: {\n ...answerUI.model,\n answers: answerUI.model.choices\n }\n }\n : answerUI;\n\n return (\n <div key=\"content-container\" className={style.slideContentContainer}>\n <div key=\"from-course\" className={style.questionOrigin}>\n {questionOrigin}\n </div>\n <div key=\"title\" className={style.question}>\n {questionText}\n </div>\n <div key=\"help\" className={style.help}>\n {get('help', answerUI)}\n </div>\n <div key=\"answer-container\" className={style.answerContainer}>\n <Answer {...answerProps} key=\"answer\" />\n </div>\n </div>\n );\n};\n\nQuestionContainer.propTypes = {\n answerUI: PropTypes.shape(propTypes.slide.answerUI),\n questionText: PropTypes.string,\n questionOrigin: PropTypes.string\n};\n\nconst Slide = (props, context) => {\n const {slide, validateButton, correctionPopinProps, slideIndex = '0'} = props;\n\n const {skin} = context;\n const primarySkinColor = useMemo(() => getOr('#00B0FF', 'common.primary', skin), [skin]);\n const {\n parentContentTitle,\n questionText,\n answerUI,\n showCorrectionPopin,\n animateCorrectionPopin\n } = slide;\n\n return (\n <div data-name={`slide-container`} className={style.slide}>\n <QuestionContainer\n questionOrigin={parentContentTitle}\n questionText={questionText}\n answerUI={answerUI}\n />\n <ValidateButton\n slideIndex={slideIndex}\n validateButton={validateButton}\n primarySkinColor={primarySkinColor}\n />\n <CorrectionPopin\n correctionPopinProps={correctionPopinProps}\n slideIndex={slideIndex}\n showCorrectionPopin={showCorrectionPopin}\n animateCorrectionPopin={animateCorrectionPopin}\n />\n </div>\n );\n};\n\nSlide.propTypes = propTypes;\n\nSlide.contextTypes = {\n skin: Provider.childContextTypes.skin\n};\n\nexport default Slide;\n"],"file":"index.js"}
@@ -0,0 +1,37 @@
1
+ import PropTypes from 'prop-types';
2
+ import ReviewCorrectionPopinPropTypes from '../../molecule/review-correction-popin/prop-types';
3
+ import AnswerPropTypes from '../../molecule/answer/prop-types';
4
+ export const SlideProp = PropTypes.shape({
5
+ hidden: PropTypes.bool,
6
+ position: PropTypes.number,
7
+ animationType: PropTypes.string,
8
+ // 'unstack' | 'restack'
9
+ isCorrect: PropTypes.bool,
10
+ animateCorrectionPopin: PropTypes.bool,
11
+ showCorrectionPopin: PropTypes.bool,
12
+ parentContentTitle: PropTypes.string,
13
+ questionText: PropTypes.string,
14
+ answerUI: PropTypes.shape(AnswerPropTypes)
15
+ });
16
+ export default {
17
+ slideIndex: PropTypes.string,
18
+ slide: SlideProp,
19
+ validateButton: PropTypes.shape({
20
+ label: PropTypes.string.isRequired,
21
+ onClick: PropTypes.func.isRequired,
22
+ disabled: PropTypes.bool
23
+ }),
24
+ correctionPopinProps: PropTypes.shape({
25
+ klf: ReviewCorrectionPopinPropTypes.klf,
26
+ information: ReviewCorrectionPopinPropTypes.information,
27
+ next: PropTypes.shape({
28
+ label: PropTypes.string,
29
+ 'aria-label': PropTypes.string // Pourquoi le onClick du next n'est pas ici !
30
+ // updateSlidesOnNext: PropTypes.func.isRequired ???
31
+
32
+ }),
33
+ resultLabel: ReviewCorrectionPopinPropTypes.resultLabel,
34
+ type: ReviewCorrectionPopinPropTypes.type
35
+ })
36
+ };
37
+ //# sourceMappingURL=prop-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/organism/review-slide/prop-types.js"],"names":["PropTypes","ReviewCorrectionPopinPropTypes","AnswerPropTypes","SlideProp","shape","hidden","bool","position","number","animationType","string","isCorrect","animateCorrectionPopin","showCorrectionPopin","parentContentTitle","questionText","answerUI","slideIndex","slide","validateButton","label","isRequired","onClick","func","disabled","correctionPopinProps","klf","information","next","resultLabel","type"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,YAAtB;AACA,OAAOC,8BAAP,MAA2C,mDAA3C;AACA,OAAOC,eAAP,MAA4B,kCAA5B;AAEA,OAAO,MAAMC,SAAS,GAAGH,SAAS,CAACI,KAAV,CAAgB;AACvCC,EAAAA,MAAM,EAAEL,SAAS,CAACM,IADqB;AAEvCC,EAAAA,QAAQ,EAAEP,SAAS,CAACQ,MAFmB;AAGvCC,EAAAA,aAAa,EAAET,SAAS,CAACU,MAHc;AAGN;AACjCC,EAAAA,SAAS,EAAEX,SAAS,CAACM,IAJkB;AAKvCM,EAAAA,sBAAsB,EAAEZ,SAAS,CAACM,IALK;AAMvCO,EAAAA,mBAAmB,EAAEb,SAAS,CAACM,IANQ;AAOvCQ,EAAAA,kBAAkB,EAAEd,SAAS,CAACU,MAPS;AAQvCK,EAAAA,YAAY,EAAEf,SAAS,CAACU,MARe;AASvCM,EAAAA,QAAQ,EAAEhB,SAAS,CAACI,KAAV,CAAgBF,eAAhB;AAT6B,CAAhB,CAAlB;AAYP,eAAe;AACbe,EAAAA,UAAU,EAAEjB,SAAS,CAACU,MADT;AAEbQ,EAAAA,KAAK,EAAEf,SAFM;AAGbgB,EAAAA,cAAc,EAAEnB,SAAS,CAACI,KAAV,CAAgB;AAC9BgB,IAAAA,KAAK,EAAEpB,SAAS,CAACU,MAAV,CAAiBW,UADM;AAE9BC,IAAAA,OAAO,EAAEtB,SAAS,CAACuB,IAAV,CAAeF,UAFM;AAG9BG,IAAAA,QAAQ,EAAExB,SAAS,CAACM;AAHU,GAAhB,CAHH;AAQbmB,EAAAA,oBAAoB,EAAEzB,SAAS,CAACI,KAAV,CAAgB;AACpCsB,IAAAA,GAAG,EAAEzB,8BAA8B,CAACyB,GADA;AAEpCC,IAAAA,WAAW,EAAE1B,8BAA8B,CAAC0B,WAFR;AAGpCC,IAAAA,IAAI,EAAE5B,SAAS,CAACI,KAAV,CAAgB;AACpBgB,MAAAA,KAAK,EAAEpB,SAAS,CAACU,MADG;AAEpB,oBAAcV,SAAS,CAACU,MAFJ,CAEW;AAC/B;;AAHoB,KAAhB,CAH8B;AAQpCmB,IAAAA,WAAW,EAAE5B,8BAA8B,CAAC4B,WARR;AASpCC,IAAAA,IAAI,EAAE7B,8BAA8B,CAAC6B;AATD,GAAhB;AART,CAAf","sourcesContent":["import PropTypes from 'prop-types';\nimport ReviewCorrectionPopinPropTypes from '../../molecule/review-correction-popin/prop-types';\nimport AnswerPropTypes from '../../molecule/answer/prop-types';\n\nexport const SlideProp = PropTypes.shape({\n hidden: PropTypes.bool,\n position: PropTypes.number,\n animationType: PropTypes.string, // 'unstack' | 'restack'\n isCorrect: PropTypes.bool,\n animateCorrectionPopin: PropTypes.bool,\n showCorrectionPopin: PropTypes.bool,\n parentContentTitle: PropTypes.string,\n questionText: PropTypes.string,\n answerUI: PropTypes.shape(AnswerPropTypes)\n});\n\nexport default {\n slideIndex: PropTypes.string,\n slide: SlideProp,\n validateButton: PropTypes.shape({\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n disabled: PropTypes.bool\n }),\n correctionPopinProps: PropTypes.shape({\n klf: ReviewCorrectionPopinPropTypes.klf,\n information: ReviewCorrectionPopinPropTypes.information,\n next: PropTypes.shape({\n label: PropTypes.string,\n 'aria-label': PropTypes.string // Pourquoi le onClick du next n'est pas ici !\n // updateSlidesOnNext: PropTypes.func.isRequired ???\n }),\n resultLabel: ReviewCorrectionPopinPropTypes.resultLabel,\n type: ReviewCorrectionPopinPropTypes.type\n })\n};\n"],"file":"prop-types.js"}