@elmethis/qwik 0.0.17 → 0.0.19

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.
@@ -9,7 +9,7 @@ const lodashEs = require("lodash-es");
9
9
  const caption$1 = "_caption_1j0ec_27";
10
10
  const divider = "_divider_1j0ec_50";
11
11
  const code$2 = "_code_1j0ec_1";
12
- const styles$r = {
12
+ const styles$s = {
13
13
  "code-block": "_code-block_1j0ec_1",
14
14
  "language-icon": "_language-icon_1j0ec_22",
15
15
  caption: caption$1,
@@ -69,7 +69,7 @@ const Typescript = qwik.component$(({ size = 24, ...props }) => {
69
69
  });
70
70
  });
71
71
  const path = "_path_1ccs2_1";
72
- const styles$q = {
72
+ const styles$r = {
73
73
  path
74
74
  };
75
75
  const Bash = qwik.component$(({ size = 24, ...props }) => {
@@ -85,7 +85,7 @@ const Bash = qwik.component$(({ size = 24, ...props }) => {
85
85
  d: "M4.24 4.24h119.53v119.53H4.24z"
86
86
  }),
87
87
  /* @__PURE__ */ jsxRuntime.jsx("path", {
88
- class: styles$q.path,
88
+ class: styles$r.path,
89
89
  d: "M109.01 28.64L71.28 6.24c-2.25-1.33-4.77-2-7.28-2s-5.03.67-7.28 2.01l-37.74 22.4c-4.5 2.67-7.28 7.61-7.28 12.96v44.8c0 5.35 2.77 10.29 7.28 12.96l37.73 22.4c2.25 1.34 4.76 2 7.28 2c2.51 0 5.03-.67 7.28-2l37.74-22.4c4.5-2.67 7.28-7.62 7.28-12.96V41.6c0-5.34-2.77-10.29-7.28-12.96M79.79 98.59l.06 3.22c0 .39-.25.83-.55.99l-1.91 1.1c-.3.15-.56-.03-.56-.42l-.03-3.17c-1.63.68-3.29.84-4.34.42c-.2-.08-.29-.37-.21-.71l.69-2.91c.06-.23.18-.46.34-.6c.06-.06.12-.1.18-.13c.11-.06.22-.07.31-.03c1.14.38 2.59.2 3.99-.5c1.78-.9 2.97-2.72 2.95-4.52c-.02-1.64-.9-2.31-3.05-2.33c-2.74.01-5.3-.53-5.34-4.57c-.03-3.32 1.69-6.78 4.43-8.96l-.03-3.25c0-.4.24-.84.55-1l1.85-1.18c.3-.15.56.04.56.43l.03 3.25c1.36-.54 2.54-.69 3.61-.44c.23.06.34.38.24.75l-.72 2.88c-.06.22-.18.44-.33.58a.8.8 0 0 1-.19.14c-.1.05-.19.06-.28.05c-.49-.11-1.65-.36-3.48.56c-1.92.97-2.59 2.64-2.58 3.88c.02 1.48.77 1.93 3.39 1.97c3.49.06 4.99 1.58 5.03 5.09c.05 3.44-1.79 7.15-4.61 9.41m26.34-60.5l-35.7 22.05c-4.45 2.6-7.73 5.52-7.74 10.89v43.99c0 3.21 1.3 5.29 3.29 5.9c-.65.11-1.32.19-1.98.19c-2.09 0-4.15-.57-5.96-1.64l-37.73-22.4c-3.69-2.19-5.98-6.28-5.98-10.67V41.6c0-4.39 2.29-8.48 5.98-10.67l37.74-22.4c1.81-1.07 3.87-1.64 5.96-1.64s4.15.57 5.96 1.64l37.74 22.4c3.11 1.85 5.21 5.04 5.8 8.63c-1.27-2.67-4.09-3.39-7.38-1.47"
90
90
  }),
91
91
  /* @__PURE__ */ jsxRuntime.jsx("path", {
@@ -525,13 +525,13 @@ const C = qwik.component$(({ size = 24, ...props }) => {
525
525
  ]
526
526
  });
527
527
  });
528
- const icon$2 = "_icon_1gvln_1";
529
- const styles$p = {
530
- icon: icon$2
528
+ const icon$3 = "_icon_1gvln_1";
529
+ const styles$q = {
530
+ icon: icon$3
531
531
  };
532
532
  const ElmMdiIcon = qwik.component$(({ d, size = "1em", color, lightColor, darkColor }) => {
533
533
  return /* @__PURE__ */ jsxRuntime.jsx("svg", {
534
- class: styles$p.icon,
534
+ class: styles$q.icon,
535
535
  style: {
536
536
  "--color": lightColor ?? color,
537
537
  "--dark-color": darkColor ?? color
@@ -640,7 +640,7 @@ const text$3 = "_text_1gswr_1";
640
640
  const code$1 = "_code_1gswr_12";
641
641
  const kbd = "_kbd_1gswr_21";
642
642
  const link$1 = "_link_1gswr_47";
643
- const styles$o = {
643
+ const styles$p = {
644
644
  text: text$3,
645
645
  code: code$1,
646
646
  kbd,
@@ -650,17 +650,17 @@ const text$2 = "_text_zryur_1";
650
650
  const textStyles = {
651
651
  text: text$2
652
652
  };
653
- const icon$1 = "_icon_19g82_1";
654
- const styles$n = {
655
- icon: icon$1
653
+ const icon$2 = "_icon_19g82_1";
654
+ const styles$o = {
655
+ icon: icon$2
656
656
  };
657
657
  const ElmInlineIcon = qwik.component$(({ src, alt }) => {
658
658
  return /* @__PURE__ */ jsxRuntime.jsx("span", {
659
- class: styles$n.icon,
659
+ class: styles$o.icon,
660
660
  children: /* @__PURE__ */ jsxRuntime.jsx("img", {
661
661
  src,
662
662
  alt,
663
- class: styles$n.icon
663
+ class: styles$o.icon
664
664
  })
665
665
  });
666
666
  });
@@ -671,7 +671,7 @@ const ElmInlineText = qwik.component$((props) => {
671
671
  }) : /* @__PURE__ */ jsxRuntime.jsx(qwik.Slot, {});
672
672
  if (props.kbd) {
673
673
  vnode = /* @__PURE__ */ jsxRuntime.jsx("kbd", {
674
- class: styles$o.kbd,
674
+ class: styles$p.kbd,
675
675
  children: vnode
676
676
  });
677
677
  }
@@ -697,13 +697,13 @@ const ElmInlineText = qwik.component$((props) => {
697
697
  }
698
698
  if (code2) {
699
699
  vnode = /* @__PURE__ */ jsxRuntime.jsx("code", {
700
- class: styles$o.code,
700
+ class: styles$p.code,
701
701
  children: vnode
702
702
  });
703
703
  }
704
704
  if (props.ruby) {
705
705
  vnode = /* @__PURE__ */ jsxRuntime.jsxs("ruby", {
706
- class: styles$o.text,
706
+ class: styles$p.text,
707
707
  children: [
708
708
  /* @__PURE__ */ jsxRuntime.jsx("span", {
709
709
  children: vnode
@@ -716,7 +716,7 @@ const ElmInlineText = qwik.component$((props) => {
716
716
  }
717
717
  const wrappedVnode = /* @__PURE__ */ jsxRuntime.jsx("span", {
718
718
  class: [
719
- styles$o.text,
719
+ styles$p.text,
720
720
  textStyles.text
721
721
  ],
722
722
  style: {
@@ -728,7 +728,7 @@ const ElmInlineText = qwik.component$((props) => {
728
728
  });
729
729
  if (props.href) {
730
730
  return /* @__PURE__ */ jsxRuntime.jsxs("a", {
731
- class: styles$o.link,
731
+ class: styles$p.link,
732
732
  href: props.href,
733
733
  style: {
734
734
  "--font-size": size
@@ -746,7 +746,7 @@ const ElmInlineText = qwik.component$((props) => {
746
746
  return wrappedVnode;
747
747
  });
748
748
  const code = "_code_1sw1e_1";
749
- const styles$m = {
749
+ const styles$n = {
750
750
  code
751
751
  };
752
752
  const ElmShikiHighlighter = qwik.component$(({ code: code2, language = "txt" }) => {
@@ -771,7 +771,7 @@ const ElmShikiHighlighter = qwik.component$(({ code: code2, language = "txt" })
771
771
  }
772
772
  });
773
773
  return /* @__PURE__ */ jsxRuntime.jsx("pre", {
774
- class: styles$m.code,
774
+ class: styles$n.code,
775
775
  dangerouslySetInnerHTML: rawHtml.value
776
776
  });
777
777
  });
@@ -790,19 +790,19 @@ const ElmCodeBlock = qwik.component$(({ code: code2, language = "txt", caption:
790
790
  }
791
791
  });
792
792
  return /* @__PURE__ */ jsxRuntime.jsxs("figure", {
793
- class: styles$r["code-block"],
793
+ class: styles$s["code-block"],
794
794
  style: {
795
795
  margin
796
796
  },
797
797
  children: [
798
798
  /* @__PURE__ */ jsxRuntime.jsx("span", {
799
- class: styles$r["language-icon"],
799
+ class: styles$s["language-icon"],
800
800
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmLanguageIcon, {
801
801
  language
802
802
  })
803
803
  }),
804
804
  /* @__PURE__ */ jsxRuntime.jsx("span", {
805
- class: styles$r.caption,
805
+ class: styles$s.caption,
806
806
  children: /* @__PURE__ */ jsxRuntime.jsxs(ElmInlineText, {
807
807
  children: [
808
808
  caption2 || language,
@@ -811,7 +811,7 @@ const ElmCodeBlock = qwik.component$(({ code: code2, language = "txt", caption:
811
811
  })
812
812
  }),
813
813
  /* @__PURE__ */ jsxRuntime.jsx("div", {
814
- class: styles$r["copy-icon"],
814
+ class: styles$s["copy-icon"],
815
815
  onClick$: copyToClipboard,
816
816
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
817
817
  size: "1.25rem",
@@ -820,10 +820,10 @@ const ElmCodeBlock = qwik.component$(({ code: code2, language = "txt", caption:
820
820
  })
821
821
  }),
822
822
  /* @__PURE__ */ jsxRuntime.jsx("hr", {
823
- class: styles$r.divider
823
+ class: styles$s.divider
824
824
  }),
825
825
  /* @__PURE__ */ jsxRuntime.jsx("div", {
826
- class: styles$r.code,
826
+ class: styles$s.code,
827
827
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmShikiHighlighter, {
828
828
  code: code2,
829
829
  language
@@ -843,7 +843,7 @@ const ElmKatex = qwik.component$(({ expression, block = false }) => {
843
843
  });
844
844
  });
845
845
  const parallax = "_parallax_1kb0k_1";
846
- const styles$l = {
846
+ const styles$m = {
847
847
  "parallax-watcher": "_parallax-watcher_1kb0k_1",
848
848
  parallax
849
849
  };
@@ -852,13 +852,13 @@ const ElmParallax = qwik.component$(({ images }) => {
852
852
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
853
853
  children: [
854
854
  /* @__PURE__ */ jsxRuntime.jsx("div", {
855
- class: styles$l["parallax-watcher"],
855
+ class: styles$m["parallax-watcher"],
856
856
  "window:onScroll$": () => {
857
857
  y.value = window.scrollY;
858
858
  }
859
859
  }),
860
860
  images.map((image2, index) => /* @__PURE__ */ jsxRuntime.jsx("div", {
861
- class: styles$l.parallax,
861
+ class: styles$m.parallax,
862
862
  style: {
863
863
  backgroundImage: `url(${image2})`,
864
864
  transform: `scale(1.2) translateY(${y.value / (1e3 * (index + 1))}%)`,
@@ -872,7 +872,7 @@ const toggle = "_toggle_1nxqa_1";
872
872
  const summary = "_summary_1nxqa_14";
873
873
  const content$2 = "_content_1nxqa_60";
874
874
  const footer = "_footer_1nxqa_80";
875
- const styles$k = {
875
+ const styles$l = {
876
876
  toggle,
877
877
  "toggle-closed": "_toggle-closed_1nxqa_7",
878
878
  "toggle-open": "_toggle-open_1nxqa_10",
@@ -900,29 +900,29 @@ const ElmToggle = qwik.component$(({ summary: summary2 }) => {
900
900
  });
901
901
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
902
902
  class: [
903
- styles$k.toggle,
903
+ styles$l.toggle,
904
904
  {
905
- [styles$k["toggle-open"]]: isOpen.value,
906
- [styles$k["toggle-closed"]]: !isOpen.value
905
+ [styles$l["toggle-open"]]: isOpen.value,
906
+ [styles$l["toggle-closed"]]: !isOpen.value
907
907
  }
908
908
  ],
909
909
  children: [
910
910
  /* @__PURE__ */ jsxRuntime.jsxs("div", {
911
911
  class: [
912
- styles$k.summary,
912
+ styles$l.summary,
913
913
  {
914
- [styles$k["summary-open"]]: isOpen.value,
915
- [styles$k["summary-closed"]]: !isOpen.value
914
+ [styles$l["summary-open"]]: isOpen.value,
915
+ [styles$l["summary-closed"]]: !isOpen.value
916
916
  }
917
917
  ],
918
918
  onClick$: toggle2,
919
919
  children: [
920
920
  /* @__PURE__ */ jsxRuntime.jsx("span", {
921
921
  class: [
922
- styles$k["chevron-icon"],
922
+ styles$l["chevron-icon"],
923
923
  {
924
- [styles$k["chevron-icon-open"]]: isOpen.value,
925
- [styles$k["chevron-icon-closed"]]: !isOpen.value
924
+ [styles$l["chevron-icon-open"]]: isOpen.value,
925
+ [styles$l["chevron-icon-closed"]]: !isOpen.value
926
926
  }
927
927
  ],
928
928
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
@@ -930,17 +930,17 @@ const ElmToggle = qwik.component$(({ summary: summary2 }) => {
930
930
  })
931
931
  }),
932
932
  /* @__PURE__ */ jsxRuntime.jsx("span", {
933
- class: styles$k["summary-text"],
933
+ class: styles$l["summary-text"],
934
934
  children: summary2 ? summary2 : /* @__PURE__ */ jsxRuntime.jsx(qwik.Slot, {
935
935
  name: "summary"
936
936
  })
937
937
  }),
938
938
  /* @__PURE__ */ jsxRuntime.jsx("span", {
939
939
  class: [
940
- styles$k["plus-icon"],
940
+ styles$l["plus-icon"],
941
941
  {
942
- [styles$k["plus-icon-open"]]: isOpen.value,
943
- [styles$k["plus-icon-closed"]]: !isOpen.value
942
+ [styles$l["plus-icon-open"]]: isOpen.value,
943
+ [styles$l["plus-icon-closed"]]: !isOpen.value
944
944
  }
945
945
  ],
946
946
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
@@ -953,30 +953,30 @@ const ElmToggle = qwik.component$(({ summary: summary2 }) => {
953
953
  }),
954
954
  /* @__PURE__ */ jsxRuntime.jsx("div", {
955
955
  class: [
956
- styles$k.content,
956
+ styles$l.content,
957
957
  {
958
- [styles$k["content-open"]]: isOpen.value,
959
- [styles$k["content-closed"]]: !isOpen.value
958
+ [styles$l["content-open"]]: isOpen.value,
959
+ [styles$l["content-closed"]]: !isOpen.value
960
960
  }
961
961
  ],
962
962
  children: /* @__PURE__ */ jsxRuntime.jsx(qwik.Slot, {})
963
963
  }),
964
964
  /* @__PURE__ */ jsxRuntime.jsxs("div", {
965
- class: styles$k.footer,
965
+ class: styles$l.footer,
966
966
  onClick$: toggle2,
967
967
  children: [
968
968
  /* @__PURE__ */ jsxRuntime.jsx("span", {
969
- class: styles$k["footer-chevron-icon"],
969
+ class: styles$l["footer-chevron-icon"],
970
970
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
971
971
  d: js.mdiChevronRight,
972
972
  color: "gray"
973
973
  })
974
974
  }),
975
975
  /* @__PURE__ */ jsxRuntime.jsx("hr", {
976
- class: styles$k["footer-line"]
976
+ class: styles$l["footer-line"]
977
977
  }),
978
978
  /* @__PURE__ */ jsxRuntime.jsx("span", {
979
- class: styles$k["footer-cross-icon"],
979
+ class: styles$l["footer-cross-icon"],
980
980
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
981
981
  d: js.mdiPlus,
982
982
  color: "#c56565"
@@ -986,17 +986,17 @@ const ElmToggle = qwik.component$(({ summary: summary2 }) => {
986
986
  children: "CLOSE"
987
987
  }),
988
988
  /* @__PURE__ */ jsxRuntime.jsx("span", {
989
- class: styles$k["footer-cross-icon"],
989
+ class: styles$l["footer-cross-icon"],
990
990
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
991
991
  d: js.mdiPlus,
992
992
  color: "#c56565"
993
993
  })
994
994
  }),
995
995
  /* @__PURE__ */ jsxRuntime.jsx("hr", {
996
- class: styles$k["footer-line"]
996
+ class: styles$l["footer-line"]
997
997
  }),
998
998
  /* @__PURE__ */ jsxRuntime.jsx("span", {
999
- class: styles$k["footer-chevron-icon"],
999
+ class: styles$l["footer-chevron-icon"],
1000
1000
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
1001
1001
  d: js.mdiChevronRight,
1002
1002
  color: "gray"
@@ -1007,50 +1007,50 @@ const ElmToggle = qwik.component$(({ summary: summary2 }) => {
1007
1007
  ]
1008
1008
  });
1009
1009
  });
1010
- const styles$j = {
1010
+ const styles$k = {
1011
1011
  "block-fallback": "_block-fallback_rt986_1"
1012
1012
  };
1013
1013
  const wrapper$1 = "_wrapper_1yktj_12";
1014
1014
  const dot = "_dot_1yktj_22";
1015
- const styles$i = {
1015
+ const styles$j = {
1016
1016
  wrapper: wrapper$1,
1017
1017
  dot
1018
1018
  };
1019
1019
  const ElmDotLoadingIcon = qwik.component$(({ size = "4em", color = "#606875" }) => {
1020
1020
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
1021
- class: styles$i.wrapper,
1021
+ class: styles$j.wrapper,
1022
1022
  style: {
1023
1023
  "--size": size,
1024
1024
  "--color": color
1025
1025
  },
1026
1026
  children: [
1027
1027
  /* @__PURE__ */ jsxRuntime.jsx("div", {
1028
- class: styles$i.dot,
1028
+ class: styles$j.dot,
1029
1029
  "aria-hidden": "true"
1030
1030
  }),
1031
1031
  /* @__PURE__ */ jsxRuntime.jsx("div", {
1032
- class: styles$i.dot,
1032
+ class: styles$j.dot,
1033
1033
  "aria-hidden": "true"
1034
1034
  }),
1035
1035
  /* @__PURE__ */ jsxRuntime.jsx("div", {
1036
- class: styles$i.dot,
1036
+ class: styles$j.dot,
1037
1037
  "aria-hidden": "true"
1038
1038
  })
1039
1039
  ]
1040
1040
  });
1041
1041
  });
1042
- const styles$h = {
1042
+ const styles$i = {
1043
1043
  "rectangle-wave": "_rectangle-wave_hej9g_17"
1044
1044
  };
1045
1045
  const ElmRectangleWave = qwik.component$(() => {
1046
1046
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
1047
1047
  "aria-hidden": "true",
1048
- class: styles$h["rectangle-wave"]
1048
+ class: styles$i["rectangle-wave"]
1049
1049
  });
1050
1050
  });
1051
1051
  const ElmBlockFallback = qwik.component$(({ height = "16rem" }) => {
1052
1052
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
1053
- class: styles$j["block-fallback"],
1053
+ class: styles$k["block-fallback"],
1054
1054
  style: {
1055
1055
  "--height": height
1056
1056
  },
@@ -1060,15 +1060,522 @@ const ElmBlockFallback = qwik.component$(({ height = "16rem" }) => {
1060
1060
  ]
1061
1061
  });
1062
1062
  });
1063
- const image$1 = "_image_zq5gl_11";
1064
- const fallback = "_fallback_zq5gl_31";
1063
+ const LOCAL_STORAGE_KEY = "elmethis-theme";
1064
+ function useElmethisTheme() {
1065
+ const isDarkTheme = qwik.useSignal(false);
1066
+ const toggleTheme = qwik.$(() => {
1067
+ isDarkTheme.value = !isDarkTheme.value;
1068
+ if (typeof document !== "undefined") {
1069
+ const theme = isDarkTheme.value ? "dark" : "light";
1070
+ document.documentElement.setAttribute("data-theme", theme);
1071
+ const body2 = document.querySelector("body");
1072
+ if (body2 != null) {
1073
+ body2.style.colorScheme = theme;
1074
+ }
1075
+ if (typeof localStorage !== "undefined") {
1076
+ localStorage.setItem(LOCAL_STORAGE_KEY, theme);
1077
+ }
1078
+ }
1079
+ });
1080
+ qwik.useOnDocument("storage", qwik.$(() => {
1081
+ const localStorageTheme = localStorage.getItem(LOCAL_STORAGE_KEY);
1082
+ if (localStorageTheme != null) {
1083
+ isDarkTheme.value = localStorageTheme === "dark";
1084
+ }
1085
+ }));
1086
+ qwik.useVisibleTask$(() => {
1087
+ const currentTheme = document.documentElement.getAttribute("data-theme");
1088
+ if (currentTheme != null) {
1089
+ isDarkTheme.value = currentTheme === "dark";
1090
+ } else {
1091
+ const localStorageTheme = localStorage.getItem(LOCAL_STORAGE_KEY);
1092
+ if (localStorageTheme != null) {
1093
+ isDarkTheme.value = localStorageTheme === "dark";
1094
+ }
1095
+ }
1096
+ }, {
1097
+ strategy: "document-ready"
1098
+ });
1099
+ return {
1100
+ isDarkTheme,
1101
+ toggleTheme
1102
+ };
1103
+ }
1104
+ const icon$1 = "_icon_1husg_1";
1105
+ const styles$h = {
1106
+ icon: icon$1
1107
+ };
1108
+ const ElmToggleTheme = qwik.component$(({ size = "2rem" }) => {
1109
+ const { isDarkTheme, toggleTheme } = useElmethisTheme();
1110
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {
1111
+ children: !isDarkTheme.value ? /* @__PURE__ */ jsxRuntime.jsxs("svg", {
1112
+ xmlns: "http://www.w3.org/2000/svg",
1113
+ width: size,
1114
+ height: size,
1115
+ viewBox: "0 0 24 24",
1116
+ class: styles$h.icon,
1117
+ onClick$: toggleTheme,
1118
+ children: [
1119
+ /* @__PURE__ */ jsxRuntime.jsxs("g", {
1120
+ fill: "none",
1121
+ stroke: "currentColor",
1122
+ "stroke-linecap": "round",
1123
+ "stroke-linejoin": "round",
1124
+ "stroke-width": "2",
1125
+ children: [
1126
+ /* @__PURE__ */ jsxRuntime.jsxs("path", {
1127
+ "stroke-dasharray": "2",
1128
+ "stroke-dashoffset": "2",
1129
+ d: "M12 19v1M19 12h1M12 5v-1M5 12h-1",
1130
+ children: [
1131
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1132
+ fill: "freeze",
1133
+ attributeName: "d",
1134
+ begin: "1.2s",
1135
+ dur: "0.2s",
1136
+ values: "M12 19v1M19 12h1M12 5v-1M5 12h-1;M12 21v1M21 12h1M12 3v-1M3 12h-1"
1137
+ }),
1138
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1139
+ fill: "freeze",
1140
+ attributeName: "stroke-dashoffset",
1141
+ begin: "1.2s",
1142
+ dur: "0.2s",
1143
+ values: "2;0"
1144
+ })
1145
+ ]
1146
+ }),
1147
+ /* @__PURE__ */ jsxRuntime.jsxs("path", {
1148
+ "stroke-dasharray": "2",
1149
+ "stroke-dashoffset": "2",
1150
+ d: "M17 17l0.5 0.5M17 7l0.5 -0.5M7 7l-0.5 -0.5M7 17l-0.5 0.5",
1151
+ children: [
1152
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1153
+ fill: "freeze",
1154
+ attributeName: "d",
1155
+ begin: "1.4s",
1156
+ dur: "0.2s",
1157
+ values: "M17 17l0.5 0.5M17 7l0.5 -0.5M7 7l-0.5 -0.5M7 17l-0.5 0.5;M18.5 18.5l0.5 0.5M18.5 5.5l0.5 -0.5M5.5 5.5l-0.5 -0.5M5.5 18.5l-0.5 0.5"
1158
+ }),
1159
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1160
+ fill: "freeze",
1161
+ attributeName: "stroke-dashoffset",
1162
+ begin: "1.4s",
1163
+ dur: "0.2s",
1164
+ values: "2;0"
1165
+ })
1166
+ ]
1167
+ }),
1168
+ /* @__PURE__ */ jsxRuntime.jsx("animateTransform", {
1169
+ attributeName: "transform",
1170
+ dur: "30s",
1171
+ repeatCount: "indefinite",
1172
+ type: "rotate",
1173
+ values: "0 12 12;360 12 12"
1174
+ })
1175
+ ]
1176
+ }),
1177
+ /* @__PURE__ */ jsxRuntime.jsxs("g", {
1178
+ fill: "currentColor",
1179
+ children: [
1180
+ /* @__PURE__ */ jsxRuntime.jsx("path", {
1181
+ d: "M15.22 6.03L17.75 4.09L14.56 4L13.5 1L12.44 4L9.25 4.09L11.78 6.03L10.87 9.09L13.5 7.28L16.13 9.09L15.22 6.03Z",
1182
+ children: /* @__PURE__ */ jsxRuntime.jsx("animate", {
1183
+ fill: "freeze",
1184
+ attributeName: "fill-opacity",
1185
+ dur: "0.4s",
1186
+ values: "1;0"
1187
+ })
1188
+ }),
1189
+ /* @__PURE__ */ jsxRuntime.jsx("path", {
1190
+ d: "M19.61 12.25L21.25 11L19.19 10.95L18.5 9L17.81 10.95L15.75 11L17.39 12.25L16.8 14.23L18.5 13.06L20.2 14.23L19.61 12.25Z",
1191
+ children: /* @__PURE__ */ jsxRuntime.jsx("animate", {
1192
+ fill: "freeze",
1193
+ attributeName: "fill-opacity",
1194
+ begin: "0.2s",
1195
+ dur: "0.4s",
1196
+ values: "1;0"
1197
+ })
1198
+ })
1199
+ ]
1200
+ }),
1201
+ /* @__PURE__ */ jsxRuntime.jsx("path", {
1202
+ fill: "none",
1203
+ stroke: "currentColor",
1204
+ "stroke-linecap": "round",
1205
+ "stroke-linejoin": "round",
1206
+ "stroke-width": "2",
1207
+ d: "M7 6 C7 12.08 11.92 17 18 17 C18.53 17 19.05 16.96 19.56 16.89 C17.95 19.36 15.17 21 12 21 C7.03 21 3 16.97 3 12 C3 8.83 4.64 6.05 7.11 4.44 C7.04 4.95 7 5.47 7 6 Z",
1208
+ children: /* @__PURE__ */ jsxRuntime.jsx("set", {
1209
+ fill: "freeze",
1210
+ attributeName: "opacity",
1211
+ begin: "0.6s",
1212
+ to: "0"
1213
+ })
1214
+ }),
1215
+ /* @__PURE__ */ jsxRuntime.jsxs("mask", {
1216
+ id: "lineMdMoonToSunnyOutlineLoopTransition0",
1217
+ children: [
1218
+ /* @__PURE__ */ jsxRuntime.jsx("circle", {
1219
+ cx: "12",
1220
+ cy: "12",
1221
+ r: "12",
1222
+ fill: "#fff"
1223
+ }),
1224
+ /* @__PURE__ */ jsxRuntime.jsx("circle", {
1225
+ cx: "12",
1226
+ cy: "12",
1227
+ r: "8",
1228
+ children: /* @__PURE__ */ jsxRuntime.jsx("animate", {
1229
+ fill: "freeze",
1230
+ attributeName: "r",
1231
+ begin: "0.6s",
1232
+ dur: "0.4s",
1233
+ values: "8;4"
1234
+ })
1235
+ }),
1236
+ /* @__PURE__ */ jsxRuntime.jsxs("circle", {
1237
+ cx: "18",
1238
+ cy: "6",
1239
+ r: "12",
1240
+ fill: "#fff",
1241
+ children: [
1242
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1243
+ fill: "freeze",
1244
+ attributeName: "cx",
1245
+ begin: "0.6s",
1246
+ dur: "0.4s",
1247
+ values: "18;22"
1248
+ }),
1249
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1250
+ fill: "freeze",
1251
+ attributeName: "cy",
1252
+ begin: "0.6s",
1253
+ dur: "0.4s",
1254
+ values: "6;2"
1255
+ }),
1256
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1257
+ fill: "freeze",
1258
+ attributeName: "r",
1259
+ begin: "0.6s",
1260
+ dur: "0.4s",
1261
+ values: "12;3"
1262
+ })
1263
+ ]
1264
+ }),
1265
+ /* @__PURE__ */ jsxRuntime.jsxs("circle", {
1266
+ cx: "18",
1267
+ cy: "6",
1268
+ r: "10",
1269
+ children: [
1270
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1271
+ fill: "freeze",
1272
+ attributeName: "cx",
1273
+ begin: "0.6s",
1274
+ dur: "0.4s",
1275
+ values: "18;22"
1276
+ }),
1277
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1278
+ fill: "freeze",
1279
+ attributeName: "cy",
1280
+ begin: "0.6s",
1281
+ dur: "0.4s",
1282
+ values: "6;2"
1283
+ }),
1284
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1285
+ fill: "freeze",
1286
+ attributeName: "r",
1287
+ begin: "0.6s",
1288
+ dur: "0.4s",
1289
+ values: "10;1"
1290
+ })
1291
+ ]
1292
+ })
1293
+ ]
1294
+ }),
1295
+ /* @__PURE__ */ jsxRuntime.jsxs("circle", {
1296
+ cx: "12",
1297
+ cy: "12",
1298
+ r: "10",
1299
+ mask: "url(#lineMdMoonToSunnyOutlineLoopTransition0)",
1300
+ opacity: "0",
1301
+ fill: "currentColor",
1302
+ children: [
1303
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1304
+ fill: "freeze",
1305
+ attributeName: "r",
1306
+ begin: "0.6s",
1307
+ dur: "0.4s",
1308
+ values: "10;6"
1309
+ }),
1310
+ /* @__PURE__ */ jsxRuntime.jsx("set", {
1311
+ fill: "freeze",
1312
+ attributeName: "opacity",
1313
+ begin: "0.6s",
1314
+ to: "1"
1315
+ })
1316
+ ]
1317
+ })
1318
+ ]
1319
+ }) : /* @__PURE__ */ jsxRuntime.jsxs("svg", {
1320
+ xmlns: "http://www.w3.org/2000/svg",
1321
+ width: size,
1322
+ height: size,
1323
+ viewBox: "0 0 24 24",
1324
+ class: styles$h.icon,
1325
+ onClick$: toggleTheme,
1326
+ children: [
1327
+ /* @__PURE__ */ jsxRuntime.jsxs("path", {
1328
+ "fill-opacity": "0",
1329
+ d: "M15.22 6.03l2.53-1.94L14.56 4L13.5 1l-1.06 3l-3.19.09l2.53 1.94l-.91 3.06l2.63-1.81l2.63 1.81z",
1330
+ fill: "currentColor",
1331
+ children: [
1332
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1333
+ id: "lineMdSunnyOutlineToMoonLoopTransition0",
1334
+ fill: "freeze",
1335
+ attributeName: "fill-opacity",
1336
+ begin: "0.6s;lineMdSunnyOutlineToMoonLoopTransition0.begin+6s",
1337
+ dur: "0.4s",
1338
+ values: "0;1"
1339
+ }),
1340
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1341
+ fill: "freeze",
1342
+ attributeName: "fill-opacity",
1343
+ begin: "lineMdSunnyOutlineToMoonLoopTransition0.begin+2.2s",
1344
+ dur: "0.4s",
1345
+ values: "1;0"
1346
+ })
1347
+ ]
1348
+ }),
1349
+ /* @__PURE__ */ jsxRuntime.jsxs("path", {
1350
+ "fill-opacity": "0",
1351
+ d: "M13.61 5.25L15.25 4l-2.06-.05L12.5 2l-.69 1.95L9.75 4l1.64 1.25l-.59 1.98l1.7-1.17l1.7 1.17z",
1352
+ fill: "currentColor",
1353
+ children: [
1354
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1355
+ fill: "freeze",
1356
+ attributeName: "fill-opacity",
1357
+ begin: "lineMdSunnyOutlineToMoonLoopTransition0.begin+3s",
1358
+ dur: "0.4s",
1359
+ values: "0;1"
1360
+ }),
1361
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1362
+ fill: "freeze",
1363
+ attributeName: "fill-opacity",
1364
+ begin: "lineMdSunnyOutlineToMoonLoopTransition0.begin+5.2s",
1365
+ dur: "0.4s",
1366
+ values: "1;0"
1367
+ })
1368
+ ]
1369
+ }),
1370
+ /* @__PURE__ */ jsxRuntime.jsxs("path", {
1371
+ "fill-opacity": "0",
1372
+ d: "M19.61 12.25L21.25 11l-2.06-.05L18.5 9l-.69 1.95l-2.06.05l1.64 1.25l-.59 1.98l1.7-1.17l1.7 1.17z",
1373
+ fill: "currentColor",
1374
+ children: [
1375
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1376
+ fill: "freeze",
1377
+ attributeName: "fill-opacity",
1378
+ begin: "lineMdSunnyOutlineToMoonLoopTransition0.begin+0.4s",
1379
+ dur: "0.4s",
1380
+ values: "0;1"
1381
+ }),
1382
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1383
+ fill: "freeze",
1384
+ attributeName: "fill-opacity",
1385
+ begin: "lineMdSunnyOutlineToMoonLoopTransition0.begin+2.8s",
1386
+ dur: "0.4s",
1387
+ values: "1;0"
1388
+ })
1389
+ ]
1390
+ }),
1391
+ /* @__PURE__ */ jsxRuntime.jsxs("path", {
1392
+ "fill-opacity": "0",
1393
+ d: "M20.828 9.731l1.876-1.439l-2.366-.067L19.552 6l-.786 2.225l-2.366.067l1.876 1.439L17.601 12l1.951-1.342L21.503 12z",
1394
+ fill: "currentColor",
1395
+ children: [
1396
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1397
+ fill: "freeze",
1398
+ attributeName: "fill-opacity",
1399
+ begin: "lineMdSunnyOutlineToMoonLoopTransition0.begin+3.4s",
1400
+ dur: "0.4s",
1401
+ values: "0;1"
1402
+ }),
1403
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1404
+ fill: "freeze",
1405
+ attributeName: "fill-opacity",
1406
+ begin: "lineMdSunnyOutlineToMoonLoopTransition0.begin+5.6s",
1407
+ dur: "0.4s",
1408
+ values: "1;0"
1409
+ })
1410
+ ]
1411
+ }),
1412
+ /* @__PURE__ */ jsxRuntime.jsxs("g", {
1413
+ fill: "none",
1414
+ stroke: "currentColor",
1415
+ "stroke-linecap": "round",
1416
+ "stroke-linejoin": "round",
1417
+ "stroke-width": "2",
1418
+ children: [
1419
+ /* @__PURE__ */ jsxRuntime.jsxs("g", {
1420
+ children: [
1421
+ /* @__PURE__ */ jsxRuntime.jsx("path", {
1422
+ "stroke-dasharray": "2",
1423
+ "stroke-dashoffset": "4",
1424
+ d: "M12 21v1M21 12h1M12 3v-1M3 12h-1",
1425
+ children: /* @__PURE__ */ jsxRuntime.jsx("animate", {
1426
+ fill: "freeze",
1427
+ attributeName: "stroke-dashoffset",
1428
+ dur: "0.2s",
1429
+ values: "4;2"
1430
+ })
1431
+ }),
1432
+ /* @__PURE__ */ jsxRuntime.jsx("path", {
1433
+ "stroke-dasharray": "2",
1434
+ "stroke-dashoffset": "4",
1435
+ d: "M18.5 18.5l0.5 0.5M18.5 5.5l0.5 -0.5M5.5 5.5l-0.5 -0.5M5.5 18.5l-0.5 0.5",
1436
+ children: /* @__PURE__ */ jsxRuntime.jsx("animate", {
1437
+ fill: "freeze",
1438
+ attributeName: "stroke-dashoffset",
1439
+ begin: "0.2s",
1440
+ dur: "0.2s",
1441
+ values: "4;2"
1442
+ })
1443
+ }),
1444
+ /* @__PURE__ */ jsxRuntime.jsx("set", {
1445
+ fill: "freeze",
1446
+ attributeName: "opacity",
1447
+ begin: "0.5s",
1448
+ to: "0"
1449
+ })
1450
+ ]
1451
+ }),
1452
+ /* @__PURE__ */ jsxRuntime.jsx("path", {
1453
+ d: "M7 6 C7 12.08 11.92 17 18 17 C18.53 17 19.05 16.96 19.56 16.89 C17.95 19.36 15.17 21 12 21 C7.03 21 3 16.97 3 12 C3 8.83 4.64 6.05 7.11 4.44 C7.04 4.95 7 5.47 7 6 Z",
1454
+ opacity: "0",
1455
+ children: /* @__PURE__ */ jsxRuntime.jsx("set", {
1456
+ fill: "freeze",
1457
+ attributeName: "opacity",
1458
+ begin: "0.5s",
1459
+ to: "1"
1460
+ })
1461
+ })
1462
+ ]
1463
+ }),
1464
+ /* @__PURE__ */ jsxRuntime.jsxs("mask", {
1465
+ id: "lineMdSunnyOutlineToMoonLoopTransition1",
1466
+ children: [
1467
+ /* @__PURE__ */ jsxRuntime.jsx("circle", {
1468
+ cx: "12",
1469
+ cy: "12",
1470
+ r: "12",
1471
+ fill: "#fff"
1472
+ }),
1473
+ /* @__PURE__ */ jsxRuntime.jsx("circle", {
1474
+ cx: "12",
1475
+ cy: "12",
1476
+ r: "4",
1477
+ children: /* @__PURE__ */ jsxRuntime.jsx("animate", {
1478
+ fill: "freeze",
1479
+ attributeName: "r",
1480
+ begin: "0.1s",
1481
+ dur: "0.4s",
1482
+ values: "4;8"
1483
+ })
1484
+ }),
1485
+ /* @__PURE__ */ jsxRuntime.jsxs("circle", {
1486
+ cx: "22",
1487
+ cy: "2",
1488
+ r: "3",
1489
+ fill: "#fff",
1490
+ children: [
1491
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1492
+ fill: "freeze",
1493
+ attributeName: "cx",
1494
+ begin: "0.1s",
1495
+ dur: "0.4s",
1496
+ values: "22;18"
1497
+ }),
1498
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1499
+ fill: "freeze",
1500
+ attributeName: "cy",
1501
+ begin: "0.1s",
1502
+ dur: "0.4s",
1503
+ values: "2;6"
1504
+ }),
1505
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1506
+ fill: "freeze",
1507
+ attributeName: "r",
1508
+ begin: "0.1s",
1509
+ dur: "0.4s",
1510
+ values: "3;12"
1511
+ })
1512
+ ]
1513
+ }),
1514
+ /* @__PURE__ */ jsxRuntime.jsxs("circle", {
1515
+ cx: "22",
1516
+ cy: "2",
1517
+ r: "1",
1518
+ children: [
1519
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1520
+ fill: "freeze",
1521
+ attributeName: "cx",
1522
+ begin: "0.1s",
1523
+ dur: "0.4s",
1524
+ values: "22;18"
1525
+ }),
1526
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1527
+ fill: "freeze",
1528
+ attributeName: "cy",
1529
+ begin: "0.1s",
1530
+ dur: "0.4s",
1531
+ values: "2;6"
1532
+ }),
1533
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1534
+ fill: "freeze",
1535
+ attributeName: "r",
1536
+ begin: "0.1s",
1537
+ dur: "0.4s",
1538
+ values: "1;10"
1539
+ })
1540
+ ]
1541
+ })
1542
+ ]
1543
+ }),
1544
+ /* @__PURE__ */ jsxRuntime.jsxs("circle", {
1545
+ cx: "12",
1546
+ cy: "12",
1547
+ r: "6",
1548
+ mask: "url(#lineMdSunnyOutlineToMoonLoopTransition1)",
1549
+ fill: "currentColor",
1550
+ children: [
1551
+ /* @__PURE__ */ jsxRuntime.jsx("animate", {
1552
+ fill: "freeze",
1553
+ attributeName: "r",
1554
+ begin: "0.1s",
1555
+ dur: "0.4s",
1556
+ values: "6;10"
1557
+ }),
1558
+ /* @__PURE__ */ jsxRuntime.jsx("set", {
1559
+ fill: "freeze",
1560
+ attributeName: "opacity",
1561
+ begin: "0.5s",
1562
+ to: "0"
1563
+ })
1564
+ ]
1565
+ })
1566
+ ]
1567
+ })
1568
+ });
1569
+ });
1570
+ const image$1 = "_image_5s2ag_11";
1571
+ const fallback = "_fallback_5s2ag_33";
1065
1572
  const styles$g = {
1066
- "block-image": "_block-image_zq5gl_1",
1067
- "image-container": "_image-container_zq5gl_11",
1573
+ "block-image": "_block-image_5s2ag_1",
1574
+ "image-container": "_image-container_5s2ag_11",
1068
1575
  image: image$1,
1069
1576
  fallback,
1070
- "caption-box": "_caption-box_zq5gl_41",
1071
- "modal-container": "_modal-container_zq5gl_53"
1577
+ "caption-box": "_caption-box_5s2ag_43",
1578
+ "modal-container": "_modal-container_5s2ag_55"
1072
1579
  };
