@fuzdev/fuz_ui 0.206.6 → 0.206.8

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 (191) 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 +11 -11
  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/ProjectLinks.svelte +7 -7
  100. package/dist/ProjectLinks.svelte.d.ts.map +1 -1
  101. package/dist/Redirect.svelte +12 -8
  102. package/dist/Redirect.svelte.d.ts.map +1 -1
  103. package/dist/Spiders.svelte +5 -5
  104. package/dist/Spiders.svelte.d.ts.map +1 -1
  105. package/dist/StyleVariableButton.svelte +6 -6
  106. package/dist/StyleVariableButton.svelte.d.ts.map +1 -1
  107. package/dist/Svg.svelte +5 -5
  108. package/dist/Svg.svelte.d.ts.map +1 -1
  109. package/dist/Teleport.svelte +2 -2
  110. package/dist/Teleport.svelte.d.ts.map +1 -1
  111. package/dist/ThemeInput.svelte +10 -8
  112. package/dist/ThemeInput.svelte.d.ts.map +1 -1
  113. package/dist/ThemeRoot.svelte +10 -11
  114. package/dist/ThemeRoot.svelte.d.ts.map +1 -1
  115. package/dist/TomeContent.svelte +11 -11
  116. package/dist/TomeContent.svelte.d.ts.map +1 -1
  117. package/dist/TomeHeader.svelte +6 -6
  118. package/dist/TomeLink.svelte +7 -7
  119. package/dist/TomeLink.svelte.d.ts.map +1 -1
  120. package/dist/TomeSection.svelte +8 -8
  121. package/dist/TomeSection.svelte.d.ts.map +1 -1
  122. package/dist/TomeSectionHeader.svelte +12 -12
  123. package/dist/TomeSectionHeader.svelte.d.ts.map +1 -1
  124. package/dist/TypeLink.svelte +11 -11
  125. package/dist/TypeLink.svelte.d.ts.map +1 -1
  126. package/dist/alert.js +1 -1
  127. package/dist/api_search.svelte.d.ts.map +1 -1
  128. package/dist/api_search.svelte.js +5 -7
  129. package/dist/autofocus.svelte.d.ts.map +1 -1
  130. package/dist/context_helpers.js +1 -1
  131. package/dist/contextmenu_helpers.d.ts.map +1 -1
  132. package/dist/contextmenu_helpers.js +3 -3
  133. package/dist/contextmenu_state.svelte.d.ts.map +1 -1
  134. package/dist/contextmenu_state.svelte.js +4 -4
  135. package/dist/csp.d.ts.map +1 -1
  136. package/dist/csp.js +27 -27
  137. package/dist/csp_of_fuzdev.d.ts.map +1 -1
  138. package/dist/csp_of_fuzdev.js +1 -1
  139. package/dist/declaration.svelte.d.ts +44 -256
  140. package/dist/declaration.svelte.d.ts.map +1 -1
  141. package/dist/declaration.svelte.js +132 -52
  142. package/dist/declaration_contextmenu.d.ts.map +1 -1
  143. package/dist/declaration_contextmenu.js +2 -2
  144. package/dist/docs_helpers.svelte.d.ts.map +1 -1
  145. package/dist/icons.js +200 -200
  146. package/dist/intersect.svelte.d.ts.map +1 -1
  147. package/dist/library.svelte.d.ts +31 -18
  148. package/dist/library.svelte.d.ts.map +1 -1
  149. package/dist/library.svelte.js +76 -21
  150. package/dist/logos.js +42 -42
  151. package/dist/module.svelte.d.ts +30 -37
  152. package/dist/module.svelte.d.ts.map +1 -1
  153. package/dist/module.svelte.js +88 -35
  154. package/dist/module_contextmenu.d.ts.map +1 -1
  155. package/dist/module_contextmenu.js +2 -2
  156. package/dist/site.svelte.d.ts.map +1 -1
  157. package/dist/style_variable_helpers.svelte.d.ts.map +1 -1
  158. package/dist/svg.d.ts.map +1 -1
  159. package/dist/theme_state.svelte.d.ts.map +1 -1
  160. package/dist/theme_state.svelte.js +1 -1
  161. package/dist/tome.d.ts.map +1 -1
  162. package/dist/tome.js +1 -1
  163. package/dist/vite_plugin_pkg_json.d.ts.map +1 -1
  164. package/dist/vite_plugin_pkg_json.js +1 -1
  165. package/package.json +4 -23
  166. package/src/lib/alert.ts +3 -3
  167. package/src/lib/api_search.svelte.ts +9 -11
  168. package/src/lib/autofocus.svelte.ts +2 -2
  169. package/src/lib/context_helpers.ts +2 -2
  170. package/src/lib/contextmenu_helpers.ts +21 -21
  171. package/src/lib/contextmenu_state.svelte.ts +32 -34
  172. package/src/lib/csp.ts +42 -54
  173. package/src/lib/csp_of_fuzdev.ts +2 -2
  174. package/src/lib/declaration.svelte.ts +157 -62
  175. package/src/lib/declaration_contextmenu.ts +5 -5
  176. package/src/lib/dialog.ts +1 -1
  177. package/src/lib/docs_helpers.svelte.ts +9 -9
  178. package/src/lib/icons.ts +205 -205
  179. package/src/lib/intersect.svelte.ts +5 -5
  180. package/src/lib/library.svelte.ts +103 -36
  181. package/src/lib/library_helpers.ts +2 -2
  182. package/src/lib/logos.ts +43 -43
  183. package/src/lib/module.svelte.ts +98 -49
  184. package/src/lib/module_contextmenu.ts +4 -4
  185. package/src/lib/site.svelte.ts +5 -5
  186. package/src/lib/storage.ts +2 -2
  187. package/src/lib/style_variable_helpers.svelte.ts +2 -2
  188. package/src/lib/svg.ts +2 -2
  189. package/src/lib/theme_state.svelte.ts +8 -8
  190. package/src/lib/tome.ts +8 -8
  191. package/src/lib/vite_plugin_pkg_json.ts +8 -8
