ep-lib-ts 1.0.37 → 1.0.40

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 (304) hide show
  1. package/dist/BgAudio-o-6UyPLQ.js +4 -0
  2. package/dist/DisplayBox-kNQglpGH.js +4 -0
  3. package/dist/{Ep360Image-BZpa7qLl.js → Ep360Image-Dmwx7NrY.js} +1 -1
  4. package/dist/{Ep360Video-Wy_YWl7-.js → Ep360Video-b_stvC2Z.js} +1 -1
  5. package/dist/EpAlert-DyFkfcBY.js +4 -0
  6. package/dist/EpAudio-D33uLLKW.js +4 -0
  7. package/dist/EpAvatar-VKpJzHex.js +4 -0
  8. package/dist/EpBadge-BZKe8gkM.js +4 -0
  9. package/dist/EpBarChart-DSbJgjP4.js +4 -0
  10. package/dist/{EpBranchingScenario-5sbzBXZ0.js → EpBranchingScenario-HmQ5tqNL.js} +11 -11
  11. package/dist/EpBtn-eQgJ7t7X.js +4 -0
  12. package/dist/EpCard-DmkbiqF8.js +4 -0
  13. package/dist/EpCardLink-CZktIRDZ.js +4 -0
  14. package/dist/{EpCheckbox.vue_vue_type_script_setup_true_lang-Dqi62vJ8.js → EpCheckbox-D-AiG1k1.js} +7 -7
  15. package/dist/EpChip-CvPvgb7r.js +4 -0
  16. package/dist/EpCodeblock-CWJ6fozJ.js +4 -0
  17. package/dist/EpConclusion-B5-N829f.js +4 -0
  18. package/dist/EpContentSlider-CwCS1urD.js +4 -0
  19. package/dist/{EpDarkmode-CuVlLi72.js → EpDarkmode-DgXjweO7.js} +1 -1
  20. package/dist/EpDescription-CpkftJ_t.js +4 -0
  21. package/dist/EpDivider-Cm9VAuRM.js +4 -0
  22. package/dist/EpEdu-l9pEISFf.js +4 -0
  23. package/dist/EpFlex-C5fyq8lg.js +4 -0
  24. package/dist/EpFunnelChart-CH_6LUvo.js +4 -0
  25. package/dist/EpHeader-CCvORAE4.js +4 -0
  26. package/dist/EpHover-oFN3yCY9.js +4 -0
  27. package/dist/EpHoverCard-CtASruWi.js +4 -0
  28. package/dist/EpIcon-CbmGlHE2.js +4 -0
  29. package/dist/EpIframe-Dnb7aND_.js +4 -0
  30. package/dist/EpImg-DB5ZMjSu.js +4 -0
  31. package/dist/{EpInput-BKc_tU1_.js → EpInput-CaN-TCpG.js} +42 -42
  32. package/dist/EpInstructions-CaWQD2qB.js +4 -0
  33. package/dist/EpIntroduction-CI0_D2yu.js +4 -0
  34. package/dist/EpLineChart-LJX0c0Nf.js +4 -0
  35. package/dist/EpLink-DPB7Nepc.js +4 -0
  36. package/dist/EpLinkVersion-CKWqW5AF.js +4 -0
  37. package/dist/{EpList-B2x9zHps.js → EpList-DqsIwnA9.js} +1 -1
  38. package/dist/EpModal-B97mL5T-.js +4 -0
  39. package/dist/{EpNothing-D3fg3Krb.js → EpNothing-rOIFtbf1.js} +1 -1
  40. package/dist/EpObjective-rFX5IDy3.js +4 -0
  41. package/dist/EpPieChart-BS4qEe0K.js +4 -0
  42. package/dist/EpQuestion-D1jwZMyZ.js +4 -0
  43. package/dist/EpQuote-C4fI2kxZ.js +4 -0
  44. package/dist/EpRadio-mIf2ff8X.js +4 -0
  45. package/dist/EpRadioSummative-Bx66akYL.js +4 -0
  46. package/dist/EpReading-BFoNTxDy.js +4 -0
  47. package/dist/EpResource-8CZRcYtG.js +4 -0
  48. package/dist/EpScope-DTfD4VEM.js +4 -0
  49. package/dist/EpSection-CcxIByfH.js +4 -0
  50. package/dist/EpSectionCols-t1k3weXM.js +4 -0
  51. package/dist/EpSelect-C10jbOyP.js +33 -0
  52. package/dist/EpSkeleton-BlWjhOMG.js +4 -0
  53. package/dist/EpSoftware-BENDV3kt.js +4 -0
  54. package/dist/EpSpecificObjective-ByRW9R5i.js +4 -0
  55. package/dist/EpSpinner-C6KTvwwF.js +4 -0
  56. package/dist/EpStackedList-CyBiCT2q.js +4 -0
  57. package/dist/EpSummativeTable-7eMF30pz.js +4 -0
  58. package/dist/EpSvg-gHmfbp0I.js +4 -0
  59. package/dist/EpTable-hgRLqA3o.js +4 -0
  60. package/dist/EpTerm-DQhi12a3.js +4 -0
  61. package/dist/EpText-BVr0yeDd.js +4 -0
  62. package/dist/EpTimeLine-CqfJ9LEU.js +4 -0
  63. package/dist/EpVideo-cJCwDUcG.js +4 -0
  64. package/dist/EpVideoPanopto-CslIPs2L.js +4 -0
  65. package/dist/EpWordDef-DiIZxUFD.js +4 -0
  66. package/dist/components/basics/EpAvatar.vue.d.ts +35 -4
  67. package/dist/components/basics/EpBadge.vue.d.ts +28 -3
  68. package/dist/components/basics/EpBtn.vue.d.ts +38 -13
  69. package/dist/components/basics/EpCard.vue.d.ts +51 -14
  70. package/dist/components/basics/EpChip.vue.d.ts +38 -12
  71. package/dist/components/basics/EpDivider.vue.d.ts +34 -4
  72. package/dist/components/basics/EpFlex.vue.d.ts +2 -8
  73. package/dist/components/basics/EpHover.vue.d.ts +34 -12
  74. package/dist/components/basics/EpHoverCard.vue.d.ts +54 -18
  75. package/dist/components/basics/EpIcon.vue.d.ts +26 -3
  76. package/dist/components/basics/EpImg.vue.d.ts +39 -3
  77. package/dist/components/basics/EpList.vue.d.ts +11 -0
  78. package/dist/components/basics/EpListitem.vue.d.ts +45 -0
  79. package/dist/components/basics/EpSection.vue.d.ts +31 -10
  80. package/dist/components/basics/EpSectionCols.vue.d.ts +39 -11
  81. package/dist/components/basics/EpSpinner.vue.d.ts +29 -2
  82. package/dist/components/basics/EpStackedList.vue.d.ts +49 -7
  83. package/dist/components/basics/EpTable.vue.d.ts +18 -1
  84. package/dist/components/basics/EpText.vue.d.ts +33 -2
  85. package/dist/components/charts/EpBarChart.vue.d.ts +28 -2
  86. package/dist/components/charts/EpFunnelChart.vue.d.ts +35 -3
  87. package/dist/components/charts/EpLineChart.vue.d.ts +28 -2
  88. package/dist/components/charts/EpPieChart.vue.d.ts +31 -3
  89. package/dist/components/educationals/EpBranchingScenario.vue.d.ts +25 -2
  90. package/dist/components/educationals/EpCodeblock.vue.d.ts +33 -3
  91. package/dist/components/educationals/EpConclusion.vue.d.ts +25 -10
  92. package/dist/components/educationals/EpDescription.vue.d.ts +25 -10
  93. package/dist/components/educationals/EpEdu.vue.d.ts +37 -13
  94. package/dist/components/educationals/EpInstructions.vue.d.ts +23 -2
  95. package/dist/components/educationals/EpIntroduction.vue.d.ts +25 -10
  96. package/dist/components/educationals/EpObjective.vue.d.ts +25 -10
  97. package/dist/components/educationals/EpReading.vue.d.ts +50 -4
  98. package/dist/components/educationals/EpResource.vue.d.ts +24 -2
  99. package/dist/components/educationals/EpScope.vue.d.ts +19 -1
  100. package/dist/components/educationals/EpSpecificObjective.vue.d.ts +25 -2
  101. package/dist/components/forms/EpCheckbox.vue.d.ts +36 -5
  102. package/dist/components/forms/EpInput.vue.d.ts +44 -7
  103. package/dist/components/forms/EpRadio.vue.d.ts +39 -5
  104. package/dist/components/forms/EpRadioSummative.vue.d.ts +39 -5
  105. package/dist/components/forms/EpSelect.vue.d.ts +23 -12
  106. package/dist/components/forms/EpSwitch.vue.d.ts +58 -0
  107. package/dist/components/forms/EpTextarea.vue.d.ts +50 -7
  108. package/dist/components/forms/EpToggle.vue.d.ts +48 -7
  109. package/dist/components/interactions/Ep360Image.vue.d.ts +16 -0
  110. package/dist/components/interactions/Ep360Video.vue.d.ts +16 -0
  111. package/dist/components/interactions/EpAccordeon.vue.d.ts +34 -16
  112. package/dist/components/interactions/EpContentSlider.vue.d.ts +28 -2
  113. package/dist/components/interactions/EpDarkmode.vue.d.ts +3 -3
  114. package/dist/components/interactions/EpHotsPot.vue.d.ts +47 -0
  115. package/dist/components/interactions/EpModal.vue.d.ts +38 -13
  116. package/dist/components/interactions/EpQuestion.vue.d.ts +38 -2
  117. package/dist/components/interactions/EpSummativeTable.vue.d.ts +24 -2
  118. package/dist/components/interactions/EpTabs.vue.d.ts +1 -1
  119. package/dist/components/interactions/EpTooltip.vue.d.ts +51 -0
  120. package/dist/components/medias/EpAudio.vue.d.ts +30 -4
  121. package/dist/components/medias/EpCardLink.vue.d.ts +61 -0
  122. package/dist/components/medias/EpCarousel.vue.d.ts +32 -2
  123. package/dist/components/medias/EpIframe.vue.d.ts +28 -2
  124. package/dist/components/medias/EpKatex.vue.d.ts +24 -4
  125. package/dist/components/medias/EpLink.vue.d.ts +26 -2
  126. package/dist/components/medias/EpLinkVersion.vue.d.ts +29 -2
  127. package/dist/components/medias/EpLottieSvg.vue.d.ts +38 -144
  128. package/dist/components/medias/EpSoftware.vue.d.ts +36 -2
  129. package/dist/components/medias/EpSvg.vue.d.ts +24 -2
  130. package/dist/components/medias/EpTerm.vue.d.ts +41 -10
  131. package/dist/components/medias/EpTimeLine.vue.d.ts +19 -1
  132. package/dist/components/medias/EpVideo.vue.d.ts +28 -4
  133. package/dist/components/medias/EpVideoPanopto.vue.d.ts +28 -2
  134. package/dist/components/medias/EpWordDef.vue.d.ts +33 -2
  135. package/dist/components/signages/EpAlert.vue.d.ts +31 -12
  136. package/dist/components/signages/EpBadge.vue.d.ts +59 -0
  137. package/dist/components/signages/EpHeader.vue.d.ts +62 -19
  138. package/dist/components/signages/EpNothing.vue.d.ts +1 -1
  139. package/dist/components/signages/EpQuote.vue.d.ts +31 -10
  140. package/dist/components/signages/EpSkeleton.vue.d.ts +32 -3
  141. package/dist/components/tools/BgAudio.vue.d.ts +26 -4
  142. package/dist/components/tools/DisplayBox.vue.d.ts +9 -19
  143. package/dist/components/tools/SvgFilter.vue.d.ts +1 -1
  144. package/dist/components/tools/TimelineItem.vue.d.ts +28 -4
  145. package/dist/ep-lib-ts.js +44 -41
  146. package/dist/ep-lib-ts.umd.cjs +284 -284
  147. package/dist/{index-1vY3QtSb.js → index-BIs_9STK.js} +4060 -3874
  148. package/dist/{index-BkHXngnv.js → index-mAWa7blx.js} +6072 -5855
  149. package/dist/index.d.ts +5 -1
  150. package/dist/main.d.ts +1 -0
  151. package/dist/prism-EB5WECGI.js +1182 -0
  152. package/dist/three.module-laS36oD-.js +48903 -0
  153. package/dist/types/Answer.d.ts +1 -0
  154. package/dist/types/Component.d.ts +10 -0
  155. package/dist/types/Hover.d.ts +2 -2
  156. package/dist/types/Medias.d.ts +1 -0
  157. package/dist/types/StackedList.d.ts +10 -43
  158. package/package.json +30 -31
  159. package/src/components/basics/EpCard.vue +32 -11
  160. package/src/components/basics/EpHover.vue +3 -3
  161. package/src/components/basics/EpHoverCard.vue +14 -12
  162. package/src/components/basics/EpStackedList.vue +39 -32
  163. package/src/components/charts/EpFunnelChart.vue +1 -1
  164. package/src/components/charts/EpPieChart.vue +1 -1
  165. package/src/components/educationals/EpCodeblock.vue +1 -1
  166. package/src/components/educationals/EpEdu.vue +32 -14
  167. package/src/components/educationals/EpReading.vue +4 -2
  168. package/src/components/educationals/EpResource.vue +1 -1
  169. package/src/components/forms/EpSelect.vue +8 -3
  170. package/src/components/interactions/EpQuestion.vue +1 -1
  171. package/src/components/medias/EpAudio.vue +1 -1
  172. package/src/components/medias/EpCardLink.vue +77 -0
  173. package/src/components/medias/EpIframe.vue +1 -1
  174. package/src/components/medias/EpLink.vue +1 -1
  175. package/src/components/medias/EpTimeLine.vue +2 -2
  176. package/src/components/medias/EpVideo.vue +1 -1
  177. package/src/components/medias/EpVideoPanopto.vue +1 -1
  178. package/dist/App.vue.d.ts +0 -2
  179. package/dist/BgAudio-DezFnyKB.js +0 -4
  180. package/dist/DisplayBox-DYzeHzkr.js +0 -4
  181. package/dist/EpAlert-DdtU5nno.js +0 -4
  182. package/dist/EpAudio-vt4JUOf2.js +0 -4
  183. package/dist/EpAvatar-DTfkDxUP.js +0 -4
  184. package/dist/EpAvatar.vue_vue_type_script_setup_true_lang-IeQ9W4tD.js +0 -50
  185. package/dist/EpBadge-BSMtvAqC.js +0 -4
  186. package/dist/EpBarChart-BA3EqJ-Z.js +0 -4
  187. package/dist/EpBtn-B1xGgn2Y.js +0 -4
  188. package/dist/EpCard-CEjoqwN4.js +0 -4
  189. package/dist/EpCheckbox-Da_2WoCs.js +0 -4
  190. package/dist/EpChip-d8r-FDqu.js +0 -4
  191. package/dist/EpCodeblock-Cu1MOvmi.js +0 -4
  192. package/dist/EpConclusion-Dk_FFixG.js +0 -4
  193. package/dist/EpContentSlider-dx8Hu4OS.js +0 -4
  194. package/dist/EpDescription-B00PjQg0.js +0 -4
  195. package/dist/EpDivider-CukqZw1a.js +0 -4
  196. package/dist/EpEdu-B5N7RG49.js +0 -4
  197. package/dist/EpFlex-DAtWa--7.js +0 -4
  198. package/dist/EpFunnelChart-jn5C9tAB.js +0 -4
  199. package/dist/EpHeader-Cwx5Qb6Q.js +0 -4
  200. package/dist/EpHover-Kp8XbqYO.js +0 -4
  201. package/dist/EpHover.vue_vue_type_script_setup_true_lang-BxiamS7-.js +0 -36
  202. package/dist/EpHoverCard-DRRYl4MK.js +0 -84
  203. package/dist/EpIcon-DitBbcuQ.js +0 -4
  204. package/dist/EpIframe-C5c1K8RE.js +0 -4
  205. package/dist/EpImg-YPH6mMcR.js +0 -4
  206. package/dist/EpInstructions-D8kw_rwC.js +0 -4
  207. package/dist/EpIntroduction-B2d2vChC.js +0 -4
  208. package/dist/EpLineChart-BjlCf9dW.js +0 -4
  209. package/dist/EpLink-CXIYlycG.js +0 -4
  210. package/dist/EpLinkVersion-Dn_Tid-r.js +0 -4
  211. package/dist/EpModal-CaPOVdQK.js +0 -4
  212. package/dist/EpObjective-czDKm1c4.js +0 -4
  213. package/dist/EpPieChart-DuW7EBmx.js +0 -4
  214. package/dist/EpQuestion-BuIkR2Ae.js +0 -4
  215. package/dist/EpQuote-5FQFWcfv.js +0 -4
  216. package/dist/EpRadio-BnPZeKpP.js +0 -4
  217. package/dist/EpRadioSummative-AtVwjeQ-.js +0 -4
  218. package/dist/EpReading-s2TQVAZ_.js +0 -4
  219. package/dist/EpResource-Cxx1lwrs.js +0 -4
  220. package/dist/EpScope-CG9n9QnC.js +0 -4
  221. package/dist/EpSection-cDQVtX9A.js +0 -4
  222. package/dist/EpSectionCols-DsH_iEem.js +0 -4
  223. package/dist/EpSelect-kjH_wTXb.js +0 -32
  224. package/dist/EpSkeleton-BQG8jrs6.js +0 -4
  225. package/dist/EpSoftware-DR1d7ezZ.js +0 -4
  226. package/dist/EpSpecificObjective-BS1QMNrt.js +0 -4
  227. package/dist/EpSpinner-O3kZ_dUO.js +0 -4
  228. package/dist/EpStackedList-CTU_KKMZ.js +0 -81
  229. package/dist/EpSummativeTable-iudwhrUL.js +0 -4
  230. package/dist/EpSvg-Bnj4H9sA.js +0 -4
  231. package/dist/EpTable-Byza5VY-.js +0 -4
  232. package/dist/EpTerm-BkpUPK_G.js +0 -4
  233. package/dist/EpText-J0qcEorF.js +0 -4
  234. package/dist/EpTimeLine-Czscwhgg.js +0 -4
  235. package/dist/EpVideo-0w267ZqV.js +0 -4
  236. package/dist/EpVideoPanopto-CDy_LUMi.js +0 -4
  237. package/dist/EpWordDef-qWt87mhg.js +0 -4
  238. package/dist/menu.vue.d.ts +0 -2
  239. package/dist/pages/Basics.vue.d.ts +0 -2
  240. package/dist/pages/CurrentDev.vue.d.ts +0 -2
  241. package/dist/pages/Educationals.vue.d.ts +0 -2
  242. package/dist/pages/Forms.vue.d.ts +0 -2
  243. package/dist/pages/Home.vue.d.ts +0 -2
  244. package/dist/pages/Interactions.vue.d.ts +0 -2
  245. package/dist/pages/Medias.vue.d.ts +0 -2
  246. package/dist/pages/NicDev.vue.d.ts +0 -2
  247. package/dist/pages/Signages.vue.d.ts +0 -2
  248. package/dist/pages/basics/EpBadgeView.vue.d.ts +0 -2
  249. package/dist/pages/basics/EpBtnView.vue.d.ts +0 -2
  250. package/dist/pages/basics/EpCardView.vue.d.ts +0 -2
  251. package/dist/pages/basics/EpChipView.vue.d.ts +0 -2
  252. package/dist/pages/basics/EpFlexView.vue.d.ts +0 -2
  253. package/dist/pages/basics/EpHoverCardView.vue.d.ts +0 -2
  254. package/dist/pages/basics/EpIconView.vue.d.ts +0 -2
  255. package/dist/pages/basics/EpImgView.vue.d.ts +0 -2
  256. package/dist/pages/basics/EpSectionColsView.vue.d.ts +0 -2
  257. package/dist/pages/basics/EpSectionView.vue.d.ts +0 -2
  258. package/dist/pages/basics/EpStackedListView.vue.d.ts +0 -2
  259. package/dist/pages/basics/EpTableView.vue.d.ts +0 -2
  260. package/dist/pages/basics/EpTextView.vue.d.ts +0 -2
  261. package/dist/pages/charts/EpBarChartView.vue.d.ts +0 -2
  262. package/dist/pages/charts/EpFunnelChartView.vue.d.ts +0 -2
  263. package/dist/pages/charts/EpLineChartView.vue.d.ts +0 -2
  264. package/dist/pages/charts/EpPieChartView.vue.d.ts +0 -2
  265. package/dist/pages/educationals/EpBranchingScenarioView.vue.d.ts +0 -2
  266. package/dist/pages/educationals/EpCodeBlockView.vue.d.ts +0 -2
  267. package/dist/pages/educationals/EpConclusionView.vue.d.ts +0 -2
  268. package/dist/pages/educationals/EpDescriptionView.vue.d.ts +0 -2
  269. package/dist/pages/educationals/EpEduView.vue.d.ts +0 -2
  270. package/dist/pages/educationals/EpInstructionsView.vue.d.ts +0 -2
  271. package/dist/pages/educationals/EpIntroductionView.vue.d.ts +0 -2
  272. package/dist/pages/educationals/EpObjectiveView.vue.d.ts +0 -2
  273. package/dist/pages/educationals/EpReadingView.vue.d.ts +0 -2
  274. package/dist/pages/educationals/EpResourceView.vue.d.ts +0 -2
  275. package/dist/pages/educationals/EpScopeView.vue.d.ts +0 -2
  276. package/dist/pages/educationals/EpSpecificObjectiveView.vue.d.ts +0 -2
  277. package/dist/pages/interactions/Ep360ImageView.vue.d.ts +0 -2
  278. package/dist/pages/interactions/Ep360VideoView.vue.d.ts +0 -2
  279. package/dist/pages/interactions/EpAccordeonView.vue.d.ts +0 -2
  280. package/dist/pages/interactions/EpContentSliderView.vue.d.ts +0 -2
  281. package/dist/pages/interactions/EpModalView.vue.d.ts +0 -2
  282. package/dist/pages/interactions/EpQuestionView.vue.d.ts +0 -2
  283. package/dist/pages/interactions/EpSummativeTableView.vue.d.ts +0 -2
  284. package/dist/pages/medias/EpAudioView.vue.d.ts +0 -2
  285. package/dist/pages/medias/EpCarouselView.vue.d.ts +0 -2
  286. package/dist/pages/medias/EpIframeView.vue.d.ts +0 -2
  287. package/dist/pages/medias/EpKatexView.vue.d.ts +0 -2
  288. package/dist/pages/medias/EpLinkVersionView.vue.d.ts +0 -2
  289. package/dist/pages/medias/EpLinkView.vue.d.ts +0 -2
  290. package/dist/pages/medias/EpLottieSvgView.vue.d.ts +0 -2
  291. package/dist/pages/medias/EpSoftwareView.vue.d.ts +0 -2
  292. package/dist/pages/medias/EpSvgView.vue.d.ts +0 -2
  293. package/dist/pages/medias/EpTermView.vue.d.ts +0 -2
  294. package/dist/pages/medias/EpTimeLineView.vue.d.ts +0 -2
  295. package/dist/pages/medias/EpVideoPanoptoView.vue.d.ts +0 -2
  296. package/dist/pages/medias/EpVideoView.vue.d.ts +0 -2
  297. package/dist/pages/medias/EpWordDefView.vue.d.ts +0 -2
  298. package/dist/pages/signages/EpAlertView.vue.d.ts +0 -2
  299. package/dist/pages/signages/EpHeaderView.vue.d.ts +0 -2
  300. package/dist/pages/signages/EpQuoteView.vue.d.ts +0 -2
  301. package/dist/pages/signages/EpSkeletonView.vue.d.ts +0 -2
  302. package/dist/prism-CvcYxWXz.js +0 -1184
  303. package/dist/three.core-ChKHLxK7.js +0 -48675
  304. /package/dist/{ep-lib-ts.css → style.css} +0 -0
