@fuzdev/fuz_ui 0.206.7 → 0.206.9

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 (221) hide show
  1. package/README.md +3 -3
  2. package/dist/Alert.svelte +21 -25
  3. package/dist/Alert.svelte.d.ts.map +1 -1
  4. package/dist/ApiDeclarationList.svelte +2 -2
  5. package/dist/ApiDeclarationList.svelte.d.ts.map +1 -1
  6. package/dist/ApiIndex.svelte +4 -4
  7. package/dist/ApiIndex.svelte.d.ts.map +1 -1
  8. package/dist/ApiModule.svelte +13 -10
  9. package/dist/ApiModule.svelte.d.ts.map +1 -1
  10. package/dist/ApiModulesList.svelte +2 -2
  11. package/dist/ApiModulesList.svelte.d.ts.map +1 -1
  12. package/dist/Breadcrumb.svelte +31 -19
  13. package/dist/Breadcrumb.svelte.d.ts.map +1 -1
  14. package/dist/Card.svelte +17 -17
  15. package/dist/Card.svelte.d.ts.map +1 -1
  16. package/dist/ColorSchemeInput.svelte +6 -6
  17. package/dist/ColorSchemeInput.svelte.d.ts.map +1 -1
  18. package/dist/Contextmenu.svelte +6 -4
  19. package/dist/Contextmenu.svelte.d.ts.map +1 -1
  20. package/dist/ContextmenuEntry.svelte +8 -8
  21. package/dist/ContextmenuEntry.svelte.d.ts.map +1 -1
  22. package/dist/ContextmenuIcon.svelte +3 -3
  23. package/dist/ContextmenuIcon.svelte.d.ts.map +1 -1
  24. package/dist/ContextmenuLinkEntry.svelte +14 -14
  25. package/dist/ContextmenuLinkEntry.svelte.d.ts.map +1 -1
  26. package/dist/ContextmenuMenu.svelte +10 -10
  27. package/dist/ContextmenuMenu.svelte.d.ts.map +1 -1
  28. package/dist/ContextmenuRoot.svelte +7 -7
  29. package/dist/ContextmenuRootForSafariCompatibility.svelte +15 -15
  30. package/dist/ContextmenuSeparator.svelte +2 -2
  31. package/dist/ContextmenuSubmenu.svelte +15 -12
  32. package/dist/ContextmenuSubmenu.svelte.d.ts.map +1 -1
  33. package/dist/ContextmenuTextEntry.svelte +4 -4
  34. package/dist/ContextmenuTextEntry.svelte.d.ts.map +1 -1
  35. package/dist/CopyToClipboard.svelte +7 -7
  36. package/dist/CopyToClipboard.svelte.d.ts.map +1 -1
  37. package/dist/DeclarationDetail.svelte +35 -28
  38. package/dist/DeclarationDetail.svelte.d.ts.map +1 -1
  39. package/dist/DeclarationLink.svelte +7 -7
  40. package/dist/DeclarationLink.svelte.d.ts.map +1 -1
  41. package/dist/Details.svelte +3 -3
  42. package/dist/Details.svelte.d.ts.map +1 -1
  43. package/dist/Dialog.svelte +7 -7
  44. package/dist/Dialog.svelte.d.ts.map +1 -1
  45. package/dist/DialogContent.svelte +6 -6
  46. package/dist/DialogContent.svelte.d.ts.map +1 -1
  47. package/dist/Docs.svelte +14 -12
  48. package/dist/Docs.svelte.d.ts.map +1 -1
  49. package/dist/DocsContent.svelte +4 -4
  50. package/dist/DocsContent.svelte.d.ts.map +1 -1
  51. package/dist/DocsFooter.svelte +7 -8
  52. package/dist/DocsFooter.svelte.d.ts.map +1 -1
  53. package/dist/DocsLink.svelte +24 -21
  54. package/dist/DocsLink.svelte.d.ts.map +1 -1
  55. package/dist/DocsList.svelte +3 -3
  56. package/dist/DocsList.svelte.d.ts.map +1 -1
  57. package/dist/DocsMenu.svelte +13 -10
  58. package/dist/DocsMenu.svelte.d.ts.map +1 -1
  59. package/dist/DocsMenuHeader.svelte +2 -2
  60. package/dist/DocsMenuHeader.svelte.d.ts.map +1 -1
  61. package/dist/DocsPageLinks.svelte +9 -7
  62. package/dist/DocsPageLinks.svelte.d.ts.map +1 -1
  63. package/dist/DocsPrimaryNav.svelte +5 -5
  64. package/dist/DocsPrimaryNav.svelte.d.ts.map +1 -1
  65. package/dist/DocsSearch.svelte +3 -3
  66. package/dist/DocsSearch.svelte.d.ts.map +1 -1
  67. package/dist/DocsSecondaryNav.svelte +3 -3
  68. package/dist/DocsSecondaryNav.svelte.d.ts.map +1 -1
  69. package/dist/DocsTertiaryNav.svelte +8 -8
  70. package/dist/DocsTertiaryNav.svelte.d.ts.map +1 -1
  71. package/dist/EcosystemLinks.svelte +3 -3
  72. package/dist/EcosystemLinks.svelte.d.ts.map +1 -1
  73. package/dist/EcosystemLinksPanel.svelte +2 -2
  74. package/dist/EcosystemLinksPanel.svelte.d.ts.map +1 -1
  75. package/dist/GithubLink.svelte +10 -10
  76. package/dist/GithubLink.svelte.d.ts.map +1 -1
  77. package/dist/Glyph.svelte +4 -2
  78. package/dist/Glyph.svelte.d.ts.map +1 -1
  79. package/dist/Hashlink.svelte +5 -5
  80. package/dist/Hashlink.svelte.d.ts.map +1 -1
  81. package/dist/HueInput.svelte +5 -5
  82. package/dist/HueInput.svelte.d.ts.map +1 -1
  83. package/dist/ImgOrSvg.svelte +20 -20
  84. package/dist/ImgOrSvg.svelte.d.ts.map +1 -1
  85. package/dist/LibraryDetail.svelte +16 -16
  86. package/dist/LibraryDetail.svelte.d.ts.map +1 -1
  87. package/dist/LibrarySummary.svelte +10 -8
  88. package/dist/LibrarySummary.svelte.d.ts.map +1 -1
  89. package/dist/MdnLink.svelte +8 -8
  90. package/dist/MdnLink.svelte.d.ts.map +1 -1
  91. package/dist/ModuleLink.svelte +5 -5
  92. package/dist/ModuleLink.svelte.d.ts.map +1 -1
  93. package/dist/PasteFromClipboard.svelte +1 -1
  94. package/dist/PasteFromClipboard.svelte.d.ts.map +1 -1
  95. package/dist/PendingAnimation.svelte +12 -11
  96. package/dist/PendingAnimation.svelte.d.ts.map +1 -1
  97. package/dist/PendingButton.svelte +3 -3
  98. package/dist/PendingButton.svelte.d.ts.map +1 -1
  99. package/dist/ProjectActivityChart.svelte +137 -0
  100. package/dist/ProjectActivityChart.svelte.d.ts +30 -0
  101. package/dist/ProjectActivityChart.svelte.d.ts.map +1 -0
  102. package/dist/ProjectLinks.svelte +29 -48
  103. package/dist/ProjectLinks.svelte.d.ts.map +1 -1
  104. package/dist/Redirect.svelte +12 -8
  105. package/dist/Redirect.svelte.d.ts.map +1 -1
  106. package/dist/Sparkline.svelte +131 -0
  107. package/dist/Sparkline.svelte.d.ts +42 -0
  108. package/dist/Sparkline.svelte.d.ts.map +1 -0
  109. package/dist/Spiders.svelte +5 -5
  110. package/dist/Spiders.svelte.d.ts.map +1 -1
  111. package/dist/StyleVariableButton.svelte +6 -6
  112. package/dist/StyleVariableButton.svelte.d.ts.map +1 -1
  113. package/dist/Svg.svelte +5 -5
  114. package/dist/Svg.svelte.d.ts.map +1 -1
  115. package/dist/Teleport.svelte +2 -2
  116. package/dist/Teleport.svelte.d.ts.map +1 -1
  117. package/dist/ThemeInput.svelte +10 -8
  118. package/dist/ThemeInput.svelte.d.ts.map +1 -1
  119. package/dist/ThemeRoot.svelte +10 -11
  120. package/dist/ThemeRoot.svelte.d.ts.map +1 -1
  121. package/dist/TomeContent.svelte +11 -11
  122. package/dist/TomeContent.svelte.d.ts.map +1 -1
  123. package/dist/TomeHeader.svelte +6 -6
  124. package/dist/TomeLink.svelte +7 -7
  125. package/dist/TomeLink.svelte.d.ts.map +1 -1
  126. package/dist/TomeSection.svelte +8 -8
  127. package/dist/TomeSection.svelte.d.ts.map +1 -1
  128. package/dist/TomeSectionHeader.svelte +12 -12
  129. package/dist/TomeSectionHeader.svelte.d.ts.map +1 -1
  130. package/dist/TypeLink.svelte +11 -11
  131. package/dist/TypeLink.svelte.d.ts.map +1 -1
  132. package/dist/alert.js +1 -1
  133. package/dist/api_search.svelte.d.ts.map +1 -1
  134. package/dist/api_search.svelte.js +5 -7
  135. package/dist/autofocus.svelte.d.ts.map +1 -1
  136. package/dist/context_helpers.js +1 -1
  137. package/dist/contextmenu_helpers.d.ts.map +1 -1
  138. package/dist/contextmenu_helpers.js +3 -3
  139. package/dist/contextmenu_state.svelte.d.ts.map +1 -1
  140. package/dist/contextmenu_state.svelte.js +4 -4
  141. package/dist/csp.d.ts.map +1 -1
  142. package/dist/csp.js +27 -27
  143. package/dist/csp_of_fuzdev.d.ts.map +1 -1
  144. package/dist/csp_of_fuzdev.js +1 -1
  145. package/dist/declaration.svelte.d.ts +44 -256
  146. package/dist/declaration.svelte.d.ts.map +1 -1
  147. package/dist/declaration.svelte.js +132 -52
  148. package/dist/declaration_contextmenu.d.ts.map +1 -1
  149. package/dist/declaration_contextmenu.js +2 -2
  150. package/dist/docs_helpers.svelte.d.ts.map +1 -1
  151. package/dist/icons.js +200 -200
  152. package/dist/intersect.svelte.d.ts.map +1 -1
  153. package/dist/library.svelte.d.ts +31 -18
  154. package/dist/library.svelte.d.ts.map +1 -1
  155. package/dist/library.svelte.js +76 -21
  156. package/dist/logos.js +42 -42
  157. package/dist/module.svelte.d.ts +30 -37
  158. package/dist/module.svelte.d.ts.map +1 -1
  159. package/dist/module.svelte.js +88 -35
  160. package/dist/module_contextmenu.d.ts.map +1 -1
  161. package/dist/module_contextmenu.js +2 -2
  162. package/dist/project_stats.d.ts +121 -0
  163. package/dist/project_stats.d.ts.map +1 -0
  164. package/dist/project_stats.js +153 -0
  165. package/dist/project_stats_data.d.ts +3 -0
  166. package/dist/project_stats_data.d.ts.map +1 -0
  167. package/dist/project_stats_data.js +469 -0
  168. package/dist/project_stats_update.task.d.ts +4 -0
  169. package/dist/project_stats_update.task.d.ts.map +1 -0
  170. package/dist/project_stats_update.task.js +50 -0
  171. package/dist/projects.d.ts +17 -0
  172. package/dist/projects.d.ts.map +1 -0
  173. package/dist/projects.js +20 -0
  174. package/dist/publish.task.d.ts +3 -0
  175. package/dist/publish.task.d.ts.map +1 -0
  176. package/dist/publish.task.js +23 -0
  177. package/dist/site.svelte.d.ts.map +1 -1
  178. package/dist/sparkline.d.ts +102 -0
  179. package/dist/sparkline.d.ts.map +1 -0
  180. package/dist/sparkline.js +63 -0
  181. package/dist/style_variable_helpers.svelte.d.ts.map +1 -1
  182. package/dist/svg.d.ts.map +1 -1
  183. package/dist/theme_state.svelte.d.ts.map +1 -1
  184. package/dist/theme_state.svelte.js +1 -1
  185. package/dist/tome.d.ts.map +1 -1
  186. package/dist/tome.js +1 -1
  187. package/dist/vite_plugin_pkg_json.d.ts.map +1 -1
  188. package/dist/vite_plugin_pkg_json.js +1 -1
  189. package/package.json +3 -22
  190. package/src/lib/alert.ts +3 -3
  191. package/src/lib/api_search.svelte.ts +9 -11
  192. package/src/lib/autofocus.svelte.ts +2 -2
  193. package/src/lib/context_helpers.ts +2 -2
  194. package/src/lib/contextmenu_helpers.ts +21 -21
  195. package/src/lib/contextmenu_state.svelte.ts +32 -34
  196. package/src/lib/csp.ts +42 -54
  197. package/src/lib/csp_of_fuzdev.ts +2 -2
  198. package/src/lib/declaration.svelte.ts +157 -62
  199. package/src/lib/declaration_contextmenu.ts +5 -5
  200. package/src/lib/dialog.ts +1 -1
  201. package/src/lib/docs_helpers.svelte.ts +9 -9
  202. package/src/lib/icons.ts +205 -205
  203. package/src/lib/intersect.svelte.ts +5 -5
  204. package/src/lib/library.svelte.ts +103 -36
  205. package/src/lib/library_helpers.ts +2 -2
  206. package/src/lib/logos.ts +43 -43
  207. package/src/lib/module.svelte.ts +98 -49
  208. package/src/lib/module_contextmenu.ts +4 -4
  209. package/src/lib/project_stats.ts +220 -0
  210. package/src/lib/project_stats_data.ts +472 -0
  211. package/src/lib/project_stats_update.task.ts +53 -0
  212. package/src/lib/projects.ts +49 -0
  213. package/src/lib/publish.task.ts +22 -0
  214. package/src/lib/site.svelte.ts +5 -5
  215. package/src/lib/sparkline.ts +173 -0
  216. package/src/lib/storage.ts +2 -2
  217. package/src/lib/style_variable_helpers.svelte.ts +2 -2
  218. package/src/lib/svg.ts +2 -2
  219. package/src/lib/theme_state.svelte.ts +8 -8
  220. package/src/lib/tome.ts +8 -8
  221. package/src/lib/vite_plugin_pkg_json.ts +8 -8
