ep-lib-ts 1.0.62 → 1.0.63

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 (324) hide show
  1. package/dist/components/basics/EpAvatar.vue.js +54 -1
  2. package/dist/components/basics/EpAvatar.vue.js.map +1 -1
  3. package/dist/components/basics/EpAvatar.vue2.js +1 -54
  4. package/dist/components/basics/EpAvatar.vue2.js.map +1 -1
  5. package/dist/components/basics/EpBadge.vue2.js.map +1 -1
  6. package/dist/components/basics/EpBtn.vue.js.map +1 -1
  7. package/dist/components/basics/EpCard.vue.js.map +1 -1
  8. package/dist/components/basics/EpChip.vue.js.map +1 -1
  9. package/dist/components/basics/EpDivider.vue.js.map +1 -1
  10. package/dist/components/basics/EpHover.vue.js.map +1 -1
  11. package/dist/components/basics/EpHoverCard.vue.js.map +1 -1
  12. package/dist/components/basics/EpIcon.vue.js.map +1 -1
  13. package/dist/components/basics/EpImg.vue.js.map +1 -1
  14. package/dist/components/basics/EpImgCarousel.vue.js.map +1 -1
  15. package/dist/components/basics/EpListItem.vue.js.map +1 -1
  16. package/dist/components/basics/EpSection.vue.js.map +1 -1
  17. package/dist/components/basics/EpSectionCols.vue.js.map +1 -1
  18. package/dist/components/basics/EpSpinner.vue.js.map +1 -1
  19. package/dist/components/basics/EpStackedList.vue.js +1 -1
  20. package/dist/components/basics/EpStackedList.vue.js.map +1 -1
  21. package/dist/components/basics/EpTable.vue.js.map +1 -1
  22. package/dist/components/basics/EpText.vue.js.map +1 -1
  23. package/dist/components/charts/EpBarChart.vue.js.map +1 -1
  24. package/dist/components/charts/EpFunnelChart.vue.js.map +1 -1
  25. package/dist/components/charts/EpLineChart.vue.js.map +1 -1
  26. package/dist/components/charts/EpPieChart.vue.js.map +1 -1
  27. package/dist/components/educationals/EpBranchingScenario.vue.js +1 -1
  28. package/dist/components/educationals/EpBranchingScenario.vue2.js.map +1 -1
  29. package/dist/components/educationals/EpCodeblock.vue.js.map +1 -1
  30. package/dist/components/educationals/EpConclusion.vue.js.map +1 -1
  31. package/dist/components/educationals/EpDescription.vue.js.map +1 -1
  32. package/dist/components/educationals/EpDocument.vue.js.map +1 -1
  33. package/dist/components/educationals/EpEdu.vue.js.map +1 -1
  34. package/dist/components/educationals/EpInstructions.vue.js.map +1 -1
  35. package/dist/components/educationals/EpIntroduction.vue.js.map +1 -1
  36. package/dist/components/educationals/EpObjective.vue.js.map +1 -1
  37. package/dist/components/educationals/EpReading.vue.js +1 -1
  38. package/dist/components/educationals/EpReading.vue.js.map +1 -1
  39. package/dist/components/educationals/EpResource.vue.js +1 -1
  40. package/dist/components/educationals/EpResource.vue.js.map +1 -1
  41. package/dist/components/educationals/EpScope.vue.js.map +1 -1
  42. package/dist/components/educationals/EpSpecificObjective.vue.js.map +1 -1
  43. package/dist/components/forms/EpCheckbox.vue2.js.map +1 -1
  44. package/dist/components/forms/EpInput.vue2.js.map +1 -1
  45. package/dist/components/forms/EpRadio.vue2.js.map +1 -1
  46. package/dist/components/forms/EpRadioSummative.vue2.js.map +1 -1
  47. package/dist/components/forms/EpSelect.vue2.js.map +1 -1
  48. package/dist/components/forms/EpSwitch.vue2.js.map +1 -1
  49. package/dist/components/forms/EpTextarea.vue2.js.map +1 -1
  50. package/dist/components/forms/EpToggle.vue2.js.map +1 -1
  51. package/dist/components/interactions/EpAccordeon.vue.js +1 -1
  52. package/dist/components/interactions/EpAccordeon.vue2.js.map +1 -1
  53. package/dist/components/interactions/EpContentSlider.vue.js +1 -1
  54. package/dist/components/interactions/EpContentSlider.vue.js.map +1 -1
  55. package/dist/components/interactions/EpDraggable.vue.js.map +1 -1
  56. package/dist/components/interactions/EpHotSpot.vue.js.map +1 -1
  57. package/dist/components/interactions/EpModal.vue.js.map +1 -1
  58. package/dist/components/interactions/EpQuestion.vue.js +1 -1
  59. package/dist/components/interactions/EpQuestion.vue.js.map +1 -1
  60. package/dist/components/interactions/EpSummativeTable.vue.js.map +1 -1
  61. package/dist/components/interactions/EpSvgShow.vue.js.map +1 -1
  62. package/dist/components/interactions/EpTooltip.vue.js.map +1 -1
  63. package/dist/components/medias/EpAudio.vue.js.map +1 -1
  64. package/dist/components/medias/EpCardLink.vue.js.map +1 -1
  65. package/dist/components/medias/EpCarousel.vue.js +1 -1
  66. package/dist/components/medias/EpCarousel.vue2.js.map +1 -1
  67. package/dist/components/medias/EpHierarchy.vue.js +1 -1
  68. package/dist/components/medias/EpHierarchy.vue2.js +1 -1
  69. package/dist/components/medias/EpHierarchy.vue2.js.map +1 -1
  70. package/dist/components/medias/EpIframe.vue.js.map +1 -1
  71. package/dist/components/medias/EpKatex.vue.js +1 -1
  72. package/dist/components/medias/EpKatex.vue2.js.map +1 -1
  73. package/dist/components/medias/EpLink.vue.js.map +1 -1
  74. package/dist/components/medias/EpLinkVersion.vue.js.map +1 -1
  75. package/dist/components/medias/EpLottieSvg.vue.js.map +1 -1
  76. package/dist/components/medias/EpSensibleImage.vue.js +1 -1
  77. package/dist/components/medias/EpSensibleImage.vue2.js.map +1 -1
  78. package/dist/components/medias/EpSoftware.vue.js.map +1 -1
  79. package/dist/components/medias/EpSvg.vue.js.map +1 -1
  80. package/dist/components/medias/EpTerm.vue.js.map +1 -1
  81. package/dist/components/medias/EpTimeLine.vue.js.map +1 -1
  82. package/dist/components/medias/EpVideo.vue.js.map +1 -1
  83. package/dist/components/medias/EpVideoPanopto.vue.js.map +1 -1
  84. package/dist/components/medias/EpWordDef.vue.js.map +1 -1
  85. package/dist/components/signages/EpAlert.vue.js +1 -1
  86. package/dist/components/signages/EpAlert.vue2.js.map +1 -1
  87. package/dist/components/signages/EpBadge.vue.js.map +1 -1
  88. package/dist/components/signages/EpHeader.vue.js.map +1 -1
  89. package/dist/components/signages/EpQuote.vue.js.map +1 -1
  90. package/dist/components/signages/EpSkeleton.vue.js +2 -2
  91. package/dist/components/signages/EpSkeleton.vue.js.map +1 -1
  92. package/dist/components/tools/DisplayBox.vue.js +39 -2
  93. package/dist/components/tools/DisplayBox.vue.js.map +1 -1
  94. package/dist/components/tools/DisplayBox.vue3.js +6 -0
  95. package/dist/components/tools/DisplayBox.vue3.js.map +1 -0
  96. package/dist/components/tools/TextMedia.vue2.js +1 -1
  97. package/dist/components/tools/TextMedia.vue2.js.map +1 -1
  98. package/dist/components/tools/TwoColsMedia.vue2.js +2 -2
  99. package/dist/components/tools/TwoColsMedia.vue2.js.map +1 -1
  100. package/dist/entry/basics/EpBtn.d.ts +3 -2
  101. package/dist/entry/basics/EpBtn.js +3 -1
  102. package/dist/entry/basics/EpBtn.js.map +1 -1
  103. package/dist/entry/basics/EpCard.d.ts +3 -2
  104. package/dist/entry/basics/EpCard.js +3 -1
  105. package/dist/entry/basics/EpCard.js.map +1 -1
  106. package/dist/entry/basics/EpChip.d.ts +3 -2
  107. package/dist/entry/basics/EpChip.js +3 -1
  108. package/dist/entry/basics/EpChip.js.map +1 -1
  109. package/dist/entry/basics/EpDivider.d.ts +3 -2
  110. package/dist/entry/basics/EpDivider.js +3 -1
  111. package/dist/entry/basics/EpDivider.js.map +1 -1
  112. package/dist/entry/basics/EpFlex.d.ts +3 -2
  113. package/dist/entry/basics/EpFlex.js +3 -1
  114. package/dist/entry/basics/EpFlex.js.map +1 -1
  115. package/dist/entry/basics/EpHover.d.ts +3 -2
  116. package/dist/entry/basics/EpHover.js +3 -1
  117. package/dist/entry/basics/EpHover.js.map +1 -1
  118. package/dist/entry/basics/EpHoverCard.d.ts +3 -2
  119. package/dist/entry/basics/EpHoverCard.js +3 -1
  120. package/dist/entry/basics/EpHoverCard.js.map +1 -1
  121. package/dist/entry/basics/EpIcon.d.ts +3 -2
  122. package/dist/entry/basics/EpIcon.js +3 -1
  123. package/dist/entry/basics/EpIcon.js.map +1 -1
  124. package/dist/entry/basics/EpImg.d.ts +3 -2
  125. package/dist/entry/basics/EpImg.js +3 -1
  126. package/dist/entry/basics/EpImg.js.map +1 -1
  127. package/dist/entry/basics/EpImgCarousel.d.ts +3 -2
  128. package/dist/entry/basics/EpImgCarousel.js +3 -1
  129. package/dist/entry/basics/EpImgCarousel.js.map +1 -1
  130. package/dist/entry/basics/EpList.d.ts +3 -2
  131. package/dist/entry/basics/EpList.js +3 -1
  132. package/dist/entry/basics/EpList.js.map +1 -1
  133. package/dist/entry/basics/EpListItem.d.ts +3 -2
  134. package/dist/entry/basics/EpListItem.js +3 -1
  135. package/dist/entry/basics/EpListItem.js.map +1 -1
  136. package/dist/entry/basics/EpSection.d.ts +3 -2
  137. package/dist/entry/basics/EpSection.js +3 -1
  138. package/dist/entry/basics/EpSection.js.map +1 -1
  139. package/dist/entry/basics/EpSectionCols.d.ts +3 -2
  140. package/dist/entry/basics/EpSectionCols.js +3 -1
  141. package/dist/entry/basics/EpSectionCols.js.map +1 -1
  142. package/dist/entry/basics/EpSpinner.d.ts +3 -2
  143. package/dist/entry/basics/EpSpinner.js +3 -1
  144. package/dist/entry/basics/EpSpinner.js.map +1 -1
  145. package/dist/entry/basics/EpStackedList.d.ts +3 -2
  146. package/dist/entry/basics/EpStackedList.js +3 -1
  147. package/dist/entry/basics/EpStackedList.js.map +1 -1
  148. package/dist/entry/basics/EpTable.d.ts +3 -2
  149. package/dist/entry/basics/EpTable.js +3 -1
  150. package/dist/entry/basics/EpTable.js.map +1 -1
  151. package/dist/entry/basics/EpText.d.ts +3 -2
  152. package/dist/entry/basics/EpText.js +3 -1
  153. package/dist/entry/basics/EpText.js.map +1 -1
  154. package/dist/entry/charts/EpBarChart.d.ts +3 -2
  155. package/dist/entry/charts/EpBarChart.js +3 -1
  156. package/dist/entry/charts/EpBarChart.js.map +1 -1
  157. package/dist/entry/charts/EpFunnelChart.d.ts +3 -2
  158. package/dist/entry/charts/EpFunnelChart.js +3 -1
  159. package/dist/entry/charts/EpFunnelChart.js.map +1 -1
  160. package/dist/entry/charts/EpLineChart.d.ts +3 -2
  161. package/dist/entry/charts/EpLineChart.js +3 -1
  162. package/dist/entry/charts/EpLineChart.js.map +1 -1
  163. package/dist/entry/charts/EpPieChart.d.ts +3 -2
  164. package/dist/entry/charts/EpPieChart.js +3 -1
  165. package/dist/entry/charts/EpPieChart.js.map +1 -1
  166. package/dist/entry/educationals/EpBranchingScenario.d.ts +3 -2
  167. package/dist/entry/educationals/EpBranchingScenario.js +3 -1
  168. package/dist/entry/educationals/EpBranchingScenario.js.map +1 -1
  169. package/dist/entry/educationals/EpCodeblock.d.ts +3 -2
  170. package/dist/entry/educationals/EpCodeblock.js +3 -1
  171. package/dist/entry/educationals/EpCodeblock.js.map +1 -1
  172. package/dist/entry/educationals/EpConclusion.d.ts +3 -2
  173. package/dist/entry/educationals/EpConclusion.js +3 -1
  174. package/dist/entry/educationals/EpConclusion.js.map +1 -1
  175. package/dist/entry/educationals/EpDescription.d.ts +3 -2
  176. package/dist/entry/educationals/EpDescription.js +3 -1
  177. package/dist/entry/educationals/EpDescription.js.map +1 -1
  178. package/dist/entry/educationals/EpDocument.d.ts +3 -2
  179. package/dist/entry/educationals/EpDocument.js +3 -1
  180. package/dist/entry/educationals/EpDocument.js.map +1 -1
  181. package/dist/entry/educationals/EpEdu.d.ts +3 -2
  182. package/dist/entry/educationals/EpEdu.js +3 -1
  183. package/dist/entry/educationals/EpEdu.js.map +1 -1
  184. package/dist/entry/educationals/EpInstructions.d.ts +3 -2
  185. package/dist/entry/educationals/EpInstructions.js +3 -1
  186. package/dist/entry/educationals/EpInstructions.js.map +1 -1
  187. package/dist/entry/educationals/EpIntroduction.d.ts +3 -2
  188. package/dist/entry/educationals/EpIntroduction.js +3 -1
  189. package/dist/entry/educationals/EpIntroduction.js.map +1 -1
  190. package/dist/entry/educationals/EpObjective.d.ts +3 -2
  191. package/dist/entry/educationals/EpObjective.js +3 -1
  192. package/dist/entry/educationals/EpObjective.js.map +1 -1
  193. package/dist/entry/educationals/EpReading.d.ts +3 -2
  194. package/dist/entry/educationals/EpReading.js +3 -1
  195. package/dist/entry/educationals/EpReading.js.map +1 -1
  196. package/dist/entry/educationals/EpResource.d.ts +3 -2
  197. package/dist/entry/educationals/EpResource.js +3 -1
  198. package/dist/entry/educationals/EpResource.js.map +1 -1
  199. package/dist/entry/educationals/EpScope.d.ts +3 -2
  200. package/dist/entry/educationals/EpScope.js +3 -1
  201. package/dist/entry/educationals/EpScope.js.map +1 -1
  202. package/dist/entry/educationals/EpSpecificObjective.d.ts +3 -2
  203. package/dist/entry/educationals/EpSpecificObjective.js +3 -1
  204. package/dist/entry/educationals/EpSpecificObjective.js.map +1 -1
  205. package/dist/entry/interactions/EpAccordeon.d.ts +3 -2
  206. package/dist/entry/interactions/EpAccordeon.js +3 -1
  207. package/dist/entry/interactions/EpAccordeon.js.map +1 -1
  208. package/dist/entry/interactions/EpContentSlider.d.ts +3 -2
  209. package/dist/entry/interactions/EpContentSlider.js +3 -1
  210. package/dist/entry/interactions/EpContentSlider.js.map +1 -1
  211. package/dist/entry/interactions/EpDarkMode.d.ts +3 -2
  212. package/dist/entry/interactions/EpDarkMode.js +3 -1
  213. package/dist/entry/interactions/EpDarkMode.js.map +1 -1
  214. package/dist/entry/interactions/EpDraggable.d.ts +3 -2
  215. package/dist/entry/interactions/EpDraggable.js +3 -1
  216. package/dist/entry/interactions/EpDraggable.js.map +1 -1
  217. package/dist/entry/interactions/EpHotSpot.d.ts +3 -2
  218. package/dist/entry/interactions/EpHotSpot.js +3 -1
  219. package/dist/entry/interactions/EpHotSpot.js.map +1 -1
  220. package/dist/entry/interactions/EpModal.d.ts +3 -2
  221. package/dist/entry/interactions/EpModal.js +3 -1
  222. package/dist/entry/interactions/EpModal.js.map +1 -1
  223. package/dist/entry/interactions/EpQuestion.d.ts +3 -2
  224. package/dist/entry/interactions/EpQuestion.js +3 -1
  225. package/dist/entry/interactions/EpQuestion.js.map +1 -1
  226. package/dist/entry/interactions/EpSummativeTable.d.ts +3 -2
  227. package/dist/entry/interactions/EpSummativeTable.js +3 -1
  228. package/dist/entry/interactions/EpSummativeTable.js.map +1 -1
  229. package/dist/entry/interactions/EpSvgShow.d.ts +3 -2
  230. package/dist/entry/interactions/EpSvgShow.js +3 -1
  231. package/dist/entry/interactions/EpSvgShow.js.map +1 -1
  232. package/dist/entry/interactions/EpTabs.d.ts +3 -2
  233. package/dist/entry/interactions/EpTabs.js +3 -1
  234. package/dist/entry/interactions/EpTabs.js.map +1 -1
  235. package/dist/entry/interactions/EpTooltip.d.ts +3 -2
  236. package/dist/entry/interactions/EpTooltip.js +3 -1
  237. package/dist/entry/interactions/EpTooltip.js.map +1 -1
  238. package/dist/entry/medias/EpAudio.d.ts +3 -2
  239. package/dist/entry/medias/EpAudio.js +3 -1
  240. package/dist/entry/medias/EpAudio.js.map +1 -1
  241. package/dist/entry/medias/EpCardLink.d.ts +3 -2
  242. package/dist/entry/medias/EpCardLink.js +3 -1
  243. package/dist/entry/medias/EpCardLink.js.map +1 -1
  244. package/dist/entry/medias/EpCarousel.d.ts +3 -2
  245. package/dist/entry/medias/EpCarousel.js +3 -1
  246. package/dist/entry/medias/EpCarousel.js.map +1 -1
  247. package/dist/entry/medias/EpHierarchy.d.ts +3 -2
  248. package/dist/entry/medias/EpHierarchy.js +3 -1
  249. package/dist/entry/medias/EpHierarchy.js.map +1 -1
  250. package/dist/entry/medias/EpIframe.d.ts +3 -2
  251. package/dist/entry/medias/EpIframe.js +3 -1
  252. package/dist/entry/medias/EpIframe.js.map +1 -1
  253. package/dist/entry/medias/EpKatex.d.ts +3 -2
  254. package/dist/entry/medias/EpKatex.js +3 -1
  255. package/dist/entry/medias/EpKatex.js.map +1 -1
  256. package/dist/entry/medias/EpLink.d.ts +3 -2
  257. package/dist/entry/medias/EpLink.js +3 -1
  258. package/dist/entry/medias/EpLink.js.map +1 -1
  259. package/dist/entry/medias/EpLinkVersion.d.ts +3 -2
  260. package/dist/entry/medias/EpLinkVersion.js +3 -1
  261. package/dist/entry/medias/EpLinkVersion.js.map +1 -1
  262. package/dist/entry/medias/EpLottieSvg.d.ts +3 -2
  263. package/dist/entry/medias/EpLottieSvg.js +3 -1
  264. package/dist/entry/medias/EpLottieSvg.js.map +1 -1
  265. package/dist/entry/medias/EpSoftware.d.ts +3 -2
  266. package/dist/entry/medias/EpSoftware.js +3 -1
  267. package/dist/entry/medias/EpSoftware.js.map +1 -1
  268. package/dist/entry/medias/EpSvg.d.ts +3 -2
  269. package/dist/entry/medias/EpSvg.js +3 -1
  270. package/dist/entry/medias/EpSvg.js.map +1 -1
  271. package/dist/entry/medias/EpTerm.d.ts +3 -2
  272. package/dist/entry/medias/EpTerm.js +3 -1
  273. package/dist/entry/medias/EpTerm.js.map +1 -1
  274. package/dist/entry/medias/EpTimeLine.d.ts +3 -2
  275. package/dist/entry/medias/EpTimeLine.js +3 -1
  276. package/dist/entry/medias/EpTimeLine.js.map +1 -1
  277. package/dist/entry/medias/EpVideo.d.ts +3 -2
  278. package/dist/entry/medias/EpVideo.js +3 -1
  279. package/dist/entry/medias/EpVideo.js.map +1 -1
  280. package/dist/entry/medias/EpVideoPanopto.d.ts +3 -2
  281. package/dist/entry/medias/EpVideoPanopto.js +3 -1
  282. package/dist/entry/medias/EpVideoPanopto.js.map +1 -1
  283. package/dist/entry/medias/EpWordDef.d.ts +3 -2
  284. package/dist/entry/medias/EpWordDef.js +3 -1
  285. package/dist/entry/medias/EpWordDef.js.map +1 -1
  286. package/dist/entry/signages/EpAlert.d.ts +3 -2
  287. package/dist/entry/signages/EpAlert.js +3 -1
  288. package/dist/entry/signages/EpAlert.js.map +1 -1
  289. package/dist/entry/signages/EpBadge.d.ts +3 -2
  290. package/dist/entry/signages/EpBadge.js +3 -1
  291. package/dist/entry/signages/EpBadge.js.map +1 -1
  292. package/dist/entry/signages/EpHeader.d.ts +3 -2
  293. package/dist/entry/signages/EpHeader.js +3 -1
  294. package/dist/entry/signages/EpHeader.js.map +1 -1
  295. package/dist/entry/signages/EpNothing.d.ts +3 -2
  296. package/dist/entry/signages/EpNothing.js +3 -1
  297. package/dist/entry/signages/EpNothing.js.map +1 -1
  298. package/dist/entry/signages/EpQuote.d.ts +3 -2
  299. package/dist/entry/signages/EpQuote.js +3 -1
  300. package/dist/entry/signages/EpQuote.js.map +1 -1
  301. package/dist/entry/signages/EpSkeleton.d.ts +3 -2
  302. package/dist/entry/signages/EpSkeleton.js +3 -1
  303. package/dist/entry/signages/EpSkeleton.js.map +1 -1
  304. package/dist/{assets/style.css → style.css} +250 -6
  305. package/dist/types/Border.d.ts +1 -2
  306. package/dist/types/Codeblock.d.ts +1 -2
  307. package/dist/types/Codeblock.js.map +1 -1
  308. package/package.json +3 -2
  309. package/dist/assets/components/educationals/EpBranchingScenario.css +0 -40
  310. package/dist/assets/components/educationals/EpCodeblock.css +0 -4
  311. package/dist/assets/components/interactions/EpAccordeon.css +0 -5
  312. package/dist/assets/components/interactions/EpModal.css +0 -38
  313. package/dist/assets/components/interactions/EpTooltip.css +0 -91
  314. package/dist/assets/components/medias/EpCarousel.css +0 -9
  315. package/dist/assets/components/medias/EpHierarchy.css +0 -9
  316. package/dist/assets/components/medias/EpKatex.css +0 -4
  317. package/dist/assets/components/medias/EpSensibleImage.css +0 -4
  318. package/dist/assets/components/medias/EpTimeLine.css +0 -10
  319. package/dist/assets/components/signages/EpAlert.css +0 -5
  320. package/dist/assets/components/signages/EpSkeleton.css +0 -5
  321. package/dist/assets/components/tools/DisplayBox.css +0 -6
  322. package/dist/assets/components/tools/TimelineItem.css +0 -5
  323. package/dist/components/tools/DisplayBox.vue2.js +0 -43
  324. package/dist/components/tools/DisplayBox.vue2.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"EpText.vue.js","sources":["../../../src/components/basics/EpText.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs, h, VNode } from \"vue\";\nimport type { Glossary } from \"~/types/Glossary\"\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\nimport EpTerm from \"~/components/medias/EpTerm.vue\";\nimport { EpTextProps } from \"~/types/basics/EpText\";\n\nconst props = withDefaults(defineProps<EpTextProps>(), {\n compact: false,\n labelDefinition: \"Définition\",\n labelDomain: \"Domaine\",\n labelVariations: \"Variations\",\n labelRelations: \"Relations\",\n labelClose: \"Fermer\",\n});\n\nconst { compact } = toRefs(props);\n\nconst renderTitle = computed(() => props.title || \"En savoir plus\");\n\nfunction parseHtmlToVNodes(html: string): (VNode | string)[] {\n const container = document.createElement(\"div\");\n container.innerHTML = html;\n\n const nodes: (VNode | string)[] = [];\n\n container.childNodes.forEach((node) => {\n if (node.nodeType === 3) {\n // Text node\n if (node.textContent) nodes.push(node.textContent);\n } else if (node.nodeType === 1) {\n const el = node as HTMLElement;\n\n if (el.classList.contains(\"ep_glossary_item\")) {\n const id = el.getAttribute(\"data-id\");\n const render_word = el.innerHTML;\n\n let _glossary: Glossary[] = [];\n if (props.glossary) {\n _glossary = props.glossary.map((item) => ({\n ...item,\n id: item.documentId ?? item.id,\n }));\n }\n\n const term = _glossary.find((word) => word.id === id);\n\n if (term) {\n const foundedRelations = _glossary.filter((x) =>\n x.relation.some((r: string) => r === id)\n );\n const termsRelation = foundedRelations.map((x) => x.term);\n const stringRelations = termsRelation.join(', ')\n const stringVariations = term.variation.join(', ')\n\n nodes.push(\n h(\n \"div\",\n { style: \"display:inline\" },\n h(\n EpTerm,\n {\n term: term.term,\n word: render_word,\n variations: stringVariations,\n graminfo: term.graminfo,\n src: term.img ?? \"\",\n domain: term.domain,\n relations: stringRelations,\n labelDefinition: props.labelDefinition,\n labelDomain: props.labelDomain,\n labelVariations: props.labelVariations,\n labelRelations: props.labelRelations,\n labelClose: props.labelClose,\n },\n () => {\n const def = useRenderText(term.definition);\n if (!isHtml(def)) {\n return h(\"div\", { innerHTML: def });\n }\n return parseHtmlToVNodes(def);\n }\n )\n )\n );\n return;\n }\n }\n nodes.push(\n h(\n el.tagName.toLowerCase(),\n {},\n parseHtmlToVNodes(el.innerHTML) \n )\n );\n }\n });\n\n return nodes;\n}\n\nconst renderText = computed(() => {\n if (!props.content) return [h(\"div\")];\n if (!isHtml(props.content)) {\n return [h(\"div\", { innerHTML: useRenderText(props.content) })];\n }\n\n const formatted = useRenderText(props.content)\n\n return parseHtmlToVNodes(formatted);\n});\n</script>\n\n<template>\n <div class=\"px-2 text-black dark:text-white\">\n <EpAccordeon v-if=\"compact\" outlined :title=\"renderTitle\">\n <div>\n <component :is=\"node\" v-for=\"(node, i) in renderText\" :key=\"i\" />\n </div>\n </EpAccordeon>\n <div v-else>\n <component :is=\"node\" v-for=\"(node, i) in renderText\" :key=\"i\" />\n </div>\n </div>\n</template>\n"],"names":["_a","EpTerm","_openBlock","_createElementBlock","_unref","_createBlock","EpAccordeon","_createElementVNode","_Fragment","_renderList","_resolveDynamicComponent"],"mappings":"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"}
