@fuzdev/fuz_ui 0.169.0

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 (323) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +93 -0
  3. package/dist/Alert.svelte +108 -0
  4. package/dist/Alert.svelte.d.ts +16 -0
  5. package/dist/Alert.svelte.d.ts.map +1 -0
  6. package/dist/ApiDeclarationList.svelte +35 -0
  7. package/dist/ApiDeclarationList.svelte.d.ts +9 -0
  8. package/dist/ApiDeclarationList.svelte.d.ts.map +1 -0
  9. package/dist/ApiIndex.svelte +65 -0
  10. package/dist/ApiIndex.svelte.d.ts +23 -0
  11. package/dist/ApiIndex.svelte.d.ts.map +1 -0
  12. package/dist/ApiModule.svelte +124 -0
  13. package/dist/ApiModule.svelte.d.ts +22 -0
  14. package/dist/ApiModule.svelte.d.ts.map +1 -0
  15. package/dist/Breadcrumb.svelte +83 -0
  16. package/dist/Breadcrumb.svelte.d.ts +23 -0
  17. package/dist/Breadcrumb.svelte.d.ts.map +1 -0
  18. package/dist/Card.svelte +157 -0
  19. package/dist/Card.svelte.d.ts +13 -0
  20. package/dist/Card.svelte.d.ts.map +1 -0
  21. package/dist/ColorSchemeInput.svelte +65 -0
  22. package/dist/ColorSchemeInput.svelte.d.ts +11 -0
  23. package/dist/ColorSchemeInput.svelte.d.ts.map +1 -0
  24. package/dist/Contextmenu.svelte +30 -0
  25. package/dist/Contextmenu.svelte.d.ts +32 -0
  26. package/dist/Contextmenu.svelte.d.ts.map +1 -0
  27. package/dist/ContextmenuEntry.svelte +74 -0
  28. package/dist/ContextmenuEntry.svelte.d.ts +12 -0
  29. package/dist/ContextmenuEntry.svelte.d.ts.map +1 -0
  30. package/dist/ContextmenuLinkEntry.svelte +112 -0
  31. package/dist/ContextmenuLinkEntry.svelte.d.ts +12 -0
  32. package/dist/ContextmenuLinkEntry.svelte.d.ts.map +1 -0
  33. package/dist/ContextmenuRoot.svelte +372 -0
  34. package/dist/ContextmenuRoot.svelte.d.ts +71 -0
  35. package/dist/ContextmenuRoot.svelte.d.ts.map +1 -0
  36. package/dist/ContextmenuRootForSafariCompatibility.svelte +541 -0
  37. package/dist/ContextmenuRootForSafariCompatibility.svelte.d.ts +79 -0
  38. package/dist/ContextmenuRootForSafariCompatibility.svelte.d.ts.map +1 -0
  39. package/dist/ContextmenuSeparator.svelte +16 -0
  40. package/dist/ContextmenuSeparator.svelte.d.ts +4 -0
  41. package/dist/ContextmenuSeparator.svelte.d.ts.map +1 -0
  42. package/dist/ContextmenuSubmenu.svelte +116 -0
  43. package/dist/ContextmenuSubmenu.svelte.d.ts +10 -0
  44. package/dist/ContextmenuSubmenu.svelte.d.ts.map +1 -0
  45. package/dist/ContextmenuTextEntry.svelte +21 -0
  46. package/dist/ContextmenuTextEntry.svelte.d.ts +10 -0
  47. package/dist/ContextmenuTextEntry.svelte.d.ts.map +1 -0
  48. package/dist/CopyToClipboard.svelte +81 -0
  49. package/dist/CopyToClipboard.svelte.d.ts +18 -0
  50. package/dist/CopyToClipboard.svelte.d.ts.map +1 -0
  51. package/dist/DeclarationDetail.svelte +340 -0
  52. package/dist/DeclarationDetail.svelte.d.ts +8 -0
  53. package/dist/DeclarationDetail.svelte.d.ts.map +1 -0
  54. package/dist/DeclarationLink.svelte +50 -0
  55. package/dist/DeclarationLink.svelte.d.ts +8 -0
  56. package/dist/DeclarationLink.svelte.d.ts.map +1 -0
  57. package/dist/Details.svelte +51 -0
  58. package/dist/Details.svelte.d.ts +20 -0
  59. package/dist/Details.svelte.d.ts.map +1 -0
  60. package/dist/Dialog.svelte +217 -0
  61. package/dist/Dialog.svelte.d.ts +30 -0
  62. package/dist/Dialog.svelte.d.ts.map +1 -0
  63. package/dist/Dialogs.svelte +28 -0
  64. package/dist/Dialogs.svelte.d.ts +11 -0
  65. package/dist/Dialogs.svelte.d.ts.map +1 -0
  66. package/dist/Docs.svelte +179 -0
  67. package/dist/Docs.svelte.d.ts +13 -0
  68. package/dist/Docs.svelte.d.ts.map +1 -0
  69. package/dist/DocsContent.svelte +40 -0
  70. package/dist/DocsContent.svelte.d.ts +14 -0
  71. package/dist/DocsContent.svelte.d.ts.map +1 -0
  72. package/dist/DocsFooter.svelte +64 -0
  73. package/dist/DocsFooter.svelte.d.ts +15 -0
  74. package/dist/DocsFooter.svelte.d.ts.map +1 -0
  75. package/dist/DocsLink.svelte +41 -0
  76. package/dist/DocsLink.svelte.d.ts +12 -0
  77. package/dist/DocsLink.svelte.d.ts.map +1 -0
  78. package/dist/DocsList.svelte +44 -0
  79. package/dist/DocsList.svelte.d.ts +11 -0
  80. package/dist/DocsList.svelte.d.ts.map +1 -0
  81. package/dist/DocsMenu.svelte +55 -0
  82. package/dist/DocsMenu.svelte.d.ts +11 -0
  83. package/dist/DocsMenu.svelte.d.ts.map +1 -0
  84. package/dist/DocsMenuHeader.svelte +15 -0
  85. package/dist/DocsMenuHeader.svelte.d.ts +9 -0
  86. package/dist/DocsMenuHeader.svelte.d.ts.map +1 -0
  87. package/dist/DocsModulesList.svelte +32 -0
  88. package/dist/DocsModulesList.svelte.d.ts +7 -0
  89. package/dist/DocsModulesList.svelte.d.ts.map +1 -0
  90. package/dist/DocsPageLinks.svelte +61 -0
  91. package/dist/DocsPageLinks.svelte.d.ts +8 -0
  92. package/dist/DocsPageLinks.svelte.d.ts.map +1 -0
  93. package/dist/DocsPrimaryNav.svelte +93 -0
  94. package/dist/DocsPrimaryNav.svelte.d.ts +11 -0
  95. package/dist/DocsPrimaryNav.svelte.d.ts.map +1 -0
  96. package/dist/DocsSearch.svelte +48 -0
  97. package/dist/DocsSearch.svelte.d.ts +11 -0
  98. package/dist/DocsSearch.svelte.d.ts.map +1 -0
  99. package/dist/DocsSecondaryNav.svelte +63 -0
  100. package/dist/DocsSecondaryNav.svelte.d.ts +9 -0
  101. package/dist/DocsSecondaryNav.svelte.d.ts.map +1 -0
  102. package/dist/DocsTertiaryNav.svelte +118 -0
  103. package/dist/DocsTertiaryNav.svelte.d.ts +10 -0
  104. package/dist/DocsTertiaryNav.svelte.d.ts.map +1 -0
  105. package/dist/EcosystemLinks.svelte +53 -0
  106. package/dist/EcosystemLinks.svelte.d.ts +7 -0
  107. package/dist/EcosystemLinks.svelte.d.ts.map +1 -0
  108. package/dist/EcosystemLinksPanel.svelte +22 -0
  109. package/dist/EcosystemLinksPanel.svelte.d.ts +8 -0
  110. package/dist/EcosystemLinksPanel.svelte.d.ts.map +1 -0
  111. package/dist/GithubLink.svelte +75 -0
  112. package/dist/GithubLink.svelte.d.ts +14 -0
  113. package/dist/GithubLink.svelte.d.ts.map +1 -0
  114. package/dist/Glyph.svelte +28 -0
  115. package/dist/Glyph.svelte.d.ts +9 -0
  116. package/dist/Glyph.svelte.d.ts.map +1 -0
  117. package/dist/Hashlink.svelte +41 -0
  118. package/dist/Hashlink.svelte.d.ts +8 -0
  119. package/dist/Hashlink.svelte.d.ts.map +1 -0
  120. package/dist/HiddenPersonalLinks.svelte +6 -0
  121. package/dist/HiddenPersonalLinks.svelte.d.ts +27 -0
  122. package/dist/HiddenPersonalLinks.svelte.d.ts.map +1 -0
  123. package/dist/HueInput.svelte +127 -0
  124. package/dist/HueInput.svelte.d.ts +11 -0
  125. package/dist/HueInput.svelte.d.ts.map +1 -0
  126. package/dist/ImgOrSvg.svelte +58 -0
  127. package/dist/ImgOrSvg.svelte.d.ts +25 -0
  128. package/dist/ImgOrSvg.svelte.d.ts.map +1 -0
  129. package/dist/LibraryDetail.svelte +297 -0
  130. package/dist/LibraryDetail.svelte.d.ts +15 -0
  131. package/dist/LibraryDetail.svelte.d.ts.map +1 -0
  132. package/dist/LibrarySummary.svelte +151 -0
  133. package/dist/LibrarySummary.svelte.d.ts +16 -0
  134. package/dist/LibrarySummary.svelte.d.ts.map +1 -0
  135. package/dist/MdnLink.svelte +40 -0
  136. package/dist/MdnLink.svelte.d.ts +8 -0
  137. package/dist/MdnLink.svelte.d.ts.map +1 -0
  138. package/dist/Mdz.svelte +30 -0
  139. package/dist/Mdz.svelte.d.ts +10 -0
  140. package/dist/Mdz.svelte.d.ts.map +1 -0
  141. package/dist/MdzNodeView.svelte +93 -0
  142. package/dist/MdzNodeView.svelte.d.ts +9 -0
  143. package/dist/MdzNodeView.svelte.d.ts.map +1 -0
  144. package/dist/ModuleLink.svelte +48 -0
  145. package/dist/ModuleLink.svelte.d.ts +8 -0
  146. package/dist/ModuleLink.svelte.d.ts.map +1 -0
  147. package/dist/PasteFromClipboard.svelte +35 -0
  148. package/dist/PasteFromClipboard.svelte.d.ts +9 -0
  149. package/dist/PasteFromClipboard.svelte.d.ts.map +1 -0
  150. package/dist/PendingAnimation.svelte +62 -0
  151. package/dist/PendingAnimation.svelte.d.ts +13 -0
  152. package/dist/PendingAnimation.svelte.d.ts.map +1 -0
  153. package/dist/PendingButton.svelte +75 -0
  154. package/dist/PendingButton.svelte.d.ts +17 -0
  155. package/dist/PendingButton.svelte.d.ts.map +1 -0
  156. package/dist/ProjectLinks.svelte +54 -0
  157. package/dist/ProjectLinks.svelte.d.ts +19 -0
  158. package/dist/ProjectLinks.svelte.d.ts.map +1 -0
  159. package/dist/Redirect.svelte +44 -0
  160. package/dist/Redirect.svelte.d.ts +23 -0
  161. package/dist/Redirect.svelte.d.ts.map +1 -0
  162. package/dist/Spiders.svelte +57 -0
  163. package/dist/Spiders.svelte.d.ts +9 -0
  164. package/dist/Spiders.svelte.d.ts.map +1 -0
  165. package/dist/Svg.svelte +99 -0
  166. package/dist/Svg.svelte.d.ts +54 -0
  167. package/dist/Svg.svelte.d.ts.map +1 -0
  168. package/dist/Teleport.svelte +48 -0
  169. package/dist/Teleport.svelte.d.ts +15 -0
  170. package/dist/Teleport.svelte.d.ts.map +1 -0
  171. package/dist/ThemeInput.svelte +75 -0
  172. package/dist/ThemeInput.svelte.d.ts +15 -0
  173. package/dist/ThemeInput.svelte.d.ts.map +1 -0
  174. package/dist/Themed.svelte +101 -0
  175. package/dist/Themed.svelte.d.ts +24 -0
  176. package/dist/Themed.svelte.d.ts.map +1 -0
  177. package/dist/TomeContent.svelte +67 -0
  178. package/dist/TomeContent.svelte.d.ts +12 -0
  179. package/dist/TomeContent.svelte.d.ts.map +1 -0
  180. package/dist/TomeHeader.svelte +56 -0
  181. package/dist/TomeHeader.svelte.d.ts +4 -0
  182. package/dist/TomeHeader.svelte.d.ts.map +1 -0
  183. package/dist/TomeLink.svelte +29 -0
  184. package/dist/TomeLink.svelte.d.ts +10 -0
  185. package/dist/TomeLink.svelte.d.ts.map +1 -0
  186. package/dist/TomeSection.svelte +65 -0
  187. package/dist/TomeSection.svelte.d.ts +24 -0
  188. package/dist/TomeSection.svelte.d.ts.map +1 -0
  189. package/dist/TomeSectionHeader.svelte +90 -0
  190. package/dist/TomeSectionHeader.svelte.d.ts +13 -0
  191. package/dist/TomeSectionHeader.svelte.d.ts.map +1 -0
  192. package/dist/TypeLink.svelte +19 -0
  193. package/dist/TypeLink.svelte.d.ts +7 -0
  194. package/dist/TypeLink.svelte.d.ts.map +1 -0
  195. package/dist/alert.d.ts +7 -0
  196. package/dist/alert.d.ts.map +1 -0
  197. package/dist/alert.js +6 -0
  198. package/dist/api_search.svelte.d.ts +16 -0
  199. package/dist/api_search.svelte.d.ts.map +1 -0
  200. package/dist/api_search.svelte.js +61 -0
  201. package/dist/constants.d.ts +2 -0
  202. package/dist/constants.d.ts.map +1 -0
  203. package/dist/constants.js +3 -0
  204. package/dist/context_helpers.d.ts +17 -0
  205. package/dist/context_helpers.d.ts.map +1 -0
  206. package/dist/context_helpers.js +19 -0
  207. package/dist/contextmenu_helpers.d.ts +16 -0
  208. package/dist/contextmenu_helpers.d.ts.map +1 -0
  209. package/dist/contextmenu_helpers.js +39 -0
  210. package/dist/contextmenu_state.svelte.d.ts +152 -0
  211. package/dist/contextmenu_state.svelte.d.ts.map +1 -0
  212. package/dist/contextmenu_state.svelte.js +424 -0
  213. package/dist/csp.d.ts +160 -0
  214. package/dist/csp.d.ts.map +1 -0
  215. package/dist/csp.js +354 -0
  216. package/dist/csp_of_ryanatkn.d.ts +6 -0
  217. package/dist/csp_of_ryanatkn.d.ts.map +1 -0
  218. package/dist/csp_of_ryanatkn.js +14 -0
  219. package/dist/declaration.svelte.d.ts +84 -0
  220. package/dist/declaration.svelte.d.ts.map +1 -0
  221. package/dist/declaration.svelte.js +66 -0
  222. package/dist/declaration_contextmenu.d.ts +4 -0
  223. package/dist/declaration_contextmenu.d.ts.map +1 -0
  224. package/dist/declaration_contextmenu.js +14 -0
  225. package/dist/dialog.d.ts +24 -0
  226. package/dist/dialog.d.ts.map +1 -0
  227. package/dist/dialog.js +12 -0
  228. package/dist/dimensions.svelte.d.ts +5 -0
  229. package/dist/dimensions.svelte.d.ts.map +1 -0
  230. package/dist/dimensions.svelte.js +4 -0
  231. package/dist/docs_helpers.svelte.d.ts +48 -0
  232. package/dist/docs_helpers.svelte.d.ts.map +1 -0
  233. package/dist/docs_helpers.svelte.js +99 -0
  234. package/dist/helpers.d.ts +2 -0
  235. package/dist/helpers.d.ts.map +1 -0
  236. package/dist/helpers.js +16 -0
  237. package/dist/intersect.svelte.d.ts +47 -0
  238. package/dist/intersect.svelte.d.ts.map +1 -0
  239. package/dist/intersect.svelte.js +92 -0
  240. package/dist/library.svelte.d.ts +197 -0
  241. package/dist/library.svelte.d.ts.map +1 -0
  242. package/dist/library.svelte.js +130 -0
  243. package/dist/library_gen.d.ts +34 -0
  244. package/dist/library_gen.d.ts.map +1 -0
  245. package/dist/library_gen.js +123 -0
  246. package/dist/library_gen_helpers.d.ts +85 -0
  247. package/dist/library_gen_helpers.d.ts.map +1 -0
  248. package/dist/library_gen_helpers.js +188 -0
  249. package/dist/library_helpers.d.ts +54 -0
  250. package/dist/library_helpers.d.ts.map +1 -0
  251. package/dist/library_helpers.js +102 -0
  252. package/dist/logos.d.ts +134 -0
  253. package/dist/logos.d.ts.map +1 -0
  254. package/dist/logos.js +281 -0
  255. package/dist/mdz.d.ts +106 -0
  256. package/dist/mdz.d.ts.map +1 -0
  257. package/dist/mdz.js +1481 -0
  258. package/dist/mdz_components.d.ts +37 -0
  259. package/dist/mdz_components.d.ts.map +1 -0
  260. package/dist/mdz_components.js +12 -0
  261. package/dist/module.svelte.d.ts +47 -0
  262. package/dist/module.svelte.d.ts.map +1 -0
  263. package/dist/module.svelte.js +56 -0
  264. package/dist/module_contextmenu.d.ts +4 -0
  265. package/dist/module_contextmenu.d.ts.map +1 -0
  266. package/dist/module_contextmenu.js +14 -0
  267. package/dist/module_helpers.d.ts +69 -0
  268. package/dist/module_helpers.d.ts.map +1 -0
  269. package/dist/module_helpers.js +87 -0
  270. package/dist/rune_helpers.svelte.d.ts +6 -0
  271. package/dist/rune_helpers.svelte.d.ts.map +1 -0
  272. package/dist/rune_helpers.svelte.js +10 -0
  273. package/dist/storage.d.ts +13 -0
  274. package/dist/storage.d.ts.map +1 -0
  275. package/dist/storage.js +43 -0
  276. package/dist/svelte_helpers.d.ts +37 -0
  277. package/dist/svelte_helpers.d.ts.map +1 -0
  278. package/dist/svelte_helpers.js +245 -0
  279. package/dist/themer.svelte.d.ts +24 -0
  280. package/dist/themer.svelte.d.ts.map +1 -0
  281. package/dist/themer.svelte.js +43 -0
  282. package/dist/tome.d.ts +80 -0
  283. package/dist/tome.d.ts.map +1 -0
  284. package/dist/tome.js +27 -0
  285. package/dist/ts_helpers.d.ts +110 -0
  286. package/dist/ts_helpers.d.ts.map +1 -0
  287. package/dist/ts_helpers.js +533 -0
  288. package/dist/tsdoc_helpers.d.ts +98 -0
  289. package/dist/tsdoc_helpers.d.ts.map +1 -0
  290. package/dist/tsdoc_helpers.js +221 -0
  291. package/package.json +128 -0
  292. package/src/lib/alert.ts +14 -0
  293. package/src/lib/api_search.svelte.ts +85 -0
  294. package/src/lib/constants.ts +3 -0
  295. package/src/lib/context_helpers.ts +47 -0
  296. package/src/lib/contextmenu_helpers.ts +63 -0
  297. package/src/lib/contextmenu_state.svelte.ts +515 -0
  298. package/src/lib/csp.ts +576 -0
  299. package/src/lib/csp_of_ryanatkn.ts +16 -0
  300. package/src/lib/declaration.svelte.ts +102 -0
  301. package/src/lib/declaration_contextmenu.ts +22 -0
  302. package/src/lib/dialog.ts +35 -0
  303. package/src/lib/dimensions.svelte.ts +4 -0
  304. package/src/lib/docs_helpers.svelte.ts +149 -0
  305. package/src/lib/helpers.ts +10 -0
  306. package/src/lib/intersect.svelte.ts +152 -0
  307. package/src/lib/library.svelte.ts +162 -0
  308. package/src/lib/library_gen.ts +160 -0
  309. package/src/lib/library_gen_helpers.ts +262 -0
  310. package/src/lib/library_helpers.ts +123 -0
  311. package/src/lib/logos.ts +302 -0
  312. package/src/lib/mdz.ts +1819 -0
  313. package/src/lib/mdz_components.ts +34 -0
  314. package/src/lib/module.svelte.ts +78 -0
  315. package/src/lib/module_contextmenu.ts +20 -0
  316. package/src/lib/module_helpers.ts +113 -0
  317. package/src/lib/rune_helpers.svelte.ts +10 -0
  318. package/src/lib/storage.ts +48 -0
  319. package/src/lib/svelte_helpers.ts +303 -0
  320. package/src/lib/themer.svelte.ts +68 -0
  321. package/src/lib/tome.ts +38 -0
  322. package/src/lib/ts_helpers.ts +662 -0
  323. package/src/lib/tsdoc_helpers.ts +259 -0