@@ -1,49 +1,15 @@
1
1
  <script lang="ts">
2
2
  import Svg from './Svg.svelte';
3
- import type {SvgData} from './svg.js';
4
- import {
5
- // TODO when fuz.dev is ready
6
- // logo_fuz,
7
- logo_fuz_ui,
8
- logo_fuz_code,
9
- logo_fuz_blog,
10
- logo_fuz_mastodon,
11
- logo_fuz_gitops,
12
- logo_fuz_template,
13
- logo_fuz_css,
14
- logo_fuz_util,
15
- logo_gro,
16
- logo_svelte_docinfo,
17
- logo_fuz_app,
18
- logo_tsv,
19
- } from './logos.js';
3
+ import Sparkline from './Sparkline.svelte';
4
+ import { project_items, type ProjectItem } from './projects.js';
5
+ import { project_stats_data } from './project_stats_data.js';
6
+ import { project_stats_label, project_stats_to_monthly_series } from './project_stats.js';
20
7
 
21
- // TODO refactor
22
- interface ProjectItem {
23
- name: string;
24
- url: string;
25
- logo: SvgData;
26
- description: string;
27
- glyph: string;
28
- color_class: string;
29
- }
30
-
31
- // TODO ideally this wouldn't duplicate metadata like descriptions, but adding fuz_gitops to this repo is heavy
32
- // prettier-ignore
33
- const project_items: Array<ProjectItem> = [
34
- {name: 'fuz_app', url: 'https://app.fuz.dev/', logo: logo_fuz_app, description: '[pre-alpha] fullstack app library', glyph: '🗝', color_class: 'color_j_50'},
35
- {name: 'fuz_css', url: 'https://css.fuz.dev/', logo: logo_fuz_css, description: 'CSS framework and design system for semantic HTML', glyph: '🌿', color_class: 'color_b_50'},
36
- {name: 'fuz_ui', url: 'https://ui.fuz.dev/', logo: logo_fuz_ui, description: 'Svelte UI library', glyph: '🧶', color_class: 'color_c_50'},
37
- {name: 'fuz_template', url: 'https://template.fuz.dev/', logo: logo_fuz_template, description: 'a static web app and Node library template with TypeScript, Svelte, SvelteKit, Vite, esbuild, Gro, and Fuz', glyph: '❄', color_class: 'color_h_50'},
38
- {name: 'fuz_blog', url: 'https://blog.fuz.dev/', logo: logo_fuz_blog, description: 'blog software from scratch with SvelteKit', glyph: '🖊️', color_class: 'color_e_50'},
39
- {name: 'fuz_code', url: 'https://code.fuz.dev/', logo: logo_fuz_code, description: 'syntax styling utilities and components for TypeScript, Svelte, Markdown, and more', glyph: '🎨', color_class: 'color_g_50'},
40
- {name: 'fuz_mastodon', url: 'https://mastodon.fuz.dev/', logo: logo_fuz_mastodon, description: 'Mastodon components and helpers for Svelte, SvelteKit, and Fuz', glyph: '🦣', color_class: 'color_d_50'},
41
- {name: 'fuz_gitops', url: 'https://gitops.fuz.dev/', logo: logo_fuz_gitops, description: 'a tool for managing many repos', glyph: '🪄', color_class: 'color_a_50'},
42
- {name: 'svelte-docinfo', url: 'https://svelte-docinfo.fuz.dev/', logo: logo_svelte_docinfo, description: 'static analysis for TypeScript and Svelte', glyph: '📜', color_class: 'color_i_50'},
43
- {name: 'fuz_util', url: 'https://util.fuz.dev/', logo: logo_fuz_util, description: 'utility belt for JS', glyph: '🦕', color_class: 'color_f_50'},
44
- {name: 'gro', url: 'https://github.com/fuzdev/gro', logo: logo_gro, description: 'task runner and toolkit extending SvelteKit', glyph: '🌰', color_class: 'color_f_50'},
45
- {name: 'tsv', url: 'https://tsv.fuz.dev/', logo: logo_tsv, description: 'precise language tools for TypeScript/JS, CSS, and Svelte in Rust', glyph: '🪶', color_class: 'color_h_50'},
46
- ];
8
+ const { series, max } = project_stats_to_monthly_series(project_stats_data);
9
+ const series_by_name = new Map(series.map((s) => [s.name, s.counts]));
10
+ const label_by_name = new Map(
11
+ project_stats_data.projects.map((p) => [p.name, project_stats_label(p)])
12
+ );
47
13
  </script>
