@fuzdev/fuz_ui 0.169.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +93 -0
- package/dist/Alert.svelte +108 -0
- package/dist/Alert.svelte.d.ts +16 -0
- package/dist/Alert.svelte.d.ts.map +1 -0
- package/dist/ApiDeclarationList.svelte +35 -0
- package/dist/ApiDeclarationList.svelte.d.ts +9 -0
- package/dist/ApiDeclarationList.svelte.d.ts.map +1 -0
- package/dist/ApiIndex.svelte +65 -0
- package/dist/ApiIndex.svelte.d.ts +23 -0
- package/dist/ApiIndex.svelte.d.ts.map +1 -0
- package/dist/ApiModule.svelte +124 -0
- package/dist/ApiModule.svelte.d.ts +22 -0
- package/dist/ApiModule.svelte.d.ts.map +1 -0
- package/dist/Breadcrumb.svelte +83 -0
- package/dist/Breadcrumb.svelte.d.ts +23 -0
- package/dist/Breadcrumb.svelte.d.ts.map +1 -0
- package/dist/Card.svelte +157 -0
- package/dist/Card.svelte.d.ts +13 -0
- package/dist/Card.svelte.d.ts.map +1 -0
- package/dist/ColorSchemeInput.svelte +65 -0
- package/dist/ColorSchemeInput.svelte.d.ts +11 -0
- package/dist/ColorSchemeInput.svelte.d.ts.map +1 -0
- package/dist/Contextmenu.svelte +30 -0
- package/dist/Contextmenu.svelte.d.ts +32 -0
- package/dist/Contextmenu.svelte.d.ts.map +1 -0
- package/dist/ContextmenuEntry.svelte +74 -0
- package/dist/ContextmenuEntry.svelte.d.ts +12 -0
- package/dist/ContextmenuEntry.svelte.d.ts.map +1 -0
- package/dist/ContextmenuLinkEntry.svelte +112 -0
- package/dist/ContextmenuLinkEntry.svelte.d.ts +12 -0
- package/dist/ContextmenuLinkEntry.svelte.d.ts.map +1 -0
- package/dist/ContextmenuRoot.svelte +372 -0
- package/dist/ContextmenuRoot.svelte.d.ts +71 -0
- package/dist/ContextmenuRoot.svelte.d.ts.map +1 -0
- package/dist/ContextmenuRootForSafariCompatibility.svelte +541 -0
- package/dist/ContextmenuRootForSafariCompatibility.svelte.d.ts +79 -0
- package/dist/ContextmenuRootForSafariCompatibility.svelte.d.ts.map +1 -0
- package/dist/ContextmenuSeparator.svelte +16 -0
- package/dist/ContextmenuSeparator.svelte.d.ts +4 -0
- package/dist/ContextmenuSeparator.svelte.d.ts.map +1 -0
- package/dist/ContextmenuSubmenu.svelte +116 -0
- package/dist/ContextmenuSubmenu.svelte.d.ts +10 -0
- package/dist/ContextmenuSubmenu.svelte.d.ts.map +1 -0
- package/dist/ContextmenuTextEntry.svelte +21 -0
- package/dist/ContextmenuTextEntry.svelte.d.ts +10 -0
- package/dist/ContextmenuTextEntry.svelte.d.ts.map +1 -0
- package/dist/CopyToClipboard.svelte +81 -0
- package/dist/CopyToClipboard.svelte.d.ts +18 -0
- package/dist/CopyToClipboard.svelte.d.ts.map +1 -0
- package/dist/DeclarationDetail.svelte +340 -0
- package/dist/DeclarationDetail.svelte.d.ts +8 -0
- package/dist/DeclarationDetail.svelte.d.ts.map +1 -0
- package/dist/DeclarationLink.svelte +50 -0
- package/dist/DeclarationLink.svelte.d.ts +8 -0
- package/dist/DeclarationLink.svelte.d.ts.map +1 -0
- package/dist/Details.svelte +51 -0
- package/dist/Details.svelte.d.ts +20 -0
- package/dist/Details.svelte.d.ts.map +1 -0
- package/dist/Dialog.svelte +217 -0
- package/dist/Dialog.svelte.d.ts +30 -0
- package/dist/Dialog.svelte.d.ts.map +1 -0
- package/dist/Dialogs.svelte +28 -0
- package/dist/Dialogs.svelte.d.ts +11 -0
- package/dist/Dialogs.svelte.d.ts.map +1 -0
- package/dist/Docs.svelte +179 -0
- package/dist/Docs.svelte.d.ts +13 -0
- package/dist/Docs.svelte.d.ts.map +1 -0
- package/dist/DocsContent.svelte +40 -0
- package/dist/DocsContent.svelte.d.ts +14 -0
- package/dist/DocsContent.svelte.d.ts.map +1 -0
- package/dist/DocsFooter.svelte +64 -0
- package/dist/DocsFooter.svelte.d.ts +15 -0
- package/dist/DocsFooter.svelte.d.ts.map +1 -0
- package/dist/DocsLink.svelte +41 -0
- package/dist/DocsLink.svelte.d.ts +12 -0
- package/dist/DocsLink.svelte.d.ts.map +1 -0
- package/dist/DocsList.svelte +44 -0
- package/dist/DocsList.svelte.d.ts +11 -0
- package/dist/DocsList.svelte.d.ts.map +1 -0
- package/dist/DocsMenu.svelte +55 -0
- package/dist/DocsMenu.svelte.d.ts +11 -0
- package/dist/DocsMenu.svelte.d.ts.map +1 -0
- package/dist/DocsMenuHeader.svelte +15 -0
- package/dist/DocsMenuHeader.svelte.d.ts +9 -0
- package/dist/DocsMenuHeader.svelte.d.ts.map +1 -0
- package/dist/DocsModulesList.svelte +32 -0
- package/dist/DocsModulesList.svelte.d.ts +7 -0
- package/dist/DocsModulesList.svelte.d.ts.map +1 -0
- package/dist/DocsPageLinks.svelte +61 -0
- package/dist/DocsPageLinks.svelte.d.ts +8 -0
- package/dist/DocsPageLinks.svelte.d.ts.map +1 -0
- package/dist/DocsPrimaryNav.svelte +93 -0
- package/dist/DocsPrimaryNav.svelte.d.ts +11 -0
- package/dist/DocsPrimaryNav.svelte.d.ts.map +1 -0
- package/dist/DocsSearch.svelte +48 -0
- package/dist/DocsSearch.svelte.d.ts +11 -0
- package/dist/DocsSearch.svelte.d.ts.map +1 -0
- package/dist/DocsSecondaryNav.svelte +63 -0
- package/dist/DocsSecondaryNav.svelte.d.ts +9 -0
- package/dist/DocsSecondaryNav.svelte.d.ts.map +1 -0
- package/dist/DocsTertiaryNav.svelte +118 -0
- package/dist/DocsTertiaryNav.svelte.d.ts +10 -0
- package/dist/DocsTertiaryNav.svelte.d.ts.map +1 -0
- package/dist/EcosystemLinks.svelte +53 -0
- package/dist/EcosystemLinks.svelte.d.ts +7 -0
- package/dist/EcosystemLinks.svelte.d.ts.map +1 -0
- package/dist/EcosystemLinksPanel.svelte +22 -0
- package/dist/EcosystemLinksPanel.svelte.d.ts +8 -0
- package/dist/EcosystemLinksPanel.svelte.d.ts.map +1 -0
- package/dist/GithubLink.svelte +75 -0
- package/dist/GithubLink.svelte.d.ts +14 -0
- package/dist/GithubLink.svelte.d.ts.map +1 -0
- package/dist/Glyph.svelte +28 -0
- package/dist/Glyph.svelte.d.ts +9 -0
- package/dist/Glyph.svelte.d.ts.map +1 -0
- package/dist/Hashlink.svelte +41 -0
- package/dist/Hashlink.svelte.d.ts +8 -0
- package/dist/Hashlink.svelte.d.ts.map +1 -0
- package/dist/HiddenPersonalLinks.svelte +6 -0
- package/dist/HiddenPersonalLinks.svelte.d.ts +27 -0
- package/dist/HiddenPersonalLinks.svelte.d.ts.map +1 -0
- package/dist/HueInput.svelte +127 -0
- package/dist/HueInput.svelte.d.ts +11 -0
- package/dist/HueInput.svelte.d.ts.map +1 -0
- package/dist/ImgOrSvg.svelte +58 -0
- package/dist/ImgOrSvg.svelte.d.ts +25 -0
- package/dist/ImgOrSvg.svelte.d.ts.map +1 -0
- package/dist/LibraryDetail.svelte +297 -0
- package/dist/LibraryDetail.svelte.d.ts +15 -0
- package/dist/LibraryDetail.svelte.d.ts.map +1 -0
- package/dist/LibrarySummary.svelte +151 -0
- package/dist/LibrarySummary.svelte.d.ts +16 -0
- package/dist/LibrarySummary.svelte.d.ts.map +1 -0
- package/dist/MdnLink.svelte +40 -0
- package/dist/MdnLink.svelte.d.ts +8 -0
- package/dist/MdnLink.svelte.d.ts.map +1 -0
- package/dist/Mdz.svelte +30 -0
- package/dist/Mdz.svelte.d.ts +10 -0
- package/dist/Mdz.svelte.d.ts.map +1 -0
- package/dist/MdzNodeView.svelte +93 -0
- package/dist/MdzNodeView.svelte.d.ts +9 -0
- package/dist/MdzNodeView.svelte.d.ts.map +1 -0
- package/dist/ModuleLink.svelte +48 -0
- package/dist/ModuleLink.svelte.d.ts +8 -0
- package/dist/ModuleLink.svelte.d.ts.map +1 -0
- package/dist/PasteFromClipboard.svelte +35 -0
- package/dist/PasteFromClipboard.svelte.d.ts +9 -0
- package/dist/PasteFromClipboard.svelte.d.ts.map +1 -0
- package/dist/PendingAnimation.svelte +62 -0
- package/dist/PendingAnimation.svelte.d.ts +13 -0
- package/dist/PendingAnimation.svelte.d.ts.map +1 -0
- package/dist/PendingButton.svelte +75 -0
- package/dist/PendingButton.svelte.d.ts +17 -0
- package/dist/PendingButton.svelte.d.ts.map +1 -0
- package/dist/ProjectLinks.svelte +54 -0
- package/dist/ProjectLinks.svelte.d.ts +19 -0
- package/dist/ProjectLinks.svelte.d.ts.map +1 -0
- package/dist/Redirect.svelte +44 -0
- package/dist/Redirect.svelte.d.ts +23 -0
- package/dist/Redirect.svelte.d.ts.map +1 -0
- package/dist/Spiders.svelte +57 -0
- package/dist/Spiders.svelte.d.ts +9 -0
- package/dist/Spiders.svelte.d.ts.map +1 -0
- package/dist/Svg.svelte +99 -0
- package/dist/Svg.svelte.d.ts +54 -0
- package/dist/Svg.svelte.d.ts.map +1 -0
- package/dist/Teleport.svelte +48 -0
- package/dist/Teleport.svelte.d.ts +15 -0
- package/dist/Teleport.svelte.d.ts.map +1 -0
- package/dist/ThemeInput.svelte +75 -0
- package/dist/ThemeInput.svelte.d.ts +15 -0
- package/dist/ThemeInput.svelte.d.ts.map +1 -0
- package/dist/Themed.svelte +101 -0
- package/dist/Themed.svelte.d.ts +24 -0
- package/dist/Themed.svelte.d.ts.map +1 -0
- package/dist/TomeContent.svelte +67 -0
- package/dist/TomeContent.svelte.d.ts +12 -0
- package/dist/TomeContent.svelte.d.ts.map +1 -0
- package/dist/TomeHeader.svelte +56 -0
- package/dist/TomeHeader.svelte.d.ts +4 -0
- package/dist/TomeHeader.svelte.d.ts.map +1 -0
- package/dist/TomeLink.svelte +29 -0
- package/dist/TomeLink.svelte.d.ts +10 -0
- package/dist/TomeLink.svelte.d.ts.map +1 -0
- package/dist/TomeSection.svelte +65 -0
- package/dist/TomeSection.svelte.d.ts +24 -0
- package/dist/TomeSection.svelte.d.ts.map +1 -0
- package/dist/TomeSectionHeader.svelte +90 -0
- package/dist/TomeSectionHeader.svelte.d.ts +13 -0
- package/dist/TomeSectionHeader.svelte.d.ts.map +1 -0
- package/dist/TypeLink.svelte +19 -0
- package/dist/TypeLink.svelte.d.ts +7 -0
- package/dist/TypeLink.svelte.d.ts.map +1 -0
- package/dist/alert.d.ts +7 -0
- package/dist/alert.d.ts.map +1 -0
- package/dist/alert.js +6 -0
- package/dist/api_search.svelte.d.ts +16 -0
- package/dist/api_search.svelte.d.ts.map +1 -0
- package/dist/api_search.svelte.js +61 -0
- package/dist/constants.d.ts +2 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +3 -0
- package/dist/context_helpers.d.ts +17 -0
- package/dist/context_helpers.d.ts.map +1 -0
- package/dist/context_helpers.js +19 -0
- package/dist/contextmenu_helpers.d.ts +16 -0
- package/dist/contextmenu_helpers.d.ts.map +1 -0
- package/dist/contextmenu_helpers.js +39 -0
- package/dist/contextmenu_state.svelte.d.ts +152 -0
- package/dist/contextmenu_state.svelte.d.ts.map +1 -0
- package/dist/contextmenu_state.svelte.js +424 -0
- package/dist/csp.d.ts +160 -0
- package/dist/csp.d.ts.map +1 -0
- package/dist/csp.js +354 -0
- package/dist/csp_of_ryanatkn.d.ts +6 -0
- package/dist/csp_of_ryanatkn.d.ts.map +1 -0
- package/dist/csp_of_ryanatkn.js +14 -0
- package/dist/declaration.svelte.d.ts +84 -0
- package/dist/declaration.svelte.d.ts.map +1 -0
- package/dist/declaration.svelte.js +66 -0
- package/dist/declaration_contextmenu.d.ts +4 -0
- package/dist/declaration_contextmenu.d.ts.map +1 -0
- package/dist/declaration_contextmenu.js +14 -0
- package/dist/dialog.d.ts +24 -0
- package/dist/dialog.d.ts.map +1 -0
- package/dist/dialog.js +12 -0
- package/dist/dimensions.svelte.d.ts +5 -0
- package/dist/dimensions.svelte.d.ts.map +1 -0
- package/dist/dimensions.svelte.js +4 -0
- package/dist/docs_helpers.svelte.d.ts +48 -0
- package/dist/docs_helpers.svelte.d.ts.map +1 -0
- package/dist/docs_helpers.svelte.js +99 -0
- package/dist/helpers.d.ts +2 -0
- package/dist/helpers.d.ts.map +1 -0
- package/dist/helpers.js +16 -0
- package/dist/intersect.svelte.d.ts +47 -0
- package/dist/intersect.svelte.d.ts.map +1 -0
- package/dist/intersect.svelte.js +92 -0
- package/dist/library.svelte.d.ts +197 -0
- package/dist/library.svelte.d.ts.map +1 -0
- package/dist/library.svelte.js +130 -0
- package/dist/library_gen.d.ts +34 -0
- package/dist/library_gen.d.ts.map +1 -0
- package/dist/library_gen.js +123 -0
- package/dist/library_gen_helpers.d.ts +85 -0
- package/dist/library_gen_helpers.d.ts.map +1 -0
- package/dist/library_gen_helpers.js +188 -0
- package/dist/library_helpers.d.ts +54 -0
- package/dist/library_helpers.d.ts.map +1 -0
- package/dist/library_helpers.js +102 -0
- package/dist/logos.d.ts +134 -0
- package/dist/logos.d.ts.map +1 -0
- package/dist/logos.js +281 -0
- package/dist/mdz.d.ts +106 -0
- package/dist/mdz.d.ts.map +1 -0
- package/dist/mdz.js +1481 -0
- package/dist/mdz_components.d.ts +37 -0
- package/dist/mdz_components.d.ts.map +1 -0
- package/dist/mdz_components.js +12 -0
- package/dist/module.svelte.d.ts +47 -0
- package/dist/module.svelte.d.ts.map +1 -0
- package/dist/module.svelte.js +56 -0
- package/dist/module_contextmenu.d.ts +4 -0
- package/dist/module_contextmenu.d.ts.map +1 -0
- package/dist/module_contextmenu.js +14 -0
- package/dist/module_helpers.d.ts +69 -0
- package/dist/module_helpers.d.ts.map +1 -0
- package/dist/module_helpers.js +87 -0
- package/dist/rune_helpers.svelte.d.ts +6 -0
- package/dist/rune_helpers.svelte.d.ts.map +1 -0
- package/dist/rune_helpers.svelte.js +10 -0
- package/dist/storage.d.ts +13 -0
- package/dist/storage.d.ts.map +1 -0
- package/dist/storage.js +43 -0
- package/dist/svelte_helpers.d.ts +37 -0
- package/dist/svelte_helpers.d.ts.map +1 -0
- package/dist/svelte_helpers.js +245 -0
- package/dist/themer.svelte.d.ts +24 -0
- package/dist/themer.svelte.d.ts.map +1 -0
- package/dist/themer.svelte.js +43 -0
- package/dist/tome.d.ts +80 -0
- package/dist/tome.d.ts.map +1 -0
- package/dist/tome.js +27 -0
- package/dist/ts_helpers.d.ts +110 -0
- package/dist/ts_helpers.d.ts.map +1 -0
- package/dist/ts_helpers.js +533 -0
- package/dist/tsdoc_helpers.d.ts +98 -0
- package/dist/tsdoc_helpers.d.ts.map +1 -0
- package/dist/tsdoc_helpers.js +221 -0
- package/package.json +128 -0
- package/src/lib/alert.ts +14 -0
- package/src/lib/api_search.svelte.ts +85 -0
- package/src/lib/constants.ts +3 -0
- package/src/lib/context_helpers.ts +47 -0
- package/src/lib/contextmenu_helpers.ts +63 -0
- package/src/lib/contextmenu_state.svelte.ts +515 -0
- package/src/lib/csp.ts +576 -0
- package/src/lib/csp_of_ryanatkn.ts +16 -0
- package/src/lib/declaration.svelte.ts +102 -0
- package/src/lib/declaration_contextmenu.ts +22 -0
- package/src/lib/dialog.ts +35 -0
- package/src/lib/dimensions.svelte.ts +4 -0
- package/src/lib/docs_helpers.svelte.ts +149 -0
- package/src/lib/helpers.ts +10 -0
- package/src/lib/intersect.svelte.ts +152 -0
- package/src/lib/library.svelte.ts +162 -0
- package/src/lib/library_gen.ts +160 -0
- package/src/lib/library_gen_helpers.ts +262 -0
- package/src/lib/library_helpers.ts +123 -0
- package/src/lib/logos.ts +302 -0
- package/src/lib/mdz.ts +1819 -0
- package/src/lib/mdz_components.ts +34 -0
- package/src/lib/module.svelte.ts +78 -0
- package/src/lib/module_contextmenu.ts +20 -0
- package/src/lib/module_helpers.ts +113 -0
- package/src/lib/rune_helpers.svelte.ts +10 -0
- package/src/lib/storage.ts +48 -0
- package/src/lib/svelte_helpers.ts +303 -0
- package/src/lib/themer.svelte.ts +68 -0
- package/src/lib/tome.ts +38 -0
- package/src/lib/ts_helpers.ts +662 -0
- package/src/lib/tsdoc_helpers.ts +259 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { Component } from 'svelte';
|
|
2
|
+
/**
|
|
3
|
+
* Component registry for custom Svelte components that can be used in mdz content.
|
|
4
|
+
*
|
|
5
|
+
* For example, registering 'Alert' allows using `<Alert>...</Alert>` in mdz content.
|
|
6
|
+
*
|
|
7
|
+
* The Map values are the Svelte component constructors.
|
|
8
|
+
*/
|
|
9
|
+
export type MdzComponents = Map<string, Component<any, any>>;
|
|
10
|
+
/**
|
|
11
|
+
* Element registry for HTML elements that can be used in mdz content.
|
|
12
|
+
*
|
|
13
|
+
* For example, registering 'div' allows using `<div>...</div>` in mdz content.
|
|
14
|
+
*
|
|
15
|
+
* The Map values are boolean placeholders for future configuration options.
|
|
16
|
+
*/
|
|
17
|
+
export type MdzElements = Map<string, boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Context for providing custom mdz components.
|
|
20
|
+
* Must be set by the application using mdz.
|
|
21
|
+
*/
|
|
22
|
+
export declare const mdz_components_context: {
|
|
23
|
+
get: (error_message?: string) => MdzComponents;
|
|
24
|
+
get_maybe: () => MdzComponents | undefined;
|
|
25
|
+
set: (value: MdzComponents) => MdzComponents;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Context for providing allowed HTML elements.
|
|
29
|
+
* Must be set by the application using mdz.
|
|
30
|
+
* By default, no HTML elements are allowed.
|
|
31
|
+
*/
|
|
32
|
+
export declare const mdz_elements_context: {
|
|
33
|
+
get: (error_message?: string) => MdzElements;
|
|
34
|
+
get_maybe: () => MdzElements | undefined;
|
|
35
|
+
set: (value: MdzElements) => MdzElements;
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=mdz_components.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdz_components.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/mdz_components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,QAAQ,CAAC;AAItC;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;CAAkC,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;;CAAgC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { create_context } from './context_helpers.js';
|
|
2
|
+
/**
|
|
3
|
+
* Context for providing custom mdz components.
|
|
4
|
+
* Must be set by the application using mdz.
|
|
5
|
+
*/
|
|
6
|
+
export const mdz_components_context = create_context();
|
|
7
|
+
/**
|
|
8
|
+
* Context for providing allowed HTML elements.
|
|
9
|
+
* Must be set by the application using mdz.
|
|
10
|
+
* By default, no HTML elements are allowed.
|
|
11
|
+
*/
|
|
12
|
+
export const mdz_elements_context = create_context();
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { ModuleJson } from '@fuzdev/fuz_util/source_json.js';
|
|
2
|
+
import { Declaration } from './declaration.svelte.js';
|
|
3
|
+
import type { Library } from './library.svelte.js';
|
|
4
|
+
/**
|
|
5
|
+
* Rich runtime representation of a module with computed properties.
|
|
6
|
+
*/
|
|
7
|
+
export declare class Module {
|
|
8
|
+
readonly library: Library;
|
|
9
|
+
readonly module_json: ModuleJson;
|
|
10
|
+
/**
|
|
11
|
+
* Canonical module path (e.g., 'Alert.ts', 'helpers/foo.ts').
|
|
12
|
+
*/
|
|
13
|
+
path: string;
|
|
14
|
+
/**
|
|
15
|
+
* Import-style path with ./ prefix.
|
|
16
|
+
*/
|
|
17
|
+
path_import: string;
|
|
18
|
+
module_comment: string | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* Array of Declaration instances. Filters out default exports.
|
|
21
|
+
*/
|
|
22
|
+
declarations: Declaration[];
|
|
23
|
+
/**
|
|
24
|
+
* API documentation URL for this module.
|
|
25
|
+
*/
|
|
26
|
+
url_api: string;
|
|
27
|
+
/**
|
|
28
|
+
* GitHub source URL.
|
|
29
|
+
*/
|
|
30
|
+
url_github: string | undefined;
|
|
31
|
+
has_declarations: boolean;
|
|
32
|
+
has_module_comment: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Modules this imports (paths relative to src/lib).
|
|
35
|
+
*/
|
|
36
|
+
dependencies: string[] | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* Modules that import this (paths relative to src/lib).
|
|
39
|
+
*/
|
|
40
|
+
dependents: string[] | undefined;
|
|
41
|
+
constructor(library: Library, module_json: ModuleJson);
|
|
42
|
+
/**
|
|
43
|
+
* Look up a declaration by name within this module.
|
|
44
|
+
*/
|
|
45
|
+
get_declaration_by_name(name: string): Declaration | undefined;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=module.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/module.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAGjD;;GAEG;AACH,qBAAa,MAAM;IAClB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAiB;IAC1C,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAiB;IAEjD;;OAEG;IACH,IAAI,SAAmC;IAEvC;;OAEG;IACH,WAAW,SAA8B;IAEzC,cAAc,qBAA6C;IAE3D;;OAEG;IACH,YAAY,gBAMV;IAEF;;OAEG;IACH,OAAO,SAAsC;IAE7C;;OAEG;IACH,UAAU,qBAIR;IAEF,gBAAgB,EAAE,OAAO,CAEvB;IAEF,kBAAkB,EAAE,OAAO,CAA+C;IAE1E;;OAEG;IACH,YAAY,uBAA2C;IAEvD;;OAEG;IACH,UAAU,uBAAyC;gBAEvC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU;IAKrD;;OAEG;IACH,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;CAG9D"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Declaration } from './declaration.svelte.js';
|
|
2
|
+
import { url_github_file } from './library_helpers.js';
|
|
3
|
+
/**
|
|
4
|
+
* Rich runtime representation of a module with computed properties.
|
|
5
|
+
*/
|
|
6
|
+
export class Module {
|
|
7
|
+
library = $state.raw();
|
|
8
|
+
module_json = $state.raw();
|
|
9
|
+
/**
|
|
10
|
+
* Canonical module path (e.g., 'Alert.ts', 'helpers/foo.ts').
|
|
11
|
+
*/
|
|
12
|
+
path = $derived(this.module_json.path);
|
|
13
|
+
/**
|
|
14
|
+
* Import-style path with ./ prefix.
|
|
15
|
+
*/
|
|
16
|
+
path_import = $derived('./' + this.path);
|
|
17
|
+
module_comment = $derived(this.module_json.module_comment);
|
|
18
|
+
/**
|
|
19
|
+
* Array of Declaration instances. Filters out default exports.
|
|
20
|
+
*/
|
|
21
|
+
declarations = $derived(this.module_json.declarations
|
|
22
|
+
? this.module_json.declarations
|
|
23
|
+
.filter((declaration_json) => declaration_json.name !== 'default')
|
|
24
|
+
.map((declaration_json) => new Declaration(this, declaration_json))
|
|
25
|
+
: []);
|
|
26
|
+
/**
|
|
27
|
+
* API documentation URL for this module.
|
|
28
|
+
*/
|
|
29
|
+
url_api = $derived(`/docs/api/${this.path}`);
|
|
30
|
+
/**
|
|
31
|
+
* GitHub source URL.
|
|
32
|
+
*/
|
|
33
|
+
url_github = $derived(this.library.repo_url
|
|
34
|
+
? url_github_file(this.library.repo_url, `src/lib/${this.path}`)
|
|
35
|
+
: undefined);
|
|
36
|
+
has_declarations = $derived(!!(this.module_json.declarations && this.module_json.declarations.length > 0));
|
|
37
|
+
has_module_comment = $derived(!!this.module_json.module_comment);
|
|
38
|
+
/**
|
|
39
|
+
* Modules this imports (paths relative to src/lib).
|
|
40
|
+
*/
|
|
41
|
+
dependencies = $derived(this.module_json.dependencies);
|
|
42
|
+
/**
|
|
43
|
+
* Modules that import this (paths relative to src/lib).
|
|
44
|
+
*/
|
|
45
|
+
dependents = $derived(this.module_json.dependents);
|
|
46
|
+
constructor(library, module_json) {
|
|
47
|
+
this.library = library;
|
|
48
|
+
this.module_json = module_json;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Look up a declaration by name within this module.
|
|
52
|
+
*/
|
|
53
|
+
get_declaration_by_name(name) {
|
|
54
|
+
return this.declarations.find((d) => d.name === name);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module_contextmenu.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/module_contextmenu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAC/C,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,+BAA+B,CAAC;AAIrE,eAAO,MAAM,yBAAyB,GAAI,QAAQ,MAAM,KAAG,KAAK,CAAC,iBAAiB,CAcjF,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// TODO @many expand contextmenus for docs
|
|
2
|
+
export const create_module_contextmenu = (module) => {
|
|
3
|
+
const entries = [];
|
|
4
|
+
// View source on GitHub
|
|
5
|
+
if (module.url_github) {
|
|
6
|
+
entries.push({
|
|
7
|
+
snippet: 'link',
|
|
8
|
+
props: {
|
|
9
|
+
href: module.url_github,
|
|
10
|
+
},
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
return entries;
|
|
14
|
+
};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module path and metadata helpers.
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities for working with source module paths, file types,
|
|
5
|
+
* and import relationships in the package generation system.
|
|
6
|
+
*
|
|
7
|
+
* All functions are prefixed with `module_` for clarity.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Configuration for module source detection.
|
|
11
|
+
*
|
|
12
|
+
* Allows customizing which paths are considered source modules,
|
|
13
|
+
* useful for projects with non-standard directory structures.
|
|
14
|
+
*/
|
|
15
|
+
export interface ModuleSourceOptions {
|
|
16
|
+
/** Source directory paths to include. @default ['/src/lib/'] */
|
|
17
|
+
source_paths?: Array<string>;
|
|
18
|
+
/** File extensions to analyze. @default ['.ts', '.js', '.svelte'] */
|
|
19
|
+
extensions?: Array<string>;
|
|
20
|
+
/** Patterns to exclude (matched against full path). @default [/\.test\.ts$/] */
|
|
21
|
+
exclude_patterns?: Array<RegExp>;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Default options for module source detection.
|
|
25
|
+
*/
|
|
26
|
+
export declare const MODULE_SOURCE_DEFAULTS: Required<ModuleSourceOptions>;
|
|
27
|
+
/**
|
|
28
|
+
* Extract module path relative to src/lib from absolute source ID.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* module_extract_path('/home/user/project/src/lib/foo.ts') // => 'foo.ts'
|
|
32
|
+
* module_extract_path('/home/user/project/src/lib/nested/bar.svelte') // => 'nested/bar.svelte'
|
|
33
|
+
*/
|
|
34
|
+
export declare const module_extract_path: (source_id: string) => string;
|
|
35
|
+
/**
|
|
36
|
+
* Extract component name from a Svelte module path.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* module_get_component_name('Alert.svelte') // => 'Alert'
|
|
40
|
+
* module_get_component_name('components/Button.svelte') // => 'Button'
|
|
41
|
+
*/
|
|
42
|
+
export declare const module_get_component_name: (module_path: string) => string;
|
|
43
|
+
/**
|
|
44
|
+
* Convert module path to module key format (with ./ prefix).
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* module_get_key('foo.ts') // => './foo.ts'
|
|
48
|
+
*/
|
|
49
|
+
export declare const module_get_key: (module_path: string) => string;
|
|
50
|
+
export declare const module_is_typescript: (path: string) => boolean;
|
|
51
|
+
export declare const module_is_svelte: (path: string) => boolean;
|
|
52
|
+
export declare const module_is_css: (path: string) => boolean;
|
|
53
|
+
export declare const module_is_json: (path: string) => boolean;
|
|
54
|
+
export declare const module_is_test: (path: string) => boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Check if a path matches source criteria.
|
|
57
|
+
*
|
|
58
|
+
* Checks source directory paths, file extensions, and exclusion patterns.
|
|
59
|
+
* Uses defaults if no options provided.
|
|
60
|
+
*
|
|
61
|
+
* Rejects nested repo paths by ensuring the first `/src/` leads to the source directory
|
|
62
|
+
* (e.g. rejects `/src/fixtures/repos/foo/src/lib/index.ts` because `/src/fixtures/` ≠ `/src/lib/`).
|
|
63
|
+
*
|
|
64
|
+
* @param path Full path to check
|
|
65
|
+
* @param options Configuration options (uses defaults if not provided)
|
|
66
|
+
* @returns True if the path matches all criteria
|
|
67
|
+
*/
|
|
68
|
+
export declare const module_matches_source: (path: string, options?: ModuleSourceOptions) => boolean;
|
|
69
|
+
//# sourceMappingURL=module_helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module_helpers.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/module_helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IACnC,gEAAgE;IAChE,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,qEAAqE;IACrE,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3B,gFAAgF;IAChF,gBAAgB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,mBAAmB,CAIhE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAAI,WAAW,MAAM,KAAG,MAGvD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,GAAI,aAAa,MAAM,KAAG,MACN,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,aAAa,MAAM,KAAG,MAA4B,CAAC;AAElF,eAAO,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,OACP,CAAC;AAE9C,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,OAAmC,CAAC;AAEpF,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,OAAgC,CAAC;AAE9E,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,OAAiC,CAAC;AAEhF,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,OAAoC,CAAC;AAEnF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,EAAE,UAAU,mBAAmB,KAAG,OAyBnF,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module path and metadata helpers.
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities for working with source module paths, file types,
|
|
5
|
+
* and import relationships in the package generation system.
|
|
6
|
+
*
|
|
7
|
+
* All functions are prefixed with `module_` for clarity.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Default options for module source detection.
|
|
11
|
+
*/
|
|
12
|
+
export const MODULE_SOURCE_DEFAULTS = {
|
|
13
|
+
source_paths: ['/src/lib/'],
|
|
14
|
+
extensions: ['.ts', '.js', '.svelte'],
|
|
15
|
+
exclude_patterns: [/\.test\.ts$/],
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Extract module path relative to src/lib from absolute source ID.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* module_extract_path('/home/user/project/src/lib/foo.ts') // => 'foo.ts'
|
|
22
|
+
* module_extract_path('/home/user/project/src/lib/nested/bar.svelte') // => 'nested/bar.svelte'
|
|
23
|
+
*/
|
|
24
|
+
export const module_extract_path = (source_id) => {
|
|
25
|
+
const lib_index = source_id.indexOf('/src/lib/');
|
|
26
|
+
return lib_index !== -1 ? source_id.substring(lib_index + 9) : source_id;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Extract component name from a Svelte module path.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* module_get_component_name('Alert.svelte') // => 'Alert'
|
|
33
|
+
* module_get_component_name('components/Button.svelte') // => 'Button'
|
|
34
|
+
*/
|
|
35
|
+
export const module_get_component_name = (module_path) => module_path.replace(/^.*\//, '').replace(/\.svelte$/, '');
|
|
36
|
+
/**
|
|
37
|
+
* Convert module path to module key format (with ./ prefix).
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* module_get_key('foo.ts') // => './foo.ts'
|
|
41
|
+
*/
|
|
42
|
+
export const module_get_key = (module_path) => `./${module_path}`;
|
|
43
|
+
export const module_is_typescript = (path) => path.endsWith('.ts') || path.endsWith('.js'); // hackyy but fine?
|
|
44
|
+
export const module_is_svelte = (path) => path.endsWith('.svelte');
|
|
45
|
+
export const module_is_css = (path) => path.endsWith('.css');
|
|
46
|
+
export const module_is_json = (path) => path.endsWith('.json');
|
|
47
|
+
export const module_is_test = (path) => path.endsWith('.test.ts');
|
|
48
|
+
/**
|
|
49
|
+
* Check if a path matches source criteria.
|
|
50
|
+
*
|
|
51
|
+
* Checks source directory paths, file extensions, and exclusion patterns.
|
|
52
|
+
* Uses defaults if no options provided.
|
|
53
|
+
*
|
|
54
|
+
* Rejects nested repo paths by ensuring the first `/src/` leads to the source directory
|
|
55
|
+
* (e.g. rejects `/src/fixtures/repos/foo/src/lib/index.ts` because `/src/fixtures/` ≠ `/src/lib/`).
|
|
56
|
+
*
|
|
57
|
+
* @param path Full path to check
|
|
58
|
+
* @param options Configuration options (uses defaults if not provided)
|
|
59
|
+
* @returns True if the path matches all criteria
|
|
60
|
+
*/
|
|
61
|
+
export const module_matches_source = (path, options) => {
|
|
62
|
+
const opts = { ...MODULE_SOURCE_DEFAULTS, ...options };
|
|
63
|
+
// Check if path is in one of the source directories
|
|
64
|
+
// The first /src/ in the path must lead directly to the source directory
|
|
65
|
+
// This rejects nested repos like /src/fixtures/repos/foo/src/lib/
|
|
66
|
+
const in_source_dir = opts.source_paths.some((source_path) => {
|
|
67
|
+
if (!path.includes(source_path))
|
|
68
|
+
return false;
|
|
69
|
+
// Find the first /src/ and verify it's part of the source_path
|
|
70
|
+
const first_src_index = path.indexOf('/src/');
|
|
71
|
+
if (first_src_index === -1)
|
|
72
|
+
return false;
|
|
73
|
+
// The source_path should start at that position
|
|
74
|
+
return path.substring(first_src_index).startsWith(source_path);
|
|
75
|
+
});
|
|
76
|
+
if (!in_source_dir)
|
|
77
|
+
return false;
|
|
78
|
+
// Check if extension matches
|
|
79
|
+
const has_valid_extension = opts.extensions.some((ext) => path.endsWith(ext));
|
|
80
|
+
if (!has_valid_extension)
|
|
81
|
+
return false;
|
|
82
|
+
// Check exclusion patterns
|
|
83
|
+
const is_excluded = opts.exclude_patterns.some((pattern) => pattern.test(path));
|
|
84
|
+
if (is_excluded)
|
|
85
|
+
return false;
|
|
86
|
+
return true;
|
|
87
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runs `fn` in an `$effect`, passing `true` as the `skip` argument for the first `count` runs.
|
|
3
|
+
* Calls `fn` even when skipping so callers can read any dependent signals.
|
|
4
|
+
*/
|
|
5
|
+
export declare const effect_with_count: (fn: (count: number) => void, initial?: number) => void;
|
|
6
|
+
//# sourceMappingURL=rune_helpers.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rune_helpers.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/rune_helpers.svelte.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,IAAI,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EAAE,gBAAW,KAAG,IAK5E,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runs `fn` in an `$effect`, passing `true` as the `skip` argument for the first `count` runs.
|
|
3
|
+
* Calls `fn` even when skipping so callers can read any dependent signals.
|
|
4
|
+
*/
|
|
5
|
+
export const effect_with_count = (fn, initial = 0) => {
|
|
6
|
+
let count = initial;
|
|
7
|
+
$effect(() => {
|
|
8
|
+
fn(++count);
|
|
9
|
+
});
|
|
10
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility function to save a value to `localStorage`.
|
|
3
|
+
*/
|
|
4
|
+
export declare const save_to_storage: (key: string, value: any, is_json?: boolean) => void;
|
|
5
|
+
/**
|
|
6
|
+
* Utility function to load a value from `localStorage` with optional parsing
|
|
7
|
+
* @param key The localStorage key
|
|
8
|
+
* @param is_json Whether to parse the value as JSON
|
|
9
|
+
* @param parse_fn Optional custom parsing function to transform the value
|
|
10
|
+
* @returns The parsed value or null if not found or parsing fails
|
|
11
|
+
*/
|
|
12
|
+
export declare const load_from_storage: <T>(key: string, is_json?: boolean, parse_fn?: (value: unknown) => T | null) => T | null;
|
|
13
|
+
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/storage.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,EAAE,OAAO,GAAG,EAAE,iBAAe,KAAG,IAS1E,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAClC,KAAK,MAAM,EACX,iBAAe,EACf,WAAW,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,GAAG,IAAI,KACrC,CAAC,GAAG,IAkBN,CAAC"}
|
package/dist/storage.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { BROWSER } from 'esm-env';
|
|
2
|
+
// TODO more than just localStorage, maybe rework the module
|
|
3
|
+
/**
|
|
4
|
+
* Utility function to save a value to `localStorage`.
|
|
5
|
+
*/
|
|
6
|
+
export const save_to_storage = (key, value, is_json = false) => {
|
|
7
|
+
if (!BROWSER)
|
|
8
|
+
return;
|
|
9
|
+
if (value !== null) {
|
|
10
|
+
try {
|
|
11
|
+
localStorage.setItem(key, is_json ? JSON.stringify(value) : value);
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
catch (_) { }
|
|
15
|
+
}
|
|
16
|
+
localStorage.removeItem(key); // remove if null or error
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Utility function to load a value from `localStorage` with optional parsing
|
|
20
|
+
* @param key The localStorage key
|
|
21
|
+
* @param is_json Whether to parse the value as JSON
|
|
22
|
+
* @param parse_fn Optional custom parsing function to transform the value
|
|
23
|
+
* @returns The parsed value or null if not found or parsing fails
|
|
24
|
+
*/
|
|
25
|
+
export const load_from_storage = (key, is_json = false, parse_fn) => {
|
|
26
|
+
if (!BROWSER)
|
|
27
|
+
return null;
|
|
28
|
+
try {
|
|
29
|
+
const loaded = localStorage.getItem(key);
|
|
30
|
+
if (loaded === null)
|
|
31
|
+
return null;
|
|
32
|
+
// First handle JSON parsing if requested
|
|
33
|
+
const value = is_json ? JSON.parse(loaded) : loaded;
|
|
34
|
+
// Then apply the custom parse function if provided
|
|
35
|
+
if (parse_fn) {
|
|
36
|
+
return parse_fn(value);
|
|
37
|
+
}
|
|
38
|
+
return value;
|
|
39
|
+
}
|
|
40
|
+
catch (_) {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Svelte component analysis helpers.
|
|
3
|
+
*
|
|
4
|
+
* Extracts metadata from Svelte components using svelte2tsx transformations:
|
|
5
|
+
*
|
|
6
|
+
* - Component props with types and JSDoc
|
|
7
|
+
* - Component-level documentation
|
|
8
|
+
* - Type information
|
|
9
|
+
*
|
|
10
|
+
* Workflow: Transform Svelte to TypeScript via svelte2tsx, parse the transformed
|
|
11
|
+
* TypeScript with the TS Compiler API, extract component-level JSDoc from original source.
|
|
12
|
+
*
|
|
13
|
+
* All functions are prefixed with `svelte_` for clarity.
|
|
14
|
+
*/
|
|
15
|
+
import ts from 'typescript';
|
|
16
|
+
import type { DeclarationJson } from '@fuzdev/fuz_util/source_json.js';
|
|
17
|
+
/**
|
|
18
|
+
* Analyze a Svelte component from its svelte2tsx transformation.
|
|
19
|
+
*/
|
|
20
|
+
export declare const svelte_analyze_component: (ts_code: string, source_file: ts.SourceFile, checker: ts.TypeChecker, component_name: string) => DeclarationJson;
|
|
21
|
+
/**
|
|
22
|
+
* Analyze a Svelte component file from disk.
|
|
23
|
+
*
|
|
24
|
+
* This is a high-level function that handles the complete workflow:
|
|
25
|
+
* 1. Read the Svelte source from disk
|
|
26
|
+
* 2. Transform to TypeScript via svelte2tsx
|
|
27
|
+
* 3. Extract component metadata (props, documentation)
|
|
28
|
+
*
|
|
29
|
+
* Suitable for use in documentation generators, build tools, and analysis.
|
|
30
|
+
*
|
|
31
|
+
* @param file_path Absolute path to the .svelte file
|
|
32
|
+
* @param module_path Module path relative to src/lib (e.g., 'Alert.svelte')
|
|
33
|
+
* @param checker TypeScript type checker for type resolution
|
|
34
|
+
* @returns Complete declaration metadata for the component
|
|
35
|
+
*/
|
|
36
|
+
export declare const svelte_analyze_file: (file_path: string, module_path: string, checker: ts.TypeChecker) => DeclarationJson;
|
|
37
|
+
//# sourceMappingURL=svelte_helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svelte_helpers.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/svelte_helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B,OAAO,KAAK,EAAC,eAAe,EAAoB,MAAM,iCAAiC,CAAC;AAKxF;;GAEG;AACH,eAAO,MAAM,wBAAwB,GACpC,SAAS,MAAM,EACf,aAAa,EAAE,CAAC,UAAU,EAC1B,SAAS,EAAE,CAAC,WAAW,EACvB,gBAAgB,MAAM,KACpB,eAqCF,CAAC;AAkMF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB,GAC/B,WAAW,MAAM,EACjB,aAAa,MAAM,EACnB,SAAS,EAAE,CAAC,WAAW,KACrB,eAqBF,CAAC"}
|