ep-lib-ts 1.0.63 → 1.0.64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/dist/components/basics/EpAvatar.vue.js +1 -1
  2. package/dist/components/basics/EpAvatar.vue.js.map +1 -1
  3. package/dist/components/basics/EpBadge.vue2.js +1 -10
  4. package/dist/components/basics/EpBadge.vue2.js.map +1 -1
  5. package/dist/components/basics/EpCard.vue.js +2 -3
  6. package/dist/components/basics/EpCard.vue.js.map +1 -1
  7. package/dist/components/basics/EpDivider.vue.js +1 -2
  8. package/dist/components/basics/EpDivider.vue.js.map +1 -1
  9. package/dist/components/basics/EpFlex.vue.js.map +1 -1
  10. package/dist/components/basics/EpHoverCard.vue.js +2 -3
  11. package/dist/components/basics/EpHoverCard.vue.js.map +1 -1
  12. package/dist/components/basics/EpImg.vue.js +1 -1
  13. package/dist/components/basics/EpImg.vue.js.map +1 -1
  14. package/dist/components/basics/EpListItem.vue.js +1 -1
  15. package/dist/components/basics/EpListItem.vue.js.map +1 -1
  16. package/dist/components/basics/EpSpinner.vue.js +1 -2
  17. package/dist/components/basics/EpSpinner.vue.js.map +1 -1
  18. package/dist/components/basics/EpText.vue.js +4 -3
  19. package/dist/components/basics/EpText.vue.js.map +1 -1
  20. package/dist/components/educationals/EpReading.vue.js +1 -1
  21. package/dist/components/educationals/EpResource.vue.js +1 -1
  22. package/dist/components/educationals/EpResource.vue.js.map +1 -1
  23. package/dist/components/interactions/EpAccordeon.vue.js +1 -1
  24. package/dist/components/interactions/EpAccordeon.vue2.js +2 -6
  25. package/dist/components/interactions/EpAccordeon.vue2.js.map +1 -1
  26. package/dist/components/interactions/EpContentSlider.vue.js +4 -5
  27. package/dist/components/interactions/EpContentSlider.vue.js.map +1 -1
  28. package/dist/components/interactions/EpModal.vue.js +3 -3
  29. package/dist/components/interactions/EpModal.vue.js.map +1 -1
  30. package/dist/components/interactions/EpQuestion.vue.js +1 -1
  31. package/dist/components/interactions/EpQuestion.vue.js.map +1 -1
  32. package/dist/components/interactions/EpTooltip.vue.js.map +1 -1
  33. package/dist/components/interactions/{EpTooltip.vue3.js → EpTooltip.vue2.js} +1 -2
  34. package/dist/components/interactions/EpTooltip.vue2.js.map +1 -0
  35. package/dist/components/medias/EpAudio.vue.js +1 -2
  36. package/dist/components/medias/EpAudio.vue.js.map +1 -1
  37. package/dist/components/medias/EpCarousel.vue.js +197 -5
  38. package/dist/components/medias/EpCarousel.vue.js.map +1 -1
  39. package/dist/components/medias/EpCarousel.vue2.js +1 -196
  40. package/dist/components/medias/EpCarousel.vue2.js.map +1 -1
  41. package/dist/components/medias/EpHierarchy.vue.js +1 -1
  42. package/dist/components/medias/EpHierarchy.vue2.js +5 -5
  43. package/dist/components/medias/EpHierarchy.vue2.js.map +1 -1
  44. package/dist/components/medias/EpLink.vue.js +1 -5
  45. package/dist/components/medias/EpLink.vue.js.map +1 -1
  46. package/dist/components/medias/EpSensibleImage.vue.js +1 -1
  47. package/dist/components/medias/EpSensibleImage.vue2.js +2 -2
  48. package/dist/components/medias/EpSensibleImage.vue2.js.map +1 -1
  49. package/dist/components/medias/EpTimeLine.vue.js +5 -98
  50. package/dist/components/medias/EpTimeLine.vue.js.map +1 -1
  51. package/dist/components/medias/EpTimeLine.vue2.js +101 -0
  52. package/dist/components/medias/EpTimeLine.vue2.js.map +1 -0
  53. package/dist/components/signages/EpSkeleton.vue.js +5 -40
  54. package/dist/components/signages/EpSkeleton.vue.js.map +1 -1
  55. package/dist/components/signages/EpSkeleton.vue2.js +43 -0
  56. package/dist/components/signages/EpSkeleton.vue2.js.map +1 -0
  57. package/dist/components/tools/DisplayBox.vue.js +2 -39
  58. package/dist/components/tools/DisplayBox.vue.js.map +1 -1
  59. package/dist/components/tools/DisplayBox.vue2.js +43 -0
  60. package/dist/components/tools/DisplayBox.vue2.js.map +1 -0
  61. package/dist/components/tools/TextMedia.vue2.js +1 -1
  62. package/dist/components/tools/TextMedia.vue2.js.map +1 -1
  63. package/dist/components/tools/TimelineItem.vue.js +1 -1
  64. package/dist/components/tools/TimelineItem.vue2.js +1 -1
  65. package/dist/components/tools/TimelineItem.vue2.js.map +1 -1
  66. package/dist/components/tools/TwoColsMedia.vue2.js +2 -2
  67. package/dist/components/tools/TwoColsMedia.vue2.js.map +1 -1
  68. package/dist/entry/interactions/EpTooltip.js +0 -1
  69. package/dist/entry/interactions/EpTooltip.js.map +1 -1
  70. package/dist/entry/medias/EpCarousel.js +2 -2
  71. package/dist/entry/medias/EpCarousel.js.map +1 -1
  72. package/dist/entry/medias/EpTimeLine.js +2 -3
  73. package/dist/entry/medias/EpTimeLine.js.map +1 -1
  74. package/dist/entry/signages/EpSkeleton.js +2 -3
  75. package/dist/entry/signages/EpSkeleton.js.map +1 -1
  76. package/dist/index.js +171 -173
  77. package/dist/index.js.map +1 -1
  78. package/dist/styles.css +587 -0
  79. package/dist/types/Accordeon.js +1 -1
  80. package/dist/types/Accordeon.js.map +1 -1
  81. package/dist/types/Btn.js +24 -24
  82. package/dist/types/Btn.js.map +1 -1
  83. package/dist/types/Colors.d.ts +1 -0
  84. package/dist/types/basics/EpAvatar.d.ts +2 -10
  85. package/dist/types/basics/EpBadge.d.ts +2 -1
  86. package/package.json +14 -17
  87. package/dist/components/interactions/EpTooltip.vue3.js.map +0 -1
  88. package/dist/components/medias/EpTimeLine.vue3.js +0 -6
  89. package/dist/components/medias/EpTimeLine.vue3.js.map +0 -1
  90. package/dist/components/signages/EpSkeleton.vue3.js +0 -6
  91. package/dist/components/signages/EpSkeleton.vue3.js.map +0 -1
  92. package/dist/components/tools/DisplayBox.vue3.js +0 -6
  93. package/dist/components/tools/DisplayBox.vue3.js.map +0 -1
  94. package/dist/composables/useColors.js +0 -135
  95. package/dist/composables/useColors.js.map +0 -1
  96. package/dist/style.css +0 -5212
@@ -26,7 +26,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
26
26
  return `${(_a = typeAvatar[style.value]) == null ? void 0 : _a[size.value]}`;
27
27
  });
28
28
  const bgcolor = computed(() => {
29
- return " bg-" + props.color;
29
+ return "ep-bg-" + props.color;
30
30
  });