48
14
 
49
15
  <h2 class="mt_0 mb_xl2">Packages</h2>
@@ -52,19 +18,31 @@
52
18
  {@render package_thumbnail(project_item)}
53
19
  {/each}
54
20
  </menu>
21
+ <small class="display:block text-align:right">
22
+ the charts show public commit activity<br />since Gro planted on August 7, 2019
23
+ </small>
55
24
 
56
25
  {#snippet package_thumbnail(project_item: ProjectItem)}
26
+ {@const counts = series_by_name.get(project_item.name)}
57
27
  <!-- eslint-disable-next-line svelte/no-navigation-without-resolve -->
58
- <a class="thumbnail row shade_00 px_md py_xs border_radius_sm mb_lg" href={project_item.url}
59
- ><Svg shrink={false} data={project_item.logo} size="var(--icon_size_lg)" />
28
+ <a class="thumbnail row shade_00 px_md py_xs border_radius_sm mb_lg" href={project_item.url}>
29
+ <Svg shrink={false} data={project_item.logo} size="var(--icon_size_lg)" />
60
30
  <div class="pl_lg width_atmost_sm">
61
- <div class="thumbnail-name {project_item.color_class}">{project_item.name}</div>
31
+ <div class="thumbnail-name row align-items:start {project_item.color_class}">
32
+ {project_item.name}
33
+ {#if counts}
34
+ {@const stats_label = label_by_name.get(project_item.name)}
35
+ <div class="thumbnail-sparkline pl_md {project_item.color_class}" title={stats_label}>
36
+ <Sparkline values={counts} {max} scale={1 / 3} end_dot label={stats_label} />
37
+ </div>
38
+ {/if}
39
+ </div>
62
40
  <div class="thumbnail-description font_size_md text_70 font-weight:500">
63
41
  {project_item.description}
64
42
  {project_item.glyph}
65
43
  </div>
66
- </div></a
67
- >
44
+ </div>
45
+ </a>
68
46
  {/snippet}
69
47
 
70
48
  <style>
@@ -101,4 +79,7 @@
101
79
  transparent
102
80
  );
103
81
  }
