ep-lib-ts 1.1.13 → 1.1.14
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/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 +4 -4
- 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 +1 -1
- package/dist/components/educationals/EpFillBlanks.vue.js.map +1 -1
- 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 +10 -10
- package/dist/components/educationals/EpSpecificObjective.vue.js.map +1 -1
- package/dist/components/forms/EpSelect.vue.js +3 -3
- package/dist/components/forms/EpSelect.vue.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 +13 -14
- package/dist/components/interactions/EpAssociation.vue.js.map +1 -1
- package/dist/components/interactions/EpContentSlider.vue.js +2 -2
- 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 +1 -1
- 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 +22 -22
- 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 +1 -56
- package/dist/components/tools/Details.vue.js.map +1 -1
- package/dist/components/tools/Details.vue2.js +56 -1
- package/dist/components/tools/Details.vue2.js.map +1 -1
- package/dist/components/tools/RenderTextNode.vue.js +1 -19
- package/dist/components/tools/RenderTextNode.vue.js.map +1 -1
- package/dist/components/tools/RenderTextNode.vue2.js +19 -1
- 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 +1 -50
- package/dist/components/tools/TextMedia.vue.js.map +1 -1
- package/dist/components/tools/TextMedia.vue2.js +50 -1
- 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/style.css +81 -81
- package/package.json +40 -43
|
@@ -48,23 +48,23 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
48
48
|
};
|
|
49
49
|
return (_ctx, _cache) => {
|
|
50
50
|
return openBlock(), createElementBlock("div", {
|
|
51
|
-
class: normalizeClass(`relative ${
|
|
51
|
+
class: normalizeClass(`relative ${_ctx.thumbnail || _ctx.inline ? "inline" : ""}`)
|
|
52
52
|
}, [
|
|
53
53
|
createVNode(_sfc_main$1, {
|
|
54
54
|
ref_key: "epImg",
|
|
55
55
|
ref: epImg,
|
|
56
|
-
src:
|
|
57
|
-
alt:
|
|
58
|
-
height:
|
|
59
|
-
width:
|
|
60
|
-
caption:
|
|
61
|
-
bib:
|
|
62
|
-
title:
|
|
63
|
-
cols:
|
|
64
|
-
"no-modal":
|
|
65
|
-
thumbnail:
|
|
66
|
-
"size-thumbnail":
|
|
67
|
-
inline:
|
|
56
|
+
src: _ctx.src,
|
|
57
|
+
alt: _ctx.alt,
|
|
58
|
+
height: _ctx.height,
|
|
59
|
+
width: _ctx.width,
|
|
60
|
+
caption: _ctx.caption,
|
|
61
|
+
bib: _ctx.bib,
|
|
62
|
+
title: _ctx.title,
|
|
63
|
+
cols: _ctx.cols,
|
|
64
|
+
"no-modal": _ctx.noModal,
|
|
65
|
+
thumbnail: _ctx.thumbnail,
|
|
66
|
+
"size-thumbnail": _ctx.sizeThumbnail,
|
|
67
|
+
inline: _ctx.inline
|
|
68
68
|
}, null, 8, ["src", "alt", "height", "width", "caption", "bib", "title", "cols", "no-modal", "thumbnail", "size-thumbnail", "inline"]),
|
|
69
69
|
hasTarget.value ? (openBlock(), createBlock(Teleport, {
|
|
70
70
|
key: 0,
|
|
@@ -77,13 +77,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
77
77
|
onClick: toggleShow
|
|
78
78
|
}, [
|
|
79
79
|
createVNode(_sfc_main$2, {
|
|
80
|
-
size: `${Number(
|
|
81
|
-
"icon-path":
|
|
80
|
+
size: `${Number(_ctx.cols) <= 2 ? "45" : "60"}`,
|
|
81
|
+
"icon-path": _ctx.icon
|
|
82
82
|
}, null, 8, ["size", "icon-path"]),
|
|
83
|
-
Number(
|
|
83
|
+
Number(_ctx.cols) > 1 ? (openBlock(), createElementBlock("div", {
|
|
84
84
|
key: 0,
|
|
85
|
-
class: normalizeClass(`${Number(
|
|
86
|
-
innerHTML: unref(useRenderText)(
|
|
85
|
+
class: normalizeClass(`${Number(_ctx.cols) <= 2 ? "hidden md:block" : "md:text-base"} text-xs overflow-auto md:p-1`),
|
|
86
|
+
innerHTML: unref(useRenderText)(_ctx.label)
|
|
87
87
|
}, null, 10, _hoisted_1)) : createCommentVNode("", true)
|
|
88
88
|
])) : createCommentVNode("", true)
|
|
89
89
|
], 8, ["to"])) : createCommentVNode("", true)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EpSensibleImage.vue2.js","sources":["../../../src/components/medias/EpSensibleImage.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { watchEffect, ref } from \"vue\";\nimport EpImg from \"~/components/basics/EpImg.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport { mdiEyeOffOutline } from \"@mdi/js\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport type { EpSensibleImageProps } from \"~/types/medias/EpSensibleImage\";\n\nconst props = withDefaults(defineProps<EpSensibleImageProps>(), {\n alt: \"Image snfas\",\n cols: \"6\",\n label:\n \"<h5>Ce contenu est sensible</h5><p>Cliquez pour afficher l'image.</p>\",\n icon:mdiEyeOffOutline,\n thumbnail: false,\n sizeThumbnail: \"medium\",\n inline: false\n});\n\nconst epImg = ref<{ imgEl: HTMLImageElement | null } | null>(null);\nconst parentRef = ref<HTMLElement | null>(null);\nconst hasTarget = ref(false);\n\nwatchEffect(() => {\n const img = epImg.value?.imgEl;\n if (img && img.parentNode) {\n const parent = img.parentNode;\n\n // Placer le parent en position relative pour pouvoir positionner l’overlay\n if (parent instanceof HTMLElement) {\n if (!parent.classList.contains(\"ep-sensible-content\")) {\n parent.classList.add(\"ep-sensible-content\");\n hasTarget.value = true;\n parentRef.value = parent;\n }\n }\n }\n});\n\nconst show = ref(false);\nconst toggleShow = () => {\n if (!show.value) {\n show.value = true;\n }\n};\n</script>\n\n<template>\n <div :class=\"`relative ${(thumbnail || inline)? 'inline' : ''}`\">\n <EpImg\n ref=\"epImg\"\n :src=\"src\"\n :alt=\"alt\"\n :height=\"height\"\n :width=\"width\"\n :caption=\"caption\"\n :bib=\"bib\"\n :title=\"title\"\n :cols=\"cols\"\n :no-modal=\"noModal\"\n :thumbnail=\"thumbnail\"\n :size-thumbnail=\"sizeThumbnail\"\n :inline=\"inline\"\n />\n\n <!-- Overlay -->\n <Teleport v-if=\"hasTarget\" :to=\"parentRef\">\n <div\n v-if=\"!show\"\n id=\"overlay\"\n class=\"text-white absolute z-3 top-0 left-0 w-full h-full inset-0 bg-black/50 backdrop-blur-2xl flex flex-col gap-2 justify-center items-center text-center\"\n @click=\"toggleShow\"\n >\n <EpIcon\n :size=\"`${Number(cols) <= 2 ? '45' : '60'}`\"\n :icon-path=\"icon\"\n />\n <div\n :class=\"`${\n Number(cols) <= 2 ? 'hidden md:block' : 'md:text-base'\n } text-xs overflow-auto md:p-1`\"\n v-if=\"Number(cols) > 1\"\n v-html=\"useRenderText(label)\"\n />\n </div>\n </Teleport>\n </div>\n</template>\n\n<style scoped>\n.ep-sensible-content {\n position: relative;\n}\n</style>\n"],"names":["_createElementBlock","_normalizeClass","_createVNode","EpImg","_createBlock","_Teleport","EpIcon","_unref"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,UAAM,QAAQ,IAA+C,IAAI;AACjE,UAAM,YAAY,IAAwB,IAAI;AAC9C,UAAM,YAAY,IAAI,KAAK;AAE3B,gBAAY,MAAM;;AAChB,YAAM,OAAM,WAAM,UAAN,mBAAa;AACzB,UAAI,OAAO,IAAI,YAAY;AACzB,cAAM,SAAS,IAAI;AAGnB,YAAI,kBAAkB,aAAa;AACjC,cAAI,CAAC,OAAO,UAAU,SAAS,qBAAqB,GAAG;AACrD,mBAAO,UAAU,IAAI,qBAAqB;AAC1C,sBAAU,QAAQ;AAClB,sBAAU,QAAQ;AAAA,UACpB;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAED,UAAM,OAAO,IAAI,KAAK;AACtB,UAAM,aAAa,MAAM;AACvB,UAAI,CAAC,KAAK,OAAO;AACf,aAAK,QAAQ;AAAA,MACf;AAAA,IACF;;0BAIEA,mBAsCM,OAAA;AAAA,QAtCA,OAAKC,eAAA,
|
|
1
|
+
{"version":3,"file":"EpSensibleImage.vue2.js","sources":["../../../src/components/medias/EpSensibleImage.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { watchEffect, ref } from \"vue\";\nimport EpImg from \"~/components/basics/EpImg.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport { mdiEyeOffOutline } from \"@mdi/js\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport type { EpSensibleImageProps } from \"~/types/medias/EpSensibleImage\";\n\nconst props = withDefaults(defineProps<EpSensibleImageProps>(), {\n alt: \"Image snfas\",\n cols: \"6\",\n label:\n \"<h5>Ce contenu est sensible</h5><p>Cliquez pour afficher l'image.</p>\",\n icon:mdiEyeOffOutline,\n thumbnail: false,\n sizeThumbnail: \"medium\",\n inline: false\n});\n\nconst epImg = ref<{ imgEl: HTMLImageElement | null } | null>(null);\nconst parentRef = ref<HTMLElement | null>(null);\nconst hasTarget = ref(false);\n\nwatchEffect(() => {\n const img = epImg.value?.imgEl;\n if (img && img.parentNode) {\n const parent = img.parentNode;\n\n // Placer le parent en position relative pour pouvoir positionner l’overlay\n if (parent instanceof HTMLElement) {\n if (!parent.classList.contains(\"ep-sensible-content\")) {\n parent.classList.add(\"ep-sensible-content\");\n hasTarget.value = true;\n parentRef.value = parent;\n }\n }\n }\n});\n\nconst show = ref(false);\nconst toggleShow = () => {\n if (!show.value) {\n show.value = true;\n }\n};\n</script>\n\n<template>\n <div :class=\"`relative ${(thumbnail || inline)? 'inline' : ''}`\">\n <EpImg\n ref=\"epImg\"\n :src=\"src\"\n :alt=\"alt\"\n :height=\"height\"\n :width=\"width\"\n :caption=\"caption\"\n :bib=\"bib\"\n :title=\"title\"\n :cols=\"cols\"\n :no-modal=\"noModal\"\n :thumbnail=\"thumbnail\"\n :size-thumbnail=\"sizeThumbnail\"\n :inline=\"inline\"\n />\n\n <!-- Overlay -->\n <Teleport v-if=\"hasTarget\" :to=\"parentRef\">\n <div\n v-if=\"!show\"\n id=\"overlay\"\n class=\"text-white absolute z-3 top-0 left-0 w-full h-full inset-0 bg-black/50 backdrop-blur-2xl flex flex-col gap-2 justify-center items-center text-center\"\n @click=\"toggleShow\"\n >\n <EpIcon\n :size=\"`${Number(cols) <= 2 ? '45' : '60'}`\"\n :icon-path=\"icon\"\n />\n <div\n :class=\"`${\n Number(cols) <= 2 ? 'hidden md:block' : 'md:text-base'\n } text-xs overflow-auto md:p-1`\"\n v-if=\"Number(cols) > 1\"\n v-html=\"useRenderText(label)\"\n />\n </div>\n </Teleport>\n </div>\n</template>\n\n<style scoped>\n.ep-sensible-content {\n position: relative;\n}\n</style>\n"],"names":["_createElementBlock","_normalizeClass","thumbnail","inline","_createVNode","EpImg","src","alt","height","width","caption","bib","title","cols","noModal","sizeThumbnail","_createBlock","_Teleport","EpIcon","icon","_unref","label"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,UAAM,QAAQ,IAA+C,IAAI;AACjE,UAAM,YAAY,IAAwB,IAAI;AAC9C,UAAM,YAAY,IAAI,KAAK;AAE3B,gBAAY,MAAM;;AAChB,YAAM,OAAM,WAAM,UAAN,mBAAa;AACzB,UAAI,OAAO,IAAI,YAAY;AACzB,cAAM,SAAS,IAAI;AAGnB,YAAI,kBAAkB,aAAa;AACjC,cAAI,CAAC,OAAO,UAAU,SAAS,qBAAqB,GAAG;AACrD,mBAAO,UAAU,IAAI,qBAAqB;AAC1C,sBAAU,QAAQ;AAClB,sBAAU,QAAQ;AAAA,UACpB;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAED,UAAM,OAAO,IAAI,KAAK;AACtB,UAAM,aAAa,MAAM;AACvB,UAAI,CAAC,KAAK,OAAO;AACf,aAAK,QAAQ;AAAA,MACf;AAAA,IACF;;0BAIEA,mBAsCM,OAAA;AAAA,QAtCA,OAAKC,eAAA,YAAeC,KAAAA,aAAaC,KAAAA,SAAM,WAAA,EAAA,EAAA;AAAA,MAAA;QAC3CC,YAcEC,aAAA;AAAA,mBAbI;AAAA,UAAJ,KAAI;AAAA,UACH,KAAKC,KAAAA;AAAAA,UACL,KAAKC,KAAAA;AAAAA,UACL,QAAQC,KAAAA;AAAAA,UACR,OAAOC,KAAAA;AAAAA,UACP,SAASC,KAAAA;AAAAA,UACT,KAAKC,KAAAA;AAAAA,UACL,OAAOC,KAAAA;AAAAA,UACP,MAAMC,KAAAA;AAAAA,UACN,YAAUC,KAAAA;AAAAA,UACV,WAAWZ,KAAAA;AAAAA,UACX,kBAAgBa,KAAAA;AAAAA,UAChB,QAAQZ,KAAAA;AAAAA,QAAAA;QAIK,UAAA,sBAAhBa,YAmBWC,UAAA;AAAA;UAnBiB,IAAI,UAAA;AAAA,QAAA;WAErB,KAAA,sBADTjB,mBAiBM,OAAA;AAAA;YAfJ,IAAG;AAAA,YACH,OAAM;AAAA,YACL,SAAO;AAAA,UAAA;YAERI,YAGEc,aAAA;AAAA,cAFC,MAAI,GAAK,OAAOL,KAAAA,IAAI,KAAA,IAAA,OAAA,IAAA;AAAA,cACpB,aAAWM,KAAAA;AAAAA,YAAAA;YAMN,OAAON,KAAAA,IAAI,IAAA,kBAJnBb,mBAME,OAAA;AAAA;cALC,OAAKC,eAAA,GAAkB,OAAOY,KAAAA,IAAI,KAAA,IAAA,oBAAA;cAInC,WAAQO,MAAA,aAAA,EAAcC,KAAAA,KAAK;AAAA,YAAA;;;;;;;"}
|
|
@@ -54,10 +54,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
54
54
|
return (_ctx, _cache) => {
|
|
55
55
|
return openBlock(), createBlock(_sfc_main$1, {
|
|
56
56
|
title: unref(labelCard),
|
|
57
|
-
labelIntentions:
|
|
57
|
+
labelIntentions: _ctx.labelIntentions,
|
|
58
58
|
icon: unref(mdiLaptop),
|
|
59
59
|
flat: "",
|
|
60
|
-
type:
|
|
60
|
+
type: _ctx.type,
|
|
61
61
|
hideIcon: unref(hideIcon),
|
|
62
62
|
mandateLevel: unref(mandateLevel)
|
|
63
63
|
}, createSlots({
|
|
@@ -100,7 +100,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
100
100
|
href: unref(url)
|
|
101
101
|
}, {
|
|
102
102
|
default: withCtx(() => [
|
|
103
|
-
createTextVNode(toDisplayString(
|
|
103
|
+
createTextVNode(toDisplayString(_ctx.labelAccess), 1)
|
|
104
104
|
]),
|
|
105
105
|
_: 1
|
|
106
106
|
}, 8, ["prependIcon", "href"])) : createCommentVNode("", true)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EpSoftware.vue.js","sources":["../../../src/components/medias/EpSoftware.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpBtn from \"~/components/basics/EpBtn.vue\";\nimport EpChip from \"~/components/basics/EpChip.vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { mdiLaptop } from \"@mdi/js\";\nimport { mdiOpenInNew } from \"@mdi/js\";\nimport type { EpSoftwareProps } from \"~/types/medias/EpSoftware\";\n\nconst props = withDefaults(defineProps<EpSoftwareProps>(), {\n icon: \"mdiLaptop\",\n hideCover: false,\n intentions: \"\",\n cover: \"\",\n type: \"base\",\n hideIcon: false,\n labelAccess: \"Accéder au logiciel\",\n});\n\nconst old_image =\n \"https://live.staticflickr.com/4868/45940268562_c5f7fdd06b_q.jpg\";\n\nconst hasCover = computed(() => {\n if (props.cover === old_image || props.cover.trim().length === 0) {\n return false;\n }\n return true;\n});\n\nconst {\n title,\n intentions,\n cover,\n hideCover,\n version,\n labelCard,\n hideIcon,\n mandateLevel,\n url,\n} = toRefs(props);\n</script>\n\n<template>\n <EpEdu\n :title=\"labelCard\"\n :labelIntentions=\"labelIntentions\"\n :icon=\"mdiLaptop\"\n flat\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n :mandateLevel=\"mandateLevel\"\n >\n <template #intentions v-if=\"intentions\">\n <div v-html=\"useRenderText(intentions)\" />\n </template>\n <template #content>\n <div\n class=\"flex flex-col items-center border rounded-lg bg-surface-2 dark:bg-surface-2-dark md:flex-row mt-2\"\n >\n <template v-if=\"!hideCover\">\n <img\n v-if=\"hasCover\"\n class=\"h-24 w-full rounded-t-lg object-cover md:h-auto md:w-24 md:rounded-none md:rounded-l-lg\"\n :src=\"cover\"\n :alt=\"`image de la lecture ${title}`\"\n />\n <div\n v-else\n class=\"h-96 w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg flex justify-center items-center text-base-dark dark:text-white\"\n >\n <EpIcon :icon-path=\"mdiLaptop\" size=\"95\" />\n </div>\n </template>\n <div class=\"w-full\">\n <div class=\"w-full px-5\">\n <div class=\"flex justify-between items-center rounded-t-md p-2\">\n <h4>\n {{ title }}\n <EpChip size=\"small\" type=\"primary\" v-if=\"version\">{{\n version\n }}</EpChip>\n </h4>\n <EpBtn\n v-if=\"url\"\n rounded\n type=\"primary\"\n :prependIcon=\"mdiOpenInNew\"\n :href=\"url\"\n >{{ labelAccess }}</EpBtn\n >\n </div>\n </div>\n </div>\n </div>\n </template>\n <template #actions></template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","_unref","_createElementVNode","_createElementBlock","_Fragment","_openBlock","_createVNode","EpIcon","_createTextVNode","_toDisplayString","EpChip","EpBtn"],"mappings":";;;;;;;;;;;;;;;;;AAqBA,MAAM,YACJ;;;;;;;;;;;;;;;;;;AAXF,UAAM,QAAQ;AAad,UAAM,WAAW,SAAS,MAAM;AAC9B,UAAI,MAAM,UAAU,aAAa,MAAM,MAAM,KAAA,EAAO,WAAW,GAAG;AAChE,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACE,OAAO,KAAK;;0BAIdA,YAqDQC,aAAA;AAAA,QApDL,OAAOC,MAAA,SAAA;AAAA,QACP,
|
|
1
|
+
{"version":3,"file":"EpSoftware.vue.js","sources":["../../../src/components/medias/EpSoftware.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpBtn from \"~/components/basics/EpBtn.vue\";\nimport EpChip from \"~/components/basics/EpChip.vue\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { mdiLaptop } from \"@mdi/js\";\nimport { mdiOpenInNew } from \"@mdi/js\";\nimport type { EpSoftwareProps } from \"~/types/medias/EpSoftware\";\n\nconst props = withDefaults(defineProps<EpSoftwareProps>(), {\n icon: \"mdiLaptop\",\n hideCover: false,\n intentions: \"\",\n cover: \"\",\n type: \"base\",\n hideIcon: false,\n labelAccess: \"Accéder au logiciel\",\n});\n\nconst old_image =\n \"https://live.staticflickr.com/4868/45940268562_c5f7fdd06b_q.jpg\";\n\nconst hasCover = computed(() => {\n if (props.cover === old_image || props.cover.trim().length === 0) {\n return false;\n }\n return true;\n});\n\nconst {\n title,\n intentions,\n cover,\n hideCover,\n version,\n labelCard,\n hideIcon,\n mandateLevel,\n url,\n} = toRefs(props);\n</script>\n\n<template>\n <EpEdu\n :title=\"labelCard\"\n :labelIntentions=\"labelIntentions\"\n :icon=\"mdiLaptop\"\n flat\n :type=\"type\"\n :hideIcon=\"hideIcon\"\n :mandateLevel=\"mandateLevel\"\n >\n <template #intentions v-if=\"intentions\">\n <div v-html=\"useRenderText(intentions)\" />\n </template>\n <template #content>\n <div\n class=\"flex flex-col items-center border rounded-lg bg-surface-2 dark:bg-surface-2-dark md:flex-row mt-2\"\n >\n <template v-if=\"!hideCover\">\n <img\n v-if=\"hasCover\"\n class=\"h-24 w-full rounded-t-lg object-cover md:h-auto md:w-24 md:rounded-none md:rounded-l-lg\"\n :src=\"cover\"\n :alt=\"`image de la lecture ${title}`\"\n />\n <div\n v-else\n class=\"h-96 w-full rounded-t-lg md:h-auto md:w-56 md:rounded-none md:rounded-l-lg flex justify-center items-center text-base-dark dark:text-white\"\n >\n <EpIcon :icon-path=\"mdiLaptop\" size=\"95\" />\n </div>\n </template>\n <div class=\"w-full\">\n <div class=\"w-full px-5\">\n <div class=\"flex justify-between items-center rounded-t-md p-2\">\n <h4>\n {{ title }}\n <EpChip size=\"small\" type=\"primary\" v-if=\"version\">{{\n version\n }}</EpChip>\n </h4>\n <EpBtn\n v-if=\"url\"\n rounded\n type=\"primary\"\n :prependIcon=\"mdiOpenInNew\"\n :href=\"url\"\n >{{ labelAccess }}</EpBtn\n >\n </div>\n </div>\n </div>\n </div>\n </template>\n <template #actions></template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","_unref","labelIntentions","type","_createElementVNode","_createElementBlock","_Fragment","_openBlock","_createVNode","EpIcon","_createTextVNode","_toDisplayString","EpChip","EpBtn","labelAccess"],"mappings":";;;;;;;;;;;;;;;;;AAqBA,MAAM,YACJ;;;;;;;;;;;;;;;;;;AAXF,UAAM,QAAQ;AAad,UAAM,WAAW,SAAS,MAAM;AAC9B,UAAI,MAAM,UAAU,aAAa,MAAM,MAAM,KAAA,EAAO,WAAW,GAAG;AAChE,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACE,OAAO,KAAK;;0BAIdA,YAqDQC,aAAA;AAAA,QApDL,OAAOC,MAAA,SAAA;AAAA,QACP,iBAAiBC,KAAAA;AAAAA,QACjB,MAAMD,MAAA,SAAA;AAAA,QACP,MAAA;AAAA,QACC,MAAME,KAAAA;AAAAA,QACN,UAAUF,MAAA,QAAA;AAAA,QACV,cAAcA,MAAA,YAAA;AAAA,MAAA;QAKJ,iBACT,MAqCM;AAAA,UArCNG,mBAqCM,OArCN,YAqCM;AAAA,aAlCaH,MAAA,SAAA,kBAAjBI,mBAaWC,UAAA,EAAA,KAAA,KAAA;AAAA,cAXD,SAAA,sBADRD,mBAKE,OAAA;AAAA;gBAHA,OAAM;AAAA,gBACL,KAAKJ,MAAA,KAAA;AAAA,gBACL,4BAA4BA,MAAA,KAAA,CAAK;AAAA,cAAA,4BAEpCM,UAAA,GAAAF,mBAKM,OALN,YAKM;AAAA,gBADJG,YAA2CC,aAAA;AAAA,kBAAlC,aAAWR,MAAA,SAAA;AAAA,kBAAW,MAAK;AAAA,gBAAA;;;YAGxCG,mBAmBM,OAnBN,YAmBM;AAAA,cAlBJA,mBAiBM,OAjBN,YAiBM;AAAA,gBAhBJA,mBAeM,OAfN,YAeM;AAAA,kBAdJA,mBAKK,MAAA,MAAA;AAAA,oBAJAM,gBAAAC,gBAAAV,MAAA,KAAA,CAAK,IAAG,KACX,CAAA;AAAA,oBAA0CA,MAAA,OAAA,kBAA1CF,YAEWa,aAAA;AAAA;sBAFH,MAAK;AAAA,sBAAQ,MAAK;AAAA,oBAAA;uCAAyB,MAEjD;AAAA,wDADAX,MAAA,OAAA,CAAO,GAAA,CAAA;AAAA,sBAAA;;;;kBAIHA,MAAA,GAAA,kBADRF,YAOCc,aAAA;AAAA;oBALC,SAAA;AAAA,oBACA,MAAK;AAAA,oBACJ,aAAaZ,MAAA,YAAA;AAAA,oBACb,MAAMA,MAAA,GAAA;AAAA,kBAAA;qCACN,MAAiB;AAAA,sDAAda,KAAAA,WAAW,GAAA,CAAA;AAAA,oBAAA;;;;;;;;QAOhB,iBAAX,MAA8B,EAAA;AAAA;;QA3CFb,MAAA,UAAA;gBAAjB;AAAA,sBACT,MAA0C;AAAA,YAA1CG,mBAA0C,OAAA;AAAA,cAArC,WAAQH,MAAA,aAAA,EAAcA,MAAA,UAAA,CAAU;AAAA,YAAA;;;;;;;;"}
|
|
@@ -33,12 +33,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
33
33
|
return (_ctx, _cache) => {
|
|
34
34
|
return openBlock(), createBlock(_sfc_main$1, {
|
|
35
35
|
title: unref(title),
|
|
36
|
-
hideIcon:
|
|
36
|
+
hideIcon: _ctx.hideIcon,
|
|
37
37
|
icon: unref(mdiImage),
|
|
38
|
-
labelIntentions:
|
|
38
|
+
labelIntentions: _ctx.labelIntentions,
|
|
39
39
|
flat: "",
|
|
40
|
-
type:
|
|
41
|
-
mandateLevel:
|
|
40
|
+
type: _ctx.type,
|
|
41
|
+
mandateLevel: _ctx.mandateLevel
|
|
42
42
|
}, createSlots({
|
|
43
43
|
content: withCtx(() => [
|
|
44
44
|
createElementVNode("div", _hoisted_2, [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EpSvg.vue.js","sources":["../../../src/components/medias/EpSvg.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport { cols_img } from \"~/types/Image\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { mdiImage } from \"@mdi/js\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport type { EpSvgProps } from \"~/types/medias/EpSvg\";\n\nconst props = withDefaults(defineProps<EpSvgProps>(), {\n cols: \"6\",\n});\n\nconst renderCols = computed(() => {\n // console.log(+props.cols)\n // console.log(Cols[+props.cols])\n return cols_img[+props.cols];\n});\n\nconst renderText = computed(() => {\n if (props.desc) {\n return useRenderText(props.desc);\n }\n return null;\n});\n\nconst { title, content } = toRefs(props);\n</script>\n\n<template>\n <EpEdu\n :title=\"title\"\n :hideIcon=\"hideIcon\"\n :icon=\"mdiImage\"\n :labelIntentions=\"labelIntentions\"\n flat\n :type=\"type\"\n :mandateLevel=\"mandateLevel\"\n >\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div class=\"flex\">\n <div v-if=\"content\" :class=\"`mx-auto ${renderCols}`\">\n <div v-html=\"content\" class=\"w-full\" />\n </div>\n </div>\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","_unref","_createElementVNode","_createElementBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAQA,UAAM,QAAQ;AAId,UAAM,aAAa,SAAS,MAAM;AAGhC,aAAO,SAAS,CAAC,MAAM,IAAI;AAAA,IAC7B,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,MAAM;AACd,eAAO,cAAc,MAAM,IAAI;AAAA,MACjC;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,EAAE,OAAO,YAAY,OAAO,KAAK;;0BAIrCA,YAmBQC,aAAA;AAAA,QAlBL,OAAOC,MAAA,KAAA;AAAA,QACP,
|
|
1
|
+
{"version":3,"file":"EpSvg.vue.js","sources":["../../../src/components/medias/EpSvg.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport { cols_img } from \"~/types/Image\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport { mdiImage } from \"@mdi/js\";\nimport EpEdu from \"~/components/educationals/EpEdu.vue\";\nimport type { EpSvgProps } from \"~/types/medias/EpSvg\";\n\nconst props = withDefaults(defineProps<EpSvgProps>(), {\n cols: \"6\",\n});\n\nconst renderCols = computed(() => {\n // console.log(+props.cols)\n // console.log(Cols[+props.cols])\n return cols_img[+props.cols];\n});\n\nconst renderText = computed(() => {\n if (props.desc) {\n return useRenderText(props.desc);\n }\n return null;\n});\n\nconst { title, content } = toRefs(props);\n</script>\n\n<template>\n <EpEdu\n :title=\"title\"\n :hideIcon=\"hideIcon\"\n :icon=\"mdiImage\"\n :labelIntentions=\"labelIntentions\"\n flat\n :type=\"type\"\n :mandateLevel=\"mandateLevel\"\n >\n <template #intentions v-if=\"renderText\">\n <div v-html=\"renderText\" />\n </template>\n <template #content>\n <div class=\"flex\">\n <div v-if=\"content\" :class=\"`mx-auto ${renderCols}`\">\n <div v-html=\"content\" class=\"w-full\" />\n </div>\n </div>\n </template>\n </EpEdu>\n</template>\n"],"names":["_createBlock","EpEdu","_unref","hideIcon","labelIntentions","type","mandateLevel","_createElementVNode","_createElementBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAQA,UAAM,QAAQ;AAId,UAAM,aAAa,SAAS,MAAM;AAGhC,aAAO,SAAS,CAAC,MAAM,IAAI;AAAA,IAC7B,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,MAAM;AACd,eAAO,cAAc,MAAM,IAAI;AAAA,MACjC;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,EAAE,OAAO,YAAY,OAAO,KAAK;;0BAIrCA,YAmBQC,aAAA;AAAA,QAlBL,OAAOC,MAAA,KAAA;AAAA,QACP,UAAUC,KAAAA;AAAAA,QACV,MAAMD,MAAA,QAAA;AAAA,QACN,iBAAiBE,KAAAA;AAAAA,QAClB,MAAA;AAAA,QACC,MAAMC,KAAAA;AAAAA,QACN,cAAcC,KAAAA;AAAAA,MAAAA;QAKJ,iBACT,MAIM;AAAA,UAJNC,mBAIM,OAJN,YAIM;AAAA,YAHOL,MAAA,OAAA,kBAAXM,mBAEM,OAAA;AAAA;cAFe,iCAAkB,WAAA,KAAU,EAAA;AAAA,YAAA;cAC/CD,mBAAuC,OAAA;AAAA,gBAAlC,WAAQL,MAAA,OAAA;AAAA,gBAAS,OAAM;AAAA,cAAA;;;;;;QANN,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BK,mBAA2B,OAAA,EAAtB,WAAQ,WAAA,SAAU,MAAA,GAAA,UAAA;AAAA,UAAA;;;;;;;"}
|
|
@@ -101,7 +101,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
101
101
|
}, [
|
|
102
102
|
_cache[2] || (_cache[2] = createElementVNode("span", { class: "absolute top-0 left-0 flex w-full h-0 mb-0 transition-all duration-300 ease-out transform translate-y-0 group-hover:h-full opacity-90" }, null, -1)),
|
|
103
103
|
createElementVNode("span", _hoisted_1, [
|
|
104
|
-
createTextVNode(toDisplayString(
|
|
104
|
+
createTextVNode(toDisplayString(_ctx.word) + " ", 1),
|
|
105
105
|
createVNode(_sfc_main$1, {
|
|
106
106
|
"icon-path": unref(mdiBookmarkMultipleOutline),
|
|
107
107
|
size: "18"
|
|
@@ -131,9 +131,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
131
131
|
margin: "mb-2"
|
|
132
132
|
}),
|
|
133
133
|
createElementVNode("div", _hoisted_6, [
|
|
134
|
-
createElementVNode("h3", _hoisted_7, toDisplayString(
|
|
134
|
+
createElementVNode("h3", _hoisted_7, toDisplayString(_ctx.labelDefinition), 1),
|
|
135
135
|
renderDomain.value ? (openBlock(), createElementBlock("span", _hoisted_8, [
|
|
136
|
-
createTextVNode(toDisplayString(
|
|
136
|
+
createTextVNode(toDisplayString(_ctx.labelDomain) + " : ", 1),
|
|
137
137
|
createElementVNode("span", _hoisted_9, toDisplayString(renderDomain.value), 1)
|
|
138
138
|
])) : createCommentVNode("", true)
|
|
139
139
|
]),
|
|
@@ -146,7 +146,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
146
146
|
}, null, 8, ["src"])) : createCommentVNode("", true),
|
|
147
147
|
renderVariations.value || renderRelations.value ? (openBlock(), createBlock(_sfc_main$3, { key: 1 })) : createCommentVNode("", true),
|
|
148
148
|
renderVariations.value ? (openBlock(), createElementBlock("div", _hoisted_10, [
|
|
149
|
-
createElementVNode("span", _hoisted_11, toDisplayString(
|
|
149
|
+
createElementVNode("span", _hoisted_11, toDisplayString(_ctx.labelVariations) + " :", 1),
|
|
150
150
|
(openBlock(true), createElementBlock(Fragment, null, renderList(renderVariations.value, (variation, i) => {
|
|
151
151
|
return openBlock(), createElementBlock("span", {
|
|
152
152
|
key: `variation-${i}`
|
|
@@ -154,7 +154,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
154
154
|
}), 128))
|
|
155
155
|
])) : createCommentVNode("", true),
|
|
156
156
|
renderRelations.value ? (openBlock(), createElementBlock("div", _hoisted_12, [
|
|
157
|
-
createElementVNode("span", _hoisted_13, toDisplayString(
|
|
157
|
+
createElementVNode("span", _hoisted_13, toDisplayString(_ctx.labelRelations) + " :", 1),
|
|
158
158
|
(openBlock(true), createElementBlock(Fragment, null, renderList(renderRelations.value, (relation, i) => {
|
|
159
159
|
return openBlock(), createBlock(_sfc_main$5, {
|
|
160
160
|
key: `relation-${i}`,
|
|
@@ -178,7 +178,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
178
178
|
rounded: ""
|
|
179
179
|
}, {
|
|
180
180
|
default: withCtx(() => [
|
|
181
|
-
createTextVNode(toDisplayString(
|
|
181
|
+
createTextVNode(toDisplayString(_ctx.labelClose), 1)
|
|
182
182
|
]),
|
|
183
183
|
_: 1
|
|
184
184
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EpTerm.vue.js","sources":["../../../src/components/medias/EpTerm.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, toRefs, computed } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { mdiBookmarkMultipleOutline } from \"@mdi/js\";\nimport EpImg from \"~/components/basics/EpImg.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpModal from \"~/components/interactions/EpModal.vue\";\nimport EpDivider from \"~/components/basics/EpDivider.vue\";\nimport EpBtn from \"~/components/basics/EpBtn.vue\";\nimport type { EpTermProps } from \"~/types/medias/EpTerm\";\n\nconst props = withDefaults(defineProps<EpTermProps>(), {\n term: \"test\",\n variations: \"\",\n relations: \"\",\n idrelation: \"\",\n labelDefinition: \"Définition\",\n labelDomain: \"Domaine\",\n labelVariations: \"Variations\",\n labelRelations: \"Relations\",\n labelClose: \"Fermer\",\n});\n\nconst show = ref(false);\n\nconst subtitle = computed(() => {\n if (props.term !== props.word) {\n return `(${props.word})`;\n }\n return null;\n});\n\nconst renderVariations = computed(() => {\n let renderVariations = null;\n let valueprops = props.variations?.trim();\n if (valueprops?.length > 0) {\n renderVariations = valueprops.split(\",\");\n }\n return renderVariations;\n});\n\nconst renderRelations = computed(() => {\n let renderRelations = null;\n let valueprops = props.relations?.trim();\n if (valueprops?.length > 0) {\n renderRelations = valueprops.split(\",\");\n }\n return renderRelations;\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// const relationsID = computed(() => {\n// let relationsID = null;\n// let valueprops = props.idrelation?.trim();\n// if (valueprops?.length > 0) {\n// relationsID = valueprops.split(\",\");\n// }\n// return relationsID;\n// });\n\nconst renderDomain = computed(() => {\n if (props.domain === \"null\") {\n return null;\n }\n return props.domain;\n});\n\nconst toggleModal = () => {\n show.value = !show.value;\n};\n/*\nconst el = (contentref:any) => {\n const contentHtml = contentref.innerHTML \n const renderHtml = useRenderText(contentHtml)\n contentref.innerHTML = renderHtml\n}*/\n\nconst { term, graminfo, src } = toRefs(props);\n</script>\n\n<template>\n <span\n @click=\"toggleModal\"\n class=\"cursor-pointer bg-surface-2 dark:bg-surface-2-dark ring-1 ring-primary ring-inset hover:bg-primary text-primary hover:text-white dark:hover:text-neutral-900 px-2 py-1 m-1 rounded group overflow-hidden relative\"\n >\n <span\n class=\"absolute top-0 left-0 flex w-full h-0 mb-0 transition-all duration-300 ease-out transform translate-y-0 group-hover:h-full opacity-90\"\n />\n <span class=\"relative\"\n >{{ word }}\n <EpIcon :icon-path=\"mdiBookmarkMultipleOutline\" size=\"18\" />\n </span>\n </span>\n\n <EpModal v-model=\"show\" size=\"compact\">\n <div class=\"mb-2 flex items-center justify-between\">\n <div>\n <h3 class=\"font-bold text-2xl\">\n {{ term }}\n <span class=\"text-sm font-light text-error italic\">{{\n graminfo\n }}</span>\n </h3>\n <h4 class=\"text-xs\" v-if=\"subtitle\">{{ subtitle }}</h4>\n </div>\n <div>\n <EpIcon :icon-path=\"mdiBookmarkMultipleOutline\" />\n </div>\n </div>\n <EpDivider color=\"primary\" margin=\"mb-2\"></EpDivider>\n <div class=\"mb-4 flex items-center justify-between\">\n <h3 class=\"text-primary font-bold\">{{ labelDefinition }}</h3>\n <span class=\"text-xs\" v-if=\"renderDomain\"\n >{{ labelDomain }} :\n <span class=\"font-bold\">{{ renderDomain }}</span></span\n >\n </div>\n <!-- <div v-html=\"renderText\"/> -->\n <div>\n <slot />\n </div>\n <EpImg v-if=\"src\" :src=\"src\"></EpImg>\n\n <EpDivider v-if=\"renderVariations || renderRelations\"></EpDivider>\n <div class=\"text-sm mt-2\" v-if=\"renderVariations\">\n <span class=\"mr-2 font-bold\">{{ labelVariations }} :</span>\n <span v-for=\"(variation, i) in renderVariations\" :key=\"`variation-${i}`\">\n {{ variation }}{{ renderVariations.length > i + 1 ? \", \" : \".\" }}\n </span>\n </div>\n <div class=\"text-sm mt-2\" v-if=\"renderRelations\">\n <span class=\"mr-2 font-bold\">{{ labelRelations }} :</span>\n <template v-for=\"(relation, i) in renderRelations\" :key=\"`relation-${i}`\">\n <EpBtn\n size=\"small\"\n rounded\n extra-class=\"mr-2\"\n @click=\"goto(relation)\"\n >{{ relation }}</EpBtn\n >\n </template>\n </div>\n <div class=\"flex justify-end\">\n <EpBtn type=\"error\" outlined @click=\"show = false\" rounded>{{\n labelClose\n }}</EpBtn>\n </div>\n </EpModal>\n</template>\n"],"names":["renderVariations","renderRelations","term","_createElementVNode","
|
|
1
|
+
{"version":3,"file":"EpTerm.vue.js","sources":["../../../src/components/medias/EpTerm.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, toRefs, computed } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { mdiBookmarkMultipleOutline } from \"@mdi/js\";\nimport EpImg from \"~/components/basics/EpImg.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpModal from \"~/components/interactions/EpModal.vue\";\nimport EpDivider from \"~/components/basics/EpDivider.vue\";\nimport EpBtn from \"~/components/basics/EpBtn.vue\";\nimport type { EpTermProps } from \"~/types/medias/EpTerm\";\n\nconst props = withDefaults(defineProps<EpTermProps>(), {\n term: \"test\",\n variations: \"\",\n relations: \"\",\n idrelation: \"\",\n labelDefinition: \"Définition\",\n labelDomain: \"Domaine\",\n labelVariations: \"Variations\",\n labelRelations: \"Relations\",\n labelClose: \"Fermer\",\n});\n\nconst show = ref(false);\n\nconst subtitle = computed(() => {\n if (props.term !== props.word) {\n return `(${props.word})`;\n }\n return null;\n});\n\nconst renderVariations = computed(() => {\n let renderVariations = null;\n let valueprops = props.variations?.trim();\n if (valueprops?.length > 0) {\n renderVariations = valueprops.split(\",\");\n }\n return renderVariations;\n});\n\nconst renderRelations = computed(() => {\n let renderRelations = null;\n let valueprops = props.relations?.trim();\n if (valueprops?.length > 0) {\n renderRelations = valueprops.split(\",\");\n }\n return renderRelations;\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// const relationsID = computed(() => {\n// let relationsID = null;\n// let valueprops = props.idrelation?.trim();\n// if (valueprops?.length > 0) {\n// relationsID = valueprops.split(\",\");\n// }\n// return relationsID;\n// });\n\nconst renderDomain = computed(() => {\n if (props.domain === \"null\") {\n return null;\n }\n return props.domain;\n});\n\nconst toggleModal = () => {\n show.value = !show.value;\n};\n/*\nconst el = (contentref:any) => {\n const contentHtml = contentref.innerHTML \n const renderHtml = useRenderText(contentHtml)\n contentref.innerHTML = renderHtml\n}*/\n\nconst { term, graminfo, src } = toRefs(props);\n</script>\n\n<template>\n <span\n @click=\"toggleModal\"\n class=\"cursor-pointer bg-surface-2 dark:bg-surface-2-dark ring-1 ring-primary ring-inset hover:bg-primary text-primary hover:text-white dark:hover:text-neutral-900 px-2 py-1 m-1 rounded group overflow-hidden relative\"\n >\n <span\n class=\"absolute top-0 left-0 flex w-full h-0 mb-0 transition-all duration-300 ease-out transform translate-y-0 group-hover:h-full opacity-90\"\n />\n <span class=\"relative\"\n >{{ word }}\n <EpIcon :icon-path=\"mdiBookmarkMultipleOutline\" size=\"18\" />\n </span>\n </span>\n\n <EpModal v-model=\"show\" size=\"compact\">\n <div class=\"mb-2 flex items-center justify-between\">\n <div>\n <h3 class=\"font-bold text-2xl\">\n {{ term }}\n <span class=\"text-sm font-light text-error italic\">{{\n graminfo\n }}</span>\n </h3>\n <h4 class=\"text-xs\" v-if=\"subtitle\">{{ subtitle }}</h4>\n </div>\n <div>\n <EpIcon :icon-path=\"mdiBookmarkMultipleOutline\" />\n </div>\n </div>\n <EpDivider color=\"primary\" margin=\"mb-2\"></EpDivider>\n <div class=\"mb-4 flex items-center justify-between\">\n <h3 class=\"text-primary font-bold\">{{ labelDefinition }}</h3>\n <span class=\"text-xs\" v-if=\"renderDomain\"\n >{{ labelDomain }} :\n <span class=\"font-bold\">{{ renderDomain }}</span></span\n >\n </div>\n <!-- <div v-html=\"renderText\"/> -->\n <div>\n <slot />\n </div>\n <EpImg v-if=\"src\" :src=\"src\"></EpImg>\n\n <EpDivider v-if=\"renderVariations || renderRelations\"></EpDivider>\n <div class=\"text-sm mt-2\" v-if=\"renderVariations\">\n <span class=\"mr-2 font-bold\">{{ labelVariations }} :</span>\n <span v-for=\"(variation, i) in renderVariations\" :key=\"`variation-${i}`\">\n {{ variation }}{{ renderVariations.length > i + 1 ? \", \" : \".\" }}\n </span>\n </div>\n <div class=\"text-sm mt-2\" v-if=\"renderRelations\">\n <span class=\"mr-2 font-bold\">{{ labelRelations }} :</span>\n <template v-for=\"(relation, i) in renderRelations\" :key=\"`relation-${i}`\">\n <EpBtn\n size=\"small\"\n rounded\n extra-class=\"mr-2\"\n @click=\"goto(relation)\"\n >{{ relation }}</EpBtn\n >\n </template>\n </div>\n <div class=\"flex justify-end\">\n <EpBtn type=\"error\" outlined @click=\"show = false\" rounded>{{\n labelClose\n }}</EpBtn>\n </div>\n </EpModal>\n</template>\n"],"names":["renderVariations","renderRelations","term","_createElementVNode","word","_createVNode","EpIcon","_unref","EpModal","_createTextVNode","_toDisplayString","_createElementBlock","EpDivider","labelDefinition","_openBlock","labelDomain","_renderSlot","_createBlock","EpImg","labelVariations","_Fragment","_renderList","labelRelations","EpBtn","labelClose"],"mappings":"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"}
|
|
@@ -73,12 +73,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
73
73
|
type: unref(type),
|
|
74
74
|
hideIcon: unref(hideIcon),
|
|
75
75
|
icon: unref(mdiVideo),
|
|
76
|
-
mandateLevel:
|
|
76
|
+
mandateLevel: _ctx.mandateLevel,
|
|
77
77
|
labelIntentions: unref(labelIntentions)
|
|
78
78
|
}, createSlots({
|
|
79
79
|
content: withCtx(() => [
|
|
80
80
|
createElementVNode("div", {
|
|
81
|
-
class: normalizeClass(!
|
|
81
|
+
class: normalizeClass(!_ctx.big ? "max-w-screen-sm mx-auto" : "")
|
|
82
82
|
}, [
|
|
83
83
|
isVideoFormat.value ? (openBlock(), createElementBlock("video", {
|
|
84
84
|
key: 0,
|
|
@@ -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","_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,
|
|
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","mandateLevel","_createElementVNode","big","_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,cAAcC,KAAAA;AAAAA,QACd,iBAAiBD,MAAA,eAAA;AAAA,MAAA;QAKP,iBACT,MAkBM;AAAA,UAlBNE,mBAkBM,OAAA;AAAA,YAlBA,uBAAQC,KAAAA,MAAG,4BAAA,EAAA;AAAA,UAAA;YAEP,cAAA,sBADRC,mBAOS,SAAA;AAAA;uBALH;AAAA,cAAJ,KAAI;AAAA,cACJ,UAAA;AAAA,cACC,KAAKJ,MAAA,GAAA;AAAA,cACN,OAAM;AAAA,cACN,cAAa;AAAA,YAAA,yCAGfI,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,YAA3BF,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: _ctx.mandateLevel,
|
|
46
|
+
labelIntentions: _ctx.labelIntentions
|
|
47
47
|
}, createSlots({
|
|
48
48
|
content: withCtx(() => [
|
|
49
49
|
createElementVNode("div", {
|
|
50
|
-
class: normalizeClass(!
|
|
50
|
+
class: normalizeClass(!_ctx.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","_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,
|
|
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","mandateLevel","labelIntentions","_createElementVNode","big"],"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,cAAcC,KAAAA;AAAAA,QACd,iBAAiBC,KAAAA;AAAAA,MAAAA;QAKP,iBACT,MAQM;AAAA,UARNC,mBAQM,OAAA;AAAA,YARA,uBAAQC,KAAAA,MAAG,4BAAA,EAAA;AAAA,UAAA;YACfD,mBAMU,UAAA;AAAA,cALP,KAAKH,MAAA,GAAA;AAAA,cACN,OAAM;AAAA,cACL,QAAQ,UAAA;AAAA,cACT,aAAY;AAAA,cACZ,iBAAA;AAAA,YAAA;;;;;QAVsB,WAAA;gBAAjB;AAAA,sBACT,MAA2B;AAAA,YAA3BG,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
|
+
_ctx.term && _ctx.description ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
108
|
+
_ctx.collapse ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
109
109
|
createVNode(Comp, {
|
|
110
|
-
title:
|
|
110
|
+
title: _ctx.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(_ctx.labelInformation), 1),
|
|
120
|
+
_ctx.content.gramInfo ? (openBlock(), createElementBlock("div", _hoisted_6, toDisplayString(_ctx.content.gramInfo), 1)) : createCommentVNode("", true)
|
|
121
121
|
], 2),
|
|
122
|
-
|
|
122
|
+
_ctx.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(_ctx.labelDomain), 1),
|
|
127
|
+
createElementVNode("div", _hoisted_8, toDisplayString(_ctx.content.domain), 1)
|
|
128
128
|
], 2)) : createCommentVNode("", true),
|
|
129
|
-
|
|
129
|
+
_ctx.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(_ctx.labelVariations), 1),
|
|
134
134
|
createElementVNode("div", _hoisted_10, [
|
|
135
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
135
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.variation, (_variation, i) => {
|
|
136
136
|
return openBlock(), createElementBlock("span", {
|
|
137
137
|
key: `v-${i}`
|
|
138
|
-
}, toDisplayString(_variation) + toDisplayString(
|
|
138
|
+
}, toDisplayString(_variation) + toDisplayString(_ctx.variation.length > i + 1 ? ", " : "."), 1);
|
|
139
139
|
}), 128))
|
|
140
140
|
])
|
|
141
141
|
], 2)) : createCommentVNode("", true)
|
|
142
142
|
]),
|
|
143
|
-
!
|
|
143
|
+
!_ctx.content.image ? (openBlock(), createElementBlock("div", {
|
|
144
144
|
key: 0,
|
|
145
145
|
class: "px-2 py-6",
|
|
146
|
-
innerHTML: unref(useRenderText)(
|
|
146
|
+
innerHTML: unref(useRenderText)(_ctx.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)(_ctx.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: _ctx.content.image,
|
|
155
|
+
cols: _ctx.cols
|
|
156
156
|
}, null, 8, ["src", "cols"])
|
|
157
157
|
])
|
|
158
158
|
])),
|
|
159
|
-
|
|
160
|
-
createElementVNode("p", _hoisted_16, toDisplayString(
|
|
159
|
+
_ctx.relation.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_15, [
|
|
160
|
+
createElementVNode("p", _hoisted_16, toDisplayString(_ctx.labelRelations), 1),
|
|
161
161
|
createElementVNode("div", _hoisted_17, [
|
|
162
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
162
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.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(_ctx.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(_ctx.labelInformation), 1),
|
|
181
|
+
_ctx.content.gramInfo ? (openBlock(), createElementBlock("div", _hoisted_23, toDisplayString(_ctx.content.gramInfo), 1)) : createCommentVNode("", true)
|
|
182
182
|
], 2),
|
|
183
|
-
|
|
183
|
+
_ctx.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(_ctx.labelDomain), 1),
|
|
188
|
+
createElementVNode("div", _hoisted_25, toDisplayString(_ctx.content.domain), 1)
|
|
189
189
|
], 2)) : createCommentVNode("", true),
|
|
190
|
-
|
|
190
|
+
_ctx.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(_ctx.labelVariations), 1),
|
|
195
195
|
createElementVNode("div", _hoisted_27, [
|
|
196
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
196
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.variation, (_variation, i) => {
|
|
197
197
|
return openBlock(), createElementBlock("span", {
|
|
198
198
|
key: `v-${i}`
|
|
199
|
-
}, toDisplayString(_variation) + toDisplayString(
|
|
199
|
+
}, toDisplayString(_variation) + toDisplayString(_ctx.variation.length > i + 1 ? ", " : "."), 1);
|
|
200
200
|
}), 128))
|
|
201
201
|
])
|
|
202
202
|
], 2)) : createCommentVNode("", true)
|
|
203
203
|
]),
|
|
204
|
-
!
|
|
204
|
+
!_ctx.content.image ? (openBlock(), createElementBlock("div", {
|
|
205
205
|
key: 0,
|
|
206
206
|
class: "px-2 py-6",
|
|
207
|
-
innerHTML: unref(useRenderText)(
|
|
207
|
+
innerHTML: unref(useRenderText)(_ctx.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)(_ctx.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: _ctx.content.image,
|
|
216
|
+
cols: _ctx.cols
|
|
217
217
|
}, null, 8, ["src", "cols"])
|
|
218
218
|
])
|
|
219
219
|
])),
|
|
220
|
-
|
|
221
|
-
createElementVNode("p", _hoisted_33, toDisplayString(
|
|
220
|
+
_ctx.relation.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_32, [
|
|
221
|
+
createElementVNode("p", _hoisted_33, toDisplayString(_ctx.labelRelations), 1),
|
|
222
222
|
createElementVNode("div", _hoisted_34, [
|
|
223
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
223
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.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(_ctx.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","_openBlock","_createVNode","EpAccordeon","_createElementVNode","_toDisplayString","_Fragment","_renderList","_unref","EpImg"],"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","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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"}
|
|
@@ -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.vue2.js";
|
|
7
7
|
const _hoisted_1 = {
|
|
8
8
|
key: 0,
|
|
9
9
|
class: "flex items-center justify-center w-1/12"
|