1
+ {"version":3,"file":"EpText.vue.js","sources":["../../../src/components/basics/EpText.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs, h, type VNode } from \"vue\";\nimport type { Glossary } from \"~/types/Glossary\"\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\nimport EpTerm from \"~/components/medias/EpTerm.vue\";\nimport type { EpTextProps } from \"~/types/basics/EpText\";\n\nconst props = withDefaults(defineProps<EpTextProps>(), {\n compact: false,\n labelDefinition: \"Définition\",\n labelDomain: \"Domaine\",\n labelVariations: \"Variations\",\n labelRelations: \"Relations\",\n labelClose: \"Fermer\",\n});\n\nconst { compact } = toRefs(props);\n\nconst renderTitle = computed(() => props.title || \"En savoir plus\");\n\nfunction parseHtmlToVNodes(html: string): (VNode | string)[] {\n const container = document.createElement(\"div\");\n container.innerHTML = html;\n\n const nodes: (VNode | string)[] = [];\n\n container.childNodes.forEach((node) => {\n if (node.nodeType === 3) {\n // Text node\n if (node.textContent) nodes.push(node.textContent);\n } else if (node.nodeType === 1) {\n const el = node as HTMLElement;\n\n if (el.classList.contains(\"ep_glossary_item\")) {\n const id = el.getAttribute(\"data-id\");\n const render_word = el.innerHTML;\n\n let _glossary: Glossary[] = [];\n if (props.glossary) {\n _glossary = props.glossary.map((item) => ({\n ...item,\n id: item.documentId ?? item.id,\n }));\n }\n\n const term = _glossary.find((word) => word.id === id);\n\n if (term) {\n const foundedRelations = _glossary.filter((x) =>\n x.relation.some((r: string) => r === id)\n );\n const termsRelation = foundedRelations.map((x) => x.term);\n const stringRelations = termsRelation.join(', ')\n const stringVariations = term.variation.join(', ')\n\n nodes.push(\n h(\n \"div\",\n { style: \"display:inline\" },\n h(\n EpTerm,\n {\n term: term.term,\n word: render_word,\n variations: stringVariations,\n graminfo: term.graminfo,\n src: term.img ?? \"\",\n domain: term.domain,\n relations: stringRelations,\n labelDefinition: props.labelDefinition,\n labelDomain: props.labelDomain,\n labelVariations: props.labelVariations,\n labelRelations: props.labelRelations,\n labelClose: props.labelClose,\n },\n () => {\n const def = useRenderText(term.definition);\n if (!isHtml(def)) {\n return h(\"div\", { innerHTML: def });\n }\n return parseHtmlToVNodes(def);\n }\n )\n )\n );\n return;\n }\n }\n nodes.push(\n h(\n el.tagName.toLowerCase(),\n {},\n parseHtmlToVNodes(el.innerHTML) \n )\n );\n }\n });\n\n return nodes;\n}\n\nconst renderText = computed(() => {\n if (!props.content) return [h(\"div\")];\n if (!isHtml(props.content)) {\n return [h(\"div\", { innerHTML: useRenderText(props.content) })];\n }\n\n const formatted = useRenderText(props.content)\n\n return parseHtmlToVNodes(formatted);\n});\n</script>\n\n<template>\n <div class=\"px-2 text-black dark:text-white\">\n <EpAccordeon v-if=\"compact\" outlined :title=\"renderTitle\">\n <div>\n <component :is=\"node\" v-for=\"(node, i) in renderText\" :key=\"i\" />\n </div>\n </EpAccordeon>\n <div v-else>\n <component :is=\"node\" v-for=\"(node, i) in renderText\" :key=\"i\" />\n </div>\n </div>\n</template>\n"],"names":["_a","EpTerm","_openBlock","_createElementBlock","_unref","_createBlock","EpAccordeon","_createElementVNode","_Fragment","_renderList","_resolveDynamicComponent"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpBarChart.vue.js","sources":["../../../src/components/charts/EpBarChart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { mdiChartBar } from \"@mdi/js\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { useColorMode } from \"@vueuse/core\";\nimport { EpBarChartProps } from \"~/types/charts/EpBarChart\";\nimport VueApexCharts from \"vue3-apexcharts\";\n\nconst props = withDefaults(defineProps<EpBarChartProps>(), {\n center: true,\n width: \"500\",\n dataNoDisponible: \"Data no disponible\",\n});\n\nconst renderText = computed(() => {\n if (!props.intentions) {\n return null;\n }\n if (!isHtml(props.intentions)) {\n return useMarkdown(props.intentions);\n }\n return props.intentions;\n});\n\nconst mode = useColorMode();\n\nconst globalOptions = computed(() => {\n return {\n ...props.options,\n theme: {\n mode: mode.value,\n },\n chart: {\n background: \"transparent\",\n },\n dataLabels: {\n enabled: false,\n },\n };\n});\n\nconst { center, series, source, width, dataNoDisponible } = toRefs(props);\n</script>\n\n<template>\n <EpEdu :title=\"title\" :type=\"type\" :hideIcon=\"hideIcon\" :icon=\"mdiChartBar\">\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div\n :class=\"`p-4 ${center ? 'flex justify-center' : ''}`\"\n v-if=\"globalOptions && series\"\n >\n <VueApexCharts\n :width=\"width\"\n type=\"bar\"\n :options=\"globalOptions\"\n :series=\"series\"\n />\n </div>\n <div v-else>\n <p>{{ dataNoDisponible }}</p>\n </div>\n </template>\n <template #actions v-if=\"source\">\n <p>{{ source }}</p>\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","title","type","hideIcon","_unref","_createElementBlock","_createVNode","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAUA,UAAM,QAAQ;AAMd,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,MAAM,YAAY;AACrB,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,MAAM,UAAU,GAAG;AAC7B,eAAO,YAAY,MAAM,UAAU;AAAA,MACrC;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,aAAA;AAEb,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO;AAAA,QACL,GAAG,MAAM;AAAA,QACT,OAAO;AAAA,UACL,MAAM,KAAK;AAAA,QAAA;AAAA,QAEb,OAAO;AAAA,UACL,YAAY;AAAA,QAAA;AAAA,QAEd,YAAY;AAAA,UACV,SAAS;AAAA,QAAA;AAAA,MACX;AAAA,IAEJ,CAAC;AAED,UAAM,EAAE,QAAQ,QAAQ,QAAQ,OAAO,iBAAA,IAAqB,OAAO,KAAK;;0BAItEA,YAuBQC,aAAA;AAAA,QAvBA,OAAOC,KAAAA;AAAAA,QAAQ,MAAMC,KAAAA;AAAAA,QAAO,UAAUC,KAAAA;AAAAA,QAAW,MAAMC,MAAA,WAAA;AAAA,MAAA;QAIlD,iBACT,MAUM;AAAA,UARE,cAAA,SAAiBA,MAAA,MAAA,kBAFzBC,mBAUM,OAAA;AAAA;YATH,6BAAcD,MAAA,MAAA,IAAM,wBAAA,EAAA,EAAA;AAAA,UAAA;YAGrBE,YAKEF,MAAA,aAAA,GAAA;AAAA,cAJC,OAAOA,MAAA,KAAA;AAAA,cACR,MAAK;AAAA,cACJ,SAAS,cAAA;AAAA,cACT,QAAQA,MAAA,MAAA;AAAA,YAAA;iCAGbC,mBAEM,OAAA,YAAA;AAAA,YADJE,mBAA6B,2BAAvBH,MAAA,gBAAA,CAAgB,GAAA,CAAA;AAAA,UAAA;;;;QAhBE,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BG,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;QAkBAH,MAAA,MAAA;gBAAd;AAAA,sBACT,MAAmB;AAAA,YAAnBG,mBAAmB,2BAAbH,MAAA,MAAA,CAAM,GAAA,CAAA;AAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"EpBarChart.vue.js","sources":["../../../src/components/charts/EpBarChart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { mdiChartBar } from \"@mdi/js\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { useColorMode } from \"@vueuse/core\";\nimport type { EpBarChartProps } from \"~/types/charts/EpBarChart\";\nimport VueApexCharts from \"vue3-apexcharts\";\n\nconst props = withDefaults(defineProps<EpBarChartProps>(), {\n center: true,\n width: \"500\",\n dataNoDisponible: \"Data no disponible\",\n});\n\nconst renderText = computed(() => {\n if (!props.intentions) {\n return null;\n }\n if (!isHtml(props.intentions)) {\n return useMarkdown(props.intentions);\n }\n return props.intentions;\n});\n\nconst mode = useColorMode();\n\nconst globalOptions = computed(() => {\n return {\n ...props.options,\n theme: {\n mode: mode.value,\n },\n chart: {\n background: \"transparent\",\n },\n dataLabels: {\n enabled: false,\n },\n };\n});\n\nconst { center, series, source, width, dataNoDisponible } = toRefs(props);\n</script>\n\n<template>\n <EpEdu :title=\"title\" :type=\"type\" :hideIcon=\"hideIcon\" :icon=\"mdiChartBar\">\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div\n :class=\"`p-4 ${center ? 'flex justify-center' : ''}`\"\n v-if=\"globalOptions && series\"\n >\n <VueApexCharts\n :width=\"width\"\n type=\"bar\"\n :options=\"globalOptions\"\n :series=\"series\"\n />\n </div>\n <div v-else>\n <p>{{ dataNoDisponible }}</p>\n </div>\n </template>\n <template #actions v-if=\"source\">\n <p>{{ source }}</p>\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","title","type","hideIcon","_unref","_createElementBlock","_createVNode","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAUA,UAAM,QAAQ;AAMd,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,MAAM,YAAY;AACrB,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,MAAM,UAAU,GAAG;AAC7B,eAAO,YAAY,MAAM,UAAU;AAAA,MACrC;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,aAAA;AAEb,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO;AAAA,QACL,GAAG,MAAM;AAAA,QACT,OAAO;AAAA,UACL,MAAM,KAAK;AAAA,QAAA;AAAA,QAEb,OAAO;AAAA,UACL,YAAY;AAAA,QAAA;AAAA,QAEd,YAAY;AAAA,UACV,SAAS;AAAA,QAAA;AAAA,MACX;AAAA,IAEJ,CAAC;AAED,UAAM,EAAE,QAAQ,QAAQ,QAAQ,OAAO,iBAAA,IAAqB,OAAO,KAAK;;0BAItEA,YAuBQC,aAAA;AAAA,QAvBA,OAAOC,KAAAA;AAAAA,QAAQ,MAAMC,KAAAA;AAAAA,QAAO,UAAUC,KAAAA;AAAAA,QAAW,MAAMC,MAAA,WAAA;AAAA,MAAA;QAIlD,iBACT,MAUM;AAAA,UARE,cAAA,SAAiBA,MAAA,MAAA,kBAFzBC,mBAUM,OAAA;AAAA;YATH,6BAAcD,MAAA,MAAA,IAAM,wBAAA,EAAA,EAAA;AAAA,UAAA;YAGrBE,YAKEF,MAAA,aAAA,GAAA;AAAA,cAJC,OAAOA,MAAA,KAAA;AAAA,cACR,MAAK;AAAA,cACJ,SAAS,cAAA;AAAA,cACT,QAAQA,MAAA,MAAA;AAAA,YAAA;iCAGbC,mBAEM,OAAA,YAAA;AAAA,YADJE,mBAA6B,2BAAvBH,MAAA,gBAAA,CAAgB,GAAA,CAAA;AAAA,UAAA;;;;QAhBE,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BG,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;QAkBAH,MAAA,MAAA;gBAAd;AAAA,sBACT,MAAmB;AAAA,YAAnBG,mBAAmB,2BAAbH,MAAA,MAAA,CAAM,GAAA,CAAA;AAAA,UAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpFunnelChart.vue.js","sources":["../../../src/components/charts/EpFunnelChart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { mdiTriangle } from \"@mdi/js\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { useColorMode } from \"@vueuse/core\";\nimport {\n EpFunnelChartProps,\n OptionsFormmater,\n} from \"~/types/charts/EpFunnelChart\";\nimport VueApexCharts from \"vue3-apexcharts\";\n\nconst props = withDefaults(defineProps<EpFunnelChartProps>(), {\n center: true,\n type: \"neutral\",\n width: \"800\",\n height: 350,\n isFunnel: true,\n colors: () => [\n \"#283243\",\n \"#3b4f6d\",\n \"#465e87\",\n \"#5072a5\",\n \"#648bb9\",\n \"#6e9ac3\",\n \"#8ab3d0\",\n \"#b0cee0\",\n ],\n});\n\nconst renderText = computed(() => {\n if (!props.intentions) {\n return null;\n }\n if (!isHtml(props.intentions)) {\n return useMarkdown(props.intentions);\n }\n return props.intentions;\n});\n\nconst mode = useColorMode();\n\nconst optionsFunnel = computed(() => {\n return {\n chart: {\n type: \"bar\",\n background: \"transparent\",\n height: props.height,\n },\n plotOptions: {\n bar: {\n borderRadius: 0,\n horizontal: true,\n distributed: true,\n barHeight: \"80%\",\n isFunnel: props.isFunnel,\n },\n },\n theme: {\n mode: mode.value,\n },\n colors: props.colors,\n dataLabels: {\n enabled: true,\n formatter: function (val: string, opt: OptionsFormmater) {\n let label = \"\";\n if (opt.w.globals.labels[opt.dataPointIndex]) {\n label = opt.w.globals.labels[opt.dataPointIndex] + \" \";\n }\n return label + val;\n },\n dropShadow: {\n enabled: true,\n },\n },\n xaxis: {\n categories: props.labels,\n },\n legend: {\n show: false,\n },\n };\n});\n\nconst { center, series, source, labels, width } = toRefs(props);\n</script>\n\n<template>\n <EpEdu :title=\"title\" :type=\"type\" :hideIcon=\"hideIcon\" :icon=\"mdiTriangle\">\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div\n :class=\"`p-4 ${center ? 'flex justify-center' : ''}`\"\n v-if=\"labels && series\"\n >\n <VueApexCharts\n type=\"bar\"\n :width=\"width\"\n :height=\"height\"\n :options=\"optionsFunnel\"\n :series=\"series\"\n />\n </div>\n </template>\n <template #actions v-if=\"source\">\n <p>{{ source }}</p>\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","title","type","hideIcon","_unref","_createElementBlock","_createVNode","height","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,UAAM,QAAQ;AAkBd,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,MAAM,YAAY;AACrB,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,MAAM,UAAU,GAAG;AAC7B,eAAO,YAAY,MAAM,UAAU;AAAA,MACrC;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,aAAA;AAEb,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO;AAAA,QACL,OAAO;AAAA,UACL,MAAM;AAAA,UACN,YAAY;AAAA,UACZ,QAAQ,MAAM;AAAA,QAAA;AAAA,QAEhB,aAAa;AAAA,UACX,KAAK;AAAA,YACH,cAAc;AAAA,YACd,YAAY;AAAA,YACZ,aAAa;AAAA,YACb,WAAW;AAAA,YACX,UAAU,MAAM;AAAA,UAAA;AAAA,QAClB;AAAA,QAEF,OAAO;AAAA,UACL,MAAM,KAAK;AAAA,QAAA;AAAA,QAEb,QAAQ,MAAM;AAAA,QACd,YAAY;AAAA,UACV,SAAS;AAAA,UACT,WAAW,SAAU,KAAa,KAAuB;AACvD,gBAAI,QAAQ;AACZ,gBAAI,IAAI,EAAE,QAAQ,OAAO,IAAI,cAAc,GAAG;AAC5C,sBAAQ,IAAI,EAAE,QAAQ,OAAO,IAAI,cAAc,IAAI;AAAA,YACrD;AACA,mBAAO,QAAQ;AAAA,UACjB;AAAA,UACA,YAAY;AAAA,YACV,SAAS;AAAA,UAAA;AAAA,QACX;AAAA,QAEF,OAAO;AAAA,UACL,YAAY,MAAM;AAAA,QAAA;AAAA,QAEpB,QAAQ;AAAA,UACN,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IAEJ,CAAC;AAED,UAAM,EAAE,QAAQ,QAAQ,QAAQ,QAAQ,MAAA,IAAU,OAAO,KAAK;;0BAI5DA,YAqBQC,aAAA;AAAA,QArBA,OAAOC,KAAAA;AAAAA,QAAQ,MAAMC,KAAAA;AAAAA,QAAO,UAAUC,KAAAA;AAAAA,QAAW,MAAMC,MAAA,WAAA;AAAA,MAAA;QAIlD,iBACT,MAWM;AAAA,UATEA,MAAA,MAAA,KAAUA,MAAA,MAAA,kBAFlBC,mBAWM,OAAA;AAAA;YAVH,6BAAcD,MAAA,MAAA,IAAM,wBAAA,EAAA,EAAA;AAAA,UAAA;YAGrBE,YAMEF,MAAA,aAAA,GAAA;AAAA,cALA,MAAK;AAAA,cACJ,OAAOA,MAAA,KAAA;AAAA,cACP,QAAQG,KAAAA;AAAAA,cACR,SAAS,cAAA;AAAA,cACT,QAAQH,MAAA,MAAA;AAAA,YAAA;;;;;QAba,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BI,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;QAgBAJ,MAAA,MAAA;gBAAd;AAAA,sBACT,MAAmB;AAAA,YAAnBI,mBAAmB,2BAAbJ,MAAA,MAAA,CAAM,GAAA,CAAA;AAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"EpFunnelChart.vue.js","sources":["../../../src/components/charts/EpFunnelChart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { mdiTriangle } from \"@mdi/js\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { useColorMode } from \"@vueuse/core\";\nimport type { EpFunnelChartProps, OptionsFormmater } from \"~/types/charts/EpFunnelChart\";\nimport VueApexCharts from \"vue3-apexcharts\";\n\nconst props = withDefaults(defineProps<EpFunnelChartProps>(), {\n center: true,\n type: \"neutral\",\n width: \"800\",\n height: 350,\n isFunnel: true,\n colors: () => [\n \"#283243\",\n \"#3b4f6d\",\n \"#465e87\",\n \"#5072a5\",\n \"#648bb9\",\n \"#6e9ac3\",\n \"#8ab3d0\",\n \"#b0cee0\",\n ],\n});\n\nconst renderText = computed(() => {\n if (!props.intentions) {\n return null;\n }\n if (!isHtml(props.intentions)) {\n return useMarkdown(props.intentions);\n }\n return props.intentions;\n});\n\nconst mode = useColorMode();\n\nconst optionsFunnel = computed(() => {\n return {\n chart: {\n type: \"bar\",\n background: \"transparent\",\n height: props.height,\n },\n plotOptions: {\n bar: {\n borderRadius: 0,\n horizontal: true,\n distributed: true,\n barHeight: \"80%\",\n isFunnel: props.isFunnel,\n },\n },\n theme: {\n mode: mode.value,\n },\n colors: props.colors,\n dataLabels: {\n enabled: true,\n formatter: function (val: string, opt: OptionsFormmater) {\n let label = \"\";\n if (opt.w.globals.labels[opt.dataPointIndex]) {\n label = opt.w.globals.labels[opt.dataPointIndex] + \" \";\n }\n return label + val;\n },\n dropShadow: {\n enabled: true,\n },\n },\n xaxis: {\n categories: props.labels,\n },\n legend: {\n show: false,\n },\n };\n});\n\nconst { center, series, source, labels, width } = toRefs(props);\n</script>\n\n<template>\n <EpEdu :title=\"title\" :type=\"type\" :hideIcon=\"hideIcon\" :icon=\"mdiTriangle\">\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div\n :class=\"`p-4 ${center ? 'flex justify-center' : ''}`\"\n v-if=\"labels && series\"\n >\n <VueApexCharts\n type=\"bar\"\n :width=\"width\"\n :height=\"height\"\n :options=\"optionsFunnel\"\n :series=\"series\"\n />\n </div>\n </template>\n <template #actions v-if=\"source\">\n <p>{{ source }}</p>\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","title","type","hideIcon","_unref","_createElementBlock","_createVNode","height","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,UAAM,QAAQ;AAkBd,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,MAAM,YAAY;AACrB,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,MAAM,UAAU,GAAG;AAC7B,eAAO,YAAY,MAAM,UAAU;AAAA,MACrC;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,aAAA;AAEb,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO;AAAA,QACL,OAAO;AAAA,UACL,MAAM;AAAA,UACN,YAAY;AAAA,UACZ,QAAQ,MAAM;AAAA,QAAA;AAAA,QAEhB,aAAa;AAAA,UACX,KAAK;AAAA,YACH,cAAc;AAAA,YACd,YAAY;AAAA,YACZ,aAAa;AAAA,YACb,WAAW;AAAA,YACX,UAAU,MAAM;AAAA,UAAA;AAAA,QAClB;AAAA,QAEF,OAAO;AAAA,UACL,MAAM,KAAK;AAAA,QAAA;AAAA,QAEb,QAAQ,MAAM;AAAA,QACd,YAAY;AAAA,UACV,SAAS;AAAA,UACT,WAAW,SAAU,KAAa,KAAuB;AACvD,gBAAI,QAAQ;AACZ,gBAAI,IAAI,EAAE,QAAQ,OAAO,IAAI,cAAc,GAAG;AAC5C,sBAAQ,IAAI,EAAE,QAAQ,OAAO,IAAI,cAAc,IAAI;AAAA,YACrD;AACA,mBAAO,QAAQ;AAAA,UACjB;AAAA,UACA,YAAY;AAAA,YACV,SAAS;AAAA,UAAA;AAAA,QACX;AAAA,QAEF,OAAO;AAAA,UACL,YAAY,MAAM;AAAA,QAAA;AAAA,QAEpB,QAAQ;AAAA,UACN,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IAEJ,CAAC;AAED,UAAM,EAAE,QAAQ,QAAQ,QAAQ,QAAQ,MAAA,IAAU,OAAO,KAAK;;0BAI5DA,YAqBQC,aAAA;AAAA,QArBA,OAAOC,KAAAA;AAAAA,QAAQ,MAAMC,KAAAA;AAAAA,QAAO,UAAUC,KAAAA;AAAAA,QAAW,MAAMC,MAAA,WAAA;AAAA,MAAA;QAIlD,iBACT,MAWM;AAAA,UATEA,MAAA,MAAA,KAAUA,MAAA,MAAA,kBAFlBC,mBAWM,OAAA;AAAA;YAVH,6BAAcD,MAAA,MAAA,IAAM,wBAAA,EAAA,EAAA;AAAA,UAAA;YAGrBE,YAMEF,MAAA,aAAA,GAAA;AAAA,cALA,MAAK;AAAA,cACJ,OAAOA,MAAA,KAAA;AAAA,cACP,QAAQG,KAAAA;AAAAA,cACR,SAAS,cAAA;AAAA,cACT,QAAQH,MAAA,MAAA;AAAA,YAAA;;;;;QAba,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BI,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;QAgBAJ,MAAA,MAAA;gBAAd;AAAA,sBACT,MAAmB;AAAA,YAAnBI,mBAAmB,2BAAbJ,MAAA,MAAA,CAAM,GAAA,CAAA;AAAA,UAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpLineChart.vue.js","sources":["../../../src/components/charts/EpLineChart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { mdiChartLine } from \"@mdi/js\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { useColorMode } from \"@vueuse/core\";\nimport { EpLineChartProps } from \"~/types/charts/EpLineChart\";\nimport VueApexCharts from \"vue3-apexcharts\";\n\nconst props = withDefaults(defineProps<EpLineChartProps>(), {\n center: true,\n width: \"500\",\n dataNoDisponible: \"Data no disponible\",\n});\n\nconst renderText = computed(() => {\n if (!props.intentions) {\n return null;\n }\n if (!isHtml(props.intentions)) {\n return useMarkdown(props.intentions);\n }\n return props.intentions;\n});\n\nconst mode = useColorMode();\n\nconst globalOptions = computed(() => {\n return {\n ...props.options,\n theme: {\n mode: mode.value,\n },\n dataLabels: {\n enabled: false,\n },\n stroke: {\n curve: \"straight\",\n },\n chart: {\n background: \"transparent\",\n type: \"line\",\n zoom: {\n enabled: false,\n },\n },\n grid: {\n row: {\n colors: undefined,\n opacity: 0.2,\n },\n },\n };\n});\n\nconst { center, series, source, width, dataNoDisponible } = toRefs(props);\n</script>\n\n<template>\n <EpEdu :title=\"title\" :type=\"type\" :hideIcon=\"hideIcon\" :icon=\"mdiChartLine\">\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div\n :class=\"`p-4 ${center ? 'flex justify-center' : ''}`\"\n v-if=\"globalOptions && series\"\n >\n <VueApexCharts\n :width=\"width\"\n type=\"line\"\n :options=\"globalOptions\"\n :series=\"series\"\n />\n </div>\n <div v-else>\n <p>{{ dataNoDisponible }}</p>\n </div>\n </template>\n <template #actions v-if=\"source\">\n {{ source }}\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","title","type","hideIcon","_unref","_createElementBlock","_createVNode","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAUA,UAAM,QAAQ;AAMd,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,MAAM,YAAY;AACrB,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,MAAM,UAAU,GAAG;AAC7B,eAAO,YAAY,MAAM,UAAU;AAAA,MACrC;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,aAAA;AAEb,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO;AAAA,QACL,GAAG,MAAM;AAAA,QACT,OAAO;AAAA,UACL,MAAM,KAAK;AAAA,QAAA;AAAA,QAEb,YAAY;AAAA,UACV,SAAS;AAAA,QAAA;AAAA,QAEX,QAAQ;AAAA,UACN,OAAO;AAAA,QAAA;AAAA,QAET,OAAO;AAAA,UACL,YAAY;AAAA,UACZ,MAAM;AAAA,UACN,MAAM;AAAA,YACJ,SAAS;AAAA,UAAA;AAAA,QACX;AAAA,QAEF,MAAM;AAAA,UACJ,KAAK;AAAA,YACH,QAAQ;AAAA,YACR,SAAS;AAAA,UAAA;AAAA,QACX;AAAA,MACF;AAAA,IAEJ,CAAC;AAED,UAAM,EAAE,QAAQ,QAAQ,QAAQ,OAAO,iBAAA,IAAqB,OAAO,KAAK;;0BAItEA,YAuBQC,aAAA;AAAA,QAvBA,OAAOC,KAAAA;AAAAA,QAAQ,MAAMC,KAAAA;AAAAA,QAAO,UAAUC,KAAAA;AAAAA,QAAW,MAAMC,MAAA,YAAA;AAAA,MAAA;QAIlD,iBACT,MAUM;AAAA,UARE,cAAA,SAAiBA,MAAA,MAAA,kBAFzBC,mBAUM,OAAA;AAAA;YATH,6BAAcD,MAAA,MAAA,IAAM,wBAAA,EAAA,EAAA;AAAA,UAAA;YAGrBE,YAKEF,MAAA,aAAA,GAAA;AAAA,cAJC,OAAOA,MAAA,KAAA;AAAA,cACR,MAAK;AAAA,cACJ,SAAS,cAAA;AAAA,cACT,QAAQA,MAAA,MAAA;AAAA,YAAA;iCAGbC,mBAEM,OAAA,YAAA;AAAA,YADJE,mBAA6B,2BAAvBH,MAAA,gBAAA,CAAgB,GAAA,CAAA;AAAA,UAAA;;;;QAhBE,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BG,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;QAkBAH,MAAA,MAAA;gBAAd;AAAA,sBACT,MAAY;AAAA,4CAATA,MAAA,MAAA,CAAM,GAAA,CAAA;AAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"EpLineChart.vue.js","sources":["../../../src/components/charts/EpLineChart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { mdiChartLine } from \"@mdi/js\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { useColorMode } from \"@vueuse/core\";\nimport type { EpLineChartProps } from \"~/types/charts/EpLineChart\";\nimport VueApexCharts from \"vue3-apexcharts\";\n\nconst props = withDefaults(defineProps<EpLineChartProps>(), {\n center: true,\n width: \"500\",\n dataNoDisponible: \"Data no disponible\",\n});\n\nconst renderText = computed(() => {\n if (!props.intentions) {\n return null;\n }\n if (!isHtml(props.intentions)) {\n return useMarkdown(props.intentions);\n }\n return props.intentions;\n});\n\nconst mode = useColorMode();\n\nconst globalOptions = computed(() => {\n return {\n ...props.options,\n theme: {\n mode: mode.value,\n },\n dataLabels: {\n enabled: false,\n },\n stroke: {\n curve: \"straight\",\n },\n chart: {\n background: \"transparent\",\n type: \"line\",\n zoom: {\n enabled: false,\n },\n },\n grid: {\n row: {\n colors: undefined,\n opacity: 0.2,\n },\n },\n };\n});\n\nconst { center, series, source, width, dataNoDisponible } = toRefs(props);\n</script>\n\n<template>\n <EpEdu :title=\"title\" :type=\"type\" :hideIcon=\"hideIcon\" :icon=\"mdiChartLine\">\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div\n :class=\"`p-4 ${center ? 'flex justify-center' : ''}`\"\n v-if=\"globalOptions && series\"\n >\n <VueApexCharts\n :width=\"width\"\n type=\"line\"\n :options=\"globalOptions\"\n :series=\"series\"\n />\n </div>\n <div v-else>\n <p>{{ dataNoDisponible }}</p>\n </div>\n </template>\n <template #actions v-if=\"source\">\n {{ source }}\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","title","type","hideIcon","_unref","_createElementBlock","_createVNode","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAUA,UAAM,QAAQ;AAMd,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,MAAM,YAAY;AACrB,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,MAAM,UAAU,GAAG;AAC7B,eAAO,YAAY,MAAM,UAAU;AAAA,MACrC;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,aAAA;AAEb,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO;AAAA,QACL,GAAG,MAAM;AAAA,QACT,OAAO;AAAA,UACL,MAAM,KAAK;AAAA,QAAA;AAAA,QAEb,YAAY;AAAA,UACV,SAAS;AAAA,QAAA;AAAA,QAEX,QAAQ;AAAA,UACN,OAAO;AAAA,QAAA;AAAA,QAET,OAAO;AAAA,UACL,YAAY;AAAA,UACZ,MAAM;AAAA,UACN,MAAM;AAAA,YACJ,SAAS;AAAA,UAAA;AAAA,QACX;AAAA,QAEF,MAAM;AAAA,UACJ,KAAK;AAAA,YACH,QAAQ;AAAA,YACR,SAAS;AAAA,UAAA;AAAA,QACX;AAAA,MACF;AAAA,IAEJ,CAAC;AAED,UAAM,EAAE,QAAQ,QAAQ,QAAQ,OAAO,iBAAA,IAAqB,OAAO,KAAK;;0BAItEA,YAuBQC,aAAA;AAAA,QAvBA,OAAOC,KAAAA;AAAAA,QAAQ,MAAMC,KAAAA;AAAAA,QAAO,UAAUC,KAAAA;AAAAA,QAAW,MAAMC,MAAA,YAAA;AAAA,MAAA;QAIlD,iBACT,MAUM;AAAA,UARE,cAAA,SAAiBA,MAAA,MAAA,kBAFzBC,mBAUM,OAAA;AAAA;YATH,6BAAcD,MAAA,MAAA,IAAM,wBAAA,EAAA,EAAA;AAAA,UAAA;YAGrBE,YAKEF,MAAA,aAAA,GAAA;AAAA,cAJC,OAAOA,MAAA,KAAA;AAAA,cACR,MAAK;AAAA,cACJ,SAAS,cAAA;AAAA,cACT,QAAQA,MAAA,MAAA;AAAA,YAAA;iCAGbC,mBAEM,OAAA,YAAA;AAAA,YADJE,mBAA6B,2BAAvBH,MAAA,gBAAA,CAAgB,GAAA,CAAA;AAAA,UAAA;;;;QAhBE,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BG,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;QAkBAH,MAAA,MAAA;gBAAd;AAAA,sBACT,MAAY;AAAA,4CAATA,MAAA,MAAA,CAAM,GAAA,CAAA;AAAA,UAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpPieChart.vue.js","sources":["../../../src/components/charts/EpPieChart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { mdiChartPie } from \"@mdi/js\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { useColorMode } from \"@vueuse/core\";\nimport { EpPieChartProps } from \"~/types/charts/EpPieChart\";\nimport VueApexCharts from \"vue3-apexcharts\";\n\nconst props = withDefaults(defineProps<EpPieChartProps>(), {\n center: true,\n type: \"neutral\",\n width: \"500\",\n dataNoDisponible: \"Data no disponible\",\n});\n\nconst renderText = computed(() => {\n if (!props.intentions) {\n return null;\n }\n if (!isHtml(props.intentions)) {\n return useMarkdown(props.intentions);\n }\n return props.intentions;\n});\n\nconst mode = useColorMode();\n\nconst globalOptions = computed(() => {\n return {\n ...props.options,\n theme: {\n mode: mode.value,\n },\n chart: {\n background: \"transparent\",\n },\n };\n});\n\nconst { center, series, source, width, dataNoDisponible } = toRefs(props);\n</script>\n\n<template>\n <EpEdu :title=\"title\" :type=\"type\" :hideIcon=\"hideIcon\" :icon=\"mdiChartPie\">\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div\n :class=\"`p-4 ${center ? 'flex justify-center' : ''}`\"\n v-if=\"options && series\"\n >\n <VueApexCharts\n :width=\"width\"\n type=\"pie\"\n :options=\"globalOptions\"\n :series=\"series\"\n />\n </div>\n <div v-else>\n <p>{{ dataNoDisponible }}</p>\n </div>\n </template>\n <template #actions v-if=\"source\">\n <p>{{ source }}</p>\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","title","type","hideIcon","_unref","options","_createElementBlock","_createVNode","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAUA,UAAM,QAAQ;AAOd,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,MAAM,YAAY;AACrB,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,MAAM,UAAU,GAAG;AAC7B,eAAO,YAAY,MAAM,UAAU;AAAA,MACrC;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,aAAA;AAEb,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO;AAAA,QACL,GAAG,MAAM;AAAA,QACT,OAAO;AAAA,UACL,MAAM,KAAK;AAAA,QAAA;AAAA,QAEb,OAAO;AAAA,UACL,YAAY;AAAA,QAAA;AAAA,MACd;AAAA,IAEJ,CAAC;AAED,UAAM,EAAE,QAAQ,QAAQ,QAAQ,OAAO,iBAAA,IAAqB,OAAO,KAAK;;0BAItEA,YAuBQC,aAAA;AAAA,QAvBA,OAAOC,KAAAA;AAAAA,QAAQ,MAAMC,KAAAA;AAAAA,QAAO,UAAUC,KAAAA;AAAAA,QAAW,MAAMC,MAAA,WAAA;AAAA,MAAA;QAIlD,iBACT,MAUM;AAAA,UAREC,KAAAA,WAAWD,MAAA,MAAA,kBAFnBE,mBAUM,OAAA;AAAA;YATH,6BAAcF,MAAA,MAAA,IAAM,wBAAA,EAAA,EAAA;AAAA,UAAA;YAGrBG,YAKEH,MAAA,aAAA,GAAA;AAAA,cAJC,OAAOA,MAAA,KAAA;AAAA,cACR,MAAK;AAAA,cACJ,SAAS,cAAA;AAAA,cACT,QAAQA,MAAA,MAAA;AAAA,YAAA;iCAGbE,mBAEM,OAAA,YAAA;AAAA,YADJE,mBAA6B,2BAAvBJ,MAAA,gBAAA,CAAgB,GAAA,CAAA;AAAA,UAAA;;;;QAhBE,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BI,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;QAkBAJ,MAAA,MAAA;gBAAd;AAAA,sBACT,MAAmB;AAAA,YAAnBI,mBAAmB,2BAAbJ,MAAA,MAAA,CAAM,GAAA,CAAA;AAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"EpPieChart.vue.js","sources":["../../../src/components/charts/EpPieChart.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { mdiChartPie } from \"@mdi/js\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { useColorMode } from \"@vueuse/core\";\nimport type { EpPieChartProps } from \"~/types/charts/EpPieChart\";\nimport VueApexCharts from \"vue3-apexcharts\";\n\nconst props = withDefaults(defineProps<EpPieChartProps>(), {\n center: true,\n type: \"neutral\",\n width: \"500\",\n dataNoDisponible: \"Data no disponible\",\n});\n\nconst renderText = computed(() => {\n if (!props.intentions) {\n return null;\n }\n if (!isHtml(props.intentions)) {\n return useMarkdown(props.intentions);\n }\n return props.intentions;\n});\n\nconst mode = useColorMode();\n\nconst globalOptions = computed(() => {\n return {\n ...props.options,\n theme: {\n mode: mode.value,\n },\n chart: {\n background: \"transparent\",\n },\n };\n});\n\nconst { center, series, source, width, dataNoDisponible } = toRefs(props);\n</script>\n\n<template>\n <EpEdu :title=\"title\" :type=\"type\" :hideIcon=\"hideIcon\" :icon=\"mdiChartPie\">\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div\n :class=\"`p-4 ${center ? 'flex justify-center' : ''}`\"\n v-if=\"options && series\"\n >\n <VueApexCharts\n :width=\"width\"\n type=\"pie\"\n :options=\"globalOptions\"\n :series=\"series\"\n />\n </div>\n <div v-else>\n <p>{{ dataNoDisponible }}</p>\n </div>\n </template>\n <template #actions v-if=\"source\">\n <p>{{ source }}</p>\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","title","type","hideIcon","_unref","options","_createElementBlock","_createVNode","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAUA,UAAM,QAAQ;AAOd,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,CAAC,MAAM,YAAY;AACrB,eAAO;AAAA,MACT;AACA,UAAI,CAAC,OAAO,MAAM,UAAU,GAAG;AAC7B,eAAO,YAAY,MAAM,UAAU;AAAA,MACrC;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,aAAA;AAEb,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO;AAAA,QACL,GAAG,MAAM;AAAA,QACT,OAAO;AAAA,UACL,MAAM,KAAK;AAAA,QAAA;AAAA,QAEb,OAAO;AAAA,UACL,YAAY;AAAA,QAAA;AAAA,MACd;AAAA,IAEJ,CAAC;AAED,UAAM,EAAE,QAAQ,QAAQ,QAAQ,OAAO,iBAAA,IAAqB,OAAO,KAAK;;0BAItEA,YAuBQC,aAAA;AAAA,QAvBA,OAAOC,KAAAA;AAAAA,QAAQ,MAAMC,KAAAA;AAAAA,QAAO,UAAUC,KAAAA;AAAAA,QAAW,MAAMC,MAAA,WAAA;AAAA,MAAA;QAIlD,iBACT,MAUM;AAAA,UAREC,KAAAA,WAAWD,MAAA,MAAA,kBAFnBE,mBAUM,OAAA;AAAA;YATH,6BAAcF,MAAA,MAAA,IAAM,wBAAA,EAAA,EAAA;AAAA,UAAA;YAGrBG,YAKEH,MAAA,aAAA,GAAA;AAAA,cAJC,OAAOA,MAAA,KAAA;AAAA,cACR,MAAK;AAAA,cACJ,SAAS,cAAA;AAAA,cACT,QAAQA,MAAA,MAAA;AAAA,YAAA;iCAGbE,mBAEM,OAAA,YAAA;AAAA,YADJE,mBAA6B,2BAAvBJ,MAAA,gBAAA,CAAgB,GAAA,CAAA;AAAA,UAAA;;;;QAhBE,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BI,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;QAkBAJ,MAAA,MAAA;gBAAd;AAAA,sBACT,MAAmB;AAAA,YAAnBI,mBAAmB,2BAAbJ,MAAA,MAAA,CAAM,GAAA,CAAA;AAAA,UAAA;;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./EpBranchingScenario.vue2.js";
2
2
  /* empty css */
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
4
- const Comp = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2a6d792e"]]);
4
+ const Comp = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-6611fc55"]]);
5
5
  export {
6
6
  Comp as default
7
7
  };
@@ -1 +1 @@
1
- {"version":3,"file":"EpBranchingScenario.vue2.js","sources":["../../../src/components/educationals/EpBranchingScenario.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, computed } from \"vue\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport type { TreeNode } from \"~/types/Hierarchy\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport Details from \"~/components/tools/Details.vue\";\nimport EpModal from \"~/components/interactions/EpModal.vue\";\nimport EpHierarchy from \"~/components/medias/EpHierarchy.vue\";\nimport EpBtn from \"../basics/EpBtn.vue\";\nimport { mdiArrowLeft } from \"@mdi/js\";\nimport TextMedia from \"~/components/tools/TextMedia.vue\";\nimport { EpBranchingScenarioProps } from \"~/types/educationals/EpBranchingScenario\";\n\nconst props = withDefaults(defineProps<EpBranchingScenarioProps>(), {\n initialInstruction: null,\n transitionAnimation: \"fade\",\n labelFinish: \"Vous avez terminé le scénario!\",\n labelYourPath: \"Votre parcours\",\n labelShowFullPath: \"Voir le parcours au complet\",\n labelClose: \"Fermer\",\n labelRestart: \"Recommencer\",\n labelStart: \"Commencer\",\n colorRect: \"fill-main-color-400\",\n colorPath: \"stroke-yellow-400\",\n});\n\nconst showPath = ref(false);\nconst path = ref<TreeNode[]>([]);\nconst userPath = ref<TreeNode | null>(null);\nconst currentOption = ref<TreeNode | null>(null);\n\n// Manage the introductory part\nconst isIntroductoryPart = ref(true);\n\nconst start = () => {\n isIntroductoryPart.value = false;\n currentOption.value = props.decisionTree;\n};\n\nconst styleIntro = computed(() => {\n const noInstruction = !props.initialInstruction;\n const noMedia = !props.media;\n\n if (noInstruction && noMedia) {\n return \"pt-44\";\n }\n\n return \"\";\n});\n\n// Return function\nconst goToPrevious = () => {\n //if(notTheEnd.value){\n if (path.value.length === 0) {\n isIntroductoryPart.value = true;\n currentOption.value = null;\n return;\n }\n\n path.value.pop();\n // Get the previous option in the path\n const lastOption = path.value[path.value.length - 1];\n\n if (lastOption) {\n currentOption.value = lastOption;\n } else {\n currentOption.value = props.decisionTree;\n }\n};\n\n// Restart function\nconst restart = () => {\n //currentSlide.value = 0;\n currentOption.value = null;\n isIntroductoryPart.value = true;\n path.value = [];\n};\n\nconst nextSlide = (option: TreeNode) => {\n //currentSlide.value++\n path.value.push(option);\n if (option.children && option.children.length > 0) {\n currentOption.value = option; // drill into next level\n } else {\n currentOption.value = null; // reached the end (leaf node)\n userPath.value = convertOptionToTreeNode(props.decisionTree, path.value);\n }\n};\n\n//helper function\nfunction convertOptionToTreeNode(option: TreeNode, path: TreeNode[]): TreeNode {\n const isActive = path.includes(option);\n return {\n name: option.name,\n text: option.text,\n component: option.component,\n active: isActive,\n children: option.children?.map((child) =>\n convertOptionToTreeNode(child, path)\n ),\n };\n}\n</script>\n\n<template>\n <div>\n <div\n class=\"bg-gray-200 dark:bg-slate-800 rounded-md p-4 flex flex-col\"\n :style=\"{ minHeight: '500px', backgroundColor: bgColor }\"\n >\n <!-- <div v-for=\"item in path\" :key=\"item.name\">\n <span class=\"text-xs\">{{ item.name }}</span>\n </div> -->\n <!-- Header (fixed at top of card) -->\n <div class=\"mb-2\">\n <h1 class=\"font-bold text-3xl text-center\">{{ title }}</h1>\n <div v-if=\"currentOption\" class=\"mt-2\">\n <EpBtn\n type=\"primary\"\n rounded\n size=\"small\"\n :extra-class=\"`${transitionAnimation}`\"\n @click=\"goToPrevious\"\n >\n <EpIcon :icon-path=\"mdiArrowLeft\" size=\"25\" />\n </EpBtn>\n </div>\n </div>\n\n <!-- Content Area -->\n <div>\n <!-- Introductory Part -->\n <div v-if=\"isIntroductoryPart\" class=\"w-full flex flex-col space-y-6\">\n <TextMedia\n :text=\"initialInstruction ?? ''\"\n :media=\"media\"\n :cols=\"initialTwoCols\"\n />\n <div :class=\"`justify-center flex ${styleIntro}`\">\n <EpBtn type=\"primary\" rounded @click=\"start\">{{\n labelStart\n }}</EpBtn>\n </div>\n </div>\n\n <!-- Slides -->\n <template v-else-if=\"currentOption && !isIntroductoryPart\">\n <div class=\"w-full\">\n <div :class=\"`${transitionAnimation} my-12`\">\n <TextMedia\n :text=\"currentOption.text ?? ''\"\n :media=\"currentOption.component\"\n :cols=\"currentOption.cols\"\n />\n\n <div\n :class=\"`w-full my-4 mx-4 flex flex-wrap gap-2 justify-center items-center`\"\n >\n <template\n v-for=\"(option, index) in currentOption.children\"\n :key=\"`option-${index}`\"\n >\n <EpBtn\n rounded\n type=\"primary\"\n class=\"flex-1 min-w-[120px] sm:min-w-[160px] max-w-xs\"\n @click=\"nextSlide(option)\"\n >\n {{ option.name }}\n </EpBtn>\n </template>\n </div>\n </div>\n </div>\n </template>\n\n <!--show path-->\n <div v-else>\n <!-- <template v-if=\"userPath\">\n <EpHierarchy :nodes=\"userPath\"/>\n </template> -->\n <h3 class=\"text-xl text-center font-semibold\">{{ labelFinish }}</h3>\n <div\n :class=\"`flex gap-6 mt-3 ${\n !generalFeedback ? 'w-3/6 mx-auto' : ''\n }`\"\n >\n <div class=\"w-full\">\n <h3 class=\"font-semibold mb-3\">{{ labelYourPath }}</h3>\n <div class=\"overflow-auto p-2\" :style=\"{ height: '200px' }\">\n <template v-for=\"(item, i) in path\" :key=\"`user-choice-${i}`\">\n <div class=\"mb-2\">\n <Details\n :content=\"item.text ?? ''\"\n :title=\"item.name\"\n :media=\"item.component\"\n />\n </div>\n </template>\n </div>\n <div class=\"flex justify-center mt-2\">\n <EpBtn type=\"info\" rounded @click=\"showPath = true\">{{\n labelShowFullPath\n }}</EpBtn>\n </div>\n <EpModal v-if=\"userPath\" v-model=\"showPath\">\n <EpHierarchy\n :nodes=\"userPath\"\n :is-cluster=\"props.isCluster\"\n :color-path=\"props.colorPath\"\n :color-rect=\"props.colorRect\"\n />\n <div class=\"flex justify-end mt-4\">\n <EpBtn\n @click=\"showPath = false\"\n type=\"error\"\n outlined\n rounded\n >{{ labelClose }}</EpBtn\n >\n </div>\n </EpModal>\n </div>\n <div\n v-if=\"generalFeedback\"\n class=\"flex w-full flex-col col-span-1 items-center px-4 border-l-2 border-gray-700 overflow-auto\"\n >\n <div v-html=\"useRenderText(generalFeedback)\" />\n </div>\n </div>\n\n <div class=\"flex justify-center mt-2\">\n <EpBtn rounded type=\"warning\" @click=\"restart\">{{\n labelRestart\n }}</EpBtn>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<style scoped>\n@keyframes fade {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n@keyframes scale {\n 0% {\n transform: scale(0.5);\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n opacity: 1;\n }\n}\n\n@keyframes slideY {\n 0% {\n transform: translateY(-100%);\n opacity: 0;\n }\n 100% {\n transform: translateY(0);\n opacity: 1;\n }\n}\n\n/* Transition animation */\n.fade {\n animation: fade 1s;\n}\n\n.scale {\n animation: scale 1s;\n}\n\n.slideY {\n animation: slideY 1s;\n}\n</style>\n"],"names":["path","_createElementBlock","_createElementVNode","bgColor","_toDisplayString","title","_openBlock","_createVNode","EpBtn","transitionAnimation","EpIcon","_unref","TextMedia","initialInstruction","media","initialTwoCols","labelStart","_Fragment","_createBlock","_createTextVNode","labelFinish","_normalizeClass","generalFeedback","labelYourPath","_renderList","Details","_a","labelShowFullPath","EpModal","EpHierarchy","labelClose","labelRestart"],"mappings":"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"}
1
+ {"version":3,"file":"EpBranchingScenario.vue2.js","sources":["../../../src/components/educationals/EpBranchingScenario.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, computed } from \"vue\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport type { TreeNode } from \"~/types/Hierarchy\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport Details from \"~/components/tools/Details.vue\";\nimport EpModal from \"~/components/interactions/EpModal.vue\";\nimport EpHierarchy from \"~/components/medias/EpHierarchy.vue\";\nimport EpBtn from \"../basics/EpBtn.vue\";\nimport { mdiArrowLeft } from \"@mdi/js\";\nimport TextMedia from \"~/components/tools/TextMedia.vue\";\nimport type { EpBranchingScenarioProps } from \"~/types/educationals/EpBranchingScenario\";\n\nconst props = withDefaults(defineProps<EpBranchingScenarioProps>(), {\n initialInstruction: null,\n transitionAnimation: \"fade\",\n labelFinish: \"Vous avez terminé le scénario!\",\n labelYourPath: \"Votre parcours\",\n labelShowFullPath: \"Voir le parcours au complet\",\n labelClose: \"Fermer\",\n labelRestart: \"Recommencer\",\n labelStart: \"Commencer\",\n colorRect: \"fill-main-color-400\",\n colorPath: \"stroke-yellow-400\",\n});\n\nconst showPath = ref(false);\nconst path = ref<TreeNode[]>([]);\nconst userPath = ref<TreeNode | null>(null);\nconst currentOption = ref<TreeNode | null>(null);\n\n// Manage the introductory part\nconst isIntroductoryPart = ref(true);\n\nconst start = () => {\n isIntroductoryPart.value = false;\n currentOption.value = props.decisionTree;\n};\n\nconst styleIntro = computed(() => {\n const noInstruction = !props.initialInstruction;\n const noMedia = !props.media;\n\n if (noInstruction && noMedia) {\n return \"pt-44\";\n }\n\n return \"\";\n});\n\n// Return function\nconst goToPrevious = () => {\n //if(notTheEnd.value){\n if (path.value.length === 0) {\n isIntroductoryPart.value = true;\n currentOption.value = null;\n return;\n }\n\n path.value.pop();\n // Get the previous option in the path\n const lastOption = path.value[path.value.length - 1];\n\n if (lastOption) {\n currentOption.value = lastOption;\n } else {\n currentOption.value = props.decisionTree;\n }\n};\n\n// Restart function\nconst restart = () => {\n //currentSlide.value = 0;\n currentOption.value = null;\n isIntroductoryPart.value = true;\n path.value = [];\n};\n\nconst nextSlide = (option: TreeNode) => {\n //currentSlide.value++\n path.value.push(option);\n if (option.children && option.children.length > 0) {\n currentOption.value = option; // drill into next level\n } else {\n currentOption.value = null; // reached the end (leaf node)\n userPath.value = convertOptionToTreeNode(props.decisionTree, path.value);\n }\n};\n\n//helper function\nfunction convertOptionToTreeNode(option: TreeNode, path: TreeNode[]): TreeNode {\n const isActive = path.includes(option);\n return {\n name: option.name,\n text: option.text,\n component: option.component,\n active: isActive,\n children: option.children?.map((child) =>\n convertOptionToTreeNode(child, path)\n ),\n };\n}\n</script>\n\n<template>\n <div>\n <div\n class=\"bg-gray-200 dark:bg-slate-800 rounded-md p-4 flex flex-col\"\n :style=\"{ minHeight: '500px', backgroundColor: bgColor }\"\n >\n <!-- <div v-for=\"item in path\" :key=\"item.name\">\n <span class=\"text-xs\">{{ item.name }}</span>\n </div> -->\n <!-- Header (fixed at top of card) -->\n <div class=\"mb-2\">\n <h1 class=\"font-bold text-3xl text-center\">{{ title }}</h1>\n <div v-if=\"currentOption\" class=\"mt-2\">\n <EpBtn\n type=\"primary\"\n rounded\n size=\"small\"\n :extra-class=\"`${transitionAnimation}`\"\n @click=\"goToPrevious\"\n >\n <EpIcon :icon-path=\"mdiArrowLeft\" size=\"25\" />\n </EpBtn>\n </div>\n </div>\n\n <!-- Content Area -->\n <div>\n <!-- Introductory Part -->\n <div v-if=\"isIntroductoryPart\" class=\"w-full flex flex-col space-y-6\">\n <TextMedia\n :text=\"initialInstruction ?? ''\"\n :media=\"media\"\n :cols=\"initialTwoCols\"\n />\n <div :class=\"`justify-center flex ${styleIntro}`\">\n <EpBtn type=\"primary\" rounded @click=\"start\">{{\n labelStart\n }}</EpBtn>\n </div>\n </div>\n\n <!-- Slides -->\n <template v-else-if=\"currentOption && !isIntroductoryPart\">\n <div class=\"w-full\">\n <div :class=\"`${transitionAnimation} my-12`\">\n <TextMedia\n :text=\"currentOption.text ?? ''\"\n :media=\"currentOption.component\"\n :cols=\"currentOption.cols\"\n />\n\n <div\n :class=\"`w-full my-4 mx-4 flex flex-wrap gap-2 justify-center items-center`\"\n >\n <template\n v-for=\"(option, index) in currentOption.children\"\n :key=\"`option-${index}`\"\n >\n <EpBtn\n rounded\n type=\"primary\"\n class=\"flex-1 min-w-[120px] sm:min-w-[160px] max-w-xs\"\n @click=\"nextSlide(option)\"\n >\n {{ option.name }}\n </EpBtn>\n </template>\n </div>\n </div>\n </div>\n </template>\n\n <!--show path-->\n <div v-else>\n <!-- <template v-if=\"userPath\">\n <EpHierarchy :nodes=\"userPath\"/>\n </template> -->\n <h3 class=\"text-xl text-center font-semibold\">{{ labelFinish }}</h3>\n <div\n :class=\"`flex gap-6 mt-3 ${\n !generalFeedback ? 'w-3/6 mx-auto' : ''\n }`\"\n >\n <div class=\"w-full\">\n <h3 class=\"font-semibold mb-3\">{{ labelYourPath }}</h3>\n <div class=\"overflow-auto p-2\" :style=\"{ height: '200px' }\">\n <template v-for=\"(item, i) in path\" :key=\"`user-choice-${i}`\">\n <div class=\"mb-2\">\n <Details\n :content=\"item.text ?? ''\"\n :title=\"item.name\"\n :media=\"item.component\"\n />\n </div>\n </template>\n </div>\n <div class=\"flex justify-center mt-2\">\n <EpBtn type=\"info\" rounded @click=\"showPath = true\">{{\n labelShowFullPath\n }}</EpBtn>\n </div>\n <EpModal v-if=\"userPath\" v-model=\"showPath\">\n <EpHierarchy\n :nodes=\"userPath\"\n :is-cluster=\"props.isCluster\"\n :color-path=\"props.colorPath\"\n :color-rect=\"props.colorRect\"\n />\n <div class=\"flex justify-end mt-4\">\n <EpBtn\n @click=\"showPath = false\"\n type=\"error\"\n outlined\n rounded\n >{{ labelClose }}</EpBtn\n >\n </div>\n </EpModal>\n </div>\n <div\n v-if=\"generalFeedback\"\n class=\"flex w-full flex-col col-span-1 items-center px-4 border-l-2 border-gray-700 overflow-auto\"\n >\n <div v-html=\"useRenderText(generalFeedback)\" />\n </div>\n </div>\n\n <div class=\"flex justify-center mt-2\">\n <EpBtn rounded type=\"warning\" @click=\"restart\">{{\n labelRestart\n }}</EpBtn>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<style scoped>\n@keyframes fade {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n@keyframes scale {\n 0% {\n transform: scale(0.5);\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n opacity: 1;\n }\n}\n\n@keyframes slideY {\n 0% {\n transform: translateY(-100%);\n opacity: 0;\n }\n 100% {\n transform: translateY(0);\n opacity: 1;\n }\n}\n\n/* Transition animation */\n.fade {\n animation: fade 1s;\n}\n\n.scale {\n animation: scale 1s;\n}\n\n.slideY {\n animation: slideY 1s;\n}\n</style>\n"],"names":["path","_createElementBlock","_createElementVNode","bgColor","_toDisplayString","title","_openBlock","_createVNode","EpBtn","transitionAnimation","EpIcon","_unref","TextMedia","initialInstruction","media","initialTwoCols","labelStart","_Fragment","_createBlock","_createTextVNode","labelFinish","_normalizeClass","generalFeedback","labelYourPath","_renderList","Details","_a","labelShowFullPath","EpModal","EpHierarchy","labelClose","labelRestart"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpCodeblock.vue.js","sources":["../../../src/components/educationals/EpCodeblock.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport VCodeBlock from \"@wdns/vue-code-block\";\nimport { defaultOption } from \"~/types/Codeblock\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\nimport { computed } from \"vue\";\nimport { ref } from \"vue\";\nimport { EpCodeblockProps } from \"~/types/educationals/EpCodeblock\";\n\nconst props = withDefaults(defineProps<EpCodeblockProps>(), {\n code: \"\",\n label: \"\",\n lang: \"javascript\",\n theme: defaultOption,\n compact: false,\n});\n\nconst renderTitle = computed(() => {\n if (!props.title) {\n return \"En savoir plus\";\n }\n return props.title;\n});\n\nconst code = computed(() => {\n return ref(props.code);\n});\nconst label = computed(() => {\n return props.label;\n});\nconst lang = computed(() => {\n return props.lang;\n});\nconst theme = computed(() => {\n return props.theme;\n});\n</script>\n\n<template>\n <VCodeBlock\n :code=\"code\"\n highlightjs\n :label=\"label\"\n :lang=\"lang\"\n :theme=\"theme\"\n v-if=\"!compact\"\n />\n\n <EpAccordeon outlined :title=\"renderTitle\" v-else>\n <VCodeBlock\n :code=\"code\"\n highlightjs\n :label=\"label\"\n :lang=\"lang\"\n :theme=\"theme\"\n />\n </EpAccordeon>\n</template>\n<style>\npre {\n white-space: break-spaces;\n}\n</style>\n"],"names":["compact","_createBlock","_unref","EpAccordeon","_createVNode"],"mappings":";;;;;;;;;;;;;;;AAQA,UAAM,QAAQ;AAQd,UAAM,cAAc,SAAS,MAAM;AACjC,UAAI,CAAC,MAAM,OAAO;AAChB,eAAO;AAAA,MACT;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,SAAS,MAAM;AAC1B,aAAO,IAAI,MAAM,IAAI;AAAA,IACvB,CAAC;AACD,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO,MAAM;AAAA,IACf,CAAC;AACD,UAAM,OAAO,SAAS,MAAM;AAC1B,aAAO,MAAM;AAAA,IACf,CAAC;AACD,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO,MAAM;AAAA,IACf,CAAC;;cAUUA,KAAAA,wBANTC,YAOEC,MAAA,UAAA,GAAA;AAAA;QANC,MAAM,KAAA;AAAA,QACP,aAAA;AAAA,QACC,OAAO,MAAA;AAAA,QACP,MAAM,KAAA;AAAA,QACN,OAAO,MAAA;AAAA,MAAA,iEAIVD,YAQcE,MAAA;AAAA;QARD,UAAA;AAAA,QAAU,OAAO,YAAA;AAAA,MAAA;yBAC5B,MAME;AAAA,UANFC,YAMEF,MAAA,UAAA,GAAA;AAAA,YALC,MAAM,KAAA;AAAA,YACP,aAAA;AAAA,YACC,OAAO,MAAA;AAAA,YACP,MAAM,KAAA;AAAA,YACN,OAAO,MAAA;AAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"EpCodeblock.vue.js","sources":["../../../src/components/educationals/EpCodeblock.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport VCodeBlock from \"@wdns/vue-code-block\";\nimport { defaultOption } from \"~/types/Codeblock\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\nimport { computed } from \"vue\";\nimport { ref } from \"vue\";\nimport type { EpCodeblockProps } from \"~/types/educationals/EpCodeblock\";\n\nconst props = withDefaults(defineProps<EpCodeblockProps>(), {\n code: \"\",\n label: \"\",\n lang: \"javascript\",\n theme: defaultOption,\n compact: false,\n});\n\nconst renderTitle = computed(() => {\n if (!props.title) {\n return \"En savoir plus\";\n }\n return props.title;\n});\n\nconst code = computed(() => {\n return ref(props.code);\n});\nconst label = computed(() => {\n return props.label;\n});\nconst lang = computed(() => {\n return props.lang;\n});\nconst theme = computed(() => {\n return props.theme;\n});\n</script>\n\n<template>\n <VCodeBlock\n :code=\"code\"\n highlightjs\n :label=\"label\"\n :lang=\"lang\"\n :theme=\"theme\"\n v-if=\"!compact\"\n />\n\n <EpAccordeon outlined :title=\"renderTitle\" v-else>\n <VCodeBlock\n :code=\"code\"\n highlightjs\n :label=\"label\"\n :lang=\"lang\"\n :theme=\"theme\"\n />\n </EpAccordeon>\n</template>\n<style>\npre {\n white-space: break-spaces;\n}\n</style>\n"],"names":["compact","_createBlock","_unref","EpAccordeon","_createVNode"],"mappings":";;;;;;;;;;;;;;;AAQA,UAAM,QAAQ;AAQd,UAAM,cAAc,SAAS,MAAM;AACjC,UAAI,CAAC,MAAM,OAAO;AAChB,eAAO;AAAA,MACT;AACA,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,SAAS,MAAM;AAC1B,aAAO,IAAI,MAAM,IAAI;AAAA,IACvB,CAAC;AACD,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO,MAAM;AAAA,IACf,CAAC;AACD,UAAM,OAAO,SAAS,MAAM;AAC1B,aAAO,MAAM;AAAA,IACf,CAAC;AACD,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO,MAAM;AAAA,IACf,CAAC;;cAUUA,KAAAA,wBANTC,YAOEC,MAAA,UAAA,GAAA;AAAA;QANC,MAAM,KAAA;AAAA,QACP,aAAA;AAAA,QACC,OAAO,MAAA;AAAA,QACP,MAAM,KAAA;AAAA,QACN,OAAO,MAAA;AAAA,MAAA,iEAIVD,YAQcE,MAAA;AAAA;QARD,UAAA;AAAA,QAAU,OAAO,YAAA;AAAA,MAAA;yBAC5B,MAME;AAAA,UANFC,YAMEF,MAAA,UAAA,GAAA;AAAA,YALC,MAAM,KAAA;AAAA,YACP,aAAA;AAAA,YACC,OAAO,MAAA;AAAA,YACP,MAAM,KAAA;AAAA,YACN,OAAO,MAAA;AAAA,UAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpConclusion.vue.js","sources":["../../../src/components/educationals/EpConclusion.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport { EpConclusionProps } from \"~/types/educationals/EpConclusion\";\n\nconst props = withDefaults(defineProps<EpConclusionProps>(), {\n title: \"Conclusion\",\n});\nconst { title, icon, subtitle } = toRefs(props);\n</script>\n<template>\n <div class=\"lg:grid lg:grid-cols-12 lg:gap-8\">\n <div class=\"lg:col-span-2\">\n <h2\n class=\"text-pretty text-3xl font-semibold tracking-tight text-gray-900 dark:text-gray-100 sm:text-xl\"\n >\n <EpIcon v-if=\"icon\" :icon-path=\"icon\" size=\"28\" extraClass=\"mr-2\" />\n {{ title }}\n </h2>\n </div>\n <div class=\"lg:col-span-8 lg:mt-0 lg:border-l dark:border-gray-700 lg:pl-4\">\n <div class=\"py-2\">\n <h3\n v-if=\"subtitle\"\n class=\"text-base font-semibold leading-7 text-gray-900 dark:text-gray-100\"\n >\n {{ subtitle }}\n </h3>\n <div class=\"text-gray-600 dark:text-gray-300\">\n <slot />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_unref","_createBlock","EpIcon","_createTextVNode","_toDisplayString","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;AAKA,UAAM,QAAQ;AAGd,UAAM,EAAE,OAAO,MAAM,SAAA,IAAa,OAAO,KAAK;;AAG5C,aAAAA,UAAA,GAAAC,mBAsBM,OAtBN,YAsBM;AAAA,QArBJC,mBAOM,OAPN,YAOM;AAAA,UANJA,mBAKK,MALL,YAKK;AAAA,YAFWC,MAAA,IAAA,kBAAdC,YAAoEC,aAAA;AAAA;cAA/C,aAAWF,MAAA,IAAA;AAAA,cAAM,MAAK;AAAA,cAAK,YAAW;AAAA,YAAA;YAASG,gBAAA,sBACjEH,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;;QAGZD,mBAYM,OAZN,YAYM;AAAA,UAXJA,mBAUM,OAVN,YAUM;AAAA,YARIC,MAAA,QAAA,kBADRF,mBAKK,MALL,YAKKM,gBADAJ,MAAA,QAAA,CAAQ,GAAA,CAAA;YAEbD,mBAEM,OAFN,YAEM;AAAA,cADJM,WAAQ,KAAA,QAAA,SAAA;AAAA,YAAA;;;;;;;"}
1
+ {"version":3,"file":"EpConclusion.vue.js","sources":["../../../src/components/educationals/EpConclusion.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport type { EpConclusionProps } from \"~/types/educationals/EpConclusion\";\n\nconst props = withDefaults(defineProps<EpConclusionProps>(), {\n title: \"Conclusion\",\n});\nconst { title, icon, subtitle } = toRefs(props);\n</script>\n<template>\n <div class=\"lg:grid lg:grid-cols-12 lg:gap-8\">\n <div class=\"lg:col-span-2\">\n <h2\n class=\"text-pretty text-3xl font-semibold tracking-tight text-gray-900 dark:text-gray-100 sm:text-xl\"\n >\n <EpIcon v-if=\"icon\" :icon-path=\"icon\" size=\"28\" extraClass=\"mr-2\" />\n {{ title }}\n </h2>\n </div>\n <div class=\"lg:col-span-8 lg:mt-0 lg:border-l dark:border-gray-700 lg:pl-4\">\n <div class=\"py-2\">\n <h3\n v-if=\"subtitle\"\n class=\"text-base font-semibold leading-7 text-gray-900 dark:text-gray-100\"\n >\n {{ subtitle }}\n </h3>\n <div class=\"text-gray-600 dark:text-gray-300\">\n <slot />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_unref","_createBlock","EpIcon","_createTextVNode","_toDisplayString","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;AAKA,UAAM,QAAQ;AAGd,UAAM,EAAE,OAAO,MAAM,SAAA,IAAa,OAAO,KAAK;;AAG5C,aAAAA,UAAA,GAAAC,mBAsBM,OAtBN,YAsBM;AAAA,QArBJC,mBAOM,OAPN,YAOM;AAAA,UANJA,mBAKK,MALL,YAKK;AAAA,YAFWC,MAAA,IAAA,kBAAdC,YAAoEC,aAAA;AAAA;cAA/C,aAAWF,MAAA,IAAA;AAAA,cAAM,MAAK;AAAA,cAAK,YAAW;AAAA,YAAA;YAASG,gBAAA,sBACjEH,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;;QAGZD,mBAYM,OAZN,YAYM;AAAA,UAXJA,mBAUM,OAVN,YAUM;AAAA,YARIC,MAAA,QAAA,kBADRF,mBAKK,MALL,YAKKM,gBADAJ,MAAA,QAAA,CAAQ,GAAA,CAAA;YAEbD,mBAEM,OAFN,YAEM;AAAA,cADJM,WAAQ,KAAA,QAAA,SAAA;AAAA,YAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpDescription.vue.js","sources":["../../../src/components/educationals/EpDescription.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport { EpDescriptionProps } from \"~/types/educationals/EpDescription\";\n\nconst props = withDefaults(defineProps<EpDescriptionProps>(), {\n title: \"Description\",\n});\nconst { title, icon, subtitle } = toRefs(props);\n</script>\n<template>\n <div class=\"lg:grid lg:grid-cols-12 lg:gap-8\">\n <div class=\"lg:col-span-2\">\n <h2\n class=\"text-pretty text-3xl font-semibold tracking-tight text-gray-900 dark:text-gray-100 sm:text-xl\"\n >\n <EpIcon v-if=\"icon\" :icon-path=\"icon\" size=\"28\" extraClass=\"mr-2\" />\n {{ title }}\n </h2>\n </div>\n <div class=\"lg:col-span-8 lg:mt-0 lg:border-l dark:border-gray-700 lg:pl-4\">\n <div class=\"py-2\">\n <h3\n v-if=\"subtitle\"\n class=\"text-base font-semibold leading-7 text-gray-900 dark:text-gray-100\"\n >\n {{ subtitle }}\n </h3>\n <div class=\"text-gray-600 dark:text-gray-300\">\n <slot />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_unref","_createBlock","EpIcon","_createTextVNode","_toDisplayString","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;AAKA,UAAM,QAAQ;AAGd,UAAM,EAAE,OAAO,MAAM,SAAA,IAAa,OAAO,KAAK;;AAG5C,aAAAA,UAAA,GAAAC,mBAsBM,OAtBN,YAsBM;AAAA,QArBJC,mBAOM,OAPN,YAOM;AAAA,UANJA,mBAKK,MALL,YAKK;AAAA,YAFWC,MAAA,IAAA,kBAAdC,YAAoEC,aAAA;AAAA;cAA/C,aAAWF,MAAA,IAAA;AAAA,cAAM,MAAK;AAAA,cAAK,YAAW;AAAA,YAAA;YAASG,gBAAA,sBACjEH,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;;QAGZD,mBAYM,OAZN,YAYM;AAAA,UAXJA,mBAUM,OAVN,YAUM;AAAA,YARIC,MAAA,QAAA,kBADRF,mBAKK,MALL,YAKKM,gBADAJ,MAAA,QAAA,CAAQ,GAAA,CAAA;YAEbD,mBAEM,OAFN,YAEM;AAAA,cADJM,WAAQ,KAAA,QAAA,SAAA;AAAA,YAAA;;;;;;;"}
1
+ {"version":3,"file":"EpDescription.vue.js","sources":["../../../src/components/educationals/EpDescription.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport type { EpDescriptionProps } from \"~/types/educationals/EpDescription\";\n\nconst props = withDefaults(defineProps<EpDescriptionProps>(), {\n title: \"Description\",\n});\nconst { title, icon, subtitle } = toRefs(props);\n</script>\n<template>\n <div class=\"lg:grid lg:grid-cols-12 lg:gap-8\">\n <div class=\"lg:col-span-2\">\n <h2\n class=\"text-pretty text-3xl font-semibold tracking-tight text-gray-900 dark:text-gray-100 sm:text-xl\"\n >\n <EpIcon v-if=\"icon\" :icon-path=\"icon\" size=\"28\" extraClass=\"mr-2\" />\n {{ title }}\n </h2>\n </div>\n <div class=\"lg:col-span-8 lg:mt-0 lg:border-l dark:border-gray-700 lg:pl-4\">\n <div class=\"py-2\">\n <h3\n v-if=\"subtitle\"\n class=\"text-base font-semibold leading-7 text-gray-900 dark:text-gray-100\"\n >\n {{ subtitle }}\n </h3>\n <div class=\"text-gray-600 dark:text-gray-300\">\n <slot />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_unref","_createBlock","EpIcon","_createTextVNode","_toDisplayString","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;AAKA,UAAM,QAAQ;AAGd,UAAM,EAAE,OAAO,MAAM,SAAA,IAAa,OAAO,KAAK;;AAG5C,aAAAA,UAAA,GAAAC,mBAsBM,OAtBN,YAsBM;AAAA,QArBJC,mBAOM,OAPN,YAOM;AAAA,UANJA,mBAKK,MALL,YAKK;AAAA,YAFWC,MAAA,IAAA,kBAAdC,YAAoEC,aAAA;AAAA;cAA/C,aAAWF,MAAA,IAAA;AAAA,cAAM,MAAK;AAAA,cAAK,YAAW;AAAA,YAAA;YAASG,gBAAA,sBACjEH,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;;QAGZD,mBAYM,OAZN,YAYM;AAAA,UAXJA,mBAUM,OAVN,YAUM;AAAA,YARIC,MAAA,QAAA,kBADRF,mBAKK,MALL,YAKKM,gBADAJ,MAAA,QAAA,CAAQ,GAAA,CAAA;YAEbD,mBAEM,OAFN,YAEM;AAAA,cADJM,WAAQ,KAAA,QAAA,SAAA;AAAA,YAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpDocument.vue.js","sources":["../../../src/components/educationals/EpDocument.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport EpCard from \"~/components/basics/EpCard.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport { mdiFile } from \"@mdi/js\";\nimport { mdiArrowCollapseDown } from \"@mdi/js\";\nimport { mdiOpenInNew } from \"@mdi/js\";\nimport EpBtn from \"~/components/basics/EpBtn.vue\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { EpDocumentProps } from \"~/types/educationals/EpDocument\";\n\nconst props = withDefaults(defineProps<EpDocumentProps>(), {\n src: null,\n hideIcon: false,\n labelDownload: \"Télécharger\",\n labelOpen: \"Ouvrir\",\n});\n\nconst fileDownloadExtensions = [\n \"doc\",\n \"docx\",\n \"xls\",\n \"xlsx\",\n \"ppt\",\n \"pptx\",\n \"rtf\",\n \"odt\",\n \"ods\",\n \"odp\",\n];\n\nconst getExtension = (url: string): string => {\n const queryRemoved = url.split(\"?\")[0];\n const parts = queryRemoved.split(\".\");\n return parts.length > 1 ? parts.pop()!.toLowerCase() : \"\";\n};\n\nconst shouldDownload = computed(() => {\n const ext = getExtension(props.url);\n return fileDownloadExtensions.includes(ext);\n});\n\nconst iconBtn = computed(() => {\n return shouldDownload.value ? mdiArrowCollapseDown : mdiOpenInNew;\n});\n\nconst label = computed(() => {\n return shouldDownload.value ? props.labelDownload : props.labelOpen;\n});\n\nconst renderIcon = computed(() => {\n return props.icon ? props.icon : mdiFile;\n});\n\nconst { src, hideIcon } = toRefs(props);\n</script>\n\n<template>\n <div class=\"w-5/6 mx-auto\">\n <EpCard>\n <div :class=\"`md:flex md:flex-wrap rounded-md`\">\n <div class=\"w-1/5 mr-6\" v-if=\"src\">\n <img\n :class=\"`md:w-full md:h-full md:object-cover rounded-md`\"\n :src=\"src\"\n alt=\"Image of quote\"\n />\n </div>\n <div\n class=\"flex items-center justify-center px-7\"\n v-else-if=\"!hideIcon\"\n >\n <div class=\"text-base dark:text-white'\">\n <EpIcon\n :size=\"60\"\n :icon-path=\"renderIcon\"\n extra-class=\"dark:text-white\"\n />\n </div>\n </div>\n <div :class=\"`py-6 flex-1 ${hideIcon ? 'px-6' : 'pr-2'}`\">\n <h4 class=\"text-2xl font-semibold mb-4\" v-if=\"title\">{{ title }}</h4>\n <div\n class=\"mb-3\"\n v-if=\"description\"\n v-html=\"useRenderText(description)\"\n />\n <EpBtn\n :href=\"url\"\n block\n type=\"primary\"\n rounded\n :prepend-icon=\"iconBtn\"\n >\n {{ label }}\n </EpBtn>\n </div>\n </div>\n </EpCard>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createVNode","EpCard","_createElementVNode","_unref","EpIcon","title","_toDisplayString","description","EpBtn","url"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,UAAM,QAAQ;AAOd,UAAM,yBAAyB;AAAA,MAC7B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAGF,UAAM,eAAe,CAAC,QAAwB;AAC5C,YAAM,eAAe,IAAI,MAAM,GAAG,EAAE,CAAC;AACrC,YAAM,QAAQ,aAAa,MAAM,GAAG;AACpC,aAAO,MAAM,SAAS,IAAI,MAAM,IAAA,EAAO,gBAAgB;AAAA,IACzD;AAEA,UAAM,iBAAiB,SAAS,MAAM;AACpC,YAAM,MAAM,aAAa,MAAM,GAAG;AAClC,aAAO,uBAAuB,SAAS,GAAG;AAAA,IAC5C,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,aAAO,eAAe,QAAQ,uBAAuB;AAAA,IACvD,CAAC;AAED,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO,eAAe,QAAQ,MAAM,gBAAgB,MAAM;AAAA,IAC5D,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,MAAM,OAAO,MAAM,OAAO;AAAA,IACnC,CAAC;AAED,UAAM,EAAE,KAAK,aAAa,OAAO,KAAK;;AAIpC,aAAAA,UAAA,GAAAC,mBAyCM,OAzCN,YAyCM;AAAA,QAxCJC,YAuCSC,aAAA,MAAA;AAAA,2BAtCP,MAqCM;AAAA,YArCNC,mBAqCM,OArCN,YAqCM;AAAA,cApC0BC,MAAA,GAAA,KAA9BL,aAAAC,mBAMM,OANN,YAMM;AAAA,gBALJG,mBAIE,OAAA;AAAA,kBAHC,sBAAO,gDAAgD;AAAA,kBACvD,KAAKC,MAAA,GAAA;AAAA,kBACN,KAAI;AAAA,gBAAA;qBAKMA,MAAA,QAAA,KAFdL,UAAA,GAAAC,mBAWM,OAXN,YAWM;AAAA,gBAPJG,mBAMM,OANN,YAMM;AAAA,kBALJF,YAIEI,aAAA;AAAA,oBAHC,MAAM;AAAA,oBACN,aAAW,WAAA;AAAA,oBACZ,eAAY;AAAA,kBAAA;;;cAIlBF,mBAgBM,OAAA;AAAA,gBAhBA,qCAAsBC,MAAA,QAAA,IAAQ,SAAA,MAAA,EAAA;AAAA,cAAA;gBACYE,KAAAA,sBAA9CN,mBAAqE,MAArE,YAAqEO,gBAAbD,KAAAA,KAAK,GAAA,CAAA;gBAGrDE,KAAAA,4BAFRR,mBAIE,OAAA;AAAA;kBAHA,OAAM;AAAA,kBAEN,WAAQI,MAAA,aAAA,EAAcI,KAAAA,WAAW;AAAA,gBAAA;gBAEnCP,YAQQQ,aAAA;AAAA,kBAPL,MAAMC,KAAAA;AAAAA,kBACP,OAAA;AAAA,kBACA,MAAK;AAAA,kBACL,SAAA;AAAA,kBACC,gBAAc,QAAA;AAAA,gBAAA;mCAEf,MAAW;AAAA,oDAAR,MAAA,KAAK,GAAA,CAAA;AAAA,kBAAA;;;;;;;;;;;;"}
1
+ {"version":3,"file":"EpDocument.vue.js","sources":["../../../src/components/educationals/EpDocument.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport EpCard from \"~/components/basics/EpCard.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport { mdiFile } from \"@mdi/js\";\nimport { mdiArrowCollapseDown } from \"@mdi/js\";\nimport { mdiOpenInNew } from \"@mdi/js\";\nimport EpBtn from \"~/components/basics/EpBtn.vue\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport type { EpDocumentProps } from \"~/types/educationals/EpDocument\";\n\nconst props = withDefaults(defineProps<EpDocumentProps>(), {\n src: null,\n hideIcon: false,\n labelDownload: \"Télécharger\",\n labelOpen: \"Ouvrir\",\n});\n\nconst fileDownloadExtensions = [\n \"doc\",\n \"docx\",\n \"xls\",\n \"xlsx\",\n \"ppt\",\n \"pptx\",\n \"rtf\",\n \"odt\",\n \"ods\",\n \"odp\",\n];\n\nconst getExtension = (url: string): string => {\n const queryRemoved = url.split(\"?\")[0];\n const parts = queryRemoved.split(\".\");\n return parts.length > 1 ? parts.pop()!.toLowerCase() : \"\";\n};\n\nconst shouldDownload = computed(() => {\n const ext = getExtension(props.url);\n return fileDownloadExtensions.includes(ext);\n});\n\nconst iconBtn = computed(() => {\n return shouldDownload.value ? mdiArrowCollapseDown : mdiOpenInNew;\n});\n\nconst label = computed(() => {\n return shouldDownload.value ? props.labelDownload : props.labelOpen;\n});\n\nconst renderIcon = computed(() => {\n return props.icon ? props.icon : mdiFile;\n});\n\nconst { src, hideIcon } = toRefs(props);\n</script>\n\n<template>\n <div class=\"w-5/6 mx-auto\">\n <EpCard>\n <div :class=\"`md:flex md:flex-wrap rounded-md`\">\n <div class=\"w-1/5 mr-6\" v-if=\"src\">\n <img\n :class=\"`md:w-full md:h-full md:object-cover rounded-md`\"\n :src=\"src\"\n alt=\"Image of quote\"\n />\n </div>\n <div\n class=\"flex items-center justify-center px-7\"\n v-else-if=\"!hideIcon\"\n >\n <div class=\"text-base dark:text-white'\">\n <EpIcon\n :size=\"60\"\n :icon-path=\"renderIcon\"\n extra-class=\"dark:text-white\"\n />\n </div>\n </div>\n <div :class=\"`py-6 flex-1 ${hideIcon ? 'px-6' : 'pr-2'}`\">\n <h4 class=\"text-2xl font-semibold mb-4\" v-if=\"title\">{{ title }}</h4>\n <div\n class=\"mb-3\"\n v-if=\"description\"\n v-html=\"useRenderText(description)\"\n />\n <EpBtn\n :href=\"url\"\n block\n type=\"primary\"\n rounded\n :prepend-icon=\"iconBtn\"\n >\n {{ label }}\n </EpBtn>\n </div>\n </div>\n </EpCard>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createVNode","EpCard","_createElementVNode","_unref","EpIcon","title","_toDisplayString","description","EpBtn","url"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,UAAM,QAAQ;AAOd,UAAM,yBAAyB;AAAA,MAC7B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAGF,UAAM,eAAe,CAAC,QAAwB;AAC5C,YAAM,eAAe,IAAI,MAAM,GAAG,EAAE,CAAC;AACrC,YAAM,QAAQ,aAAa,MAAM,GAAG;AACpC,aAAO,MAAM,SAAS,IAAI,MAAM,IAAA,EAAO,gBAAgB;AAAA,IACzD;AAEA,UAAM,iBAAiB,SAAS,MAAM;AACpC,YAAM,MAAM,aAAa,MAAM,GAAG;AAClC,aAAO,uBAAuB,SAAS,GAAG;AAAA,IAC5C,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,aAAO,eAAe,QAAQ,uBAAuB;AAAA,IACvD,CAAC;AAED,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO,eAAe,QAAQ,MAAM,gBAAgB,MAAM;AAAA,IAC5D,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,MAAM,OAAO,MAAM,OAAO;AAAA,IACnC,CAAC;AAED,UAAM,EAAE,KAAK,aAAa,OAAO,KAAK;;AAIpC,aAAAA,UAAA,GAAAC,mBAyCM,OAzCN,YAyCM;AAAA,QAxCJC,YAuCSC,aAAA,MAAA;AAAA,2BAtCP,MAqCM;AAAA,YArCNC,mBAqCM,OArCN,YAqCM;AAAA,cApC0BC,MAAA,GAAA,KAA9BL,aAAAC,mBAMM,OANN,YAMM;AAAA,gBALJG,mBAIE,OAAA;AAAA,kBAHC,sBAAO,gDAAgD;AAAA,kBACvD,KAAKC,MAAA,GAAA;AAAA,kBACN,KAAI;AAAA,gBAAA;qBAKMA,MAAA,QAAA,KAFdL,UAAA,GAAAC,mBAWM,OAXN,YAWM;AAAA,gBAPJG,mBAMM,OANN,YAMM;AAAA,kBALJF,YAIEI,aAAA;AAAA,oBAHC,MAAM;AAAA,oBACN,aAAW,WAAA;AAAA,oBACZ,eAAY;AAAA,kBAAA;;;cAIlBF,mBAgBM,OAAA;AAAA,gBAhBA,qCAAsBC,MAAA,QAAA,IAAQ,SAAA,MAAA,EAAA;AAAA,cAAA;gBACYE,KAAAA,sBAA9CN,mBAAqE,MAArE,YAAqEO,gBAAbD,KAAAA,KAAK,GAAA,CAAA;gBAGrDE,KAAAA,4BAFRR,mBAIE,OAAA;AAAA;kBAHA,OAAM;AAAA,kBAEN,WAAQI,MAAA,aAAA,EAAcI,KAAAA,WAAW;AAAA,gBAAA;gBAEnCP,YAQQQ,aAAA;AAAA,kBAPL,MAAMC,KAAAA;AAAAA,kBACP,OAAA;AAAA,kBACA,MAAK;AAAA,kBACL,SAAA;AAAA,kBACC,gBAAc,QAAA;AAAA,gBAAA;mCAEf,MAAW;AAAA,oDAAR,MAAA,KAAK,GAAA,CAAA;AAAA,kBAAA;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpEdu.vue.js","sources":["../../../src/components/educationals/EpEdu.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed, useSlots, SetupContext } from \"vue\";\nimport { mediaVariants } from \"~/types/Medias\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpDivider from \"~/components/basics/EpDivider.vue\";\nimport EpScope from \"~/components/educationals/EpScope.vue\";\nimport { mdiLeadPencil } from \"@mdi/js\";\nimport { EpEduProps } from \"~/types/educationals/EpEdu\";\n\nconst props = withDefaults(defineProps<EpEduProps>(), {\n title: null,\n type: \"neutral\",\n hideIcon: false,\n flat: true,\n labelIntentions: \"\",\n});\n\n//get slots\nconst slots: SetupContext[\"slots\"] = useSlots();\n\nconst hasIntentions = computed(() => {\n return slots.intentions ? true : false;\n});\n\nconst hasActions = computed(() => {\n return slots.actions ? true : false;\n});\n\nconst renderIcon = computed(() => {\n if (props.icon) {\n return props.icon;\n }\n return mdiLeadPencil;\n});\n\nconst topBarStyle = computed(() => {\n return `${mediaVariants[props.type]} text-left ${\n props.flat ? \"\" : \"rounded-t-md\"\n } flex justify-between items-center `;\n});\n\nconst bottomBarStyle = computed(() => {\n return `${mediaVariants[props.type]} text-right`;\n});\n\nconst paddingTopStyle = computed(() => {\n if (props.type != \"neutral\") {\n return `px-5 py-2`;\n }\n});\n\nconst paddingBottomStyle = computed(() => {\n if (props.type != \"neutral\") {\n return `pr-5`;\n }\n});\nconst boxPaddingStyle = computed(() => {\n if (props.type != \"neutral\") {\n return `px-5`;\n }\n});\n\nconst containerStyle = computed(() => {\n if (hasActions.value || hasIntentions.value || props.title) {\n return ` overflow-hidden ${\n props.flat ? \"\" : \"shadow-md\"\n } flex flex-col justify-start h-full`;\n }\n return `flex flex-col justify-between`;\n});\n\n// type, taxonomyLevel, courseCode, courseTitle, title, subtitle, height, src, color, synchrone\n\nconst { title, hideIcon } = toRefs(props);\n</script>\n\n<template>\n <div :class=\"containerStyle\">\n <div\n :class=\"`${topBarStyle} ${paddingTopStyle} dark:base-dark`\"\n v-if=\"title || mandateLevel\"\n >\n <!-- <EpIcon :size=\"24\" :icon-path=\"mdiBookOpenVariant\"/> -->\n <h3>\n <EpIcon\n v-if=\"!hideIcon\"\n :iconPath=\"renderIcon\"\n size=\"24\"\n class=\"mr-2\"\n />\n <span class=\"font-bold align-middle\">{{ title }}</span>\n </h3>\n <EpScope v-if=\"mandateLevel\" :mandateLevel=\"mandateLevel\"></EpScope>\n </div>\n <div :class=\"`${boxPaddingStyle} dark:base-dark dark:text-white`\">\n <div class=\"py-4\" v-if=\"hasIntentions\">\n <!-- <EpIcon :size=\"24\" :icon-path=\"mdiInformationOutline\"/> -->\n <h4\n v-if=\"labelIntentions\"\n class=\"font-light text-sm pb-1 tracking-wide dark:text-white\"\n >\n {{ labelIntentions }}\n </h4>\n <slot name=\"intentions\" />\n <EpDivider />\n </div>\n <div class=\"pt-2\">\n <slot name=\"content\" />\n </div>\n </div>\n <div\n :class=\"`${bottomBarStyle} ${paddingBottomStyle}`\"\n class=\"dark:base-dark\"\n v-if=\"hasActions\"\n >\n <slot name=\"actions\" />\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_unref","mandateLevel","_normalizeClass","_createElementVNode","_createBlock","EpIcon","_toDisplayString","EpScope","_openBlock","labelIntentions","_renderSlot","_createVNode","EpDivider"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,UAAM,QAAQ;AASd,UAAM,QAA+B,SAAA;AAErC,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,MAAM,aAAa,OAAO;AAAA,IACnC,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,MAAM,UAAU,OAAO;AAAA,IAChC,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,MAAM;AACd,eAAO,MAAM;AAAA,MACf;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;AACjC,aAAO,GAAG,cAAc,MAAM,IAAI,CAAC,eACjC,MAAM,OAAO,KAAK,cACpB;AAAA,IACF,CAAC;AAED,UAAM,iBAAiB,SAAS,MAAM;AACpC,aAAO,GAAG,cAAc,MAAM,IAAI,CAAC;AAAA,IACrC,CAAC;AAED,UAAM,kBAAkB,SAAS,MAAM;AACrC,UAAI,MAAM,QAAQ,WAAW;AAC3B,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AAED,UAAM,qBAAqB,SAAS,MAAM;AACxC,UAAI,MAAM,QAAQ,WAAW;AAC3B,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AACD,UAAM,kBAAkB,SAAS,MAAM;AACrC,UAAI,MAAM,QAAQ,WAAW;AAC3B,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AAED,UAAM,iBAAiB,SAAS,MAAM;AACpC,UAAI,WAAW,SAAS,cAAc,SAAS,MAAM,OAAO;AAC1D,eAAO,oBACL,MAAM,OAAO,KAAK,WACpB;AAAA,MACF;AACA,aAAO;AAAA,IACT,CAAC;AAID,UAAM,EAAE,OAAO,aAAa,OAAO,KAAK;;0BAItCA,mBAwCM,OAAA;AAAA,QAxCA,sBAAO,eAAA,KAAc;AAAA,MAAA;QAGjBC,MAAA,KAAA,KAASC,KAAAA,6BAFjBF,mBAeM,OAAA;AAAA;UAdH,OAAKG,eAAA,GAAK,YAAA,KAAW,IAAI,gBAAA,KAAe,iBAAA;AAAA,QAAA;UAIzCC,mBAQK,MAAA,MAAA;AAAA,aANMH,MAAA,QAAA,kBADTI,YAKEC,aAAA;AAAA;cAHC,UAAU,WAAA;AAAA,cACX,MAAK;AAAA,cACL,OAAM;AAAA,YAAA;YAERF,mBAAuD,QAAvD,YAAuDG,gBAAfN,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;UAEhCC,KAAAA,6BAAfG,YAAoEG,aAAA;AAAA;YAAtC,cAAcN,KAAAA;AAAAA,UAAAA;;QAE9CE,mBAeM,OAAA;AAAA,UAfA,yBAAU,gBAAA,KAAe,iCAAA;AAAA,QAAA;UACL,cAAA,SAAxBK,UAAA,GAAAT,mBAUM,OAVN,YAUM;AAAA,YAPIU,KAAAA,gCADRV,mBAKK,MALL,YAKKO,gBADAG,KAAAA,eAAe,GAAA,CAAA;YAEpBC,WAA0B,KAAA,QAAA,YAAA;AAAA,YAC1BC,YAAaC,WAAA;AAAA,UAAA;UAEfT,mBAEM,OAFN,YAEM;AAAA,YADJO,WAAuB,KAAA,QAAA,SAAA;AAAA,UAAA;;QAMnB,WAAA,sBAHRX,mBAMM,OAAA;AAAA;UALH,OAAKG,eAAA,CAAA,GAAK,eAAA,KAAc,IAAI,mBAAA,KAAkB,IACzC,gBAAgB,CAAA;AAAA,QAAA;UAGtBQ,WAAuB,KAAA,QAAA,SAAA;AAAA,QAAA;;;;;"}
1
+ {"version":3,"file":"EpEdu.vue.js","sources":["../../../src/components/educationals/EpEdu.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed, useSlots, type SetupContext } from \"vue\";\nimport { mediaVariants } from \"~/types/Medias\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpDivider from \"~/components/basics/EpDivider.vue\";\nimport EpScope from \"~/components/educationals/EpScope.vue\";\nimport { mdiLeadPencil } from \"@mdi/js\";\nimport type { EpEduProps } from \"~/types/educationals/EpEdu\";\n\nconst props = withDefaults(defineProps<EpEduProps>(), {\n title: null,\n type: \"neutral\",\n hideIcon: false,\n flat: true,\n labelIntentions: \"\",\n});\n\n//get slots\nconst slots: SetupContext[\"slots\"] = useSlots();\n\nconst hasIntentions = computed(() => {\n return slots.intentions ? true : false;\n});\n\nconst hasActions = computed(() => {\n return slots.actions ? true : false;\n});\n\nconst renderIcon = computed(() => {\n if (props.icon) {\n return props.icon;\n }\n return mdiLeadPencil;\n});\n\nconst topBarStyle = computed(() => {\n return `${mediaVariants[props.type]} text-left ${\n props.flat ? \"\" : \"rounded-t-md\"\n } flex justify-between items-center `;\n});\n\nconst bottomBarStyle = computed(() => {\n return `${mediaVariants[props.type]} text-right`;\n});\n\nconst paddingTopStyle = computed(() => {\n if (props.type != \"neutral\") {\n return `px-5 py-2`;\n }\n});\n\nconst paddingBottomStyle = computed(() => {\n if (props.type != \"neutral\") {\n return `pr-5`;\n }\n});\nconst boxPaddingStyle = computed(() => {\n if (props.type != \"neutral\") {\n return `px-5`;\n }\n});\n\nconst containerStyle = computed(() => {\n if (hasActions.value || hasIntentions.value || props.title) {\n return ` overflow-hidden ${\n props.flat ? \"\" : \"shadow-md\"\n } flex flex-col justify-start h-full`;\n }\n return `flex flex-col justify-between`;\n});\n\n// type, taxonomyLevel, courseCode, courseTitle, title, subtitle, height, src, color, synchrone\n\nconst { title, hideIcon } = toRefs(props);\n</script>\n\n<template>\n <div :class=\"containerStyle\">\n <div\n :class=\"`${topBarStyle} ${paddingTopStyle} dark:base-dark`\"\n v-if=\"title || mandateLevel\"\n >\n <!-- <EpIcon :size=\"24\" :icon-path=\"mdiBookOpenVariant\"/> -->\n <h3>\n <EpIcon\n v-if=\"!hideIcon\"\n :iconPath=\"renderIcon\"\n size=\"24\"\n class=\"mr-2\"\n />\n <span class=\"font-bold align-middle\">{{ title }}</span>\n </h3>\n <EpScope v-if=\"mandateLevel\" :mandateLevel=\"mandateLevel\"></EpScope>\n </div>\n <div :class=\"`${boxPaddingStyle} dark:base-dark dark:text-white`\">\n <div class=\"py-4\" v-if=\"hasIntentions\">\n <!-- <EpIcon :size=\"24\" :icon-path=\"mdiInformationOutline\"/> -->\n <h4\n v-if=\"labelIntentions\"\n class=\"font-light text-sm pb-1 tracking-wide dark:text-white\"\n >\n {{ labelIntentions }}\n </h4>\n <slot name=\"intentions\" />\n <EpDivider />\n </div>\n <div class=\"pt-2\">\n <slot name=\"content\" />\n </div>\n </div>\n <div\n :class=\"`${bottomBarStyle} ${paddingBottomStyle}`\"\n class=\"dark:base-dark\"\n v-if=\"hasActions\"\n >\n <slot name=\"actions\" />\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_unref","mandateLevel","_normalizeClass","_createElementVNode","_createBlock","EpIcon","_toDisplayString","EpScope","_openBlock","labelIntentions","_renderSlot","_createVNode","EpDivider"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,UAAM,QAAQ;AASd,UAAM,QAA+B,SAAA;AAErC,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,MAAM,aAAa,OAAO;AAAA,IACnC,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,MAAM,UAAU,OAAO;AAAA,IAChC,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,MAAM;AACd,eAAO,MAAM;AAAA,MACf;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;AACjC,aAAO,GAAG,cAAc,MAAM,IAAI,CAAC,eACjC,MAAM,OAAO,KAAK,cACpB;AAAA,IACF,CAAC;AAED,UAAM,iBAAiB,SAAS,MAAM;AACpC,aAAO,GAAG,cAAc,MAAM,IAAI,CAAC;AAAA,IACrC,CAAC;AAED,UAAM,kBAAkB,SAAS,MAAM;AACrC,UAAI,MAAM,QAAQ,WAAW;AAC3B,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AAED,UAAM,qBAAqB,SAAS,MAAM;AACxC,UAAI,MAAM,QAAQ,WAAW;AAC3B,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AACD,UAAM,kBAAkB,SAAS,MAAM;AACrC,UAAI,MAAM,QAAQ,WAAW;AAC3B,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AAED,UAAM,iBAAiB,SAAS,MAAM;AACpC,UAAI,WAAW,SAAS,cAAc,SAAS,MAAM,OAAO;AAC1D,eAAO,oBACL,MAAM,OAAO,KAAK,WACpB;AAAA,MACF;AACA,aAAO;AAAA,IACT,CAAC;AAID,UAAM,EAAE,OAAO,aAAa,OAAO,KAAK;;0BAItCA,mBAwCM,OAAA;AAAA,QAxCA,sBAAO,eAAA,KAAc;AAAA,MAAA;QAGjBC,MAAA,KAAA,KAASC,KAAAA,6BAFjBF,mBAeM,OAAA;AAAA;UAdH,OAAKG,eAAA,GAAK,YAAA,KAAW,IAAI,gBAAA,KAAe,iBAAA;AAAA,QAAA;UAIzCC,mBAQK,MAAA,MAAA;AAAA,aANMH,MAAA,QAAA,kBADTI,YAKEC,aAAA;AAAA;cAHC,UAAU,WAAA;AAAA,cACX,MAAK;AAAA,cACL,OAAM;AAAA,YAAA;YAERF,mBAAuD,QAAvD,YAAuDG,gBAAfN,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;UAEhCC,KAAAA,6BAAfG,YAAoEG,aAAA;AAAA;YAAtC,cAAcN,KAAAA;AAAAA,UAAAA;;QAE9CE,mBAeM,OAAA;AAAA,UAfA,yBAAU,gBAAA,KAAe,iCAAA;AAAA,QAAA;UACL,cAAA,SAAxBK,UAAA,GAAAT,mBAUM,OAVN,YAUM;AAAA,YAPIU,KAAAA,gCADRV,mBAKK,MALL,YAKKO,gBADAG,KAAAA,eAAe,GAAA,CAAA;YAEpBC,WAA0B,KAAA,QAAA,YAAA;AAAA,YAC1BC,YAAaC,WAAA;AAAA,UAAA;UAEfT,mBAEM,OAFN,YAEM;AAAA,YADJO,WAAuB,KAAA,QAAA,SAAA;AAAA,UAAA;;QAMnB,WAAA,sBAHRX,mBAMM,OAAA;AAAA;UALH,OAAKG,eAAA,CAAA,GAAK,eAAA,KAAc,IAAI,mBAAA,KAAkB,IACzC,gBAAgB,CAAA;AAAA,QAAA;UAGtBQ,WAAuB,KAAA,QAAA,SAAA;AAAA,QAAA;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpInstructions.vue.js","sources":["../../../src/components/educationals/EpInstructions.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\nimport { EpInstructionsProps } from \"~/types/educationals/EpInstructions\";\n\nconst props = withDefaults(defineProps<EpInstructionsProps>(), {\n title: \"Consignes\",\n});\n\nconst { title, icon } = toRefs(props);\n</script>\n<template>\n <div class=\"lg:grid lg:grid-cols-12 lg:gap-8\">\n <div class=\"lg:col-span-2\">\n <h2\n class=\"text-pretty text-3xl font-semibold tracking-tight text-gray-900 dark:text-gray-100 sm:text-xl\"\n >\n <EpIcon v-if=\"icon\" :icon-path=\"icon\" size=\"28\" extraClass=\"mr-2\" />\n {{ title }}\n </h2>\n </div>\n <div class=\"lg:col-span-8 lg:mt-0 lg:border-l dark:border-gray-700 lg:pl-4\">\n <div class=\"py-2\">\n <template\n v-for=\"instruction in instructions\"\n :key=\"`instruction-${instruction.uid}`\"\n >\n <EpAccordeon\n small\n outlined\n :title=\"instruction.title\"\n :open=\"instruction.open\"\n >\n <div v-html=\"instruction.content\" />\n </EpAccordeon>\n </template>\n </div>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_unref","_createBlock","EpIcon","_createTextVNode","_Fragment","_renderList","instructions","EpAccordeon"],"mappings":";;;;;;;;;;;;;;;;;;AAMA,UAAM,QAAQ;AAId,UAAM,EAAE,OAAO,SAAS,OAAO,KAAK;;AAGlC,aAAAA,UAAA,GAAAC,mBA0BM,OA1BN,YA0BM;AAAA,QAzBJC,mBAOM,OAPN,YAOM;AAAA,UANJA,mBAKK,MALL,YAKK;AAAA,YAFWC,MAAA,IAAA,kBAAdC,YAAoEC,aAAA;AAAA;cAA/C,aAAWF,MAAA,IAAA;AAAA,cAAM,MAAK;AAAA,cAAK,YAAW;AAAA,YAAA;YAASG,gBAAA,sBACjEH,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;;QAGZD,mBAgBM,OAhBN,YAgBM;AAAA,UAfJA,mBAcM,OAdN,YAcM;AAAA,8BAbJD,mBAYWM,UAAA,MAAAC,WAXaC,KAAAA,cAAY,CAA3B,gBAAW;kCAGlBL,YAOcM,MAAA;AAAA,gBATO,KAAA,eAAA,YAAY,GAAG;AAAA,gBAGlC,OAAA;AAAA,gBACA,UAAA;AAAA,gBACC,OAAO,YAAY;AAAA,gBACnB,MAAM,YAAY;AAAA,cAAA;iCAEnB,MAAoC;AAAA,kBAApCR,mBAAoC,OAAA;AAAA,oBAA/B,WAAQ,YAAY;AAAA,kBAAA;;;;;;;;;;;"}
1
+ {"version":3,"file":"EpInstructions.vue.js","sources":["../../../src/components/educationals/EpInstructions.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\nimport type { EpInstructionsProps } from \"~/types/educationals/EpInstructions\";\n\nconst props = withDefaults(defineProps<EpInstructionsProps>(), {\n title: \"Consignes\",\n});\n\nconst { title, icon } = toRefs(props);\n</script>\n<template>\n <div class=\"lg:grid lg:grid-cols-12 lg:gap-8\">\n <div class=\"lg:col-span-2\">\n <h2\n class=\"text-pretty text-3xl font-semibold tracking-tight text-gray-900 dark:text-gray-100 sm:text-xl\"\n >\n <EpIcon v-if=\"icon\" :icon-path=\"icon\" size=\"28\" extraClass=\"mr-2\" />\n {{ title }}\n </h2>\n </div>\n <div class=\"lg:col-span-8 lg:mt-0 lg:border-l dark:border-gray-700 lg:pl-4\">\n <div class=\"py-2\">\n <template\n v-for=\"instruction in instructions\"\n :key=\"`instruction-${instruction.uid}`\"\n >\n <EpAccordeon\n small\n outlined\n :title=\"instruction.title\"\n :open=\"instruction.open\"\n >\n <div v-html=\"instruction.content\" />\n </EpAccordeon>\n </template>\n </div>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_unref","_createBlock","EpIcon","_createTextVNode","_Fragment","_renderList","instructions","EpAccordeon"],"mappings":";;;;;;;;;;;;;;;;;;AAMA,UAAM,QAAQ;AAId,UAAM,EAAE,OAAO,SAAS,OAAO,KAAK;;AAGlC,aAAAA,UAAA,GAAAC,mBA0BM,OA1BN,YA0BM;AAAA,QAzBJC,mBAOM,OAPN,YAOM;AAAA,UANJA,mBAKK,MALL,YAKK;AAAA,YAFWC,MAAA,IAAA,kBAAdC,YAAoEC,aAAA;AAAA;cAA/C,aAAWF,MAAA,IAAA;AAAA,cAAM,MAAK;AAAA,cAAK,YAAW;AAAA,YAAA;YAASG,gBAAA,sBACjEH,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;;QAGZD,mBAgBM,OAhBN,YAgBM;AAAA,UAfJA,mBAcM,OAdN,YAcM;AAAA,8BAbJD,mBAYWM,UAAA,MAAAC,WAXaC,KAAAA,cAAY,CAA3B,gBAAW;kCAGlBL,YAOcM,MAAA;AAAA,gBATO,KAAA,eAAA,YAAY,GAAG;AAAA,gBAGlC,OAAA;AAAA,gBACA,UAAA;AAAA,gBACC,OAAO,YAAY;AAAA,gBACnB,MAAM,YAAY;AAAA,cAAA;iCAEnB,MAAoC;AAAA,kBAApCR,mBAAoC,OAAA;AAAA,oBAA/B,WAAQ,YAAY;AAAA,kBAAA;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpIntroduction.vue.js","sources":["../../../src/components/educationals/EpIntroduction.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport { EpIntroductionProps } from \"~/types/educationals/EpIntroduction\";\n\nconst {\n title = \"Introduction\",\n icon,\n subtitle,\n} = defineProps<EpIntroductionProps>();\n</script>\n<template>\n <div class=\"lg:grid lg:grid-cols-12 lg:gap-8\">\n <div class=\"lg:col-span-2\">\n <h2\n class=\"text-pretty text-3xl font-semibold tracking-tight text-gray-900 dark:text-gray-100 sm:text-xl\"\n >\n <EpIcon v-if=\"icon\" :icon-path=\"icon\" size=\"28\" extraClass=\"mr-2\" />\n {{ title }}\n </h2>\n </div>\n <div class=\"lg:col-span-8 lg:mt-0 lg:border-l dark:border-gray-700 lg:pl-4\">\n <div class=\"py-2\">\n <h3\n v-if=\"subtitle\"\n class=\"text-base font-semibold leading-7 text-gray-900 dark:text-gray-100\"\n >\n {{ subtitle }}\n </h3>\n <div class=\"text-gray-600 dark:text-gray-300\">\n <slot />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","icon","_createBlock","EpIcon","_createTextVNode","title","subtitle","_toDisplayString","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAWE,aAAAA,UAAA,GAAAC,mBAsBM,OAtBN,YAsBM;AAAA,QArBJC,mBAOM,OAPN,YAOM;AAAA,UANJA,mBAKK,MALL,YAKK;AAAA,YAFWC,KAAAA,qBAAdC,YAAoEC,aAAA;AAAA;cAA/C,aAAWF,KAAAA;AAAAA,cAAM,MAAK;AAAA,cAAK,YAAW;AAAA,YAAA;YAASG,gBAAA,sBACjEC,KAAAA,KAAK,GAAA,CAAA;AAAA,UAAA;;QAGZL,mBAYM,OAZN,YAYM;AAAA,UAXJA,mBAUM,OAVN,YAUM;AAAA,YARIM,KAAAA,yBADRP,mBAKK,MALL,YAKKQ,gBADAD,KAAAA,QAAQ,GAAA,CAAA;YAEbN,mBAEM,OAFN,YAEM;AAAA,cADJQ,WAAQ,KAAA,QAAA,SAAA;AAAA,YAAA;;;;;;;"}
1
+ {"version":3,"file":"EpIntroduction.vue.js","sources":["../../../src/components/educationals/EpIntroduction.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport type { EpIntroductionProps } from \"~/types/educationals/EpIntroduction\";\n\nconst {\n title = \"Introduction\",\n icon,\n subtitle,\n} = defineProps<EpIntroductionProps>();\n</script>\n<template>\n <div class=\"lg:grid lg:grid-cols-12 lg:gap-8\">\n <div class=\"lg:col-span-2\">\n <h2\n class=\"text-pretty text-3xl font-semibold tracking-tight text-gray-900 dark:text-gray-100 sm:text-xl\"\n >\n <EpIcon v-if=\"icon\" :icon-path=\"icon\" size=\"28\" extraClass=\"mr-2\" />\n {{ title }}\n </h2>\n </div>\n <div class=\"lg:col-span-8 lg:mt-0 lg:border-l dark:border-gray-700 lg:pl-4\">\n <div class=\"py-2\">\n <h3\n v-if=\"subtitle\"\n class=\"text-base font-semibold leading-7 text-gray-900 dark:text-gray-100\"\n >\n {{ subtitle }}\n </h3>\n <div class=\"text-gray-600 dark:text-gray-300\">\n <slot />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","icon","_createBlock","EpIcon","_createTextVNode","title","subtitle","_toDisplayString","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAWE,aAAAA,UAAA,GAAAC,mBAsBM,OAtBN,YAsBM;AAAA,QArBJC,mBAOM,OAPN,YAOM;AAAA,UANJA,mBAKK,MALL,YAKK;AAAA,YAFWC,KAAAA,qBAAdC,YAAoEC,aAAA;AAAA;cAA/C,aAAWF,KAAAA;AAAAA,cAAM,MAAK;AAAA,cAAK,YAAW;AAAA,YAAA;YAASG,gBAAA,sBACjEC,KAAAA,KAAK,GAAA,CAAA;AAAA,UAAA;;QAGZL,mBAYM,OAZN,YAYM;AAAA,UAXJA,mBAUM,OAVN,YAUM;AAAA,YARIM,KAAAA,yBADRP,mBAKK,MALL,YAKKQ,gBADAD,KAAAA,QAAQ,GAAA,CAAA;YAEbN,mBAEM,OAFN,YAEM;AAAA,cADJQ,WAAQ,KAAA,QAAA,SAAA;AAAA,YAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpObjective.vue.js","sources":["../../../src/components/educationals/EpObjective.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { EpObjectiveProps } from \"~/types/educationals/EpObjective\";\n\nconst {\n color = \"border-gray\",\n nameApproach,\n title,\n} = defineProps<EpObjectiveProps>();\n</script>\n\n<template>\n <div\n :class=\"`border-l-8\n ${color} \n p-4 \n my-3 \n transition \n duration-200 \n ease-in-out \n outline-primary \n focus-within:outline \n focus-within:outline-1 \n outline-offset-4 \n hover:outline \n hover:outline-1 \n hover:outline-gray-200 \n dark:hover:outline-gray-700`\"\n >\n <div class=\"flex flex-row divide-x gap-x-4\">\n <div class=\"w-32\">\n {{ nameApproach }}\n </div>\n <div class=\"flex-1 pl-4\">\n <h4 class=\"font-medium mb-1\">{{ title }}</h4>\n <slot />\n </div>\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_normalizeClass","color","_createElementVNode","_toDisplayString","nameApproach","title","_renderSlot"],"mappings":";;;;;;;;;;;;;;0BAWEA,mBA0BM,OAAA;AAAA,QAzBH,OAAKC,eAAA;AAAA,MAAoBC,KAAAA,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;QAgB/BC,mBAQM,OARN,YAQM;AAAA,UAPJA,mBAEM,OAFN,YAEMC,gBADDC,KAAAA,YAAY,GAAA,CAAA;AAAA,UAEjBF,mBAGM,OAHN,YAGM;AAAA,YAFJA,mBAA6C,MAA7C,YAA6CC,gBAAbE,KAAAA,KAAK,GAAA,CAAA;AAAA,YACrCC,WAAQ,KAAA,QAAA,SAAA;AAAA,UAAA;;;;;;"}
1
+ {"version":3,"file":"EpObjective.vue.js","sources":["../../../src/components/educationals/EpObjective.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { EpObjectiveProps } from \"~/types/educationals/EpObjective\";\n\nconst {\n color = \"border-gray\",\n nameApproach,\n title,\n} = defineProps<EpObjectiveProps>();\n</script>\n\n<template>\n <div\n :class=\"`border-l-8\n ${color} \n p-4 \n my-3 \n transition \n duration-200 \n ease-in-out \n outline-primary \n focus-within:outline \n focus-within:outline-1 \n outline-offset-4 \n hover:outline \n hover:outline-1 \n hover:outline-gray-200 \n dark:hover:outline-gray-700`\"\n >\n <div class=\"flex flex-row divide-x gap-x-4\">\n <div class=\"w-32\">\n {{ nameApproach }}\n </div>\n <div class=\"flex-1 pl-4\">\n <h4 class=\"font-medium mb-1\">{{ title }}</h4>\n <slot />\n </div>\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_normalizeClass","color","_createElementVNode","_toDisplayString","nameApproach","title","_renderSlot"],"mappings":";;;;;;;;;;;;;;0BAWEA,mBA0BM,OAAA;AAAA,QAzBH,OAAKC,eAAA;AAAA,MAAoBC,KAAAA,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;QAgB/BC,mBAQM,OARN,YAQM;AAAA,UAPJA,mBAEM,OAFN,YAEMC,gBADDC,KAAAA,YAAY,GAAA,CAAA;AAAA,UAEjBF,mBAGM,OAHN,YAGM;AAAA,YAFJA,mBAA6C,MAA7C,YAA6CC,gBAAbE,KAAAA,KAAK,GAAA,CAAA;AAAA,YACrCC,WAAQ,KAAA,QAAA,SAAA;AAAA,UAAA;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, computed, toRefs, createElementBlock, createBlock, openBlock, createCommentVNode, createElementVNode, unref, Fragment, createVNode, createSlots, withCtx, createTextVNode, toDisplayString, normalizeClass, withModifiers } from "vue";
2
2
  import _sfc_main$1 from "../basics/EpIcon.vue.js";
3
3
  import _sfc_main$3 from "../basics/EpBtn.vue.js";
4
- import _sfc_main$4 from "../tools/DisplayBox.vue2.js";
4
+ import _sfc_main$4 from "../tools/DisplayBox.vue.js";
5
5
  /* empty css */
6
6
  import _sfc_main$2 from "./EpEdu.vue.js";
7
7
  import { useRenderText } from "../../composables/useRenderText.js";
@@ -1 +1 @@
1
- {"version":3,"file":"EpReading.vue.js","sources":["../../../src/components/educationals/EpReading.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport EpIcon from \"~/components//basics/EpIcon.vue\";\nimport EpBtn from \"~/components//basics/EpBtn.vue\";\nimport DisplayBox from \"~/components//tools/DisplayBox.vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { mdiBookmarkBox } from \"@mdi/js\";\nimport { mdiBookOpenVariant } from \"@mdi/js\";\nimport { mdiBookOpenPageVariant } from \"@mdi/js\";\nimport { mdiOpenInNew } from \"@mdi/js\";\nimport { EpReadingProps } from \"~/types/educationals/EpReading\";\n\nconst props = withDefaults(defineProps<EpReadingProps>(), {\n title: null,\n cover: \"\",\n icon: \"mdiBookmarkBox\",\n hideCover: false,\n compact: false,\n type: \"neutral\",\n hideIcon: false,\n labelIn: \"dans\",\n labelRead: \"Lire\",\n labelClose: \"Fermer\",\n labelDetails: \"détails\",\n labelCard: \"Lecture\",\n labelIntentions: \"Intentions de lecture\",\n});\n\nconst old_image =\n \"https://live.staticflickr.com/4868/45940268562_c5f7fdd06b_q.jpg\";\nconst bad_image =\n \"https://farm5.staticflickr.com/4868/45940268562_9452f09a61_o.png\";\n\nconst hasCover = computed(() => {\n if (\n props.cover === old_image ||\n props.cover.trim().length === 0 ||\n props.cover === bad_image\n ) {\n return false;\n }\n return true;\n});\n\nconst hasDetails = computed(() => {\n if (props.author || props.editor || props.container || props.year) {\n return true;\n }\n return false;\n});\n\nconst {\n title,\n intentions,\n cover,\n hideCover,\n year,\n author,\n container,\n editor,\n pages,\n type,\n mandateLevel,\n url,\n labelIn,\n labelRead,\n labelClose,\n labelDetails,\n labelCard,\n labelIntentions,\n} = toRefs(props);\n\nconst errorImg = (event: Event) => {\n const imgElement = event.target as HTMLImageElement;\n if (imgElement.src) {\n imgElement.src =\n \"https://live.staticflickr.com/4868/45940268562_c5f7fdd06b_q.jpg\";\n }\n};\n</script>\n\n<template>\n <div\n class=\"flex shadow-sm rounded-lg overflow-hidden bg-white dark:bg-dark md:flex-row\"\n v-if=\"!compact\"\n >\n <template v-if=\"!hideCover\">\n <div\n v-if=\"hasCover\"\n class=\"h-96 mr-2 w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg flex justify-center items-center text-gray-300\"\n >\n <img\n :src=\"cover\"\n :alt=\"`image de la lecture ${title}`\"\n @error=\"errorImg\"\n />\n </div>\n\n <div\n v-else\n class=\"h-96 w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg flex justify-center items-center text-gray-300 dark:bg-dark\"\n >\n <EpIcon :icon-path=\"mdiBookOpenPageVariant\" size=\"95\" />\n </div>\n </template>\n <div class=\"flex py-3 flex-col w-full\">\n <EpEdu\n :title=\"labelCard\"\n :labelIntentions=\"labelIntentions\"\n :icon=\"mdiBookOpenVariant\"\n flat\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n :mandateLevel=\"mandateLevel\"\n >\n <template #intentions v-if=\"intentions\">\n <div v-html=\"useRenderText(intentions)\" />\n </template>\n <template #content>\n <div class=\"w-full\">\n <h4\n :class=\"`text-xl font-semibold ${\n hasDetails || pages ? 'border-b' : ''\n }`\"\n >\n {{ title }}\n </h4>\n <div class=\"flex\">\n <div class=\"flex-1 py-2\" v-if=\"hasDetails\">\n <p class=\"font-medium\">\n <span class=\"font-bold mr-1\" v-if=\"author\">{{ author }}</span>\n <span v-if=\"year\">({{ year }})</span>\n <span v-if=\"year && editor\">, </span>\n <span v-if=\"editor\">{{ editor }}</span>\n </p>\n <p v-if=\"container\">\n <span class=\"text-sm italic pr-1\">{{ labelIn }}</span>\n <span class=\"\">{{ container }}</span>\n </p>\n </div>\n <div\n :class=\"`flex-1 pt-2 pb-2 ${hasDetails ? 'border-l pl-2' : ''}`\"\n v-if=\"pages\"\n >\n <EpIcon :size=\"24\" :icon-path=\"mdiBookmarkBox\" />\n <span class=\"pl-2 align-middle\">{{ pages }}</span>\n </div>\n </div>\n </div>\n </template>\n <template #actions>\n <EpBtn text :href=\"url\" v-if=\"url\" type=\"primary\">\n <EpIcon :size=\"20\" :icon-path=\"mdiOpenInNew\" /> {{ labelRead }}\n </EpBtn>\n </template>\n </EpEdu>\n </div>\n </div>\n <!--compact mode-->\n <EpEdu\n :title=\"labelCard\"\n :labelIntentions=\"labelIntentions\"\n :icon=\"mdiBookOpenVariant\"\n flat\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n v-else\n >\n <template #intentions v-if=\"intentions\">\n <div v-html=\"useRenderText(intentions)\" />\n </template>\n <template #content>\n <div class=\"flex flex-row justify-between\">\n <div class=\"p-5\">\n <span class=\"text-lg leading-6 font-semibold font-sans\">{{\n title\n }}</span>\n </div>\n <div class=\"flex\">\n <div class=\"p-5\">\n <DisplayBox>\n <template #default=\"{ open }\">\n <EpBtn text @click.stop=\"open\" type=\"primary\">\n {{ labelDetails }}\n </EpBtn>\n </template>\n <template #menu=\"{ close }\">\n <div class=\"w-[32rem]\">\n <div\n class=\"flex flex-col rounded-lg bg-white dark:bg-dark dark:border-r md:flex-row\"\n >\n <template v-if=\"!hideCover\">\n <img\n v-if=\"hasCover\"\n class=\"object-cover h-96 w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg\"\n :src=\"cover\"\n :alt=\"`image de la lecture ${title}`\"\n @error=\"errorImg\"\n />\n <div\n v-else\n class=\"h-96 border-l border-t border-b w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg flex justify-center items-center text-gray-300\"\n >\n <EpIcon :icon-path=\"mdiBookOpenPageVariant\" size=\"95\" />\n </div>\n </template>\n <div class=\"flex flex-col justify-between w-full\">\n <div\n class=\"text-left px-5 py-2 bg-gray-100 text-black dark:rounded-tr-lg\"\n >\n <EpIcon :size=\"24\" :icon-path=\"mdiBookOpenVariant\" />\n <span class=\"pl-2 align-middle\">{{ labelCard }}</span>\n </div>\n <div class=\"w-full px-5\">\n <h4\n :class=\"`text-xl font-semibold py-4 ${\n hasDetails || pages ? 'border-b' : ''\n }`\"\n >\n {{ title }}\n </h4>\n <div class=\"flex\">\n <div class=\"flex-1 py-2\" v-if=\"hasDetails\">\n <p class=\"font-medium\">\n <span class=\"font-bold mr-2\" v-if=\"author\">{{\n author\n }}</span>\n <span v-if=\"year\"> ({{ year }})</span>\n <span v-if=\"year && editor\">, </span>\n <span v-if=\"editor\">{{ editor }}</span>\n </p>\n <p v-if=\"container\">\n <span class=\"text-sm italic pr-1\">{{\n labelIn\n }}</span>\n <span>{{ container }}</span>\n </p>\n </div>\n <div\n :class=\"`flex-1 pt-2 pb-2 ${\n hasDetails ? 'border-l pl-2' : ''\n }`\"\n v-if=\"pages\"\n >\n <EpIcon :size=\"24\" :icon-path=\"mdiBookmarkBox\" />\n <span class=\"pl-2 align-middle\">{{ pages }}</span>\n </div>\n </div>\n </div>\n <div\n class=\"bg-gray-100 dark:bg-transparent dark:border-b dark:rounded-br text-right pr-5\"\n >\n <EpBtn text @click.stop=\"close\" type=\"error\">\n {{ labelClose }}\n </EpBtn>\n </div>\n </div>\n </div>\n </div>\n </template>\n </DisplayBox>\n </div>\n\n <div class=\"border-l p-5\">\n <EpBtn text :href=\"url\" v-if=\"url\" type=\"primary\">\n <EpIcon :size=\"20\" :icon-path=\"mdiOpenInNew\" /> {{ labelRead }}\n </EpBtn>\n </div>\n </div>\n </div>\n </template>\n </EpEdu>\n</template>\n"],"names":["compact","_openBlock","_createElementBlock","_unref","_Fragment","_createElementVNode","_createVNode","EpIcon","EpEdu","hideIcon","_normalizeClass","_toDisplayString","_createBlock","EpBtn","_createTextVNode","DisplayBox","_withCtx"],"mappings":"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"}
1
+ {"version":3,"file":"EpReading.vue.js","sources":["../../../src/components/educationals/EpReading.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport EpIcon from \"~/components//basics/EpIcon.vue\";\nimport EpBtn from \"~/components//basics/EpBtn.vue\";\nimport DisplayBox from \"~/components//tools/DisplayBox.vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { mdiBookmarkBox } from \"@mdi/js\";\nimport { mdiBookOpenVariant } from \"@mdi/js\";\nimport { mdiBookOpenPageVariant } from \"@mdi/js\";\nimport { mdiOpenInNew } from \"@mdi/js\";\nimport type { EpReadingProps } from \"~/types/educationals/EpReading\";\n\nconst props = withDefaults(defineProps<EpReadingProps>(), {\n title: null,\n cover: \"\",\n icon: \"mdiBookmarkBox\",\n hideCover: false,\n compact: false,\n type: \"neutral\",\n hideIcon: false,\n labelIn: \"dans\",\n labelRead: \"Lire\",\n labelClose: \"Fermer\",\n labelDetails: \"détails\",\n labelCard: \"Lecture\",\n labelIntentions: \"Intentions de lecture\",\n});\n\nconst old_image =\n \"https://live.staticflickr.com/4868/45940268562_c5f7fdd06b_q.jpg\";\nconst bad_image =\n \"https://farm5.staticflickr.com/4868/45940268562_9452f09a61_o.png\";\n\nconst hasCover = computed(() => {\n if (\n props.cover === old_image ||\n props.cover.trim().length === 0 ||\n props.cover === bad_image\n ) {\n return false;\n }\n return true;\n});\n\nconst hasDetails = computed(() => {\n if (props.author || props.editor || props.container || props.year) {\n return true;\n }\n return false;\n});\n\nconst {\n title,\n intentions,\n cover,\n hideCover,\n year,\n author,\n container,\n editor,\n pages,\n type,\n mandateLevel,\n url,\n labelIn,\n labelRead,\n labelClose,\n labelDetails,\n labelCard,\n labelIntentions,\n} = toRefs(props);\n\nconst errorImg = (event: Event) => {\n const imgElement = event.target as HTMLImageElement;\n if (imgElement.src) {\n imgElement.src =\n \"https://live.staticflickr.com/4868/45940268562_c5f7fdd06b_q.jpg\";\n }\n};\n</script>\n\n<template>\n <div\n class=\"flex shadow-sm rounded-lg overflow-hidden bg-white dark:bg-dark md:flex-row\"\n v-if=\"!compact\"\n >\n <template v-if=\"!hideCover\">\n <div\n v-if=\"hasCover\"\n class=\"h-96 mr-2 w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg flex justify-center items-center text-gray-300\"\n >\n <img\n :src=\"cover\"\n :alt=\"`image de la lecture ${title}`\"\n @error=\"errorImg\"\n />\n </div>\n\n <div\n v-else\n class=\"h-96 w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg flex justify-center items-center text-gray-300 dark:bg-dark\"\n >\n <EpIcon :icon-path=\"mdiBookOpenPageVariant\" size=\"95\" />\n </div>\n </template>\n <div class=\"flex py-3 flex-col w-full\">\n <EpEdu\n :title=\"labelCard\"\n :labelIntentions=\"labelIntentions\"\n :icon=\"mdiBookOpenVariant\"\n flat\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n :mandateLevel=\"mandateLevel\"\n >\n <template #intentions v-if=\"intentions\">\n <div v-html=\"useRenderText(intentions)\" />\n </template>\n <template #content>\n <div class=\"w-full\">\n <h4\n :class=\"`text-xl font-semibold ${\n hasDetails || pages ? 'border-b' : ''\n }`\"\n >\n {{ title }}\n </h4>\n <div class=\"flex\">\n <div class=\"flex-1 py-2\" v-if=\"hasDetails\">\n <p class=\"font-medium\">\n <span class=\"font-bold mr-1\" v-if=\"author\">{{ author }}</span>\n <span v-if=\"year\">({{ year }})</span>\n <span v-if=\"year && editor\">, </span>\n <span v-if=\"editor\">{{ editor }}</span>\n </p>\n <p v-if=\"container\">\n <span class=\"text-sm italic pr-1\">{{ labelIn }}</span>\n <span class=\"\">{{ container }}</span>\n </p>\n </div>\n <div\n :class=\"`flex-1 pt-2 pb-2 ${hasDetails ? 'border-l pl-2' : ''}`\"\n v-if=\"pages\"\n >\n <EpIcon :size=\"24\" :icon-path=\"mdiBookmarkBox\" />\n <span class=\"pl-2 align-middle\">{{ pages }}</span>\n </div>\n </div>\n </div>\n </template>\n <template #actions>\n <EpBtn text :href=\"url\" v-if=\"url\" type=\"primary\">\n <EpIcon :size=\"20\" :icon-path=\"mdiOpenInNew\" /> {{ labelRead }}\n </EpBtn>\n </template>\n </EpEdu>\n </div>\n </div>\n <!--compact mode-->\n <EpEdu\n :title=\"labelCard\"\n :labelIntentions=\"labelIntentions\"\n :icon=\"mdiBookOpenVariant\"\n flat\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n v-else\n >\n <template #intentions v-if=\"intentions\">\n <div v-html=\"useRenderText(intentions)\" />\n </template>\n <template #content>\n <div class=\"flex flex-row justify-between\">\n <div class=\"p-5\">\n <span class=\"text-lg leading-6 font-semibold font-sans\">{{\n title\n }}</span>\n </div>\n <div class=\"flex\">\n <div class=\"p-5\">\n <DisplayBox>\n <template #default=\"{ open }\">\n <EpBtn text @click.stop=\"open\" type=\"primary\">\n {{ labelDetails }}\n </EpBtn>\n </template>\n <template #menu=\"{ close }\">\n <div class=\"w-[32rem]\">\n <div\n class=\"flex flex-col rounded-lg bg-white dark:bg-dark dark:border-r md:flex-row\"\n >\n <template v-if=\"!hideCover\">\n <img\n v-if=\"hasCover\"\n class=\"object-cover h-96 w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg\"\n :src=\"cover\"\n :alt=\"`image de la lecture ${title}`\"\n @error=\"errorImg\"\n />\n <div\n v-else\n class=\"h-96 border-l border-t border-b w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg flex justify-center items-center text-gray-300\"\n >\n <EpIcon :icon-path=\"mdiBookOpenPageVariant\" size=\"95\" />\n </div>\n </template>\n <div class=\"flex flex-col justify-between w-full\">\n <div\n class=\"text-left px-5 py-2 bg-gray-100 text-black dark:rounded-tr-lg\"\n >\n <EpIcon :size=\"24\" :icon-path=\"mdiBookOpenVariant\" />\n <span class=\"pl-2 align-middle\">{{ labelCard }}</span>\n </div>\n <div class=\"w-full px-5\">\n <h4\n :class=\"`text-xl font-semibold py-4 ${\n hasDetails || pages ? 'border-b' : ''\n }`\"\n >\n {{ title }}\n </h4>\n <div class=\"flex\">\n <div class=\"flex-1 py-2\" v-if=\"hasDetails\">\n <p class=\"font-medium\">\n <span class=\"font-bold mr-2\" v-if=\"author\">{{\n author\n }}</span>\n <span v-if=\"year\"> ({{ year }})</span>\n <span v-if=\"year && editor\">, </span>\n <span v-if=\"editor\">{{ editor }}</span>\n </p>\n <p v-if=\"container\">\n <span class=\"text-sm italic pr-1\">{{\n labelIn\n }}</span>\n <span>{{ container }}</span>\n </p>\n </div>\n <div\n :class=\"`flex-1 pt-2 pb-2 ${\n hasDetails ? 'border-l pl-2' : ''\n }`\"\n v-if=\"pages\"\n >\n <EpIcon :size=\"24\" :icon-path=\"mdiBookmarkBox\" />\n <span class=\"pl-2 align-middle\">{{ pages }}</span>\n </div>\n </div>\n </div>\n <div\n class=\"bg-gray-100 dark:bg-transparent dark:border-b dark:rounded-br text-right pr-5\"\n >\n <EpBtn text @click.stop=\"close\" type=\"error\">\n {{ labelClose }}\n </EpBtn>\n </div>\n </div>\n </div>\n </div>\n </template>\n </DisplayBox>\n </div>\n\n <div class=\"border-l p-5\">\n <EpBtn text :href=\"url\" v-if=\"url\" type=\"primary\">\n <EpIcon :size=\"20\" :icon-path=\"mdiOpenInNew\" /> {{ labelRead }}\n </EpBtn>\n </div>\n </div>\n </div>\n </template>\n </EpEdu>\n</template>\n"],"names":["compact","_openBlock","_createElementBlock","_unref","_Fragment","_createElementVNode","_createVNode","EpIcon","EpEdu","hideIcon","_normalizeClass","_toDisplayString","_createBlock","EpBtn","_createTextVNode","DisplayBox","_withCtx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,MAAM,YACJ;AACF,MAAM,YACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAnBF,UAAM,QAAQ;AAqBd,UAAM,WAAW,SAAS,MAAM;AAC9B,UACE,MAAM,UAAU,aAChB,MAAM,MAAM,KAAA,EAAO,WAAW,KAC9B,MAAM,UAAU,WAChB;AACA,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,UAAU,MAAM,UAAU,MAAM,aAAa,MAAM,MAAM;AACjE,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACE,OAAO,KAAK;AAEhB,UAAM,WAAW,CAAC,UAAiB;AACjC,YAAM,aAAa,MAAM;AACzB,UAAI,WAAW,KAAK;AAClB,mBAAW,MACT;AAAA,MACJ;AAAA,IACF;;cAMWA,KAAAA,WAFTC,aAAAC,mBA2EM,OA3EN,YA2EM;AAAA,SAvEaC,MAAA,SAAA,kBAAjBD,mBAkBWE,UAAA,EAAA,KAAA,KAAA;AAAA,UAhBD,SAAA,SADRH,UAAA,GAAAC,mBASM,OATN,YASM;AAAA,YALJG,mBAIE,OAAA;AAAA,cAHC,KAAKF,MAAA,KAAA;AAAA,cACL,4BAA4BA,MAAA,KAAA,CAAK;AAAA,cACjC,SAAO;AAAA,YAAA;iBAIZF,UAAA,GAAAC,mBAKM,OALN,YAKM;AAAA,YADJI,YAAwDC,aAAA;AAAA,cAA/C,aAAWJ,MAAA,sBAAA;AAAA,cAAwB,MAAK;AAAA,YAAA;;;QAGrDE,mBAmDM,OAnDN,YAmDM;AAAA,UAlDJC,YAiDQE,aAAA;AAAA,YAhDL,OAAOL,MAAA,SAAA;AAAA,YACP,iBAAiBA,MAAA,eAAA;AAAA,YACjB,MAAMA,MAAA,kBAAA;AAAA,YACP,MAAA;AAAA,YACC,MAAMA,MAAA,IAAA;AAAA,YACN,UAAUM,KAAAA;AAAAA,YACV,cAAcN,MAAA,YAAA;AAAA,UAAA;YAKJ,iBACT,MA6BM;AAAA,cA7BNE,mBA6BM,OA7BN,YA6BM;AAAA,gBA5BJA,mBAMK,MAAA;AAAA,kBALF,OAAKK,eAAA,yBAA4C,WAAA,SAAcP,MAAA,KAAA,IAAK,aAAA;mCAIlEA,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,gBAEVE,mBAoBM,OApBN,YAoBM;AAAA,kBAnB2B,WAAA,SAA/BJ,UAAA,GAAAC,mBAWM,OAXN,YAWM;AAAA,oBAVJG,mBAKI,KALJ,aAKI;AAAA,sBAJiCF,MAAA,MAAA,kBAAnCD,mBAA8D,QAA9D,aAA8DS,gBAAhBR,MAAA,MAAA,CAAM,GAAA,CAAA;sBACxCA,MAAA,IAAA,KAAZF,aAAAC,mBAAqC,QAAA,aAAnB,MAACS,gBAAGR,MAAA,IAAA,CAAI,IAAG,KAAC,CAAA;sBAClBA,MAAA,IAAA,KAAQA,MAAA,MAAA,KAApBF,UAAA,GAAAC,mBAAqC,qBAAT,IAAE;sBAClBC,MAAA,MAAA,KAAZF,UAAA,GAAAC,mBAAuC,qCAAhBC,MAAA,MAAA,CAAM,GAAA,CAAA;;oBAEtBA,MAAA,SAAA,kBAATD,mBAGI,KAAA,aAAA;AAAA,sBAFFG,mBAAsD,QAAtD,aAAsDM,gBAAjBR,MAAA,OAAA,CAAO,GAAA,CAAA;AAAA,sBAC5CE,mBAAqC,QAArC,aAAqCM,gBAAnBR,MAAA,SAAA,CAAS,GAAA,CAAA;AAAA,oBAAA;;kBAKvBA,MAAA,KAAA,kBAFRD,mBAMM,OAAA;AAAA;oBALH,0CAA2B,WAAA,QAAU,kBAAA,EAAA,EAAA;AAAA,kBAAA;oBAGtCI,YAAiDC,aAAA;AAAA,sBAAxC,MAAM;AAAA,sBAAK,aAAWJ,MAAA,cAAA;AAAA,oBAAA;oBAC/BE,mBAAkD,QAAlD,aAAkDM,gBAAfR,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,kBAAA;;;;YAKrC,iBACT,MAEQ;AAAA,cAFsBA,MAAA,GAAA,kBAA9BS,YAEQC,aAAA;AAAA;gBAFD,MAAA;AAAA,gBAAM,MAAMV,MAAA,GAAA;AAAA,gBAAgB,MAAK;AAAA,cAAA;iCACtC,MAA+C;AAAA,kBAA/CG,YAA+CC,aAAA;AAAA,oBAAtC,MAAM;AAAA,oBAAK,aAAWJ,MAAA,YAAA;AAAA,kBAAA;kBAAgBW,gBAAA,sBAAIX,MAAA,SAAA,CAAS,GAAA,CAAA;AAAA,gBAAA;;;;;;YArCpCA,MAAA,UAAA;oBAAjB;AAAA,0BACT,MAA0C;AAAA,gBAA1CE,mBAA0C,OAAA;AAAA,kBAArC,WAAQF,MAAA,aAAA,EAAcA,MAAA,UAAA,CAAU;AAAA,gBAAA;;;;;;0BA2C7CS,YAgHQJ,aAAA;AAAA;QA/GL,OAAOL,MAAA,SAAA;AAAA,QACP,iBAAiBA,MAAA,eAAA;AAAA,QACjB,MAAMA,MAAA,kBAAA;AAAA,QACP,MAAA;AAAA,QACC,MAAMA,MAAA,IAAA;AAAA,QACN,UAAUM,KAAAA;AAAAA,MAAAA;QAMA,iBACT,MAiGM;AAAA,UAjGNJ,mBAiGM,OAjGN,aAiGM;AAAA,YAhGJA,mBAIM,OAJN,aAIM;AAAA,cAHJA,mBAES,QAFT,aAESM,gBADPR,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,YAAA;YAGTE,mBA0FM,OA1FN,aA0FM;AAAA,cAzFJA,mBAkFM,OAlFN,aAkFM;AAAA,gBAjFJC,YAgFaS,aAAA,MAAA;AAAA,kBA/EA,SAAOC,QAChB,CAEQ,EAHY,WAAI;AAAA,oBACxBV,YAEQO,aAAA;AAAA,sBAFD,MAAA;AAAA,sBAAM,uBAAY,MAAI,CAAA,MAAA,CAAA;AAAA,sBAAE,MAAK;AAAA,oBAAA;uCAClC,MAAkB;AAAA,wDAAfV,MAAA,YAAA,CAAY,GAAA,CAAA;AAAA,sBAAA;;;;kBAGR,MAAIa,QACb,CAuEM,EAxEW,YAAK;AAAA,oBACtBX,mBAuEM,OAvEN,aAuEM;AAAA,sBAtEJA,mBAqEM,OArEN,aAqEM;AAAA,yBAlEaF,MAAA,SAAA,kBAAjBD,mBAcWE,UAAA,EAAA,KAAA,KAAA;AAAA,0BAZD,SAAA,sBADRF,mBAME,OAAA;AAAA;4BAJA,OAAM;AAAA,4BACL,KAAKC,MAAA,KAAA;AAAA,4BACL,4BAA4BA,MAAA,KAAA,CAAK;AAAA,4BACjC,SAAO;AAAA,0BAAA,8BAEVF,UAAA,GAAAC,mBAKM,OALN,aAKM;AAAA,4BADJI,YAAwDC,aAAA;AAAA,8BAA/C,aAAWJ,MAAA,sBAAA;AAAA,8BAAwB,MAAK;AAAA,4BAAA;;;wBAGrDE,mBAkDM,OAlDN,aAkDM;AAAA,0BAjDJA,mBAKM,OALN,aAKM;AAAA,4BAFJC,YAAqDC,aAAA;AAAA,8BAA5C,MAAM;AAAA,8BAAK,aAAWJ,MAAA,kBAAA;AAAA,4BAAA;4BAC/BE,mBAAsD,QAAtD,aAAsDM,gBAAnBR,MAAA,SAAA,CAAS,GAAA,CAAA;AAAA,0BAAA;0BAE9CE,mBAmCM,OAnCN,aAmCM;AAAA,4BAlCJA,mBAMK,MAAA;AAAA,8BALF,OAAKK,eAAA,8BAA6D,WAAA,SAAcP,MAAA,KAAA,IAAK,aAAA;+CAInFA,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,4BAEVE,mBA0BM,OA1BN,aA0BM;AAAA,8BAzB2B,WAAA,SAA/BJ,UAAA,GAAAC,mBAeM,OAfN,aAeM;AAAA,gCAdJG,mBAOI,KAPJ,aAOI;AAAA,kCANiCF,MAAA,MAAA,kBAAnCD,mBAES,QAFT,aAESS,gBADPR,MAAA,MAAA,CAAM,GAAA,CAAA;kCAEIA,MAAA,IAAA,KAAZF,aAAAC,mBAAsC,QAAA,aAApB,OAAES,gBAAGR,MAAA,IAAA,CAAI,IAAG,KAAC,CAAA;kCACnBA,MAAA,IAAA,KAAQA,MAAA,MAAA,KAApBF,UAAA,GAAAC,mBAAqC,qBAAT,IAAE;kCAClBC,MAAA,MAAA,KAAZF,UAAA,GAAAC,mBAAuC,qCAAhBC,MAAA,MAAA,CAAM,GAAA,CAAA;;gCAEtBA,MAAA,SAAA,kBAATD,mBAKI,KAAA,aAAA;AAAA,kCAJFG,mBAES,QAFT,aAESM,gBADPR,MAAA,OAAA,CAAO,GAAA,CAAA;AAAA,kCAETE,mBAA4B,8BAAnBF,MAAA,SAAA,CAAS,GAAA,CAAA;AAAA,gCAAA;;8BAOdA,MAAA,KAAA,kBAJRD,mBAQM,OAAA;AAAA;gCAPH,OAAKQ,eAAA,oBAAqD,WAAA,QAAU,kBAAA;;gCAKrEJ,YAAiDC,aAAA;AAAA,kCAAxC,MAAM;AAAA,kCAAK,aAAWJ,MAAA,cAAA;AAAA,gCAAA;gCAC/BE,mBAAkD,QAAlD,aAAkDM,gBAAfR,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,8BAAA;;;0BAI9CE,mBAMM,OANN,aAMM;AAAA,4BAHJC,YAEQO,aAAA;AAAA,8BAFD,MAAA;AAAA,8BAAM,uBAAY,OAAK,CAAA,MAAA,CAAA;AAAA,8BAAE,MAAK;AAAA,4BAAA;+CACnC,MAAgB;AAAA,gEAAbV,MAAA,UAAA,CAAU,GAAA,CAAA;AAAA,8BAAA;;;;;;;;;;;cAU7BE,mBAIM,OAJN,aAIM;AAAA,gBAH0BF,MAAA,GAAA,kBAA9BS,YAEQC,aAAA;AAAA;kBAFD,MAAA;AAAA,kBAAM,MAAMV,MAAA,GAAA;AAAA,kBAAgB,MAAK;AAAA,gBAAA;mCACtC,MAA+C;AAAA,oBAA/CG,YAA+CC,aAAA;AAAA,sBAAtC,MAAM;AAAA,sBAAK,aAAWJ,MAAA,YAAA;AAAA,oBAAA;oBAAgBW,gBAAA,sBAAIX,MAAA,SAAA,CAAS,GAAA,CAAA;AAAA,kBAAA;;;;;;;;;QAjG1CA,MAAA,UAAA;gBAAjB;AAAA,sBACT,MAA0C;AAAA,YAA1CE,mBAA0C,OAAA;AAAA,cAArC,WAAQF,MAAA,aAAA,EAAcA,MAAA,UAAA,CAAU;AAAA,YAAA;;;;;;;;"}
@@ -43,7 +43,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
43
43
  return defineAsyncComponent(() => import("./EpReading.vue2.js"));
44
44
  }
45
45
  return defineAsyncComponent(
46
- () => __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../basics/EpAvatar.vue": () => import("../basics/EpAvatar.vue.js"), "../basics/EpBadge.vue": () => import("../basics/EpBadge.vue.js"), "../basics/EpBtn.vue": () => import("../basics/EpBtn.vue2.js"), "../basics/EpCard.vue": () => import("../basics/EpCard.vue2.js"), "../basics/EpChip.vue": () => import("../basics/EpChip.vue2.js"), "../basics/EpDivider.vue": () => import("../basics/EpDivider.vue2.js"), "../basics/EpFlex.vue": () => import("../basics/EpFlex.vue2.js"), "../basics/EpHover.vue": () => import("../basics/EpHover.vue2.js"), "../basics/EpHoverCard.vue": () => import("../basics/EpHoverCard.vue2.js"), "../basics/EpIcon.vue": () => import("../basics/EpIcon.vue2.js"), "../basics/EpImg.vue": () => import("../basics/EpImg.vue2.js"), "../basics/EpImgCarousel.vue": () => import("../basics/EpImgCarousel.vue2.js"), "../basics/EpList.vue": () => import("../basics/EpList.vue.js"), "../basics/EpListItem.vue": () => import("../basics/EpListItem.vue2.js"), "../basics/EpSection.vue": () => import("../basics/EpSection.vue2.js"), "../basics/EpSectionCols.vue": () => import("../basics/EpSectionCols.vue2.js"), "../basics/EpSpinner.vue": () => import("../basics/EpSpinner.vue2.js"), "../basics/EpStackedList.vue": () => import("../basics/EpStackedList.vue2.js"), "../basics/EpTable.vue": () => import("../basics/EpTable.vue2.js"), "../basics/EpText.vue": () => import("../basics/EpText.vue2.js"), "../charts/EpBarChart.vue": () => import("../charts/EpBarChart.vue2.js"), "../charts/EpFunnelChart.vue": () => import("../charts/EpFunnelChart.vue2.js"), "../charts/EpLineChart.vue": () => import("../charts/EpLineChart.vue2.js"), "../charts/EpPieChart.vue": () => import("../charts/EpPieChart.vue2.js"), "./EpBranchingScenario.vue": () => import("./EpBranchingScenario.vue.js"), "./EpCodeblock.vue": () => import("./EpCodeblock.vue3.js"), "./EpConclusion.vue": () => import("./EpConclusion.vue2.js"), "./EpDescription.vue": () => import("./EpDescription.vue2.js"), "./EpDocument.vue": () => import("./EpDocument.vue2.js"), "./EpEdu.vue": () => import("./EpEdu.vue2.js"), "./EpInstructions.vue": () => import("./EpInstructions.vue2.js"), "./EpIntroduction.vue": () => import("./EpIntroduction.vue2.js"), "./EpObjective.vue": () => import("./EpObjective.vue2.js"), "./EpReading.vue": () => import("./EpReading.vue2.js"), "./EpResource.vue": () => import("./EpResource.vue2.js"), "./EpScope.vue": () => import("./EpScope.vue2.js"), "./EpSpecificObjective.vue": () => import("./EpSpecificObjective.vue2.js"), "../forms/EpCheckbox.vue": () => import("../forms/EpCheckbox.vue.js"), "../forms/EpInput.vue": () => import("../forms/EpInput.vue.js"), "../forms/EpRadio.vue": () => import("../forms/EpRadio.vue.js"), "../forms/EpRadioSummative.vue": () => import("../forms/EpRadioSummative.vue.js"), "../forms/EpSelect.vue": () => import("../forms/EpSelect.vue.js"), "../forms/EpSwitch.vue": () => import("../forms/EpSwitch.vue.js"), "../forms/EpTextarea.vue": () => import("../forms/EpTextarea.vue.js"), "../forms/EpToggle.vue": () => import("../forms/EpToggle.vue.js"), "../interactions/Ep360Image.vue": () => import("../interactions/Ep360Image.vue.js"), "../interactions/Ep360Video.vue": () => import("../interactions/Ep360Video.vue.js"), "../interactions/EpAccordeon.vue": () => import("../interactions/EpAccordeon.vue.js"), "../interactions/EpContentSlider.vue": () => import("../interactions/EpContentSlider.vue2.js"), "../interactions/EpDarkMode.vue": () => import("../interactions/EpDarkMode.vue2.js"), "../interactions/EpDraggable.vue": () => import("../interactions/EpDraggable.vue2.js"), "../interactions/EpHotSpot.vue": () => import("../interactions/EpHotSpot.vue2.js"), "../interactions/EpModal.vue": () => import("../interactions/EpModal.vue3.js"), "../interactions/EpQuestion.vue": () => import("../interactions/EpQuestion.vue2.js"), "../interactions/EpSummativeTable.vue": () => import("../interactions/EpSummativeTable.vue2.js"), "../interactions/EpSvgShow.vue": () => import("../interactions/EpSvgShow.vue2.js"), "../interactions/EpTabs.vue": () => import("../interactions/EpTabs.vue.js"), "../interactions/EpTooltip.vue": () => import("../interactions/EpTooltip.vue3.js"), "../medias/EpAudio.vue": () => import("../medias/EpAudio.vue2.js"), "../medias/EpCardLink.vue": () => import("../medias/EpCardLink.vue2.js"), "../medias/EpCarousel.vue": () => import("../medias/EpCarousel.vue.js"), "../medias/EpHierarchy.vue": () => import("../medias/EpHierarchy.vue.js"), "../medias/EpIframe.vue": () => import("../medias/EpIframe.vue2.js"), "../medias/EpKatex.vue": () => import("../medias/EpKatex.vue.js"), "../medias/EpLink.vue": () => import("../medias/EpLink.vue2.js"), "../medias/EpLinkVersion.vue": () => import("../medias/EpLinkVersion.vue2.js"), "../medias/EpLottieSvg.vue": () => import("../medias/EpLottieSvg.vue2.js"), "../medias/EpSensibleImage.vue": () => import("../medias/EpSensibleImage.vue.js"), "../medias/EpSoftware.vue": () => import("../medias/EpSoftware.vue2.js"), "../medias/EpSvg.vue": () => import("../medias/EpSvg.vue2.js"), "../medias/EpTerm.vue": () => import("../medias/EpTerm.vue2.js"), "../medias/EpTimeLine.vue": () => import("../medias/EpTimeLine.vue3.js"), "../medias/EpVideo.vue": () => import("../medias/EpVideo.vue2.js"), "../medias/EpVideoPanopto.vue": () => import("../medias/EpVideoPanopto.vue2.js"), "../medias/EpWordDef.vue": () => import("../medias/EpWordDef.vue2.js"), "../signages/EpAlert.vue": () => import("../signages/EpAlert.vue.js"), "../signages/EpBadge.vue": () => import("../signages/EpBadge.vue2.js"), "../signages/EpHeader.vue": () => import("../signages/EpHeader.vue2.js"), "../signages/EpNothing.vue": () => import("../signages/EpNothing.vue.js"), "../signages/EpQuote.vue": () => import("../signages/EpQuote.vue2.js"), "../signages/EpSkeleton.vue": () => import("../signages/EpSkeleton.vue3.js"), "../tools/BgAudio.vue": () => import("../tools/BgAudio.vue.js"), "../tools/Details.vue": () => import("../tools/Details.vue.js"), "../tools/DisplayBox.vue": () => import("../tools/DisplayBox.vue.js"), "../tools/SvgFilter.vue": () => import("../tools/SvgFilter.vue.js"), "../tools/TextMedia.vue": () => import("../tools/TextMedia.vue.js"), "../tools/TimelineItem.vue": () => import("../tools/TimelineItem.vue.js"), "../tools/TwoColsMedia.vue": () => import("../tools/TwoColsMedia.vue.js") }), `../${componentToLoad.path}/${componentToLoad.name}.vue`, 3)
46
+ () => __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../basics/EpAvatar.vue": () => import("../basics/EpAvatar.vue2.js"), "../basics/EpBadge.vue": () => import("../basics/EpBadge.vue.js"), "../basics/EpBtn.vue": () => import("../basics/EpBtn.vue2.js"), "../basics/EpCard.vue": () => import("../basics/EpCard.vue2.js"), "../basics/EpChip.vue": () => import("../basics/EpChip.vue2.js"), "../basics/EpDivider.vue": () => import("../basics/EpDivider.vue2.js"), "../basics/EpFlex.vue": () => import("../basics/EpFlex.vue2.js"), "../basics/EpHover.vue": () => import("../basics/EpHover.vue2.js"), "../basics/EpHoverCard.vue": () => import("../basics/EpHoverCard.vue2.js"), "../basics/EpIcon.vue": () => import("../basics/EpIcon.vue2.js"), "../basics/EpImg.vue": () => import("../basics/EpImg.vue2.js"), "../basics/EpImgCarousel.vue": () => import("../basics/EpImgCarousel.vue2.js"), "../basics/EpList.vue": () => import("../basics/EpList.vue.js"), "../basics/EpListItem.vue": () => import("../basics/EpListItem.vue2.js"), "../basics/EpSection.vue": () => import("../basics/EpSection.vue2.js"), "../basics/EpSectionCols.vue": () => import("../basics/EpSectionCols.vue2.js"), "../basics/EpSpinner.vue": () => import("../basics/EpSpinner.vue2.js"), "../basics/EpStackedList.vue": () => import("../basics/EpStackedList.vue2.js"), "../basics/EpTable.vue": () => import("../basics/EpTable.vue2.js"), "../basics/EpText.vue": () => import("../basics/EpText.vue2.js"), "../charts/EpBarChart.vue": () => import("../charts/EpBarChart.vue2.js"), "../charts/EpFunnelChart.vue": () => import("../charts/EpFunnelChart.vue2.js"), "../charts/EpLineChart.vue": () => import("../charts/EpLineChart.vue2.js"), "../charts/EpPieChart.vue": () => import("../charts/EpPieChart.vue2.js"), "./EpBranchingScenario.vue": () => import("./EpBranchingScenario.vue.js"), "./EpCodeblock.vue": () => import("./EpCodeblock.vue3.js"), "./EpConclusion.vue": () => import("./EpConclusion.vue2.js"), "./EpDescription.vue": () => import("./EpDescription.vue2.js"), "./EpDocument.vue": () => import("./EpDocument.vue2.js"), "./EpEdu.vue": () => import("./EpEdu.vue2.js"), "./EpInstructions.vue": () => import("./EpInstructions.vue2.js"), "./EpIntroduction.vue": () => import("./EpIntroduction.vue2.js"), "./EpObjective.vue": () => import("./EpObjective.vue2.js"), "./EpReading.vue": () => import("./EpReading.vue2.js"), "./EpResource.vue": () => import("./EpResource.vue2.js"), "./EpScope.vue": () => import("./EpScope.vue2.js"), "./EpSpecificObjective.vue": () => import("./EpSpecificObjective.vue2.js"), "../forms/EpCheckbox.vue": () => import("../forms/EpCheckbox.vue.js"), "../forms/EpInput.vue": () => import("../forms/EpInput.vue.js"), "../forms/EpRadio.vue": () => import("../forms/EpRadio.vue.js"), "../forms/EpRadioSummative.vue": () => import("../forms/EpRadioSummative.vue.js"), "../forms/EpSelect.vue": () => import("../forms/EpSelect.vue.js"), "../forms/EpSwitch.vue": () => import("../forms/EpSwitch.vue.js"), "../forms/EpTextarea.vue": () => import("../forms/EpTextarea.vue.js"), "../forms/EpToggle.vue": () => import("../forms/EpToggle.vue.js"), "../interactions/Ep360Image.vue": () => import("../interactions/Ep360Image.vue.js"), "../interactions/Ep360Video.vue": () => import("../interactions/Ep360Video.vue.js"), "../interactions/EpAccordeon.vue": () => import("../interactions/EpAccordeon.vue.js"), "../interactions/EpContentSlider.vue": () => import("../interactions/EpContentSlider.vue2.js"), "../interactions/EpDarkMode.vue": () => import("../interactions/EpDarkMode.vue2.js"), "../interactions/EpDraggable.vue": () => import("../interactions/EpDraggable.vue2.js"), "../interactions/EpHotSpot.vue": () => import("../interactions/EpHotSpot.vue2.js"), "../interactions/EpModal.vue": () => import("../interactions/EpModal.vue3.js"), "../interactions/EpQuestion.vue": () => import("../interactions/EpQuestion.vue2.js"), "../interactions/EpSummativeTable.vue": () => import("../interactions/EpSummativeTable.vue2.js"), "../interactions/EpSvgShow.vue": () => import("../interactions/EpSvgShow.vue2.js"), "../interactions/EpTabs.vue": () => import("../interactions/EpTabs.vue.js"), "../interactions/EpTooltip.vue": () => import("../interactions/EpTooltip.vue3.js"), "../medias/EpAudio.vue": () => import("../medias/EpAudio.vue2.js"), "../medias/EpCardLink.vue": () => import("../medias/EpCardLink.vue2.js"), "../medias/EpCarousel.vue": () => import("../medias/EpCarousel.vue.js"), "../medias/EpHierarchy.vue": () => import("../medias/EpHierarchy.vue.js"), "../medias/EpIframe.vue": () => import("../medias/EpIframe.vue2.js"), "../medias/EpKatex.vue": () => import("../medias/EpKatex.vue.js"), "../medias/EpLink.vue": () => import("../medias/EpLink.vue2.js"), "../medias/EpLinkVersion.vue": () => import("../medias/EpLinkVersion.vue2.js"), "../medias/EpLottieSvg.vue": () => import("../medias/EpLottieSvg.vue2.js"), "../medias/EpSensibleImage.vue": () => import("../medias/EpSensibleImage.vue.js"), "../medias/EpSoftware.vue": () => import("../medias/EpSoftware.vue2.js"), "../medias/EpSvg.vue": () => import("../medias/EpSvg.vue2.js"), "../medias/EpTerm.vue": () => import("../medias/EpTerm.vue2.js"), "../medias/EpTimeLine.vue": () => import("../medias/EpTimeLine.vue3.js"), "../medias/EpVideo.vue": () => import("../medias/EpVideo.vue2.js"), "../medias/EpVideoPanopto.vue": () => import("../medias/EpVideoPanopto.vue2.js"), "../medias/EpWordDef.vue": () => import("../medias/EpWordDef.vue2.js"), "../signages/EpAlert.vue": () => import("../signages/EpAlert.vue.js"), "../signages/EpBadge.vue": () => import("../signages/EpBadge.vue2.js"), "../signages/EpHeader.vue": () => import("../signages/EpHeader.vue2.js"), "../signages/EpNothing.vue": () => import("../signages/EpNothing.vue.js"), "../signages/EpQuote.vue": () => import("../signages/EpQuote.vue2.js"), "../signages/EpSkeleton.vue": () => import("../signages/EpSkeleton.vue3.js"), "../tools/BgAudio.vue": () => import("../tools/BgAudio.vue.js"), "../tools/Details.vue": () => import("../tools/Details.vue.js"), "../tools/DisplayBox.vue": () => import("../tools/DisplayBox.vue3.js"), "../tools/SvgFilter.vue": () => import("../tools/SvgFilter.vue.js"), "../tools/TextMedia.vue": () => import("../tools/TextMedia.vue.js"), "../tools/TimelineItem.vue": () => import("../tools/TimelineItem.vue.js"), "../tools/TwoColsMedia.vue": () => import("../tools/TwoColsMedia.vue.js") }), `../${componentToLoad.path}/${componentToLoad.name}.vue`, 3)
47
47
  );
48
48
  };
49
49
  const typeRess = computed(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"EpResource.vue.js","sources":["../../../src/components/educationals/EpResource.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { defineAsyncComponent, computed, toRefs } from \"vue\";\nimport { useComponent } from \"~/composables/useComponent\";\nimport { EpResourceProps } from \"~/types/educationals/EpResource\";\n\nconst { type = \"neutral\", resource, pages } = defineProps<EpResourceProps>();\n\nconst resourceInfo = computed(() => {\n if (!resource.hasOwnProperty(\"content\")) {\n return \"EpNothing\";\n }\n //console.log(resource)\n const typeRess = Object.keys(resource.content)[0];\n const ress = Object.assign({}, resource.content[typeRess]);\n\n ress.pages = pages;\n ress.type = typeRess;\n ress.intentions = pages;\n if (typeRess === \"clip\") {\n ress.src = ress.url;\n }\n if (typeRess === \"website\") {\n ress.href = ress.url;\n ress.label = ress.title;\n }\n if (typeRess === \"book\" && pages) {\n //ress.intentions = pages\n ress.pages = null;\n }\n if (ress.version_link) {\n ress.url = ress.version_link.url;\n }\n\n return ress;\n});\n\n//get Component asyncComponent\nconst getCompontent = (name: string | undefined) => {\n const componentToLoad = useComponent(name);\n //console.log(componentToLoad)\n if (componentToLoad.name === \"EpNothing\") {\n return defineAsyncComponent(() => import(\"../signages/EpNothing.vue\"));\n }\n if (componentToLoad.name === \"EpReading\") {\n return defineAsyncComponent(() => import(`./EpReading.vue`));\n }\n return defineAsyncComponent(\n () => import(`../${componentToLoad.path}/${componentToLoad.name}.vue`)\n );\n};\n\nconst typeRess = computed(() => {\n if (resourceInfo.value.type && resourceInfo.value.type === \"website\") {\n if (type === \"base\") {\n return \"primary\";\n }\n }\n return type;\n});\n</script>\n\n<template>\n <component\n :is=\"getCompontent(resourceInfo.type)\"\n v-bind=\"{ ...resourceInfo }\"\n :mandateLevel=\"mandateLevel\"\n :intentions=\"pages\"\n :type=\"typeRess\"\n ></component>\n</template>\n"],"names":["typeRess","_createBlock","_resolveDynamicComponent","_mergeProps","mandateLevel","pages"],"mappings":"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"}
1
+ {"version":3,"file":"EpResource.vue.js","sources":["../../../src/components/educationals/EpResource.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { defineAsyncComponent, computed, toRefs } from \"vue\";\nimport { useComponent } from \"~/composables/useComponent\";\nimport type { EpResourceProps } from \"~/types/educationals/EpResource\";\n\nconst { type = \"neutral\", resource, pages } = defineProps<EpResourceProps>();\n\nconst resourceInfo = computed(() => {\n if (!resource.hasOwnProperty(\"content\")) {\n return \"EpNothing\";\n }\n //console.log(resource)\n const typeRess = Object.keys(resource.content)[0];\n const ress = Object.assign({}, resource.content[typeRess]);\n\n ress.pages = pages;\n ress.type = typeRess;\n ress.intentions = pages;\n if (typeRess === \"clip\") {\n ress.src = ress.url;\n }\n if (typeRess === \"website\") {\n ress.href = ress.url;\n ress.label = ress.title;\n }\n if (typeRess === \"book\" && pages) {\n //ress.intentions = pages\n ress.pages = null;\n }\n if (ress.version_link) {\n ress.url = ress.version_link.url;\n }\n\n return ress;\n});\n\n//get Component asyncComponent\nconst getCompontent = (name: string | undefined) => {\n const componentToLoad = useComponent(name);\n //console.log(componentToLoad)\n if (componentToLoad.name === \"EpNothing\") {\n return defineAsyncComponent(() => import(\"../signages/EpNothing.vue\"));\n }\n if (componentToLoad.name === \"EpReading\") {\n return defineAsyncComponent(() => import(`./EpReading.vue`));\n }\n return defineAsyncComponent(\n () => import(`../${componentToLoad.path}/${componentToLoad.name}.vue`)\n );\n};\n\nconst typeRess = computed(() => {\n if (resourceInfo.value.type && resourceInfo.value.type === \"website\") {\n if (type === \"base\") {\n return \"primary\";\n }\n }\n return type;\n});\n</script>\n\n<template>\n <component\n :is=\"getCompontent(resourceInfo.type)\"\n v-bind=\"{ ...resourceInfo }\"\n :mandateLevel=\"mandateLevel\"\n :intentions=\"pages\"\n :type=\"typeRess\"\n ></component>\n</template>\n"],"names":["typeRess","_createBlock","_resolveDynamicComponent","_mergeProps","mandateLevel","pages"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpScope.vue.js","sources":["../../../src/components/educationals/EpScope.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, computed } from \"vue\";\nimport EpChip from \"~/components/basics/EpChip.vue\";\nimport { type ChipBgVariant } from \"~/types/Chip\";\nimport { EpScopeProps } from \"~/types/educationals/EpScope\";\n\nconst { mandateLevel } = defineProps<EpScopeProps>();\n\nlet renderMandate = ref<ChipBgVariant>(\"primary\");\n\nconst typeMandate = computed(() => {\n if (mandateLevel?.value.trim() === \"0\") {\n return (renderMandate.value = \"warning\");\n }\n return (renderMandate.value = \"primary\");\n});\n</script>\n\n<template>\n <EpChip v-if=\"mandateLevel\" size=\"small\" :type=\"typeMandate\">\n {{ mandateLevel.title }}\n </EpChip>\n</template>\n"],"names":["mandateLevel","_createBlock","EpChip"],"mappings":";;;;;;;;AAQA,QAAI,gBAAgB,IAAmB,SAAS;AAEhD,UAAM,cAAc,SAAS,MAAM;;AACjC,YAAI,aAAA,iBAAA,mBAAc,MAAM,YAAW,KAAK;AACtC,eAAQ,cAAc,QAAQ;AAAA,MAChC;AACA,aAAQ,cAAc,QAAQ;AAAA,IAChC,CAAC;;aAIeA,KAAAA,6BAAdC,YAESC,aAAA;AAAA;QAFmB,MAAK;AAAA,QAAS,MAAM,YAAA;AAAA,MAAA;yBAC9C,MAAwB;AAAA,UAArBF,gBAAAA,gBAAAA,KAAAA,aAAa,KAAK,GAAA,CAAA;AAAA,QAAA;;;;;;"}
1
+ {"version":3,"file":"EpScope.vue.js","sources":["../../../src/components/educationals/EpScope.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, computed } from \"vue\";\nimport EpChip from \"~/components/basics/EpChip.vue\";\nimport { type ChipBgVariant } from \"~/types/Chip\";\nimport type { EpScopeProps } from \"~/types/educationals/EpScope\";\n\nconst { mandateLevel } = defineProps<EpScopeProps>();\n\nlet renderMandate = ref<ChipBgVariant>(\"primary\");\n\nconst typeMandate = computed(() => {\n if (mandateLevel?.value.trim() === \"0\") {\n return (renderMandate.value = \"warning\");\n }\n return (renderMandate.value = \"primary\");\n});\n</script>\n\n<template>\n <EpChip v-if=\"mandateLevel\" size=\"small\" :type=\"typeMandate\">\n {{ mandateLevel.title }}\n </EpChip>\n</template>\n"],"names":["mandateLevel","_createBlock","EpChip"],"mappings":";;;;;;;;AAQA,QAAI,gBAAgB,IAAmB,SAAS;AAEhD,UAAM,cAAc,SAAS,MAAM;;AACjC,YAAI,aAAA,iBAAA,mBAAc,MAAM,YAAW,KAAK;AACtC,eAAQ,cAAc,QAAQ;AAAA,MAChC;AACA,aAAQ,cAAc,QAAQ;AAAA,IAChC,CAAC;;aAIeA,KAAAA,6BAAdC,YAESC,aAAA;AAAA;QAFmB,MAAK;AAAA,QAAS,MAAM,YAAA;AAAA,MAAA;yBAC9C,MAAwB;AAAA,UAArBF,gBAAAA,gBAAAA,KAAAA,aAAa,KAAK,GAAA,CAAA;AAAA,QAAA;;;;;;"}