82
+ .thumbnail-sparkline {
83
+ margin-left: auto;
84
+ }
104
85
  </style>
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectLinks.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/ProjectLinks.svelte"],"names":[],"mappings":"AA8EA,UAAU,kCAAkC,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,GAAG,MAAM;IACpM,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IACtG,YAAY,CAAC,EAAE,QAAQ,CAAC;CAC3B;AAKD,QAAA,MAAM,YAAY;;kBAA+E,CAAC;AAChF,KAAK,YAAY,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,CAAC;AACxD,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ProjectLinks.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/ProjectLinks.svelte"],"names":[],"mappings":"AA4DA,UAAU,kCAAkC,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,GAAG,MAAM;IACpM,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IACtG,YAAY,CAAC,EAAE,QAAQ,CAAC;CAC3B;AAKD,QAAA,MAAM,YAAY;;kBAA+E,CAAC;AAChF,KAAK,YAAY,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,CAAC;AACxD,eAAe,YAAY,CAAC"}
@@ -1,14 +1,14 @@
1
1
  <script lang="ts">
2
- import {page} from '$app/state';
3
- import {strip_start} from '@fuzdev/fuz_util/string.ts';
4
- import {goto} from '$app/navigation';
5
- import {onMount, type Snippet} from 'svelte';
2
+ import { page } from '$app/state';
3
+ import { strip_start } from '@fuzdev/fuz_util/string.ts';
4
+ import { goto } from '$app/navigation';
5
+ import { onMount, type Snippet } from 'svelte';
6
6
 