1073
1580
  const ElmBlockImage = qwik.component$(({ src, alt, caption: caption2, width, height, enableModal = true }) => {
1074
1581
  const isLoading = qwik.useSignal(true);
@@ -1077,7 +1584,7 @@ const ElmBlockImage = qwik.component$(({ src, alt, caption: caption2, width, hei
1077
1584
  isLoading.value = false;
1078
1585
  });
1079
1586
  const handleToggleModal = qwik.$(() => {
1080
- if (enableModal) {
1587
+ if (enableModal && !isLoading.value) {
1081
1588
  isShowModal.value = !isShowModal.value;
1082
1589
  }
1083
1590
  });
@@ -1090,7 +1597,8 @@ const ElmBlockImage = qwik.component$(({ src, alt, caption: caption2, width, hei
1090
1597
  onLoad$: handleImageLoad,
1091
1598
  style: {
1092
1599
  "--opacity": isLoading.value ? 0 : 1,
1093
- "--cursor": enableModal ? isShowModal.value ? "zoom-out" : "zoom-in" : "default"
1600
+ "--cursor": enableModal ? isShowModal.value ? "zoom-out" : "zoom-in" : "default",
1601
+ "--aspect-ratio": width && height ? `${width} / ${height}` : "auto"
1094
1602
  }
1095
1603
  });
1096
1604
  const Modal = /* @__PURE__ */ jsxRuntime.jsx("div", {
@@ -1960,3 +2468,4 @@ exports.ElmTableCell = ElmTableCell;
1960
2468
  exports.ElmTableHeader = ElmTableHeader;
1961
2469
  exports.ElmTableRow = ElmTableRow;
1962
2470
  exports.ElmToggle = ElmToggle;
2471
+ exports.ElmToggleTheme = ElmToggleTheme;