31
31
  const final_name = computed(() => {
32
32
  if (props.name.length > 2) {
@@ -1 +1 @@
1
- {"version":3,"file":"EpAvatar.vue.js","sources":["../../../src/components/basics/EpAvatar.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from \"vue\";\nimport { typeAvatar } from \"~/types/Avatar\";\nimport type { EpAvatarProps } from \"~/types/basics/EpAvatar\";\n\n// define parameter and default valule\nconst props = withDefaults(defineProps<EpAvatarProps>(), {\n src: \"\",\n alt: \"\",\n color: \"primary\",\n size: \"small\",\n variant: \"circle\",\n name: \"\",\n});\n\nconst style = computed(() => {\n return props.variant;\n});\n\nconst size = computed(() => {\n return props.size;\n});\n\nconst final_style = computed(() => {\n return `${typeAvatar[style.value]?.[size.value]}`;\n});\n\nconst bgcolor = computed(() => {\n return \" bg-\" + props.color;\n});\n\nconst final_name = computed(() => {\n if (props.name.length > 2) {\n return props.name.slice(0, 2);\n } else {\n return props.name;\n }\n});\n</script>\n<template>\n <div>\n <div v-if=\"props.src != ''\">\n <img :src=\"props.src\" :alt=\"props.alt\" :class=\"`${final_style} `\" />\n </div>\n <div v-else-if=\"props.src == ''\">\n <div\n :class=\"`${final_style} ${bgcolor} justify-center font-bold text-white flex items-center`\"\n >\n {{ final_name }}\n </div>\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_createElementVNode","_normalizeClass"],"mappings":";;;;;;;;;;;;;;;;AAMA,UAAM,QAAQ;AASd,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,SAAS,MAAM;AAC1B,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;;AACjC,aAAO,IAAG,gBAAW,MAAM,KAAK,MAAtB,mBAA0B,KAAK,MAAM;AAAA,IACjD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,aAAO,SAAS,MAAM;AAAA,IACxB,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,KAAK,SAAS,GAAG;AACzB,eAAO,MAAM,KAAK,MAAM,GAAG,CAAC;AAAA,MAC9B,OAAO;AACL,eAAO,MAAM;AAAA,MACf;AAAA,IACF,CAAC;;0BAGCA,mBAWM,OAAA,MAAA;AAAA,QAVO,MAAM,OAAG,mBAApBA,mBAEM,OAAA,YAAA;AAAA,UADJC,mBAAoE,OAAA;AAAA,YAA9D,KAAK,MAAM;AAAA,YAAM,KAAK,MAAM;AAAA,YAAM,yBAAU,YAAA,KAAW,GAAA;AAAA,UAAA;cAE/C,MAAM,OAAG,mBAAzBD,mBAMM,OAAA,YAAA;AAAA,UALJC,mBAIM,OAAA;AAAA,YAHH,OAAKC,eAAA,GAAK,YAAA,KAAW,KAAK,QAAA,KAAO,yDAAA;AAAA,UAAA,mBAE/B,WAAA,KAAU,GAAA,CAAA;AAAA,QAAA;;;;;"}
1
+ {"version":3,"file":"EpAvatar.vue.js","sources":["../../../src/components/basics/EpAvatar.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from \"vue\";\nimport { typeAvatar } from \"~/types/Avatar\";\nimport type { EpAvatarProps } from \"~/types/basics/EpAvatar\";\n\n// define parameter and default valule\nconst props = withDefaults(defineProps<EpAvatarProps>(), {\n src: \"\",\n alt: \"\",\n color: \"primary\",\n size: \"small\",\n variant: \"circle\",\n name: \"\",\n});\n\nconst style = computed(() => {\n return props.variant;\n});\n\nconst size = computed(() => {\n return props.size;\n});\n\nconst final_style = computed(() => {\n return `${typeAvatar[style.value]?.[size.value]}`;\n});\n\nconst bgcolor = computed(() => {\n return \"ep-bg-\" + props.color;\n});\n\nconst final_name = computed(() => {\n if (props.name.length > 2) {\n return props.name.slice(0, 2);\n } else {\n return props.name;\n }\n});\n</script>\n<template>\n <div>\n <div v-if=\"props.src != ''\">\n <img :src=\"props.src\" :alt=\"props.alt\" :class=\"`${final_style} `\" />\n </div>\n <div v-else-if=\"props.src == ''\">\n <div\n :class=\"`${final_style} ${bgcolor} justify-center font-bold text-white flex items-center`\"\n >\n {{ final_name }}\n </div>\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_createElementVNode","_normalizeClass"],"mappings":";;;;;;;;;;;;;;;;AAMA,UAAM,QAAQ;AASd,UAAM,QAAQ,SAAS,MAAM;AAC3B,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,OAAO,SAAS,MAAM;AAC1B,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;;AACjC,aAAO,IAAG,gBAAW,MAAM,KAAK,MAAtB,mBAA0B,KAAK,MAAM;AAAA,IACjD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,aAAO,WAAW,MAAM;AAAA,IAC1B,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,KAAK,SAAS,GAAG;AACzB,eAAO,MAAM,KAAK,MAAM,GAAG,CAAC;AAAA,MAC9B,OAAO;AACL,eAAO,MAAM;AAAA,MACf;AAAA,IACF,CAAC;;0BAGCA,mBAWM,OAAA,MAAA;AAAA,QAVO,MAAM,OAAG,mBAApBA,mBAEM,OAAA,YAAA;AAAA,UADJC,mBAAoE,OAAA;AAAA,YAA9D,KAAK,MAAM;AAAA,YAAM,KAAK,MAAM;AAAA,YAAM,yBAAU,YAAA,KAAW,GAAA;AAAA,UAAA;cAE/C,MAAM,OAAG,mBAAzBD,mBAMM,OAAA,YAAA;AAAA,UALJC,mBAIM,OAAA;AAAA,YAHH,OAAKC,eAAA,GAAK,YAAA,KAAW,KAAK,QAAA,KAAO,yDAAA;AAAA,UAAA,mBAE/B,WAAA,KAAU,GAAA,CAAA;AAAA,QAAA;;;;;"}
@@ -1,5 +1,4 @@
1
- import { defineComponent, computed, toRefs, createElementBlock, openBlock, createElementVNode } from "vue";
2
- import useColors from "../../composables/useColors.js";
1
+ import { defineComponent, createElementBlock, openBlock, createElementVNode } from "vue";
3
2
  const _hoisted_1 = { class: "p-12 bg-warning-light w-[50%] mx-auto border-2 border-warning dark:bg-warning-dark" };
4
3
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
4
  __name: "EpBadge",
@@ -10,14 +9,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
10
9
  iconPath: { default: null }
11
10
  },
12
11
  setup(__props) {
13
- const props = __props;
14
- computed(() => {
15
- return props.outlined ? useColors("border", props.color) : useColors("bg", props.color);
16
- });
17
- computed(() => {
18
- return props.square ? "" : "rounded-full";
19
- });
20
- toRefs(props);
21
12
  return (_ctx, _cache) => {
22
13
  return openBlock(), createElementBlock("div", _hoisted_1, [..._cache[0] || (_cache[0] = [
23
14
  createElementVNode("p", { class: "text-center text-error font-bold uppercase" }, "In progress", -1)
@@ -1 +1 @@
1
- {"version":3,"file":"EpBadge.vue2.js","sources":["../../../src/components/basics/EpBadge.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport useColors from \"~/composables/useColors\";\nimport type { EpBadgeProps } from \"~/types/basics/EpBadge\";\n\nconst props = withDefaults(defineProps<EpBadgeProps>(), {\n color: \"primary\",\n square: false,\n iconPath: null,\n});\n\nconst styleChip = computed(() => {\n return props.outlined\n ? useColors(\"border\", props.color)\n : useColors(\"bg\", props.color);\n});\n\nconst typeChip = computed(() => {\n return props.square ? \"\" : \"rounded-full\";\n});\n\nconst { iconPath } = toRefs(props);\n\n/*\n//image gallery\n\"labelRef\": \"Reference\",\n\"labelClose\": \"Close\",\n\"labelRefLib\": \"Reference Library\",\n\n\n//reading\n\"labelCard\": \"Reading\",\n\"labelRead\": \"Read\",\n\"labelIn\": \"In\",\n\"labelIntentions\": \"Important topics\",\n\"labelDetails\":\"details\",\n\"labelClose\":\"Close\",\n\n\n//video\n\"labelIntentions\": \"Important topics\"\n\n\n//quiz\n\"labelNoAnswer\":\"Please choose an answer.\",\n\"labelAnswerBtn\" : \"Submit\",\n\"labelTryAgainBtn\": \"Try Again\",\n\n\nCompulsory\nOptional\n*/\n</script>\n\n<template>\n <!-- <span :class=\"`py-2 px-3 ${styleChip} ${typeChip} mx-2 text-sm`\">\n <EpIcon v-if=\"icon\" :iconPath=\"icon\" size=\"20\" extraClass=\"mr-2\"/>\n <slot/>\n </span> -->\n <!--\n <span class=\"text-white badge absolute -top-1 -right-1 flex h-3 w-3\">\n <span class=\"animate-ping absolute inline-flex h-full w-full rounded-full bg-red-400 opacity-75\"/>\n <span class=\"relative inline-flex rounded-full h-3 w-3 bg-red-500\">\n \n <EpIcon v-if=\"iconPath\" :iconPath=\"iconPath\" size=\"32\" extra-class=\"p-1\"/>\n </span>\n </span>-->\n <div\n class=\"p-12 bg-warning-light w-[50%] mx-auto border-2 border-warning dark:bg-warning-dark\"\n >\n <p class=\"text-center text-error font-bold uppercase\">In progress</p>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode"],"mappings":";;;;;;;;;;;;AAKA,UAAM,QAAQ;AAMI,aAAS,MAAM;AAC/B,aAAO,MAAM,WACT,UAAU,UAAU,MAAM,KAAK,IAC/B,UAAU,MAAM,MAAM,KAAK;AAAA,IACjC,CAAC;AAEgB,aAAS,MAAM;AAC9B,aAAO,MAAM,SAAS,KAAK;AAAA,IAC7B,CAAC;AAEoB,WAAO,KAAK;;AA8C/B,aAAAA,UAAA,GAAAC,mBAIM,OAJN,YAIM,CAAA,GAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA;AAAA,QADJC,mBAAqE,KAAA,EAAlE,OAAM,6CAAA,GAA6C,eAAW,EAAA;AAAA,MAAA;;;;"}
1
+ {"version":3,"file":"EpBadge.vue2.js","sources":["../../../src/components/basics/EpBadge.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed } from \"vue\";\nimport type { EpBadgeProps } from \"~/types/basics/EpBadge\";\n\nconst props = withDefaults(defineProps<EpBadgeProps>(), {\n color: \"primary\",\n square: false,\n iconPath: null,\n});\n\n\n\n/*\n//image gallery\n\"labelRef\": \"Reference\",\n\"labelClose\": \"Close\",\n\"labelRefLib\": \"Reference Library\",\n\n\n//reading\n\"labelCard\": \"Reading\",\n\"labelRead\": \"Read\",\n\"labelIn\": \"In\",\n\"labelIntentions\": \"Important topics\",\n\"labelDetails\":\"details\",\n\"labelClose\":\"Close\",\n\n\n//video\n\"labelIntentions\": \"Important topics\"\n\n\n//quiz\n\"labelNoAnswer\":\"Please choose an answer.\",\n\"labelAnswerBtn\" : \"Submit\",\n\"labelTryAgainBtn\": \"Try Again\",\n\n\nCompulsory\nOptional\n*/\n</script>\n\n<template>\n <!-- <span :class=\"`py-2 px-3 ${styleChip} ${typeChip} mx-2 text-sm`\">\n <EpIcon v-if=\"icon\" :iconPath=\"icon\" size=\"20\" extraClass=\"mr-2\"/>\n <slot/>\n </span> -->\n <!--\n <span class=\"text-white badge absolute -top-1 -right-1 flex h-3 w-3\">\n <span class=\"animate-ping absolute inline-flex h-full w-full rounded-full bg-red-400 opacity-75\"/>\n <span class=\"relative inline-flex rounded-full h-3 w-3 bg-red-500\">\n \n <EpIcon v-if=\"iconPath\" :iconPath=\"iconPath\" size=\"32\" extra-class=\"p-1\"/>\n </span>\n </span>-->\n <div\n class=\"p-12 bg-warning-light w-[50%] mx-auto border-2 border-warning dark:bg-warning-dark\"\n >\n <p class=\"text-center text-error font-bold uppercase\">In progress</p>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode"],"mappings":";;;;;;;;;;;;AAwDE,aAAAA,UAAA,GAAAC,mBAIM,OAJN,YAIM,CAAA,GAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA;AAAA,QADJC,mBAAqE,KAAA,EAAlE,OAAM,6CAAA,GAA6C,eAAW,EAAA;AAAA,MAAA;;;;"}
@@ -1,7 +1,6 @@
1
1
  import { defineComponent, computed, toRefs, useSlots, createElementBlock, openBlock, normalizeClass, createCommentVNode, unref, createVNode, renderSlot, createElementVNode, toDisplayString } from "vue";
2
2
  import _sfc_main$2 from "./EpIcon.vue.js";
3
3
  import _sfc_main$1 from "../medias/EpSvg.vue.js";
4
- import useColors from "../../composables/useColors.js";
5
4
  import { density_style } from "../../types/Card.js";
6
5
  const _hoisted_1 = ["src"];
7
6
  const _hoisted_2 = {
@@ -38,7 +37,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
38
37
  });
39
38
  const borderColor = computed(() => {
40
39
  if (props.outlined && props.color) {
41
- return `border solid ${useColors("border", props.color)}`;
40
+ return `border solid`;
42
41
  }
43
42
  if (props.outlined) {
44
43
  return "border solid border-primary dark:border-white";
@@ -53,7 +52,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
53
52
  });
54
53
  const bgColor = computed(() => {
55
54
  if (props.color && !props.outlined) {
56
- return `${useColors("bg", props.color)}`;
55
+ return ``;
57
56
  }
58
57
  return `bg-white text-black`;
59
58
  });
@@ -1 +1 @@
1
- {"version":3,"file":"EpCard.vue.js","sources":["../../../src/components/basics/EpCard.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed, useSlots, type Slots } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpSvg from \"~/components/medias/EpSvg.vue\";\nimport useColors from \"~/composables/useColors\";\nimport { density_style } from \"~/types/Card\";\nimport type { EpCardProps } from \"~/types/basics/EpCard\";\n\nconst props = withDefaults(defineProps<EpCardProps>(), {\n title: null,\n subtitle: null,\n outlined: false,\n flat: false,\n icon: null,\n color: null,\n src: null,\n density: \"default\",\n maxWidth: \"max-w-full\",\n isLink: false,\n});\n\n//styles card\nconst shadowCard = computed(() => {\n return !props.flat ? \"shadow-lg\" : \"\";\n});\n\nconst borderColor = computed(() => {\n if (props.outlined && props.color) {\n return `border solid ${useColors(\"border\", props.color)}`;\n }\n if (props.outlined) {\n return \"border solid border-primary dark:border-white\";\n }\n return \"dark:border dark:solid dark:border-white\";\n});\n\nconst isLinkStyle = computed(() => {\n if (props.isLink) {\n return \"dark:hover:border-white hover:border-primary hover:border hover:border rounded-md cursor-pointer\";\n }\n return \"\";\n});\n\nconst bgColor = computed(() => {\n if (props.color && !props.outlined) {\n return `${useColors(\"bg\", props.color)}`;\n }\n return `bg-white text-black`;\n});\n\nconst subTitleText = computed(() => {\n if (props.color && !props.outlined) {\n return \"text-white\";\n }\n return \"text-gray-600\";\n});\n\nconst density_class = computed(() => {\n return density_style[props.density];\n});\n\nconst stylesCard = computed(() => {\n return `\n ${shadowCard.value} \n ${borderColor.value} \n ${bgColor.value} \n ${props.maxWidth} \n rounded-md \n dark:bg-dark\n dark:text-white\n `;\n});\n\nconst { title, subtitle, icon, src, svg } = toRefs(props);\n\nconst slots: Slots = useSlots();\n\nconst hasContent = computed(() => {\n return !!slots.default || !!props.title || !!props.subtitle || !!props.icon;\n});\n</script>\n<template>\n <div :class=\"`${stylesCard} ${isLinkStyle}`\">\n <img\n v-if=\"src\"\n :src=\"src\"\n :class=\"`w-full ${hasContent ? 'rounded-t-md' : 'rounded-md'}`\"\n alt=\"header card\"\n />\n <div v-if=\"!src && svg\" class=\"w-full rounded-t-md dark:text-white\">\n <EpSvg :content=\"svg\" />\n </div>\n\n <div :class=\"density_class\" v-if=\"hasContent\">\n <div\n v-if=\"title || subtitle || icon\"\n class=\"mb-2 flex items-center justify-between dark:text-white\"\n >\n <div>\n <h3 class=\"text-2xl dark:text-white font-bold\">{{ title }}</h3>\n <h4 :class=\"`text-xs dark:text-white ${subTitleText}`\">\n {{ subtitle }}\n </h4>\n </div>\n <div v-if=\"icon\">\n <EpIcon :icon-path=\"icon\" extra-class=\"dark:text-white\" />\n </div>\n </div>\n <slot name=\"card-header\" />\n <div class=\"dark:text-white\">\n <slot />\n </div>\n <div class=\"dark:text-white\">\n <slot name=\"card-actions\" />\n </div>\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_normalizeClass","_unref","_openBlock","_createVNode","EpSvg","_createElementVNode","_toDisplayString","EpIcon","_renderSlot"],"mappings":"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"}
1
+ {"version":3,"file":"EpCard.vue.js","sources":["../../../src/components/basics/EpCard.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, computed, useSlots, type Slots } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpSvg from \"~/components/medias/EpSvg.vue\";\nimport { density_style } from \"~/types/Card\";\nimport type { EpCardProps } from \"~/types/basics/EpCard\";\n\nconst props = withDefaults(defineProps<EpCardProps>(), {\n title: null,\n subtitle: null,\n outlined: false,\n flat: false,\n icon: null,\n color: null,\n src: null,\n density: \"default\",\n maxWidth: \"max-w-full\",\n isLink: false,\n});\n\n//styles card\nconst shadowCard = computed(() => {\n return !props.flat ? \"shadow-lg\" : \"\";\n});\n\nconst borderColor = computed(() => {\n if (props.outlined && props.color) {\n return `border solid`;\n }\n if (props.outlined) {\n return \"border solid border-primary dark:border-white\";\n }\n return \"dark:border dark:solid dark:border-white\";\n});\n\nconst isLinkStyle = computed(() => {\n if (props.isLink) {\n return \"dark:hover:border-white hover:border-primary hover:border hover:border rounded-md cursor-pointer\";\n }\n return \"\";\n});\n\nconst bgColor = computed(() => {\n if (props.color && !props.outlined) {\n return ``;\n }\n return `bg-white text-black`;\n});\n\nconst subTitleText = computed(() => {\n if (props.color && !props.outlined) {\n return \"text-white\";\n }\n return \"text-gray-600\";\n});\n\nconst density_class = computed(() => {\n return density_style[props.density];\n});\n\nconst stylesCard = computed(() => {\n return `\n ${shadowCard.value} \n ${borderColor.value} \n ${bgColor.value} \n ${props.maxWidth} \n rounded-md \n dark:bg-dark\n dark:text-white\n `;\n});\n\nconst { title, subtitle, icon, src, svg } = toRefs(props);\n\nconst slots: Slots = useSlots();\n\nconst hasContent = computed(() => {\n return !!slots.default || !!props.title || !!props.subtitle || !!props.icon;\n});\n</script>\n<template>\n <div :class=\"`${stylesCard} ${isLinkStyle}`\">\n <img\n v-if=\"src\"\n :src=\"src\"\n :class=\"`w-full ${hasContent ? 'rounded-t-md' : 'rounded-md'}`\"\n alt=\"header card\"\n />\n <div v-if=\"!src && svg\" class=\"w-full rounded-t-md dark:text-white\">\n <EpSvg :content=\"svg\" />\n </div>\n\n <div :class=\"density_class\" v-if=\"hasContent\">\n <div\n v-if=\"title || subtitle || icon\"\n class=\"mb-2 flex items-center justify-between dark:text-white\"\n >\n <div>\n <h3 class=\"text-2xl dark:text-white font-bold\">{{ title }}</h3>\n <h4 :class=\"`text-xs dark:text-white ${subTitleText}`\">\n {{ subtitle }}\n </h4>\n </div>\n <div v-if=\"icon\">\n <EpIcon :icon-path=\"icon\" extra-class=\"dark:text-white\" />\n </div>\n </div>\n <slot name=\"card-header\" />\n <div class=\"dark:text-white\">\n <slot />\n </div>\n <div class=\"dark:text-white\">\n <slot name=\"card-actions\" />\n </div>\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_normalizeClass","_unref","_openBlock","_createVNode","EpSvg","_createElementVNode","_toDisplayString","EpIcon","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,UAAM,QAAQ;AAcd,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,CAAC,MAAM,OAAO,cAAc;AAAA,IACrC,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;AACjC,UAAI,MAAM,YAAY,MAAM,OAAO;AACjC,eAAO;AAAA,MACT;AACA,UAAI,MAAM,UAAU;AAClB,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;AACjC,UAAI,MAAM,QAAQ;AAChB,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,UAAI,MAAM,SAAS,CAAC,MAAM,UAAU;AAClC,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAClC,UAAI,MAAM,SAAS,CAAC,MAAM,UAAU;AAClC,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,cAAc,MAAM,OAAO;AAAA,IACpC,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO;AAAA,MACH,WAAW,KAAK;AAAA,MAChB,YAAY,KAAK;AAAA,MACjB,QAAQ,KAAK;AAAA,MACb,MAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,IAKpB,CAAC;AAED,UAAM,EAAE,OAAO,UAAU,MAAM,KAAK,IAAA,IAAQ,OAAO,KAAK;AAExD,UAAM,QAAe,SAAA;AAErB,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,MAAM,SAAS,CAAC,CAAC,MAAM,YAAY,CAAC,CAAC,MAAM;AAAA,IACzE,CAAC;;0BAGCA,mBAkCM,OAAA;AAAA,QAlCA,OAAKC,eAAA,GAAK,WAAA,KAAU,IAAI,YAAA,KAAW,EAAA;AAAA,MAAA;QAE/BC,MAAA,GAAA,kBADRF,mBAKE,OAAA;AAAA;UAHC,KAAKE,MAAA,GAAA;AAAA,UACL,gCAAiB,WAAA,QAAU,iBAAA,YAAA,EAAA;AAAA,UAC5B,KAAI;AAAA,QAAA;QAEM,CAAAA,MAAA,GAAA,KAAOA,MAAA,GAAA,KAAnBC,aAAAH,mBAEM,OAFN,YAEM;AAAA,UADJI,YAAwBC,aAAA,EAAhB,SAASH,MAAA,GAAA,EAAA,GAAG,MAAA,GAAA,CAAA,SAAA,CAAA;AAAA,QAAA;QAGY,WAAA,sBAAlCF,mBAsBM,OAAA;AAAA;UAtBA,sBAAO,cAAA,KAAa;AAAA,QAAA;UAEhBE,MAAA,KAAA,KAASA,MAAA,QAAA,KAAYA,MAAA,IAAA,KAD7BC,UAAA,GAAAH,mBAaM,OAbN,YAaM;AAAA,YATJM,mBAKM,OAAA,MAAA;AAAA,cAJJA,mBAA+D,MAA/D,YAA+DC,gBAAbL,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,cACvDI,mBAEK,MAAA;AAAA,gBAFA,iDAAkC,aAAA,KAAY,EAAA;AAAA,cAAA,mBAC9CJ,MAAA,QAAA,CAAQ,GAAA,CAAA;AAAA,YAAA;YAGJA,MAAA,IAAA,kBAAXF,mBAEM,OAAA,YAAA;AAAA,cADJI,YAA0DI,aAAA;AAAA,gBAAjD,aAAWN,MAAA,IAAA;AAAA,gBAAM,eAAY;AAAA,cAAA;;;UAG1CO,WAA2B,KAAA,QAAA,aAAA;AAAA,UAC3BH,mBAEM,OAFN,YAEM;AAAA,YADJG,WAAQ,KAAA,QAAA,SAAA;AAAA,UAAA;UAEVH,mBAEM,OAFN,YAEM;AAAA,YADJG,WAA4B,KAAA,QAAA,cAAA;AAAA,UAAA;;;;;;"}
@@ -1,5 +1,4 @@
1
1
  import { defineComponent, computed, createElementBlock, openBlock, normalizeClass } from "vue";
2
- import useColors from "../../composables/useColors.js";
3
2
  const _sfc_main = /* @__PURE__ */ defineComponent({
4
3
  __name: "EpDivider",
5
4
  props: {
@@ -13,7 +12,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
13
12
  const props = __props;
14
13
  const border = computed(() => {
15
14
  if (props.color) {
16
- return `${props.size} ${useColors("border", props.color)}`;
15
+ return `${props.size} ${props.color}`;
17
16
  }
18
17
  return `${props.size} border-grey-700`;
19
18
  });
@@ -1 +1 @@
1
- {"version":3,"file":"EpDivider.vue.js","sources":["../../../src/components/basics/EpDivider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from \"vue\";\nimport useColors from \"~/composables/useColors\";\nimport type { EpDividerProps } from \"~/types/basics/EpDivider\";\n\nconst props = withDefaults(defineProps<EpDividerProps>(), {\n color: null,\n size: \"border\",\n inset: false,\n icon: null,\n margin: \"my-2\",\n});\n\nconst border = computed(() => {\n if (props.color) {\n return `${props.size} ${useColors(\"border\", props.color)}`;\n }\n return `${props.size} border-grey-700`;\n});\n\nconst styles = computed(() => {\n return `${border.value} ${props.inset ? \"w-9/12 mx-auto\" : \"w-full\"} ${\n props.margin\n }`;\n});\n</script>\n\n<template>\n <hr :class=\"`h-px ${styles}`\" />\n</template>\n"],"names":["_createElementBlock"],"mappings":";;;;;;;;;;;;AAKA,UAAM,QAAQ;AAQd,UAAM,SAAS,SAAS,MAAM;AAC5B,UAAI,MAAM,OAAO;AACf,eAAO,GAAG,MAAM,IAAI,IAAI,UAAU,UAAU,MAAM,KAAK,CAAC;AAAA,MAC1D;AACA,aAAO,GAAG,MAAM,IAAI;AAAA,IACtB,CAAC;AAED,UAAM,SAAS,SAAS,MAAM;AAC5B,aAAO,GAAG,OAAO,KAAK,IAAI,MAAM,QAAQ,mBAAmB,QAAQ,IACjE,MAAM,MACR;AAAA,IACF,CAAC;;0BAICA,mBAAgC,MAAA;AAAA,QAA3B,8BAAe,OAAA,KAAM,EAAA;AAAA,MAAA;;;;"}
1
+ {"version":3,"file":"EpDivider.vue.js","sources":["../../../src/components/basics/EpDivider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from \"vue\";\nimport type { EpDividerProps } from \"~/types/basics/EpDivider\";\n\nconst props = withDefaults(defineProps<EpDividerProps>(), {\n color: null,\n size: \"border\",\n inset: false,\n icon: null,\n margin: \"my-2\",\n});\n\nconst border = computed(() => {\n if (props.color) {\n return `${props.size} ${props.color}`;\n }\n return `${props.size} border-grey-700`;\n});\n\nconst styles = computed(() => {\n return `${border.value} ${props.inset ? \"w-9/12 mx-auto\" : \"w-full\"} ${\n props.margin\n }`;\n});\n</script>\n\n<template>\n <hr :class=\"`h-px ${styles}`\" />\n</template>\n"],"names":["_createElementBlock"],"mappings":";;;;;;;;;;;AAIA,UAAM,QAAQ;AAQd,UAAM,SAAS,SAAS,MAAM;AAC5B,UAAI,MAAM,OAAO;AACf,eAAO,GAAG,MAAM,IAAI,IAAI,MAAM,KAAK;AAAA,MACrC;AACA,aAAO,GAAG,MAAM,IAAI;AAAA,IACtB,CAAC;AAED,UAAM,SAAS,SAAS,MAAM;AAC5B,aAAO,GAAG,OAAO,KAAK,IAAI,MAAM,QAAQ,mBAAmB,QAAQ,IACjE,MAAM,MACR;AAAA,IACF,CAAC;;0BAICA,mBAAgC,MAAA;AAAA,QAA3B,8BAAe,OAAA,KAAM,EAAA;AAAA,MAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EpFlex.vue.js","sources":["../../../src/components/basics/EpFlex.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/*\nimport { computed } from \"vue\";\nimport useColors from \"~/composables/useColors\";\n\nconst props = withDefaults(defineProps<EpFlexProps>(), {\n color: null,\n size: \"border\",\n inset: false,\n icon: null,\n});\n\nconst border = computed(() => {\n if (props.color) {\n return `${props.size} ${useColors(\"border\", props.color)}`;\n }\n return `${props.size} border-grey-700`;\n});\n\nconst styles = computed(() => {\n return `${border.value} ${props.inset ? \"w-9/12 mx-auto\" : \"w-full\"}`;\n});*/\n</script>\n\n<template>\n <!-- <hr :class=\"`h-px ${styles} my-2`\"> -->\n <!-- Option: content-between self-center justify-evenly place-items-stretch-->\n <!-- mb-20 flex md:flex-row flex-col ep-flex gap-4 justify-evenly -->\n <div class=\"grid grid-cols-2 gap-4\">\n <slot />\n </div>\n</template>\n\n//TODO component\n"],"names":["_openBlock","_createElementBlock","_renderSlot"],"mappings":";;;;;;AA4BE,aAAAA,UAAA,GAAAC,mBAEM,OAFN,YAEM;AAAA,QADJC,WAAQ,KAAA,QAAA,SAAA;AAAA,MAAA;;;;"}
1
+ {"version":3,"file":"EpFlex.vue.js","sources":["../../../src/components/basics/EpFlex.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/*\nimport { computed } from \"vue\";\ni\n\nconst props = withDefaults(defineProps<EpFlexProps>(), {\n color: null,\n size: \"border\",\n inset: false,\n icon: null,\n});\n\n\n\nconst styles = computed(() => {\n return `${border.value} ${props.inset ? \"w-9/12 mx-auto\" : \"w-full\"}`;\n});*/\n</script>\n\n<template>\n <!-- <hr :class=\"`h-px ${styles} my-2`\"> -->\n <!-- Option: content-between self-center justify-evenly place-items-stretch-->\n <!-- mb-20 flex md:flex-row flex-col ep-flex gap-4 justify-evenly -->\n <div class=\"grid grid-cols-2 gap-4\">\n <slot />\n </div>\n</template>\n\n//TODO component\n"],"names":["_openBlock","_createElementBlock","_renderSlot"],"mappings":";;;;;;AAuBE,aAAAA,UAAA,GAAAC,mBAEM,OAFN,YAEM;AAAA,QADJC,WAAQ,KAAA,QAAA,SAAA;AAAA,MAAA;;;;"}
@@ -1,7 +1,6 @@
1
1
  import { defineComponent, computed, toRefs, useSlots, createElementBlock, openBlock, normalizeClass, createBlock, createCommentVNode, unref, withCtx, createElementVNode, renderSlot, toDisplayString, createVNode } from "vue";
2
2
  import _sfc_main$1 from "./EpHover.vue.js";
3
3
  import _sfc_main$2 from "./EpIcon.vue.js";
4
- import useColors from "../../composables/useColors.js";
5
4
  import { density_style } from "../../types/Card.js";
6
5
  const _hoisted_1 = ["src"];
7
6
  const _hoisted_2 = {
@@ -38,7 +37,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
38
37
  });
39
38
  const borderColor = computed(() => {
40
39
  if (props.outlined && props.color) {
41
- return `border solid ${useColors("border", props.color)}`;
40
+ return `border solid ${props.color}`;
42
41
  }
43
42
  if (props.outlined) {
44
43
  return "border solid border-primary dark:border-primary";
@@ -47,7 +46,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
47
46
  });
48
47
  const bgColor = computed(() => {
49
48
  if (props.color && !props.outlined) {
50
- return `${useColors("bg", props.color)}`;
49
+ return `${props.color}`;
51
50
  }
52
51
  return `bg-white text-black`;
53
52
  });
@@ -1 +1 @@
1
- {"version":3,"file":"EpHoverCard.vue.js","sources":["../../../src/components/basics/EpHoverCard.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { computed, toRefs, useSlots, type Slots } from \"vue\";\nimport EpHover from \"~/components/basics/EpHover.vue\";\nimport EpIcon from \"~/components/basics//EpIcon.vue\";\nimport useColors from \"~/composables/useColors\";\nimport { density_style } from \"~/types/Card\";\nimport type { EpHoverCardProps } from \"~/types/basics/EpHoverCard\";\n\nconst props = withDefaults(defineProps<EpHoverCardProps>(), {\n title: null,\n subtitle: null,\n outlined: false,\n flat: false,\n icon: null,\n color: null,\n src: null,\n density: \"default\",\n maxWidth: \"max-w-xl\",\n hoverBg: \"\",\n hoverAnimation: \"translateY\",\n});\n\n//styles card\nconst shadowCard = computed(() => {\n return !props.flat ? \"shadow-lg\" : \"\";\n});\n\nconst borderColor = computed(() => {\n if (props.outlined && props.color) {\n return `border solid ${useColors(\"border\", props.color)}`;\n }\n if (props.outlined) {\n return \"border solid border-primary dark:border-primary\";\n }\n return \"dark:border dark:solid dark:border-primary\";\n});\n\nconst bgColor = computed(() => {\n if (props.color && !props.outlined) {\n return `${useColors(\"bg\", props.color)}`;\n }\n return `bg-white text-black`;\n});\n\nconst subTitleText = computed(() => {\n if (props.color && !props.outlined) {\n return \"text-white\";\n }\n return \"text-gray-600\";\n});\n\nconst density_class = computed(() => {\n return density_style[props.density];\n});\n\nconst stylesCard = computed(() => {\n return `\n ${shadowCard.value} \n ${borderColor.value} \n ${bgColor.value} \n ${props.maxWidth} \n rounded-md \n dark:bg-dark\n dark:text-white`;\n});\n\nconst { title, subtitle, icon, src, hoverContent } = toRefs(props);\n\nconst slots: Slots = useSlots();\n\nconst hasContent = computed(() => {\n return !!slots.default || !!props.title || !!props.subtitle;\n});\n</script>\n\n<template>\n <div :class=\"`${stylesCard} mx-auto`\">\n <EpHover\n :textColor=\"hoverColor\"\n :textSize=\"textSize\"\n :seeThrough=\"seeThrough\"\n :bgColor=\"hoverBg\"\n :animation=\"hoverAnimation\"\n :text=\"hoverContent\"\n v-if=\"src && hoverContent\"\n >\n <img\n :src=\"src\"\n :class=\"`w-full ${hasContent ? 'rounded-t-md' : 'rounded-md'}`\"\n alt=\"header card\"\n />\n </EpHover>\n <div :class=\"density_class\" v-if=\"hasContent\">\n <div\n v-if=\"title || subtitle\"\n class=\"mb-2 flex items-center justify-between dark:text-white\"\n >\n <div>\n <h3 class=\"text-2xl dark:text-white font-bold\">{{ title }}</h3>\n <h4 :class=\"`text-xs dark:text-white ${subTitleText}`\">\n {{ subtitle }}\n </h4>\n </div>\n <div v-if=\"icon\">\n <EpIcon :icon-path=\"icon\" />\n </div>\n </div>\n <slot name=\"card-header\" />\n <div class=\"dark:text-white\">\n <slot />\n </div>\n <div class=\"dark:text-white max-w-4xl\">\n <slot name=\"card-actions\" />\n </div>\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_unref","_createBlock","EpHover","hoverColor","textSize","seeThrough","hoverBg","hoverAnimation","_createElementVNode","_openBlock","_toDisplayString","_createVNode","EpIcon","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,UAAM,QAAQ;AAed,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,CAAC,MAAM,OAAO,cAAc;AAAA,IACrC,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;AACjC,UAAI,MAAM,YAAY,MAAM,OAAO;AACjC,eAAO,gBAAgB,UAAU,UAAU,MAAM,KAAK,CAAC;AAAA,MACzD;AACA,UAAI,MAAM,UAAU;AAClB,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,UAAI,MAAM,SAAS,CAAC,MAAM,UAAU;AAClC,eAAO,GAAG,UAAU,MAAM,MAAM,KAAK,CAAC;AAAA,MACxC;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAClC,UAAI,MAAM,SAAS,CAAC,MAAM,UAAU;AAClC,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,cAAc,MAAM,OAAO;AAAA,IACpC,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO;AAAA,MACH,WAAW,KAAK;AAAA,MAChB,YAAY,KAAK;AAAA,MACjB,QAAQ,KAAK;AAAA,MACb,MAAM,QAAQ;AAAA;AAAA;AAAA;AAAA,IAIpB,CAAC;AAED,UAAM,EAAE,OAAO,UAAU,MAAM,KAAK,aAAA,IAAiB,OAAO,KAAK;AAEjE,UAAM,QAAe,SAAA;AAErB,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,MAAM,SAAS,CAAC,CAAC,MAAM;AAAA,IACrD,CAAC;;0BAICA,mBAuCM,OAAA;AAAA,QAvCA,yBAAU,WAAA,KAAU,UAAA;AAAA,MAAA;QAQhBC,MAAA,GAAA,KAAOA,MAAA,YAAA,kBAPfC,YAcUC,aAAA;AAAA;UAbP,WAAWC,KAAAA;AAAAA,UACX,UAAUC,KAAAA;AAAAA,UACV,YAAYC,KAAAA;AAAAA,UACZ,SAASC,KAAAA;AAAAA,UACT,WAAWC,KAAAA;AAAAA,UACX,MAAMP,MAAA,YAAA;AAAA,QAAA;2BAGP,MAIE;AAAA,YAJFQ,mBAIE,OAAA;AAAA,cAHC,KAAKR,MAAA,GAAA;AAAA,cACL,gCAAiB,WAAA,QAAU,iBAAA,YAAA,EAAA;AAAA,cAC5B,KAAI;AAAA,YAAA;;;;QAG0B,WAAA,sBAAlCD,mBAsBM,OAAA;AAAA;UAtBA,sBAAO,cAAA,KAAa;AAAA,QAAA;UAEhBC,MAAA,KAAA,KAASA,MAAA,QAAA,KADjBS,aAAAV,mBAaM,OAbN,YAaM;AAAA,YATJS,mBAKM,OAAA,MAAA;AAAA,cAJJA,mBAA+D,MAA/D,YAA+DE,gBAAbV,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,cACvDQ,mBAEK,MAAA;AAAA,gBAFA,iDAAkC,aAAA,KAAY,EAAA;AAAA,cAAA,mBAC9CR,MAAA,QAAA,CAAQ,GAAA,CAAA;AAAA,YAAA;YAGJA,MAAA,IAAA,kBAAXD,mBAEM,OAAA,YAAA;AAAA,cADJY,YAA4BC,aAAA,EAAnB,aAAWZ,MAAA,IAAA,EAAA,GAAI,MAAA,GAAA,CAAA,WAAA,CAAA;AAAA,YAAA;;UAG5Ba,WAA2B,KAAA,QAAA,aAAA;AAAA,UAC3BL,mBAEM,OAFN,YAEM;AAAA,YADJK,WAAQ,KAAA,QAAA,SAAA;AAAA,UAAA;UAEVL,mBAEM,OAFN,YAEM;AAAA,YADJK,WAA4B,KAAA,QAAA,cAAA;AAAA,UAAA;;;;;;"}
1
+ {"version":3,"file":"EpHoverCard.vue.js","sources":["../../../src/components/basics/EpHoverCard.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { computed, toRefs, useSlots, type Slots } from \"vue\";\nimport EpHover from \"~/components/basics/EpHover.vue\";\nimport EpIcon from \"~/components/basics//EpIcon.vue\";\nimport { density_style } from \"~/types/Card\";\nimport type { EpHoverCardProps } from \"~/types/basics/EpHoverCard\";\n\nconst props = withDefaults(defineProps<EpHoverCardProps>(), {\n title: null,\n subtitle: null,\n outlined: false,\n flat: false,\n icon: null,\n color: null,\n src: null,\n density: \"default\",\n maxWidth: \"max-w-xl\",\n hoverBg: \"\",\n hoverAnimation: \"translateY\",\n});\n\n//styles card\nconst shadowCard = computed(() => {\n return !props.flat ? \"shadow-lg\" : \"\";\n});\n\nconst borderColor = computed(() => {\n if (props.outlined && props.color) {\n return `border solid ${props.color}`;\n }\n if (props.outlined) {\n return \"border solid border-primary dark:border-primary\";\n }\n return \"dark:border dark:solid dark:border-primary\";\n});\n\nconst bgColor = computed(() => {\n if (props.color && !props.outlined) {\n return `${props.color}`;\n }\n return `bg-white text-black`;\n});\n\nconst subTitleText = computed(() => {\n if (props.color && !props.outlined) {\n return \"text-white\";\n }\n return \"text-gray-600\";\n});\n\nconst density_class = computed(() => {\n return density_style[props.density];\n});\n\nconst stylesCard = computed(() => {\n return `\n ${shadowCard.value} \n ${borderColor.value} \n ${bgColor.value} \n ${props.maxWidth} \n rounded-md \n dark:bg-dark\n dark:text-white`;\n});\n\nconst { title, subtitle, icon, src, hoverContent } = toRefs(props);\n\nconst slots: Slots = useSlots();\n\nconst hasContent = computed(() => {\n return !!slots.default || !!props.title || !!props.subtitle;\n});\n</script>\n\n<template>\n <div :class=\"`${stylesCard} mx-auto`\">\n <EpHover\n :textColor=\"hoverColor\"\n :textSize=\"textSize\"\n :seeThrough=\"seeThrough\"\n :bgColor=\"hoverBg\"\n :animation=\"hoverAnimation\"\n :text=\"hoverContent\"\n v-if=\"src && hoverContent\"\n >\n <img\n :src=\"src\"\n :class=\"`w-full ${hasContent ? 'rounded-t-md' : 'rounded-md'}`\"\n alt=\"header card\"\n />\n </EpHover>\n <div :class=\"density_class\" v-if=\"hasContent\">\n <div\n v-if=\"title || subtitle\"\n class=\"mb-2 flex items-center justify-between dark:text-white\"\n >\n <div>\n <h3 class=\"text-2xl dark:text-white font-bold\">{{ title }}</h3>\n <h4 :class=\"`text-xs dark:text-white ${subTitleText}`\">\n {{ subtitle }}\n </h4>\n </div>\n <div v-if=\"icon\">\n <EpIcon :icon-path=\"icon\" />\n </div>\n </div>\n <slot name=\"card-header\" />\n <div class=\"dark:text-white\">\n <slot />\n </div>\n <div class=\"dark:text-white max-w-4xl\">\n <slot name=\"card-actions\" />\n </div>\n </div>\n </div>\n</template>\n"],"names":["_createElementBlock","_unref","_createBlock","EpHover","hoverColor","textSize","seeThrough","hoverBg","hoverAnimation","_createElementVNode","_openBlock","_toDisplayString","_createVNode","EpIcon","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,UAAM,QAAQ;AAed,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,CAAC,MAAM,OAAO,cAAc;AAAA,IACrC,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;AACjC,UAAI,MAAM,YAAY,MAAM,OAAO;AACjC,eAAO,gBAAgB,MAAM,KAAK;AAAA,MACpC;AACA,UAAI,MAAM,UAAU;AAClB,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,UAAI,MAAM,SAAS,CAAC,MAAM,UAAU;AAClC,eAAO,GAAG,MAAM,KAAK;AAAA,MACvB;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAClC,UAAI,MAAM,SAAS,CAAC,MAAM,UAAU;AAClC,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,cAAc,MAAM,OAAO;AAAA,IACpC,CAAC;AAED,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO;AAAA,MACH,WAAW,KAAK;AAAA,MAChB,YAAY,KAAK;AAAA,MACjB,QAAQ,KAAK;AAAA,MACb,MAAM,QAAQ;AAAA;AAAA;AAAA;AAAA,IAIpB,CAAC;AAED,UAAM,EAAE,OAAO,UAAU,MAAM,KAAK,aAAA,IAAiB,OAAO,KAAK;AAEjE,UAAM,QAAe,SAAA;AAErB,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,MAAM,SAAS,CAAC,CAAC,MAAM;AAAA,IACrD,CAAC;;0BAICA,mBAuCM,OAAA;AAAA,QAvCA,yBAAU,WAAA,KAAU,UAAA;AAAA,MAAA;QAQhBC,MAAA,GAAA,KAAOA,MAAA,YAAA,kBAPfC,YAcUC,aAAA;AAAA;UAbP,WAAWC,KAAAA;AAAAA,UACX,UAAUC,KAAAA;AAAAA,UACV,YAAYC,KAAAA;AAAAA,UACZ,SAASC,KAAAA;AAAAA,UACT,WAAWC,KAAAA;AAAAA,UACX,MAAMP,MAAA,YAAA;AAAA,QAAA;2BAGP,MAIE;AAAA,YAJFQ,mBAIE,OAAA;AAAA,cAHC,KAAKR,MAAA,GAAA;AAAA,cACL,gCAAiB,WAAA,QAAU,iBAAA,YAAA,EAAA;AAAA,cAC5B,KAAI;AAAA,YAAA;;;;QAG0B,WAAA,sBAAlCD,mBAsBM,OAAA;AAAA;UAtBA,sBAAO,cAAA,KAAa;AAAA,QAAA;UAEhBC,MAAA,KAAA,KAASA,MAAA,QAAA,KADjBS,aAAAV,mBAaM,OAbN,YAaM;AAAA,YATJS,mBAKM,OAAA,MAAA;AAAA,cAJJA,mBAA+D,MAA/D,YAA+DE,gBAAbV,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,cACvDQ,mBAEK,MAAA;AAAA,gBAFA,iDAAkC,aAAA,KAAY,EAAA;AAAA,cAAA,mBAC9CR,MAAA,QAAA,CAAQ,GAAA,CAAA;AAAA,YAAA;YAGJA,MAAA,IAAA,kBAAXD,mBAEM,OAAA,YAAA;AAAA,cADJY,YAA4BC,aAAA,EAAnB,aAAWZ,MAAA,IAAA,EAAA,GAAI,MAAA,GAAA,CAAA,WAAA,CAAA;AAAA,YAAA;;UAG5Ba,WAA2B,KAAA,QAAA,aAAA;AAAA,UAC3BL,mBAEM,OAFN,YAEM;AAAA,YADJK,WAAQ,KAAA,QAAA,SAAA;AAAA,UAAA;UAEVL,mBAEM,OAFN,YAEM;AAAA,YADJK,WAA4B,KAAA,QAAA,cAAA;AAAA,UAAA;;;;;;"}
@@ -103,7 +103,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
103
103
  }, [
104
104
  !unref(thumbnail) ? (openBlock(), createElementBlock("div", _hoisted_1, [
105
105
  createElementVNode("div", {
106
- class: normalizeClass(`mx-auto bg-white dark:bg-dark rounded-md overflow-hidden shadow-md ${renderCols.value}`)
106
+ class: normalizeClass(`mx-auto bg-white dark:bg-dark rounded-md overflow-hidden shadow-md dark:border dark:border-base ${renderCols.value}`)
107
107
  }, [
108
108
  unref(isLoading) ? (openBlock(), createElementBlock("span", _hoisted_2, [
109
109
  createVNode(_sfc_main$1, {
@@ -1 +1 @@
1
- {"version":3,"file":"EpImg.vue.js","sources":["../../../src/components/basics/EpImg.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, ref, computed } from \"vue\";\nimport { sizeThumbnailStyle, cols_img } from \"~/types/Image\";\nimport { useImage } from \"@vueuse/core\";\nimport EpModal from \"~/components/interactions/EpModal.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpBtn from \"~/components/basics/EpBtn.vue\";\nimport { mdiArrowExpandAll } from \"@mdi/js\";\nimport { mdiImage } from \"@mdi/js\";\nimport { mdiImageRemove } from \"@mdi/js\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport type { EpImgProps } from \"~/types/basics/EpImg\";\n\nconst props = withDefaults(defineProps<EpImgProps>(), {\n alt: \"Image snfas\",\n cols: \"6\",\n thumbnail: false,\n noModal: false,\n sizeThumbnail: \"medium\",\n labelClose: \"Fermer\",\n labelRef: \"Référence\",\n labelRefLib: \"Référence bibliographique\",\n});\n\n// To access freely the image\nconst imgEl = ref<HTMLImageElement | null>(null);\n\ndefineExpose({ imgEl });\n\nconst renderCols = computed(() => {\n return cols_img[+props.cols];\n});\n\nconst renderBib = computed(() => {\n if (props.bib) {\n return useRenderText(props.bib);\n }\n return \"\";\n});\n\nconst showModal = ref<boolean>(false);\n\nconst toggleModal = (): void => {\n if (props.noModal) {\n return;\n }\n showModal.value = !showModal.value;\n};\n\nconst showBib = ref<boolean>(false);\n\nconst toggleBib = (): void => {\n showBib.value = !showBib.value;\n};\n\nconst styleSizeThumbnail = computed(() => {\n return sizeThumbnailStyle[props.sizeThumbnail];\n});\n\nconst { isLoading, error } = useImage({ src: props.src });\nconst { src, alt, title, caption, thumbnail, bib, sizeThumbnail } =\n toRefs(props);\n</script>\n\n<template>\n <div :class=\"thumbnail ? 'inline-block' : ''\">\n <div v-if=\"!thumbnail\" class=\"flex m-2\">\n <div\n :class=\"`mx-auto bg-white dark:bg-dark rounded-md overflow-hidden shadow-md ${renderCols}`\"\n >\n <template v-if=\"isLoading\">\n <span class=\"text-gray-200\"\n ><EpIcon :icon-path=\"mdiImage\" size=\"250\"></EpIcon\n ></span>\n </template>\n <template v-else-if=\"error\">\n <span class=\"text-red-200\"\n ><EpIcon :icon-path=\"mdiImageRemove\" size=\"150\"></EpIcon\n ></span>\n </template>\n <template v-else>\n <div\n :class=\"`${\n !noModal ? 'cursor-pointer' : ''\n } dark:bg-white group relative`\"\n >\n <img\n class=\"object-cover object-center w-full\"\n :src=\"src\"\n :alt=\"alt\"\n @click=\"toggleModal\"\n ref=\"imgEl\"\n />\n <div\n v-if=\"!noModal\"\n class=\"absolute bottom-2 right-2 text-white text-center bg-black rounded opacity-0 transition-opacity duration-300 group-hover:opacity-50 cursor-pointer\"\n >\n <EpIcon size=\"28\" :icon-path=\"mdiArrowExpandAll\" />\n </div>\n </div>\n </template>\n <div\n class=\"px-4 py-2 dark:bg-black dark:border-white dark:rounded-b-md\"\n v-if=\"title || caption || bib\"\n >\n <h2 class=\"text-2xl dark:text-white font-bold\">\n {{ title }}\n </h2>\n <p class=\"text-gray-500 dark:text-white text-sm mt-4\">\n {{ caption }}\n </p>\n <div class=\"text-right\" v-if=\"renderBib\">\n <EpBtn @click=\"toggleBib\" size=\"small\" type=\"primary\">{{\n labelRef\n }}</EpBtn>\n </div>\n </div>\n </div>\n </div>\n <div v-if=\"thumbnail\" class=\"relative group inline-block m-2\">\n <img\n :class=\"`${styleSizeThumbnail} object-cover object-center group-hover:opacity-30 `\"\n :src=\"src\"\n :alt=\"alt\"\n ref=\"imgEl\"\n />\n <div\n :class=\"`absolute top-0 left-0 ${styleSizeThumbnail} bg-black opacity-0 transition-opacity duration-300 group-hover:opacity-30 cursor-pointer`\"\n @click=\"toggleModal\"\n >\n <div\n class=\"absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-white text-center\"\n >\n <EpIcon :icon-path=\"mdiArrowExpandAll\" />\n </div>\n </div>\n </div>\n <EpModal v-model=\"showModal\">\n <img\n class=\"object-cover object-center h-5/6 w-5/6 mx-auto dark:bg-white\"\n :src=\"src\"\n :alt=\"alt\"\n @click=\"toggleModal\"\n />\n <div class=\"px-4 py-2\" v-if=\"thumbnail\">\n <h2 class=\"text-2xl dark:text-white font-bold\">\n {{ title }}\n </h2>\n <p class=\"text-gray-500 dark:text-white text-sm mt-4\">\n {{ caption }}\n </p>\n <div class=\"text-gray-700 dark:text-white mt-4\" v-html=\"renderBib\" />\n </div>\n <!-- <div class=\"flex justify-end\"><EpBtn @click=\"toggleModal\" size=\"small\" type=\"error\" outlined>Fermer</EpBtn/> -->\n </EpModal>\n <EpModal v-model=\"showBib\" :title=\"labelRefLib\">\n <div class=\"text-gray-700 dark:text-white mt-4\" v-html=\"renderBib\" />\n <div class=\"flex justify-end\">\n <EpBtn @click=\"toggleBib\" size=\"small\" type=\"error\" outlined>\n {{ labelClose }}\n </EpBtn>\n </div>\n </EpModal>\n </div>\n</template>\n"],"names":["_createElementBlock","_unref","_openBlock","_createElementVNode","_createVNode","EpIcon","_normalizeClass","noModal","_toDisplayString","EpBtn","labelRef","EpModal","labelRefLib","labelClose"],"mappings":"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"}
1
+ {"version":3,"file":"EpImg.vue.js","sources":["../../../src/components/basics/EpImg.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { toRefs, ref, computed } from \"vue\";\nimport { sizeThumbnailStyle, cols_img } from \"~/types/Image\";\nimport { useImage } from \"@vueuse/core\";\nimport EpModal from \"~/components/interactions/EpModal.vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport EpBtn from \"~/components/basics/EpBtn.vue\";\nimport { mdiArrowExpandAll } from \"@mdi/js\";\nimport { mdiImage } from \"@mdi/js\";\nimport { mdiImageRemove } from \"@mdi/js\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport type { EpImgProps } from \"~/types/basics/EpImg\";\n\nconst props = withDefaults(defineProps<EpImgProps>(), {\n alt: \"Image snfas\",\n cols: \"6\",\n thumbnail: false,\n noModal: false,\n sizeThumbnail: \"medium\",\n labelClose: \"Fermer\",\n labelRef: \"Référence\",\n labelRefLib: \"Référence bibliographique\",\n});\n\n// To access freely the image\nconst imgEl = ref<HTMLImageElement | null>(null);\n\ndefineExpose({ imgEl });\n\nconst renderCols = computed(() => {\n return cols_img[+props.cols];\n});\n\nconst renderBib = computed(() => {\n if (props.bib) {\n return useRenderText(props.bib);\n }\n return \"\";\n});\n\nconst showModal = ref<boolean>(false);\n\nconst toggleModal = (): void => {\n if (props.noModal) {\n return;\n }\n showModal.value = !showModal.value;\n};\n\nconst showBib = ref<boolean>(false);\n\nconst toggleBib = (): void => {\n showBib.value = !showBib.value;\n};\n\nconst styleSizeThumbnail = computed(() => {\n return sizeThumbnailStyle[props.sizeThumbnail];\n});\n\nconst { isLoading, error } = useImage({ src: props.src });\nconst { src, alt, title, caption, thumbnail, bib, sizeThumbnail } =\n toRefs(props);\n</script>\n\n<template>\n <div :class=\"thumbnail ? 'inline-block' : ''\">\n <div v-if=\"!thumbnail\" class=\"flex m-2\">\n <div\n :class=\"`mx-auto bg-white dark:bg-dark rounded-md overflow-hidden shadow-md dark:border dark:border-base ${renderCols}`\"\n >\n <template v-if=\"isLoading\">\n <span class=\"text-gray-200\"\n ><EpIcon :icon-path=\"mdiImage\" size=\"250\"></EpIcon\n ></span>\n </template>\n <template v-else-if=\"error\">\n <span class=\"text-red-200\"\n ><EpIcon :icon-path=\"mdiImageRemove\" size=\"150\"></EpIcon\n ></span>\n </template>\n <template v-else>\n <div\n :class=\"`${\n !noModal ? 'cursor-pointer' : ''\n } dark:bg-white group relative`\"\n >\n <img\n class=\"object-cover object-center w-full\"\n :src=\"src\"\n :alt=\"alt\"\n @click=\"toggleModal\"\n ref=\"imgEl\"\n />\n <div\n v-if=\"!noModal\"\n class=\"absolute bottom-2 right-2 text-white text-center bg-black rounded opacity-0 transition-opacity duration-300 group-hover:opacity-50 cursor-pointer\"\n >\n <EpIcon size=\"28\" :icon-path=\"mdiArrowExpandAll\" />\n </div>\n </div>\n </template>\n <div\n class=\"px-4 py-2 dark:bg-black dark:border-white dark:rounded-b-md\"\n v-if=\"title || caption || bib\"\n >\n <h2 class=\"text-2xl dark:text-white font-bold\">\n {{ title }}\n </h2>\n <p class=\"text-gray-500 dark:text-white text-sm mt-4\">\n {{ caption }}\n </p>\n <div class=\"text-right\" v-if=\"renderBib\">\n <EpBtn @click=\"toggleBib\" size=\"small\" type=\"primary\">{{\n labelRef\n }}</EpBtn>\n </div>\n </div>\n </div>\n </div>\n <div v-if=\"thumbnail\" class=\"relative group inline-block m-2\">\n <img\n :class=\"`${styleSizeThumbnail} object-cover object-center group-hover:opacity-30 `\"\n :src=\"src\"\n :alt=\"alt\"\n ref=\"imgEl\"\n />\n <div\n :class=\"`absolute top-0 left-0 ${styleSizeThumbnail} bg-black opacity-0 transition-opacity duration-300 group-hover:opacity-30 cursor-pointer`\"\n @click=\"toggleModal\"\n >\n <div\n class=\"absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-white text-center\"\n >\n <EpIcon :icon-path=\"mdiArrowExpandAll\" />\n </div>\n </div>\n </div>\n <EpModal v-model=\"showModal\">\n <img\n class=\"object-cover object-center h-5/6 w-5/6 mx-auto dark:bg-white\"\n :src=\"src\"\n :alt=\"alt\"\n @click=\"toggleModal\"\n />\n <div class=\"px-4 py-2\" v-if=\"thumbnail\">\n <h2 class=\"text-2xl dark:text-white font-bold\">\n {{ title }}\n </h2>\n <p class=\"text-gray-500 dark:text-white text-sm mt-4\">\n {{ caption }}\n </p>\n <div class=\"text-gray-700 dark:text-white mt-4\" v-html=\"renderBib\" />\n </div>\n <!-- <div class=\"flex justify-end\"><EpBtn @click=\"toggleModal\" size=\"small\" type=\"error\" outlined>Fermer</EpBtn/> -->\n </EpModal>\n <EpModal v-model=\"showBib\" :title=\"labelRefLib\">\n <div class=\"text-gray-700 dark:text-white mt-4\" v-html=\"renderBib\" />\n <div class=\"flex justify-end\">\n <EpBtn @click=\"toggleBib\" size=\"small\" type=\"error\" outlined>\n {{ labelClose }}\n </EpBtn>\n </div>\n </EpModal>\n </div>\n</template>\n"],"names":["_createElementBlock","_unref","_openBlock","_createElementVNode","_createVNode","EpIcon","_normalizeClass","noModal","_toDisplayString","EpBtn","labelRef","EpModal","labelRefLib","labelClose"],"mappings":"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"}
@@ -33,7 +33,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
33
33
  });
34
34
  return (_ctx, _cache) => {
35
35
  return openBlock(), createElementBlock("li", {
36
- class: normalizeClass(`flex flex-row flex-nowrap justify-between font-medium items-center py-4 ${isNested.value} ${isDisabled.value}`)
36
+ class: normalizeClass(`flex flex-row flex-nowrap justify-between font-medium items-center py-4 ${isNested.value} ${isDisabled.value}`)
37
37
  }, [
38
38
  createElementVNode("div", _hoisted_1, [
39
39
  hasLeftContent.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
@@ -1 +1 @@
1
- {"version":3,"file":"EpListItem.vue.js","sources":["../../../src/components/basics/EpListItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, type SetupContext, useSlots } from \"vue\";\nimport type { EpListItemProps } from \"~/types/basics/EpListItem\";\n\nconst props = withDefaults(defineProps<EpListItemProps>(), {\n type: \"default\",\n disabled: \"false\",\n});\n\nconst slots: SetupContext[\"slots\"] = useSlots();\n\nconst hasLeftContent = computed(() => {\n return slots.leftContent ? true : false;\n});\n\nconst hasRigthContent = computed(() => {\n return slots.rightContent ? true : false;\n});\nconst isNested = computed(() => {\n if (props.type == \"nested\") return \"px-10\";\n else return \"\";\n});\nconst isDisabled = computed(() => {\n if (props.disabled == \"true\") return \"opacity-75 text-slate-500 \";\n else return \"hover:bg-gray-200 active:bg-gray-300\";\n});\n</script>\n\n<template>\n <li\n :class=\"`flex flex-row flex-nowrap justify-between font-medium items-center py-4 ${isNested} ${isDisabled}`\"\n >\n <div class=\"flex items-center\">\n <div v-if=\"hasLeftContent\" class=\"mr-2 min-w-fit px-2\">\n <slot name=\"leftContent\" />\n </div>\n <div>\n <slot />\n </div>\n </div>\n <div v-if=\"hasRigthContent\" class=\"px-2\">\n <slot name=\"rightContent\" />\n </div>\n </li>\n</template>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_openBlock","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;AAIA,UAAM,QAAQ;AAKd,UAAM,QAA+B,SAAA;AAErC,UAAM,iBAAiB,SAAS,MAAM;AACpC,aAAO,MAAM,cAAc,OAAO;AAAA,IACpC,CAAC;AAED,UAAM,kBAAkB,SAAS,MAAM;AACrC,aAAO,MAAM,eAAe,OAAO;AAAA,IACrC,CAAC;AACD,UAAM,WAAW,SAAS,MAAM;AAC9B,UAAI,MAAM,QAAQ,SAAU,QAAO;AAAA,UAC9B,QAAO;AAAA,IACd,CAAC;AACD,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,YAAY,OAAQ,QAAO;AAAA,UAChC,QAAO;AAAA,IACd,CAAC;;0BAICA,mBAcK,MAAA;AAAA,QAbF,OAAKC,eAAA,4EAA8E,SAAA,KAAQ,IAAI,WAAA,KAAU,EAAA;AAAA,MAAA;QAE1GC,mBAOM,OAPN,YAOM;AAAA,UANO,eAAA,SAAXC,UAAA,GAAAH,mBAEM,OAFN,YAEM;AAAA,YADJI,WAA2B,KAAA,QAAA,aAAA;AAAA,UAAA;UAE7BF,mBAEM,OAAA,MAAA;AAAA,YADJE,WAAQ,KAAA,QAAA,SAAA;AAAA,UAAA;;QAGD,gBAAA,SAAXD,UAAA,GAAAH,mBAEM,OAFN,YAEM;AAAA,UADJI,WAA4B,KAAA,QAAA,cAAA;AAAA,QAAA;;;;;"}
1
+ {"version":3,"file":"EpListItem.vue.js","sources":["../../../src/components/basics/EpListItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, type SetupContext, useSlots } from \"vue\";\nimport type { EpListItemProps } from \"~/types/basics/EpListItem\";\n\nconst props = withDefaults(defineProps<EpListItemProps>(), {\n type: \"default\",\n disabled: \"false\",\n});\n\nconst slots: SetupContext[\"slots\"] = useSlots();\n\nconst hasLeftContent = computed(() => {\n return slots.leftContent ? true : false;\n});\n\nconst hasRigthContent = computed(() => {\n return slots.rightContent ? true : false;\n});\nconst isNested = computed(() => {\n if (props.type == \"nested\") return \"px-10\";\n else return \"\";\n});\nconst isDisabled = computed(() => {\n if (props.disabled == \"true\") return \"opacity-75 text-slate-500 \";\n else return \"hover:bg-gray-200 active:bg-gray-300\";\n});\n</script>\n\n<template>\n <li\n :class=\"`flex flex-row flex-nowrap justify-between font-medium items-center py-4 ${isNested} ${isDisabled}`\"\n >\n <div class=\"flex items-center\">\n <div v-if=\"hasLeftContent\" class=\"mr-2 min-w-fit px-2\">\n <slot name=\"leftContent\" />\n </div>\n <div>\n <slot />\n </div>\n </div>\n <div v-if=\"hasRigthContent\" class=\"px-2\">\n <slot name=\"rightContent\" />\n </div>\n </li>\n</template>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_openBlock","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;AAIA,UAAM,QAAQ;AAKd,UAAM,QAA+B,SAAA;AAErC,UAAM,iBAAiB,SAAS,MAAM;AACpC,aAAO,MAAM,cAAc,OAAO;AAAA,IACpC,CAAC;AAED,UAAM,kBAAkB,SAAS,MAAM;AACrC,aAAO,MAAM,eAAe,OAAO;AAAA,IACrC,CAAC;AACD,UAAM,WAAW,SAAS,MAAM;AAC9B,UAAI,MAAM,QAAQ,SAAU,QAAO;AAAA,UAC9B,QAAO;AAAA,IACd,CAAC;AACD,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,YAAY,OAAQ,QAAO;AAAA,UAChC,QAAO;AAAA,IACd,CAAC;;0BAICA,mBAcK,MAAA;AAAA,QAbF,OAAKC,eAAA,2EAA6E,SAAA,KAAQ,IAAI,WAAA,KAAU,EAAA;AAAA,MAAA;QAEzGC,mBAOM,OAPN,YAOM;AAAA,UANO,eAAA,SAAXC,UAAA,GAAAH,mBAEM,OAFN,YAEM;AAAA,YADJI,WAA2B,KAAA,QAAA,aAAA;AAAA,UAAA;UAE7BF,mBAEM,OAAA,MAAA;AAAA,YADJE,WAAQ,KAAA,QAAA,SAAA;AAAA,UAAA;;QAGD,gBAAA,SAAXD,UAAA,GAAAH,mBAEM,OAFN,YAEM;AAAA,UADJI,WAA4B,KAAA,QAAA,cAAA;AAAA,QAAA;;;;;"}
@@ -1,5 +1,4 @@
1
1
  import { defineComponent, computed, createElementBlock, openBlock, normalizeClass, createElementVNode } from "vue";
2
- import useColors from "../../composables/useColors.js";
3
2
  const _hoisted_1 = ["width", "height"];
4
3
  const _hoisted_2 = ["width", "height"];
5
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -13,7 +12,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
13
12
  setup(__props) {
14
13
  const props = __props;
15
14
  const currentColor = computed(() => {
16
- return useColors("fill", props.color);
15
+ return props.color;
17
16
  });
18
17
  const styles = computed(() => {
19
18
  return props.inline ? "" : "flex flex-row w-full h-screen items-center justify-center";
@@ -1 +1 @@
1
- {"version":3,"file":"EpSpinner.vue.js","sources":["../../../src/components/basics/EpSpinner.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { computed } from \"vue\";\nimport useColors from \"~/composables/useColors\";\nimport type { EpSpinnerProps } from \"~/types/basics/EpSpinner\";\n\nconst props = withDefaults(defineProps<EpSpinnerProps>(), {\n color: \"primary\",\n dots: false,\n size: 46,\n inline: false,\n});\n\nconst currentColor = computed(() => {\n return useColors(\"fill\", props.color);\n});\n\nconst styles = computed(() => {\n return props.inline\n ? \"\"\n : \"flex flex-row w-full h-screen items-center justify-center\";\n});\n</script>\n\n<template>\n <div :class=\"styles\">\n <svg\n v-if=\"!dots\"\n xmlns=\"http://www.w3.org/2000/svg\"\n :width=\"size\"\n :height=\"size\"\n class=\"inline\"\n viewBox=\"0 0 32 32\"\n >\n <path\n :class=\"currentColor\"\n fill=\"currentColor\"\n d=\"M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z\"\n opacity=\".25\"\n ></path>\n <path\n :class=\"currentColor\"\n fill=\"currentColor\"\n d=\"M12,4a8,8,0,0,1,7.89,6.7A1.53,1.53,0,0,0,21.38,12h0a1.5,1.5,0,0,0,1.48-1.75,11,11,0,0,0-21.72,0A1.5,1.5,0,0,0,2.62,12h0a1.53,1.53,0,0,0,1.49-1.3A8,8,0,0,1,12,4Z\"\n >\n <animateTransform\n attributeName=\"transform\"\n dur=\"0.75s\"\n repeatCount=\"indefinite\"\n type=\"rotate\"\n values=\"0 12 12;360 12 12\"\n ></animateTransform>\n </path>\n </svg>\n <svg\n v-else\n xmlns=\"http://www.w3.org/2000/svg\"\n :width=\"size\"\n :height=\"size\"\n class=\"inline\"\n viewBox=\"0 0 32 32\"\n >\n <g>\n <circle\n cx=\"12\"\n cy=\"2.5\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".14\"\n />\n <circle\n cx=\"16.75\"\n cy=\"3.77\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".29\"\n />\n <circle\n cx=\"20.23\"\n cy=\"7.25\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".43\"\n />\n <circle\n cx=\"21.5\"\n cy=\"12\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".57\"\n />\n <circle\n cx=\"20.23\"\n cy=\"16.75\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".71\"\n />\n <circle\n cx=\"16.75\"\n cy=\"20.23\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".86\"\n />\n <circle\n cx=\"12\"\n cy=\"21.5\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n />\n <animateTransform\n attributeName=\"transform\"\n calcMode=\"discrete\"\n dur=\"0.75s\"\n repeatCount=\"indefinite\"\n type=\"rotate\"\n values=\"0 12 12;30 12 12;60 12 12;90 12 12;120 12 12;150 12 12;180 12 12;210 12 12;240 12 12;270 12 12;300 12 12;330 12 12;360 12 12\"\n />\n </g>\n </svg>\n </div>\n</template>\n"],"names":["_createElementBlock","dots","size","_createElementVNode"],"mappings":";;;;;;;;;;;;;AAKA,UAAM,QAAQ;AAOd,UAAM,eAAe,SAAS,MAAM;AAClC,aAAO,UAAU,QAAQ,MAAM,KAAK;AAAA,IACtC,CAAC;AAED,UAAM,SAAS,SAAS,MAAM;AAC5B,aAAO,MAAM,SACT,KACA;AAAA,IACN,CAAC;;0BAICA,mBAuGM,OAAA;AAAA,QAvGA,sBAAO,OAAA,KAAM;AAAA,MAAA;SAERC,KAAAA,qBADTD,mBA2BM,OAAA;AAAA;UAzBJ,OAAM;AAAA,UACL,OAAOE,KAAAA;AAAAA,UACP,QAAQA,KAAAA;AAAAA,UACT,OAAM;AAAA,UACN,SAAQ;AAAA,QAAA;UAERC,mBAKQ,QAAA;AAAA,YAJL,sBAAO,aAAA,KAAY;AAAA,YACpB,MAAK;AAAA,YACL,GAAE;AAAA,YACF,SAAQ;AAAA,UAAA;UAEVA,mBAYO,QAAA;AAAA,YAXJ,sBAAO,aAAA,KAAY;AAAA,YACpB,MAAK;AAAA,YACL,GAAE;AAAA,UAAA;YAEFA,mBAMoB,oBAAA;AAAA,cALlB,eAAc;AAAA,cACd,KAAI;AAAA,cACJ,aAAY;AAAA,cACZ,MAAK;AAAA,cACL,QAAO;AAAA,YAAA;;2CAIbH,mBAyEM,OAAA;AAAA;UAvEJ,OAAM;AAAA,UACL,OAAOE,KAAAA;AAAAA,UACP,QAAQA,KAAAA;AAAAA,UACT,OAAM;AAAA,UACN,SAAQ;AAAA,QAAA;UAERC,mBAgEI,KAAA,MAAA;AAAA,YA/DFA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAME,UAAA;AAAA,cALA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,YAAA;sCAEPA,mBAOE,oBAAA;AAAA,cANA,eAAc;AAAA,cACd,UAAS;AAAA,cACT,KAAI;AAAA,cACJ,aAAY;AAAA,cACZ,MAAK;AAAA,cACL,QAAO;AAAA,YAAA;;;;;;;"}
1
+ {"version":3,"file":"EpSpinner.vue.js","sources":["../../../src/components/basics/EpSpinner.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { computed } from \"vue\";\nimport type { EpSpinnerProps } from \"~/types/basics/EpSpinner\";\n\nconst props = withDefaults(defineProps<EpSpinnerProps>(), {\n color: \"primary\",\n dots: false,\n size: 46,\n inline: false,\n});\n\nconst currentColor = computed(() => {\n return props.color\n});\n\nconst styles = computed(() => {\n return props.inline\n ? \"\"\n : \"flex flex-row w-full h-screen items-center justify-center\";\n});\n</script>\n\n<template>\n <div :class=\"styles\">\n <svg\n v-if=\"!dots\"\n xmlns=\"http://www.w3.org/2000/svg\"\n :width=\"size\"\n :height=\"size\"\n class=\"inline\"\n viewBox=\"0 0 32 32\"\n >\n <path\n :class=\"currentColor\"\n fill=\"currentColor\"\n d=\"M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z\"\n opacity=\".25\"\n ></path>\n <path\n :class=\"currentColor\"\n fill=\"currentColor\"\n d=\"M12,4a8,8,0,0,1,7.89,6.7A1.53,1.53,0,0,0,21.38,12h0a1.5,1.5,0,0,0,1.48-1.75,11,11,0,0,0-21.72,0A1.5,1.5,0,0,0,2.62,12h0a1.53,1.53,0,0,0,1.49-1.3A8,8,0,0,1,12,4Z\"\n >\n <animateTransform\n attributeName=\"transform\"\n dur=\"0.75s\"\n repeatCount=\"indefinite\"\n type=\"rotate\"\n values=\"0 12 12;360 12 12\"\n ></animateTransform>\n </path>\n </svg>\n <svg\n v-else\n xmlns=\"http://www.w3.org/2000/svg\"\n :width=\"size\"\n :height=\"size\"\n class=\"inline\"\n viewBox=\"0 0 32 32\"\n >\n <g>\n <circle\n cx=\"12\"\n cy=\"2.5\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".14\"\n />\n <circle\n cx=\"16.75\"\n cy=\"3.77\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".29\"\n />\n <circle\n cx=\"20.23\"\n cy=\"7.25\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".43\"\n />\n <circle\n cx=\"21.5\"\n cy=\"12\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".57\"\n />\n <circle\n cx=\"20.23\"\n cy=\"16.75\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".71\"\n />\n <circle\n cx=\"16.75\"\n cy=\"20.23\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n opacity=\".86\"\n />\n <circle\n cx=\"12\"\n cy=\"21.5\"\n r=\"1.5\"\n :class=\"currentColor\"\n fill=\"currentColor\"\n />\n <animateTransform\n attributeName=\"transform\"\n calcMode=\"discrete\"\n dur=\"0.75s\"\n repeatCount=\"indefinite\"\n type=\"rotate\"\n values=\"0 12 12;30 12 12;60 12 12;90 12 12;120 12 12;150 12 12;180 12 12;210 12 12;240 12 12;270 12 12;300 12 12;330 12 12;360 12 12\"\n />\n </g>\n </svg>\n </div>\n</template>\n"],"names":["_createElementBlock","dots","size","_createElementVNode"],"mappings":";;;;;;;;;;;;AAIA,UAAM,QAAQ;AAOd,UAAM,eAAe,SAAS,MAAM;AAClC,aAAO,MAAM;AAAA,IACf,CAAC;AAED,UAAM,SAAS,SAAS,MAAM;AAC5B,aAAO,MAAM,SACT,KACA;AAAA,IACN,CAAC;;0BAICA,mBAuGM,OAAA;AAAA,QAvGA,sBAAO,OAAA,KAAM;AAAA,MAAA;SAERC,KAAAA,qBADTD,mBA2BM,OAAA;AAAA;UAzBJ,OAAM;AAAA,UACL,OAAOE,KAAAA;AAAAA,UACP,QAAQA,KAAAA;AAAAA,UACT,OAAM;AAAA,UACN,SAAQ;AAAA,QAAA;UAERC,mBAKQ,QAAA;AAAA,YAJL,sBAAO,aAAA,KAAY;AAAA,YACpB,MAAK;AAAA,YACL,GAAE;AAAA,YACF,SAAQ;AAAA,UAAA;UAEVA,mBAYO,QAAA;AAAA,YAXJ,sBAAO,aAAA,KAAY;AAAA,YACpB,MAAK;AAAA,YACL,GAAE;AAAA,UAAA;YAEFA,mBAMoB,oBAAA;AAAA,cALlB,eAAc;AAAA,cACd,KAAI;AAAA,cACJ,aAAY;AAAA,cACZ,MAAK;AAAA,cACL,QAAO;AAAA,YAAA;;2CAIbH,mBAyEM,OAAA;AAAA;UAvEJ,OAAM;AAAA,UACL,OAAOE,KAAAA;AAAAA,UACP,QAAQA,KAAAA;AAAAA,UACT,OAAM;AAAA,UACN,SAAQ;AAAA,QAAA;UAERC,mBAgEI,KAAA,MAAA;AAAA,YA/DFA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAOE,UAAA;AAAA,cANA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,cACL,SAAQ;AAAA,YAAA;YAEVA,mBAME,UAAA;AAAA,cALA,IAAG;AAAA,cACH,IAAG;AAAA,cACH,GAAE;AAAA,cACD,sBAAO,aAAA,KAAY;AAAA,cACpB,MAAK;AAAA,YAAA;sCAEPA,mBAOE,oBAAA;AAAA,cANA,eAAc;AAAA,cACd,UAAS;AAAA,cACT,KAAI;AAAA,cACJ,aAAY;AAAA,cACZ,MAAK;AAAA,cACL,QAAO;AAAA,YAAA;;;;;;;"}
@@ -27,9 +27,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
27
27
  container.innerHTML = html;
28
28
  const nodes = [];
29
29
  container.childNodes.forEach((node) => {
30
- var _a;
30
+ var _a, _b;
31
31
  if (node.nodeType === 3) {
32
- if (node.textContent) nodes.push(node.textContent);
32
+ const text = (_a = node.textContent) == null ? void 0 : _a.trim();
33
+ if (text) nodes.push(text);
33
34
  } else if (node.nodeType === 1) {
34
35
  const el = node;
35
36
  if (el.classList.contains("ep_glossary_item")) {
@@ -64,7 +65,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
64
65
  word: render_word,
65
66
  variations: stringVariations,
66
67
  graminfo: term.graminfo,
67
- src: (_a = term.img) != null ? _a : "",
68
+ src: (_b = term.img) != null ? _b : "",
68
69
  domain: term.domain,
69
70
  relations: stringRelations,
70
71
  labelDefinition: props.labelDefinition,
@@ -1 +1 @@
1
- {"version":3,"file":"EpText.vue.js","sources":["../../../src/components/basics/EpText.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs, h, type VNode } from \"vue\";\nimport type { Glossary } from \"~/types/Glossary\"\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\nimport EpTerm from \"~/components/medias/EpTerm.vue\";\nimport type { EpTextProps } from \"~/types/basics/EpText\";\n\nconst props = withDefaults(defineProps<EpTextProps>(), {\n compact: false,\n labelDefinition: \"Définition\",\n labelDomain: \"Domaine\",\n labelVariations: \"Variations\",\n labelRelations: \"Relations\",\n labelClose: \"Fermer\",\n});\n\nconst { compact } = toRefs(props);\n\nconst renderTitle = computed(() => props.title || \"En savoir plus\");\n\nfunction parseHtmlToVNodes(html: string): (VNode | string)[] {\n const container = document.createElement(\"div\");\n container.innerHTML = html;\n\n const nodes: (VNode | string)[] = [];\n\n container.childNodes.forEach((node) => {\n if (node.nodeType === 3) {\n // Text node\n if (node.textContent) nodes.push(node.textContent);\n } else if (node.nodeType === 1) {\n const el = node as HTMLElement;\n\n if (el.classList.contains(\"ep_glossary_item\")) {\n const id = el.getAttribute(\"data-id\");\n const render_word = el.innerHTML;\n\n let _glossary: Glossary[] = [];\n if (props.glossary) {\n _glossary = props.glossary.map((item) => ({\n ...item,\n id: item.documentId ?? item.id,\n }));\n }\n\n const term = _glossary.find((word) => word.id === id);\n\n if (term) {\n const foundedRelations = _glossary.filter((x) =>\n x.relation.some((r: string) => r === id)\n );\n const termsRelation = foundedRelations.map((x) => x.term);\n const stringRelations = termsRelation.join(', ')\n const stringVariations = term.variation.join(', ')\n\n nodes.push(\n h(\n \"div\",\n { style: \"display:inline\" },\n h(\n EpTerm,\n {\n term: term.term,\n word: render_word,\n variations: stringVariations,\n graminfo: term.graminfo,\n src: term.img ?? \"\",\n domain: term.domain,\n relations: stringRelations,\n labelDefinition: props.labelDefinition,\n labelDomain: props.labelDomain,\n labelVariations: props.labelVariations,\n labelRelations: props.labelRelations,\n labelClose: props.labelClose,\n },\n () => {\n const def = useRenderText(term.definition);\n if (!isHtml(def)) {\n return h(\"div\", { innerHTML: def });\n }\n return parseHtmlToVNodes(def);\n }\n )\n )\n );\n return;\n }\n }\n nodes.push(\n h(\n el.tagName.toLowerCase(),\n {},\n parseHtmlToVNodes(el.innerHTML) \n )\n );\n }\n });\n\n return nodes;\n}\n\nconst renderText = computed(() => {\n if (!props.content) return [h(\"div\")];\n if (!isHtml(props.content)) {\n return [h(\"div\", { innerHTML: useRenderText(props.content) })];\n }\n\n const formatted = useRenderText(props.content)\n\n return parseHtmlToVNodes(formatted);\n});\n</script>\n\n<template>\n <div class=\"px-2 text-black dark:text-white\">\n <EpAccordeon v-if=\"compact\" outlined :title=\"renderTitle\">\n <div>\n <component :is=\"node\" v-for=\"(node, i) in renderText\" :key=\"i\" />\n </div>\n </EpAccordeon>\n <div v-else>\n <component :is=\"node\" v-for=\"(node, i) in renderText\" :key=\"i\" />\n </div>\n </div>\n</template>\n"],"names":["_a","EpTerm","_openBlock","_createElementBlock","_unref","_createBlock","EpAccordeon","_createElementVNode","_Fragment","_renderList","_resolveDynamicComponent"],"mappings":"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"}
1
+ {"version":3,"file":"EpText.vue.js","sources":["../../../src/components/basics/EpText.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRefs, h, type VNode } from \"vue\";\nimport type { Glossary } from \"~/types/Glossary\"\nimport { isHtml } from \"~/composables/isHtml\";\nimport { useRenderText } from \"~/composables/useRenderText\";\nimport EpAccordeon from \"~/components/interactions/EpAccordeon.vue\";\nimport EpTerm from \"~/components/medias/EpTerm.vue\";\nimport type { EpTextProps } from \"~/types/basics/EpText\";\n\nconst props = withDefaults(defineProps<EpTextProps>(), {\n compact: false,\n labelDefinition: \"Définition\",\n labelDomain: \"Domaine\",\n labelVariations: \"Variations\",\n labelRelations: \"Relations\",\n labelClose: \"Fermer\",\n});\n\nconst { compact } = toRefs(props);\n\nconst renderTitle = computed(() => props.title || \"En savoir plus\");\n\nfunction parseHtmlToVNodes(html: string): (VNode | string)[] {\n const container = document.createElement(\"div\");\n container.innerHTML = html;\n\n const nodes: (VNode | string)[] = [];\n\n container.childNodes.forEach((node) => {\n if (node.nodeType === 3) {\n // Text node\n const text = node.textContent?.trim();\n if (text) nodes.push(text); // only push non-empty text\n } else if (node.nodeType === 1) {\n const el = node as HTMLElement;\n\n if (el.classList.contains(\"ep_glossary_item\")) {\n const id = el.getAttribute(\"data-id\");\n const render_word = el.innerHTML;\n\n let _glossary: Glossary[] = [];\n if (props.glossary) {\n _glossary = props.glossary.map((item) => ({\n ...item,\n id: item.documentId ?? item.id\n }));\n }\n\n const term = _glossary.find((word) => word.id === id);\n\n if (term) {\n const foundedRelations = _glossary.filter((x) =>\n x.relation.some((r: string) => r === id)\n );\n const termsRelation = foundedRelations.map((x) => x.term);\n const stringRelations = termsRelation.join(', ')\n const stringVariations = term.variation.join(', ')\n\n nodes.push(\n h(\n \"div\",\n { style: \"display:inline\" },\n h(\n EpTerm,\n {\n term: term.term,\n word: render_word,\n variations: stringVariations,\n graminfo: term.graminfo,\n src: term.img ?? \"\",\n domain: term.domain,\n relations: stringRelations,\n labelDefinition: props.labelDefinition,\n labelDomain: props.labelDomain,\n labelVariations: props.labelVariations,\n labelRelations: props.labelRelations,\n labelClose: props.labelClose,\n },\n () => {\n const def = useRenderText(term.definition);\n if (!isHtml(def)) {\n return h(\"div\", { innerHTML: def });\n }\n return parseHtmlToVNodes(def);\n }\n )\n )\n );\n return;\n }\n }\n nodes.push(\n h(\n el.tagName.toLowerCase(),\n {},\n parseHtmlToVNodes(el.innerHTML) \n )\n );\n }\n });\n\n return nodes;\n}\n\nconst renderText = computed(() => {\n if (!props.content) return [h(\"div\")];\n if (!isHtml(props.content)) {\n return [h(\"div\", { innerHTML: useRenderText(props.content) })];\n }\n\n const formatted = useRenderText(props.content)\n\n return parseHtmlToVNodes(formatted);\n});\n</script>\n\n<template>\n <div class=\"px-2 text-black dark:text-white\">\n <EpAccordeon v-if=\"compact\" outlined :title=\"renderTitle\">\n <div>\n <component :is=\"node\" v-for=\"(node, i) in renderText\" :key=\"i\" />\n </div>\n </EpAccordeon>\n <div v-else>\n <component :is=\"node\" v-for=\"(node, i) in renderText\" :key=\"i\" />\n </div>\n </div>\n</template>\n"],"names":["_a","EpTerm","_openBlock","_createElementBlock","_unref","_createBlock","EpAccordeon","_createElementVNode","_Fragment","_renderList","_resolveDynamicComponent"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, computed, toRefs, createElementBlock, createBlock, openBlock, createCommentVNode, createElementVNode, unref, Fragment, createVNode, createSlots, withCtx, createTextVNode, toDisplayString, normalizeClass, withModifiers } from "vue";
2
2
  import _sfc_main$1 from "../basics/EpIcon.vue.js";
3
3
  import _sfc_main$3 from "../basics/EpBtn.vue.js";
4
- import _sfc_main$4 from "../tools/DisplayBox.vue.js";
4
+ import _sfc_main$4 from "../tools/DisplayBox.vue2.js";
5
5
  /* empty css */
6
6
  import _sfc_main$2 from "./EpEdu.vue.js";
7
7
  import { useRenderText } from "../../composables/useRenderText.js";
@@ -43,7 +43,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
43
43
  return defineAsyncComponent(() => import("./EpReading.vue2.js"));
44
44
  }
45
45
  return defineAsyncComponent(
46
- () => __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../basics/EpAvatar.vue": () => import("../basics/EpAvatar.vue2.js"), "../basics/EpBadge.vue": () => import("../basics/EpBadge.vue.js"), "../basics/EpBtn.vue": () => import("../basics/EpBtn.vue2.js"), "../basics/EpCard.vue": () => import("../basics/EpCard.vue2.js"), "../basics/EpChip.vue": () => import("../basics/EpChip.vue2.js"), "../basics/EpDivider.vue": () => import("../basics/EpDivider.vue2.js"), "../basics/EpFlex.vue": () => import("../basics/EpFlex.vue2.js"), "../basics/EpHover.vue": () => import("../basics/EpHover.vue2.js"), "../basics/EpHoverCard.vue": () => import("../basics/EpHoverCard.vue2.js"), "../basics/EpIcon.vue": () => import("../basics/EpIcon.vue2.js"), "../basics/EpImg.vue": () => import("../basics/EpImg.vue2.js"), "../basics/EpImgCarousel.vue": () => import("../basics/EpImgCarousel.vue2.js"), "../basics/EpList.vue": () => import("../basics/EpList.vue.js"), "../basics/EpListItem.vue": () => import("../basics/EpListItem.vue2.js"), "../basics/EpSection.vue": () => import("../basics/EpSection.vue2.js"), "../basics/EpSectionCols.vue": () => import("../basics/EpSectionCols.vue2.js"), "../basics/EpSpinner.vue": () => import("../basics/EpSpinner.vue2.js"), "../basics/EpStackedList.vue": () => import("../basics/EpStackedList.vue2.js"), "../basics/EpTable.vue": () => import("../basics/EpTable.vue2.js"), "../basics/EpText.vue": () => import("../basics/EpText.vue2.js"), "../charts/EpBarChart.vue": () => import("../charts/EpBarChart.vue2.js"), "../charts/EpFunnelChart.vue": () => import("../charts/EpFunnelChart.vue2.js"), "../charts/EpLineChart.vue": () => import("../charts/EpLineChart.vue2.js"), "../charts/EpPieChart.vue": () => import("../charts/EpPieChart.vue2.js"), "./EpBranchingScenario.vue": () => import("./EpBranchingScenario.vue.js"), "./EpCodeblock.vue": () => import("./EpCodeblock.vue3.js"), "./EpConclusion.vue": () => import("./EpConclusion.vue2.js"), "./EpDescription.vue": () => import("./EpDescription.vue2.js"), "./EpDocument.vue": () => import("./EpDocument.vue2.js"), "./EpEdu.vue": () => import("./EpEdu.vue2.js"), "./EpInstructions.vue": () => import("./EpInstructions.vue2.js"), "./EpIntroduction.vue": () => import("./EpIntroduction.vue2.js"), "./EpObjective.vue": () => import("./EpObjective.vue2.js"), "./EpReading.vue": () => import("./EpReading.vue2.js"), "./EpResource.vue": () => import("./EpResource.vue2.js"), "./EpScope.vue": () => import("./EpScope.vue2.js"), "./EpSpecificObjective.vue": () => import("./EpSpecificObjective.vue2.js"), "../forms/EpCheckbox.vue": () => import("../forms/EpCheckbox.vue.js"), "../forms/EpInput.vue": () => import("../forms/EpInput.vue.js"), "../forms/EpRadio.vue": () => import("../forms/EpRadio.vue.js"), "../forms/EpRadioSummative.vue": () => import("../forms/EpRadioSummative.vue.js"), "../forms/EpSelect.vue": () => import("../forms/EpSelect.vue.js"), "../forms/EpSwitch.vue": () => import("../forms/EpSwitch.vue.js"), "../forms/EpTextarea.vue": () => import("../forms/EpTextarea.vue.js"), "../forms/EpToggle.vue": () => import("../forms/EpToggle.vue.js"), "../interactions/Ep360Image.vue": () => import("../interactions/Ep360Image.vue.js"), "../interactions/Ep360Video.vue": () => import("../interactions/Ep360Video.vue.js"), "../interactions/EpAccordeon.vue": () => import("../interactions/EpAccordeon.vue.js"), "../interactions/EpContentSlider.vue": () => import("../interactions/EpContentSlider.vue2.js"), "../interactions/EpDarkMode.vue": () => import("../interactions/EpDarkMode.vue2.js"), "../interactions/EpDraggable.vue": () => import("../interactions/EpDraggable.vue2.js"), "../interactions/EpHotSpot.vue": () => import("../interactions/EpHotSpot.vue2.js"), "../interactions/EpModal.vue": () => import("../interactions/EpModal.vue3.js"), "../interactions/EpQuestion.vue": () => import("../interactions/EpQuestion.vue2.js"), "../interactions/EpSummativeTable.vue": () => import("../interactions/EpSummativeTable.vue2.js"), "../interactions/EpSvgShow.vue": () => import("../interactions/EpSvgShow.vue2.js"), "../interactions/EpTabs.vue": () => import("../interactions/EpTabs.vue.js"), "../interactions/EpTooltip.vue": () => import("../interactions/EpTooltip.vue3.js"), "../medias/EpAudio.vue": () => import("../medias/EpAudio.vue2.js"), "../medias/EpCardLink.vue": () => import("../medias/EpCardLink.vue2.js"), "../medias/EpCarousel.vue": () => import("../medias/EpCarousel.vue.js"), "../medias/EpHierarchy.vue": () => import("../medias/EpHierarchy.vue.js"), "../medias/EpIframe.vue": () => import("../medias/EpIframe.vue2.js"), "../medias/EpKatex.vue": () => import("../medias/EpKatex.vue.js"), "../medias/EpLink.vue": () => import("../medias/EpLink.vue2.js"), "../medias/EpLinkVersion.vue": () => import("../medias/EpLinkVersion.vue2.js"), "../medias/EpLottieSvg.vue": () => import("../medias/EpLottieSvg.vue2.js"), "../medias/EpSensibleImage.vue": () => import("../medias/EpSensibleImage.vue.js"), "../medias/EpSoftware.vue": () => import("../medias/EpSoftware.vue2.js"), "../medias/EpSvg.vue": () => import("../medias/EpSvg.vue2.js"), "../medias/EpTerm.vue": () => import("../medias/EpTerm.vue2.js"), "../medias/EpTimeLine.vue": () => import("../medias/EpTimeLine.vue3.js"), "../medias/EpVideo.vue": () => import("../medias/EpVideo.vue2.js"), "../medias/EpVideoPanopto.vue": () => import("../medias/EpVideoPanopto.vue2.js"), "../medias/EpWordDef.vue": () => import("../medias/EpWordDef.vue2.js"), "../signages/EpAlert.vue": () => import("../signages/EpAlert.vue.js"), "../signages/EpBadge.vue": () => import("../signages/EpBadge.vue2.js"), "../signages/EpHeader.vue": () => import("../signages/EpHeader.vue2.js"), "../signages/EpNothing.vue": () => import("../signages/EpNothing.vue.js"), "../signages/EpQuote.vue": () => import("../signages/EpQuote.vue2.js"), "../signages/EpSkeleton.vue": () => import("../signages/EpSkeleton.vue3.js"), "../tools/BgAudio.vue": () => import("../tools/BgAudio.vue.js"), "../tools/Details.vue": () => import("../tools/Details.vue.js"), "../tools/DisplayBox.vue": () => import("../tools/DisplayBox.vue3.js"), "../tools/SvgFilter.vue": () => import("../tools/SvgFilter.vue.js"), "../tools/TextMedia.vue": () => import("../tools/TextMedia.vue.js"), "../tools/TimelineItem.vue": () => import("../tools/TimelineItem.vue.js"), "../tools/TwoColsMedia.vue": () => import("../tools/TwoColsMedia.vue.js") }), `../${componentToLoad.path}/${componentToLoad.name}.vue`, 3)
46
+ () => __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../basics/EpAvatar.vue": () => import("../basics/EpAvatar.vue2.js"), "../basics/EpBadge.vue": () => import("../basics/EpBadge.vue.js"), "../basics/EpBtn.vue": () => import("../basics/EpBtn.vue2.js"), "../basics/EpCard.vue": () => import("../basics/EpCard.vue2.js"), "../basics/EpChip.vue": () => import("../basics/EpChip.vue2.js"), "../basics/EpDivider.vue": () => import("../basics/EpDivider.vue2.js"), "../basics/EpFlex.vue": () => import("../basics/EpFlex.vue2.js"), "../basics/EpHover.vue": () => import("../basics/EpHover.vue2.js"), "../basics/EpHoverCard.vue": () => import("../basics/EpHoverCard.vue2.js"), "../basics/EpIcon.vue": () => import("../basics/EpIcon.vue2.js"), "../basics/EpImg.vue": () => import("../basics/EpImg.vue2.js"), "../basics/EpImgCarousel.vue": () => import("../basics/EpImgCarousel.vue2.js"), "../basics/EpList.vue": () => import("../basics/EpList.vue.js"), "../basics/EpListItem.vue": () => import("../basics/EpListItem.vue2.js"), "../basics/EpSection.vue": () => import("../basics/EpSection.vue2.js"), "../basics/EpSectionCols.vue": () => import("../basics/EpSectionCols.vue2.js"), "../basics/EpSpinner.vue": () => import("../basics/EpSpinner.vue2.js"), "../basics/EpStackedList.vue": () => import("../basics/EpStackedList.vue2.js"), "../basics/EpTable.vue": () => import("../basics/EpTable.vue2.js"), "../basics/EpText.vue": () => import("../basics/EpText.vue2.js"), "../charts/EpBarChart.vue": () => import("../charts/EpBarChart.vue2.js"), "../charts/EpFunnelChart.vue": () => import("../charts/EpFunnelChart.vue2.js"), "../charts/EpLineChart.vue": () => import("../charts/EpLineChart.vue2.js"), "../charts/EpPieChart.vue": () => import("../charts/EpPieChart.vue2.js"), "./EpBranchingScenario.vue": () => import("./EpBranchingScenario.vue.js"), "./EpCodeblock.vue": () => import("./EpCodeblock.vue3.js"), "./EpConclusion.vue": () => import("./EpConclusion.vue2.js"), "./EpDescription.vue": () => import("./EpDescription.vue2.js"), "./EpDocument.vue": () => import("./EpDocument.vue2.js"), "./EpEdu.vue": () => import("./EpEdu.vue2.js"), "./EpInstructions.vue": () => import("./EpInstructions.vue2.js"), "./EpIntroduction.vue": () => import("./EpIntroduction.vue2.js"), "./EpObjective.vue": () => import("./EpObjective.vue2.js"), "./EpReading.vue": () => import("./EpReading.vue2.js"), "./EpResource.vue": () => import("./EpResource.vue2.js"), "./EpScope.vue": () => import("./EpScope.vue2.js"), "./EpSpecificObjective.vue": () => import("./EpSpecificObjective.vue2.js"), "../forms/EpCheckbox.vue": () => import("../forms/EpCheckbox.vue.js"), "../forms/EpInput.vue": () => import("../forms/EpInput.vue.js"), "../forms/EpRadio.vue": () => import("../forms/EpRadio.vue.js"), "../forms/EpRadioSummative.vue": () => import("../forms/EpRadioSummative.vue.js"), "../forms/EpSelect.vue": () => import("../forms/EpSelect.vue.js"), "../forms/EpSwitch.vue": () => import("../forms/EpSwitch.vue.js"), "../forms/EpTextarea.vue": () => import("../forms/EpTextarea.vue.js"), "../forms/EpToggle.vue": () => import("../forms/EpToggle.vue.js"), "../interactions/Ep360Image.vue": () => import("../interactions/Ep360Image.vue.js"), "../interactions/Ep360Video.vue": () => import("../interactions/Ep360Video.vue.js"), "../interactions/EpAccordeon.vue": () => import("../interactions/EpAccordeon.vue.js"), "../interactions/EpContentSlider.vue": () => import("../interactions/EpContentSlider.vue2.js"), "../interactions/EpDarkMode.vue": () => import("../interactions/EpDarkMode.vue2.js"), "../interactions/EpDraggable.vue": () => import("../interactions/EpDraggable.vue2.js"), "../interactions/EpHotSpot.vue": () => import("../interactions/EpHotSpot.vue2.js"), "../interactions/EpModal.vue": () => import("../interactions/EpModal.vue3.js"), "../interactions/EpQuestion.vue": () => import("../interactions/EpQuestion.vue2.js"), "../interactions/EpSummativeTable.vue": () => import("../interactions/EpSummativeTable.vue2.js"), "../interactions/EpSvgShow.vue": () => import("../interactions/EpSvgShow.vue2.js"), "../interactions/EpTabs.vue": () => import("../interactions/EpTabs.vue.js"), "../interactions/EpTooltip.vue": () => import("../interactions/EpTooltip.vue2.js"), "../medias/EpAudio.vue": () => import("../medias/EpAudio.vue2.js"), "../medias/EpCardLink.vue": () => import("../medias/EpCardLink.vue2.js"), "../medias/EpCarousel.vue": () => import("../medias/EpCarousel.vue2.js"), "../medias/EpHierarchy.vue": () => import("../medias/EpHierarchy.vue.js"), "../medias/EpIframe.vue": () => import("../medias/EpIframe.vue2.js"), "../medias/EpKatex.vue": () => import("../medias/EpKatex.vue.js"), "../medias/EpLink.vue": () => import("../medias/EpLink.vue2.js"), "../medias/EpLinkVersion.vue": () => import("../medias/EpLinkVersion.vue2.js"), "../medias/EpLottieSvg.vue": () => import("../medias/EpLottieSvg.vue2.js"), "../medias/EpSensibleImage.vue": () => import("../medias/EpSensibleImage.vue.js"), "../medias/EpSoftware.vue": () => import("../medias/EpSoftware.vue2.js"), "../medias/EpSvg.vue": () => import("../medias/EpSvg.vue2.js"), "../medias/EpTerm.vue": () => import("../medias/EpTerm.vue2.js"), "../medias/EpTimeLine.vue": () => import("../medias/EpTimeLine.vue.js"), "../medias/EpVideo.vue": () => import("../medias/EpVideo.vue2.js"), "../medias/EpVideoPanopto.vue": () => import("../medias/EpVideoPanopto.vue2.js"), "../medias/EpWordDef.vue": () => import("../medias/EpWordDef.vue2.js"), "../signages/EpAlert.vue": () => import("../signages/EpAlert.vue.js"), "../signages/EpBadge.vue": () => import("../signages/EpBadge.vue2.js"), "../signages/EpHeader.vue": () => import("../signages/EpHeader.vue2.js"), "../signages/EpNothing.vue": () => import("../signages/EpNothing.vue.js"), "../signages/EpQuote.vue": () => import("../signages/EpQuote.vue2.js"), "../signages/EpSkeleton.vue": () => import("../signages/EpSkeleton.vue.js"), "../tools/BgAudio.vue": () => import("../tools/BgAudio.vue.js"), "../tools/Details.vue": () => import("../tools/Details.vue.js"), "../tools/DisplayBox.vue": () => import("../tools/DisplayBox.vue.js"), "../tools/SvgFilter.vue": () => import("../tools/SvgFilter.vue.js"), "../tools/TextMedia.vue": () => import("../tools/TextMedia.vue.js"), "../tools/TimelineItem.vue": () => import("../tools/TimelineItem.vue.js"), "../tools/TwoColsMedia.vue": () => import("../tools/TwoColsMedia.vue.js") }), `../${componentToLoad.path}/${componentToLoad.name}.vue`, 3)
47
47
  );
48
48
  };
49
49
  const typeRess = computed(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"EpResource.vue.js","sources":["../../../src/components/educationals/EpResource.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { defineAsyncComponent, computed, toRefs } from \"vue\";\nimport { useComponent } from \"~/composables/useComponent\";\nimport type { EpResourceProps } from \"~/types/educationals/EpResource\";\n\nconst { type = \"neutral\", resource, pages } = defineProps<EpResourceProps>();\n\nconst resourceInfo = computed(() => {\n if (!resource.hasOwnProperty(\"content\")) {\n return \"EpNothing\";\n }\n //console.log(resource)\n const typeRess = Object.keys(resource.content)[0];\n const ress = Object.assign({}, resource.content[typeRess]);\n\n ress.pages = pages;\n ress.type = typeRess;\n ress.intentions = pages;\n if (typeRess === \"clip\") {\n ress.src = ress.url;\n }\n if (typeRess === \"website\") {\n ress.href = ress.url;\n ress.label = ress.title;\n }\n if (typeRess === \"book\" && pages) {\n //ress.intentions = pages\n ress.pages = null;\n }\n if (ress.version_link) {\n ress.url = ress.version_link.url;\n }\n\n return ress;\n});\n\n//get Component asyncComponent\nconst getCompontent = (name: string | undefined) => {\n const componentToLoad = useComponent(name);\n //console.log(componentToLoad)\n if (componentToLoad.name === \"EpNothing\") {\n return defineAsyncComponent(() => import(\"../signages/EpNothing.vue\"));\n }\n if (componentToLoad.name === \"EpReading\") {\n return defineAsyncComponent(() => import(`./EpReading.vue`));\n }\n return defineAsyncComponent(\n () => import(`../${componentToLoad.path}/${componentToLoad.name}.vue`)\n );\n};\n\nconst typeRess = computed(() => {\n if (resourceInfo.value.type && resourceInfo.value.type === \"website\") {\n if (type === \"base\") {\n return \"primary\";\n }\n }\n return type;\n});\n</script>\n\n<template>\n <component\n :is=\"getCompontent(resourceInfo.type)\"\n v-bind=\"{ ...resourceInfo }\"\n :mandateLevel=\"mandateLevel\"\n :intentions=\"pages\"\n :type=\"typeRess\"\n ></component>\n</template>\n"],"names":["typeRess","_createBlock","_resolveDynamicComponent","_mergeProps","mandateLevel","pages"],"mappings":"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"}
1
+ {"version":3,"file":"EpResource.vue.js","sources":["../../../src/components/educationals/EpResource.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { defineAsyncComponent, computed, toRefs } from \"vue\";\nimport { useComponent } from \"~/composables/useComponent\";\nimport type { EpResourceProps } from \"~/types/educationals/EpResource\";\n\nconst { type = \"neutral\", resource, pages } = defineProps<EpResourceProps>();\n\nconst resourceInfo = computed(() => {\n if (!resource.hasOwnProperty(\"content\")) {\n return \"EpNothing\";\n }\n //console.log(resource)\n const typeRess = Object.keys(resource.content)[0];\n const ress = Object.assign({}, resource.content[typeRess]);\n\n ress.pages = pages;\n ress.type = typeRess;\n ress.intentions = pages;\n if (typeRess === \"clip\") {\n ress.src = ress.url;\n }\n if (typeRess === \"website\") {\n ress.href = ress.url;\n ress.label = ress.title;\n }\n if (typeRess === \"book\" && pages) {\n //ress.intentions = pages\n ress.pages = null;\n }\n if (ress.version_link) {\n ress.url = ress.version_link.url;\n }\n\n return ress;\n});\n\n//get Component asyncComponent\nconst getCompontent = (name: string | undefined) => {\n const componentToLoad = useComponent(name);\n //console.log(componentToLoad)\n if (componentToLoad.name === \"EpNothing\") {\n return defineAsyncComponent(() => import(\"../signages/EpNothing.vue\"));\n }\n if (componentToLoad.name === \"EpReading\") {\n return defineAsyncComponent(() => import(`./EpReading.vue`));\n }\n return defineAsyncComponent(\n () => import(`../${componentToLoad.path}/${componentToLoad.name}.vue`)\n );\n};\n\nconst typeRess = computed(() => {\n if (resourceInfo.value.type && resourceInfo.value.type === \"website\") {\n if (type === \"base\") {\n return \"primary\";\n }\n }\n return type;\n});\n</script>\n\n<template>\n <component\n :is=\"getCompontent(resourceInfo.type)\"\n v-bind=\"{ ...resourceInfo }\"\n :mandateLevel=\"mandateLevel\"\n :intentions=\"pages\"\n :type=\"typeRess\"\n ></component>\n</template>\n"],"names":["typeRess","_createBlock","_resolveDynamicComponent","_mergeProps","mandateLevel","pages"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./EpAccordeon.vue2.js";
2
2
  /* empty css */
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
4
- const Comp = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-cd590234"]]);
4
+ const Comp = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-805c37df"]]);
5
5
  export {
6
6
  Comp as default
7
7
  };
@@ -1,6 +1,5 @@
1
1
  import { defineComponent, ref, computed, onMounted, toRefs, createElementBlock, openBlock, createElementVNode, normalizeClass, unref, createBlock, createCommentVNode, createTextVNode, toDisplayString, renderSlot } from "vue";
2
2
  import _sfc_main$1 from "../basics/EpIcon.vue.js";
3
- import useColors from "../../composables/useColors.js";
4
3
  import { typeAccordeon } from "../../types/Accordeon.js";
5
4
  const _hoisted_1 = { class: "py-3" };
6
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -28,10 +27,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
28
27
  return `flex justify-between items-center px-4 ${props.small ? "py-1" : "py-2"} cursor-pointer ${(_a = typeAccordeon[props.type]) == null ? void 0 : _a[isOutlined.value]}`;
29
28
  });
30
29
  const contentStyles = computed(() => {
31
- return `px-4 ${useColors(
32
- "bg",
33
- props.type + "light"
34
- )} dark:bg-dark dark:${useColors("border", props.type + "dark")} ${showDiv.value ? "" : "dark:border-0"}`;
30
+ return `px-4 bg dark:bg-dark dark:border ${showDiv.value ? "" : "dark:border-0"}`;
35
31
  });
36
32
  onMounted(() => {
37
33
  var content = collapsible.value;
@@ -87,7 +83,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
87
83
  createElementVNode("div", {
88
84
  ref_key: "collapsible",
89
85
  ref: collapsible,
90
- class: normalizeClass(`${contentStyles.value} content`)
86
+ class: normalizeClass(`${contentStyles.value} ep-accordeon-content`)
91
87
  }, [
92
88
  createElementVNode("div", _hoisted_1, [
93
89
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
@@ -1 +1 @@
1
- {"version":3,"file":"EpAccordeon.vue2.js","sources":["../../../src/components/interactions/EpAccordeon.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, toRefs, onMounted, computed } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport useColors from \"~/composables/useColors\";\nimport { typeAccordeon } from \"~/types/Accordeon\";\nimport type { EpAccordeonProps } from \"~/types/interactions/EpAccordeon\";\n\nconst props = withDefaults(defineProps<EpAccordeonProps>(), {\n open: false,\n type: \"base\",\n outlined: false,\n title: \"En savoir plus\",\n});\n\nconst showDiv = ref(props.open);\nconst collapsible = ref();\n\nconst isOutlined = computed(() => {\n if (props.outlined) {\n return \"outlined\";\n }\n return \"default\";\n});\n\nconst stylesHeader = computed(() => {\n return `flex justify-between items-center px-4 ${\n props.small ? \"py-1\" : \"py-2\"\n } cursor-pointer ${typeAccordeon[props.type]?.[isOutlined.value]}`;\n});\n\nconst contentStyles = computed(() => {\n return `px-4 ${useColors(\n \"bg\",\n props.type + \"light\"\n )} dark:bg-dark dark:${useColors(\"border\", props.type + \"dark\")} ${\n showDiv.value ? \"\" : \"dark:border-0\"\n }`;\n});\n\nonMounted(() => {\n var content = collapsible.value;\n if (props.open) {\n content.style.maxHeight = content.scrollHeight + \"px\";\n }\n});\n\nfunction toggleDivVisibility() {\n showDiv.value = !showDiv.value;\n var content = collapsible.value;\n if (content.style.maxHeight) {\n content.style.maxHeight = null;\n } else {\n content.style.maxHeight = content.scrollHeight + \"px\";\n }\n //add transition\n if (!content.style.transition) {\n content.style.transition = \"max-height 0.2s ease-out\";\n }\n}\n\nconst { title, icon, small } = toRefs(props);\n</script>\n\n<template>\n <div>\n <div :class=\"stylesHeader\" @click=\"toggleDivVisibility\">\n <h3 :class=\"`${small ? 'text' : 'text-lg'} flex items-center`\">\n <EpIcon\n v-if=\"icon\"\n :icon-path=\"icon\"\n size=\"28\"\n extraClass=\"mr-2\"\n ></EpIcon\n >{{ title }}\n </h3>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"1.5\"\n stroke=\"currentColor\"\n :class=\"`mx-4 my-3 h-6 w-6 transition-all duration-200 ${\n showDiv ? 'rotate-45' : ''\n }`\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M12 6v12m6-6H6\"\n />\n </svg>\n </div>\n <div ref=\"collapsible\" :class=\"`${contentStyles} content`\">\n <div class=\"py-3\">\n <slot />\n </div>\n </div>\n </div>\n</template>\n\n<style scoped>\n.content {\n max-height: 0;\n overflow: hidden;\n}\n</style>\n"],"names":["_createElementBlock","_createElementVNode","_unref","_createBlock","EpIcon","_normalizeClass","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;AAOA,UAAM,QAAQ;AAOd,UAAM,UAAU,IAAI,MAAM,IAAI;AAC9B,UAAM,cAAc,IAAA;AAEpB,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,UAAU;AAClB,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;;AAClC,aAAO,0CACL,MAAM,QAAQ,SAAS,MACzB,oBAAmB,mBAAc,MAAM,IAAI,MAAxB,mBAA4B,WAAW,MAAM;AAAA,IAClE,CAAC;AAED,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,QAAQ;AAAA,QACb;AAAA,QACA,MAAM,OAAO;AAAA,MAAA,CACd,sBAAsB,UAAU,UAAU,MAAM,OAAO,MAAM,CAAC,IAC7D,QAAQ,QAAQ,KAAK,eACvB;AAAA,IACF,CAAC;AAED,cAAU,MAAM;AACd,UAAI,UAAU,YAAY;AAC1B,UAAI,MAAM,MAAM;AACd,gBAAQ,MAAM,YAAY,QAAQ,eAAe;AAAA,MACnD;AAAA,IACF,CAAC;AAED,aAAS,sBAAsB;AAC7B,cAAQ,QAAQ,CAAC,QAAQ;AACzB,UAAI,UAAU,YAAY;AAC1B,UAAI,QAAQ,MAAM,WAAW;AAC3B,gBAAQ,MAAM,YAAY;AAAA,MAC5B,OAAO;AACL,gBAAQ,MAAM,YAAY,QAAQ,eAAe;AAAA,MACnD;AAEA,UAAI,CAAC,QAAQ,MAAM,YAAY;AAC7B,gBAAQ,MAAM,aAAa;AAAA,MAC7B;AAAA,IACF;AAEA,UAAM,EAAE,OAAO,MAAM,MAAA,IAAU,OAAO,KAAK;;0BAIzCA,mBAiCM,OAAA,MAAA;AAAA,QAhCJC,mBA0BM,OAAA;AAAA,UA1BA,sBAAO,aAAA,KAAY;AAAA,UAAG,SAAO;AAAA,QAAA;UACjCA,mBAQK,MAAA;AAAA,YARA,yBAAUC,MAAA,KAAA,IAAK,SAAA,SAAA,oBAAA;AAAA,UAAA;YAEVA,MAAA,IAAA,kBADRC,YAMCC,aAAA;AAAA;cAJE,aAAWF,MAAA,IAAA;AAAA,cACZ,MAAK;AAAA,cACL,YAAW;AAAA,YAAA;4CAETA,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;wBAEXF,mBAeM,OAAA;AAAA,YAdJ,OAAM;AAAA,YACN,MAAK;AAAA,YACL,SAAQ;AAAA,YACR,gBAAa;AAAA,YACb,QAAO;AAAA,YACN,OAAKK,eAAA,iDAA8D,QAAA,QAAO,cAAA;;YAI3EJ,mBAIE,QAAA;AAAA,cAHA,kBAAe;AAAA,cACf,mBAAgB;AAAA,cAChB,GAAE;AAAA,YAAA;;;QAIRA,mBAIM,OAAA;AAAA,mBAJG;AAAA,UAAJ,KAAI;AAAA,UAAe,yBAAU,cAAA,KAAa,UAAA;AAAA,QAAA;UAC7CA,mBAEM,OAFN,YAEM;AAAA,YADJK,WAAQ,KAAA,QAAA,WAAA,CAAA,GAAA,QAAA,IAAA;AAAA,UAAA;;;;;;"}
1
+ {"version":3,"file":"EpAccordeon.vue2.js","sources":["../../../src/components/interactions/EpAccordeon.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, toRefs, onMounted, computed } from \"vue\";\nimport EpIcon from \"~/components/basics/EpIcon.vue\";\nimport { typeAccordeon } from \"~/types/Accordeon\";\nimport type { EpAccordeonProps } from \"~/types/interactions/EpAccordeon\";\n\nconst props = withDefaults(defineProps<EpAccordeonProps>(), {\n open: false,\n type: \"base\",\n outlined: false,\n title: \"En savoir plus\",\n});\n\nconst showDiv = ref(props.open);\nconst collapsible = ref();\n\nconst isOutlined = computed(() => {\n if (props.outlined) {\n return \"outlined\";\n }\n return \"default\";\n});\n\nconst stylesHeader = computed(() => {\n return `flex justify-between items-center px-4 ${\n props.small ? \"py-1\" : \"py-2\"\n } cursor-pointer ${typeAccordeon[props.type]?.[isOutlined.value]}`;\n});\n\nconst contentStyles = computed(() => {\n //FIXME bg and border\n return `px-4 bg dark:bg-dark dark:border ${\n showDiv.value ? \"\" : \"dark:border-0\"\n }`;\n});\n\nonMounted(() => {\n var content = collapsible.value;\n if (props.open) {\n content.style.maxHeight = content.scrollHeight + \"px\";\n }\n});\n\nfunction toggleDivVisibility() {\n showDiv.value = !showDiv.value;\n var content = collapsible.value;\n if (content.style.maxHeight) {\n content.style.maxHeight = null;\n } else {\n content.style.maxHeight = content.scrollHeight + \"px\";\n }\n //add transition\n if (!content.style.transition) {\n content.style.transition = \"max-height 0.2s ease-out\";\n }\n}\n\nconst { title, icon, small } = toRefs(props);\n</script>\n\n<template>\n <div>\n <div :class=\"stylesHeader\" @click=\"toggleDivVisibility\">\n <h3 :class=\"`${small ? 'text' : 'text-lg'} flex items-center`\">\n <EpIcon\n v-if=\"icon\"\n :icon-path=\"icon\"\n size=\"28\"\n extraClass=\"mr-2\"\n ></EpIcon\n >{{ title }}\n </h3>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"1.5\"\n stroke=\"currentColor\"\n :class=\"`mx-4 my-3 h-6 w-6 transition-all duration-200 ${\n showDiv ? 'rotate-45' : ''\n }`\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M12 6v12m6-6H6\"\n />\n </svg>\n </div>\n <div ref=\"collapsible\" :class=\"`${contentStyles} ep-accordeon-content`\">\n <div class=\"py-3\">\n <slot />\n </div>\n </div>\n </div>\n</template>\n\n<style scoped>\n.ep-accordeon-content {\n max-height: 0;\n overflow: hidden;\n}\n</style>\n"],"names":["_createElementBlock","_createElementVNode","_unref","_createBlock","EpIcon","_normalizeClass","_renderSlot"],"mappings":";;;;;;;;;;;;;;;AAMA,UAAM,QAAQ;AAOd,UAAM,UAAU,IAAI,MAAM,IAAI;AAC9B,UAAM,cAAc,IAAA;AAEpB,UAAM,aAAa,SAAS,MAAM;AAChC,UAAI,MAAM,UAAU;AAClB,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;;AAClC,aAAO,0CACL,MAAM,QAAQ,SAAS,MACzB,oBAAmB,mBAAc,MAAM,IAAI,MAAxB,mBAA4B,WAAW,MAAM;AAAA,IAClE,CAAC;AAED,UAAM,gBAAgB,SAAS,MAAM;AAEnC,aAAO,oCACL,QAAQ,QAAQ,KAAK,eACvB;AAAA,IACF,CAAC;AAED,cAAU,MAAM;AACd,UAAI,UAAU,YAAY;AAC1B,UAAI,MAAM,MAAM;AACd,gBAAQ,MAAM,YAAY,QAAQ,eAAe;AAAA,MACnD;AAAA,IACF,CAAC;AAED,aAAS,sBAAsB;AAC7B,cAAQ,QAAQ,CAAC,QAAQ;AACzB,UAAI,UAAU,YAAY;AAC1B,UAAI,QAAQ,MAAM,WAAW;AAC3B,gBAAQ,MAAM,YAAY;AAAA,MAC5B,OAAO;AACL,gBAAQ,MAAM,YAAY,QAAQ,eAAe;AAAA,MACnD;AAEA,UAAI,CAAC,QAAQ,MAAM,YAAY;AAC7B,gBAAQ,MAAM,aAAa;AAAA,MAC7B;AAAA,IACF;AAEA,UAAM,EAAE,OAAO,MAAM,MAAA,IAAU,OAAO,KAAK;;0BAIzCA,mBAiCM,OAAA,MAAA;AAAA,QAhCJC,mBA0BM,OAAA;AAAA,UA1BA,sBAAO,aAAA,KAAY;AAAA,UAAG,SAAO;AAAA,QAAA;UACjCA,mBAQK,MAAA;AAAA,YARA,yBAAUC,MAAA,KAAA,IAAK,SAAA,SAAA,oBAAA;AAAA,UAAA;YAEVA,MAAA,IAAA,kBADRC,YAMCC,aAAA;AAAA;cAJE,aAAWF,MAAA,IAAA;AAAA,cACZ,MAAK;AAAA,cACL,YAAW;AAAA,YAAA;4CAETA,MAAA,KAAA,CAAK,GAAA,CAAA;AAAA,UAAA;wBAEXF,mBAeM,OAAA;AAAA,YAdJ,OAAM;AAAA,YACN,MAAK;AAAA,YACL,SAAQ;AAAA,YACR,gBAAa;AAAA,YACb,QAAO;AAAA,YACN,OAAKK,eAAA,iDAA8D,QAAA,QAAO,cAAA;;YAI3EJ,mBAIE,QAAA;AAAA,cAHA,kBAAe;AAAA,cACf,mBAAgB;AAAA,cAChB,GAAE;AAAA,YAAA;;;QAIRA,mBAIM,OAAA;AAAA,mBAJG;AAAA,UAAJ,KAAI;AAAA,UAAe,yBAAU,cAAA,KAAa,uBAAA;AAAA,QAAA;UAC7CA,mBAEM,OAFN,YAEM;AAAA,YADJK,WAAQ,KAAA,QAAA,WAAA,CAAA,GAAA,QAAA,IAAA;AAAA,UAAA;;;;;;"}