@@ -1,5 +1,6 @@
1
1
  import { TypeAlert } from './Alert';
2
2
  import { MediaVariants } from './Medias';
3
+
3
4
  interface ContentComponent {
4
5
  type?: string;
5
6
  data: {
@@ -0,0 +1,10 @@
1
+ export type EpComponent = "EpBtn" | "EpIcon" | "EpNothing";
2
+ export interface ContentComponents {
3
+ uid: string;
4
+ deletedAt?: Date | string | undefined;
5
+ type: EpComponent;
6
+ noMarginY?: boolean;
7
+ data: {
8
+ [key: string]: any;
9
+ };
10
+ }
@@ -1,3 +1,3 @@
1
1
  export type Animation = "" | "scale" | "translateY" | "translateX";
2
- export type Size = "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | "6xl";
3
- export type Color = "" | "white" | "black" | "primary" | "secondary" | "accent" | "error" | "warning" | "success" | "info" | "question" | "tip" | "primarydark" | "secondarydark" | "accentdark" | "errordark" | "warningdark" | "successdark" | "infodark" | "questiondark" | "tipdark" | "primarylight" | "secondarylight" | "accentlight" | "errorlight" | "warninglight" | "successlight" | "infolight" | "questionlight" | "tiplight";
2
+ export type TextSize = "text-sm" | "text-lg" | "text-xl" | "text-2xl" | "text-3xl" | "text-4xl" | "text-5xl" | "text-6xl";
3
+ export type MaxWidth = "max-w-xs" | "max-w-sm:" | "max-w-md" | "max-w-lg" | "max-w-xl" | "max-w-2xl";
@@ -1,4 +1,5 @@
1
1
  export declare const mediaVariants: {
2
+ neutral: string;
2
3
  base: string;
3
4
  primary: string;
4
5
  secondary: string;
@@ -1,52 +1,24 @@
1
+ import { ContentComponents } from './Component';
1
2
  type Color = "primary" | "secondary" | "accent" | "error" | "warning" | "success" | "info" | "question" | "tip";
2
3
  type Variant = "circle" | "square" | "rounded";
3
4
  type Size = "small" | "middle" | "big";
4
- type ButtonType = "base" | "primary" | "secondary" | "accent" | "error" | "warning" | "success" | "info";
5
5
  interface Avatar {
6
- src: string;
6
+ src?: string;
7
7
  alt: string;
8
- }
9
- interface Button {
10
- href: string;
11
- label: string;
12
- disabled?: boolean;
13
- }
14
- interface CheckBox {
15
- id?: string;
16
- label?: string;
17
- modelValue?: string | string[] | boolean;
18
- disabled?: boolean;
19
- readonly?: boolean;
20
- value?: string;
21
- }
22
- interface Icon {
23
- size?: string | number;
24
- viewBox?: string;
25
- iconPath: string;
26
- extraClass?: string;
8
+ name?: string;
27
9
  }
28
10
  export interface ListItem {
29
11
  uid?: string;
30
12
  avatar?: Avatar;
31
13
  title: string;
32
14
  description: string;
33
- button?: Button;
34
- checkbox?: CheckBox;
15
+ component?: ContentComponents;
35
16
  }
36
- export interface ItemStyle {
37
- avatar?: {
38
- color?: Color;
39
- size?: Size;
40
- variant?: Variant;
41
- name?: string;
42
- };
43
- cropped?: boolean;
44
- button?: {
45
- content: string;
46
- type?: ButtonType;
47
- };
48
- checkbox?: boolean;
49
- icon?: Icon;
17
+ export interface AvatarStyle {
18
+ color?: Color;
19
+ size?: Size;
20
+ variant?: Variant;
21
+ name?: string;
50
22
  }
51
23
  export declare const roundedType: {
52
24
  none: string;
@@ -54,10 +26,5 @@ export declare const roundedType: {
54
26
  middle: string;
55
27
  big: string;
56
28
  };
57
- type RoundedStyle = keyof typeof roundedType;
58
- export interface CustomStyle {
59
- border?: boolean;
60
- rounded?: RoundedStyle;
61
- restricted?: boolean;
62
- }
29
+ export type RoundedStyle = keyof typeof roundedType;
63
30
  export {};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ep-lib-ts",
3
3
  "private": false,
4
- "version": "1.0.37",
4
+ "version": "1.0.40",
5
5
  "files": [
6
6
  "dist",
7
7
  "src/components/"
@@ -26,40 +26,39 @@
26
26
  "preview": "vite preview"
27
27
  },
28
28
  "dependencies": {
29
- "@lottiefiles/dotlottie-vue": "0.5.6",
30
- "@mdi/js": "7.4.47",
31
- "@types/three": "0.173.0",
32
- "@vueuse/core": "12.7.0",
33
- "@wdns/vue-code-block": "2.3.5",
34
- "aframe": "1.6.0",
35
- "apexcharts": "4.4.0",
36
- "katex": "0.16.21",
37
- "markdown-it": "14.1.0",
38
- "postcss-cli": "11.0.0",
39
- "three": "0.173.0",
40
- "vee-validate": "4.15.0",
41
- "vue": "3.5.13",
42
- "vue-router": "4.5.0",
43
- "vue3-apexcharts": "1.8.0"
29
+ "@lottiefiles/dotlottie-vue": "^0.5.6",
30
+ "@mdi/js": "^7.4.47",
31
+ "@types/three": "^0.170.0",
32
+ "@vueuse/core": "^10.9.0",
33
+ "@wdns/vue-code-block": "^2.3.3",
34
+ "aframe": "^1.6.0",
35
+ "apexcharts": "3.53.0",
36
+ "katex": "^0.16.11",
37
+ "markdown-it": "^14.1.0",
38
+ "postcss-cli": "^11.0.0",
39
+ "three": "^0.170.0",
40
+ "vee-validate": "^4.13.2",
41
+ "vue": "^3.2.45",
42
+ "vue-router": "^4.4.5",
43
+ "vue3-apexcharts": "1.6.0"
44
44
  },
45
45
  "devDependencies": {
46
- "@tailwindcss/forms": "0.5.10",
47
- "@tailwindcss/postcss": "^4.0.7",
48
- "@types/katex": "0.16.7",
49
- "@types/markdown-it": "14.1.2",
50
- "@types/node": "22.13.4",
51
- "@vitejs/plugin-vue": "5.2.1",
52
- "autoprefixer": "10.4.20",
53
- "path": "0.12.7",
54
- "postcss": "8.5.2",
55
- "tailwindcss": "4.0.7",
56
- "typescript": "5.7.3",
57
- "vite": "6.1.0",
58
- "vite-plugin-dts": "4.5.0",
59
- "vue-tsc": "^2.2.2"
46
+ "@tailwindcss/forms": "^0.5.9",
47
+ "@types/katex": "^0.16.7",
48
+ "@types/markdown-it": "^14.1.2",
49
+ "@types/node": "^20.12.7",
50
+ "@vitejs/plugin-vue": "^5.1.3",
51
+ "autoprefixer": "^10.4.20",
52
+ "path": "^0.12.7",
53
+ "postcss": "^8.4.45",
54
+ "tailwindcss": "^3.4.11",
55
+ "typescript": "^5.6.2",
56
+ "vite": "^5.4.5",
57
+ "vite-plugin-dts": "^3.9.0",
58
+ "vue-tsc": "^2.2.4"
60
59
  },
61
60
  "peerDependencies": {
62
- "vue": "3.5.13"
61
+ "vue": "^3.2.45"
63
62
  },
64
63
  "engines": {
65
64
  "node": "20.x.x"
@@ -1,6 +1,7 @@
1
1
  <script setup lang="ts">
2
- import { toRefs, computed } from "vue";
2
+ import { toRefs, computed, useSlots, type Slots } from "vue";
3
3
  import EpIcon from './EpIcon.vue';
4
+ import EpSvg from '../medias/EpSvg.vue'
4
5
  import useColors from '../../composables/useColors'
5
6
  //types with capital letter, object styles in lowercase
6
7
  import { type Density, density_style } from "../../types/Card";
@@ -15,6 +16,8 @@ interface Props {
15
16
  src?: string | null;
16
17
  maxWidth?:string;
17
18
  density?:Density;
19
+ svg?:string;
20
+ isLink?:boolean;
18
21
  }
19
22
 
20
23
 
@@ -28,7 +31,8 @@ const props = withDefaults(defineProps<Props>(), {
28
31
  color: null,
29
32
  src:null,
30
33
  density:"default",
31
- maxWidth:"max-w-full"
34
+ maxWidth:"max-w-full",
35
+ isLink:false
32
36
  })
33
37
 
34
38
  //styles card
@@ -41,9 +45,16 @@ const borderColor = computed(() => {
41
45
  return `border solid ${useColors('border', props.color)}`
42
46
  }
43
47
  if (props.outlined) {
44
- return 'border solid border-primary dark:border-primary'
48
+ return 'border solid border-primary dark:border-white'
45
49
  }
46
- return 'dark:border dark:solid dark:border-primary'
50
+ return 'dark:border dark:solid dark:border-white'
51
+ })
52
+
53
+ const isLinkStyle = computed(()=> {
54
+ if(props.isLink){
55
+ return 'dark:hover:border-white hover:border-primary hover:border hover:border-2 rounded-md cursor-pointer'
56
+ }
57
+ return ''
47
58
  })
48
59
 
49
60
  const bgColor = computed(() => {
@@ -73,19 +84,29 @@ const stylesCard = computed(()=> {
73
84
  ${props.maxWidth}
74
85
  rounded-md
75
86
  dark:bg-dark
76
- datk:text-white
77
- my-4 `
87
+ dark:text-white
88
+ `
78
89
  })
79
90
 
80
91
 
81
- const { title, subtitle, icon, src } = toRefs(props)
92
+ const { title, subtitle, icon, src, svg } = toRefs(props)
93
+
94
+ const slots: Slots = useSlots();
95
+
96
+ const hasContent = computed(() => {
97
+ return !!slots.default || !!props.title || !!props.subtitle || !!props.icon;
98
+ });
82
99
 
83
100
  </script>
84
101
  <template>
85
- <div :class="`${stylesCard} `">
86
- <img v-if="src" :src="src" class="w-full rounded-t-md" alt="header card">
87
- <div :class="density_class">
88
- <div v-if="title || subtitle" class="mb-2 flex items-center justify-between dark:text-white">
102
+ <div :class="`${stylesCard} ${isLinkStyle}`">
103
+ <img v-if="src" :src="src" :class="`w-full ${hasContent ? 'rounded-t-md':'rounded-md'}`" alt="header card">
104
+ <div v-if="!src && svg" class="w-full rounded-t-md">
105
+ <EpSvg :content="svg"/>
106
+ </div>
107
+
108
+ <div :class="density_class" v-if="hasContent">
109
+ <div v-if="title || subtitle || icon" class="mb-2 flex items-center justify-between dark:text-white">
89
110
  <div>
90
111
  <h3 class="text-2xl dark:text-white font-bold">{{ title }}</h3>
91
112
  <h4 :class="`text-xs dark:text-white ${subTitleText}`">{{ subtitle }}</h4>
@@ -3,7 +3,7 @@
3
3
  import useColors from '../../composables/useColors'
4
4
  import { useRenderText } from '../../composables/useRenderText';
5
5
 
6
- import { Color, Animation, Size } from "../../types/Hover";
6
+ import { Animation, TextSize } from "../../types/Hover";
7
7
 
8
8
  interface Props {
9
9
  bgColor?: string;
@@ -11,7 +11,7 @@
11
11
  text?: string;
12
12
  animation?:Animation;
13
13
  seeThrough?: boolean;
14
- textSize?: Size;
14
+ textSize?: TextSize;
15
15
  }
16
16
 
17
17
  const props = withDefaults(defineProps<Props>(), {
@@ -35,7 +35,7 @@
35
35
  }
36
36
 
37
37
  let opacity = (props.seeThrough)? "group-hover:opacity-90" : "group-hover:opacity-100";
38
- let textSize = (props.textSize)? `text-${props.textSize}` : "text-md";
38
+ let textSize = (props.textSize)? props.textSize : "";
39
39
 
40
40
  return css + ' ' + opacity + ' ' + textSize;
41
41
  })
@@ -1,12 +1,13 @@
1
1
  <script lang="ts" setup>
2
- import { computed, toRefs } from 'vue';
2
+ import { computed, toRefs, useSlots, type Slots } from 'vue';
3
3
  import EpHover from './EpHover.vue';
4
4
  import EpIcon from './EpIcon.vue';
5
5
  import useColors from '../../composables/useColors'
6
+
6
7
  //types with capital letter, object styles in lowercase
7
8
  import { type Density, density_style } from "../../types/Card";
8
9
 
9
- import { Color, Animation, Size } from "../../types/Hover";
10
+ import type { Animation, TextSize, MaxWidth } from "../../types/Hover";
10
11
 
11
12
  interface Props {
12
13
  title?: string | null;
@@ -16,14 +17,13 @@ interface Props {
16
17
  icon?: string | null;
17
18
  color?: string | null;
18
19
  src?: string | null;
19
- maxWidth?:string;
20
+ maxWidth?:MaxWidth;
20
21
  density?:Density;
21
-
22
22
  hoverContent: string;
23
23
  hoverBg?: string;
24
24
  hoverAnimation?: Animation;
25
25
  seeThrough?: boolean;
26
- textSize?: Size;
26
+ textSize?: TextSize;
27
27
  hoverColor?: string;
28
28
  }
29
29
 
@@ -38,8 +38,7 @@ const props = withDefaults(defineProps<Props>(), {
38
38
  color: null,
39
39
  src:null,
40
40
  density:"default",
41
- maxWidth:"max-w-4xl",
42
-
41
+ maxWidth:"max-w-xl",
43
42
  hoverBg: "",
44
43
  hoverAnimation: "translateY"
45
44
  })
@@ -86,23 +85,26 @@ const stylesCard = computed(()=> {
86
85
  ${props.maxWidth}
87
86
  rounded-md
88
87
  dark:bg-dark
89
- dark:text-white
90
- my-4 `
88
+ dark:text-white`
91
89
  })
92
90
 
93
91
 
94
92
  const { title, subtitle, icon, src, hoverContent } = toRefs(props)
95
93
 
94
+ const slots: Slots = useSlots();
95
+
96
+ const hasContent = computed(() => {
97
+ return !!slots.default || !!props.title || !!props.subtitle;
98
+ });
96
99
 
97
100
  </script>
98
101
 
99
102
  <template>
100
-
101
103
  <div :class="`${stylesCard} mx-auto`">
102
104
  <EpHover :textColor="hoverColor" :textSize="textSize" :seeThrough="seeThrough" :bgColor="hoverBg" :animation="hoverAnimation" :text="hoverContent" v-if="src && hoverContent">
103
- <img :src="src" class="w-full rounded-t-md" alt="header card">
105
+ <img :src="src" :class="`w-full ${hasContent ? 'rounded-t-md':'rounded-md'}`" alt="header card">
104
106
  </EpHover>
105
- <div :class="density_class">
107
+ <div :class="density_class" v-if="hasContent">
106
108
  <div v-if="title || subtitle" class="mb-2 flex items-center justify-between dark:text-white">
107
109
  <div>
108
110
  <h3 class="text-2xl dark:text-white font-bold">{{ title }}</h3>
@@ -1,70 +1,77 @@
1
1
  <script setup lang="ts">
2
- import { computed } from 'vue';
2
+ import { computed, defineAsyncComponent } from 'vue';
3
3
  import EpAvatar from './EpAvatar.vue';
4
4
  import { useRenderText } from '../../composables/useRenderText';
5
- import EpBtn from './EpBtn.vue';
6
- import EpCheckbox from '../forms/EpCheckbox.vue';
7
- import EpIcon from './EpIcon.vue';
5
+ import type { EpComponent } from '../../types/Component';
8
6
 
9
7
  // Importing the necessary interfaces for the code
10
- import { type ListItem, type ItemStyle, roundedType, type CustomStyle } from '../../types/StackedList';
8
+ import { type ListItem, type AvatarStyle, type RoundedStyle, roundedType } from '../../types/StackedList';
9
+
11
10
 
12
11
  // Managing the props
13
12
  interface Props {
14
13
  elements: ListItem[];
15
- itemStyle?: ItemStyle;
16
- customStyle?: CustomStyle;
14
+ border?:boolean;
15
+ rounded?:RoundedStyle;
16
+ restricted?:boolean;
17
+ cropped?:boolean;
18
+ avatarStyle?: AvatarStyle;
17
19
  }
18
20
 
19
21
  const props = withDefaults(defineProps<Props>(),{
20
22
  elements: () => [],
21
- itemStyle: () => { return {
22
- cropped: false,
23
- checkbox: false,
24
- } },
25
- customStyle: () => {
26
- return {
27
- border: true,
28
- rounded: "small",
29
- restricted: false
30
- }
31
- }
23
+ avatarStyle: () => { return {
24
+ size:"middle"
25
+ }},
26
+ border:true,
27
+ rounded:"small",
28
+ restricted:false,
29
+ cropped:false
32
30
  });
33
31
 
34
32
 
35
33
  // The style of the wrapper div
36
34
  const className = computed(() => {
37
-
38
- const border = (props.customStyle.border === false)? 'border-0' : 'border';
39
- const rounded = roundedType[(props.customStyle.rounded)? props.customStyle.rounded : 'small'];
40
- const padding = (props.customStyle.restricted)? 'p-0' : 'p-4';
41
-
35
+ const border = (props.border === false)? 'border-0' : 'border';
36
+ const rounded = roundedType[(props.rounded)? props.rounded : 'small'];
37
+ const padding = (props.restricted)? 'p-0' : 'p-4';
42
38
  return `${border} ${rounded} ${padding}`;
43
39
  })
44
40
 
45
41
 
46
42
  // The style of the list elements
47
- const elementSpacing = computed(() => (props.customStyle.restricted)? 'p-6' : 'mx-6 py-6');
43
+ const elementSpacing = computed(() => (props.restricted)? 'p-6' : 'mx-6 py-6');
48
44
 
49
- const elementGrid = computed(() => (props.itemStyle.button || props.itemStyle.checkbox || props.itemStyle.icon)? 'grid-cols-11' : 'grid-cols-7');
45
+ const elementGrid = (element: Record<string, any>|undefined) => {
46
+ return element?'grid-cols-11' : 'grid-cols-7'
47
+ }
48
+
49
+ //get Component asyncComponent
50
+ const getCompontent = (name:EpComponent|undefined)=> {
51
+ if(!name){
52
+ return defineAsyncComponent(()=>import('../signages/EpNothing.vue'))
53
+ }
54
+ //!IMPORT IN SAME FOLDER PATH!! EpIcon and EpBtn
55
+ return defineAsyncComponent(()=>import(/* @vite-ignore */`./${name}.vue`))
56
+ }
50
57
 
51
58
  </script>
52
59
 
53
60
  <template>
54
61
 
55
62
  <div :class="`${className} border-gray-200 flex flex-col dark:border-slate-700 dark:bg-slate-900 lg:mx-28`">
56
- <li v-for="elem in elements" :key="elements.indexOf(elem)" :class="`${(elements.indexOf(elem) !== 0)? 'border-t' : ''} list-none ${elementSpacing} grid ${elementGrid} justify-items-center items-center border-gray-200 dark:border-slate-700`">
57
- <EpAvatar v-if="elem.avatar" :src="elem.avatar?.src" :alt="elem.avatar?.alt" v-bind="itemStyle.avatar" class="col-span-2" />
63
+ <li v-for="elem in elements" :key="elements.indexOf(elem)" :class="`${(elements.indexOf(elem) !== 0)? 'border-t' : ''} list-none ${elementSpacing} grid grid-cols-11 justify-items-center items-center border-gray-200 dark:border-slate-700`">
64
+ <EpAvatar v-if="elem.avatar" :name="elem.avatar?.name" :src="elem.avatar?.src" :alt="elem.avatar?.alt" v-bind="avatarStyle" class="col-span-2" />
58
65
  <div class="col-span-5 justify-self-start">
59
66
  <h3 class="font-semibold">{{ elem.title }}</h3>
60
- <div :class="`${(itemStyle.cropped)? 'line-clamp-3': ''}`" v-html="useRenderText(elem.description)"></div>
67
+ <div :class="`${(cropped)? 'line-clamp-3': ''}`" v-html="useRenderText(elem.description)"></div>
61
68
  </div>
62
- <div v-if="itemStyle.button || itemStyle.checkbox || itemStyle.icon" class="flex gap-2 items-center col-span-4 justify-self-auto">
69
+ <div v-if="elem.component" class="flex gap-2 items-center col-span-4 justify-self-auto">
63
70
 
64
71
  <!--update component type-->
65
- <EpBtn v-if="itemStyle.button" :type="`${(itemStyle.button.type)? itemStyle.button.type : 'base'}`" v-bind="elem.button" :rounded="true">{{ itemStyle.button.content }}</EpBtn>
66
- <EpCheckbox v-if="itemStyle.checkbox" v-bind="elem.checkbox" />
67
- <EpIcon v-if="itemStyle.icon" v-bind="itemStyle.icon" />
72
+ <Component :is="getCompontent(elem.component.type)" v-bind="{...elem.component.data}">
73
+ {{ elem.component.data.content }}
74
+ </Component>
68
75
  </div>
69
76
  </li>
70
77
  </div>
@@ -39,7 +39,7 @@ interface Props {
39
39
 
40
40
  const props = withDefaults(defineProps<Props>(), {
41
41
  center: true,
42
- type: 'base',
42
+ type: 'neutral',
43
43
  width: "800",
44
44
  height: 350,
45
45
  isFunnel: true,
@@ -41,7 +41,7 @@ interface Props {
41
41
 
42
42
  const props = withDefaults(defineProps<Props>(), {
43
43
  center: true,
44
- type:'base',
44
+ type:'neutral',
45
45
  width:"500",
46
46
  dataNoDisponible:"Data no disponible"
47
47
 
@@ -6,7 +6,7 @@
6
6
  import { computed} from "vue";
7
7
  import { ref } from "vue";
8
8
 
9
- type Langue = "javascript"|"css"|"html"|"php"|"json"|"typescript";
9
+ type Langue = "javascript"|"css"|"html"|"php"|"json"|"typescript"|"python"|"xml";
10
10
 
11
11
  interface Props {
12
12
  code?: string;
@@ -23,9 +23,9 @@ interface Props {
23
23
 
24
24
  const props = withDefaults(defineProps<Props>(), {
25
25
  title: null,
26
- type: "base",
26
+ type: "neutral",
27
27
  hideIcon: false,
28
- flat: false,
28
+ flat: true,
29
29
  labelIntentions: "",
30
30
  });
31
31
 
@@ -48,24 +48,43 @@ const renderIcon = computed(() => {
48
48
  });
49
49
 
50
50
  const topBarStyle = computed(() => {
51
- return `${mediaVariants[props.type]} text-left px-5 py-2 ${
51
+ return `${mediaVariants[props.type]} text-left ${
52
52
  props.flat ? "" : "rounded-t-md"
53
53
  } flex justify-between items-center `;
54
54
  });
55
55
 
56
56
  const bottomBarStyle = computed(() => {
57
- return `${mediaVariants[props.type]} text-right pr-5`;
57
+ return `${mediaVariants[props.type]} text-right`;
58
58
  });
59
59
 
60
+ const paddingTopStyle = computed(()=> {
61
+ if(props.type != "neutral"){
62
+ return `px-5 py-2`
63
+ }
64
+ })
65
+
66
+ const paddingBottomStyle = computed(()=> {
67
+ if(props.type != "neutral"){
68
+ return `pr-5`
69
+ }
70
+ })
71
+ const boxPaddingStyle = computed(()=> {
72
+ if(props.type != "neutral"){
73
+ return `px-5`
74
+ }
75
+ })
76
+
60
77
  const containerStyle = computed(() => {
61
78
  if (hasActions.value || hasIntentions.value || props.title) {
62
- return `rounded-lg overflow-hidden ${
79
+ return ` overflow-hidden ${
63
80
  props.flat ? "" : "shadow-md"
64
- } flex flex-col justify-between h-full`;
81
+ } flex flex-col justify-start h-full`;
65
82
  }
66
83
  return `flex flex-col justify-between`;
67
84
  });
68
85
 
86
+
87
+
69
88
  // type, taxonomyLevel, courseCode, courseTitle, title, subtitle, height, src, color, synchrone
70
89
 
71
90
  const { title, hideIcon } = toRefs(props);
@@ -74,34 +93,33 @@ const { title, hideIcon } = toRefs(props);
74
93
  <template>
75
94
  <div :class="containerStyle">
76
95
  <div
77
- :class="`${topBarStyle}`"
78
- class="dark:base-dark"
96
+ :class="`${topBarStyle} ${paddingTopStyle} dark:base-dark`"
79
97
  v-if="title || mandateLevel"
80
98
  >
81
99
  <!-- <EpIcon :size="24" :icon-path="mdiBookOpenVariant"></EpIcon> -->
82
100
  <h3>
83
- <EpIcon v-if="!hideIcon" :iconPath="renderIcon" size="24"></EpIcon>
101
+ <EpIcon v-if="!hideIcon" :iconPath="renderIcon" size="24" class="mr-2"></EpIcon>
84
102
  <span class="font-bold align-middle">{{ title }}</span>
85
103
  </h3>
86
104
  <EpScope v-if="mandateLevel" :mandateLevel="mandateLevel"></EpScope>
87
105
  </div>
88
- <div class="px-5 dark:base-dark dark:text-white">
89
- <div class="py-2" v-if="hasIntentions">
106
+ <div :class="`${boxPaddingStyle} dark:base-dark dark:text-white`">
107
+ <div class="py-4" v-if="hasIntentions">
90
108
  <!-- <EpIcon :size="24" :icon-path="mdiInformationOutline"></EpIcon> -->
91
109
  <h4
92
110
  v-if="labelIntentions"
93
- class="font-semibold mb-2 text-sm uppercase tracking-wide text-gray-500 dark:text-white"
111
+ class="font-light text-sm pb-1 tracking-wide dark:text-white"
94
112
  >
95
113
  {{ labelIntentions }}
96
114
  </h4>
97
115
  <slot name="intentions"></slot>
98
116
  <EpDivider />
99
117
  </div>
100
- <div class="py-2">
118
+ <div class="pt-2">
101
119
  <slot name="content"></slot>
102
120
  </div>
103
121
  </div>
104
- <div :class="bottomBarStyle" class="dark:base-dark" v-if="hasActions">
122
+ <div :class="`${bottomBarStyle} ${paddingBottomStyle}`" class="dark:base-dark" v-if="hasActions">
105
123
  <slot name="actions"></slot>
106
124
  </div>
107
125
  </div>
@@ -45,7 +45,7 @@ const props = withDefaults(defineProps<Props>(), {
45
45
  icon: "mdiBookmarkBox",
46
46
  hideCover: false,
47
47
  compact: false,
48
- type:"base",
48
+ type:"neutral",
49
49
  hideIcon:false,
50
50
  labelIn:"dans",
51
51
  labelRead:"Lire",
@@ -152,7 +152,9 @@ const errorImg = (event:Event)=>{
152
152
  </div>
153
153
  </template>
154
154
  <template #actions>
155
- <EpBtn :color="type=='base'?'text-gray-700':'text-white dark:text-black'" :type="type" :href="url" v-if="url">{{labelRead}}</EpBtn>
155
+ <EpBtn text :href="url" v-if="url" type="primary">
156
+ <EpIcon :size="20" :icon-path="mdiOpenInNew" ></EpIcon> {{labelRead}}
157
+ </EpBtn>
156
158
  </template>
157
159
  </EpEdu>
158
160
  </div>
@@ -11,7 +11,7 @@ interface Props {
11
11
  }
12
12
 
13
13
  const props = withDefaults(defineProps<Props>(), {
14
- type:'base'
14
+ type:'neutral'
15
15
  })
16
16
 
17
17
  const resourceInfo = computed(()=>{