@@ -1,5 +1,5 @@
1
- import type {Attachment} from 'svelte/attachments';
2
- import {deep_equal} from '@fuzdev/fuz_util/deep_equal.ts';
1
+ import type { Attachment } from 'svelte/attachments';
2
+ import { deep_equal } from '@fuzdev/fuz_util/deep_equal.ts';
3
3
 
4
4
  export interface IntersectParams {
5
5
  /**
@@ -34,7 +34,7 @@ export type IntersectParamsOrCallback = OnIntersect | IntersectParams;
34
34
  */
35
35
  export const intersect =
36
36
  (
37
- get_params: () => IntersectParamsOrCallback | null | undefined,
37
+ get_params: () => IntersectParamsOrCallback | null | undefined
38
38
  ): Attachment<HTMLElement | SVGElement> =>
39
39
  (el) => {
40
40
  // State that persists across callback changes
@@ -53,7 +53,7 @@ export const intersect =
53
53
  const observer_to_disconnect = observer;
54
54
  observer.disconnect();
55
55
  if (current_ondisconnect) {
56
- current_ondisconnect({intersecting, intersections, el, observer: observer_to_disconnect});
56
+ current_ondisconnect({ intersecting, intersections, el, observer: observer_to_disconnect });
57
57
  }
58
58
  observer = null;
59
59
  };
@@ -112,7 +112,7 @@ export const intersect =
112
112
  observer = new IntersectionObserver((entries) => {
113
113
  intersecting = entries[0]!.isIntersecting;
114
114
  if (current_onintersect && observer) {
115
- current_onintersect({intersecting, intersections, el, observer, disconnect});
115
+ current_onintersect({ intersecting, intersections, el, observer, disconnect });
116
116
  }
117
117
  if (intersecting) {
118
118
  intersections++;
@@ -1,10 +1,10 @@
1
- import type {LibraryJson} from '@fuzdev/fuz_util/library_json.ts';
2
- import {ensure_start, strip_end} from '@fuzdev/fuz_util/string.ts';
3
- import type {Url} from '@fuzdev/fuz_util/url.ts';
1
+ import type { LibraryJson } from '@fuzdev/fuz_util/library_json.ts';
2
+ import { ensure_start, strip_end } from '@fuzdev/fuz_util/string.ts';
3
+ import type { Url } from '@fuzdev/fuz_util/url.ts';
4
4
 
5
- import {create_context} from './context_helpers.ts';
6
- import {Declaration} from './declaration.svelte.ts';
7
- import {Module} from './module.svelte.ts';
5
+ import { create_context } from './context_helpers.ts';
6
+ import { Declaration } from './declaration.svelte.ts';
7
+ import { Module } from './module.svelte.ts';
8
8
  import {
9
9
  package_is_published,
10
10
  repo_name_parse,
@@ -12,7 +12,7 @@ import {
12
12
  repo_url_parse,
13
13
  url_github_file,
14
14
  url_logo,
15
- url_npm_package,
15
+ url_npm_package
16
16
  } from '@fuzdev/fuz_util/package_helpers.ts';
17
17
 
18
18
  /**
@@ -45,7 +45,7 @@ export const library_context = create_context<() => Library>();
45
45
  */
46
46
  export const set_library_context_with_fallback = (
47
47
  get_library_prop: () => Library | undefined,
48
- component_name: string,
48
+ component_name: string
49
49
  ): (() => Library) => {
50
50
  const get_outer = library_context.get_maybe();
51
51
  const get_library = (): Library => {
@@ -73,6 +73,18 @@ export const parse_library_url_prefix = (value: unknown): string => {
73
73
  * Wraps `LibraryJson` with computed properties and provides the root
74
74
  * of the API documentation hierarchy: `Library` → `Module` → `Declaration`.
75
75
  *
76
+ * A `Library` and everything it materializes is immutable — `library_json` is
77
+ * assigned once in the constructor — so the computed properties across all
78
+ * three classes are plain getters, with the allocating ones (the `Module` and
79
+ * `Declaration` trees, the lookup maps) cached in a private field on first
80
+ * read. They are deliberately **not** `$derived`: Svelte's server runtime only
81
+ * memoizes a `$derived` created during a render (`ssr_context` is otherwise
82
+ * null), so a `Library` constructed at module scope — the normal shape for a
83
+ * multi-package docs site — rebuilds its entire `Module`/`Declaration` tree on
84
+ * every property read, turning a `declaration_by_name` lookup into a full
85
+ * re-materialization of the library. Reactivity is at the instance level
86
+ * instead: swap the `Library` (see `library_context`), don't mutate one.
87
+ *
76
88
  * @see `module.svelte.ts` for `Module` class
77
89
  * @see `declaration.svelte.ts` for `Declaration` class
78
90
  */
@@ -86,60 +98,115 @@ export class Library {
86
98
  */
87
99
  readonly url_prefix: string;
88
100
 
89
- readonly pkg_json = $derived(this.library_json.pkg_json);
90
- readonly source_json = $derived(this.library_json.source_json);
101
+ get pkg_json(): LibraryJson['pkg_json'] {
102
+ return this.library_json.pkg_json;
103
+ }
104
+
105
+ get source_json(): LibraryJson['source_json'] {
106
+ return this.library_json.source_json;
107
+ }
91
108
 
92
109
  // Everything below is derived from `pkg_json` — `LibraryJson` stores only the
93
110
  // raw `pkg_json`/`source_json` pair, so derivation lives in exactly one place.
94
- readonly name = $derived(this.pkg_json.name);
95
- readonly repo_name = $derived(repo_name_parse(this.pkg_json.name));
111
+ get name(): string {
112
+ return this.pkg_json.name;
113
+ }
114
+
115
+ get repo_name(): string {
116
+ return repo_name_parse(this.pkg_json.name);
117
+ }
118
+
119
+ #repo_url: Url | undefined;
120
+
96
121
  /** Non-null — the constructor rejects a `pkg_json` without a parseable `repository`. */
97
- readonly repo_url: Url = $derived(repo_url_parse(this.pkg_json.repository)!);
98
- readonly owner_name = $derived(repo_url_github_owner(this.repo_url));
99
- readonly homepage_url: Url | null = $derived(this.pkg_json.homepage ?? null);
100
- readonly logo_url: Url | null = $derived(url_logo(this.homepage_url, this.pkg_json.logo));
101
- readonly logo_alt = $derived(this.pkg_json.logo_alt ?? `logo for ${this.repo_name}`);
102
- readonly published = $derived(package_is_published(this.pkg_json));
103
- readonly npm_url: Url | null = $derived(this.published ? url_npm_package(this.name) : null);
104
- readonly changelog_url: Url | null = $derived(
105
- this.published ? url_github_file(this.repo_url, 'CHANGELOG.md') : null,
106
- );
122
+ get repo_url(): Url {
123
+ return (this.#repo_url ??= repo_url_parse(this.pkg_json.repository)!);
124
+ }
125
+
126
+ get owner_name(): string | null {
127
+ return repo_url_github_owner(this.repo_url);
128
+ }
129
+
130
+ get homepage_url(): Url | null {
131
+ return this.pkg_json.homepage ?? null;
132
+ }
133
+
134
+ get logo_url(): Url | null {
135
+ return url_logo(this.homepage_url, this.pkg_json.logo);
136
+ }
137
+
138
+ get logo_alt(): string {
139
+ return this.pkg_json.logo_alt ?? `logo for ${this.repo_name}`;
140
+ }
141
+
142
+ get published(): boolean {
143
+ return package_is_published(this.pkg_json);
144
+ }
145
+
146
+ get npm_url(): Url | null {
147
+ return this.published ? url_npm_package(this.name) : null;
148
+ }
149
+
150
+ get changelog_url(): Url | null {
151
+ return this.published ? url_github_file(this.repo_url, 'CHANGELOG.md') : null;
152
+ }
107
153
 
108
154
  /**
109
155
  * Organization URL (e.g., 'https://github.com/ryanatkn'), built from `owner_name`.
110
156
  */
111
- readonly org_url = $derived(this.owner_name ? 'https://github.com/' + this.owner_name : null);
157
+ get org_url(): string | null {
158
+ const { owner_name } = this;
159
+ return owner_name ? 'https://github.com/' + owner_name : null;
160
+ }
161
+
162
+ #modules: Array<Module> | undefined;
112
163
 
113
164
  /**
114
165
  * All modules as rich `Module` instances.
115
166
  */
116
- readonly modules = $derived(
117
- this.source_json.modules
167
+ get modules(): Array<Module> {
168
+ return (this.#modules ??= this.source_json.modules
118
169
  ? this.source_json.modules.map((module_json) => new Module(this, module_json))
119
- : [],
120
- );
170
+ : []);
171
+ }
172
+
173
+ #modules_sorted: Array<Module> | undefined;
121
174
 
122
175
  /**
123
176
  * All modules sorted alphabetically by path.
124
177
  */
125
- readonly modules_sorted = $derived(
126
- [...this.modules].sort((a, b) => a.path.localeCompare(b.path)),
127
- );
178
+ get modules_sorted(): Array<Module> {
179
+ return (this.#modules_sorted ??= [...this.modules].sort((a, b) =>
180
+ a.path.localeCompare(b.path)
181
+ ));
182
+ }
183
+
184
+ #declarations: Array<Declaration> | undefined;
128
185
 
129
186
  /**
130
187
  * All declarations across all modules as a flat array.
131
188
  */
132
- readonly declarations = $derived(this.modules.flatMap((module) => module.declarations));
189
+ get declarations(): Array<Declaration> {
190
+ return (this.#declarations ??= this.modules.flatMap((module) => module.declarations));
191
+ }
192
+
193
+ #module_by_path: Map<string, Module> | undefined;
133
194
 
134
195
  /**
135
196
  * Module lookup map by path. Provides O(1) lookup.
136
197
  */
137
- readonly module_by_path = $derived(new Map(this.modules.map((m) => [m.path, m])));
198
+ get module_by_path(): Map<string, Module> {
199
+ return (this.#module_by_path ??= new Map(this.modules.map((m) => [m.path, m])));
200
+ }
201
+
202
+ #declaration_by_name: Map<string, Declaration> | undefined;
138
203
 
139
204
  /**
140
205
  * Declaration lookup map by name. Provides O(1) lookup.
141
206
  */
142
- readonly declaration_by_name = $derived(new Map(this.declarations.map((d) => [d.name, d])));
207
+ get declaration_by_name(): Map<string, Declaration> {
208
+ return (this.#declaration_by_name ??= new Map(this.declarations.map((d) => [d.name, d])));
209
+ }
143
210
 
144
211
  constructor(library_json: LibraryJson, url_prefix = '') {
145
212
  // `repo_url` is exposed non-null and several derived URLs depend on it, so
@@ -149,7 +216,7 @@ export class Library {
149
216
  throw Error(
150
217
  `failed to construct Library - pkg_json for "${
151
218
  library_json.pkg_json.name
152
- }" has no parseable \`repository\``,
219
+ }" has no parseable \`repository\``
153
220
  );
154
221
  }
155
222
  this.library_json = library_json;
@@ -184,7 +251,7 @@ export class Library {
184
251
  */
185
252
  const library_search_declarations = (
186
253
  declarations: Array<Declaration>,
187
- query: string,
254
+ query: string
188
255
  ): Array<Declaration> => {
189
256
  if (!query.trim()) return [];
190
257
 
@@ -208,7 +275,7 @@ const library_search_declarations = (
208
275
  total_score += term_best;
209
276
  }
210
277
 
211
- return {declaration, score: total_score};
278
+ return { declaration, score: total_score };
212
279
  })
213
280
  .filter((r) => r !== null)
214
281
  .sort((a, b) => b.score - a.score || a.declaration.name.localeCompare(b.declaration.name))
@@ -9,8 +9,8 @@
9
9
  * @module
10
10
  */
11
11
 
12
- import {ensure_end, strip_start} from '@fuzdev/fuz_util/string.ts';
13
- import {page} from '$app/state';
12
+ import { ensure_end, strip_start } from '@fuzdev/fuz_util/string.ts';
13
+ import { page } from '$app/state';
14
14
 
15
15
  /**
16
16
  * Convert a full URL to root-relative format by removing the origin.
package/src/lib/logos.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type {SvgData} from './svg.ts';
1
+ import type { SvgData } from './svg.ts';
2
2
 
3
3
  // TODO these can be optimized during builds, helpers and gen files?
4
4
 
@@ -24,33 +24,33 @@ export const logo_gro = {
24
24
  paths: [
25
25
  {
26
26
  fill: '#6f974c',
27
- d: 'm 24.035592,57.306905 v -14.5 h 16.329497 v 14.25 z',
27
+ d: 'm 24.035592,57.306905 v -14.5 h 16.329497 v 14.25 z'
28
28
  },
29
29
  {
30
30
  fill: '#5e853f',
31
- d: 'M 43.75,93.75 H 37.5 V 87.5 H 31.25 V 81.25 H 25 V 75 H 18.75 V 62.5 H 12.5 V 50 H 6.25 V 43.75 H 4 v -21 L 22.75,16.5 h 40.5 l 0.5,61.5 -5,-0.75 -0.25,16.5 h -2.25 l -4,2.25 -2.24617,4 H 43.75 Z M 37.5,50 H 31.25 V 43.75 H 25 v 12.5 h 12.5 z',
31
+ d: 'M 43.75,93.75 H 37.5 V 87.5 H 31.25 V 81.25 H 25 V 75 H 18.75 V 62.5 H 12.5 V 50 H 6.25 V 43.75 H 4 v -21 L 22.75,16.5 h 40.5 l 0.5,61.5 -5,-0.75 -0.25,16.5 h -2.25 l -4,2.25 -2.24617,4 H 43.75 Z M 37.5,50 H 31.25 V 43.75 H 25 v 12.5 h 12.5 z'
32
32
  },
33
33
  {
34
34
  fill: '#6f492b',
35
- d: 'm 50,93.75 h 6.25 V 75 H 62.5 V 50 H 56.25 V 37.5 H 50 V 31.25 H 43.75 V 25 H 31.25 V 18.75 H 25 V 25 H 12.5 v 6.25 H 6.25 v 12.5 H 0 v -25 H 6.25 V 12.5 h 12.5 V 6.25 H 37.5 V 0 h 25 v 6.25 h 18.75 v 6.25 h 12.5 v 6.25 H 100 v 25 H 93.75 V 50 H 87.5 V 62.5 H 81.25 V 75 H 75 v 6.25 H 68.75 V 87.5 H 62.5 v 6.25 H 56.25 V 100 H 50 Z',
35
+ d: 'm 50,93.75 h 6.25 V 75 H 62.5 V 50 H 56.25 V 37.5 H 50 V 31.25 H 43.75 V 25 H 31.25 V 18.75 H 25 V 25 H 12.5 v 6.25 H 6.25 v 12.5 H 0 v -25 H 6.25 V 12.5 h 12.5 V 6.25 H 37.5 V 0 h 25 v 6.25 h 18.75 v 6.25 h 12.5 v 6.25 H 100 v 25 H 93.75 V 50 H 87.5 V 62.5 H 81.25 V 75 H 75 v 6.25 H 68.75 V 87.5 H 62.5 v 6.25 H 56.25 V 100 H 50 Z'
36
36
  },
37
37
  {
38
38
  fill: '#3b730f',
39
- d: 'm 50,93.75 h 6.25 V 75 H 62.5 V 50 H 56.25 V 37.5 H 50 V 31.25 H 43.75 V 25 H 31.25 V 18.75 H 25 V 25 H 12.5 v 6.25 H 6.25 v 12.5 H 0 V 25 H 12.5 V 18.75 H 25 V 12.5 H 43.75 V 6.25 h 12.5 V 12.5 H 75 v 6.25 H 87.5 V 25 H 100 V 43.75 H 93.75 V 50 H 87.5 V 62.5 H 81.25 V 75 H 75 v 6.25 H 68.75 V 87.5 H 62.5 v 6.25 H 56.25 V 100 H 50 Z',
39
+ d: 'm 50,93.75 h 6.25 V 75 H 62.5 V 50 H 56.25 V 37.5 H 50 V 31.25 H 43.75 V 25 H 31.25 V 18.75 H 25 V 25 H 12.5 v 6.25 H 6.25 v 12.5 H 0 V 25 H 12.5 V 18.75 H 25 V 12.5 H 43.75 V 6.25 h 12.5 V 12.5 H 75 v 6.25 H 87.5 V 25 H 100 V 43.75 H 93.75 V 50 H 87.5 V 62.5 H 81.25 V 75 H 75 v 6.25 H 68.75 V 87.5 H 62.5 v 6.25 H 56.25 V 100 H 50 Z'
40
40
  },
41
41
  {
42
42
  fill: '#473323',
43
- d: 'M 87.5,37.5 H 81.25 V 31.25 H 68.75 V 25 H 62.5 V 18.75 H 43.75 25 V 25 H 12.5 v 6.25 H 6.25 v 12.5 H 0 V 25 H 12.5 V 18.75 H 25 V 12.5 H 43.75 V 6.25 h 12.5 V 12.5 H 75 v 6.25 H 87.5 V 25 H 100 V 43.75 H 93.75 V 50 H 87.5 Z',
43
+ d: 'M 87.5,37.5 H 81.25 V 31.25 H 68.75 V 25 H 62.5 V 18.75 H 43.75 25 V 25 H 12.5 v 6.25 H 6.25 v 12.5 H 0 V 25 H 12.5 V 18.75 H 25 V 12.5 H 43.75 V 6.25 h 12.5 V 12.5 H 75 v 6.25 H 87.5 V 25 H 100 V 43.75 H 93.75 V 50 H 87.5 Z'
44
44
  },
45
45
  {
46
46
  fill: '#2e6006',
47
- d: 'M 87.5,37.5 H 81.25 V 31.25 H 68.75 V 25 H 62.5 v -6.25 h -25 V 12.5 H 50 V 6.25 h 6.25 v 6.25 h 12.5 v 6.25 h 12.5 V 25 h 12.5 v 6.25 H 100 v 12.5 H 93.75 V 50 H 87.5 Z',
47
+ d: 'M 87.5,37.5 H 81.25 V 31.25 H 68.75 V 25 H 62.5 v -6.25 h -25 V 12.5 H 50 V 6.25 h 6.25 v 6.25 h 12.5 v 6.25 h 12.5 V 25 h 12.5 v 6.25 H 100 v 12.5 H 93.75 V 50 H 87.5 Z'
48
48
  },
49
49
  {
50
50
  fill: '#34251a',
51
- d: 'M 93.75,31.25 H 87.5 V 25 h 6.25 v 6.25 H 100 v 12.5 H 93.75 Z M 75,18.75 h 6.25 V 25 H 75 Z M 37.5,12.5 H 50 V 6.25 h 6.25 v 6.25 h 12.5 v 6.25 H 53.125 37.5 Z',
52
- },
53
- ],
51
+ d: 'M 93.75,31.25 H 87.5 V 25 h 6.25 v 6.25 H 100 v 12.5 H 93.75 Z M 75,18.75 h 6.25 V 25 H 75 Z M 37.5,12.5 H 50 V 6.25 h 6.25 v 6.25 h 12.5 v 6.25 H 53.125 37.5 Z'
52
+ }
53
+ ]
54
54
  } satisfies SvgData;
55
55
 
56
56
  export const logo_fuz = {
@@ -58,58 +58,58 @@ export const logo_fuz = {
58
58
  fill: '#84522a',
59
59
  paths: [
60
60
  {
61
- d: 'M 26.253917,88.532336 29.904106,71.394855 40.667193,53.342811 40.258534,49.99234 38.417407,49.000991 22.876908,50.369035 9.4865496,53.880193 2.3019024,57.978424 0.42708056,57.27994 7.2642726,51.086985 20.811326,45.373351 37.960128,42.356792 39.354818,40.107008 38.229925,38.149883 26.030989,27.105568 14.46539,21.861786 8.0479986,18.615387 l -0.41428,-1.710463 8.2789464,1.499862 13.012873,5.003724 13.447448,10.696856 1.680801,-0.729547 0.222439,-1.343157 -3.983998,-12.128053 -5.730215,-9.573597 -0.823624,-5.1744052 1.16944,-1.165102 2.604334,6.3355162 6.612025,7.08777 4.874534,11.55989 2.800804,0.515574 4.48815,-1.359246 1.521623,-8.687062 5.685014,-8.620764 2.75965,-6.8316782 1.094578,1.128569 -1.293029,5.4222362 -4.084776,11.06803 -0.484994,8.377408 0.194311,1.192896 1.42954,1.700726 11.563936,-10.644623 9.878262,-8.331535 8.732915,-3.390708 -0.387305,1.402757 -5.294686,3.023816 -10.445054,10.705792 -9.561599,13.627899 -0.438945,1.602755 1.001398,1.666754 17.376932,3.986302 9.537375,6.940531 4.325785,4.636405 0.211208,1.557106 -6.15842,-4.279925 -10.413771,-5.155697 -15.838715,-1.696223 -0.83461,1.144484 0.774499,2.593247 9.737644,16.194355 3.925704,17.214082 0.07146,10.277289 -1.706242,1.13628 -2.009721,-9.21637 -5.894265,-16.88027 -12.292087,-17.295813 -4.177778,-0.585888 -7.294671,2.935716 -11.138052,16.645915 -6.462422,17.752509 -1.634756,7.206641 -2.070766,-1.52923 z',
62
- },
63
- ],
61
+ d: 'M 26.253917,88.532336 29.904106,71.394855 40.667193,53.342811 40.258534,49.99234 38.417407,49.000991 22.876908,50.369035 9.4865496,53.880193 2.3019024,57.978424 0.42708056,57.27994 7.2642726,51.086985 20.811326,45.373351 37.960128,42.356792 39.354818,40.107008 38.229925,38.149883 26.030989,27.105568 14.46539,21.861786 8.0479986,18.615387 l -0.41428,-1.710463 8.2789464,1.499862 13.012873,5.003724 13.447448,10.696856 1.680801,-0.729547 0.222439,-1.343157 -3.983998,-12.128053 -5.730215,-9.573597 -0.823624,-5.1744052 1.16944,-1.165102 2.604334,6.3355162 6.612025,7.08777 4.874534,11.55989 2.800804,0.515574 4.48815,-1.359246 1.521623,-8.687062 5.685014,-8.620764 2.75965,-6.8316782 1.094578,1.128569 -1.293029,5.4222362 -4.084776,11.06803 -0.484994,8.377408 0.194311,1.192896 1.42954,1.700726 11.563936,-10.644623 9.878262,-8.331535 8.732915,-3.390708 -0.387305,1.402757 -5.294686,3.023816 -10.445054,10.705792 -9.561599,13.627899 -0.438945,1.602755 1.001398,1.666754 17.376932,3.986302 9.537375,6.940531 4.325785,4.636405 0.211208,1.557106 -6.15842,-4.279925 -10.413771,-5.155697 -15.838715,-1.696223 -0.83461,1.144484 0.774499,2.593247 9.737644,16.194355 3.925704,17.214082 0.07146,10.277289 -1.706242,1.13628 -2.009721,-9.21637 -5.894265,-16.88027 -12.292087,-17.295813 -4.177778,-0.585888 -7.294671,2.935716 -11.138052,16.645915 -6.462422,17.752509 -1.634756,7.206641 -2.070766,-1.52923 z'
62
+ }
63
+ ]
64
64
  } satisfies SvgData;
65
65
 
66
66
  export const logo_fuz_app = {
67
67
  label: 'a friendly teal spider facing you',
68
68
  fill: '#2e9e6f',
69
- paths: logo_fuz.paths,
69
+ paths: logo_fuz.paths
70
70
  } satisfies SvgData;
71
71
 
72
72
  export const logo_fuz_css = {
73
73
  label: 'a fuzzy tuft of green moss',
74
74
  fill: '#3db33d',
75
75
  paths: logo_fuz.paths,
76
- style: 'transform: scaleX(-1) rotate(180deg)',
76
+ style: 'transform: scaleX(-1) rotate(180deg)'
77
77
  } satisfies SvgData;
78
78
 
79
79
  export const logo_fuz_ui = {
80
80
  label: 'a friendly red spider facing you',
81
81
  fill: '#d93636',
82
- paths: logo_fuz.paths,
82
+ paths: logo_fuz.paths
83
83
  } satisfies SvgData;
84
84
 
85
85
  export const logo_fuz_code = {
86
86
  label: 'a friendly pink spider facing you',
87
87
  fill: '#e55d95',
88
- paths: logo_fuz.paths,
88
+ paths: logo_fuz.paths
89
89
  } satisfies SvgData;
90
90
 
91
91
  export const logo_fuz_blog = {
92
92
  label: 'a friendly yellow spider facing you',
93
93
  fill: '#d8bc31',
94
- paths: logo_fuz.paths,
94
+ paths: logo_fuz.paths
95
95
  } satisfies SvgData;
96
96
 
97
97
  export const logo_fuz_mastodon = {
98
98
  label: 'a friendly purple spider facing you',
99
99
  fill: '#8866cc',
100
- paths: logo_fuz.paths,
100
+ paths: logo_fuz.paths
101
101
  } satisfies SvgData;
102
102
 
103
103
  export const logo_fuz_gitops = {
104
104
  label: 'a friendly blue spider facing you',
105
105
  fill: '#6199d1',
106
- paths: logo_fuz.paths,
106
+ paths: logo_fuz.paths
107
107
  } satisfies SvgData;
108
108
 
109
109
  export const logo_fuz_docs = {
110
110
  label: 'a friendly cyan spider facing you',
111
111
  fill: '#1ec3d2',
112
- paths: logo_fuz.paths,
112
+ paths: logo_fuz.paths
113
113
  } satisfies SvgData;
114
114
 
115
115
  export const logo_svelte_docinfo = {
@@ -117,9 +117,9 @@ export const logo_svelte_docinfo = {
117
117
  fill: '#1ec3d2',
118
118
  paths: [
119
119
  {
120
- d: 'M 83,80.28 c -9.75,-34.41 2.18,-52.33 -3.76,-70 -2.31,-7.66 -48.25,-12 -70.25,-6 -12,6 -10,24 4,24 6,0 5.51,-13.67 6,-18 0,0 -1.43,59.52 5.13,80.21 1.2,3.8 2.91,5.28 4,5.92 3.93,2.31 63.48,3.74 68.01,0.54 1.18,-0.84 3.11,-5.38 2.63,-8.75 -0.42,-2.94 -3.27,-5.78 -5.28,-6.26 -1.74,-0.41 -0.62,-0.79 -5.37,-0.59 C 77.2,81.96 71.49,85.44 47.57,84.25 41.58,84.09 11.04,79.77 64.12,56.73 51.2,46.21 46.99,49.36 37.77,43.13 37.39,42.87 55,45.85 66.37,56.98 -10.84,93.94 82.99,80.29 82.99,80.29 Z',
121
- },
122
- ],
120
+ d: 'M 83,80.28 c -9.75,-34.41 2.18,-52.33 -3.76,-70 -2.31,-7.66 -48.25,-12 -70.25,-6 -12,6 -10,24 4,24 6,0 5.51,-13.67 6,-18 0,0 -1.43,59.52 5.13,80.21 1.2,3.8 2.91,5.28 4,5.92 3.93,2.31 63.48,3.74 68.01,0.54 1.18,-0.84 3.11,-5.38 2.63,-8.75 -0.42,-2.94 -3.27,-5.78 -5.28,-6.26 -1.74,-0.41 -0.62,-0.79 -5.37,-0.59 C 77.2,81.96 71.49,85.44 47.57,84.25 41.58,84.09 11.04,79.77 64.12,56.73 51.2,46.21 46.99,49.36 37.77,43.13 37.39,42.87 55,45.85 66.37,56.98 -10.84,93.94 82.99,80.29 82.99,80.29 Z'
121
+ }
122
+ ]
123
123
  } satisfies SvgData;
124
124
 
125
125
  export const logo_fuz_template = {
@@ -127,9 +127,9 @@ export const logo_fuz_template = {
127
127
  fill: '#f4672f',
128
128
  paths: [
129
129
  {
130
- d: 'm 25,81.200002 h 6.2 v -12.5 h 6.3 v -18.7 h -6.3 v 6.2 H 12.5 v 6.3 H 0 v -6.3 h 6.2 v -6.2 H 25 v -6.3 h 12.5 v -6.2 h -6.3 v -6.3 H 18.7 v -6.2 H 6.2 v -6.3 H 25 v 6.3 h 12.5 v -6.3 H 31.2 V 6.2 h 6.3 v 6.300002 h 6.2 V 31.200001 H 56.2 V 12.500002 h 6.3 V 6.2 h 6.2 v 12.500001 h -6.2 v 18.800001 h 6.2 v -12.5 h 12.5 v -12.5 h 12.5 v 6.2 h -6.2 v 12.5 H 75 v 12.5 h 6.2 v 6.3 h 12.5 v 6.2 h 6.299997 v 6.3 H 87.5 v -6.3 H 75 v -6.2 h -6.3 v 12.5 H 75 v 12.5 h 6.2 V 99.99999 H 75 V 81.200002 h -6.3 v -12.5 h -6.2 v -12.5 H 43.7 v 18.8 h -6.2 v 12.5 H 31.2 V 99.99999 H 25 Z',
131
- },
132
- ],
130
+ d: 'm 25,81.200002 h 6.2 v -12.5 h 6.3 v -18.7 h -6.3 v 6.2 H 12.5 v 6.3 H 0 v -6.3 h 6.2 v -6.2 H 25 v -6.3 h 12.5 v -6.2 h -6.3 v -6.3 H 18.7 v -6.2 H 6.2 v -6.3 H 25 v 6.3 h 12.5 v -6.3 H 31.2 V 6.2 h 6.3 v 6.300002 h 6.2 V 31.200001 H 56.2 V 12.500002 h 6.3 V 6.2 h 6.2 v 12.500001 h -6.2 v 18.800001 h 6.2 v -12.5 h 12.5 v -12.5 h 12.5 v 6.2 h -6.2 v 12.5 H 75 v 12.5 h 6.2 v 6.3 h 12.5 v 6.2 h 6.299997 v 6.3 H 87.5 v -6.3 H 75 v -6.2 h -6.3 v 12.5 H 75 v 12.5 h 6.2 V 99.99999 H 75 V 81.200002 h -6.3 v -12.5 h -6.2 v -12.5 H 43.7 v 18.8 h -6.2 v 12.5 H 31.2 V 99.99999 H 25 Z'
131
+ }
132
+ ]
133
133
  } satisfies SvgData;
134
134
 
135
135
  export const logo_fuz_util = {
@@ -137,25 +137,25 @@ export const logo_fuz_util = {
137
137
  paths: [
138
138
  {
139
139
  fill: '#5e853f',
140
- d: 'M 18.067186,15.969407 C 21.788999,13.893836 17.949371,0.38957847 10.927436,0.04361599 4.8719565,-0.25473037 1.7349173,7.4851976 0.94704854,15.249287 c -0.92008807,9.06705 -1.79155525,17.669932 0.59969726,28.291532 2.4805689,12.269719 7.0800447,23.952702 13.1393162,34.8823 6.000724,10.5946 6.775015,20.816886 4.701503,21.478748 -0.03241,0.01035 -0.07998,0.06265 0.04147,0.06596 1.294211,0.03532 10.640814,0.04592 10.677563,-0.05295 0.485896,-1.307172 -3.047914,-6.728008 -1.423246,-8.607633 1.949043,-2.254904 17.430713,0.186565 21.929,0.285178 9.05576,0.198523 17.000796,-1.770745 18.230176,-0.990103 1.997906,1.268647 0.07692,8.622864 -1.734662,9.31776 -0.123669,0.04744 -0.0605,0.05786 8.7e-5,0.05776 1.355848,-0.0022 8.671284,0.02064 9.113066,-0.03424 1.109966,-0.137881 1.121155,-9.535235 1.329075,-10.418319 C 77.607043,89.2834 96.053852,85.109995 99.112049,70.368973 103.63141,48.584901 86.877032,39.05263 85.950278,39.29966 83.317032,40.001563 101.56057,48.396651 91.102193,67.902384 88.018737,73.653284 77.350057,79.523245 75.685258,79.119008 73.64059,78.622534 65.09671,63.091297 52.400901,65.836332 43.234666,67.818217 41.919113,72.011159 30.91062,71.457371 23.396234,71.079356 15.879493,62.020499 10.825044,44.977744 8.7853926,38.10038 7.9304392,31.282385 7.7195376,25.924892 7.3556266,16.68053 7.7329856,12.199716 7.7329856,12.199716 c 0,0 7.0326794,5.610875 10.3342004,3.769691 z',
140
+ d: 'M 18.067186,15.969407 C 21.788999,13.893836 17.949371,0.38957847 10.927436,0.04361599 4.8719565,-0.25473037 1.7349173,7.4851976 0.94704854,15.249287 c -0.92008807,9.06705 -1.79155525,17.669932 0.59969726,28.291532 2.4805689,12.269719 7.0800447,23.952702 13.1393162,34.8823 6.000724,10.5946 6.775015,20.816886 4.701503,21.478748 -0.03241,0.01035 -0.07998,0.06265 0.04147,0.06596 1.294211,0.03532 10.640814,0.04592 10.677563,-0.05295 0.485896,-1.307172 -3.047914,-6.728008 -1.423246,-8.607633 1.949043,-2.254904 17.430713,0.186565 21.929,0.285178 9.05576,0.198523 17.000796,-1.770745 18.230176,-0.990103 1.997906,1.268647 0.07692,8.622864 -1.734662,9.31776 -0.123669,0.04744 -0.0605,0.05786 8.7e-5,0.05776 1.355848,-0.0022 8.671284,0.02064 9.113066,-0.03424 1.109966,-0.137881 1.121155,-9.535235 1.329075,-10.418319 C 77.607043,89.2834 96.053852,85.109995 99.112049,70.368973 103.63141,48.584901 86.877032,39.05263 85.950278,39.29966 83.317032,40.001563 101.56057,48.396651 91.102193,67.902384 88.018737,73.653284 77.350057,79.523245 75.685258,79.119008 73.64059,78.622534 65.09671,63.091297 52.400901,65.836332 43.234666,67.818217 41.919113,72.011159 30.91062,71.457371 23.396234,71.079356 15.879493,62.020499 10.825044,44.977744 8.7853926,38.10038 7.9304392,31.282385 7.7195376,25.924892 7.3556266,16.68053 7.7329856,12.199716 7.7329856,12.199716 c 0,0 7.0326794,5.610875 10.3342004,3.769691 z'
141
141
  },
142
142
  {
143
143
  fill: '#6f492b',
144
- d: 'm 51.811124,91.579144 c -0.338516,0.300927 1.649325,0.223227 1.91566,0.125562 10.084215,-3.697658 13.756737,-6.313605 15.083689,-19.379753 0.213532,-2.102603 -6.814409,-6.279564 -6.854038,-5.131405 -0.399472,11.573929 -1.610604,16.392773 -10.086139,24.32687',
144
+ d: 'm 51.811124,91.579144 c -0.338516,0.300927 1.649325,0.223227 1.91566,0.125562 10.084215,-3.697658 13.756737,-6.313605 15.083689,-19.379753 0.213532,-2.102603 -6.814409,-6.279564 -6.854038,-5.131405 -0.399472,11.573929 -1.610604,16.392773 -10.086139,24.32687'
145
145
  },
146
146
  {
147
147
  fill: '#34251a',
148
- d: 'm 57.712693,87.945562 c 0,0 1.995464,1.865412 2.68268,1.964956 0.765874,0.110938 4.011805,-1.572536 4.056136,-2.519526 0.05138,-1.097583 -3.559853,-3.060285 -3.559853,-3.060285',
148
+ d: 'm 57.712693,87.945562 c 0,0 1.995464,1.865412 2.68268,1.964956 0.765874,0.110938 4.011805,-1.572536 4.056136,-2.519526 0.05138,-1.097583 -3.559853,-3.060285 -3.559853,-3.060285'
149
149
  },
150
150
  {
151
151
  fill: '#34251a',
152
- d: 'm 61.598583,82.940048 c 0,0 3.423751,3.095396 4.286346,2.851789 0.676123,-0.190945 2.567214,-3.369081 2.28239,-4.177499 -0.333199,-0.945723 -5.337842,-1.790867 -5.337842,-1.790867',
152
+ d: 'm 61.598583,82.940048 c 0,0 3.423751,3.095396 4.286346,2.851789 0.676123,-0.190945 2.567214,-3.369081 2.28239,-4.177499 -0.333199,-0.945723 -5.337842,-1.790867 -5.337842,-1.790867'
153
153
  },
154
154
  {
155
155
  fill: '#34251a',
156
- d: 'm 63.187415,78.383306 c 0,0 4.923745,1.759016 5.668289,1.154079 0.551751,-0.448294 1.380932,-3.505132 1.032166,-4.129317 -0.767431,-1.37347 -5.791186,-3.388548 -5.791186,-3.388548',
157
- },
158
- ],
156
+ d: 'm 63.187415,78.383306 c 0,0 4.923745,1.759016 5.668289,1.154079 0.551751,-0.448294 1.380932,-3.505132 1.032166,-4.129317 -0.767431,-1.37347 -5.791186,-3.388548 -5.791186,-3.388548'
157
+ }
158
+ ]
159
159
  } satisfies SvgData;
160
160
 
161
161
  export const logo_tsv = {
@@ -163,9 +163,9 @@ export const logo_tsv = {
163
163
  fill: '#f4672f',
164
164
  paths: [
165
165
  {
166
- d: 'M68.75 0h12.5v31.25h-12.5ZM62.5 6.25h6.25v37.5h-6.25ZM81.25 6.25h6.25v18.75h-6.25ZM56.25 12.5h6.25v18.75h-6.25ZM50 18.75h6.25v37.5h-6.25ZM43.75 25h6.25v37.5h-6.25ZM68.75 31.25h6.25v6.25h-6.25ZM37.5 37.5h6.25v12.5h-6.25ZM56.25 37.5h6.25v12.5h-6.25ZM31.25 43.75h6.25v25h-6.25ZM25 50h6.25v25h-6.25ZM37.5 56.25h6.25v6.25h-6.25ZM18.75 62.5h6.25v18.75h-6.25ZM12.5 68.75h6.25v25h-6.25ZM6.25 81.25h6.25v12.5h-6.25ZM18.75 87.5l81.25 12.5l-81.25-6.25Z',
167
- },
168
- ],
166
+ d: 'M68.75 0h12.5v31.25h-12.5ZM62.5 6.25h6.25v37.5h-6.25ZM81.25 6.25h6.25v18.75h-6.25ZM56.25 12.5h6.25v18.75h-6.25ZM50 18.75h6.25v37.5h-6.25ZM43.75 25h6.25v37.5h-6.25ZM68.75 31.25h6.25v6.25h-6.25ZM37.5 37.5h6.25v12.5h-6.25ZM56.25 37.5h6.25v12.5h-6.25ZM31.25 43.75h6.25v25h-6.25ZM25 50h6.25v25h-6.25ZM37.5 56.25h6.25v6.25h-6.25ZM18.75 62.5h6.25v18.75h-6.25ZM12.5 68.75h6.25v25h-6.25ZM6.25 81.25h6.25v12.5h-6.25ZM18.75 87.5l81.25 12.5l-81.25-6.25Z'
167
+ }
168
+ ]
169
169
  } satisfies SvgData;
170
170
 
171
171
  export const logo_github = {
@@ -175,10 +175,10 @@ export const logo_github = {
175
175
  d: 'M8 0C3.58 0 0 3.58 0 8C0 11.54 2.29 14.53 5.47 15.59C5.87 15.66 6.02 15.42 6.02 15.21C6.02 15.02 6.01 14.39 6.01 13.72C4 14.09 3.48 13.23 3.32 12.78C3.23 12.55 2.84 11.84 2.5 11.65C2.22 11.5 1.82 11.13 2.49 11.12C3.12 11.11 3.57 11.7 3.72 11.94C4.44 13.15 5.59 12.81 6.05 12.6C6.12 12.08 6.33 11.73 6.56 11.53C4.78 11.33 2.92 10.64 2.92 7.58C2.92 6.71 3.23 5.99 3.74 5.43C3.66 5.23 3.38 4.41 3.82 3.31C3.82 3.31 4.49 3.1 6.02 4.13C6.66 3.95 7.34 3.86 8.02 3.86C8.7 3.86 9.38 3.95 10.02 4.13C11.55 3.09 12.22 3.31 12.22 3.31C12.66 4.41 12.38 5.23 12.3 5.43C12.81 5.99 13.12 6.7 13.12 7.58C13.12 10.65 11.25 11.33 9.47 11.53C9.76 11.78 10.01 12.26 10.01 13.01C10.01 14.08 10 14.94 10 15.21C10 15.42 10.15 15.67 10.55 15.59C13.71 14.53 16 11.53 16 8C16 3.58 12.42 0 8 0Z',
176
176
  'fill-rule': 'evenodd',
177
177
  'clip-rule': 'evenodd',
178
- transform: 'scale(64)',
179
- },
178
+ transform: 'scale(64)'
179
+ }
180
180
  ],
181
- viewBox: '0 0 1024 1024',
181
+ viewBox: '0 0 1024 1024'
182
182
  } satisfies SvgData;
183
183
 
184
184
  export const logo_mdn = {
@@ -186,7 +186,7 @@ export const logo_mdn = {
186
186
  fill: '#8cb4ff',
187
187
  paths: [
188
188
  {
189
- d: 'M42 .2 13.4 92.3H1.7L30.2.2Zm10.4 0v92.1H42V.2Zm40.3 0L64.2 92.3H52.5L81 .2Zm10.4 0v92.1H92.7V.2Z',
190
- },
191
- ],
189
+ d: 'M42 .2 13.4 92.3H1.7L30.2.2Zm10.4 0v92.1H42V.2Zm40.3 0L64.2 92.3H52.5L81 .2Zm10.4 0v92.1H92.7V.2Z'
190
+ }
191
+ ]
192
192
  } satisfies SvgData;