ep-lib-ts 1.1.11 → 1.1.13
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/components/basics/EpAvatar.vue.js +1 -55
- package/dist/components/basics/EpAvatar.vue.js.map +1 -1
- package/dist/components/basics/EpAvatar.vue2.js +55 -1
- package/dist/components/basics/EpAvatar.vue2.js.map +1 -1
- package/dist/components/basics/EpBtn.vue.js +2 -2
- package/dist/components/basics/EpBtn.vue.js.map +1 -1
- package/dist/components/basics/EpChip.vue.js +2 -2
- package/dist/components/basics/EpChip.vue.js.map +1 -1
- package/dist/components/basics/EpHover.vue.js +1 -1
- package/dist/components/basics/EpHover.vue.js.map +1 -1
- package/dist/components/basics/EpHoverCard.vue.js +6 -6
- package/dist/components/basics/EpHoverCard.vue.js.map +1 -1
- package/dist/components/basics/EpImg.vue.js +8 -8
- package/dist/components/basics/EpImg.vue.js.map +1 -1
- package/dist/components/basics/EpImgCarousel.vue.js +8 -8
- package/dist/components/basics/EpImgCarousel.vue.js.map +1 -1
- package/dist/components/basics/EpSection.vue.js +25 -25
- package/dist/components/basics/EpSection.vue.js.map +1 -1
- package/dist/components/basics/EpSectionCols.vue.js +29 -29
- package/dist/components/basics/EpSectionCols.vue.js.map +1 -1
- package/dist/components/basics/EpSpinner.vue.js +5 -5
- package/dist/components/basics/EpSpinner.vue.js.map +1 -1
- package/dist/components/basics/EpStackedList.vue.js +8 -8
- package/dist/components/basics/EpStackedList.vue.js.map +1 -1
- package/dist/components/charts/EpBarChart.vue.js +3 -3
- package/dist/components/charts/EpBarChart.vue.js.map +1 -1
- package/dist/components/charts/EpFunnelChart.vue.js +4 -4
- package/dist/components/charts/EpFunnelChart.vue.js.map +1 -1
- package/dist/components/charts/EpLineChart.vue.js +3 -3
- package/dist/components/charts/EpLineChart.vue.js.map +1 -1
- package/dist/components/charts/EpPieChart.vue.js +4 -4
- package/dist/components/charts/EpPieChart.vue.js.map +1 -1
- package/dist/components/educationals/EpBranchingScenario.vue2.js +19 -19
- package/dist/components/educationals/EpBranchingScenario.vue2.js.map +1 -1
- package/dist/components/educationals/EpCodeblock.vue.js +1 -1
- package/dist/components/educationals/EpCodeblock.vue.js.map +1 -1
- package/dist/components/educationals/EpConclusion.vue.js +3 -3
- package/dist/components/educationals/EpConclusion.vue.js.map +1 -1
- package/dist/components/educationals/EpDescription.vue.js +1 -1
- package/dist/components/educationals/EpDocument.vue.js +4 -4
- package/dist/components/educationals/EpDocument.vue.js.map +1 -1
- package/dist/components/educationals/EpEdu.vue.js +4 -4
- package/dist/components/educationals/EpEdu.vue.js.map +1 -1
- package/dist/components/educationals/EpFillBlanks.vue.js +116 -0
- package/dist/components/educationals/EpFillBlanks.vue.js.map +1 -0
- package/dist/components/educationals/EpFillBlanks.vue2.js +5 -0
- package/dist/components/educationals/EpFillBlanks.vue2.js.map +1 -0
- package/dist/components/educationals/EpInstructions.vue.js +1 -1
- package/dist/components/educationals/EpIntroduction.vue.js +6 -6
- package/dist/components/educationals/EpIntroduction.vue.js.map +1 -1
- package/dist/components/educationals/EpObjective.vue.js +3 -3
- package/dist/components/educationals/EpObjective.vue.js.map +1 -1
- package/dist/components/educationals/EpReading.vue.js +3 -3
- package/dist/components/educationals/EpReading.vue.js.map +1 -1
- package/dist/components/educationals/EpResource.vue.js +3 -3
- package/dist/components/educationals/EpResource.vue.js.map +1 -1
- package/dist/components/educationals/EpScope.vue.js +2 -2
- package/dist/components/educationals/EpScope.vue.js.map +1 -1
- package/dist/components/educationals/EpSegmentedBox.vue.js +1 -1
- package/dist/components/educationals/EpSegmentedBox.vue.js.map +1 -1
- package/dist/components/educationals/EpSpecificObjective.vue.js +16 -10
- package/dist/components/educationals/EpSpecificObjective.vue.js.map +1 -1
- package/dist/components/forms/EpSelect.vue.js +46 -1
- package/dist/components/forms/EpSelect.vue.js.map +1 -1
- package/dist/components/forms/EpSelect.vue2.js +1 -37
- package/dist/components/forms/EpSelect.vue2.js.map +1 -1
- package/dist/components/forms/EpTextarea.vue2.js +1 -1
- package/dist/components/forms/EpTextarea.vue2.js.map +1 -1
- package/dist/components/forms/EpToggle.vue2.js +1 -1
- package/dist/components/forms/EpToggle.vue2.js.map +1 -1
- package/dist/components/interactions/EpAccordeon.vue2.js +1 -1
- package/dist/components/interactions/EpAccordeon.vue2.js.map +1 -1
- package/dist/components/interactions/EpAssociation.vue.js +14 -13
- package/dist/components/interactions/EpAssociation.vue.js.map +1 -1
- package/dist/components/interactions/EpContentSlider.vue.js +5 -4
- package/dist/components/interactions/EpContentSlider.vue.js.map +1 -1
- package/dist/components/interactions/EpFlipCard.vue2.js +17 -17
- package/dist/components/interactions/EpFlipCard.vue2.js.map +1 -1
- package/dist/components/interactions/EpHotSpot.vue.js +1 -1
- package/dist/components/interactions/EpHotSpot.vue.js.map +1 -1
- package/dist/components/interactions/EpImageCompare.vue.js +6 -6
- package/dist/components/interactions/EpImageCompare.vue.js.map +1 -1
- package/dist/components/interactions/EpModal.vue.js +4 -4
- package/dist/components/interactions/EpModal.vue.js.map +1 -1
- package/dist/components/interactions/EpQuestion.vue.js +8 -8
- package/dist/components/interactions/EpQuestion.vue.js.map +1 -1
- package/dist/components/interactions/EpSummativeTable.vue.js +3 -3
- package/dist/components/interactions/EpSummativeTable.vue.js.map +1 -1
- package/dist/components/interactions/EpTooltip.vue.js +1 -1
- package/dist/components/interactions/EpTooltip.vue.js.map +1 -1
- package/dist/components/medias/EpAudio.vue.js +3 -3
- package/dist/components/medias/EpAudio.vue.js.map +1 -1
- package/dist/components/medias/EpCardLink.vue.js +16 -16
- package/dist/components/medias/EpCardLink.vue.js.map +1 -1
- package/dist/components/medias/EpCarousel.vue.js +10 -10
- package/dist/components/medias/EpCarousel.vue.js.map +1 -1
- package/dist/components/medias/EpHierarchy.vue2.js +2 -2
- package/dist/components/medias/EpHierarchy.vue2.js.map +1 -1
- package/dist/components/medias/EpIframe.vue.js +3 -3
- package/dist/components/medias/EpIframe.vue.js.map +1 -1
- package/dist/components/medias/EpKatex.vue2.js +4 -4
- package/dist/components/medias/EpKatex.vue2.js.map +1 -1
- package/dist/components/medias/EpLink.vue.js +2 -2
- package/dist/components/medias/EpLink.vue.js.map +1 -1
- package/dist/components/medias/EpLinkVersion.vue.js +1 -1
- package/dist/components/medias/EpLinkVersion.vue.js.map +1 -1
- package/dist/components/medias/EpLottieSvg.vue.js +8 -8
- package/dist/components/medias/EpLottieSvg.vue.js.map +1 -1
- package/dist/components/medias/EpSensibleImage.vue2.js +18 -18
- package/dist/components/medias/EpSensibleImage.vue2.js.map +1 -1
- package/dist/components/medias/EpSoftware.vue.js +3 -3
- package/dist/components/medias/EpSoftware.vue.js.map +1 -1
- package/dist/components/medias/EpSvg.vue.js +4 -4
- package/dist/components/medias/EpSvg.vue.js.map +1 -1
- package/dist/components/medias/EpTerm.vue.js +6 -6
- package/dist/components/medias/EpTerm.vue.js.map +1 -1
- package/dist/components/medias/EpVideo.vue.js +2 -2
- package/dist/components/medias/EpVideo.vue.js.map +1 -1
- package/dist/components/medias/EpVideoPanopto.vue.js +3 -3
- package/dist/components/medias/EpVideoPanopto.vue.js.map +1 -1
- package/dist/components/medias/EpWordDef.vue.js +39 -39
- package/dist/components/medias/EpWordDef.vue.js.map +1 -1
- package/dist/components/signages/EpAlert.vue2.js +1 -1
- package/dist/components/signages/EpHeader.vue.js +60 -55
- package/dist/components/signages/EpHeader.vue.js.map +1 -1
- package/dist/components/signages/EpQuote.vue.js +1 -1
- package/dist/components/signages/EpSkeleton.vue2.js +1 -1
- package/dist/components/tools/AssociationNode.vue2.js +8 -8
- package/dist/components/tools/AssociationNode.vue2.js.map +1 -1
- package/dist/components/tools/AsyncKatexRender.vue2.js +1 -1
- package/dist/components/tools/AsyncKatexRender.vue2.js.map +1 -1
- package/dist/components/tools/Details.vue.js +56 -1
- package/dist/components/tools/Details.vue.js.map +1 -1
- package/dist/components/tools/Details.vue2.js +1 -56
- package/dist/components/tools/Details.vue2.js.map +1 -1
- package/dist/components/tools/RenderTextNode.vue.js +19 -1
- package/dist/components/tools/RenderTextNode.vue.js.map +1 -1
- package/dist/components/tools/RenderTextNode.vue2.js +1 -19
- package/dist/components/tools/RenderTextNode.vue2.js.map +1 -1
- package/dist/components/tools/SegmentedBox.vue2.js +3 -3
- package/dist/components/tools/SegmentedBox.vue2.js.map +1 -1
- package/dist/components/tools/TextMedia.vue.js +50 -1
- package/dist/components/tools/TextMedia.vue.js.map +1 -1
- package/dist/components/tools/TextMedia.vue2.js +1 -50
- package/dist/components/tools/TextMedia.vue2.js.map +1 -1
- package/dist/components/tools/TimelineItem.vue2.js +1 -1
- package/dist/components/tools/TwoColsMedia.vue2.js +4 -4
- package/dist/components/tools/TwoColsMedia.vue2.js.map +1 -1
- package/dist/entry/educationals/EpFillBlanks.d.ts +6 -0
- package/dist/entry/educationals/EpFillBlanks.js +7 -0
- package/dist/entry/educationals/EpFillBlanks.js.map +1 -0
- package/dist/entry/forms/EpSelect.d.ts +6 -0
- package/dist/entry/forms/EpSelect.js +7 -0
- package/dist/entry/forms/EpSelect.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +159 -156
- package/dist/index.js.map +1 -1
- package/dist/style.css +82 -82
- package/dist/types/educationals/EpFillBlanks.d.ts +12 -0
- package/dist/types/forms/EpSelect.d.ts +1 -0
- package/dist/types/signages/EpHeader.d.ts +1 -0
- package/package.json +42 -39
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EpVideo.vue.js","sources":["../../../src/components/medias/EpVideo.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, computed, toRefs } from \"vue\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { mdiVideo } from \"@mdi/js\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport type { EpVideoProps } from \"~/types/medias/EpVideo\";\n\nconst props = withDefaults(defineProps<EpVideoProps>(), {\n type: \"neutral\",\n hideIcon: false,\n labelIntentions: \"Intentions d'écoute\",\n});\n\n//only to make custum video player\nconst video = ref<HTMLVideoElement>();\n\nconst isVideoFormat = computed(() => {\n if (\n props.src.endsWith(\".mp4\") ||\n props.src.endsWith(\".ogg\") ||\n props.src.endsWith(\".webm\")\n ) {\n return true;\n }\n return false;\n});\n\nconst videoURL = computed(() => {\n const url = props.src;\n if (!isVideoFormat.value && url.includes(\"https://vimeo.com/\")) {\n return url.replace(\"https://vimeo.com/\", \"https://player.vimeo.com/video/\");\n }\n if (!isVideoFormat.value && url.includes(\"https://www.youtube.com/watch?\")) {\n return url.replace(\n \"https://www.youtube.com/watch?v=\",\n \"https://www.youtube.com/embed/\"\n );\n }\n //extra to short url youtube\n if (!isVideoFormat.value && url.includes(\"https://youtu.be/\")) {\n const id = getIdYoutube(url);\n if (id) {\n return `https://www.youtube.com/embed/${id}`;\n }\n }\n return url;\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 getIdYoutube = (url: string): string | null => {\n const match = url.match(/\\/([^\\/]+)$/);\n return match ? match[1] : null;\n};\n\nconst sizeVideo = computed(() => {\n if (props.big) {\n return \"650\";\n }\n return \"360\";\n});\n\n//controls\n//const controls = useMediaControls(video, {src:props.src})\nconst { src, title, hideIcon, type, labelIntentions } = toRefs(props);\n</script>\n\n<template>\n <EpEdu\n :title=\"title\"\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n :icon=\"mdiVideo\"\n :mandateLevel=\"mandateLevel\"\n :labelIntentions=\"labelIntentions\"\n >\n <template #intentions v-if=\"renderText && renderText.length > 0\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div :class=\"!big ? 'max-w-screen-sm mx-auto' : ''\">\n <video\n v-if=\"isVideoFormat\"\n ref=\"video\"\n controls\n :src=\"src\"\n width=\"100%\"\n controlsList=\"nodownload\"\n ></video>\n\n <iframe\n v-else\n :src=\"videoURL\"\n width=\"100%\"\n :height=\"sizeVideo\"\n frameborder=\"0\"\n allowfullscreen\n ></iframe>\n </div>\n </template>\n <!-- <template #actions>\n <EpBtn :color=\"type=='base'?'text-gray-700':'text-white'\" :type=\"type\">[Repair btn style... to change]</EpBtn>\n </template> -->\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","_unref","
|
|
1
|
+
{"version":3,"file":"EpVideo.vue.js","sources":["../../../src/components/medias/EpVideo.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, computed, toRefs } from \"vue\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { mdiVideo } from \"@mdi/js\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport type { EpVideoProps } from \"~/types/medias/EpVideo\";\n\nconst props = withDefaults(defineProps<EpVideoProps>(), {\n type: \"neutral\",\n hideIcon: false,\n labelIntentions: \"Intentions d'écoute\",\n});\n\n//only to make custum video player\nconst video = ref<HTMLVideoElement>();\n\nconst isVideoFormat = computed(() => {\n if (\n props.src.endsWith(\".mp4\") ||\n props.src.endsWith(\".ogg\") ||\n props.src.endsWith(\".webm\")\n ) {\n return true;\n }\n return false;\n});\n\nconst videoURL = computed(() => {\n const url = props.src;\n if (!isVideoFormat.value && url.includes(\"https://vimeo.com/\")) {\n return url.replace(\"https://vimeo.com/\", \"https://player.vimeo.com/video/\");\n }\n if (!isVideoFormat.value && url.includes(\"https://www.youtube.com/watch?\")) {\n return url.replace(\n \"https://www.youtube.com/watch?v=\",\n \"https://www.youtube.com/embed/\"\n );\n }\n //extra to short url youtube\n if (!isVideoFormat.value && url.includes(\"https://youtu.be/\")) {\n const id = getIdYoutube(url);\n if (id) {\n return `https://www.youtube.com/embed/${id}`;\n }\n }\n return url;\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 getIdYoutube = (url: string): string | null => {\n const match = url.match(/\\/([^\\/]+)$/);\n return match ? match[1] : null;\n};\n\nconst sizeVideo = computed(() => {\n if (props.big) {\n return \"650\";\n }\n return \"360\";\n});\n\n//controls\n//const controls = useMediaControls(video, {src:props.src})\nconst { src, title, hideIcon, type, labelIntentions } = toRefs(props);\n</script>\n\n<template>\n <EpEdu\n :title=\"title\"\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n :icon=\"mdiVideo\"\n :mandateLevel=\"mandateLevel\"\n :labelIntentions=\"labelIntentions\"\n >\n <template #intentions v-if=\"renderText && renderText.length > 0\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div :class=\"!big ? 'max-w-screen-sm mx-auto' : ''\">\n <video\n v-if=\"isVideoFormat\"\n ref=\"video\"\n controls\n :src=\"src\"\n width=\"100%\"\n controlsList=\"nodownload\"\n ></video>\n\n <iframe\n v-else\n :src=\"videoURL\"\n width=\"100%\"\n :height=\"sizeVideo\"\n frameborder=\"0\"\n allowfullscreen\n ></iframe>\n </div>\n </template>\n <!-- <template #actions>\n <EpBtn :color=\"type=='base'?'text-gray-700':'text-white'\" :type=\"type\">[Repair btn style... to change]</EpBtn>\n </template> -->\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","_unref","_createElementVNode","_createElementBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAQA,UAAM,QAAQ;AAOd,UAAM,QAAQ,IAAA;AAEd,UAAM,gBAAgB,SAAS,MAAM;AACnC,UACE,MAAM,IAAI,SAAS,MAAM,KACzB,MAAM,IAAI,SAAS,MAAM,KACzB,MAAM,IAAI,SAAS,OAAO,GAC1B;AACA,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,WAAW,SAAS,MAAM;AAC9B,YAAM,MAAM,MAAM;AAClB,UAAI,CAAC,cAAc,SAAS,IAAI,SAAS,oBAAoB,GAAG;AAC9D,eAAO,IAAI,QAAQ,sBAAsB,iCAAiC;AAAA,MAC5E;AACA,UAAI,CAAC,cAAc,SAAS,IAAI,SAAS,gCAAgC,GAAG;AAC1E,eAAO,IAAI;AAAA,UACT;AAAA,UACA;AAAA,QAAA;AAAA,MAEJ;AAEA,UAAI,CAAC,cAAc,SAAS,IAAI,SAAS,mBAAmB,GAAG;AAC7D,cAAM,KAAK,aAAa,GAAG;AAC3B,YAAI,IAAI;AACN,iBAAO,iCAAiC,EAAE;AAAA,QAC5C;AAAA,MACF;AACA,aAAO;AAAA,IACT,CAAC;AAED,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,eAAe,CAAC,QAA+B;AACnD,YAAM,QAAQ,IAAI,MAAM,aAAa;AACrC,aAAO,QAAQ,MAAM,CAAC,IAAI;AAAA,IAC5B;AAEA,UAAM,YAAY,SAAS,MAAM;AAC/B,UAAI,MAAM,KAAK;AACb,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAID,UAAM,EAAE,KAAK,OAAO,UAAU,MAAM,gBAAA,IAAoB,OAAO,KAAK;;0BAIlEA,YAmCQC,aAAA;AAAA,QAlCL,OAAOC,MAAA,KAAA;AAAA,QACP,MAAMA,MAAA,IAAA;AAAA,QACN,UAAUA,MAAA,QAAA;AAAA,QACV,MAAMA,MAAA,QAAA;AAAA,QACN,cAAc,QAAA;AAAA,QACd,iBAAiBA,MAAA,eAAA;AAAA,MAAA;QAKP,iBACT,MAkBM;AAAA,UAlBNC,mBAkBM,OAAA;AAAA,YAlBA,uBAAQ,QAAA,MAAG,4BAAA,EAAA;AAAA,UAAA;YAEP,cAAA,sBADRC,mBAOS,SAAA;AAAA;uBALH;AAAA,cAAJ,KAAI;AAAA,cACJ,UAAA;AAAA,cACC,KAAKF,MAAA,GAAA;AAAA,cACN,OAAM;AAAA,cACN,cAAa;AAAA,YAAA,yCAGfE,mBAOU,UAAA;AAAA;cALP,KAAK,SAAA;AAAA,cACN,OAAM;AAAA,cACL,QAAQ,UAAA;AAAA,cACT,aAAY;AAAA,cACZ,iBAAA;AAAA,YAAA;;;;;QApBsB,WAAA,SAAc,WAAA,MAAW,SAAM;gBAAhD;AAAA,sBACT,MAA2B;AAAA,YAA3BD,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;;;;;"}
|
|
@@ -42,12 +42,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
42
42
|
type: unref(type),
|
|
43
43
|
hideIcon: unref(hideIcon),
|
|
44
44
|
icon: unref(mdiVideo),
|
|
45
|
-
mandateLevel:
|
|
46
|
-
labelIntentions:
|
|
45
|
+
mandateLevel: __props.mandateLevel,
|
|
46
|
+
labelIntentions: __props.labelIntentions
|
|
47
47
|
}, createSlots({
|
|
48
48
|
content: withCtx(() => [
|
|
49
49
|
createElementVNode("div", {
|
|
50
|
-
class: normalizeClass(!
|
|
50
|
+
class: normalizeClass(!__props.big ? "max-w-screen-sm mx-auto" : "")
|
|
51
51
|
}, [
|
|
52
52
|
createElementVNode("iframe", {
|
|
53
53
|
src: unref(src),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EpVideoPanopto.vue.js","sources":["../../../src/components/medias/EpVideoPanopto.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { mdiVideo } from \"@mdi/js\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport type { EpVideoPanoptoProps } from \"~/types/medias/EpVideoPanopto\";\n\nconst props = withDefaults(defineProps<EpVideoPanoptoProps>(), {\n labelIntentions: \"Intentions d'écoute\",\n type: \"neutral\",\n hideIcon: false,\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 sizeVideo = computed(() => {\n if (props.big) {\n return \"650\";\n }\n return \"360\";\n});\n\nconst { src, title, hideIcon, type } = toRefs(props);\n</script>\n\n<template>\n <EpEdu\n :title=\"title\"\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n :icon=\"mdiVideo\"\n :mandateLevel=\"mandateLevel\"\n :labelIntentions=\"labelIntentions\"\n >\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div :class=\"!big ? 'max-w-screen-sm mx-auto' : ''\">\n <iframe\n :src=\"src\"\n width=\"100%\"\n :height=\"sizeVideo\"\n frameborder=\"0\"\n allowfullscreen\n ></iframe>\n </div>\n </template>\n <!-- <template #actions>\n <EpBtn :color=\"type=='base'?'text-gray-700':'text-white'\" :type=\"type\">[Repair btn style... to change]</EpBtn>\n </template> -->\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","_unref","
|
|
1
|
+
{"version":3,"file":"EpVideoPanopto.vue.js","sources":["../../../src/components/medias/EpVideoPanopto.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs } from \"vue\";\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useMarkdown } from \"~/composables/useMarkdown\";\nimport { mdiVideo } from \"@mdi/js\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport type { EpVideoPanoptoProps } from \"~/types/medias/EpVideoPanopto\";\n\nconst props = withDefaults(defineProps<EpVideoPanoptoProps>(), {\n labelIntentions: \"Intentions d'écoute\",\n type: \"neutral\",\n hideIcon: false,\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 sizeVideo = computed(() => {\n if (props.big) {\n return \"650\";\n }\n return \"360\";\n});\n\nconst { src, title, hideIcon, type } = toRefs(props);\n</script>\n\n<template>\n <EpEdu\n :title=\"title\"\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n :icon=\"mdiVideo\"\n :mandateLevel=\"mandateLevel\"\n :labelIntentions=\"labelIntentions\"\n >\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div :class=\"!big ? 'max-w-screen-sm mx-auto' : ''\">\n <iframe\n :src=\"src\"\n width=\"100%\"\n :height=\"sizeVideo\"\n frameborder=\"0\"\n allowfullscreen\n ></iframe>\n </div>\n </template>\n <!-- <template #actions>\n <EpBtn :color=\"type=='base'?'text-gray-700':'text-white'\" :type=\"type\">[Repair btn style... to change]</EpBtn>\n </template> -->\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","_unref","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAQA,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,YAAY,SAAS,MAAM;AAC/B,UAAI,MAAM,KAAK;AACb,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,EAAE,KAAK,OAAO,UAAU,KAAA,IAAS,OAAO,KAAK;;0BAIjDA,YAyBQC,aAAA;AAAA,QAxBL,OAAOC,MAAA,KAAA;AAAA,QACP,MAAMA,MAAA,IAAA;AAAA,QACN,UAAUA,MAAA,QAAA;AAAA,QACV,MAAMA,MAAA,QAAA;AAAA,QACN,cAAc,QAAA;AAAA,QACd,iBAAiB,QAAA;AAAA,MAAA;QAKP,iBACT,MAQM;AAAA,UARNC,mBAQM,OAAA;AAAA,YARA,uBAAQ,QAAA,MAAG,4BAAA,EAAA;AAAA,UAAA;YACfA,mBAMU,UAAA;AAAA,cALP,KAAKD,MAAA,GAAA;AAAA,cACN,OAAM;AAAA,cACL,QAAQ,UAAA;AAAA,cACT,aAAY;AAAA,cACZ,iBAAA;AAAA,YAAA;;;;;QAVsB,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BC,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;;;;;"}
|
|
@@ -104,10 +104,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
104
104
|
const id = ref(props.uid || useCreateUid());
|
|
105
105
|
return (_ctx, _cache) => {
|
|
106
106
|
return openBlock(), createElementBlock("div", { id: id.value }, [
|
|
107
|
-
|
|
108
|
-
|
|
107
|
+
__props.term && __props.description ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
108
|
+
__props.collapse ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
109
109
|
createVNode(Comp, {
|
|
110
|
-
title:
|
|
110
|
+
title: __props.term,
|
|
111
111
|
open: false,
|
|
112
112
|
outlined: true
|
|
113
113
|
}, {
|
|
@@ -116,50 +116,50 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
116
116
|
createElementVNode("div", {
|
|
117
117
|
class: normalizeClass(sizeGramIngo.value)
|
|
118
118
|
}, [
|
|
119
|
-
createElementVNode("p", _hoisted_5, toDisplayString(
|
|
120
|
-
|
|
119
|
+
createElementVNode("p", _hoisted_5, toDisplayString(__props.labelInformation), 1),
|
|
120
|
+
__props.content.gramInfo ? (openBlock(), createElementBlock("div", _hoisted_6, toDisplayString(__props.content.gramInfo), 1)) : createCommentVNode("", true)
|
|
121
121
|
], 2),
|
|
122
|
-
|
|
122
|
+
__props.content.domain ? (openBlock(), createElementBlock("div", {
|
|
123
123
|
key: 0,
|
|
124
124
|
class: normalizeClass(sizeDomain.value)
|
|
125
125
|
}, [
|
|
126
|
-
createElementVNode("p", _hoisted_7, toDisplayString(
|
|
127
|
-
createElementVNode("div", _hoisted_8, toDisplayString(
|
|
126
|
+
createElementVNode("p", _hoisted_7, toDisplayString(__props.labelDomain), 1),
|
|
127
|
+
createElementVNode("div", _hoisted_8, toDisplayString(__props.content.domain), 1)
|
|
128
128
|
], 2)) : createCommentVNode("", true),
|
|
129
|
-
|
|
129
|
+
__props.variation.length > 0 ? (openBlock(), createElementBlock("div", {
|
|
130
130
|
key: 1,
|
|
131
131
|
class: normalizeClass(sizeVariations.value)
|
|
132
132
|
}, [
|
|
133
|
-
createElementVNode("p", _hoisted_9, toDisplayString(
|
|
133
|
+
createElementVNode("p", _hoisted_9, toDisplayString(__props.labelVariations), 1),
|
|
134
134
|
createElementVNode("div", _hoisted_10, [
|
|
135
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
135
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.variation, (_variation, i) => {
|
|
136
136
|
return openBlock(), createElementBlock("span", {
|
|
137
137
|
key: `v-${i}`
|
|
138
|
-
}, toDisplayString(_variation) + toDisplayString(
|
|
138
|
+
}, toDisplayString(_variation) + toDisplayString(__props.variation.length > i + 1 ? ", " : "."), 1);
|
|
139
139
|
}), 128))
|
|
140
140
|
])
|
|
141
141
|
], 2)) : createCommentVNode("", true)
|
|
142
142
|
]),
|
|
143
|
-
!
|
|
143
|
+
!__props.content.image ? (openBlock(), createElementBlock("div", {
|
|
144
144
|
key: 0,
|
|
145
145
|
class: "px-2 py-6",
|
|
146
|
-
innerHTML: unref(useRenderText)(
|
|
146
|
+
innerHTML: unref(useRenderText)(__props.description)
|
|
147
147
|
}, null, 8, _hoisted_11)) : (openBlock(), createElementBlock("div", _hoisted_12, [
|
|
148
148
|
createElementVNode("div", {
|
|
149
149
|
class: "px-2 py-6",
|
|
150
|
-
innerHTML: unref(useRenderText)(
|
|
150
|
+
innerHTML: unref(useRenderText)(__props.description)
|
|
151
151
|
}, null, 8, _hoisted_13),
|
|
152
152
|
createElementVNode("div", _hoisted_14, [
|
|
153
153
|
createVNode(_sfc_main$1, {
|
|
154
|
-
src:
|
|
155
|
-
cols:
|
|
154
|
+
src: __props.content.image,
|
|
155
|
+
cols: __props.cols
|
|
156
156
|
}, null, 8, ["src", "cols"])
|
|
157
157
|
])
|
|
158
158
|
])),
|
|
159
|
-
|
|
160
|
-
createElementVNode("p", _hoisted_16, toDisplayString(
|
|
159
|
+
__props.relation.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_15, [
|
|
160
|
+
createElementVNode("p", _hoisted_16, toDisplayString(__props.labelRelations), 1),
|
|
161
161
|
createElementVNode("div", _hoisted_17, [
|
|
162
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
162
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.relation, (_relation, i) => {
|
|
163
163
|
return openBlock(), createElementBlock("button", {
|
|
164
164
|
key: `relation-${i}`,
|
|
165
165
|
class: "p-1 border rounded mr-1",
|
|
@@ -172,55 +172,55 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
172
172
|
_: 1
|
|
173
173
|
}, 8, ["title"])
|
|
174
174
|
])) : (openBlock(), createElementBlock("div", _hoisted_19, [
|
|
175
|
-
createElementVNode("h2", _hoisted_20, toDisplayString(
|
|
175
|
+
createElementVNode("h2", _hoisted_20, toDisplayString(__props.term), 1),
|
|
176
176
|
createElementVNode("div", _hoisted_21, [
|
|
177
177
|
createElementVNode("div", {
|
|
178
178
|
class: normalizeClass(sizeGramIngo.value)
|
|
179
179
|
}, [
|
|
180
|
-
createElementVNode("p", _hoisted_22, toDisplayString(
|
|
181
|
-
|
|
180
|
+
createElementVNode("p", _hoisted_22, toDisplayString(__props.labelInformation), 1),
|
|
181
|
+
__props.content.gramInfo ? (openBlock(), createElementBlock("div", _hoisted_23, toDisplayString(__props.content.gramInfo), 1)) : createCommentVNode("", true)
|
|
182
182
|
], 2),
|
|
183
|
-
|
|
183
|
+
__props.content.domain ? (openBlock(), createElementBlock("div", {
|
|
184
184
|
key: 0,
|
|
185
185
|
class: normalizeClass(sizeDomain.value)
|
|
186
186
|
}, [
|
|
187
|
-
createElementVNode("p", _hoisted_24, toDisplayString(
|
|
188
|
-
createElementVNode("div", _hoisted_25, toDisplayString(
|
|
187
|
+
createElementVNode("p", _hoisted_24, toDisplayString(__props.labelDomain), 1),
|
|
188
|
+
createElementVNode("div", _hoisted_25, toDisplayString(__props.content.domain), 1)
|
|
189
189
|
], 2)) : createCommentVNode("", true),
|
|
190
|
-
|
|
190
|
+
__props.variation.length > 0 ? (openBlock(), createElementBlock("div", {
|
|
191
191
|
key: 1,
|
|
192
192
|
class: normalizeClass(sizeVariations.value)
|
|
193
193
|
}, [
|
|
194
|
-
createElementVNode("p", _hoisted_26, toDisplayString(
|
|
194
|
+
createElementVNode("p", _hoisted_26, toDisplayString(__props.labelVariations), 1),
|
|
195
195
|
createElementVNode("div", _hoisted_27, [
|
|
196
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
196
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.variation, (_variation, i) => {
|
|
197
197
|
return openBlock(), createElementBlock("span", {
|
|
198
198
|
key: `v-${i}`
|
|
199
|
-
}, toDisplayString(_variation) + toDisplayString(
|
|
199
|
+
}, toDisplayString(_variation) + toDisplayString(__props.variation.length > i + 1 ? ", " : "."), 1);
|
|
200
200
|
}), 128))
|
|
201
201
|
])
|
|
202
202
|
], 2)) : createCommentVNode("", true)
|
|
203
203
|
]),
|
|
204
|
-
!
|
|
204
|
+
!__props.content.image ? (openBlock(), createElementBlock("div", {
|
|
205
205
|
key: 0,
|
|
206
206
|
class: "px-2 py-6",
|
|
207
|
-
innerHTML: unref(useRenderText)(
|
|
207
|
+
innerHTML: unref(useRenderText)(__props.description)
|
|
208
208
|
}, null, 8, _hoisted_28)) : (openBlock(), createElementBlock("div", _hoisted_29, [
|
|
209
209
|
createElementVNode("div", {
|
|
210
210
|
class: "px-2 py-6",
|
|
211
|
-
innerHTML: unref(useRenderText)(
|
|
211
|
+
innerHTML: unref(useRenderText)(__props.description)
|
|
212
212
|
}, null, 8, _hoisted_30),
|
|
213
213
|
createElementVNode("div", _hoisted_31, [
|
|
214
214
|
createVNode(_sfc_main$1, {
|
|
215
|
-
src:
|
|
216
|
-
cols:
|
|
215
|
+
src: __props.content.image,
|
|
216
|
+
cols: __props.cols
|
|
217
217
|
}, null, 8, ["src", "cols"])
|
|
218
218
|
])
|
|
219
219
|
])),
|
|
220
|
-
|
|
221
|
-
createElementVNode("p", _hoisted_33, toDisplayString(
|
|
220
|
+
__props.relation.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_32, [
|
|
221
|
+
createElementVNode("p", _hoisted_33, toDisplayString(__props.labelRelations), 1),
|
|
222
222
|
createElementVNode("div", _hoisted_34, [
|
|
223
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
223
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.relation, (_relation, i) => {
|
|
224
224
|
return openBlock(), createElementBlock("button", {
|
|
225
225
|
key: `relation-${i}`,
|
|
226
226
|
class: "p-1 border rounded mr-1",
|
|
@@ -230,7 +230,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
230
230
|
])
|
|
231
231
|
])) : createCommentVNode("", true)
|
|
232
232
|
]))
|
|
233
|
-
])) : (openBlock(), createElementBlock("div", _hoisted_36, toDisplayString(
|
|
233
|
+
])) : (openBlock(), createElementBlock("div", _hoisted_36, toDisplayString(__props.labelNoDefinition), 1))
|
|
234
234
|
], 8, _hoisted_1);
|
|
235
235
|
};
|
|
236
236
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EpWordDef.vue.js","sources":["../../../src/components/medias/EpWordDef.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\nimport EpImg from \"~/components/basics/EpImg.vue\";\nimport { useCreateUid } from \"~/composables/useCreateUid\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { useRouter } from \"vue-router\";\nimport type { EpWordDefProps } from \"~/types/medias/EpWordDef\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\n\nconst props = withDefaults(defineProps<EpWordDefProps>(), {\n labelInformation: \"Information grammaticale\",\n labelDomain: \"Domaine\",\n labelRelations: \"Relations\",\n labelNoDefinition: \"La definition n'est pas disponible\",\n labelVariations: \"Variation(s)\",\n cols: \"10\",\n collapse: true,\n});\n\nconst sizeGramIngo = computed(() => {\n if (props.content) {\n return props.content.domain || props.variation.length > 0\n ? \"w-1/3\"\n : \"w-full\";\n }\n return \"\";\n});\n\nconst sizeDomain = computed(() => {\n if (props.variation) {\n return props.variation.length > 0 ? \"w-1/4\" : \"w-3/4\";\n }\n return \"\";\n});\n\nconst sizeVariations = computed(() => {\n if (props.content) {\n return props.content.domain ? \"w-2/4\" : \"w-3/4\";\n }\n return \"\";\n});\n\n/*\nconst findRelations = (relations: string[]): { id: number | string, term: string }[] => {\n let _relations = props.glossary.filter((term) => {\n return relations.some((x) => {\n return term.id === x;\n });\n });\n return _relations.map((x) => ({id:x.id, term:x.term}));\n};*/\n\nconst router = useRouter();\nconst goto = (term: string) => {\n if (router.hasRoute(\"glossary\")) {\n router.push({ path: \"/glossary\", query: { word: term } });\n }\n //console.log(router.hasRoute('signages'))\n //\n};\n\nconst id = ref(props.uid || useCreateUid());\n</script>\n\n<template>\n <div :id=\"id\">\n <div v-if=\"term && description\">\n <div v-if=\"collapse\" class=\"h-min divide-y\">\n <EpAccordeon :title=\"term\" :open=\"false\" :outlined=\"true\">\n <div class=\"flex justify-between\">\n <div :class=\"sizeGramIngo\">\n <p class=\"text-sm font-medium p-2\">\n {{ labelInformation }}\n </p>\n <div class=\"px-2 py-1\" v-if=\"content.gramInfo\">\n {{ content.gramInfo }}\n </div>\n </div>\n <div :class=\"sizeDomain\" v-if=\"content.domain\">\n <p class=\"text-sm font-medium p-2\">\n {{ labelDomain }}\n </p>\n <div class=\"px-2 py-1\">{{ content.domain }}</div>\n </div>\n <div :class=\"sizeVariations\" v-if=\"variation.length > 0\">\n <p class=\"text-sm font-medium p-2\">\n {{ labelVariations }}\n </p>\n <div class=\"px-2 py-1\">\n <span v-for=\"(_variation, i) in variation\" :key=\"`v-${i}`\"\n >{{ _variation\n }}{{ variation.length > i + 1 ? \", \" : \".\" }}</span\n >\n </div>\n </div>\n </div>\n <template v-if=\"!content.image\">\n <div class=\"px-2 py-6\" v-html=\"useRenderText(description)\" />\n </template>\n <template v-else>\n <div class=\"flex flex-row justify-between\">\n <div class=\"px-2 py-6\" v-html=\"useRenderText(description)\" />\n <div class=\"flex w-1/2 justify-center p-2\">\n <EpImg :src=\"content.image\" :cols=\"cols\" />\n </div>\n </div>\n </template>\n\n <div v-if=\"relation.length > 0\">\n <p class=\"text-sm font-medium p-2\">{{ labelRelations }}</p>\n <div class=\"p-2\">\n <template\n v-for=\"(_relation, i) in relation\"\n :key=\"`relation-${i}`\"\n >\n <button\n class=\"p-1 border rounded mr-1\"\n @click=\"goto(_relation.termId)\"\n >\n {{ _relation.term }}\n </button>\n </template>\n </div>\n </div>\n </EpAccordeon>\n </div>\n\n <div v-else class=\"h-min border divide-y bg-surface-2 dark:bg-surface-2-dark rounded\">\n <h2 class=\"text-xl font-semibold p-2\">{{ term }}</h2>\n\n <div class=\"flex justify-between\">\n <div :class=\"sizeGramIngo\">\n <p class=\"text-sm font-medium p-2\">{{ labelInformation }}</p>\n <div class=\"px-2 py-1\" v-if=\"content.gramInfo\">\n {{ content.gramInfo }}\n </div>\n </div>\n\n <div :class=\"sizeDomain\" v-if=\"content.domain\">\n <p class=\"text-sm font-medium p-2\">{{ labelDomain }}</p>\n <div class=\"px-2 py-1\">{{ content.domain }}</div>\n </div>\n\n <div :class=\"sizeVariations\" v-if=\"variation.length > 0\">\n <p class=\"text-sm font-medium p-2\">{{ labelVariations }}</p>\n <div class=\"px-2 py-1\">\n <span v-for=\"(_variation, i) in variation\" :key=\"`v-${i}`\">\n {{ _variation }}{{ variation.length > i + 1 ? \", \" : \".\" }}\n </span>\n </div>\n </div>\n </div>\n\n <template v-if=\"!content.image\">\n <div class=\"px-2 py-6\" v-html=\"useRenderText(description)\" />\n </template>\n <template v-else>\n <div class=\"flex flex-row justify-between\">\n <div class=\"px-2 py-6\" v-html=\"useRenderText(description)\" />\n <div class=\"flex w-1/2 justify-center p-2\">\n <EpImg :src=\"content.image\" :cols=\"cols\" />\n </div>\n </div>\n </template>\n\n <div v-if=\"relation.length > 0\">\n <p class=\"text-sm font-medium p-2\">{{ labelRelations }}</p>\n <div class=\"p-2\">\n <template v-for=\"(_relation, i) in relation\" :key=\"`relation-${i}`\">\n <button\n class=\"p-1 border rounded mr-1\"\n @click=\"goto(_relation.termId)\"\n >\n {{ _relation.term }}\n </button>\n </template>\n </div>\n </div>\n </div>\n </div>\n\n <div v-else>{{ labelNoDefinition }}</div>\n </div>\n</template>\n"],"names":["_createElementBlock","term","description","collapse","_openBlock","_createVNode","EpAccordeon","_createElementVNode","_toDisplayString","labelInformation","content","labelDomain","variation","labelVariations","_Fragment","_renderList","_unref","EpImg","cols","relation","labelRelations","labelNoDefinition"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EpWordDef.vue.js","sources":["../../../src/components/medias/EpWordDef.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\nimport EpImg from \"~/components/basics/EpImg.vue\";\nimport { useCreateUid } from \"~/composables/useCreateUid\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { useRouter } from \"vue-router\";\nimport type { EpWordDefProps } from \"~/types/medias/EpWordDef\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\n\nconst props = withDefaults(defineProps<EpWordDefProps>(), {\n labelInformation: \"Information grammaticale\",\n labelDomain: \"Domaine\",\n labelRelations: \"Relations\",\n labelNoDefinition: \"La definition n'est pas disponible\",\n labelVariations: \"Variation(s)\",\n cols: \"10\",\n collapse: true,\n});\n\nconst sizeGramIngo = computed(() => {\n if (props.content) {\n return props.content.domain || props.variation.length > 0\n ? \"w-1/3\"\n : \"w-full\";\n }\n return \"\";\n});\n\nconst sizeDomain = computed(() => {\n if (props.variation) {\n return props.variation.length > 0 ? \"w-1/4\" : \"w-3/4\";\n }\n return \"\";\n});\n\nconst sizeVariations = computed(() => {\n if (props.content) {\n return props.content.domain ? \"w-2/4\" : \"w-3/4\";\n }\n return \"\";\n});\n\n/*\nconst findRelations = (relations: string[]): { id: number | string, term: string }[] => {\n let _relations = props.glossary.filter((term) => {\n return relations.some((x) => {\n return term.id === x;\n });\n });\n return _relations.map((x) => ({id:x.id, term:x.term}));\n};*/\n\nconst router = useRouter();\nconst goto = (term: string) => {\n if (router.hasRoute(\"glossary\")) {\n router.push({ path: \"/glossary\", query: { word: term } });\n }\n //console.log(router.hasRoute('signages'))\n //\n};\n\nconst id = ref(props.uid || useCreateUid());\n</script>\n\n<template>\n <div :id=\"id\">\n <div v-if=\"term && description\">\n <div v-if=\"collapse\" class=\"h-min divide-y\">\n <EpAccordeon :title=\"term\" :open=\"false\" :outlined=\"true\">\n <div class=\"flex justify-between\">\n <div :class=\"sizeGramIngo\">\n <p class=\"text-sm font-medium p-2\">\n {{ labelInformation }}\n </p>\n <div class=\"px-2 py-1\" v-if=\"content.gramInfo\">\n {{ content.gramInfo }}\n </div>\n </div>\n <div :class=\"sizeDomain\" v-if=\"content.domain\">\n <p class=\"text-sm font-medium p-2\">\n {{ labelDomain }}\n </p>\n <div class=\"px-2 py-1\">{{ content.domain }}</div>\n </div>\n <div :class=\"sizeVariations\" v-if=\"variation.length > 0\">\n <p class=\"text-sm font-medium p-2\">\n {{ labelVariations }}\n </p>\n <div class=\"px-2 py-1\">\n <span v-for=\"(_variation, i) in variation\" :key=\"`v-${i}`\"\n >{{ _variation\n }}{{ variation.length > i + 1 ? \", \" : \".\" }}</span\n >\n </div>\n </div>\n </div>\n <template v-if=\"!content.image\">\n <div class=\"px-2 py-6\" v-html=\"useRenderText(description)\" />\n </template>\n <template v-else>\n <div class=\"flex flex-row justify-between\">\n <div class=\"px-2 py-6\" v-html=\"useRenderText(description)\" />\n <div class=\"flex w-1/2 justify-center p-2\">\n <EpImg :src=\"content.image\" :cols=\"cols\" />\n </div>\n </div>\n </template>\n\n <div v-if=\"relation.length > 0\">\n <p class=\"text-sm font-medium p-2\">{{ labelRelations }}</p>\n <div class=\"p-2\">\n <template\n v-for=\"(_relation, i) in relation\"\n :key=\"`relation-${i}`\"\n >\n <button\n class=\"p-1 border rounded mr-1\"\n @click=\"goto(_relation.termId)\"\n >\n {{ _relation.term }}\n </button>\n </template>\n </div>\n </div>\n </EpAccordeon>\n </div>\n\n <div v-else class=\"h-min border divide-y bg-surface-2 dark:bg-surface-2-dark rounded\">\n <h2 class=\"text-xl font-semibold p-2\">{{ term }}</h2>\n\n <div class=\"flex justify-between\">\n <div :class=\"sizeGramIngo\">\n <p class=\"text-sm font-medium p-2\">{{ labelInformation }}</p>\n <div class=\"px-2 py-1\" v-if=\"content.gramInfo\">\n {{ content.gramInfo }}\n </div>\n </div>\n\n <div :class=\"sizeDomain\" v-if=\"content.domain\">\n <p class=\"text-sm font-medium p-2\">{{ labelDomain }}</p>\n <div class=\"px-2 py-1\">{{ content.domain }}</div>\n </div>\n\n <div :class=\"sizeVariations\" v-if=\"variation.length > 0\">\n <p class=\"text-sm font-medium p-2\">{{ labelVariations }}</p>\n <div class=\"px-2 py-1\">\n <span v-for=\"(_variation, i) in variation\" :key=\"`v-${i}`\">\n {{ _variation }}{{ variation.length > i + 1 ? \", \" : \".\" }}\n </span>\n </div>\n </div>\n </div>\n\n <template v-if=\"!content.image\">\n <div class=\"px-2 py-6\" v-html=\"useRenderText(description)\" />\n </template>\n <template v-else>\n <div class=\"flex flex-row justify-between\">\n <div class=\"px-2 py-6\" v-html=\"useRenderText(description)\" />\n <div class=\"flex w-1/2 justify-center p-2\">\n <EpImg :src=\"content.image\" :cols=\"cols\" />\n </div>\n </div>\n </template>\n\n <div v-if=\"relation.length > 0\">\n <p class=\"text-sm font-medium p-2\">{{ labelRelations }}</p>\n <div class=\"p-2\">\n <template v-for=\"(_relation, i) in relation\" :key=\"`relation-${i}`\">\n <button\n class=\"p-1 border rounded mr-1\"\n @click=\"goto(_relation.termId)\"\n >\n {{ _relation.term }}\n </button>\n </template>\n </div>\n </div>\n </div>\n </div>\n\n <div v-else>{{ labelNoDefinition }}</div>\n </div>\n</template>\n"],"names":["_createElementBlock","_openBlock","_createVNode","EpAccordeon","_createElementVNode","_toDisplayString","_Fragment","_renderList","_unref","EpImg"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import _sfc_main$1 from "../basics/EpIcon.vue.js";
|
|
|
3
3
|
import Comp from "../interactions/EpAccordeon.vue.js";
|
|
4
4
|
import { typeAlert, typeDivider } from "../../types/Alert.js";
|
|
5
5
|
import { useIcons } from "../../composables/useIcons.js";
|
|
6
|
-
import _sfc_main$2 from "../tools/RenderTextNode.
|
|
6
|
+
import _sfc_main$2 from "../tools/RenderTextNode.vue.js";
|
|
7
7
|
const _hoisted_1 = {
|
|
8
8
|
key: 0,
|
|
9
9
|
class: "flex items-center justify-center w-1/12"
|
|
@@ -6,42 +6,34 @@ import _sfc_main$1 from "../basics/EpChip.vue.js";
|
|
|
6
6
|
const _hoisted_1 = { class: "flex md:justify-end justify-center pt-5" };
|
|
7
7
|
const _hoisted_2 = { class: "text-center md:text-left" };
|
|
8
8
|
const _hoisted_3 = {
|
|
9
|
-
key: 0,
|
|
10
|
-
class: "text-3xl font-medium text-white sm:text-3xl"
|
|
11
|
-
};
|
|
12
|
-
const _hoisted_4 = {
|
|
13
|
-
key: 1,
|
|
14
|
-
class: "max-w-xl mt-4 text-2xl text-white"
|
|
15
|
-
};
|
|
16
|
-
const _hoisted_5 = {
|
|
17
9
|
key: 0,
|
|
18
10
|
class: "animate-bounce absolute bottom-10 left-1/2"
|
|
19
11
|
};
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
12
|
+
const _hoisted_4 = { key: 1 };
|
|
13
|
+
const _hoisted_5 = { class: "text-center md:text-left mt-16 mb-32" };
|
|
14
|
+
const _hoisted_6 = {
|
|
23
15
|
key: 0,
|
|
24
16
|
class: "text-4xl font-bold tracking-tight"
|
|
25
17
|
};
|
|
26
|
-
const
|
|
18
|
+
const _hoisted_7 = {
|
|
27
19
|
key: 1,
|
|
28
20
|
class: "w-1/2 mt-4"
|
|
29
21
|
};
|
|
30
|
-
const
|
|
31
|
-
const
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
22
|
+
const _hoisted_8 = { key: 2 };
|
|
23
|
+
const _hoisted_9 = { class: "flex flex-col-reverse lg:flex-row items-stretch" };
|
|
24
|
+
const _hoisted_10 = { class: "basis-1/2 bg-surface-2 dark:bg-surface-2-dark lg:min-h-48 p-4" };
|
|
25
|
+
const _hoisted_11 = { class: "flex justify-start pt-0 mb-4" };
|
|
26
|
+
const _hoisted_12 = {
|
|
35
27
|
key: 0,
|
|
36
28
|
class: "text-3xl sm:text-4xl xl:text-5xl font-bold tracking-tight"
|
|
37
29
|
};
|
|
38
|
-
const
|
|
30
|
+
const _hoisted_13 = {
|
|
39
31
|
key: 1,
|
|
40
32
|
class: "mt-4 text-xl"
|
|
41
33
|
};
|
|
42
|
-
const
|
|
43
|
-
const
|
|
44
|
-
const
|
|
34
|
+
const _hoisted_14 = { class: "mt-4" };
|
|
35
|
+
const _hoisted_15 = { class: "basis-1/2" };
|
|
36
|
+
const _hoisted_16 = ["src"];
|
|
45
37
|
const bgTextFit = "w-8/12";
|
|
46
38
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
47
39
|
__name: "EpHeader",
|
|
@@ -68,7 +60,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
68
60
|
type: { default: "imgBg" },
|
|
69
61
|
titlePosition: { default: "center" },
|
|
70
62
|
vAlign: { default: "items-center" },
|
|
71
|
-
hAlign: { default: "justify-center" }
|
|
63
|
+
hAlign: { default: "justify-center" },
|
|
64
|
+
darkText: { type: Boolean }
|
|
72
65
|
},
|
|
73
66
|
emits: ["clicked"],
|
|
74
67
|
setup(__props, { emit: __emit }) {
|
|
@@ -94,9 +87,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
94
87
|
const clickScroll = () => {
|
|
95
88
|
emit("clicked");
|
|
96
89
|
};
|
|
90
|
+
const darkText = computed(() => {
|
|
91
|
+
if (props.darkText) {
|
|
92
|
+
return "text-black";
|
|
93
|
+
}
|
|
94
|
+
return "text-white";
|
|
95
|
+
});
|
|
97
96
|
const { title, headerImgColor, big } = toRefs(props);
|
|
98
97
|
return (_ctx, _cache) => {
|
|
99
|
-
return
|
|
98
|
+
return __props.type === "imgBg" ? (openBlock(), createElementBlock("header", {
|
|
100
99
|
key: 0,
|
|
101
100
|
class: normalizeClass(`${unref(big) ? "h-screen " : "h-96"} items-center overflow-hidden relative `),
|
|
102
101
|
ref: "el"
|
|
@@ -109,56 +108,62 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
109
108
|
class: normalizeClass(`relative ${unref(big) ? "mb-36" : ""} h-full items-end`)
|
|
110
109
|
}, [
|
|
111
110
|
createElementVNode("div", _hoisted_1, [
|
|
112
|
-
|
|
111
|
+
__props.synchrone ? (openBlock(), createBlock(_sfc_main$1, {
|
|
113
112
|
key: 0,
|
|
114
113
|
prependIcon: unref(mdiCast),
|
|
115
114
|
size: "small"
|
|
116
115
|
}, {
|
|
117
116
|
default: withCtx(() => [
|
|
118
|
-
createTextVNode(toDisplayString(
|
|
117
|
+
createTextVNode(toDisplayString(__props.labels.synchrone), 1)
|
|
119
118
|
]),
|
|
120
119
|
_: 1
|
|
121
120
|
}, 8, ["prependIcon"])) : createCommentVNode("", true),
|
|
122
|
-
|
|
121
|
+
__props.duration ? (openBlock(), createBlock(_sfc_main$1, {
|
|
123
122
|
key: 1,
|
|
124
123
|
prependIcon: unref(mdiTimerOutline),
|
|
125
124
|
size: "small"
|
|
126
125
|
}, {
|
|
127
126
|
default: withCtx(() => [
|
|
128
|
-
createTextVNode(toDisplayString(
|
|
127
|
+
createTextVNode(toDisplayString(__props.duration), 1)
|
|
129
128
|
]),
|
|
130
129
|
_: 1
|
|
131
130
|
}, 8, ["prependIcon"])) : createCommentVNode("", true),
|
|
132
|
-
|
|
131
|
+
__props.assessment ? (openBlock(), createBlock(_sfc_main$1, {
|
|
133
132
|
key: 2,
|
|
134
133
|
prependIcon: unref(mdiChairSchool),
|
|
135
134
|
size: "small"
|
|
136
135
|
}, {
|
|
137
136
|
default: withCtx(() => [
|
|
138
|
-
createTextVNode(toDisplayString(
|
|
137
|
+
createTextVNode(toDisplayString(__props.labels.formatif), 1)
|
|
139
138
|
]),
|
|
140
139
|
_: 1
|
|
141
140
|
}, 8, ["prependIcon"])) : createCommentVNode("", true)
|
|
142
141
|
]),
|
|
143
142
|
createElementVNode("div", {
|
|
144
|
-
class: normalizeClass(`${
|
|
143
|
+
class: normalizeClass(`${__props.vAlign} ${__props.hAlign} flex w-full grow h-96 `)
|
|
145
144
|
}, [
|
|
146
145
|
createElementVNode("div", {
|
|
147
146
|
class: normalizeClass(`${bgTextFit}`)
|
|
148
147
|
}, [
|
|
149
|
-
unref(title) ||
|
|
148
|
+
unref(title) || __props.subtitle ? (openBlock(), createElementBlock("div", {
|
|
150
149
|
key: 0,
|
|
151
|
-
class: normalizeClass(`${
|
|
150
|
+
class: normalizeClass(`${__props.textBg ? "inline-block backdrop-blur-lg backdrop-brightness-65 backdrop-opacity-95 rounded" : ""} p-4 md:items-center`)
|
|
152
151
|
}, [
|
|
153
152
|
createElementVNode("div", _hoisted_2, [
|
|
154
|
-
unref(title) ? (openBlock(), createElementBlock("h1",
|
|
155
|
-
|
|
153
|
+
unref(title) ? (openBlock(), createElementBlock("h1", {
|
|
154
|
+
key: 0,
|
|
155
|
+
class: normalizeClass(`text-3xl font-medium ${darkText.value} sm:text-3xl`)
|
|
156
|
+
}, toDisplayString(unref(title)), 3)) : createCommentVNode("", true),
|
|
157
|
+
__props.subtitle ? (openBlock(), createElementBlock("h2", {
|
|
158
|
+
key: 1,
|
|
159
|
+
class: normalizeClass(`max-w-xl mt-4 text-2xl ${darkText.value}`)
|
|
160
|
+
}, toDisplayString(__props.subtitle), 3)) : createCommentVNode("", true)
|
|
156
161
|
])
|
|
157
162
|
], 2)) : createCommentVNode("", true)
|
|
158
163
|
], 2)
|
|
159
164
|
], 2)
|
|
160
165
|
], 2),
|
|
161
|
-
props.big ? (openBlock(), createElementBlock("div",
|
|
166
|
+
props.big ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
162
167
|
createElementVNode("div", {
|
|
163
168
|
class: "mx-auto w-12 rounded-full p-2",
|
|
164
169
|
onClick: clickScroll
|
|
@@ -170,65 +175,65 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
170
175
|
])
|
|
171
176
|
])) : createCommentVNode("", true),
|
|
172
177
|
createVNode(SvgFilter)
|
|
173
|
-
], 2)) :
|
|
174
|
-
createElementVNode("div",
|
|
175
|
-
unref(title) ? (openBlock(), createElementBlock("h1",
|
|
176
|
-
|
|
178
|
+
], 2)) : __props.type === "simple" ? (openBlock(), createElementBlock("header", _hoisted_4, [
|
|
179
|
+
createElementVNode("div", _hoisted_5, [
|
|
180
|
+
unref(title) ? (openBlock(), createElementBlock("h1", _hoisted_6, toDisplayString(unref(title)), 1)) : createCommentVNode("", true),
|
|
181
|
+
__props.subtitle ? (openBlock(), createElementBlock("h2", _hoisted_7, toDisplayString(__props.subtitle), 1)) : createCommentVNode("", true)
|
|
177
182
|
])
|
|
178
|
-
])) : (openBlock(), createElementBlock("header",
|
|
179
|
-
createElementVNode("div",
|
|
180
|
-
createElementVNode("div",
|
|
181
|
-
createElementVNode("div",
|
|
182
|
-
|
|
183
|
+
])) : (openBlock(), createElementBlock("header", _hoisted_8, [
|
|
184
|
+
createElementVNode("div", _hoisted_9, [
|
|
185
|
+
createElementVNode("div", _hoisted_10, [
|
|
186
|
+
createElementVNode("div", _hoisted_11, [
|
|
187
|
+
__props.synchrone ? (openBlock(), createBlock(_sfc_main$1, {
|
|
183
188
|
key: 0,
|
|
184
189
|
prependIcon: unref(mdiCast),
|
|
185
190
|
size: "small"
|
|
186
191
|
}, {
|
|
187
192
|
default: withCtx(() => [
|
|
188
|
-
createTextVNode(toDisplayString(
|
|
193
|
+
createTextVNode(toDisplayString(__props.labels.synchrone), 1)
|
|
189
194
|
]),
|
|
190
195
|
_: 1
|
|
191
196
|
}, 8, ["prependIcon"])) : createCommentVNode("", true),
|
|
192
|
-
|
|
197
|
+
__props.duration ? (openBlock(), createBlock(_sfc_main$1, {
|
|
193
198
|
key: 1,
|
|
194
199
|
prependIcon: unref(mdiTimerOutline),
|
|
195
200
|
size: "small"
|
|
196
201
|
}, {
|
|
197
202
|
default: withCtx(() => [
|
|
198
|
-
createTextVNode(toDisplayString(
|
|
203
|
+
createTextVNode(toDisplayString(__props.duration), 1)
|
|
199
204
|
]),
|
|
200
205
|
_: 1
|
|
201
206
|
}, 8, ["prependIcon"])) : createCommentVNode("", true),
|
|
202
|
-
|
|
207
|
+
__props.assessment ? (openBlock(), createBlock(_sfc_main$1, {
|
|
203
208
|
key: 2,
|
|
204
209
|
prependIcon: unref(mdiChairSchool),
|
|
205
210
|
size: "small"
|
|
206
211
|
}, {
|
|
207
212
|
default: withCtx(() => [
|
|
208
|
-
createTextVNode(toDisplayString(
|
|
213
|
+
createTextVNode(toDisplayString(__props.labels.formatif), 1)
|
|
209
214
|
]),
|
|
210
215
|
_: 1
|
|
211
216
|
}, 8, ["prependIcon"])) : createCommentVNode("", true)
|
|
212
217
|
]),
|
|
213
218
|
createElementVNode("div", {
|
|
214
|
-
class: normalizeClass(`${
|
|
219
|
+
class: normalizeClass(`${__props.vAlign} flex h-full pb-8 pl-6 max-w-3xl`)
|
|
215
220
|
}, [
|
|
216
221
|
createElementVNode("div", null, [
|
|
217
|
-
unref(title) ? (openBlock(), createElementBlock("h1",
|
|
218
|
-
|
|
219
|
-
createElementVNode("div",
|
|
222
|
+
unref(title) ? (openBlock(), createElementBlock("h1", _hoisted_12, toDisplayString(unref(title)), 1)) : createCommentVNode("", true),
|
|
223
|
+
__props.subtitle ? (openBlock(), createElementBlock("p", _hoisted_13, toDisplayString(__props.subtitle), 1)) : createCommentVNode("", true),
|
|
224
|
+
createElementVNode("div", _hoisted_14, [
|
|
220
225
|
renderSlot(_ctx.$slots, "default")
|
|
221
226
|
])
|
|
222
227
|
])
|
|
223
228
|
], 2)
|
|
224
229
|
]),
|
|
225
|
-
createElementVNode("div",
|
|
230
|
+
createElementVNode("div", _hoisted_15, [
|
|
226
231
|
createElementVNode("img", {
|
|
227
232
|
src: bgImg.value,
|
|
228
233
|
alt: "",
|
|
229
234
|
class: "h-32 lg:h-full size-full object-cover",
|
|
230
235
|
style: normalizeStyle(`filter:url(#${unref(headerImgColor)});`)
|
|
231
|
-
}, null, 12,
|
|
236
|
+
}, null, 12, _hoisted_16)
|
|
232
237
|
])
|
|
233
238
|
])
|
|
234
239
|
]));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EpHeader.vue.js","sources":["../../../src/components/signages/EpHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport { mdiCast } from \"@mdi/js\";\nimport { mdiTimerOutline } from \"@mdi/js\";\nimport { mdiChairSchool } from \"@mdi/js\";\nimport { mdiChevronDown } from \"@mdi/js\";\nimport SvgFilter from \"~/components/tools/SvgFilter.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpChip from \"~/components/basics/EpChip.vue\";\nimport type { EpHeaderProps } from \"~/types/signages/EpHeader\";\n\nconst props = withDefaults(defineProps<EpHeaderProps>(), {\n title: null,\n icon: null,\n src: null,\n big: false,\n synchrone: false,\n hideImg: false,\n duration: null,\n assessment: null,\n labels: () => {\n return {\n synchrone: \"Synchrone\",\n formatif: \"Formatif\",\n };\n },\n textBg: true,\n type: \"imgBg\",\n titlePosition: \"center\",\n vAlign: \"items-center\",\n hAlign: \"justify-center\",\n});\n\nconst bgTextFit = \"w-8/12\"; // ''\n\nconst styles = computed(() => {\n return ` \n\tflex\n\tflex-col\n\toverflow-hidden \n\tw-full \n\tabsolute\n\t${props.big ? \"min-h-screen\" : \"h-96\"}\n\tbg-cover\n\tbg-center`;\n});\n\nconst bgImg = computed(() => {\n if (props.src) {\n return props.src;\n }\n return `https://live.staticflickr.com/1757/42677241511_a350206ac2_b.jpg`;\n});\n\nconst emit = defineEmits<{\n (e: \"clicked\"): void;\n}>();\n\nconst clickScroll = (): void => {\n emit(\"clicked\");\n};\n\nconst { title, headerImgColor, big } = toRefs(props);\n</script>\n\n<template>\n <header\n v-if=\"type === 'imgBg'\"\n :class=\"`${\n big ? 'h-screen ' : 'h-96'\n } items-center overflow-hidden relative `\"\n ref=\"el\"\n >\n <div\n :class=\"styles\"\n :style=\"`background-image:url('${bgImg}'); filter:url(#${headerImgColor});`\"\n />\n\n <div :class=\"`relative ${big ? 'mb-36' : ''} h-full items-end`\">\n <div class=\"flex md:justify-end justify-center pt-5\">\n <EpChip v-if=\"synchrone\" :prependIcon=\"mdiCast\" size=\"small\">{{\n labels.synchrone\n }}</EpChip>\n <EpChip v-if=\"duration\" :prependIcon=\"mdiTimerOutline\" size=\"small\">\n {{ duration }}</EpChip\n >\n <EpChip v-if=\"assessment\" :prependIcon=\"mdiChairSchool\" size=\"small\">{{\n labels.formatif\n }}</EpChip>\n </div>\n <div :class=\"`${vAlign} ${hAlign} flex w-full grow h-96 `\">\n <div :class=\"`${bgTextFit}`\">\n <div\n v-if=\"title || subtitle\"\n :class=\"`${\n textBg\n ? 'inline-block backdrop-blur-lg backdrop-brightness-65 backdrop-opacity-95 rounded'\n : ''\n } p-4 md:items-center`\"\n >\n <div class=\"text-center md:text-left\">\n <h1\n v-if=\"title\"\n class=\"text-3xl font-medium
|
|
1
|
+
{"version":3,"file":"EpHeader.vue.js","sources":["../../../src/components/signages/EpHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport { mdiCast } from \"@mdi/js\";\nimport { mdiTimerOutline } from \"@mdi/js\";\nimport { mdiChairSchool } from \"@mdi/js\";\nimport { mdiChevronDown } from \"@mdi/js\";\nimport SvgFilter from \"~/components/tools/SvgFilter.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpChip from \"~/components/basics/EpChip.vue\";\nimport type { EpHeaderProps } from \"~/types/signages/EpHeader\";\n\nconst props = withDefaults(defineProps<EpHeaderProps>(), {\n title: null,\n icon: null,\n src: null,\n big: false,\n synchrone: false,\n hideImg: false,\n duration: null,\n assessment: null,\n labels: () => {\n return {\n synchrone: \"Synchrone\",\n formatif: \"Formatif\",\n };\n },\n textBg: true,\n type: \"imgBg\",\n titlePosition: \"center\",\n vAlign: \"items-center\",\n hAlign: \"justify-center\",\n});\n\nconst bgTextFit = \"w-8/12\"; // ''\n\nconst styles = computed(() => {\n return ` \n\tflex\n\tflex-col\n\toverflow-hidden \n\tw-full \n\tabsolute\n\t${props.big ? \"min-h-screen\" : \"h-96\"}\n\tbg-cover\n\tbg-center`;\n});\n\nconst bgImg = computed(() => {\n if (props.src) {\n return props.src;\n }\n return `https://live.staticflickr.com/1757/42677241511_a350206ac2_b.jpg`;\n});\n\nconst emit = defineEmits<{\n (e: \"clicked\"): void;\n}>();\n\nconst clickScroll = (): void => {\n emit(\"clicked\");\n};\n\nconst darkText = computed(()=> {\n if(props.darkText){\n return 'text-black'\n }\n return 'text-white'\n})\n\nconst { title, headerImgColor, big } = toRefs(props);\n</script>\n\n<template>\n <header\n v-if=\"type === 'imgBg'\"\n :class=\"`${\n big ? 'h-screen ' : 'h-96'\n } items-center overflow-hidden relative `\"\n ref=\"el\"\n >\n <div\n :class=\"styles\"\n :style=\"`background-image:url('${bgImg}'); filter:url(#${headerImgColor});`\"\n />\n\n <div :class=\"`relative ${big ? 'mb-36' : ''} h-full items-end`\">\n <div class=\"flex md:justify-end justify-center pt-5\">\n <EpChip v-if=\"synchrone\" :prependIcon=\"mdiCast\" size=\"small\">{{\n labels.synchrone\n }}</EpChip>\n <EpChip v-if=\"duration\" :prependIcon=\"mdiTimerOutline\" size=\"small\">\n {{ duration }}</EpChip\n >\n <EpChip v-if=\"assessment\" :prependIcon=\"mdiChairSchool\" size=\"small\">{{\n labels.formatif\n }}</EpChip>\n </div>\n <div :class=\"`${vAlign} ${hAlign} flex w-full grow h-96 `\">\n <div :class=\"`${bgTextFit}`\">\n <div\n v-if=\"title || subtitle\"\n :class=\"`${\n textBg\n ? 'inline-block backdrop-blur-lg backdrop-brightness-65 backdrop-opacity-95 rounded'\n : ''\n } p-4 md:items-center`\"\n >\n <div class=\"text-center md:text-left\">\n <h1\n v-if=\"title\"\n :class=\"`text-3xl font-medium ${darkText} sm:text-3xl`\"\n >\n {{ title }}\n </h1>\n <h2\n v-if=\"subtitle\"\n :class=\"`max-w-xl mt-4 text-2xl ${darkText}`\"\n >\n {{ subtitle }}\n </h2>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div v-if=\"props.big\" class=\"animate-bounce absolute bottom-10 left-1/2\">\n <div\n class=\"mx-auto w-12 rounded-full p-2\"\n @click=\"clickScroll\"\n >\n <EpIcon :iconPath=\"mdiChevronDown\" size=\"32\" />\n </div>\n </div>\n <SvgFilter></SvgFilter>\n </header>\n\n <header v-else-if=\"type === 'simple'\">\n <div class=\"text-center md:text-left mt-16 mb-32\">\n <h1\n v-if=\"title\"\n class=\"text-4xl font-bold tracking-tight\"\n >\n {{ title }}\n </h1>\n <h2 v-if=\"subtitle\" class=\"w-1/2 mt-4\">\n {{ subtitle }}\n </h2>\n </div>\n </header>\n\n <header v-else=\"type === 'sideBy'\">\n <div class=\"flex flex-col-reverse lg:flex-row items-stretch\">\n <div class=\"basis-1/2 bg-surface-2 dark:bg-surface-2-dark lg:min-h-48 p-4\">\n <div class=\"flex justify-start pt-0 mb-4\">\n <EpChip v-if=\"synchrone\" :prependIcon=\"mdiCast\" size=\"small\">{{\n labels.synchrone\n }}</EpChip>\n <EpChip v-if=\"duration\" :prependIcon=\"mdiTimerOutline\" size=\"small\">\n {{ duration }}</EpChip\n >\n <EpChip\n v-if=\"assessment\"\n :prependIcon=\"mdiChairSchool\"\n size=\"small\"\n >{{ labels.formatif }}</EpChip\n >\n </div>\n <div :class=\"`${vAlign} flex h-full pb-8 pl-6 max-w-3xl`\">\n <div>\n <h1\n v-if=\"title\"\n class=\"text-3xl sm:text-4xl xl:text-5xl font-bold tracking-tight\"\n >\n {{ title }}\n </h1>\n <p\n v-if=\"subtitle\"\n class=\"mt-4 text-xl\"\n >\n {{ subtitle }}\n </p>\n <div class=\"mt-4\">\n <slot />\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"basis-1/2\">\n <img\n :src=\"bgImg\"\n alt=\"\"\n class=\"h-32 lg:h-full size-full object-cover\"\n :style=\"`filter:url(#${headerImgColor});`\"\n />\n </div>\n </div>\n </header>\n</template>\n"],"names":["_createElementBlock","_normalizeClass","_unref","_createElementVNode","_normalizeStyle","_createBlock","EpChip","_createTextVNode","_toDisplayString","_openBlock","_createVNode","EpIcon","_renderSlot"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import _sfc_main$1 from "../basics/EpCard.vue.js";
|
|
|
3
3
|
import _sfc_main$4 from "../basics/EpDivider.vue.js";
|
|
4
4
|
import _sfc_main$2 from "../basics/EpIcon.vue.js";
|
|
5
5
|
import { mdiFormatQuoteOpen } from "@mdi/js";
|
|
6
|
-
import _sfc_main$3 from "../tools/RenderTextNode.
|
|
6
|
+
import _sfc_main$3 from "../tools/RenderTextNode.vue.js";
|
|
7
7
|
const _hoisted_1 = {
|
|
8
8
|
class: /* @__PURE__ */ normalizeClass(`md:flex md:flex-wrap rounded-md`)
|
|
9
9
|
};
|