@@ -0,0 +1,58 @@
1
+ <script lang="ts">
2
+ import type {SvelteHTMLElements} from 'svelte/elements';
3
+
4
+ const {
5
+ src,
6
+ label,
7
+ size,
8
+ width,
9
+ height,
10
+ svg_attrs,
11
+ img_attrs,
12
+ attrs,
13
+ }: {
14
+ src: string;
15
+ label?: string;
16
+ /**
17
+ * Sets both the `width` and `height` of the svg. Overridden by the `width` and `height` props.
18
+ */
19
+ size?: string;
20
+ /**
21
+ * Sets the `width` of the svg. Overrides `size`.
22
+ */
23
+ width?: string;
24
+ /**
25
+ * Sets the `height` of the svg. Overrides `size`.
26
+ */
27
+ height?: string;
28
+ svg_attrs?: SvelteHTMLElements['svg'];
29
+ img_attrs?: SvelteHTMLElements['img'];
30
+ /** Shared attributes for both img and svg. */
31
+ attrs?: Pick<SvelteHTMLElements['div'], 'class' | 'style'>; // TODO more shared attributes? can't use `div` directly for svg, users can always assert the type as a hacky workaround
32
+ } = $props();
33
+
34
+ const final_width = $derived(width ?? size);
35
+ const final_height = $derived(height ?? size);
36
+ </script>
37
+
38
+ {#if src.endsWith('.svg')}
39
+ <svg
40
+ role="img"
41
+ {...attrs}
42
+ {...svg_attrs}
43
+ aria-label={label}
44
+ style:width={final_width}
45
+ style:height={final_height}
46
+ >
47
+ <image href={src} class="width_100 height_100" />
48
+ </svg>
49
+ {:else}
50
+ <img
51
+ {...attrs}
52
+ {...img_attrs}
53
+ {src}
54
+ alt={label}
55
+ style:width={final_width}
56
+ style:height={final_height}
57
+ />
58
+ {/if}
@@ -0,0 +1,25 @@
1
+ import type { SvelteHTMLElements } from 'svelte/elements';
2
+ type $$ComponentProps = {
3
+ src: string;
4
+ label?: string;
5
+ /**
6
+ * Sets both the `width` and `height` of the svg. Overridden by the `width` and `height` props.
7
+ */
8
+ size?: string;
9
+ /**
10
+ * Sets the `width` of the svg. Overrides `size`.
11
+ */
12
+ width?: string;
13
+ /**
14
+ * Sets the `height` of the svg. Overrides `size`.
15
+ */
16
+ height?: string;
17
+ svg_attrs?: SvelteHTMLElements['svg'];
18
+ img_attrs?: SvelteHTMLElements['img'];
19
+ /** Shared attributes for both img and svg. */
20
+ attrs?: Pick<SvelteHTMLElements['div'], 'class' | 'style'>;
21
+ };
22
+ declare const ImgOrSvg: import("svelte").Component<$$ComponentProps, {}, "">;
23
+ type ImgOrSvg = ReturnType<typeof ImgOrSvg>;
24
+ export default ImgOrSvg;
25
+ //# sourceMappingURL=ImgOrSvg.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImgOrSvg.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/ImgOrSvg.svelte"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAEvD,KAAK,gBAAgB,GAAI;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACtC,SAAS,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACtC,8CAA8C;IAC9C,KAAK,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;CAC3D,CAAC;AA6BH,QAAA,MAAM,QAAQ,sDAAwC,CAAC;AACvD,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC5C,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,297 @@
1
+ <script lang="ts">
2
+ import {page} from '$app/state';
3
+ import {format_url} from '@fuzdev/fuz_util/url.js';
4
+ import type {Snippet} from 'svelte';
5
+
6
+ import type {Library} from './library.svelte.js';
7
+ import ImgOrSvg from './ImgOrSvg.svelte';
8
+ import DeclarationLink from './DeclarationLink.svelte';
9
+ import ModuleLink from './ModuleLink.svelte';
10
+ import {url_github_file, repo_url_parse, url_well_known} from './library_helpers.js';
11
+ import {
12
+ module_is_typescript,
13
+ module_is_svelte,
14
+ module_is_css,
15
+ module_is_json,
16
+ } from './module_helpers.js';
17
+
18
+ const {
19
+ library,
20
+ repo_name,
21
+ description,
22
+ motto,
23
+ npm_url,
24
+ homepage_url,
25
+ children,
26
+ }: {
27
+ library: Library;
28
+ repo_name?: Snippet<[repo_name: string]>;
29
+ description?: Snippet<[description: string]>;
30
+ motto?: Snippet<[description: string]>;
31
+ npm_url?: Snippet<[npm_url: string]>;
32
+ homepage_url?: Snippet<[homepage_url: string]>;
33
+ children?: Snippet<[library: Library]>;
34
+ } = $props();
35
+
36
+ // TODO show other data (lines of code)
37
+
38
+ const {package_json} = $derived(library);
39
+
40
+ const repository_url = $derived(repo_url_parse(package_json.repository));
41
+ const license_url = $derived(
42
+ package_json.license && repository_url ? url_github_file(repository_url, 'LICENSE') : null,
43
+ );
44
+ </script>
45
+
46
+ <!-- eslint-disable svelte/no-navigation-without-resolve -->
47
+
48
+ <div class="library_detail">
49
+ <!-- TODO maybe continue this snippet pattern, or maybe simplify? -->
50
+ <div class="info">
51
+ <div class="display_flex flex_1">
52
+ <!-- add yet another wrapper so it flows like we want -->
53
+ <div>
54
+ <header>
55
+ {#if repo_name}
56
+ {@render repo_name(library.repo_name)}
57
+ {:else}
58
+ <div class="repo_name">
59
+ {library.repo_name}{#if package_json.glyph}&nbsp;{package_json.glyph}{/if}
60
+ </div>
61
+ {/if}
62
+ </header>
63
+ {@render children?.(library)}
64
+ {#if package_json.description}
65
+ {#if description}
66
+ {@render description(package_json.description)}
67
+ {:else}
68
+ <div class="description">{package_json.description}</div>
69
+ {/if}
70
+ {/if}
71
+ {#if package_json.motto}
72
+ {#if motto}
73
+ {@render motto(package_json.motto)}
74
+ {:else}
75
+ <div class="motto">{package_json.motto}</div>
76
+ {/if}
77
+ {/if}
78
+ {#if library.npm_url}
79
+ {#if npm_url}
80
+ {@render npm_url(library.npm_url)}
81
+ {:else}
82
+ <blockquote class="npm_url">npm i -D {package_json.name}</blockquote>
83
+ {/if}
84
+ {/if}
85
+ <!-- TODO accessible HTML -->
86
+ <section class="properties">
87
+ {#if library.homepage_url}
88
+ {#if homepage_url}
89
+ {@render homepage_url(library.homepage_url)}
90
+ {:else}
91
+ <span class="title">homepage</span>
92
+ <div class="content">
93
+ <a
94
+ class="chip"
95
+ class:selected={library.homepage_url === page.url.href}
96
+ href={library.homepage_url}
97
+ >
98
+ {#if library.logo_url}
99
+ <ImgOrSvg
100
+ src={library.logo_url}
101
+ label={library.logo_alt}
102
+ size="16px"
103
+ attrs={{class: 'mr_xs'}}
104
+ />
105
+ {/if}
106
+ {format_url(library.homepage_url)}
107
+ </a>
108
+ </div>
109
+ {/if}
110
+ {/if}
111
+ {#if library.repo_url}
112
+ <span class="title">repo</span>
113
+ <div class="content">
114
+ <a class="chip" title="repo" href={library.repo_url}
115
+ >{library.owner_name}/{library.repo_name}</a
116
+ >
117
+ </div>
118
+ {/if}
119
+ {#if library.npm_url}
120
+ <span class="title">npm</span>
121
+ <div class="content">
122
+ <a class="chip" title="npm" href={library.npm_url}>{package_json.name}</a>
123
+ </div>
124
+ {/if}
125
+ {#if library.changelog_url}
126
+ <span class="title">version</span>
127
+ <div class="content">
128
+ <a class="chip" title="version" href={library.changelog_url}>{package_json.version}</a
129
+ >
130
+ </div>
131
+ {/if}
132
+ {#if license_url}
133
+ <span class="title">license</span>
134
+ <div class="content">
135
+ <a class="chip" title="license" href={license_url}>{package_json.license}</a>
136
+ </div>
137
+ {/if}
138
+ {#if library.homepage_url}
139
+ <span class="title">data</span>
140
+ <div class="content">
141
+ <a
142
+ class="chip"
143
+ title="data"
144
+ href={url_well_known(library.homepage_url, 'package.json')}>package.json</a
145
+ >
146
+ <a class="chip" title="data" href={url_well_known(library.homepage_url, 'src.json')}
147
+ >src.json</a
148
+ >
149
+ </div>
150
+ {/if}
151
+ </section>
152
+ </div>
153
+ </div>
154
+ {#if library.logo_url}
155
+ <div class="logo">
156
+ <ImgOrSvg
157
+ src={library.logo_url}
158
+ label={library.logo_alt}
159
+ size="var(--font_size, var(--icon_size_xl2))"
160
+ />
161
+ </div>
162
+ {/if}
163
+ </div>
164
+ {#if library.modules.length > 0 && library.repo_url}
165
+ <section>
166
+ <menu class="unstyled">
167
+ {#each library.modules as module (module.path)}
168
+ <!-- TODO improve rendering and enrich data - start with the type (not just extension - mime?) -->
169
+ <li
170
+ class="module"
171
+ class:ts={module_is_typescript(module.path)}
172
+ class:svelte={module_is_svelte(module.path)}
173
+ class:css={module_is_css(module.path)}
174
+ class:json={module_is_json(module.path)}
175
+ >
176
+ <div class="module_content">
177
+ <span class="font_size_xl">
178
+ <ModuleLink module_path={module.path}>
179
+ {module.path}
180
+ </ModuleLink>
181
+ </span>
182
+ {#if module.declarations.length > 0}
183
+ <ul class="declarations unstyled">
184
+ {#each module.declarations as declaration (declaration.name)}
185
+ <li>
186
+ <DeclarationLink name={declaration.name} />
187
+ </li>
188
+ {/each}
189
+ </ul>
190
+ {/if}
191
+ </div>
192
+ </li>
193
+ {/each}
194
+ </menu>
195
+ </section>
196
+ {/if}
197
+
198
+ <!-- TODO maybe add more details, possibly behind a `<details>`, including author -->
199
+ <!-- TODO render exports, then link to source, then tomes -->
200
+ </div>
201
+
202
+ <!-- TODO better rendering, also show author, etc -->
203
+
204
+ <style>
205
+ .library_detail {
206
+ display: flex;
207
+ flex-direction: column;
208
+ align-items: flex-start;
209
+ width: 100%;
210
+ max-width: var(--max_width, var(--distance_md));
211
+ }
212
+
213
+ .info {
214
+ width: 100%;
215
+ display: flex;
216
+ flex-wrap: wrap;
217
+ }
218
+
219
+ .logo {
220
+ flex-shrink: 0;
221
+ padding: 0 var(--space_xl);
222
+ }
223
+
224
+ header {
225
+ margin-bottom: var(--space_lg);
226
+ }
227
+
228
+ section {
229
+ width: 100%;
230
+ margin-bottom: var(--space_lg);
231
+ }
232
+ .repo_name {
233
+ font-family: var(--font_family_serif);
234
+ font-size: var(--font_size_xl2);
235
+ font-weight: 400;
236
+ }
237
+ .npm_url {
238
+ font-family: var(--font_family_mono);
239
+ text-align: center;
240
+ margin-bottom: var(--space_lg);
241
+ }
242
+ .description {
243
+ margin-bottom: var(--space_lg);
244
+ }
245
+ .motto {
246
+ margin-bottom: var(--space_lg);
247
+ }
248
+ .properties {
249
+ display: grid;
250
+ grid-template-columns: 80px 1fr;
251
+ gap: var(--space_xs2);
252
+ margin-bottom: var(--space_lg);
253
+ }
254
+ .title {
255
+ text-align: right;
256
+ }
257
+ .content {
258
+ display: flex;
259
+ }
260
+ .content a {
261
+ display: flex;
262
+ align-items: center;
263
+ margin-left: var(--space_xs);
264
+ }
265
+ .module {
266
+ margin-bottom: var(--space_xs);
267
+ --link_color: var(--text_color_3);
268
+ }
269
+ .module_content {
270
+ background-color: var(--bg_3);
271
+ border-radius: var(--border_radius_sm);
272
+ padding: var(--space_xs);
273
+ }
274
+ /* TODO probably add variables/classes for these */
275
+ .ts {
276
+ --link_color: var(--color_a_5);
277
+ }
278
+ .svelte {
279
+ --link_color: var(--color_h_5);
280
+ }
281
+ .css {
282
+ --link_color: var(--color_b_5);
283
+ }
284
+ .json {
285
+ --link_color: var(--color_f_5);
286
+ }
287
+ /* TODO extract */
288
+ .declarations {
289
+ display: flex;
290
+ flex: 1;
291
+ flex-direction: row;
292
+ flex-wrap: wrap;
293
+ align-items: flex-start;
294
+ gap: var(--space_xs) 0;
295
+ padding-top: var(--space_xs);
296
+ }
297
+ </style>
@@ -0,0 +1,15 @@
1
+ import type { Snippet } from 'svelte';
2
+ import type { Library } from './library.svelte.js';
3
+ type $$ComponentProps = {
4
+ library: Library;
5
+ repo_name?: Snippet<[repo_name: string]>;
6
+ description?: Snippet<[description: string]>;
7
+ motto?: Snippet<[description: string]>;
8
+ npm_url?: Snippet<[npm_url: string]>;
9
+ homepage_url?: Snippet<[homepage_url: string]>;
10
+ children?: Snippet<[library: Library]>;
11
+ };
12
+ declare const LibraryDetail: import("svelte").Component<$$ComponentProps, {}, "">;
13
+ type LibraryDetail = ReturnType<typeof LibraryDetail>;
14
+ export default LibraryDetail;
15
+ //# sourceMappingURL=LibraryDetail.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LibraryDetail.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/LibraryDetail.svelte"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AAEpC,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAYhD,KAAK,gBAAgB,GAAI;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7C,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;CACvC,CAAC;AAuKH,QAAA,MAAM,aAAa,sDAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
@@ -0,0 +1,151 @@
1
+ <script lang="ts">
2
+ import {page} from '$app/state';
3
+ import type {Snippet} from 'svelte';
4
+ import {format_url} from '@fuzdev/fuz_util/url.js';
5
+
6
+ import type {Library} from './library.svelte.js';
7
+ import ImgOrSvg from './ImgOrSvg.svelte';
8
+
9
+ const {
10
+ library,
11
+ repo_name,
12
+ logo,
13
+ motto,
14
+ description,
15
+ npm_url,
16
+ homepage_url,
17
+ children,
18
+ }: {
19
+ library: Library;
20
+ repo_name?: Snippet<[repo_name: string]>;
21
+ logo?: Snippet<[logo_url: string, logo_alt: string]>;
22
+ motto?: Snippet<[motto: string, glyph?: string]>;
23
+ description?: Snippet<[description: string, glyph?: string]>;
24
+ npm_url?: Snippet<[npm_url: string]>;
25
+ homepage_url?: Snippet<[homepage_url: string]>;
26
+ children?: Snippet;
27
+ } = $props();
28
+
29
+ const {package_json} = $derived(library);
30
+ </script>
31
+
32
+ <div class="library_summary">
33
+ <!-- TODO maybe continue this snippet pattern, or maybe simplify? -->
34
+ <header class="box">
35
+ {#if repo_name}
36
+ {@render repo_name(library.repo_name)}
37
+ {:else}
38
+ <div class="repo_name">{library.repo_name}</div>
39
+ {/if}
40
+ <!-- TODO maybe add `icon_alt` to package.json -->
41
+ <!-- TODO what about svg logos? maybe a package.json logo url that defaults to favicon? -->
42
+ {#if library.logo_url}
43
+ {#if logo}
44
+ {@render logo(library.logo_url, library.logo_alt)}
45
+ {:else}
46
+ <ImgOrSvg
47
+ src={library.logo_url}
48
+ label={library.logo_alt}
49
+ size="var(--font_size, var(--icon_size_xl2))"
50
+ />
51
+ {/if}
52
+ {/if}
53
+ </header>
54
+ {#if package_json.motto}
55
+ {#if motto}
56
+ {@render motto(package_json.motto, package_json.glyph)}
57
+ {:else}
58
+ <blockquote class="px_xl">
59
+ {package_json.motto}
60
+ {package_json.glyph}
61
+ </blockquote>
62
+ {/if}
63
+ {/if}
64
+ {#if package_json.description}
65
+ {#if description}
66
+ {@render description(package_json.description, package_json.glyph)}
67
+ {:else}
68
+ <p class="text_align_center">
69
+ {package_json.description}
70
+ {#if !package_json.motto}
71
+ {package_json.glyph}
72
+ {/if}
73
+ </p>
74
+ {/if}
75
+ {/if}
76
+ {@render children?.()}
77
+ {#if library.homepage_url}
78
+ {#if homepage_url}
79
+ {@render homepage_url(library.homepage_url)}
80
+ {:else}
81
+ <div class="homepage_url">
82
+ <!-- eslint-disable svelte/no-navigation-without-resolve -->
83
+ <a
84
+ class="chip"
85
+ class:selected={library.homepage_url === page.url.href}
86
+ href={library.homepage_url}>{format_url(library.homepage_url)}</a
87
+ >
88
+ <!-- eslint-enable svelte/no-navigation-without-resolve -->
89
+ </div>
90
+ {/if}
91
+ {/if}
92
+ <div class="links">
93
+ {#if library.repo_url}
94
+ <!-- eslint-disable-next-line svelte/no-navigation-without-resolve -->
95
+ <a class="chip" href={library.repo_url}>repo</a>
96
+ {/if}
97
+ {#if library.changelog_url}
98
+ <!-- eslint-disable-next-line svelte/no-navigation-without-resolve -->
99
+ <a class="chip" title="version" href={library.changelog_url}>{package_json.version}</a>
100
+ {/if}
101
+ {#if library.npm_url}
102
+ <!-- eslint-disable-next-line svelte/no-navigation-without-resolve -->
103
+ <a class="chip" href={library.npm_url}>npm</a>
104
+ {/if}
105
+ </div>
106
+ {#if library.npm_url}
107
+ {#if npm_url}
108
+ {@render npm_url(library.npm_url)}
109
+ {:else}
110
+ <blockquote class="npm_url">npm i -D {package_json.name}</blockquote>
111
+ {/if}
112
+ {/if}
113
+ <!-- TODO more details behind a `<details>`, including author -->
114
+ </div>
115
+
116
+ <!-- TODO better rendering, also show author, etc -->
117
+
118
+ <style>
119
+ .library_summary {
120
+ padding: var(--space_lg);
121
+ display: flex;
122
+ flex-direction: column;
123
+ align-items: center;
124
+ max-width: var(--max_width, var(--distance_sm));
125
+ }
126
+ header {
127
+ margin-bottom: var(--space_lg);
128
+ }
129
+ .links {
130
+ display: flex;
131
+ margin-bottom: var(--space_lg);
132
+ }
133
+ .homepage_url {
134
+ margin-bottom: var(--space_lg);
135
+ }
136
+ .repo_name {
137
+ font-family: var(--font_family_serif);
138
+ font-size: var(--font_size_xl2);
139
+ font-weight: 400;
140
+ text-align: center;
141
+ margin-bottom: var(--space_lg);
142
+ }
143
+ .npm_url {
144
+ font-family: var(--font_family_mono);
145
+ text-align: center;
146
+ }
147
+ .chip {
148
+ margin-left: var(--space_xs2);
149
+ margin-right: var(--space_xs2);
150
+ }
151
+ </style>
@@ -0,0 +1,16 @@
1
+ import type { Snippet } from 'svelte';
2
+ import type { Library } from './library.svelte.js';
3
+ type $$ComponentProps = {
4
+ library: Library;
5
+ repo_name?: Snippet<[repo_name: string]>;
6
+ logo?: Snippet<[logo_url: string, logo_alt: string]>;
7
+ motto?: Snippet<[motto: string, glyph?: string]>;
8
+ description?: Snippet<[description: string, glyph?: string]>;
9
+ npm_url?: Snippet<[npm_url: string]>;
10
+ homepage_url?: Snippet<[homepage_url: string]>;
11
+ children?: Snippet;
12
+ };
13
+ declare const LibrarySummary: import("svelte").Component<$$ComponentProps, {}, "">;
14
+ type LibrarySummary = ReturnType<typeof LibrarySummary>;
15
+ export default LibrarySummary;
16
+ //# sourceMappingURL=LibrarySummary.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LibrarySummary.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/LibrarySummary.svelte"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AAGpC,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAGhD,KAAK,gBAAgB,GAAI;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IACrD,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACjD,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAyGH,QAAA,MAAM,cAAc,sDAAwC,CAAC;AAC7D,KAAK,cAAc,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AACxD,eAAe,cAAc,CAAC"}
@@ -0,0 +1,40 @@
1
+ <script lang="ts">
2
+ import {strip_end, strip_start} from '@fuzdev/fuz_util/string.js';
3
+ import type {SvelteHTMLElements} from 'svelte/elements';
4
+
5
+ import Svg from './Svg.svelte';
6
+ import {mdn_logo} from './logos.js';
7
+
8
+ const {
9
+ path,
10
+ children,
11
+ class: class_prop,
12
+ ...rest
13
+ }: SvelteHTMLElements['a'] & {
14
+ path: string;
15
+ } = $props();
16
+
17
+ const href = $derived(
18
+ path.startsWith('https://')
19
+ ? path
20
+ : `https://developer.mozilla.org/en-US/docs/${strip_start(path, '/')}`,
21
+ );
22
+
23
+ const final_children = $derived(children ?? strip_end(path, '/').split('/').at(-1)!);
24
+ </script>
25
+
26
+ <!-- TODO -next-line doesnt work? -->
27
+ <!-- eslint-disable svelte/no-navigation-without-resolve -->
28
+ <a {...rest} {href} class="mdn_link chip white_space_nowrap {class_prop}" rel="noopener"
29
+ ><Svg
30
+ data={mdn_logo}
31
+ inline
32
+ size="var(--icon_size_xs)"
33
+ attrs={{class: 'mx_xs3 vertical_align_middle'}}
34
+ />
35
+ {#if typeof final_children === 'string'}
36
+ <span class="font_family_mono">{final_children}</span>
37
+ {:else}
38
+ {@render final_children()}
39
+ {/if}</a
40
+ >
@@ -0,0 +1,8 @@
1
+ import type { SvelteHTMLElements } from 'svelte/elements';
2
+ type $$ComponentProps = SvelteHTMLElements['a'] & {
3
+ path: string;
4
+ };
5
+ declare const MdnLink: import("svelte").Component<$$ComponentProps, {}, "">;
6
+ type MdnLink = ReturnType<typeof MdnLink>;
7
+ export default MdnLink;
8
+ //# sourceMappingURL=MdnLink.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MdnLink.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/MdnLink.svelte"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAKvD,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG;IAClD,IAAI,EAAE,MAAM,CAAC;CACb,CAAC;AAmCH,QAAA,MAAM,OAAO,sDAAwC,CAAC;AACtD,KAAK,OAAO,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC;AAC1C,eAAe,OAAO,CAAC"}
@@ -0,0 +1,30 @@
1
+ <script lang="ts">
2
+ import type {SvelteHTMLElements} from 'svelte/elements';
3
+
4
+ import {mdz_parse} from './mdz.js';
5
+ import MdzNodeView from './MdzNodeView.svelte';
6
+
7
+ const {
8
+ content,
9
+ inline = false,
10
+ nowrap = false,
11
+ ...rest
12
+ }: (SvelteHTMLElements['div'] | SvelteHTMLElements['span']) & {
13
+ content: string;
14
+ inline?: boolean;
15
+ nowrap?: boolean;
16
+ } = $props();
17
+
18
+ const nodes = $derived(mdz_parse(content));
19
+ </script>
20
+
21
+ <svelte:element
22
+ this={inline ? 'span' : 'div'}
23
+ {...rest}
24
+ class:white_space_pre={nowrap}
25
+ class:white_space_pre_wrap={!nowrap}
26
+ >
27
+ {#each nodes as node (node)}
28
+ <MdzNodeView {node} />
29
+ {/each}
30
+ </svelte:element>
@@ -0,0 +1,10 @@
1
+ import type { SvelteHTMLElements } from 'svelte/elements';
2
+ type $$ComponentProps = (SvelteHTMLElements['div'] | SvelteHTMLElements['span']) & {
3
+ content: string;
4
+ inline?: boolean;
5
+ nowrap?: boolean;
6
+ };
7
+ declare const Mdz: import("svelte").Component<$$ComponentProps, {}, "">;
8
+ type Mdz = ReturnType<typeof Mdz>;
9
+ export default Mdz;
10
+ //# sourceMappingURL=Mdz.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Mdz.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Mdz.svelte"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAKvD,KAAK,gBAAgB,GAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAyBH,QAAA,MAAM,GAAG,sDAAwC,CAAC;AAClD,KAAK,GAAG,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC;AAClC,eAAe,GAAG,CAAC"}