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.
- package/dist/BgAudio-o-6UyPLQ.js +4 -0
- package/dist/DisplayBox-kNQglpGH.js +4 -0
- package/dist/{Ep360Image-BZpa7qLl.js → Ep360Image-Dmwx7NrY.js} +1 -1
- package/dist/{Ep360Video-Wy_YWl7-.js → Ep360Video-b_stvC2Z.js} +1 -1
- package/dist/EpAlert-DyFkfcBY.js +4 -0
- package/dist/EpAudio-D33uLLKW.js +4 -0
- package/dist/EpAvatar-VKpJzHex.js +4 -0
- package/dist/EpBadge-BZKe8gkM.js +4 -0
- package/dist/EpBarChart-DSbJgjP4.js +4 -0
- package/dist/{EpBranchingScenario-5sbzBXZ0.js → EpBranchingScenario-HmQ5tqNL.js} +11 -11
- package/dist/EpBtn-eQgJ7t7X.js +4 -0
- package/dist/EpCard-DmkbiqF8.js +4 -0
- package/dist/EpCardLink-CZktIRDZ.js +4 -0
- package/dist/{EpCheckbox.vue_vue_type_script_setup_true_lang-Dqi62vJ8.js → EpCheckbox-D-AiG1k1.js} +7 -7
- package/dist/EpChip-CvPvgb7r.js +4 -0
- package/dist/EpCodeblock-CWJ6fozJ.js +4 -0
- package/dist/EpConclusion-B5-N829f.js +4 -0
- package/dist/EpContentSlider-CwCS1urD.js +4 -0
- package/dist/{EpDarkmode-CuVlLi72.js → EpDarkmode-DgXjweO7.js} +1 -1
- package/dist/EpDescription-CpkftJ_t.js +4 -0
- package/dist/EpDivider-Cm9VAuRM.js +4 -0
- package/dist/EpEdu-l9pEISFf.js +4 -0
- package/dist/EpFlex-C5fyq8lg.js +4 -0
- package/dist/EpFunnelChart-CH_6LUvo.js +4 -0
- package/dist/EpHeader-CCvORAE4.js +4 -0
- package/dist/EpHover-oFN3yCY9.js +4 -0
- package/dist/EpHoverCard-CtASruWi.js +4 -0
- package/dist/EpIcon-CbmGlHE2.js +4 -0
- package/dist/EpIframe-Dnb7aND_.js +4 -0
- package/dist/EpImg-DB5ZMjSu.js +4 -0
- package/dist/{EpInput-BKc_tU1_.js → EpInput-CaN-TCpG.js} +42 -42
- package/dist/EpInstructions-CaWQD2qB.js +4 -0
- package/dist/EpIntroduction-CI0_D2yu.js +4 -0
- package/dist/EpLineChart-LJX0c0Nf.js +4 -0
- package/dist/EpLink-DPB7Nepc.js +4 -0
- package/dist/EpLinkVersion-CKWqW5AF.js +4 -0
- package/dist/{EpList-B2x9zHps.js → EpList-DqsIwnA9.js} +1 -1
- package/dist/EpModal-B97mL5T-.js +4 -0
- package/dist/{EpNothing-D3fg3Krb.js → EpNothing-rOIFtbf1.js} +1 -1
- package/dist/EpObjective-rFX5IDy3.js +4 -0
- package/dist/EpPieChart-BS4qEe0K.js +4 -0
- package/dist/EpQuestion-D1jwZMyZ.js +4 -0
- package/dist/EpQuote-C4fI2kxZ.js +4 -0
- package/dist/EpRadio-mIf2ff8X.js +4 -0
- package/dist/EpRadioSummative-Bx66akYL.js +4 -0
- package/dist/EpReading-BFoNTxDy.js +4 -0
- package/dist/EpResource-8CZRcYtG.js +4 -0
- package/dist/EpScope-DTfD4VEM.js +4 -0
- package/dist/EpSection-CcxIByfH.js +4 -0
- package/dist/EpSectionCols-t1k3weXM.js +4 -0
- package/dist/EpSelect-C10jbOyP.js +33 -0
- package/dist/EpSkeleton-BlWjhOMG.js +4 -0
- package/dist/EpSoftware-BENDV3kt.js +4 -0
- package/dist/EpSpecificObjective-ByRW9R5i.js +4 -0
- package/dist/EpSpinner-C6KTvwwF.js +4 -0
- package/dist/EpStackedList-CyBiCT2q.js +4 -0
- package/dist/EpSummativeTable-7eMF30pz.js +4 -0
- package/dist/EpSvg-gHmfbp0I.js +4 -0
- package/dist/EpTable-hgRLqA3o.js +4 -0
- package/dist/EpTerm-DQhi12a3.js +4 -0
- package/dist/EpText-BVr0yeDd.js +4 -0
- package/dist/EpTimeLine-CqfJ9LEU.js +4 -0
- package/dist/EpVideo-cJCwDUcG.js +4 -0
- package/dist/EpVideoPanopto-CslIPs2L.js +4 -0
- package/dist/EpWordDef-DiIZxUFD.js +4 -0
- package/dist/components/basics/EpAvatar.vue.d.ts +35 -4
- package/dist/components/basics/EpBadge.vue.d.ts +28 -3
- package/dist/components/basics/EpBtn.vue.d.ts +38 -13
- package/dist/components/basics/EpCard.vue.d.ts +51 -14
- package/dist/components/basics/EpChip.vue.d.ts +38 -12
- package/dist/components/basics/EpDivider.vue.d.ts +34 -4
- package/dist/components/basics/EpFlex.vue.d.ts +2 -8
- package/dist/components/basics/EpHover.vue.d.ts +34 -12
- package/dist/components/basics/EpHoverCard.vue.d.ts +54 -18
- package/dist/components/basics/EpIcon.vue.d.ts +26 -3
- package/dist/components/basics/EpImg.vue.d.ts +39 -3
- package/dist/components/basics/EpList.vue.d.ts +11 -0
- package/dist/components/basics/EpListitem.vue.d.ts +45 -0
- package/dist/components/basics/EpSection.vue.d.ts +31 -10
- package/dist/components/basics/EpSectionCols.vue.d.ts +39 -11
- package/dist/components/basics/EpSpinner.vue.d.ts +29 -2
- package/dist/components/basics/EpStackedList.vue.d.ts +49 -7
- package/dist/components/basics/EpTable.vue.d.ts +18 -1
- package/dist/components/basics/EpText.vue.d.ts +33 -2
- package/dist/components/charts/EpBarChart.vue.d.ts +28 -2
- package/dist/components/charts/EpFunnelChart.vue.d.ts +35 -3
- package/dist/components/charts/EpLineChart.vue.d.ts +28 -2
- package/dist/components/charts/EpPieChart.vue.d.ts +31 -3
- package/dist/components/educationals/EpBranchingScenario.vue.d.ts +25 -2
- package/dist/components/educationals/EpCodeblock.vue.d.ts +33 -3
- package/dist/components/educationals/EpConclusion.vue.d.ts +25 -10
- package/dist/components/educationals/EpDescription.vue.d.ts +25 -10
- package/dist/components/educationals/EpEdu.vue.d.ts +37 -13
- package/dist/components/educationals/EpInstructions.vue.d.ts +23 -2
- package/dist/components/educationals/EpIntroduction.vue.d.ts +25 -10
- package/dist/components/educationals/EpObjective.vue.d.ts +25 -10
- package/dist/components/educationals/EpReading.vue.d.ts +50 -4
- package/dist/components/educationals/EpResource.vue.d.ts +24 -2
- package/dist/components/educationals/EpScope.vue.d.ts +19 -1
- package/dist/components/educationals/EpSpecificObjective.vue.d.ts +25 -2
- package/dist/components/forms/EpCheckbox.vue.d.ts +36 -5
- package/dist/components/forms/EpInput.vue.d.ts +44 -7
- package/dist/components/forms/EpRadio.vue.d.ts +39 -5
- package/dist/components/forms/EpRadioSummative.vue.d.ts +39 -5
- package/dist/components/forms/EpSelect.vue.d.ts +23 -12
- package/dist/components/forms/EpSwitch.vue.d.ts +58 -0
- package/dist/components/forms/EpTextarea.vue.d.ts +50 -7
- package/dist/components/forms/EpToggle.vue.d.ts +48 -7
- package/dist/components/interactions/Ep360Image.vue.d.ts +16 -0
- package/dist/components/interactions/Ep360Video.vue.d.ts +16 -0
- package/dist/components/interactions/EpAccordeon.vue.d.ts +34 -16
- package/dist/components/interactions/EpContentSlider.vue.d.ts +28 -2
- package/dist/components/interactions/EpDarkmode.vue.d.ts +3 -3
- package/dist/components/interactions/EpHotsPot.vue.d.ts +47 -0
- package/dist/components/interactions/EpModal.vue.d.ts +38 -13
- package/dist/components/interactions/EpQuestion.vue.d.ts +38 -2
- package/dist/components/interactions/EpSummativeTable.vue.d.ts +24 -2
- package/dist/components/interactions/EpTabs.vue.d.ts +1 -1
- package/dist/components/interactions/EpTooltip.vue.d.ts +51 -0
- package/dist/components/medias/EpAudio.vue.d.ts +30 -4
- package/dist/components/medias/EpCardLink.vue.d.ts +61 -0
- package/dist/components/medias/EpCarousel.vue.d.ts +32 -2
- package/dist/components/medias/EpIframe.vue.d.ts +28 -2
- package/dist/components/medias/EpKatex.vue.d.ts +24 -4
- package/dist/components/medias/EpLink.vue.d.ts +26 -2
- package/dist/components/medias/EpLinkVersion.vue.d.ts +29 -2
- package/dist/components/medias/EpLottieSvg.vue.d.ts +38 -144
- package/dist/components/medias/EpSoftware.vue.d.ts +36 -2
- package/dist/components/medias/EpSvg.vue.d.ts +24 -2
- package/dist/components/medias/EpTerm.vue.d.ts +41 -10
- package/dist/components/medias/EpTimeLine.vue.d.ts +19 -1
- package/dist/components/medias/EpVideo.vue.d.ts +28 -4
- package/dist/components/medias/EpVideoPanopto.vue.d.ts +28 -2
- package/dist/components/medias/EpWordDef.vue.d.ts +33 -2
- package/dist/components/signages/EpAlert.vue.d.ts +31 -12
- package/dist/components/signages/EpBadge.vue.d.ts +59 -0
- package/dist/components/signages/EpHeader.vue.d.ts +62 -19
- package/dist/components/signages/EpNothing.vue.d.ts +1 -1
- package/dist/components/signages/EpQuote.vue.d.ts +31 -10
- package/dist/components/signages/EpSkeleton.vue.d.ts +32 -3
- package/dist/components/tools/BgAudio.vue.d.ts +26 -4
- package/dist/components/tools/DisplayBox.vue.d.ts +9 -19
- package/dist/components/tools/SvgFilter.vue.d.ts +1 -1
- package/dist/components/tools/TimelineItem.vue.d.ts +28 -4
- package/dist/ep-lib-ts.js +44 -41
- package/dist/ep-lib-ts.umd.cjs +284 -284
- package/dist/{index-1vY3QtSb.js → index-BIs_9STK.js} +4060 -3874
- package/dist/{index-BkHXngnv.js → index-mAWa7blx.js} +6072 -5855
- package/dist/index.d.ts +5 -1
- package/dist/main.d.ts +1 -0
- package/dist/prism-EB5WECGI.js +1182 -0
- package/dist/three.module-laS36oD-.js +48903 -0
- package/dist/types/Answer.d.ts +1 -0
- package/dist/types/Component.d.ts +10 -0
- package/dist/types/Hover.d.ts +2 -2
- package/dist/types/Medias.d.ts +1 -0
- package/dist/types/StackedList.d.ts +10 -43
- package/package.json +30 -31
- package/src/components/basics/EpCard.vue +32 -11
- package/src/components/basics/EpHover.vue +3 -3
- package/src/components/basics/EpHoverCard.vue +14 -12
- package/src/components/basics/EpStackedList.vue +39 -32
- package/src/components/charts/EpFunnelChart.vue +1 -1
- package/src/components/charts/EpPieChart.vue +1 -1
- package/src/components/educationals/EpCodeblock.vue +1 -1
- package/src/components/educationals/EpEdu.vue +32 -14
- package/src/components/educationals/EpReading.vue +4 -2
- package/src/components/educationals/EpResource.vue +1 -1
- package/src/components/forms/EpSelect.vue +8 -3
- package/src/components/interactions/EpQuestion.vue +1 -1
- package/src/components/medias/EpAudio.vue +1 -1
- package/src/components/medias/EpCardLink.vue +77 -0
- package/src/components/medias/EpIframe.vue +1 -1
- package/src/components/medias/EpLink.vue +1 -1
- package/src/components/medias/EpTimeLine.vue +2 -2
- package/src/components/medias/EpVideo.vue +1 -1
- package/src/components/medias/EpVideoPanopto.vue +1 -1
- package/dist/App.vue.d.ts +0 -2
- package/dist/BgAudio-DezFnyKB.js +0 -4
- package/dist/DisplayBox-DYzeHzkr.js +0 -4
- package/dist/EpAlert-DdtU5nno.js +0 -4
- package/dist/EpAudio-vt4JUOf2.js +0 -4
- package/dist/EpAvatar-DTfkDxUP.js +0 -4
- package/dist/EpAvatar.vue_vue_type_script_setup_true_lang-IeQ9W4tD.js +0 -50
- package/dist/EpBadge-BSMtvAqC.js +0 -4
- package/dist/EpBarChart-BA3EqJ-Z.js +0 -4
- package/dist/EpBtn-B1xGgn2Y.js +0 -4
- package/dist/EpCard-CEjoqwN4.js +0 -4
- package/dist/EpCheckbox-Da_2WoCs.js +0 -4
- package/dist/EpChip-d8r-FDqu.js +0 -4
- package/dist/EpCodeblock-Cu1MOvmi.js +0 -4
- package/dist/EpConclusion-Dk_FFixG.js +0 -4
- package/dist/EpContentSlider-dx8Hu4OS.js +0 -4
- package/dist/EpDescription-B00PjQg0.js +0 -4
- package/dist/EpDivider-CukqZw1a.js +0 -4
- package/dist/EpEdu-B5N7RG49.js +0 -4
- package/dist/EpFlex-DAtWa--7.js +0 -4
- package/dist/EpFunnelChart-jn5C9tAB.js +0 -4
- package/dist/EpHeader-Cwx5Qb6Q.js +0 -4
- package/dist/EpHover-Kp8XbqYO.js +0 -4
- package/dist/EpHover.vue_vue_type_script_setup_true_lang-BxiamS7-.js +0 -36
- package/dist/EpHoverCard-DRRYl4MK.js +0 -84
- package/dist/EpIcon-DitBbcuQ.js +0 -4
- package/dist/EpIframe-C5c1K8RE.js +0 -4
- package/dist/EpImg-YPH6mMcR.js +0 -4
- package/dist/EpInstructions-D8kw_rwC.js +0 -4
- package/dist/EpIntroduction-B2d2vChC.js +0 -4
- package/dist/EpLineChart-BjlCf9dW.js +0 -4
- package/dist/EpLink-CXIYlycG.js +0 -4
- package/dist/EpLinkVersion-Dn_Tid-r.js +0 -4
- package/dist/EpModal-CaPOVdQK.js +0 -4
- package/dist/EpObjective-czDKm1c4.js +0 -4
- package/dist/EpPieChart-DuW7EBmx.js +0 -4
- package/dist/EpQuestion-BuIkR2Ae.js +0 -4
- package/dist/EpQuote-5FQFWcfv.js +0 -4
- package/dist/EpRadio-BnPZeKpP.js +0 -4
- package/dist/EpRadioSummative-AtVwjeQ-.js +0 -4
- package/dist/EpReading-s2TQVAZ_.js +0 -4
- package/dist/EpResource-Cxx1lwrs.js +0 -4
- package/dist/EpScope-CG9n9QnC.js +0 -4
- package/dist/EpSection-cDQVtX9A.js +0 -4
- package/dist/EpSectionCols-DsH_iEem.js +0 -4
- package/dist/EpSelect-kjH_wTXb.js +0 -32
- package/dist/EpSkeleton-BQG8jrs6.js +0 -4
- package/dist/EpSoftware-DR1d7ezZ.js +0 -4
- package/dist/EpSpecificObjective-BS1QMNrt.js +0 -4
- package/dist/EpSpinner-O3kZ_dUO.js +0 -4
- package/dist/EpStackedList-CTU_KKMZ.js +0 -81
- package/dist/EpSummativeTable-iudwhrUL.js +0 -4
- package/dist/EpSvg-Bnj4H9sA.js +0 -4
- package/dist/EpTable-Byza5VY-.js +0 -4
- package/dist/EpTerm-BkpUPK_G.js +0 -4
- package/dist/EpText-J0qcEorF.js +0 -4
- package/dist/EpTimeLine-Czscwhgg.js +0 -4
- package/dist/EpVideo-0w267ZqV.js +0 -4
- package/dist/EpVideoPanopto-CDy_LUMi.js +0 -4
- package/dist/EpWordDef-qWt87mhg.js +0 -4
- package/dist/menu.vue.d.ts +0 -2
- package/dist/pages/Basics.vue.d.ts +0 -2
- package/dist/pages/CurrentDev.vue.d.ts +0 -2
- package/dist/pages/Educationals.vue.d.ts +0 -2
- package/dist/pages/Forms.vue.d.ts +0 -2
- package/dist/pages/Home.vue.d.ts +0 -2
- package/dist/pages/Interactions.vue.d.ts +0 -2
- package/dist/pages/Medias.vue.d.ts +0 -2
- package/dist/pages/NicDev.vue.d.ts +0 -2
- package/dist/pages/Signages.vue.d.ts +0 -2
- package/dist/pages/basics/EpBadgeView.vue.d.ts +0 -2
- package/dist/pages/basics/EpBtnView.vue.d.ts +0 -2
- package/dist/pages/basics/EpCardView.vue.d.ts +0 -2
- package/dist/pages/basics/EpChipView.vue.d.ts +0 -2
- package/dist/pages/basics/EpFlexView.vue.d.ts +0 -2
- package/dist/pages/basics/EpHoverCardView.vue.d.ts +0 -2
- package/dist/pages/basics/EpIconView.vue.d.ts +0 -2
- package/dist/pages/basics/EpImgView.vue.d.ts +0 -2
- package/dist/pages/basics/EpSectionColsView.vue.d.ts +0 -2
- package/dist/pages/basics/EpSectionView.vue.d.ts +0 -2
- package/dist/pages/basics/EpStackedListView.vue.d.ts +0 -2
- package/dist/pages/basics/EpTableView.vue.d.ts +0 -2
- package/dist/pages/basics/EpTextView.vue.d.ts +0 -2
- package/dist/pages/charts/EpBarChartView.vue.d.ts +0 -2
- package/dist/pages/charts/EpFunnelChartView.vue.d.ts +0 -2
- package/dist/pages/charts/EpLineChartView.vue.d.ts +0 -2
- package/dist/pages/charts/EpPieChartView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpBranchingScenarioView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpCodeBlockView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpConclusionView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpDescriptionView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpEduView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpInstructionsView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpIntroductionView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpObjectiveView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpReadingView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpResourceView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpScopeView.vue.d.ts +0 -2
- package/dist/pages/educationals/EpSpecificObjectiveView.vue.d.ts +0 -2
- package/dist/pages/interactions/Ep360ImageView.vue.d.ts +0 -2
- package/dist/pages/interactions/Ep360VideoView.vue.d.ts +0 -2
- package/dist/pages/interactions/EpAccordeonView.vue.d.ts +0 -2
- package/dist/pages/interactions/EpContentSliderView.vue.d.ts +0 -2
- package/dist/pages/interactions/EpModalView.vue.d.ts +0 -2
- package/dist/pages/interactions/EpQuestionView.vue.d.ts +0 -2
- package/dist/pages/interactions/EpSummativeTableView.vue.d.ts +0 -2
- package/dist/pages/medias/EpAudioView.vue.d.ts +0 -2
- package/dist/pages/medias/EpCarouselView.vue.d.ts +0 -2
- package/dist/pages/medias/EpIframeView.vue.d.ts +0 -2
- package/dist/pages/medias/EpKatexView.vue.d.ts +0 -2
- package/dist/pages/medias/EpLinkVersionView.vue.d.ts +0 -2
- package/dist/pages/medias/EpLinkView.vue.d.ts +0 -2
- package/dist/pages/medias/EpLottieSvgView.vue.d.ts +0 -2
- package/dist/pages/medias/EpSoftwareView.vue.d.ts +0 -2
- package/dist/pages/medias/EpSvgView.vue.d.ts +0 -2
- package/dist/pages/medias/EpTermView.vue.d.ts +0 -2
- package/dist/pages/medias/EpTimeLineView.vue.d.ts +0 -2
- package/dist/pages/medias/EpVideoPanoptoView.vue.d.ts +0 -2
- package/dist/pages/medias/EpVideoView.vue.d.ts +0 -2
- package/dist/pages/medias/EpWordDefView.vue.d.ts +0 -2
- package/dist/pages/signages/EpAlertView.vue.d.ts +0 -2
- package/dist/pages/signages/EpHeaderView.vue.d.ts +0 -2
- package/dist/pages/signages/EpQuoteView.vue.d.ts +0 -2
- package/dist/pages/signages/EpSkeletonView.vue.d.ts +0 -2
- package/dist/prism-CvcYxWXz.js +0 -1184
- package/dist/three.core-ChKHLxK7.js +0 -48675
- /package/dist/{ep-lib-ts.css → style.css} +0 -0
package/dist/types/Answer.d.ts
CHANGED
package/dist/types/Hover.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export type Animation = "" | "scale" | "translateY" | "translateX";
|
|
2
|
-
export type
|
|
3
|
-
export type
|
|
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";
|
package/dist/types/Medias.d.ts
CHANGED
|
@@ -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
|
|
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
|
-
|
|
34
|
-
checkbox?: CheckBox;
|
|
15
|
+
component?: ContentComponents;
|
|
35
16
|
}
|
|
36
|
-
export interface
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
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.
|
|
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.
|
|
32
|
-
"@vueuse/core": "
|
|
33
|
-
"@wdns/vue-code-block": "2.3.
|
|
34
|
-
"aframe": "1.6.0",
|
|
35
|
-
"apexcharts": "
|
|
36
|
-
"katex": "0.16.
|
|
37
|
-
"markdown-it": "14.1.0",
|
|
38
|
-
"postcss-cli": "11.0.0",
|
|
39
|
-
"three": "0.
|
|
40
|
-
"vee-validate": "4.
|
|
41
|
-
"vue": "3.
|
|
42
|
-
"vue-router": "4.5
|
|
43
|
-
"vue3-apexcharts": "1.
|
|
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.
|
|
47
|
-
"@
|
|
48
|
-
"@types/
|
|
49
|
-
"@types/
|
|
50
|
-
"@
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"vite": "
|
|
58
|
-
"
|
|
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.
|
|
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-
|
|
48
|
+
return 'border solid border-primary dark:border-white'
|
|
45
49
|
}
|
|
46
|
-
return 'dark:border dark:solid dark:border-
|
|
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
|
-
|
|
77
|
-
|
|
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
|
|
88
|
-
<
|
|
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 {
|
|
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?:
|
|
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)?
|
|
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 {
|
|
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?:
|
|
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?:
|
|
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-
|
|
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
|
|
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
|
|
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
|
-
|
|
16
|
-
|
|
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
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
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
|
|
39
|
-
const
|
|
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.
|
|
43
|
+
const elementSpacing = computed(() => (props.restricted)? 'p-6' : 'mx-6 py-6');
|
|
48
44
|
|
|
49
|
-
const elementGrid =
|
|
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
|
|
57
|
-
<EpAvatar v-if="elem.avatar" :src="elem.avatar?.src" :alt="elem.avatar?.alt" v-bind="
|
|
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="`${(
|
|
67
|
+
<div :class="`${(cropped)? 'line-clamp-3': ''}`" v-html="useRenderText(elem.description)"></div>
|
|
61
68
|
</div>
|
|
62
|
-
<div v-if="
|
|
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
|
-
<
|
|
66
|
-
|
|
67
|
-
|
|
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>
|
|
@@ -23,9 +23,9 @@ interface Props {
|
|
|
23
23
|
|
|
24
24
|
const props = withDefaults(defineProps<Props>(), {
|
|
25
25
|
title: null,
|
|
26
|
-
type: "
|
|
26
|
+
type: "neutral",
|
|
27
27
|
hideIcon: false,
|
|
28
|
-
flat:
|
|
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
|
|
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
|
|
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 `
|
|
79
|
+
return ` overflow-hidden ${
|
|
63
80
|
props.flat ? "" : "shadow-md"
|
|
64
|
-
} flex flex-col justify-
|
|
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="
|
|
89
|
-
<div class="py-
|
|
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-
|
|
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="
|
|
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:"
|
|
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
|
|
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>
|