7
7
  const {
8
8
  host = '',
9
9
  path = page.url.pathname,
10
10
  auto = true,
11
- children,
11
+ children
12
12
  }: {
13
13
  /**
14
14
  * The target host to redirect to. Defaults to `''` (relative URL).
@@ -28,7 +28,7 @@
28
28
  const url = $derived(host + path);
29
29
 
30
30
  onMount(() => {
31
- if (auto) void goto(url, {replaceState: true}); // eslint-disable-line svelte/no-navigation-without-resolve
31
+ if (auto) void goto(url, { replaceState: true }); // eslint-disable-line svelte/no-navigation-without-resolve
32
32
  });
33
33
  </script>
34
34
 
@@ -36,7 +36,11 @@
36
36
  {#if auto}<meta http-equiv="refresh" content="0; URL={url}" />{/if}
37
37
  </svelte:head>
38
38
 
39
- {#if children}{@render children(url)}{:else}<p>
39
+ {#if children}
40
+ {@render children(url)}
41
+ {:else}
42
+ <p>
40
43
  <!-- eslint-disable-next-line svelte/no-navigation-without-resolve -->
41
44
  redirect to <a href={url}>{strip_start(url, 'https://')}</a>
42
- </p>{/if}
45
+ </p>
46
+ {/if}
@@ -1 +1 @@
1
- {"version":3,"file":"Redirect.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Redirect.svelte"],"names":[],"mappings":"AAMA,OAAO,EAAU,KAAK,OAAO,EAAC,MAAM,QAAQ,CAAC;AAE5C,KAAK,gBAAgB,GAAI;IACxB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;CAClC,CAAC;AAgCH,QAAA,MAAM,QAAQ,sDAAwC,CAAC;AACvD,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC5C,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Redirect.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Redirect.svelte"],"names":[],"mappings":"AAMA,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE9C,KAAK,gBAAgB,GAAI;IACxB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;CAClC,CAAC;AAoCH,QAAA,MAAM,QAAQ,sDAAwC,CAAC;AACvD,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC5C,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,131 @@
1
+ <script lang="ts">
2
+ import type { OmitStrict } from '@fuzdev/fuz_util/types.ts';
3
+ import type { SvelteHTMLElements } from 'svelte/elements';
4
+
5
+ import { sparkline_geometry, type SparklineScale } from './sparkline.js';
6
+
7
+ /**
8
+ * Renders values as a small inline SVG line graph.
9
+ *
10
+ * Designed for comparable small multiples: pass a shared `max` so a set of
11
+ * sparklines renders at the same vertical scale instead of each stretching
12
+ * to fit. The stroke uses `currentColor`, so color it by setting `color` on
13
+ * the component or a parent (e.g. a fuz_css `color_*` class). Each point's
14
+ * stroke alpha scales with its value, from `alpha_floor` at 0 up to 1 at
15
+ * `max`, de-emphasizing quiet stretches.
16
+ *
17
+ * `scale` controls only the geometry: the nonlinear options compress the
18
+ * top of the range so small values stay legible under a large shared
19
+ * `max`, while the alpha fade keeps tracking the linear ratio so it still
20
+ * encodes true magnitude.
21
+ *
22
+ * The background is a light wash of `currentColor`, overridable with the
23
+ * `--sparkline_bg` custom property.
24
+ *
25
+ * @module
26
+ */
27
+
28
+ const {
29
+ values,
30
+ max,
31
+ scale = 'linear',
32
+ width = 100,
33
+ height = 24,
34
+ stroke_width = 2,
35
+ alpha_floor = 0.4,
36
+ end_dot = false,
37
+ label,
38
+ ...rest
39
+ }: OmitStrict<SvelteHTMLElements['svg'], 'values' | 'width' | 'height' | 'scale'> & {
40
+ values: Array<number>;
41
+ /**
42
+ * The value rendered at full height and full alpha.
43
+ * Pass a shared max across sparklines for comparable scales.
44
+ * Defaults to the local max of `values`.
45
+ */
46
+ max?: number;
47
+ /**
48
+ * Vertical scale for the line's geometry — see `SparklineScale`.
49
+ * The alpha fade always tracks the linear ratio regardless of `scale`.
50
+ */
51
+ scale?: SparklineScale;
52
+ /**
53
+ * Width of the svg in px.
54
+ */
55
+ width?: number;
56
+ /**
57
+ * Height of the svg in px.
58
+ */
59
+ height?: number;
60
+ stroke_width?: number;
61
+ /**
62
+ * Stroke alpha at a value of 0, scaling linearly to 1 at `max`.
63
+ */
64
+ alpha_floor?: number;
65
+ /**
66
+ * Renders a dot at the final point, anchoring the "now" end of the line.
67
+ */
68
+ end_dot?: boolean;
69
+ /**
70
+ * Accessible label. When omitted the svg is `aria-hidden`.
71
+ */
72
+ label?: string;
73
+ } = $props();
74
+
75
+ const gradient_id = $props.id();
76
+
77
+ const geometry = $derived(
78
+ sparkline_geometry(values, { width, height, max, scale, stroke_width, alpha_floor, end_dot })
79
+ );
80
+ </script>
81
+
82
+ <svg
83
+ {...rest}
84
+ {width}
85
+ {height}
86
+ viewBox="0 0 {width} {height}"
87
+ role={label ? 'img' : undefined}
88
+ aria-label={label}
89
+ aria-hidden={label ? undefined : true}
90
+ >
91
+ {#if geometry}
92
+ <defs>
93
+ <linearGradient
94
+ id={gradient_id}
95
+ gradientUnits="userSpaceOnUse"
96
+ x1="0"
97
+ y1="0"
98
+ x2={width}
99
+ y2="0"
100
+ >
101
+ {#each geometry.stops as stop, index (index)}
102
+ <stop offset={stop.offset} stop-color="currentColor" stop-opacity={stop.opacity} />
103
+ {/each}
104
+ </linearGradient>
105
+ </defs>
106
+ <polyline
107
+ points={geometry.points}
108
+ fill="none"
109
+ stroke="url(#{gradient_id})"
110
+ stroke-width={stroke_width}
111
+ stroke-linejoin="round"
112
+ stroke-linecap="round"
113
+ />
114
+ {#if end_dot}
115
+ <circle
116
+ cx={geometry.end_x}
117
+ cy={geometry.end_y}
118
+ r={geometry.dot_radius}
119
+ fill="currentColor"
120
+ fill-opacity={geometry.end_alpha}
121
+ />
122
+ {/if}
123
+ {/if}
124
+ </svg>
125
+
126
+ <style>
127
+ svg {
128
+ background: var(--sparkline_bg, color-mix(in hsl, currentColor 8%, transparent));
129
+ border-radius: var(--border_radius_xs);
130
+ }
131
+ </style>
@@ -0,0 +1,42 @@
1
+ import type { OmitStrict } from '@fuzdev/fuz_util/types.ts';
2
+ import type { SvelteHTMLElements } from 'svelte/elements';
3
+ import { type SparklineScale } from './sparkline.js';
4
+ type $$ComponentProps = OmitStrict<SvelteHTMLElements['svg'], 'values' | 'width' | 'height' | 'scale'> & {
5
+ values: Array<number>;
6
+ /**
7
+ * The value rendered at full height and full alpha.
8
+ * Pass a shared max across sparklines for comparable scales.
9
+ * Defaults to the local max of `values`.
10
+ */
11
+ max?: number;
12
+ /**
13
+ * Vertical scale for the line's geometry — see `SparklineScale`.
14
+ * The alpha fade always tracks the linear ratio regardless of `scale`.
15
+ */
16
+ scale?: SparklineScale;
17
+ /**
18
+ * Width of the svg in px.
19
+ */
20
+ width?: number;
21
+ /**
22
+ * Height of the svg in px.
23
+ */
24
+ height?: number;
25
+ stroke_width?: number;
26
+ /**
27
+ * Stroke alpha at a value of 0, scaling linearly to 1 at `max`.
28
+ */
29
+ alpha_floor?: number;
30
+ /**
31
+ * Renders a dot at the final point, anchoring the "now" end of the line.
32
+ */
33
+ end_dot?: boolean;
34
+ /**
35
+ * Accessible label. When omitted the svg is `aria-hidden`.
36
+ */
37
+ label?: string;
38
+ };
39
+ declare const Sparkline: import("svelte").Component<$$ComponentProps, {}, "">;
40
+ type Sparkline = ReturnType<typeof Sparkline>;
41
+ export default Sparkline;
42
+ //# sourceMappingURL=Sparkline.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sparkline.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Sparkline.svelte"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAExE,KAAK,gBAAgB,GAAI,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,GAAG;IACzG,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtB;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAoEH,QAAA,MAAM,SAAS,sDAAwC,CAAC;AACxD,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAC9C,eAAe,SAAS,CAAC"}
@@ -6,12 +6,12 @@
6
6
  </script>
7
7
 
8
8
  <script lang="ts">
9
- import {random_int, shuffle} from '@fuzdev/fuz_util/random.ts';
10
- import {create_random_alea} from '@fuzdev/fuz_util/random_alea.ts';
11
- import type {SvelteHTMLElements} from 'svelte/elements';
9
+ import { random_int, shuffle } from '@fuzdev/fuz_util/random.ts';
10
+ import { create_random_alea } from '@fuzdev/fuz_util/random_alea.ts';
11
+ import type { SvelteHTMLElements } from 'svelte/elements';
12
12
 
13
13
  import Svg from './Svg.svelte';
14
- import {logo_fuz} from './logos.js';
14
+ import { logo_fuz } from './logos.js';
15
15
 
16
16
  const {
17
17
  spiders = [
@@ -24,7 +24,7 @@
24
24
  'var(--color_g_50)',
25
25
  'var(--color_h_50)',
26
26
  'var(--color_i_50)',
27
- 'var(--color_j_50)',
27
+ 'var(--color_j_50)'
28
28
  ],
29
29
  seed = minute_of_day(),
30
30
  random = create_random_alea(seed),
@@ -1 +1 @@
1
- {"version":3,"file":"Spiders.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Spiders.svelte"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAKvD,KAAK,gBAAgB,GAAI;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC;CAC5B,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;AA6C/B,QAAA,MAAM,OAAO,sDAAwC,CAAC;AACtD,KAAK,OAAO,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC;AAC1C,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Spiders.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Spiders.svelte"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAKzD,KAAK,gBAAgB,GAAI;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC;CAC5B,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;AA6C/B,QAAA,MAAM,OAAO,sDAAwC,CAAC;AACtD,KAAK,OAAO,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC;AAC1C,eAAe,OAAO,CAAC"}
@@ -1,8 +1,8 @@
1
1
  <script lang="ts">
2
- import type {SvelteHTMLElements} from 'svelte/elements';
3
- import {default_variables} from '@fuzdev/fuz_css/variables.ts';
2
+ import type { SvelteHTMLElements } from 'svelte/elements';
3
+ import { default_variables } from '@fuzdev/fuz_css/variables.ts';
4
4
 
5
- import {selected_variable_context} from './style_variable_helpers.svelte.js';
5
+ import { selected_variable_context } from './style_variable_helpers.svelte.js';
6
6
 
7
7
  const {
8
8
  name,
@@ -31,14 +31,14 @@
31
31
  <button
32
32
  type="button"
33
33
  {...rest}
34
- class={[rest.class, {inline, plain}]}
34
+ class={[rest.class, { inline, plain }]}
35
35
  onclick={(e) => {
36
36
  selected_variable.value = variable;
37
37
  onclick?.(e);
38
38
  }}
39
- >{#if children}{@render children()}{:else}<span class="font_family_mono">{name}</span
40
- >{/if}</button
41
39
  >
40
+ {#if children}{@render children()}{:else}<span class="font_family_mono">{name}</span>{/if}
41
+ </button>
42
42
 
43
43
  <style>
44
44
  button {
@@ -1 +1 @@
1
- {"version":3,"file":"StyleVariableButton.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/StyleVariableButton.svelte"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAKvD,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,QAAQ,CAAC,GAAG;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAoCH,QAAA,MAAM,mBAAmB,sDAAwC,CAAC;AAClE,KAAK,mBAAmB,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAClE,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"StyleVariableButton.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/StyleVariableButton.svelte"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAKzD,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,QAAQ,CAAC,GAAG;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAsCH,QAAA,MAAM,mBAAmB,sDAAwC,CAAC;AAClE,KAAK,mBAAmB,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAClE,eAAe,mBAAmB,CAAC"}
package/dist/Svg.svelte CHANGED
@@ -1,8 +1,8 @@
1
1
  <script lang="ts">
2
- import {ensure_end} from '@fuzdev/fuz_util/string.ts';
3
- import type {SvelteHTMLElements} from 'svelte/elements';
2
+ import { ensure_end } from '@fuzdev/fuz_util/string.ts';
3
+ import type { SvelteHTMLElements } from 'svelte/elements';
4
4
 
5
- import type {SvgData} from './svg.js';
5
+ import type { SvgData } from './svg.js';
6
6
 
7
7
  /**
8
8
  * Renders an `SvgData` icon definition to inline `svg` markup, never via `@html`.
@@ -71,7 +71,7 @@
71
71
  const style = $derived(
72
72
  data.style && rest.style
73
73
  ? ensure_end(data.style, ';') + ' ' + rest.style
74
- : (data.style ?? rest.style),
74
+ : (data.style ?? rest.style)
75
75
  );
76
76
  </script>
77
77
 
@@ -79,7 +79,7 @@
79
79
  viewBox={data.viewBox ?? '0 0 100 100'}
80
80
  {...rest}
81
81
  aria-label={label ?? data.label ?? rest['aria-label']}
82
- class={[rest.class, {inline}]}
82
+ class={[rest.class, { inline }]}
83
83
  style:width={final_width}
84
84
  style:height={final_height}
85
85
  style:flex-shrink={shrink ? 1 : 0}
@@ -1 +1 @@
1
- {"version":3,"file":"Svg.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Svg.svelte"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAExD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,UAAU,CAAC;AAErC,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG;IACpD,IAAI,EAAE,OAAO,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAqFH,QAAA,MAAM,GAAG,sDAAwC,CAAC;AAClD,KAAK,GAAG,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC;AAClC,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"Svg.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Svg.svelte"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEvC,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG;IACpD,IAAI,EAAE,OAAO,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAqFH,QAAA,MAAM,GAAG,sDAAwC,CAAC;AAClD,KAAK,GAAG,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC;AAClC,eAAe,GAAG,CAAC"}
@@ -1,10 +1,10 @@
1
1
  <script lang="ts">
2
- import {onDestroy, type Snippet} from 'svelte';
2
+ import { onDestroy, type Snippet } from 'svelte';
3
3
 
4
4
  const {
5
5
  to,
6
6
  onmove,
7
- children,
7
+ children
8
8
  }: {
9
9
  /**
10
10
  * Defaults to `undefined` to lessen friction with SSR.
@@ -1 +1 @@
1
- {"version":3,"file":"Teleport.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Teleport.svelte"],"names":[],"mappings":"AAGA,OAAO,EAAY,KAAK,OAAO,EAAC,MAAM,QAAQ,CAAC;AAE9C,KAAK,gBAAgB,GAAI;IACxB;;;;OAIG;IACH,EAAE,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,CAAC;IACpC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,OAAO,CAAC;CAClB,CAAC;AAuCH,QAAA,MAAM,QAAQ,sDAAwC,CAAC;AACvD,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC5C,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Teleport.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Teleport.svelte"],"names":[],"mappings":"AAGA,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEhD,KAAK,gBAAgB,GAAI;IACxB;;;;OAIG;IACH,EAAE,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,CAAC;IACpC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,OAAO,CAAC;CAClB,CAAC;AAuCH,QAAA,MAAM,QAAQ,sDAAwC,CAAC;AACvD,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC5C,eAAe,QAAQ,CAAC"}
@@ -1,10 +1,10 @@
1
1
  <script lang="ts">
2
- import {swallow} from '@fuzdev/fuz_util/dom.ts';
3
- import type {Theme} from '@fuzdev/fuz_css/theme.ts';
4
- import {default_themes} from '@fuzdev/fuz_css/themes.ts';
5
- import type {SvelteHTMLElements} from 'svelte/elements';
2
+ import { swallow } from '@fuzdev/fuz_util/dom.ts';
3
+ import type { Theme } from '@fuzdev/fuz_css/theme.ts';
4
+ import { default_themes } from '@fuzdev/fuz_css/themes.ts';
5
+ import type { SvelteHTMLElements } from 'svelte/elements';
6
6
 
7
- import {theme_state_context} from './theme_state.svelte.js';
7
+ import { theme_state_context } from './theme_state.svelte.js';
8
8
 
9
9
  const get_theme_state = theme_state_context.get();
10
10
 
@@ -19,7 +19,7 @@
19
19
  onedit,
20
20
  ...rest
21
21
  }: SvelteHTMLElements['menu'] & {
22
- selected_theme?: {theme: Theme};
22
+ selected_theme?: { theme: Theme };
23
23
  themes?: Array<Theme>;
24
24
  enable_editing?: boolean;
25
25
  select?: ((theme: Theme) => void | boolean) | null;
@@ -35,7 +35,7 @@
35
35
  <li class="row" role="none">
36
36
  <button
37
37
  type="button"
38
- class={['theme-button color_a', {selected}]}
38
+ class={['theme-button color_a', { selected }]}
39
39
  role="menuitemradio"
40
40
  aria-label="{theme.name} theme"
41
41
  aria-checked={selected}
@@ -55,8 +55,10 @@
55
55
  onclick={(e) => {
56
56
  swallow(e);
57
57
  onedit?.(theme);
58
- }}>•••</button
58
+ }}
59
59
  >
60
+ •••
61
+ </button>
60
62
  {/if}
61
63
  </li>
62
64
  {/each}
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeInput.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/ThemeInput.svelte"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,0BAA0B,CAAC;AAEpD,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAIvD,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,MAAM,CAAC,GAAG;IACrD,cAAc,CAAC,EAAE;QAAC,KAAK,EAAE,KAAK,CAAA;KAAC,CAAC;IAChC,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;IACnD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAChC,CAAC;AAmDH,QAAA,MAAM,UAAU,sDAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ThemeInput.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/ThemeInput.svelte"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIzD,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,MAAM,CAAC,GAAG;IACrD,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IAClC,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;IACnD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAChC,CAAC;AAqDH,QAAA,MAAM,UAAU,sDAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
@@ -3,10 +3,10 @@
3
3
  </script>
4
4
 
5
5
  <script lang="ts">
6
- import {onMount, type Snippet} from 'svelte';
7
- import {render_theme_style, type Theme} from '@fuzdev/fuz_css/theme.ts';
8
- import {DEFAULT_THEME} from '@fuzdev/fuz_css/themes.ts';
9
- import {DEV} from 'esm-env';
6
+ import { onMount, type Snippet } from 'svelte';
7
+ import { render_theme_style, type Theme } from '@fuzdev/fuz_css/theme.ts';
8
+ import { DEFAULT_THEME } from '@fuzdev/fuz_css/themes.ts';
9
+ import { DEV } from 'esm-env';
10
10
 
11
11
  import {
12
12
  load_color_scheme as default_load_color_scheme,
@@ -15,9 +15,9 @@
15
15
  save_theme as default_save_theme,
16
16
  load_theme as default_load_theme,
17
17
  theme_state_context,
18
- ThemeState,
18
+ ThemeState
19
19
  } from './theme_state.svelte.js';
20
- import {effect_with_count} from './rune_helpers.svelte.js';
20
+ import { effect_with_count } from './rune_helpers.svelte.js';
21
21
 
22
22
  const {
23
23
  sync_color_scheme = default_sync_color_scheme,
@@ -28,9 +28,9 @@
28
28
  theme_fallback,
29
29
  theme_state = new ThemeState({
30
30
  theme: load_theme(theme_fallback),
31
- color_scheme: load_color_scheme(),
31
+ color_scheme: load_color_scheme()
32
32
  }),
33
- children,
33
+ children
34
34
  }: {
35
35
  sync_color_scheme?: typeof default_sync_color_scheme;
36
36
  load_color_scheme?: typeof default_load_color_scheme;
@@ -72,10 +72,9 @@
72
72
 
73
73
  const selected_theme_name = $derived(theme_state.theme.name);
74
74
  const style = $derived(
75
- selected_theme_name ===
76
- DEFAULT_THEME.name // TODO @many proper equality check, won't work when we allow editing, need an id or unique names and a deep equality check
75
+ selected_theme_name === DEFAULT_THEME.name // TODO @many proper equality check, won't work when we allow editing, need an id or unique names and a deep equality check
77
76
  ? null
78
- : render_theme_style(theme_state.theme),
77
+ : render_theme_style(theme_state.theme)
79
78
  );
80
79
  const theme_style_html = $derived(style ? `<style>${style}</style>` : null);
81
80
 
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeRoot.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/ThemeRoot.svelte"],"names":[],"mappings":"AAMA,OAAO,EAAU,KAAK,OAAO,EAAC,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAqB,KAAK,KAAK,EAAC,MAAM,0BAA0B,CAAC;AAIxE,OAAO,EACL,iBAAiB,IAAI,yBAAyB,EAC9C,iBAAiB,IAAI,yBAAyB,EAC9C,iBAAiB,IAAI,yBAAyB,EAC9C,UAAU,IAAI,kBAAkB,EAChC,UAAU,IAAI,kBAAkB,EAEhC,UAAU,EACV,MAAM,yBAAyB,CAAC;AAGjC,KAAK,gBAAgB,GAAI;IACxB,iBAAiB,CAAC,EAAE,OAAO,yBAAyB,CAAC;IACrD,iBAAiB,CAAC,EAAE,OAAO,yBAAyB,CAAC;IACrD,iBAAiB,CAAC,EAAE,OAAO,yBAAyB,CAAC;IACrD,UAAU,CAAC,EAAE,OAAO,kBAAkB,CAAC;IACvC,UAAU,CAAC,EAAE,OAAO,kBAAkB,CAAC;IACvC,cAAc,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IACnC;;;OAGG;IACH,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,QAAQ,EAAE,OAAO,CAChB;QAAC,WAAW,EAAE,UAAU;QAAE,KAAK,EAAE,MAAM,GAAG,IAAI;QAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI;KAAC,CAChF,CAAC;CACF,CAAC;AAqFH,QAAA,MAAM,SAAS,sDAAwC,CAAC;AACxD,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAC9C,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"ThemeRoot.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/ThemeRoot.svelte"],"names":[],"mappings":"AAMA,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAsB,KAAK,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAI1E,OAAO,EACL,iBAAiB,IAAI,yBAAyB,EAC9C,iBAAiB,IAAI,yBAAyB,EAC9C,iBAAiB,IAAI,yBAAyB,EAC9C,UAAU,IAAI,kBAAkB,EAChC,UAAU,IAAI,kBAAkB,EAEhC,UAAU,EACV,MAAM,yBAAyB,CAAC;AAGjC,KAAK,gBAAgB,GAAI;IACxB,iBAAiB,CAAC,EAAE,OAAO,yBAAyB,CAAC;IACrD,iBAAiB,CAAC,EAAE,OAAO,yBAAyB,CAAC;IACrD,iBAAiB,CAAC,EAAE,OAAO,yBAAyB,CAAC;IACrD,UAAU,CAAC,EAAE,OAAO,kBAAkB,CAAC;IACvC,UAAU,CAAC,EAAE,OAAO,kBAAkB,CAAC;IACvC,cAAc,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IACnC;;;OAGG;IACH,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,QAAQ,EAAE,OAAO,CAChB;QAAC,WAAW,EAAE,UAAU;QAAE,KAAK,EAAE,MAAM,GAAG,IAAI;QAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI;KAAC,CAChF,CAAC;CACF,CAAC;AAoFH,QAAA,MAAM,SAAS,sDAAwC,CAAC;AACxD,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAC9C,eAAe,SAAS,CAAC"}
@@ -1,13 +1,13 @@
1
1
  <script lang="ts">
2
- import type {Snippet} from 'svelte';
3
- import type {SvelteHTMLElements} from 'svelte/elements';
4
- import {page} from '$app/state';
5
- import {resolve} from '$app/paths';
2
+ import type { Snippet } from 'svelte';
3
+ import type { SvelteHTMLElements } from 'svelte/elements';
4
+ import { page } from '$app/state';
5
+ import { resolve } from '$app/paths';
6
6
 
7
7
  import TomeHeader from './TomeHeader.svelte';
8
- import {tome_context, type Tome} from './tome.js';
9
- import {DOCS_PATH_DEFAULT, docs_links_context} from './docs_helpers.svelte.js';
10
- import {intersect} from './intersect.svelte.js';
8
+ import { tome_context, type Tome } from './tome.js';
9
+ import { DOCS_PATH_DEFAULT, docs_links_context } from './docs_helpers.svelte.js';
10
+ import { intersect } from './intersect.svelte.js';
11
11
 
12
12
  const {
13
13
  tome,
@@ -36,14 +36,14 @@
36
36
  class="tome-content width_atmost_md mb_xl9 {rest.class}"
37
37
  {@attach intersect(() =>
38
38
  at_root
39
- ? ({intersecting}) => {
39
+ ? ({ intersecting }) => {
40
40
  if (intersecting) {
41
41
  docs_links.fragments_onscreen.add(fragment);
42
42
  } else {
43
43
  docs_links.fragments_onscreen.delete(fragment);
44
44
  }
45
45
  }
46
- : null,
46
+ : null
47
47
  )}
48
48
  >
49
49
  <header
@@ -51,13 +51,13 @@
51
51
  {@attach intersect(() =>
52
52
  at_root
53
53
  ? null
54
- : ({intersecting}) => {
54
+ : ({ intersecting }) => {
55
55
  if (intersecting) {
56
56
  docs_links.fragments_onscreen.add(fragment);
57
57
  } else {
58
58
  docs_links.fragments_onscreen.delete(fragment);
59
59
  }
60
- },
60
+ }
61
61
  )}
62
62
  >
63
63
  {#if header}
@@ -1 +1 @@
1
- {"version":3,"file":"TomeContent.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/TomeContent.svelte"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AACpC,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAKxD,OAAO,EAAe,KAAK,IAAI,EAAC,MAAM,WAAW,CAAC;AAIjD,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,SAAS,CAAC,GAAG;IACxD,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CAClB,CAAC;AA8DH,QAAA,MAAM,WAAW,sDAAwC,CAAC;AAC1D,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAClD,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"TomeContent.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/TomeContent.svelte"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAK1D,OAAO,EAAgB,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAInD,KAAK,gBAAgB,GAAI,kBAAkB,CAAC,SAAS,CAAC,GAAG;IACxD,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CAClB,CAAC;AA8DH,QAAA,MAAM,WAAW,sDAAwC,CAAC;AAC1D,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAClD,eAAe,WAAW,CAAC"}