@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.
- package/README.md +3 -3
- package/dist/Alert.svelte +21 -25
- package/dist/Alert.svelte.d.ts.map +1 -1
- package/dist/ApiDeclarationList.svelte +2 -2
- package/dist/ApiDeclarationList.svelte.d.ts.map +1 -1
- package/dist/ApiIndex.svelte +4 -4
- package/dist/ApiIndex.svelte.d.ts.map +1 -1
- package/dist/ApiModule.svelte +13 -10
- package/dist/ApiModule.svelte.d.ts.map +1 -1
- package/dist/ApiModulesList.svelte +2 -2
- package/dist/ApiModulesList.svelte.d.ts.map +1 -1
- package/dist/Breadcrumb.svelte +31 -19
- package/dist/Breadcrumb.svelte.d.ts.map +1 -1
- package/dist/Card.svelte +17 -17
- package/dist/Card.svelte.d.ts.map +1 -1
- package/dist/ColorSchemeInput.svelte +6 -6
- package/dist/ColorSchemeInput.svelte.d.ts.map +1 -1
- package/dist/Contextmenu.svelte +6 -4
- package/dist/Contextmenu.svelte.d.ts.map +1 -1
- package/dist/ContextmenuEntry.svelte +8 -8
- package/dist/ContextmenuEntry.svelte.d.ts.map +1 -1
- package/dist/ContextmenuIcon.svelte +3 -3
- package/dist/ContextmenuIcon.svelte.d.ts.map +1 -1
- package/dist/ContextmenuLinkEntry.svelte +14 -14
- package/dist/ContextmenuLinkEntry.svelte.d.ts.map +1 -1
- package/dist/ContextmenuMenu.svelte +10 -10
- package/dist/ContextmenuMenu.svelte.d.ts.map +1 -1
- package/dist/ContextmenuRoot.svelte +7 -7
- package/dist/ContextmenuRootForSafariCompatibility.svelte +15 -15
- package/dist/ContextmenuSeparator.svelte +2 -2
- package/dist/ContextmenuSubmenu.svelte +15 -12
- package/dist/ContextmenuSubmenu.svelte.d.ts.map +1 -1
- package/dist/ContextmenuTextEntry.svelte +4 -4
- package/dist/ContextmenuTextEntry.svelte.d.ts.map +1 -1
- package/dist/CopyToClipboard.svelte +7 -7
- package/dist/CopyToClipboard.svelte.d.ts.map +1 -1
- package/dist/DeclarationDetail.svelte +35 -28
- package/dist/DeclarationDetail.svelte.d.ts.map +1 -1
- package/dist/DeclarationLink.svelte +7 -7
- package/dist/DeclarationLink.svelte.d.ts.map +1 -1
- package/dist/Details.svelte +3 -3
- package/dist/Details.svelte.d.ts.map +1 -1
- package/dist/Dialog.svelte +7 -7
- package/dist/Dialog.svelte.d.ts.map +1 -1
- package/dist/DialogContent.svelte +6 -6
- package/dist/DialogContent.svelte.d.ts.map +1 -1
- package/dist/Docs.svelte +14 -12
- package/dist/Docs.svelte.d.ts.map +1 -1
- package/dist/DocsContent.svelte +4 -4
- package/dist/DocsContent.svelte.d.ts.map +1 -1
- package/dist/DocsFooter.svelte +7 -8
- package/dist/DocsFooter.svelte.d.ts.map +1 -1
- package/dist/DocsLink.svelte +24 -21
- package/dist/DocsLink.svelte.d.ts.map +1 -1
- package/dist/DocsList.svelte +3 -3
- package/dist/DocsList.svelte.d.ts.map +1 -1
- package/dist/DocsMenu.svelte +13 -10
- package/dist/DocsMenu.svelte.d.ts.map +1 -1
- package/dist/DocsMenuHeader.svelte +2 -2
- package/dist/DocsMenuHeader.svelte.d.ts.map +1 -1
- package/dist/DocsPageLinks.svelte +9 -7
- package/dist/DocsPageLinks.svelte.d.ts.map +1 -1
- package/dist/DocsPrimaryNav.svelte +5 -5
- package/dist/DocsPrimaryNav.svelte.d.ts.map +1 -1
- package/dist/DocsSearch.svelte +3 -3
- package/dist/DocsSearch.svelte.d.ts.map +1 -1
- package/dist/DocsSecondaryNav.svelte +3 -3
- package/dist/DocsSecondaryNav.svelte.d.ts.map +1 -1
- package/dist/DocsTertiaryNav.svelte +8 -8
- package/dist/DocsTertiaryNav.svelte.d.ts.map +1 -1
- package/dist/EcosystemLinks.svelte +3 -3
- package/dist/EcosystemLinks.svelte.d.ts.map +1 -1
- package/dist/EcosystemLinksPanel.svelte +2 -2
- package/dist/EcosystemLinksPanel.svelte.d.ts.map +1 -1
- package/dist/GithubLink.svelte +10 -10
- package/dist/GithubLink.svelte.d.ts.map +1 -1
- package/dist/Glyph.svelte +4 -2
- package/dist/Glyph.svelte.d.ts.map +1 -1
- package/dist/Hashlink.svelte +5 -5
- package/dist/Hashlink.svelte.d.ts.map +1 -1
- package/dist/HueInput.svelte +5 -5
- package/dist/HueInput.svelte.d.ts.map +1 -1
- package/dist/ImgOrSvg.svelte +20 -20
- package/dist/ImgOrSvg.svelte.d.ts.map +1 -1
- package/dist/LibraryDetail.svelte +16 -16
- package/dist/LibraryDetail.svelte.d.ts.map +1 -1
- package/dist/LibrarySummary.svelte +10 -8
- package/dist/LibrarySummary.svelte.d.ts.map +1 -1
- package/dist/MdnLink.svelte +8 -8
- package/dist/MdnLink.svelte.d.ts.map +1 -1
- package/dist/ModuleLink.svelte +5 -5
- package/dist/ModuleLink.svelte.d.ts.map +1 -1
- package/dist/PasteFromClipboard.svelte +1 -1
- package/dist/PasteFromClipboard.svelte.d.ts.map +1 -1
- package/dist/PendingAnimation.svelte +12 -11
- package/dist/PendingAnimation.svelte.d.ts.map +1 -1
- package/dist/PendingButton.svelte +3 -3
- package/dist/PendingButton.svelte.d.ts.map +1 -1
- package/dist/ProjectActivityChart.svelte +137 -0
- package/dist/ProjectActivityChart.svelte.d.ts +30 -0
- package/dist/ProjectActivityChart.svelte.d.ts.map +1 -0
- package/dist/ProjectLinks.svelte +29 -48
- package/dist/ProjectLinks.svelte.d.ts.map +1 -1
- package/dist/Redirect.svelte +12 -8
- package/dist/Redirect.svelte.d.ts.map +1 -1
- package/dist/Sparkline.svelte +131 -0
- package/dist/Sparkline.svelte.d.ts +42 -0
- package/dist/Sparkline.svelte.d.ts.map +1 -0
- package/dist/Spiders.svelte +5 -5
- package/dist/Spiders.svelte.d.ts.map +1 -1
- package/dist/StyleVariableButton.svelte +6 -6
- package/dist/StyleVariableButton.svelte.d.ts.map +1 -1
- package/dist/Svg.svelte +5 -5
- package/dist/Svg.svelte.d.ts.map +1 -1
- package/dist/Teleport.svelte +2 -2
- package/dist/Teleport.svelte.d.ts.map +1 -1
- package/dist/ThemeInput.svelte +10 -8
- package/dist/ThemeInput.svelte.d.ts.map +1 -1
- package/dist/ThemeRoot.svelte +10 -11
- package/dist/ThemeRoot.svelte.d.ts.map +1 -1
- package/dist/TomeContent.svelte +11 -11
- package/dist/TomeContent.svelte.d.ts.map +1 -1
- package/dist/TomeHeader.svelte +6 -6
- package/dist/TomeLink.svelte +7 -7
- package/dist/TomeLink.svelte.d.ts.map +1 -1
- package/dist/TomeSection.svelte +8 -8
- package/dist/TomeSection.svelte.d.ts.map +1 -1
- package/dist/TomeSectionHeader.svelte +12 -12
- package/dist/TomeSectionHeader.svelte.d.ts.map +1 -1
- package/dist/TypeLink.svelte +11 -11
- package/dist/TypeLink.svelte.d.ts.map +1 -1
- package/dist/alert.js +1 -1
- package/dist/api_search.svelte.d.ts.map +1 -1
- package/dist/api_search.svelte.js +5 -7
- package/dist/autofocus.svelte.d.ts.map +1 -1
- package/dist/context_helpers.js +1 -1
- package/dist/contextmenu_helpers.d.ts.map +1 -1
- package/dist/contextmenu_helpers.js +3 -3
- package/dist/contextmenu_state.svelte.d.ts.map +1 -1
- package/dist/contextmenu_state.svelte.js +4 -4
- package/dist/csp.d.ts.map +1 -1
- package/dist/csp.js +27 -27
- package/dist/csp_of_fuzdev.d.ts.map +1 -1
- package/dist/csp_of_fuzdev.js +1 -1
- package/dist/declaration.svelte.d.ts +44 -256
- package/dist/declaration.svelte.d.ts.map +1 -1
- package/dist/declaration.svelte.js +132 -52
- package/dist/declaration_contextmenu.d.ts.map +1 -1
- package/dist/declaration_contextmenu.js +2 -2
- package/dist/docs_helpers.svelte.d.ts.map +1 -1
- package/dist/icons.js +200 -200
- package/dist/intersect.svelte.d.ts.map +1 -1
- package/dist/library.svelte.d.ts +31 -18
- package/dist/library.svelte.d.ts.map +1 -1
- package/dist/library.svelte.js +76 -21
- package/dist/logos.js +42 -42
- package/dist/module.svelte.d.ts +30 -37
- package/dist/module.svelte.d.ts.map +1 -1
- package/dist/module.svelte.js +88 -35
- package/dist/module_contextmenu.d.ts.map +1 -1
- package/dist/module_contextmenu.js +2 -2
- package/dist/project_stats.d.ts +121 -0
- package/dist/project_stats.d.ts.map +1 -0
- package/dist/project_stats.js +153 -0
- package/dist/project_stats_data.d.ts +3 -0
- package/dist/project_stats_data.d.ts.map +1 -0
- package/dist/project_stats_data.js +469 -0
- package/dist/project_stats_update.task.d.ts +4 -0
- package/dist/project_stats_update.task.d.ts.map +1 -0
- package/dist/project_stats_update.task.js +50 -0
- package/dist/projects.d.ts +17 -0
- package/dist/projects.d.ts.map +1 -0
- package/dist/projects.js +20 -0
- package/dist/publish.task.d.ts +3 -0
- package/dist/publish.task.d.ts.map +1 -0
- package/dist/publish.task.js +23 -0
- package/dist/site.svelte.d.ts.map +1 -1
- package/dist/sparkline.d.ts +102 -0
- package/dist/sparkline.d.ts.map +1 -0
- package/dist/sparkline.js +63 -0
- package/dist/style_variable_helpers.svelte.d.ts.map +1 -1
- package/dist/svg.d.ts.map +1 -1
- package/dist/theme_state.svelte.d.ts.map +1 -1
- package/dist/theme_state.svelte.js +1 -1
- package/dist/tome.d.ts.map +1 -1
- package/dist/tome.js +1 -1
- package/dist/vite_plugin_pkg_json.d.ts.map +1 -1
- package/dist/vite_plugin_pkg_json.js +1 -1
- package/package.json +3 -22
- package/src/lib/alert.ts +3 -3
- package/src/lib/api_search.svelte.ts +9 -11
- package/src/lib/autofocus.svelte.ts +2 -2
- package/src/lib/context_helpers.ts +2 -2
- package/src/lib/contextmenu_helpers.ts +21 -21
- package/src/lib/contextmenu_state.svelte.ts +32 -34
- package/src/lib/csp.ts +42 -54
- package/src/lib/csp_of_fuzdev.ts +2 -2
- package/src/lib/declaration.svelte.ts +157 -62
- package/src/lib/declaration_contextmenu.ts +5 -5
- package/src/lib/dialog.ts +1 -1
- package/src/lib/docs_helpers.svelte.ts +9 -9
- package/src/lib/icons.ts +205 -205
- package/src/lib/intersect.svelte.ts +5 -5
- package/src/lib/library.svelte.ts +103 -36
- package/src/lib/library_helpers.ts +2 -2
- package/src/lib/logos.ts +43 -43
- package/src/lib/module.svelte.ts +98 -49
- package/src/lib/module_contextmenu.ts +4 -4
- package/src/lib/project_stats.ts +220 -0
- package/src/lib/project_stats_data.ts +472 -0
- package/src/lib/project_stats_update.task.ts +53 -0
- package/src/lib/projects.ts +49 -0
- package/src/lib/publish.task.ts +22 -0
- package/src/lib/site.svelte.ts +5 -5
- package/src/lib/sparkline.ts +173 -0
- package/src/lib/storage.ts +2 -2
- package/src/lib/style_variable_helpers.svelte.ts +2 -2
- package/src/lib/svg.ts +2 -2
- package/src/lib/theme_state.svelte.ts +8 -8
- package/src/lib/tome.ts +8 -8
- package/src/lib/vite_plugin_pkg_json.ts +8 -8
package/dist/ProjectLinks.svelte
CHANGED
|
@@ -1,49 +1,15 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import Svg from './Svg.svelte';
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
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
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
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
|
-
|
|
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}">
|
|
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
|
|
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":"
|
|
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"}
|
package/dist/Redirect.svelte
CHANGED
|
@@ -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}
|
|
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>
|
|
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,
|
|
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"}
|
package/dist/Spiders.svelte
CHANGED
|
@@ -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,
|
|
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,
|
|
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}
|
package/dist/Svg.svelte.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Svg.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Svg.svelte"],"names":[],"mappings":"AAIA,OAAO,KAAK,
|
|
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"}
|
package/dist/Teleport.svelte
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Teleport.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/Teleport.svelte"],"names":[],"mappings":"AAGA,OAAO,
|
|
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"}
|
package/dist/ThemeInput.svelte
CHANGED
|
@@ -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
|
-
}}
|
|
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,
|
|
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"}
|
package/dist/ThemeRoot.svelte
CHANGED
|
@@ -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,
|
|
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"}
|
package/dist/TomeContent.svelte
CHANGED
|
@@ -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,
|
|
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"}
|