@oddkin/workbench 0.0.0-stage → 1.0.0-beta.1
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 +66 -2
- package/dist/app/card-previews.d.ts +14 -0
- package/dist/app/card-previews.d.ts.map +1 -0
- package/dist/app/card-previews.js +140 -0
- package/dist/app/card-previews.js.map +1 -0
- package/dist/app/copy.d.ts +48 -0
- package/dist/app/copy.d.ts.map +1 -0
- package/dist/app/copy.js +52 -0
- package/dist/app/copy.js.map +1 -0
- package/dist/app/define.d.ts +3 -0
- package/dist/app/define.d.ts.map +1 -0
- package/dist/app/define.js +10 -0
- package/dist/app/define.js.map +1 -0
- package/dist/app/details.d.ts +22 -0
- package/dist/app/details.d.ts.map +1 -0
- package/dist/app/details.js +17 -0
- package/dist/app/details.js.map +1 -0
- package/dist/app/index.d.ts +12 -0
- package/dist/app/index.d.ts.map +1 -0
- package/dist/app/index.js +9 -0
- package/dist/app/index.js.map +1 -0
- package/dist/app/routes.d.ts +26 -0
- package/dist/app/routes.d.ts.map +1 -0
- package/dist/app/routes.js +96 -0
- package/dist/app/routes.js.map +1 -0
- package/dist/app/search.d.ts +17 -0
- package/dist/app/search.d.ts.map +1 -0
- package/dist/app/search.js +52 -0
- package/dist/app/search.js.map +1 -0
- package/dist/app/shell.d.ts +29 -0
- package/dist/app/shell.d.ts.map +1 -0
- package/dist/app/shell.js +478 -0
- package/dist/app/shell.js.map +1 -0
- package/dist/app/styles.d.ts +2 -0
- package/dist/app/styles.d.ts.map +1 -0
- package/dist/app/styles.js +356 -0
- package/dist/app/styles.js.map +1 -0
- package/dist/app/theme-studio.d.ts +12 -0
- package/dist/app/theme-studio.d.ts.map +1 -0
- package/dist/app/theme-studio.js +14 -0
- package/dist/app/theme-studio.js.map +1 -0
- package/dist/app/views.d.ts +38 -0
- package/dist/app/views.d.ts.map +1 -0
- package/dist/app/views.js +252 -0
- package/dist/app/views.js.map +1 -0
- package/dist/config/index.d.ts +170 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +148 -0
- package/dist/config/index.js.map +1 -0
- package/dist/conformance/button.d.ts +2 -0
- package/dist/conformance/button.d.ts.map +1 -0
- package/dist/conformance/button.js +233 -0
- package/dist/conformance/button.js.map +1 -0
- package/dist/conformance/index.d.ts +107 -0
- package/dist/conformance/index.d.ts.map +1 -0
- package/dist/conformance/index.js +60 -0
- package/dist/conformance/index.js.map +1 -0
- package/dist/data/build.d.ts +36 -0
- package/dist/data/build.d.ts.map +1 -0
- package/dist/data/build.js +260 -0
- package/dist/data/build.js.map +1 -0
- package/dist/data/import-map.d.ts +59 -0
- package/dist/data/import-map.d.ts.map +1 -0
- package/dist/data/import-map.js +195 -0
- package/dist/data/import-map.js.map +1 -0
- package/dist/data/index.d.ts +14 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/index.js +10 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data/theme-studio.d.ts +21 -0
- package/dist/data/theme-studio.d.ts.map +1 -0
- package/dist/data/theme-studio.js +112 -0
- package/dist/data/theme-studio.js.map +1 -0
- package/dist/data/types.d.ts +187 -0
- package/dist/data/types.d.ts.map +1 -0
- package/dist/data/types.js +4 -0
- package/dist/data/types.js.map +1 -0
- package/dist/examples/index.d.ts +101 -0
- package/dist/examples/index.d.ts.map +1 -0
- package/dist/examples/index.js +106 -0
- package/dist/examples/index.js.map +1 -0
- package/dist/frame/index.d.ts +9 -0
- package/dist/frame/index.d.ts.map +1 -0
- package/dist/frame/index.js +482 -0
- package/dist/frame/index.js.map +1 -0
- package/dist/internal/diagnostics.d.ts +17 -0
- package/dist/internal/diagnostics.d.ts.map +1 -0
- package/dist/internal/diagnostics.js +19 -0
- package/dist/internal/diagnostics.js.map +1 -0
- package/dist/node/bin.d.ts +3 -0
- package/dist/node/bin.d.ts.map +1 -0
- package/dist/node/bin.js +12 -0
- package/dist/node/bin.js.map +1 -0
- package/dist/node/cli.d.ts +17 -0
- package/dist/node/cli.d.ts.map +1 -0
- package/dist/node/cli.js +198 -0
- package/dist/node/cli.js.map +1 -0
- package/dist/node/config.d.ts +28 -0
- package/dist/node/config.d.ts.map +1 -0
- package/dist/node/config.js +80 -0
- package/dist/node/config.js.map +1 -0
- package/dist/node/example-modules.d.ts +8 -0
- package/dist/node/example-modules.d.ts.map +1 -0
- package/dist/node/example-modules.js +28 -0
- package/dist/node/example-modules.js.map +1 -0
- package/dist/node/generated.d.ts +19 -0
- package/dist/node/generated.d.ts.map +1 -0
- package/dist/node/generated.js +109 -0
- package/dist/node/generated.js.map +1 -0
- package/dist/node/html.d.ts +35 -0
- package/dist/node/html.d.ts.map +1 -0
- package/dist/node/html.js +51 -0
- package/dist/node/html.js.map +1 -0
- package/dist/node/index.d.ts +24 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.js +15 -0
- package/dist/node/index.js.map +1 -0
- package/dist/node/inputs.d.ts +26 -0
- package/dist/node/inputs.d.ts.map +1 -0
- package/dist/node/inputs.js +282 -0
- package/dist/node/inputs.js.map +1 -0
- package/dist/node/packages.d.ts +35 -0
- package/dist/node/packages.d.ts.map +1 -0
- package/dist/node/packages.js +87 -0
- package/dist/node/packages.js.map +1 -0
- package/dist/node/preload.d.ts +10 -0
- package/dist/node/preload.d.ts.map +1 -0
- package/dist/node/preload.js +61 -0
- package/dist/node/preload.js.map +1 -0
- package/dist/node/server.d.ts +42 -0
- package/dist/node/server.d.ts.map +1 -0
- package/dist/node/server.js +410 -0
- package/dist/node/server.js.map +1 -0
- package/dist/node/static.d.ts +43 -0
- package/dist/node/static.d.ts.map +1 -0
- package/dist/node/static.js +157 -0
- package/dist/node/static.js.map +1 -0
- package/dist/node/workbench.d.ts +43 -0
- package/dist/node/workbench.d.ts.map +1 -0
- package/dist/node/workbench.js +204 -0
- package/dist/node/workbench.js.map +1 -0
- package/dist/pages/build.d.ts +22 -0
- package/dist/pages/build.d.ts.map +1 -0
- package/dist/pages/build.js +363 -0
- package/dist/pages/build.js.map +1 -0
- package/dist/pages/defaults.d.ts +16 -0
- package/dist/pages/defaults.d.ts.map +1 -0
- package/dist/pages/defaults.js +88 -0
- package/dist/pages/defaults.js.map +1 -0
- package/dist/pages/index.d.ts +14 -0
- package/dist/pages/index.d.ts.map +1 -0
- package/dist/pages/index.js +10 -0
- package/dist/pages/index.js.map +1 -0
- package/dist/pages/navigation.d.ts +48 -0
- package/dist/pages/navigation.d.ts.map +1 -0
- package/dist/pages/navigation.js +83 -0
- package/dist/pages/navigation.js.map +1 -0
- package/dist/pages/types.d.ts +148 -0
- package/dist/pages/types.d.ts.map +1 -0
- package/dist/pages/types.js +3 -0
- package/dist/pages/types.js.map +1 -0
- package/dist/panels/catalog-define.d.ts +3 -0
- package/dist/panels/catalog-define.d.ts.map +1 -0
- package/dist/panels/catalog-define.js +7 -0
- package/dist/panels/catalog-define.js.map +1 -0
- package/dist/panels/catalog-layout-styles.d.ts +2 -0
- package/dist/panels/catalog-layout-styles.d.ts.map +1 -0
- package/dist/panels/catalog-layout-styles.js +54 -0
- package/dist/panels/catalog-layout-styles.js.map +1 -0
- package/dist/panels/catalog-styles.d.ts +2 -0
- package/dist/panels/catalog-styles.d.ts.map +1 -0
- package/dist/panels/catalog-styles.js +106 -0
- package/dist/panels/catalog-styles.js.map +1 -0
- package/dist/panels/catalog.d.ts +37 -0
- package/dist/panels/catalog.d.ts.map +1 -0
- package/dist/panels/catalog.js +74 -0
- package/dist/panels/catalog.js.map +1 -0
- package/dist/panels/component-define.d.ts +3 -0
- package/dist/panels/component-define.d.ts.map +1 -0
- package/dist/panels/component-define.js +6 -0
- package/dist/panels/component-define.js.map +1 -0
- package/dist/panels/component-detail.d.ts +49 -0
- package/dist/panels/component-detail.d.ts.map +1 -0
- package/dist/panels/component-detail.js +1352 -0
- package/dist/panels/component-detail.js.map +1 -0
- package/dist/panels/component.d.ts +17 -0
- package/dist/panels/component.d.ts.map +1 -0
- package/dist/panels/component.js +10 -0
- package/dist/panels/component.js.map +1 -0
- package/dist/panels/example-styles.d.ts +2 -0
- package/dist/panels/example-styles.d.ts.map +1 -0
- package/dist/panels/example-styles.js +343 -0
- package/dist/panels/example-styles.js.map +1 -0
- package/dist/panels/foundation-define.d.ts +3 -0
- package/dist/panels/foundation-define.d.ts.map +1 -0
- package/dist/panels/foundation-define.js +6 -0
- package/dist/panels/foundation-define.js.map +1 -0
- package/dist/panels/foundation-detail.d.ts +23 -0
- package/dist/panels/foundation-detail.d.ts.map +1 -0
- package/dist/panels/foundation-detail.js +216 -0
- package/dist/panels/foundation-detail.js.map +1 -0
- package/dist/panels/foundation.d.ts +15 -0
- package/dist/panels/foundation.d.ts.map +1 -0
- package/dist/panels/foundation.js +9 -0
- package/dist/panels/foundation.js.map +1 -0
- package/dist/panels/model.d.ts +184 -0
- package/dist/panels/model.d.ts.map +1 -0
- package/dist/panels/model.js +488 -0
- package/dist/panels/model.js.map +1 -0
- package/dist/panels/styles.d.ts +3 -0
- package/dist/panels/styles.d.ts.map +1 -0
- package/dist/panels/styles.js +265 -0
- package/dist/panels/styles.js.map +1 -0
- package/dist/panels/theme-model.d.ts +69 -0
- package/dist/panels/theme-model.d.ts.map +1 -0
- package/dist/panels/theme-model.js +166 -0
- package/dist/panels/theme-model.js.map +1 -0
- package/dist/panels/theme-studio.d.ts +32 -0
- package/dist/panels/theme-studio.d.ts.map +1 -0
- package/dist/panels/theme-studio.js +375 -0
- package/dist/panels/theme-studio.js.map +1 -0
- package/dist/preview/frame.d.ts +44 -0
- package/dist/preview/frame.d.ts.map +1 -0
- package/dist/preview/frame.js +260 -0
- package/dist/preview/frame.js.map +1 -0
- package/dist/preview/index.d.ts +26 -0
- package/dist/preview/index.d.ts.map +1 -0
- package/dist/preview/index.js +58 -0
- package/dist/preview/index.js.map +1 -0
- package/dist/preview/theme-generation.d.ts +33 -0
- package/dist/preview/theme-generation.d.ts.map +1 -0
- package/dist/preview/theme-generation.js +48 -0
- package/dist/preview/theme-generation.js.map +1 -0
- package/dist/protocol/index.d.ts +222 -0
- package/dist/protocol/index.d.ts.map +1 -0
- package/dist/protocol/index.js +272 -0
- package/dist/protocol/index.js.map +1 -0
- package/dist/testing/index.d.ts +47 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +145 -0
- package/dist/testing/index.js.map +1 -0
- package/package.json +118 -4
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
const byOrder = (pages) => pages
|
|
2
|
+
.map((page, index) => ({ page, index }))
|
|
3
|
+
.sort((a, b) => (a.page.order ?? a.index) - (b.page.order ?? b.index) || a.index - b.index)
|
|
4
|
+
.map((p) => p.page);
|
|
5
|
+
/** Visible primary navigation entries in configured order. */
|
|
6
|
+
export function primaryNavigation(registry) {
|
|
7
|
+
const byId = new Map(registry.pages.map((p) => [p.id, p]));
|
|
8
|
+
return registry.primaryNav.flatMap((id) => {
|
|
9
|
+
const page = byId.get(id);
|
|
10
|
+
return page?.visible ? [page] : [];
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
/** Contextual sidebar for a section, grouped when the section has groups. */
|
|
14
|
+
export function sidebar(registry, section) {
|
|
15
|
+
const pages = registry.pages.filter((p) => p.visible && p.nav.sidebar && p.section === section);
|
|
16
|
+
const groups = new Map();
|
|
17
|
+
for (const page of pages)
|
|
18
|
+
groups.set(page.group, [...(groups.get(page.group) ?? []), page]);
|
|
19
|
+
return [...groups].map(([group, entries]) => ({ group, pages: byOrder(entries) }));
|
|
20
|
+
}
|
|
21
|
+
/** Overview cards for a section (never Theme Studio). */
|
|
22
|
+
export function cards(registry, section) {
|
|
23
|
+
return byOrder(registry.pages.filter((p) => p.visible && p.nav.card && p.section === section));
|
|
24
|
+
}
|
|
25
|
+
/** Search entries: every visible page that opts into search. */
|
|
26
|
+
export function searchEntries(registry) {
|
|
27
|
+
return registry.pages
|
|
28
|
+
.filter((p) => p.visible && p.nav.search)
|
|
29
|
+
.map((p) => ({
|
|
30
|
+
id: p.id,
|
|
31
|
+
title: p.title,
|
|
32
|
+
...(p.summary ? { summary: p.summary } : {}),
|
|
33
|
+
tags: p.tags ?? [],
|
|
34
|
+
route: p.route,
|
|
35
|
+
}));
|
|
36
|
+
}
|
|
37
|
+
/** "On this page" entries: visible sections, only when there are at least two. */
|
|
38
|
+
export function onThisPage(page) {
|
|
39
|
+
const visible = page.sections.filter((s) => s.visible);
|
|
40
|
+
return visible.length >= 2 ? visible.map(({ id, title }) => ({ id, title })) : [];
|
|
41
|
+
}
|
|
42
|
+
/** URL for a route under the base path, in history or hash mode. */
|
|
43
|
+
export function href(registry, route) {
|
|
44
|
+
const relative = route.replace(/^\//, '');
|
|
45
|
+
return registry.routing === 'hash'
|
|
46
|
+
? `${registry.basePath}#/${relative}`
|
|
47
|
+
: `${registry.basePath}${relative}`;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Resolve a legacy route (relative to the base path). `/playground?component=<tag>` goes to
|
|
51
|
+
* that component when it exists, keeping other parameters; `/foundations/products` without
|
|
52
|
+
* Products and modes gives a notice instead of a redirect.
|
|
53
|
+
*/
|
|
54
|
+
export function resolveLegacyRoute(registry, path, search = '') {
|
|
55
|
+
const params = new URLSearchParams(search);
|
|
56
|
+
if (path === '/playground') {
|
|
57
|
+
const tag = params.get('component');
|
|
58
|
+
const target = tag
|
|
59
|
+
? registry.pages.find((p) => p.id === `components/${tag}` && p.visible)
|
|
60
|
+
: undefined;
|
|
61
|
+
const owner = registry.pages.find((p) => p.visible && p.legacyRoutes?.includes(path));
|
|
62
|
+
if (!target && !owner)
|
|
63
|
+
return undefined;
|
|
64
|
+
params.delete('component');
|
|
65
|
+
const rest = params.toString();
|
|
66
|
+
return { kind: 'redirect', to: `${(target ?? owner)?.route}${rest ? `?${rest}` : ''}` };
|
|
67
|
+
}
|
|
68
|
+
const owner = registry.pages.find((p) => p.visible && p.legacyRoutes?.includes(path));
|
|
69
|
+
if (owner)
|
|
70
|
+
return { kind: 'redirect', to: `${owner.route}${search}` };
|
|
71
|
+
if (path === '/foundations/products' &&
|
|
72
|
+
!registry.pages.some((p) => p.id === 'products' && p.visible)) {
|
|
73
|
+
return { kind: 'notice', code: 'products.disabled' };
|
|
74
|
+
}
|
|
75
|
+
return undefined;
|
|
76
|
+
}
|
|
77
|
+
/** Static redirect stubs for history-mode builds (meta refresh + canonical link). */
|
|
78
|
+
export function staticRedirects(registry) {
|
|
79
|
+
if (registry.routing !== 'history')
|
|
80
|
+
return [];
|
|
81
|
+
return registry.pages.flatMap((p) => p.visible ? (p.legacyRoutes ?? []).map((from) => ({ from, to: p.route })) : []);
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=navigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/pages/navigation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/** Page registry contracts (`page-registry.v1`, ADR 0023, workbench-pages.md §2). */
|
|
2
|
+
export declare const PAGE_REGISTRY_SCHEMA = "https://oddkin.dev/schemas/page-registry/v1.json";
|
|
3
|
+
export type PageKind = 'home' | 'overview' | 'foundation' | 'component' | 'tool' | 'products' | 'guide';
|
|
4
|
+
export type Availability = 'full' | 'partial' | 'unavailable';
|
|
5
|
+
export interface SectionEntry {
|
|
6
|
+
/** Stable section id; drives "On this page" anchors and authored content keys. */
|
|
7
|
+
readonly id: string;
|
|
8
|
+
readonly title: string;
|
|
9
|
+
readonly visible: boolean;
|
|
10
|
+
readonly source: 'generated' | 'built-in' | 'authored';
|
|
11
|
+
}
|
|
12
|
+
export interface PageEntry {
|
|
13
|
+
/** Stable id, e.g. `foundations/spacing`, `components/acme-button`, `theme-studio`. */
|
|
14
|
+
readonly id: string;
|
|
15
|
+
/** Relative to the base path, starting with `/`. */
|
|
16
|
+
readonly route: string;
|
|
17
|
+
readonly section: string;
|
|
18
|
+
readonly kind: PageKind;
|
|
19
|
+
readonly eyebrow?: string;
|
|
20
|
+
readonly title: string;
|
|
21
|
+
readonly summary?: string;
|
|
22
|
+
/** Sidebar and catalog group (component category). */
|
|
23
|
+
readonly group?: string;
|
|
24
|
+
readonly tags?: readonly string[];
|
|
25
|
+
/** ISO date, only from authored content or source history (ADR 0027); never build time. */
|
|
26
|
+
readonly updated?: string;
|
|
27
|
+
readonly order?: number;
|
|
28
|
+
readonly visible: boolean;
|
|
29
|
+
readonly availability: Availability;
|
|
30
|
+
/** Where the page appears. All false when the page is not visible. */
|
|
31
|
+
readonly nav: {
|
|
32
|
+
readonly primary?: boolean;
|
|
33
|
+
readonly sidebar?: boolean;
|
|
34
|
+
readonly card?: boolean;
|
|
35
|
+
readonly search?: boolean;
|
|
36
|
+
};
|
|
37
|
+
readonly sections: readonly SectionEntry[];
|
|
38
|
+
/** Old routes that redirect here. */
|
|
39
|
+
readonly legacyRoutes?: readonly string[];
|
|
40
|
+
}
|
|
41
|
+
export interface PageRegistry {
|
|
42
|
+
readonly schema: typeof PAGE_REGISTRY_SCHEMA;
|
|
43
|
+
readonly basePath: string;
|
|
44
|
+
readonly routing: 'history' | 'hash';
|
|
45
|
+
/** Ordered ids of visible pages shown in primary navigation. */
|
|
46
|
+
readonly primaryNav: readonly string[];
|
|
47
|
+
readonly pages: readonly PageEntry[];
|
|
48
|
+
}
|
|
49
|
+
export interface CemDeclaration {
|
|
50
|
+
readonly kind: string;
|
|
51
|
+
readonly name: string;
|
|
52
|
+
readonly customElement?: boolean;
|
|
53
|
+
readonly tagName?: string;
|
|
54
|
+
readonly summary?: string;
|
|
55
|
+
readonly description?: string;
|
|
56
|
+
readonly members?: readonly {
|
|
57
|
+
readonly kind: string;
|
|
58
|
+
readonly name: string;
|
|
59
|
+
readonly privacy?: string;
|
|
60
|
+
readonly static?: boolean;
|
|
61
|
+
}[];
|
|
62
|
+
readonly attributes?: readonly {
|
|
63
|
+
readonly name: string;
|
|
64
|
+
}[];
|
|
65
|
+
readonly events?: readonly {
|
|
66
|
+
readonly name: string;
|
|
67
|
+
}[];
|
|
68
|
+
readonly slots?: readonly {
|
|
69
|
+
readonly name: string;
|
|
70
|
+
}[];
|
|
71
|
+
readonly cssParts?: readonly {
|
|
72
|
+
readonly name: string;
|
|
73
|
+
}[];
|
|
74
|
+
readonly cssProperties?: readonly {
|
|
75
|
+
readonly name: string;
|
|
76
|
+
}[];
|
|
77
|
+
readonly cssStates?: readonly {
|
|
78
|
+
readonly name: string;
|
|
79
|
+
}[];
|
|
80
|
+
}
|
|
81
|
+
/** A Custom Elements Manifest (schema 2.x); only the fields the registry reads. */
|
|
82
|
+
export interface CemPackage {
|
|
83
|
+
readonly modules: readonly {
|
|
84
|
+
readonly path: string;
|
|
85
|
+
readonly declarations?: readonly CemDeclaration[];
|
|
86
|
+
/** The module's exports; a `custom-element-definition` names a tag the module registers. */
|
|
87
|
+
readonly exports?: readonly {
|
|
88
|
+
readonly kind: string;
|
|
89
|
+
readonly name: string;
|
|
90
|
+
}[];
|
|
91
|
+
}[];
|
|
92
|
+
}
|
|
93
|
+
export interface FactLike<T> {
|
|
94
|
+
readonly value?: T;
|
|
95
|
+
readonly known?: boolean;
|
|
96
|
+
readonly provenance: 'extracted' | 'authored' | 'observed' | 'verified';
|
|
97
|
+
}
|
|
98
|
+
export interface FoundationMetaLike {
|
|
99
|
+
readonly id: string;
|
|
100
|
+
readonly sections: readonly {
|
|
101
|
+
readonly id: string;
|
|
102
|
+
readonly available: boolean;
|
|
103
|
+
readonly reason?: string;
|
|
104
|
+
}[];
|
|
105
|
+
readonly tokens: readonly string[];
|
|
106
|
+
}
|
|
107
|
+
export interface DocMetaLike {
|
|
108
|
+
readonly title?: FactLike<string>;
|
|
109
|
+
readonly summary?: FactLike<string>;
|
|
110
|
+
readonly tags?: readonly string[];
|
|
111
|
+
readonly updated?: FactLike<string>;
|
|
112
|
+
readonly order?: number;
|
|
113
|
+
readonly visible?: boolean;
|
|
114
|
+
}
|
|
115
|
+
/** The oddkin-metadata v1 fields the registry reads. */
|
|
116
|
+
export interface OddkinMetadataLike {
|
|
117
|
+
readonly library?: {
|
|
118
|
+
readonly name?: string;
|
|
119
|
+
readonly prefix?: string;
|
|
120
|
+
};
|
|
121
|
+
readonly components?: Readonly<Record<string, {
|
|
122
|
+
readonly tag: string;
|
|
123
|
+
readonly category?: string;
|
|
124
|
+
readonly tokenReads?: readonly unknown[];
|
|
125
|
+
readonly styleMappings?: readonly unknown[];
|
|
126
|
+
readonly a11y?: unknown;
|
|
127
|
+
readonly keyboard?: unknown;
|
|
128
|
+
readonly limitations?: readonly unknown[];
|
|
129
|
+
}>>;
|
|
130
|
+
readonly tokens?: unknown;
|
|
131
|
+
readonly examples?: Readonly<Record<string, {
|
|
132
|
+
readonly component: string;
|
|
133
|
+
readonly name: string;
|
|
134
|
+
readonly incorrect?: object;
|
|
135
|
+
}>>;
|
|
136
|
+
readonly foundations?: Readonly<Record<string, FoundationMetaLike>>;
|
|
137
|
+
readonly categories?: Readonly<Record<string, {
|
|
138
|
+
readonly label: string;
|
|
139
|
+
readonly description?: string;
|
|
140
|
+
readonly order?: number;
|
|
141
|
+
}>>;
|
|
142
|
+
readonly products?: Readonly<Record<string, {
|
|
143
|
+
readonly id: string;
|
|
144
|
+
readonly source: string;
|
|
145
|
+
}>>;
|
|
146
|
+
readonly docs?: Readonly<Record<string, DocMetaLike>>;
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/pages/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/pages/types.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAErF,MAAM,CAAC,MAAM,oBAAoB,GAAG,kDAAkD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-define.d.ts","sourceRoot":"","sources":["../../src/panels/catalog-define.ts"],"names":[],"mappings":";AAEA,OAAO,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference path="./catalog.ts" preserve="true" />
|
|
2
|
+
// Registers <oddkin-catalog-panel> and the card element its cards use.
|
|
3
|
+
import '@oddkin/components/define/card';
|
|
4
|
+
import { define } from '@oddkin/core/element';
|
|
5
|
+
import { OddkinCatalogPanel } from './catalog.js';
|
|
6
|
+
define('oddkin-catalog-panel', OddkinCatalogPanel);
|
|
7
|
+
//# sourceMappingURL=catalog-define.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-define.js","sourceRoot":"","sources":["../../src/panels/catalog-define.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,uEAAuE;AACvE,OAAO,gCAAgC,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-layout-styles.d.ts","sourceRoot":"","sources":["../../src/panels/catalog-layout-styles.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,mBAAmB,yCA8C/B,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The catalog panel's arrangement in its shadow root, which the page's layout.css cannot reach.
|
|
3
|
+
* A module of its own, so Workbench's shell, which arranges the same markup with layout classes,
|
|
4
|
+
* does not carry it.
|
|
5
|
+
*/
|
|
6
|
+
import { css } from '@oddkin/core/styles';
|
|
7
|
+
export const catalogLayoutStyles = css `
|
|
8
|
+
.wb-content .wb-catalog-filters {
|
|
9
|
+
display: grid;
|
|
10
|
+
gap: var(--odd-space-lg);
|
|
11
|
+
margin-block-end: var(--odd-space-xl);
|
|
12
|
+
}
|
|
13
|
+
.wb-content :is(.wb-catalog-search, .wb-counts, .wb-categories) {
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-wrap: wrap;
|
|
16
|
+
align-items: center;
|
|
17
|
+
gap: var(--odd-space-sm);
|
|
18
|
+
}
|
|
19
|
+
.wb-content .wb-catalog-search label {
|
|
20
|
+
display: grid;
|
|
21
|
+
flex: 1 1 18rem;
|
|
22
|
+
max-inline-size: 32rem;
|
|
23
|
+
gap: var(--odd-space-2xs);
|
|
24
|
+
}
|
|
25
|
+
.wb-content .wb-group + .wb-group {
|
|
26
|
+
margin-block-start: var(--odd-space-2xl);
|
|
27
|
+
}
|
|
28
|
+
.wb-content .wb-cards {
|
|
29
|
+
display: grid;
|
|
30
|
+
grid-template-columns: minmax(0, 1fr);
|
|
31
|
+
gap: var(--odd-space-lg);
|
|
32
|
+
margin: 0;
|
|
33
|
+
padding: 0;
|
|
34
|
+
list-style: none;
|
|
35
|
+
}
|
|
36
|
+
.wb-content .wb-card {
|
|
37
|
+
block-size: 100%;
|
|
38
|
+
}
|
|
39
|
+
.wb-content .wb-card-preview {
|
|
40
|
+
display: grid;
|
|
41
|
+
place-items: center;
|
|
42
|
+
}
|
|
43
|
+
@container wb-content (width >= 32rem) {
|
|
44
|
+
.wb-content .wb-cards {
|
|
45
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
@container wb-content (width >= 52rem) {
|
|
49
|
+
.wb-content .wb-cards {
|
|
50
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
`;
|
|
54
|
+
//# sourceMappingURL=catalog-layout-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-layout-styles.js","sourceRoot":"","sources":["../../src/panels/catalog-layout-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAE1C,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CrC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-styles.d.ts","sourceRoot":"","sources":["../../src/panels/catalog-styles.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,aAAa,yCAkGzB,CAAC"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The components catalog's look, shared by the catalog panel's shadow root and the shell's light
|
|
3
|
+
* DOM (where layout classes arrange the same markup). The panel's arrangement is in
|
|
4
|
+
* catalog-layout-styles.ts. Separate from the panels' content sheet, so only the catalog loads them.
|
|
5
|
+
*/
|
|
6
|
+
import { css } from '@oddkin/core/styles';
|
|
7
|
+
export const catalogStyles = css `
|
|
8
|
+
.wb-catalog-filters p {
|
|
9
|
+
margin: 0;
|
|
10
|
+
}
|
|
11
|
+
.wb-catalog-search label {
|
|
12
|
+
font-size: var(--odd-font-size-sm);
|
|
13
|
+
font-weight: var(--odd-font-weight-medium);
|
|
14
|
+
}
|
|
15
|
+
.wb-catalog-search small {
|
|
16
|
+
color: var(--odd-color-text-secondary);
|
|
17
|
+
font-size: var(--odd-font-size-xs);
|
|
18
|
+
font-weight: var(--odd-font-weight-regular);
|
|
19
|
+
}
|
|
20
|
+
:is(.wb-catalog-search input, .wb-categories button) {
|
|
21
|
+
min-block-size: 2.5rem;
|
|
22
|
+
padding-inline: var(--odd-space-md);
|
|
23
|
+
font: inherit;
|
|
24
|
+
color: var(--odd-color-text-primary);
|
|
25
|
+
background: var(--odd-color-surface-default);
|
|
26
|
+
border: var(--odd-border-width-default) solid var(--odd-color-border-strong);
|
|
27
|
+
border-radius: var(--odd-radius-sm);
|
|
28
|
+
}
|
|
29
|
+
.wb-categories button {
|
|
30
|
+
font-weight: var(--odd-font-weight-medium);
|
|
31
|
+
cursor: pointer;
|
|
32
|
+
}
|
|
33
|
+
.wb-catalog-search input {
|
|
34
|
+
font-weight: var(--odd-font-weight-regular);
|
|
35
|
+
}
|
|
36
|
+
.wb-categories [aria-pressed='true'] {
|
|
37
|
+
color: var(--odd-color-text-on-action);
|
|
38
|
+
background: var(--odd-color-action-default);
|
|
39
|
+
border-color: var(--odd-color-action-default);
|
|
40
|
+
}
|
|
41
|
+
.wb-count {
|
|
42
|
+
padding: var(--odd-space-3xs) var(--odd-space-xs);
|
|
43
|
+
color: var(--odd-color-neutral-foreground);
|
|
44
|
+
background: var(--odd-color-neutral-surface);
|
|
45
|
+
border: var(--odd-border-width-default) solid var(--odd-color-neutral-border);
|
|
46
|
+
border-radius: var(--odd-radius-sm);
|
|
47
|
+
font-size: var(--odd-font-size-xs);
|
|
48
|
+
}
|
|
49
|
+
.wb-card :is(h2, h3) {
|
|
50
|
+
margin: 0;
|
|
51
|
+
font-size: var(--odd-font-size-lg);
|
|
52
|
+
font-weight: var(--odd-font-weight-semibold);
|
|
53
|
+
}
|
|
54
|
+
.wb-card p {
|
|
55
|
+
margin: var(--odd-space-xs) 0 0;
|
|
56
|
+
color: var(--odd-color-text-secondary);
|
|
57
|
+
}
|
|
58
|
+
.wb-card .wb-card-tag {
|
|
59
|
+
margin: 0;
|
|
60
|
+
padding-block-start: var(--odd-space-sm);
|
|
61
|
+
border-block-start: var(--odd-border-width-default) solid var(--odd-color-border-default);
|
|
62
|
+
color: var(--odd-color-text-primary);
|
|
63
|
+
font-size: var(--odd-font-size-sm);
|
|
64
|
+
}
|
|
65
|
+
a.wb-card-action {
|
|
66
|
+
display: block;
|
|
67
|
+
margin-block-start: var(--odd-space-sm);
|
|
68
|
+
padding: var(--odd-space-xs) var(--odd-space-md);
|
|
69
|
+
color: var(--odd-color-text-primary);
|
|
70
|
+
border: var(--odd-border-width-default) solid var(--odd-color-border-strong);
|
|
71
|
+
border-radius: var(--odd-radius-sm);
|
|
72
|
+
font-size: var(--odd-font-size-sm);
|
|
73
|
+
font-weight: var(--odd-font-weight-medium);
|
|
74
|
+
text-align: center;
|
|
75
|
+
text-decoration: none;
|
|
76
|
+
}
|
|
77
|
+
a.wb-card-action:hover {
|
|
78
|
+
background: var(--odd-color-surface-hover);
|
|
79
|
+
}
|
|
80
|
+
/* Live previews: a host that loads the library supplies elements; Workbench's shell, frames. */
|
|
81
|
+
.wb-card.wb-has-preview::part(base) {
|
|
82
|
+
overflow: hidden;
|
|
83
|
+
}
|
|
84
|
+
.wb-card.wb-has-preview::part(header) {
|
|
85
|
+
border-block-end: var(--odd-border-width-default) solid var(--odd-color-border-default);
|
|
86
|
+
}
|
|
87
|
+
.wb-card.wb-has-preview::part(body) {
|
|
88
|
+
padding: var(--odd-space-sm) var(--odd-space-lg) 0;
|
|
89
|
+
}
|
|
90
|
+
.wb-card.wb-has-preview::part(footer) {
|
|
91
|
+
padding: 0 var(--odd-space-lg) var(--odd-space-lg);
|
|
92
|
+
}
|
|
93
|
+
/* A fixed height, as in Figma 03: a preview built as its card scrolls in never moves the cards. */
|
|
94
|
+
.wb-card-preview {
|
|
95
|
+
position: relative;
|
|
96
|
+
block-size: 10rem;
|
|
97
|
+
overflow: hidden;
|
|
98
|
+
padding: var(--odd-space-md);
|
|
99
|
+
background: var(--odd-color-surface-specimen);
|
|
100
|
+
}
|
|
101
|
+
.wb-card-frame {
|
|
102
|
+
position: absolute;
|
|
103
|
+
inset: 0;
|
|
104
|
+
}
|
|
105
|
+
`;
|
|
106
|
+
//# sourceMappingURL=catalog-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-styles.js","sourceRoot":"","sources":["../../src/panels/catalog-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAE1C,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkG/B,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `<oddkin-catalog-panel>`: the components catalog (workbench-pages.md §6) as an embeddable
|
|
3
|
+
* panel: search, category buttons, counts, and grouped cards from the page registry. Cards load
|
|
4
|
+
* no component modules and mount no frames; a host that loads the library may supply live
|
|
5
|
+
* previews (`preview`). Filter changes update the panel and dispatch `oddkin-catalog-filter` so
|
|
6
|
+
* the host can mirror them in its URL.
|
|
7
|
+
*/
|
|
8
|
+
import { OddkinElement } from '@oddkin/core/element';
|
|
9
|
+
import type { WorkbenchIndex } from '../data/types.js';
|
|
10
|
+
import type { PageEntry } from '../pages/types.js';
|
|
11
|
+
import type { StyleInput } from '@oddkin/core/styles';
|
|
12
|
+
export interface CatalogFilterDetail {
|
|
13
|
+
readonly query: string;
|
|
14
|
+
readonly category: string;
|
|
15
|
+
}
|
|
16
|
+
declare const OddkinCatalogPanel_base: import("@oddkin/core/element").WithProps<typeof OddkinElement, {
|
|
17
|
+
readonly index: import("@oddkin/core/element").PropDefinition<WorkbenchIndex | undefined>;
|
|
18
|
+
readonly href: import("@oddkin/core/element").PropDefinition<(route: string) => string>;
|
|
19
|
+
readonly query: import("@oddkin/core/element").PropDefinition<string>;
|
|
20
|
+
readonly category: import("@oddkin/core/element").PropDefinition<string>;
|
|
21
|
+
readonly groups: import("@oddkin/core/element").PropDefinition<readonly string[] | undefined>;
|
|
22
|
+
readonly preview: import("@oddkin/core/element").PropDefinition<((page: PageEntry) => Node | undefined) | undefined>;
|
|
23
|
+
}>;
|
|
24
|
+
export declare class OddkinCatalogPanel extends OddkinCatalogPanel_base {
|
|
25
|
+
static styles: StyleInput;
|
|
26
|
+
protected render(): import("@oddkin/core/template").TemplateResult;
|
|
27
|
+
}
|
|
28
|
+
declare global {
|
|
29
|
+
interface HTMLElementTagNameMap {
|
|
30
|
+
'oddkin-catalog-panel': OddkinCatalogPanel;
|
|
31
|
+
}
|
|
32
|
+
interface HTMLElementEventMap {
|
|
33
|
+
'oddkin-catalog-filter': CustomEvent<CatalogFilterDetail>;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
export {};
|
|
37
|
+
//# sourceMappingURL=catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/panels/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,aAAa,EAAQ,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAKtD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;;;yEAI2B,MAAM,KAAK,MAAM;;;;4EAiBd,SAAS,KAAK,IAAI,GAAG,SAAS;;AAnB7D,qBAAa,kBAAmB,SAAQ,uBA4BtC;IACA,OAAgB,MAAM,EAAE,UAAU,CAKhC;IAEF,UAAmB,MAAM,mDA2BxB;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,sBAAsB,EAAE,kBAAkB,CAAC;KAC5C;IACD,UAAU,mBAAmB;QAC3B,uBAAuB,EAAE,WAAW,CAAC,mBAAmB,CAAC,CAAC;KAC3D;CACF"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `<oddkin-catalog-panel>`: the components catalog (workbench-pages.md §6) as an embeddable
|
|
3
|
+
* panel: search, category buttons, counts, and grouped cards from the page registry. Cards load
|
|
4
|
+
* no component modules and mount no frames; a host that loads the library may supply live
|
|
5
|
+
* previews (`preview`). Filter changes update the panel and dispatch `oddkin-catalog-filter` so
|
|
6
|
+
* the host can mirror them in its URL.
|
|
7
|
+
*/
|
|
8
|
+
import { OddkinElement, prop } from '@oddkin/core/element';
|
|
9
|
+
import { html } from '@oddkin/core/template';
|
|
10
|
+
import { overviewBody } from '../app/views.js';
|
|
11
|
+
import { catalogLayoutStyles } from './catalog-layout-styles.js';
|
|
12
|
+
import { catalogStyles } from './catalog-styles.js';
|
|
13
|
+
import { contentStyles, panelHostStyles } from './styles.js';
|
|
14
|
+
export class OddkinCatalogPanel extends OddkinElement.with({
|
|
15
|
+
index: prop.object({ description: 'The Workbench index.' }),
|
|
16
|
+
href: prop.custom({
|
|
17
|
+
default: () => (route) => route,
|
|
18
|
+
coerce: (value) => typeof value === 'function'
|
|
19
|
+
? { ok: true, value: value }
|
|
20
|
+
: { ok: false, reason: 'expected a function' },
|
|
21
|
+
description: 'Maps a Workbench route to a URL.',
|
|
22
|
+
}),
|
|
23
|
+
query: prop.string({ default: '', attribute: false, description: 'Search text.' }),
|
|
24
|
+
category: prop.string({
|
|
25
|
+
default: '',
|
|
26
|
+
attribute: false,
|
|
27
|
+
description: "Category label to show; '' shows every category.",
|
|
28
|
+
}),
|
|
29
|
+
groups: prop.object({
|
|
30
|
+
description: 'Categories to list (for example every one but AI); unset lists all.',
|
|
31
|
+
}),
|
|
32
|
+
preview: prop.custom({
|
|
33
|
+
default: () => undefined,
|
|
34
|
+
coerce: (value) => value === undefined || typeof value === 'function'
|
|
35
|
+
? { ok: true, value: value }
|
|
36
|
+
: { ok: false, reason: 'expected a function' },
|
|
37
|
+
description: 'Returns a live preview for a card. Only a host that loads the library supplies one; the same page should get the same node.',
|
|
38
|
+
}),
|
|
39
|
+
}) {
|
|
40
|
+
static styles = [
|
|
41
|
+
panelHostStyles,
|
|
42
|
+
contentStyles,
|
|
43
|
+
catalogLayoutStyles,
|
|
44
|
+
catalogStyles,
|
|
45
|
+
];
|
|
46
|
+
render() {
|
|
47
|
+
const index = this.index;
|
|
48
|
+
const page = index?.registry.pages.find((p) => p.id === 'components');
|
|
49
|
+
if (!index || !page)
|
|
50
|
+
return html `<div class="wb-content"></div>`;
|
|
51
|
+
const ctx = {
|
|
52
|
+
registry: index.registry,
|
|
53
|
+
href: (route) => this.href(route),
|
|
54
|
+
lang: this.ownerDocument.documentElement.lang || 'en',
|
|
55
|
+
catalog: {
|
|
56
|
+
query: this.query,
|
|
57
|
+
category: this.category,
|
|
58
|
+
...(this.groups ? { groups: this.groups } : {}),
|
|
59
|
+
...(this.preview ? { preview: this.preview } : {}),
|
|
60
|
+
update: (query, category) => {
|
|
61
|
+
this.query = query;
|
|
62
|
+
this.category = category;
|
|
63
|
+
this.dispatchEvent(new CustomEvent('oddkin-catalog-filter', {
|
|
64
|
+
bubbles: true,
|
|
65
|
+
composed: true,
|
|
66
|
+
detail: { query, category },
|
|
67
|
+
}));
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
return html `<div class="wb-content">${overviewBody(ctx, page)}</div>`;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/panels/catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-define.d.ts","sourceRoot":"","sources":["../../src/panels/component-define.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/// <reference path="./component.ts" preserve="true" />
|
|
2
|
+
// Registers <oddkin-component-panel>.
|
|
3
|
+
import { define } from '@oddkin/core/element';
|
|
4
|
+
import { OddkinComponentPanel } from './component.js';
|
|
5
|
+
define('oddkin-component-panel', OddkinComponentPanel);
|
|
6
|
+
//# sourceMappingURL=component-define.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-define.js","sourceRoot":"","sources":["../../src/panels/component-define.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,sCAAsC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,CAAC,wBAAwB,EAAE,oBAAoB,CAAC,CAAC"}
|