@elmethis/qwik 0.0.37 → 0.0.39

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.
@@ -10,7 +10,7 @@ const marked = require("marked");
10
10
  const caption$1 = "_caption_1j0ec_27";
11
11
  const divider = "_divider_1j0ec_50";
12
12
  const code$2 = "_code_1j0ec_1";
13
- const styles$B = {
13
+ const styles$C = {
14
14
  "code-block": "_code-block_1j0ec_1",
15
15
  "language-icon": "_language-icon_1j0ec_22",
16
16
  caption: caption$1,
@@ -70,7 +70,7 @@ const Typescript = qwik.component$(({ size = 24, ...props }) => {
70
70
  });
71
71
  });
72
72
  const path = "_path_1ccs2_1";
73
- const styles$A = {
73
+ const styles$B = {
74
74
  path
75
75
  };
76
76
  const Bash = qwik.component$(({ size = 24, ...props }) => {
@@ -86,7 +86,7 @@ const Bash = qwik.component$(({ size = 24, ...props }) => {
86
86
  d: "M4.24 4.24h119.53v119.53H4.24z"
87
87
  }),
88
88
  /* @__PURE__ */ jsxRuntime.jsx("path", {
89
- class: styles$A.path,
89
+ class: styles$B.path,
90
90
  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"
91
91
  }),
92
92
  /* @__PURE__ */ jsxRuntime.jsx("path", {
@@ -526,13 +526,13 @@ const C = qwik.component$(({ size = 24, ...props }) => {
526
526
  ]
527
527
  });
528
528
  });
529
- const icon$4 = "_icon_1gvln_1";
530
- const styles$z = {
531
- icon: icon$4
529
+ const icon$5 = "_icon_1gvln_1";
530
+ const styles$A = {
531
+ icon: icon$5
532
532
  };
533
533
  const ElmMdiIcon = qwik.component$(({ d, size = "1em", color, lightColor, darkColor }) => {
534
534
  return /* @__PURE__ */ jsxRuntime.jsx("svg", {
535
- class: styles$z.icon,
535
+ class: styles$A.icon,
536
536
  style: {
537
537
  "--color": lightColor ?? color,
538
538
  "--dark-color": darkColor ?? color
@@ -641,7 +641,7 @@ const text$3 = "_text_1gswr_1";
641
641
  const code$1 = "_code_1gswr_12";
642
642
  const kbd = "_kbd_1gswr_21";
643
643
  const link$1 = "_link_1gswr_47";
644
- const styles$y = {
644
+ const styles$z = {
645
645
  text: text$3,
646
646
  code: code$1,
647
647
  kbd,
@@ -651,17 +651,17 @@ const text$2 = "_text_zryur_1";
651
651
  const textStyles = {
652
652
  text: text$2
653
653
  };
654
- const icon$3 = "_icon_19g82_1";
655
- const styles$x = {
656
- icon: icon$3
654
+ const icon$4 = "_icon_1tbvt_1";
655
+ const styles$y = {
656
+ icon: icon$4
657
657
  };
658
658
  const ElmInlineIcon = qwik.component$(({ src, alt, width, height, size = 16 }) => {
659
659
  return /* @__PURE__ */ jsxRuntime.jsx("span", {
660
- class: styles$x.icon,
660
+ class: styles$y.icon,
661
661
  children: /* @__PURE__ */ jsxRuntime.jsx("img", {
662
662
  src,
663
663
  alt,
664
- class: styles$x.icon,
664
+ class: styles$y.icon,
665
665
  width: width ?? size,
666
666
  height: height ?? size
667
667
  })
@@ -674,7 +674,7 @@ const ElmInlineText = qwik.component$((props) => {
674
674
  }) : /* @__PURE__ */ jsxRuntime.jsx(qwik.Slot, {});
675
675
  if (props.kbd) {
676
676
  vnode = /* @__PURE__ */ jsxRuntime.jsx("kbd", {
677
- class: styles$y.kbd,
677
+ class: styles$z.kbd,
678
678
  children: vnode
679
679
  });
680
680
  }
@@ -700,13 +700,13 @@ const ElmInlineText = qwik.component$((props) => {
700
700
  }
701
701
  if (code2) {
702
702
  vnode = /* @__PURE__ */ jsxRuntime.jsx("code", {
703
- class: styles$y.code,
703
+ class: styles$z.code,
704
704
  children: vnode
705
705
  });
706
706
  }
707
707
  if (props.ruby) {
708
708
  vnode = /* @__PURE__ */ jsxRuntime.jsxs("ruby", {
709
- class: styles$y.text,
709
+ class: styles$z.text,
710
710
  children: [
711
711
  /* @__PURE__ */ jsxRuntime.jsx("span", {
712
712
  children: vnode
@@ -719,7 +719,7 @@ const ElmInlineText = qwik.component$((props) => {
719
719
  }
720
720
  const wrappedVnode = /* @__PURE__ */ jsxRuntime.jsx("span", {
721
721
  class: [
722
- styles$y.text,
722
+ styles$z.text,
723
723
  textStyles.text
724
724
  ],
725
725
  style: {
@@ -732,7 +732,7 @@ const ElmInlineText = qwik.component$((props) => {
732
732
  });
733
733
  if (props.href) {
734
734
  return /* @__PURE__ */ jsxRuntime.jsxs("a", {
735
- class: styles$y.link,
735
+ class: styles$z.link,
736
736
  href: props.href,
737
737
  style: {
738
738
  "--font-size": size
@@ -751,7 +751,7 @@ const ElmInlineText = qwik.component$((props) => {
751
751
  return wrappedVnode;
752
752
  });
753
753
  const code = "_code_1sw1e_1";
754
- const styles$w = {
754
+ const styles$x = {
755
755
  code
756
756
  };
757
757
  const ElmShikiHighlighter = qwik.component$(({ code: code2, language = "txt" }) => {
@@ -776,7 +776,7 @@ const ElmShikiHighlighter = qwik.component$(({ code: code2, language = "txt" })
776
776
  }
777
777
  });
778
778
  return /* @__PURE__ */ jsxRuntime.jsx("pre", {
779
- class: styles$w.code,
779
+ class: styles$x.code,
780
780
  dangerouslySetInnerHTML: rawHtml.value
781
781
  });
782
782
  });
@@ -795,17 +795,17 @@ const ElmCodeBlock = qwik.component$(({ code: code2, language = "txt", caption:
795
795
  }
796
796
  });
797
797
  return /* @__PURE__ */ jsxRuntime.jsxs("figure", {
798
- class: styles$B["code-block"],
798
+ class: styles$C["code-block"],
799
799
  style,
800
800
  children: [
801
801
  /* @__PURE__ */ jsxRuntime.jsx("span", {
802
- class: styles$B["language-icon"],
802
+ class: styles$C["language-icon"],
803
803
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmLanguageIcon, {
804
804
  language
805
805
  })
806
806
  }),
807
807
  /* @__PURE__ */ jsxRuntime.jsx("span", {
808
- class: styles$B.caption,
808
+ class: styles$C.caption,
809
809
  children: /* @__PURE__ */ jsxRuntime.jsxs(ElmInlineText, {
810
810
  children: [
811
811
  caption2 || language,
@@ -814,7 +814,7 @@ const ElmCodeBlock = qwik.component$(({ code: code2, language = "txt", caption:
814
814
  })
815
815
  }),
816
816
  /* @__PURE__ */ jsxRuntime.jsx("div", {
817
- class: styles$B["copy-icon"],
817
+ class: styles$C["copy-icon"],
818
818
  onClick$: copyToClipboard,
819
819
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
820
820
  size: "1.25rem",
@@ -823,10 +823,10 @@ const ElmCodeBlock = qwik.component$(({ code: code2, language = "txt", caption:
823
823
  })
824
824
  }),
825
825
  /* @__PURE__ */ jsxRuntime.jsx("hr", {
826
- class: styles$B.divider
826
+ class: styles$C.divider
827
827
  }),
828
828
  /* @__PURE__ */ jsxRuntime.jsx("div", {
829
- class: styles$B.code,
829
+ class: styles$C.code,
830
830
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmShikiHighlighter, {
831
831
  code: code2,
832
832
  language
@@ -846,7 +846,7 @@ const ElmKatex = qwik.component$(({ expression, block = false }) => {
846
846
  });
847
847
  });
848
848
  const parallax = "_parallax_1kb0k_1";
849
- const styles$v = {
849
+ const styles$w = {
850
850
  "parallax-watcher": "_parallax-watcher_1kb0k_1",
851
851
  parallax
852
852
  };
@@ -855,13 +855,13 @@ const ElmParallax = qwik.component$(({ images }) => {
855
855
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
856
856
  children: [
857
857
  /* @__PURE__ */ jsxRuntime.jsx("div", {
858
- class: styles$v["parallax-watcher"],
858
+ class: styles$w["parallax-watcher"],
859
859
  "window:onScroll$": () => {
860
860
  y.value = window.scrollY;
861
861
  }
862
862
  }),
863
863
  images.map((image2, index) => /* @__PURE__ */ jsxRuntime.jsx("div", {
864
- class: styles$v.parallax,
864
+ class: styles$w.parallax,
865
865
  style: {
866
866
  backgroundImage: `url(${image2})`,
867
867
  transform: `scale(1.2) translateY(${y.value / (1e3 * (index + 1))}%)`,
@@ -871,43 +871,48 @@ const ElmParallax = qwik.component$(({ images }) => {
871
871
  ]
872
872
  });
873
873
  });
874
- const tab = "_tab_1vih2_18";
875
- const active$2 = "_active_1vih2_40";
876
- const styles$u = {
877
- "elm-tabs": "_elm-tabs_1vih2_1",
878
- "tab-container": "_tab-container_1vih2_18",
874
+ const tab = "_tab_hloyu_18";
875
+ const active$2 = "_active_hloyu_40";
876
+ const styles$v = {
877
+ "elm-tabs": "_elm-tabs_hloyu_1",
878
+ "tab-container": "_tab-container_hloyu_18",
879
879
  tab,
880
880
  active: active$2,
881
- "tab-content-container": "_tab-content-container_1vih2_51",
882
- "tab-content": "_tab-content_1vih2_51"
881
+ "tab-content-container": "_tab-content-container_hloyu_51",
882
+ "tab-content": "_tab-content_hloyu_51"
883
883
  };
884
- const ElmTabs = qwik.component$(({ renderTabFunctions$, renderTabContentFunctions$ }) => {
884
+ const ElmTabs = qwik.component$(({ tabLabels, tabContents }) => {
885
885
  const selectedTabIndex = qwik.useSignal(0);
886
886
  const selectTab = qwik.$((index) => {
887
887
  selectedTabIndex.value = index;
888
888
  });
889
889
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
890
- class: styles$u["elm-tabs"],
890
+ class: styles$v["elm-tabs"],
891
891
  children: [
892
892
  /* @__PURE__ */ jsxRuntime.jsx("div", {
893
- class: styles$u["tab-container"],
894
- children: renderTabFunctions$.map((renderTabFunction$, index) => /* @__PURE__ */ jsxRuntime.jsx("div", {
893
+ class: styles$v["tab-container"],
894
+ children: tabLabels.map((tabLabel, index) => /* @__PURE__ */ jsxRuntime.jsx("div", {
895
895
  class: [
896
- styles$u["tab"],
896
+ styles$v["tab"],
897
897
  {
898
- [styles$u["active"]]: selectedTabIndex.value === index
898
+ [styles$v["active"]]: selectedTabIndex.value === index
899
899
  }
900
900
  ],
901
901
  onClick$: () => selectTab(index),
902
- children: renderTabFunction$()
902
+ children: tabLabel
903
903
  }, index))
904
904
  }),
905
905
  /* @__PURE__ */ jsxRuntime.jsx("div", {
906
- class: styles$u["tab-content-container"],
907
- children: /* @__PURE__ */ jsxRuntime.jsx("div", {
908
- class: styles$u["tab-content"],
909
- children: renderTabContentFunctions$[selectedTabIndex.value]()
910
- }, selectedTabIndex.value)
906
+ class: styles$v["tab-content-container"],
907
+ children: tabContents.map((content2, index) => /* @__PURE__ */ jsxRuntime.jsx("div", {
908
+ class: [
909
+ styles$v["tab-content"],
910
+ {
911
+ [styles$v["active"]]: selectedTabIndex.value === index
912
+ }
913
+ ],
914
+ children: content2
915
+ }, index))
911
916
  })
912
917
  ]
913
918
  });
@@ -916,7 +921,7 @@ const toggle = "_toggle_pbyu8_1";
916
921
  const summary = "_summary_pbyu8_14";
917
922
  const content$2 = "_content_pbyu8_60";
918
923
  const footer = "_footer_pbyu8_80";
919
- const styles$t = {
924
+ const styles$u = {
920
925
  toggle,
921
926
  "toggle-closed": "_toggle-closed_pbyu8_7",
922
927
  "toggle-open": "_toggle-open_pbyu8_10",
@@ -943,30 +948,30 @@ const ElmToggle = qwik.component$(({ summary: summary2, style }) => {
943
948
  });
944
949
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
945
950
  class: [
946
- styles$t.toggle,
951
+ styles$u.toggle,
947
952
  {
948
- [styles$t["toggle-open"]]: isOpen.value,
949
- [styles$t["toggle-closed"]]: !isOpen.value
953
+ [styles$u["toggle-open"]]: isOpen.value,
954
+ [styles$u["toggle-closed"]]: !isOpen.value
950
955
  }
951
956
  ],
952
957
  style,
953
958
  children: [
954
959
  /* @__PURE__ */ jsxRuntime.jsxs("div", {
955
960
  class: [
956
- styles$t.summary,
961
+ styles$u.summary,
957
962
  {
958
- [styles$t["summary-open"]]: isOpen.value,
959
- [styles$t["summary-closed"]]: !isOpen.value
963
+ [styles$u["summary-open"]]: isOpen.value,
964
+ [styles$u["summary-closed"]]: !isOpen.value
960
965
  }
961
966
  ],
962
967
  onClick$: toggle2,
963
968
  children: [
964
969
  /* @__PURE__ */ jsxRuntime.jsx("span", {
965
970
  class: [
966
- styles$t["chevron-icon"],
971
+ styles$u["chevron-icon"],
967
972
  {
968
- [styles$t["chevron-icon-open"]]: isOpen.value,
969
- [styles$t["chevron-icon-closed"]]: !isOpen.value
973
+ [styles$u["chevron-icon-open"]]: isOpen.value,
974
+ [styles$u["chevron-icon-closed"]]: !isOpen.value
970
975
  }
971
976
  ],
972
977
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
@@ -974,17 +979,17 @@ const ElmToggle = qwik.component$(({ summary: summary2, style }) => {
974
979
  })
975
980
  }),
976
981
  /* @__PURE__ */ jsxRuntime.jsx("span", {
977
- class: styles$t["summary-text"],
982
+ class: styles$u["summary-text"],
978
983
  children: summary2 ? summary2 : /* @__PURE__ */ jsxRuntime.jsx(qwik.Slot, {
979
984
  name: "summary"
980
985
  })
981
986
  }),
982
987
  /* @__PURE__ */ jsxRuntime.jsx("span", {
983
988
  class: [
984
- styles$t["plus-icon"],
989
+ styles$u["plus-icon"],
985
990
  {
986
- [styles$t["plus-icon-open"]]: isOpen.value,
987
- [styles$t["plus-icon-closed"]]: !isOpen.value
991
+ [styles$u["plus-icon-open"]]: isOpen.value,
992
+ [styles$u["plus-icon-closed"]]: !isOpen.value
988
993
  }
989
994
  ],
990
995
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
@@ -997,16 +1002,16 @@ const ElmToggle = qwik.component$(({ summary: summary2, style }) => {
997
1002
  }),
998
1003
  /* @__PURE__ */ jsxRuntime.jsx("div", {
999
1004
  class: [
1000
- styles$t.content,
1005
+ styles$u.content,
1001
1006
  {
1002
- [styles$t["content-open"]]: isOpen.value,
1003
- [styles$t["content-closed"]]: !isOpen.value
1007
+ [styles$u["content-open"]]: isOpen.value,
1008
+ [styles$u["content-closed"]]: !isOpen.value
1004
1009
  }
1005
1010
  ],
1006
1011
  children: /* @__PURE__ */ jsxRuntime.jsx(qwik.Slot, {})
1007
1012
  }),
1008
1013
  /* @__PURE__ */ jsxRuntime.jsxs("div", {
1009
- class: styles$t.footer,
1014
+ class: styles$u.footer,
1010
1015
  onClick$: toggle2,
1011
1016
  children: [
1012
1017
  /* @__PURE__ */ jsxRuntime.jsx("span", {
@@ -1016,10 +1021,10 @@ const ElmToggle = qwik.component$(({ summary: summary2, style }) => {
1016
1021
  })
1017
1022
  }),
1018
1023
  /* @__PURE__ */ jsxRuntime.jsx("hr", {
1019
- class: styles$t["footer-line"]
1024
+ class: styles$u["footer-line"]
1020
1025
  }),
1021
1026
  /* @__PURE__ */ jsxRuntime.jsx("span", {
1022
- class: styles$t["footer-cross-icon"],
1027
+ class: styles$u["footer-cross-icon"],
1023
1028
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
1024
1029
  d: js.mdiPlus,
1025
1030
  color: "#c56565"
@@ -1029,14 +1034,14 @@ const ElmToggle = qwik.component$(({ summary: summary2, style }) => {
1029
1034
  children: "CLOSE"
1030
1035
  }),
1031
1036
  /* @__PURE__ */ jsxRuntime.jsx("span", {
1032
- class: styles$t["footer-cross-icon"],
1037
+ class: styles$u["footer-cross-icon"],
1033
1038
  children: /* @__PURE__ */ jsxRuntime.jsx(ElmMdiIcon, {
1034
1039
  d: js.mdiPlus,
1035
1040
  color: "#c56565"
1036
1041
  })
1037
1042
  }),
1038
1043
  /* @__PURE__ */ jsxRuntime.jsx("hr", {
1039
- class: styles$t["footer-line"]
1044
+ class: styles$u["footer-line"]
1040
1045
  }),
1041
1046
  /* @__PURE__ */ jsxRuntime.jsx("span", {
1042
1047
  style: {
@@ -1052,50 +1057,50 @@ const ElmToggle = qwik.component$(({ summary: summary2, style }) => {
1052
1057
  ]
1053
1058
  });
1054
1059
  });
1055
- const styles$s = {
1060
+ const styles$t = {
1056
1061
  "block-fallback": "_block-fallback_rt986_1"
1057
1062
  };
1058
1063
  const wrapper$4 = "_wrapper_1yktj_12";
1059
1064
  const dot = "_dot_1yktj_22";
1060
- const styles$r = {
1065
+ const styles$s = {
1061
1066
  wrapper: wrapper$4,
1062
1067
  dot
1063
1068
  };
1064
1069
  const ElmDotLoadingIcon = qwik.component$(({ size = "4em", color = "#606875" }) => {
1065
1070
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
1066
- class: styles$r.wrapper,
1071
+ class: styles$s.wrapper,
1067
1072
  style: {
1068
1073
  "--size": size,
1069
1074
  "--color": color
1070
1075
  },
1071
1076
  children: [
1072
1077
  /* @__PURE__ */ jsxRuntime.jsx("div", {
1073
- class: styles$r.dot,
1078
+ class: styles$s.dot,
1074
1079
  "aria-hidden": "true"
1075
1080
  }),
1076
1081
  /* @__PURE__ */ jsxRuntime.jsx("div", {
1077
- class: styles$r.dot,
1082
+ class: styles$s.dot,
1078
1083
  "aria-hidden": "true"
1079
1084
  }),
1080
1085
  /* @__PURE__ */ jsxRuntime.jsx("div", {
1081
- class: styles$r.dot,
1086
+ class: styles$s.dot,
1082
1087
  "aria-hidden": "true"
1083
1088
  })
1084
1089
  ]
1085
1090
  });
1086
1091
  });
1087
- const styles$q = {
1092
+ const styles$r = {
1088
1093
  "rectangle-wave": "_rectangle-wave_hej9g_17"
1089
1094
  };
1090
1095
  const ElmRectangleWave = qwik.component$(() => {
1091
1096
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
1092
1097
  "aria-hidden": "true",
1093
- class: styles$q["rectangle-wave"]
1098
+ class: styles$r["rectangle-wave"]
1094
1099
  });
1095
1100
  });
1096
1101
  const ElmBlockFallback = qwik.component$(({ height = "16rem" }) => {
1097
1102
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
1098
- class: styles$s["block-fallback"],
1103
+ class: styles$t["block-fallback"],
1099
1104
  style: {
1100
1105
  "--height": height
1101
1106
  },
@@ -1105,6 +1110,48 @@ const ElmBlockFallback = qwik.component$(({ height = "16rem" }) => {
1105
1110
  ]
1106
1111
  });
1107
1112
  });
1113
+ const unsupported = "_unsupported_1vja3_1";
1114
+ const message = "_message_1vja3_13";
1115
+ const icon$3 = "_icon_1vja3_20";
1116
+ const details = "_details_1vja3_24";
1117
+ const styles$q = {
1118
+ unsupported,
1119
+ message,
1120
+ icon: icon$3,
1121
+ details
1122
+ };
1123
+ const ElmUnsupportedBlock = qwik.component$((props) => {
1124
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", {
1125
+ class: styles$q.unsupported,
1126
+ children: [
1127
+ /* @__PURE__ */ jsxRuntime.jsxs("div", {
1128
+ class: styles$q.message,
1129
+ children: [
1130
+ /* @__PURE__ */ jsxRuntime.jsx("svg", {
1131
+ viewBox: "0 0 24 24",
1132
+ width: "1.25rem",
1133
+ height: "1.25rem",
1134
+ class: styles$q.icon,
1135
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", {
1136
+ d: "M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"
1137
+ })
1138
+ }),
1139
+ /* @__PURE__ */ jsxRuntime.jsx(ElmInlineText, {
1140
+ text: "UNSUPPORTED BLOCK",
1141
+ color: "#868e9c"
1142
+ })
1143
+ ]
1144
+ }),
1145
+ props.details && /* @__PURE__ */ jsxRuntime.jsx("div", {
1146
+ class: styles$q.details,
1147
+ children: /* @__PURE__ */ jsxRuntime.jsx(ElmInlineText, {
1148
+ text: props.details,
1149
+ color: "#868e9c"
1150
+ })
1151
+ })
1152
+ ]
1153
+ });
1154
+ });
1108
1155
  const button = "_button_1ykfy_1";
1109
1156
  const normal = "_normal_1ykfy_32";
1110
1157
  const primary = "_primary_1ykfy_41";
@@ -2991,6 +3038,11 @@ const ElmJarkup = qwik.component$((props) => {
2991
3038
  src: component.props.src,
2992
3039
  alt: component.props.alt
2993
3040
  }, key);
3041
+ case "Fragment": {
3042
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {
3043
+ children: render(component.slots.default)
3044
+ });
3045
+ }
2994
3046
  case "Heading":
2995
3047
  return /* @__PURE__ */ jsxRuntime.jsx(ElmHeading, {
2996
3048
  level: component.props.level,
@@ -3063,6 +3115,24 @@ const ElmJarkup = qwik.component$((props) => {
3063
3115
  expression: component.props.expression,
3064
3116
  block: true
3065
3117
  }, key);
3118
+ case "Tabs": {
3119
+ const labels = [];
3120
+ const contents = [];
3121
+ for (const tab2 of component.slots.default) {
3122
+ labels.push(tab2.slots.labels);
3123
+ contents.push(tab2.slots.contents);
3124
+ }
3125
+ const renderedLabels = labels.map((label2, index2) => /* @__PURE__ */ jsxRuntime.jsx("span", {
3126
+ children: render(label2)
3127
+ }, index2));
3128
+ const renderedContents = contents.map((content2, index2) => /* @__PURE__ */ jsxRuntime.jsx("div", {
3129
+ children: render(content2)
3130
+ }, index2));
3131
+ return /* @__PURE__ */ jsxRuntime.jsx(ElmTabs, {
3132
+ tabLabels: renderedLabels,
3133
+ tabContents: renderedContents
3134
+ });
3135
+ }
3066
3136
  case "Table":
3067
3137
  return /* @__PURE__ */ jsxRuntime.jsxs(ElmTable, {
3068
3138
  caption: component.props?.caption,
@@ -3098,16 +3168,16 @@ const ElmJarkup = qwik.component$((props) => {
3098
3168
  },
3099
3169
  children: render(component.slots.default)
3100
3170
  }, key);
3171
+ case "Unsupported": {
3172
+ if (props.skipUnsupportedComponentWarning) return null;
3173
+ return /* @__PURE__ */ jsxRuntime.jsx(ElmUnsupportedBlock, {
3174
+ details: `Unsupported component type: ${component.props?.details || component.type}`
3175
+ }, key);
3176
+ }
3101
3177
  default:
3102
- return /* @__PURE__ */ jsxRuntime.jsxs("div", {
3103
- style: {
3104
- color: "red",
3105
- border: "1px solid red"
3106
- },
3107
- children: [
3108
- "Unsupported component type: ",
3109
- component.type
3110
- ]
3178
+ if (props.skipUnsupportedComponentWarning) return null;
3179
+ return /* @__PURE__ */ jsxRuntime.jsx(ElmUnsupportedBlock, {
3180
+ details: `Unsupported component type: ${component.type}`
3111
3181
  }, key);
3112
3182
  }
3113
3183
  });
@@ -3404,6 +3474,7 @@ exports.ElmTabs = ElmTabs;
3404
3474
  exports.ElmTextField = ElmTextField;
3405
3475
  exports.ElmToggle = ElmToggle;
3406
3476
  exports.ElmToggleTheme = ElmToggleTheme;
3477
+ exports.ElmUnsupportedBlock = ElmUnsupportedBlock;
3407
3478
  exports.ElmValidation = ElmValidation;
3408
3479
  exports.useDelayedSignal = useDelayedSignal;
3409
3480
  exports.useElmethisTheme = useElmethisTheme;
@@ -8,7 +8,7 @@ import { marked } from "marked";
8
8
  const caption$1 = "_caption_1j0ec_27";
9
9
  const divider = "_divider_1j0ec_50";
10
10
  const code$2 = "_code_1j0ec_1";
11
- const styles$B = {
11
+ const styles$C = {
12
12
  "code-block": "_code-block_1j0ec_1",
13
13
  "language-icon": "_language-icon_1j0ec_22",
14
14
  caption: caption$1,
@@ -68,7 +68,7 @@ const Typescript = component$(({ size = 24, ...props }) => {
68
68
  });
69
69
  });
70
70
  const path = "_path_1ccs2_1";
71
- const styles$A = {
71
+ const styles$B = {
72
72
  path
73
73
  };
74
74
  const Bash = component$(({ size = 24, ...props }) => {
@@ -84,7 +84,7 @@ const Bash = component$(({ size = 24, ...props }) => {
84
84
  d: "M4.24 4.24h119.53v119.53H4.24z"
85
85
  }),
86
86
  /* @__PURE__ */ jsx("path", {
87
- class: styles$A.path,
87
+ class: styles$B.path,
88
88
  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"
89
89
  }),
90
90
  /* @__PURE__ */ jsx("path", {
@@ -524,13 +524,13 @@ const C = component$(({ size = 24, ...props }) => {
524
524
  ]
525
525
  });
526
526
  });
527
- const icon$4 = "_icon_1gvln_1";
528
- const styles$z = {
529
- icon: icon$4
527
+ const icon$5 = "_icon_1gvln_1";
528
+ const styles$A = {
529
+ icon: icon$5
530
530
  };
531
531
  const ElmMdiIcon = component$(({ d, size = "1em", color, lightColor, darkColor }) => {
532
532
  return /* @__PURE__ */ jsx("svg", {
533
- class: styles$z.icon,
533
+ class: styles$A.icon,
534
534
  style: {
535
535
  "--color": lightColor ?? color,
536
536
  "--dark-color": darkColor ?? color
@@ -639,7 +639,7 @@ const text$3 = "_text_1gswr_1";
639
639
  const code$1 = "_code_1gswr_12";
640
640
  const kbd = "_kbd_1gswr_21";
641
641
  const link$1 = "_link_1gswr_47";
642
- const styles$y = {
642
+ const styles$z = {
643
643
  text: text$3,
644
644
  code: code$1,
645
645
  kbd,
@@ -649,17 +649,17 @@ const text$2 = "_text_zryur_1";
649
649
  const textStyles = {
650
650
  text: text$2
651
651
  };
652
- const icon$3 = "_icon_19g82_1";
653
- const styles$x = {
654
- icon: icon$3
652
+ const icon$4 = "_icon_1tbvt_1";
653
+ const styles$y = {
654
+ icon: icon$4
655
655
  };
656
656
  const ElmInlineIcon = component$(({ src, alt, width, height, size = 16 }) => {
657
657
  return /* @__PURE__ */ jsx("span", {
658
- class: styles$x.icon,
658
+ class: styles$y.icon,
659
659
  children: /* @__PURE__ */ jsx("img", {
660
660
  src,
661
661
  alt,
662
- class: styles$x.icon,
662
+ class: styles$y.icon,
663
663
  width: width ?? size,
664
664
  height: height ?? size
665
665
  })
@@ -672,7 +672,7 @@ const ElmInlineText = component$((props) => {
672
672
  }) : /* @__PURE__ */ jsx(Slot, {});
673
673
  if (props.kbd) {
674
674
  vnode = /* @__PURE__ */ jsx("kbd", {
675
- class: styles$y.kbd,
675
+ class: styles$z.kbd,
676
676
  children: vnode
677
677
  });
678
678
  }
@@ -698,13 +698,13 @@ const ElmInlineText = component$((props) => {
698
698
  }
699
699
  if (code2) {
700
700
  vnode = /* @__PURE__ */ jsx("code", {
701
- class: styles$y.code,
701
+ class: styles$z.code,
702
702
  children: vnode
703
703
  });
704
704
  }
705
705
  if (props.ruby) {
706
706
  vnode = /* @__PURE__ */ jsxs("ruby", {
707
- class: styles$y.text,
707
+ class: styles$z.text,
708
708
  children: [
709
709
  /* @__PURE__ */ jsx("span", {
710
710
  children: vnode
@@ -717,7 +717,7 @@ const ElmInlineText = component$((props) => {
717
717
  }
718
718
  const wrappedVnode = /* @__PURE__ */ jsx("span", {
719
719
  class: [
720
- styles$y.text,
720
+ styles$z.text,
721
721
  textStyles.text
722
722
  ],
723
723
  style: {
@@ -730,7 +730,7 @@ const ElmInlineText = component$((props) => {
730
730
  });
731
731
  if (props.href) {
732
732
  return /* @__PURE__ */ jsxs("a", {
733
- class: styles$y.link,
733
+ class: styles$z.link,
734
734
  href: props.href,
735
735
  style: {
736
736
  "--font-size": size
@@ -749,7 +749,7 @@ const ElmInlineText = component$((props) => {
749
749
  return wrappedVnode;
750
750
  });
751
751
  const code = "_code_1sw1e_1";
752
- const styles$w = {
752
+ const styles$x = {
753
753
  code
754
754
  };
755
755
  const ElmShikiHighlighter = component$(({ code: code2, language = "txt" }) => {
@@ -774,7 +774,7 @@ const ElmShikiHighlighter = component$(({ code: code2, language = "txt" }) => {
774
774
  }
775
775
  });
776
776
  return /* @__PURE__ */ jsx("pre", {
777
- class: styles$w.code,
777
+ class: styles$x.code,
778
778
  dangerouslySetInnerHTML: rawHtml.value
779
779
  });
780
780
  });
@@ -793,17 +793,17 @@ const ElmCodeBlock = component$(({ code: code2, language = "txt", caption: capti
793
793
  }
794
794
  });
795
795
  return /* @__PURE__ */ jsxs("figure", {
796
- class: styles$B["code-block"],
796
+ class: styles$C["code-block"],
797
797
  style,
798
798
  children: [
799
799
  /* @__PURE__ */ jsx("span", {
800
- class: styles$B["language-icon"],
800
+ class: styles$C["language-icon"],
801
801
  children: /* @__PURE__ */ jsx(ElmLanguageIcon, {
802
802
  language
803
803
  })
804
804
  }),
805
805
  /* @__PURE__ */ jsx("span", {
806
- class: styles$B.caption,
806
+ class: styles$C.caption,
807
807
  children: /* @__PURE__ */ jsxs(ElmInlineText, {
808
808
  children: [
809
809
  caption2 || language,
@@ -812,7 +812,7 @@ const ElmCodeBlock = component$(({ code: code2, language = "txt", caption: capti
812
812
  })
813
813
  }),
814
814
  /* @__PURE__ */ jsx("div", {
815
- class: styles$B["copy-icon"],
815
+ class: styles$C["copy-icon"],
816
816
  onClick$: copyToClipboard,
817
817
  children: /* @__PURE__ */ jsx(ElmMdiIcon, {
818
818
  size: "1.25rem",
@@ -821,10 +821,10 @@ const ElmCodeBlock = component$(({ code: code2, language = "txt", caption: capti
821
821
  })
822
822
  }),
823
823
  /* @__PURE__ */ jsx("hr", {
824
- class: styles$B.divider
824
+ class: styles$C.divider
825
825
  }),
826
826
  /* @__PURE__ */ jsx("div", {
827
- class: styles$B.code,
827
+ class: styles$C.code,
828
828
  children: /* @__PURE__ */ jsx(ElmShikiHighlighter, {
829
829
  code: code2,
830
830
  language
@@ -844,7 +844,7 @@ const ElmKatex = component$(({ expression, block = false }) => {
844
844
  });
845
845
  });
846
846
  const parallax = "_parallax_1kb0k_1";
847
- const styles$v = {
847
+ const styles$w = {
848
848
  "parallax-watcher": "_parallax-watcher_1kb0k_1",
849
849
  parallax
850
850
  };
@@ -853,13 +853,13 @@ const ElmParallax = component$(({ images }) => {
853
853
  return /* @__PURE__ */ jsxs(Fragment, {
854
854
  children: [
855
855
  /* @__PURE__ */ jsx("div", {
856
- class: styles$v["parallax-watcher"],
856
+ class: styles$w["parallax-watcher"],
857
857
  "window:onScroll$": () => {
858
858
  y.value = window.scrollY;
859
859
  }
860
860
  }),
861
861
  images.map((image2, index) => /* @__PURE__ */ jsx("div", {
862
- class: styles$v.parallax,
862
+ class: styles$w.parallax,
863
863
  style: {
864
864
  backgroundImage: `url(${image2})`,
865
865
  transform: `scale(1.2) translateY(${y.value / (1e3 * (index + 1))}%)`,
@@ -869,43 +869,48 @@ const ElmParallax = component$(({ images }) => {
869
869
  ]
870
870
  });
871
871
  });
872
- const tab = "_tab_1vih2_18";
873
- const active$2 = "_active_1vih2_40";
874
- const styles$u = {
875
- "elm-tabs": "_elm-tabs_1vih2_1",
876
- "tab-container": "_tab-container_1vih2_18",
872
+ const tab = "_tab_hloyu_18";
873
+ const active$2 = "_active_hloyu_40";
874
+ const styles$v = {
875
+ "elm-tabs": "_elm-tabs_hloyu_1",
876
+ "tab-container": "_tab-container_hloyu_18",
877
877
  tab,
878
878
  active: active$2,
879
- "tab-content-container": "_tab-content-container_1vih2_51",
880
- "tab-content": "_tab-content_1vih2_51"
879
+ "tab-content-container": "_tab-content-container_hloyu_51",
880
+ "tab-content": "_tab-content_hloyu_51"
881
881
  };
882
- const ElmTabs = component$(({ renderTabFunctions$, renderTabContentFunctions$ }) => {
882
+ const ElmTabs = component$(({ tabLabels, tabContents }) => {
883
883
  const selectedTabIndex = useSignal(0);
884
884
  const selectTab = $((index) => {
885
885
  selectedTabIndex.value = index;
886
886
  });
887
887
  return /* @__PURE__ */ jsxs("div", {
888
- class: styles$u["elm-tabs"],
888
+ class: styles$v["elm-tabs"],
889
889
  children: [
890
890
  /* @__PURE__ */ jsx("div", {
891
- class: styles$u["tab-container"],
892
- children: renderTabFunctions$.map((renderTabFunction$, index) => /* @__PURE__ */ jsx("div", {
891
+ class: styles$v["tab-container"],
892
+ children: tabLabels.map((tabLabel, index) => /* @__PURE__ */ jsx("div", {
893
893
  class: [
894
- styles$u["tab"],
894
+ styles$v["tab"],
895
895
  {
896
- [styles$u["active"]]: selectedTabIndex.value === index
896
+ [styles$v["active"]]: selectedTabIndex.value === index
897
897
  }
898
898
  ],
899
899
  onClick$: () => selectTab(index),
900
- children: renderTabFunction$()
900
+ children: tabLabel
901
901
  }, index))
902
902
  }),
903
903
  /* @__PURE__ */ jsx("div", {
904
- class: styles$u["tab-content-container"],
905
- children: /* @__PURE__ */ jsx("div", {
906
- class: styles$u["tab-content"],
907
- children: renderTabContentFunctions$[selectedTabIndex.value]()
908
- }, selectedTabIndex.value)
904
+ class: styles$v["tab-content-container"],
905
+ children: tabContents.map((content2, index) => /* @__PURE__ */ jsx("div", {
906
+ class: [
907
+ styles$v["tab-content"],
908
+ {
909
+ [styles$v["active"]]: selectedTabIndex.value === index
910
+ }
911
+ ],
912
+ children: content2
913
+ }, index))
909
914
  })
910
915
  ]
911
916
  });
@@ -914,7 +919,7 @@ const toggle = "_toggle_pbyu8_1";
914
919
  const summary = "_summary_pbyu8_14";
915
920
  const content$2 = "_content_pbyu8_60";
916
921
  const footer = "_footer_pbyu8_80";
917
- const styles$t = {
922
+ const styles$u = {
918
923
  toggle,
919
924
  "toggle-closed": "_toggle-closed_pbyu8_7",
920
925
  "toggle-open": "_toggle-open_pbyu8_10",
@@ -941,30 +946,30 @@ const ElmToggle = component$(({ summary: summary2, style }) => {
941
946
  });
942
947
  return /* @__PURE__ */ jsxs("div", {
943
948
  class: [
944
- styles$t.toggle,
949
+ styles$u.toggle,
945
950
  {
946
- [styles$t["toggle-open"]]: isOpen.value,
947
- [styles$t["toggle-closed"]]: !isOpen.value
951
+ [styles$u["toggle-open"]]: isOpen.value,
952
+ [styles$u["toggle-closed"]]: !isOpen.value
948
953
  }
949
954
  ],
950
955
  style,
951
956
  children: [
952
957
  /* @__PURE__ */ jsxs("div", {
953
958
  class: [
954
- styles$t.summary,
959
+ styles$u.summary,
955
960
  {
956
- [styles$t["summary-open"]]: isOpen.value,
957
- [styles$t["summary-closed"]]: !isOpen.value
961
+ [styles$u["summary-open"]]: isOpen.value,
962
+ [styles$u["summary-closed"]]: !isOpen.value
958
963
  }
959
964
  ],
960
965
  onClick$: toggle2,
961
966
  children: [
962
967
  /* @__PURE__ */ jsx("span", {
963
968
  class: [
964
- styles$t["chevron-icon"],
969
+ styles$u["chevron-icon"],
965
970
  {
966
- [styles$t["chevron-icon-open"]]: isOpen.value,
967
- [styles$t["chevron-icon-closed"]]: !isOpen.value
971
+ [styles$u["chevron-icon-open"]]: isOpen.value,
972
+ [styles$u["chevron-icon-closed"]]: !isOpen.value
968
973
  }
969
974
  ],
970
975
  children: /* @__PURE__ */ jsx(ElmMdiIcon, {
@@ -972,17 +977,17 @@ const ElmToggle = component$(({ summary: summary2, style }) => {
972
977
  })
973
978
  }),
974
979
  /* @__PURE__ */ jsx("span", {
975
- class: styles$t["summary-text"],
980
+ class: styles$u["summary-text"],
976
981
  children: summary2 ? summary2 : /* @__PURE__ */ jsx(Slot, {
977
982
  name: "summary"
978
983
  })
979
984
  }),
980
985
  /* @__PURE__ */ jsx("span", {
981
986
  class: [
982
- styles$t["plus-icon"],
987
+ styles$u["plus-icon"],
983
988
  {
984
- [styles$t["plus-icon-open"]]: isOpen.value,
985
- [styles$t["plus-icon-closed"]]: !isOpen.value
989
+ [styles$u["plus-icon-open"]]: isOpen.value,
990
+ [styles$u["plus-icon-closed"]]: !isOpen.value
986
991
  }
987
992
  ],
988
993
  children: /* @__PURE__ */ jsx(ElmMdiIcon, {
@@ -995,16 +1000,16 @@ const ElmToggle = component$(({ summary: summary2, style }) => {
995
1000
  }),
996
1001
  /* @__PURE__ */ jsx("div", {
997
1002
  class: [
998
- styles$t.content,
1003
+ styles$u.content,
999
1004
  {
1000
- [styles$t["content-open"]]: isOpen.value,
1001
- [styles$t["content-closed"]]: !isOpen.value
1005
+ [styles$u["content-open"]]: isOpen.value,
1006
+ [styles$u["content-closed"]]: !isOpen.value
1002
1007
  }
1003
1008
  ],
1004
1009
  children: /* @__PURE__ */ jsx(Slot, {})
1005
1010
  }),
1006
1011
  /* @__PURE__ */ jsxs("div", {
1007
- class: styles$t.footer,
1012
+ class: styles$u.footer,
1008
1013
  onClick$: toggle2,
1009
1014
  children: [
1010
1015
  /* @__PURE__ */ jsx("span", {
@@ -1014,10 +1019,10 @@ const ElmToggle = component$(({ summary: summary2, style }) => {
1014
1019
  })
1015
1020
  }),
1016
1021
  /* @__PURE__ */ jsx("hr", {
1017
- class: styles$t["footer-line"]
1022
+ class: styles$u["footer-line"]
1018
1023
  }),
1019
1024
  /* @__PURE__ */ jsx("span", {
1020
- class: styles$t["footer-cross-icon"],
1025
+ class: styles$u["footer-cross-icon"],
1021
1026
  children: /* @__PURE__ */ jsx(ElmMdiIcon, {
1022
1027
  d: mdiPlus,
1023
1028
  color: "#c56565"
@@ -1027,14 +1032,14 @@ const ElmToggle = component$(({ summary: summary2, style }) => {
1027
1032
  children: "CLOSE"
1028
1033
  }),
1029
1034
  /* @__PURE__ */ jsx("span", {
1030
- class: styles$t["footer-cross-icon"],
1035
+ class: styles$u["footer-cross-icon"],
1031
1036
  children: /* @__PURE__ */ jsx(ElmMdiIcon, {
1032
1037
  d: mdiPlus,
1033
1038
  color: "#c56565"
1034
1039
  })
1035
1040
  }),
1036
1041
  /* @__PURE__ */ jsx("hr", {
1037
- class: styles$t["footer-line"]
1042
+ class: styles$u["footer-line"]
1038
1043
  }),
1039
1044
  /* @__PURE__ */ jsx("span", {
1040
1045
  style: {
@@ -1050,50 +1055,50 @@ const ElmToggle = component$(({ summary: summary2, style }) => {
1050
1055
  ]
1051
1056
  });
1052
1057
  });
1053
- const styles$s = {
1058
+ const styles$t = {
1054
1059
  "block-fallback": "_block-fallback_rt986_1"
1055
1060
  };
1056
1061
  const wrapper$4 = "_wrapper_1yktj_12";
1057
1062
  const dot = "_dot_1yktj_22";
1058
- const styles$r = {
1063
+ const styles$s = {
1059
1064
  wrapper: wrapper$4,
1060
1065
  dot
1061
1066
  };
1062
1067
  const ElmDotLoadingIcon = component$(({ size = "4em", color = "#606875" }) => {
1063
1068
  return /* @__PURE__ */ jsxs("div", {
1064
- class: styles$r.wrapper,
1069
+ class: styles$s.wrapper,
1065
1070
  style: {
1066
1071
  "--size": size,
1067
1072
  "--color": color
1068
1073
  },
1069
1074
  children: [
1070
1075
  /* @__PURE__ */ jsx("div", {
1071
- class: styles$r.dot,
1076
+ class: styles$s.dot,
1072
1077
  "aria-hidden": "true"
1073
1078
  }),
1074
1079
  /* @__PURE__ */ jsx("div", {
1075
- class: styles$r.dot,
1080
+ class: styles$s.dot,
1076
1081
  "aria-hidden": "true"
1077
1082
  }),
1078
1083
  /* @__PURE__ */ jsx("div", {
1079
- class: styles$r.dot,
1084
+ class: styles$s.dot,
1080
1085
  "aria-hidden": "true"
1081
1086
  })
1082
1087
  ]
1083
1088
  });
1084
1089
  });
1085
- const styles$q = {
1090
+ const styles$r = {
1086
1091
  "rectangle-wave": "_rectangle-wave_hej9g_17"
1087
1092
  };
1088
1093
  const ElmRectangleWave = component$(() => {
1089
1094
  return /* @__PURE__ */ jsx("div", {
1090
1095
  "aria-hidden": "true",
1091
- class: styles$q["rectangle-wave"]
1096
+ class: styles$r["rectangle-wave"]
1092
1097
  });
1093
1098
  });
1094
1099
  const ElmBlockFallback = component$(({ height = "16rem" }) => {
1095
1100
  return /* @__PURE__ */ jsxs("div", {
1096
- class: styles$s["block-fallback"],
1101
+ class: styles$t["block-fallback"],
1097
1102
  style: {
1098
1103
  "--height": height
1099
1104
  },
@@ -1103,6 +1108,48 @@ const ElmBlockFallback = component$(({ height = "16rem" }) => {
1103
1108
  ]
1104
1109
  });
1105
1110
  });
1111
+ const unsupported = "_unsupported_1vja3_1";
1112
+ const message = "_message_1vja3_13";
1113
+ const icon$3 = "_icon_1vja3_20";
1114
+ const details = "_details_1vja3_24";
1115
+ const styles$q = {
1116
+ unsupported,
1117
+ message,
1118
+ icon: icon$3,
1119
+ details
1120
+ };
1121
+ const ElmUnsupportedBlock = component$((props) => {
1122
+ return /* @__PURE__ */ jsxs("div", {
1123
+ class: styles$q.unsupported,
1124
+ children: [
1125
+ /* @__PURE__ */ jsxs("div", {
1126
+ class: styles$q.message,
1127
+ children: [
1128
+ /* @__PURE__ */ jsx("svg", {
1129
+ viewBox: "0 0 24 24",
1130
+ width: "1.25rem",
1131
+ height: "1.25rem",
1132
+ class: styles$q.icon,
1133
+ children: /* @__PURE__ */ jsx("path", {
1134
+ d: "M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"
1135
+ })
1136
+ }),
1137
+ /* @__PURE__ */ jsx(ElmInlineText, {
1138
+ text: "UNSUPPORTED BLOCK",
1139
+ color: "#868e9c"
1140
+ })
1141
+ ]
1142
+ }),
1143
+ props.details && /* @__PURE__ */ jsx("div", {
1144
+ class: styles$q.details,
1145
+ children: /* @__PURE__ */ jsx(ElmInlineText, {
1146
+ text: props.details,
1147
+ color: "#868e9c"
1148
+ })
1149
+ })
1150
+ ]
1151
+ });
1152
+ });
1106
1153
  const button = "_button_1ykfy_1";
1107
1154
  const normal = "_normal_1ykfy_32";
1108
1155
  const primary = "_primary_1ykfy_41";
@@ -2989,6 +3036,11 @@ const ElmJarkup = component$((props) => {
2989
3036
  src: component.props.src,
2990
3037
  alt: component.props.alt
2991
3038
  }, key);
3039
+ case "Fragment": {
3040
+ return /* @__PURE__ */ jsx(Fragment, {
3041
+ children: render(component.slots.default)
3042
+ });
3043
+ }
2992
3044
  case "Heading":
2993
3045
  return /* @__PURE__ */ jsx(ElmHeading, {
2994
3046
  level: component.props.level,
@@ -3061,6 +3113,24 @@ const ElmJarkup = component$((props) => {
3061
3113
  expression: component.props.expression,
3062
3114
  block: true
3063
3115
  }, key);
3116
+ case "Tabs": {
3117
+ const labels = [];
3118
+ const contents = [];
3119
+ for (const tab2 of component.slots.default) {
3120
+ labels.push(tab2.slots.labels);
3121
+ contents.push(tab2.slots.contents);
3122
+ }
3123
+ const renderedLabels = labels.map((label2, index2) => /* @__PURE__ */ jsx("span", {
3124
+ children: render(label2)
3125
+ }, index2));
3126
+ const renderedContents = contents.map((content2, index2) => /* @__PURE__ */ jsx("div", {
3127
+ children: render(content2)
3128
+ }, index2));
3129
+ return /* @__PURE__ */ jsx(ElmTabs, {
3130
+ tabLabels: renderedLabels,
3131
+ tabContents: renderedContents
3132
+ });
3133
+ }
3064
3134
  case "Table":
3065
3135
  return /* @__PURE__ */ jsxs(ElmTable, {
3066
3136
  caption: component.props?.caption,
@@ -3096,16 +3166,16 @@ const ElmJarkup = component$((props) => {
3096
3166
  },
3097
3167
  children: render(component.slots.default)
3098
3168
  }, key);
3169
+ case "Unsupported": {
3170
+ if (props.skipUnsupportedComponentWarning) return null;
3171
+ return /* @__PURE__ */ jsx(ElmUnsupportedBlock, {
3172
+ details: `Unsupported component type: ${component.props?.details || component.type}`
3173
+ }, key);
3174
+ }
3099
3175
  default:
3100
- return /* @__PURE__ */ jsxs("div", {
3101
- style: {
3102
- color: "red",
3103
- border: "1px solid red"
3104
- },
3105
- children: [
3106
- "Unsupported component type: ",
3107
- component.type
3108
- ]
3176
+ if (props.skipUnsupportedComponentWarning) return null;
3177
+ return /* @__PURE__ */ jsx(ElmUnsupportedBlock, {
3178
+ details: `Unsupported component type: ${component.type}`
3109
3179
  }, key);
3110
3180
  }
3111
3181
  });
@@ -3403,6 +3473,7 @@ export {
3403
3473
  ElmTextField,
3404
3474
  ElmToggle,
3405
3475
  ElmToggleTheme,
3476
+ ElmUnsupportedBlock,
3406
3477
  ElmValidation,
3407
3478
  useDelayedSignal,
3408
3479
  useElmethisTheme,
package/lib/style.css CHANGED
@@ -184,21 +184,22 @@
184
184
  [data-theme=dark] ._text_zryur_1::selection {
185
185
  color: #3e434b;
186
186
  background-color: var(--color, #cccfd5);
187
- }._icon_19g82_1 {
187
+ }._icon_1tbvt_1 {
188
188
  margin: 0;
189
189
  padding: 0;
190
190
  display: inline-block;
191
- vertical-align: middle;
192
- height: 1em;
191
+ vertical-align: top;
192
+ width: 0.95lh;
193
+ height: 0.95lh;
193
194
  }
194
- ._icon_19g82_1::selection {
195
+ ._icon_1tbvt_1::selection {
195
196
  filter: brightness(1000%);
196
197
  background-color: var(--color, rgba(0, 0, 0, 0.25));
197
198
  }
198
- [data-theme=dark] ._icon_19g82_1 {
199
+ [data-theme=dark] ._icon_1tbvt_1 {
199
200
  color: var(--color, rgba(255, 255, 255, 0.7));
200
201
  }
201
- [data-theme=dark] ._icon_19g82_1::selection {
202
+ [data-theme=dark] ._icon_1tbvt_1::selection {
202
203
  color: rgba(0, 0, 0, 0.7);
203
204
  background-color: var(--color, rgba(255, 255, 255, 0.25));
204
205
  }._code_1sw1e_1 {
@@ -240,7 +241,7 @@
240
241
  }
241
242
  [data-theme=dark] ._parallax_1kb0k_1 {
242
243
  opacity: 0.1;
243
- }._elm-tabs_1vih2_1 {
244
+ }._elm-tabs_hloyu_1 {
244
245
  display: flex;
245
246
  flex-direction: column;
246
247
  gap: 0;
@@ -257,13 +258,13 @@
257
258
  }
258
259
  }
259
260
 
260
- ._tab-container_1vih2_18 {
261
+ ._tab-container_hloyu_18 {
261
262
  display: flex;
262
263
  flex-direction: row;
263
264
  border-bottom: solid 1px oklch(from gray l c h / 0.3);
264
265
  }
265
266
 
266
- ._tab_1vih2_18 {
267
+ ._tab_hloyu_18 {
267
268
  box-sizing: border-box;
268
269
  min-width: 6rem;
269
270
  padding: 1rem;
@@ -279,7 +280,7 @@
279
280
  background-color 200ms,
280
281
  border-color 200ms;
281
282
 
282
- &._active_1vih2_40 {
283
+ &._active_hloyu_40 {
283
284
  background-color: oklch(from #7cbac5 l c h / 0.025);
284
285
  border-bottom-color: #7cbac5;
285
286
  cursor: default;
@@ -290,18 +291,23 @@
290
291
  }
291
292
  }
292
293
 
293
- ._tab-content-container_1vih2_51 {
294
+ ._tab-content-container_hloyu_51 {
294
295
  box-sizing: border-box;
295
296
  width: 100%;
296
297
  padding: 1em;
297
298
  }
298
299
 
299
- ._tab-content_1vih2_51 {
300
+ ._tab-content_hloyu_51 {
300
301
  width: 100%;
301
302
  margin: 0;
302
303
  transition:
303
304
  transform 200ms,
304
305
  opacity 200ms;
306
+ display: none;
307
+
308
+ &._active_hloyu_40 {
309
+ display: block;
310
+ }
305
311
 
306
312
  @starting-style {
307
313
  transform: translateY(-8px);
@@ -498,6 +504,31 @@
498
504
  }
499
505
  [data-theme=dark] ._rectangle-wave_hej9g_17 {
500
506
  border-color: rgba(255, 255, 255, 0.7);
507
+ }._unsupported_1vja3_1 {
508
+ box-sizing: border-box;
509
+ padding: 4rem;
510
+ margin-block: var(--margin-block, 2rem) 0;
511
+ display: flex;
512
+ flex-direction: column;
513
+ justify-content: center;
514
+ align-items: center;
515
+ gap: 1rem;
516
+ border: 1px dashed rgba(134, 142, 156, 0.5);
517
+ }
518
+
519
+ ._message_1vja3_13 {
520
+ display: flex;
521
+ gap: 0.5rem;
522
+ justify-content: center;
523
+ align-items: center;
524
+ }
525
+
526
+ ._icon_1vja3_20 {
527
+ fill: #868e9c;
528
+ }
529
+
530
+ ._details_1vja3_24 {
531
+ opacity: 0.75;
501
532
  }._button_1ykfy_1 {
502
533
  all: unset;
503
534
  position: relative;
@@ -1,6 +1,6 @@
1
- import { JSXOutput, QRL } from "@builder.io/qwik";
1
+ import type { JSXOutput } from "@builder.io/qwik";
2
2
  export interface ElmTabsProps {
3
- renderTabFunctions$: QRL<() => JSXOutput>[];
4
- renderTabContentFunctions$: QRL<() => JSXOutput>[];
3
+ tabLabels: JSXOutput[];
4
+ tabContents: JSXOutput[];
5
5
  }
6
6
  export declare const ElmTabs: import("@builder.io/qwik").Component<ElmTabsProps>;
@@ -0,0 +1,4 @@
1
+ export interface ElmUnsupportedBlockProps {
2
+ details?: string;
3
+ }
4
+ export declare const ElmUnsupportedBlock: import("@builder.io/qwik").Component<ElmUnsupportedBlockProps>;
@@ -0,0 +1,6 @@
1
+ import type { Meta, StoryObj } from "storybook-framework-qwik";
2
+ import { ElmUnsupportedBlock } from "./elm-unsupported-block";
3
+ declare const meta: Meta<typeof ElmUnsupportedBlock>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Primary: Story;
@@ -2,6 +2,7 @@ import { CSSProperties } from "@builder.io/qwik";
2
2
  import type { Component } from "jarkup-ts";
3
3
  export interface ElmJarkupProps {
4
4
  jsonComponents: Component[];
5
+ skipUnsupportedComponentWarning?: boolean;
5
6
  style?: CSSProperties;
6
7
  }
7
8
  export declare const ElmJarkup: import("@builder.io/qwik").Component<ElmJarkupProps>;
@@ -6,6 +6,7 @@ export { ElmTabs, type ElmTabsProps } from "./components/containments/elm-tabs";
6
6
  export { ElmToggle, type ElmToggleProps, } from "./components/containments/elm-toggle";
7
7
  export { ElmBlockFallback, type ElmBlockFallbackProps, } from "./components/fallback/elm-block-fallback";
8
8
  export { ElmRectangleWave, type ElmRectangleWaveProps, } from "./components/fallback/elm-rectangle-wave";
9
+ export { ElmUnsupportedBlock, type ElmUnsupportedBlockProps, } from "./components/fallback/elm-unsupported-block";
9
10
  export { ElmButton, type ElmButtonProps } from "./components/form/elm-button";
10
11
  export { ElmCheckbox, type ElmCheckboxProps, } from "./components/form/elm-checkbox";
11
12
  export { ElmSelect, type ElmSelectOption, type ElmSelectProps, } from "./components/form/elm-select";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elmethis/qwik",
3
- "version": "0.0.37",
3
+ "version": "0.0.39",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -45,7 +45,7 @@
45
45
  "eslint": "10.1.0",
46
46
  "eslint-plugin-qwik": "1.19.2",
47
47
  "globals": "17.4.0",
48
- "jarkup-ts": "^0.9.0",
48
+ "jarkup-ts": "^0.12.0",
49
49
  "np": "^11.0.2",
50
50
  "prettier": "3.8.1",
51
51
  "sass": "^1.98.0",
@@ -59,7 +59,7 @@
59
59
  },
60
60
  "dependencies": {
61
61
  "@mdi/js": "^7.4.47",
62
- "katex": "^0.16.42",
62
+ "katex": "^0.16.43",
63
63
  "lodash-es": "^4.17.23",
64
64
  "marked": "^17.0.5",
65
65
  "polished": "^4.3.1",