foundry-design-web-adapter 0.2.0-beta.2 → 0.2.0-beta.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +164 -17
- package/THIRD_PARTY_NOTICES.md +14 -0
- package/dist/adapter.js +30276 -1576
- package/dist/apply-run.d.ts +19 -0
- package/dist/apply-run.d.ts.map +1 -0
- package/dist/component-workshop.d.ts +115 -0
- package/dist/component-workshop.d.ts.map +1 -0
- package/dist/design-decisions.d.ts +25 -0
- package/dist/design-decisions.d.ts.map +1 -0
- package/dist/design-memory.d.ts +51 -1
- package/dist/design-memory.d.ts.map +1 -1
- package/dist/diagnostics.d.ts +28 -0
- package/dist/diagnostics.d.ts.map +1 -0
- package/dist/effects.d.ts +15 -0
- package/dist/effects.d.ts.map +1 -0
- package/dist/health.d.ts +6 -0
- package/dist/health.d.ts.map +1 -1
- package/dist/index.d.ts +38 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/intelligence.d.ts +1 -1
- package/dist/intelligence.d.ts.map +1 -1
- package/dist/keyline-icons.d.ts.map +1 -1
- package/dist/motion.d.ts +189 -0
- package/dist/motion.d.ts.map +1 -0
- package/dist/preview-context.d.ts +132 -0
- package/dist/preview-context.d.ts.map +1 -0
- package/dist/rebuilt-identity.d.ts +23 -0
- package/dist/rebuilt-identity.d.ts.map +1 -0
- package/dist/rebuilt-value.d.ts +2 -0
- package/dist/rebuilt-value.d.ts.map +1 -0
- package/dist/responsive-lab.d.ts +77 -0
- package/dist/responsive-lab.d.ts.map +1 -0
- package/dist/semantic.d.ts +15 -4
- package/dist/semantic.d.ts.map +1 -1
- package/dist/stress-testing.d.ts +26 -0
- package/dist/stress-testing.d.ts.map +1 -0
- package/dist/typography.d.ts +195 -0
- package/dist/typography.d.ts.map +1 -0
- package/dist/ui-foundations.d.ts +8 -0
- package/dist/ui-foundations.d.ts.map +1 -0
- package/dist/visual-recipes.d.ts +45 -0
- package/dist/visual-recipes.d.ts.map +1 -0
- package/dist/workspace.d.ts +11 -5
- package/dist/workspace.d.ts.map +1 -1
- package/package.json +3 -2
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
export declare const PREVIEW_CONTEXT_VERSION: 1;
|
|
2
|
+
export type PreviewAxisStatus = 'applied' | 'current' | 'unsupported';
|
|
3
|
+
export type PreviewMotionPreference = 'system' | 'reduce' | 'no-preference';
|
|
4
|
+
export type PreviewPseudoState = 'hover' | 'focus' | 'active' | 'disabled';
|
|
5
|
+
export interface PreviewViewport {
|
|
6
|
+
id: string;
|
|
7
|
+
width?: number;
|
|
8
|
+
height?: number;
|
|
9
|
+
}
|
|
10
|
+
export interface PreviewTarget {
|
|
11
|
+
id: string;
|
|
12
|
+
selector: string;
|
|
13
|
+
}
|
|
14
|
+
export interface PreviewContext {
|
|
15
|
+
version: typeof PREVIEW_CONTEXT_VERSION;
|
|
16
|
+
requestRevision: number;
|
|
17
|
+
viewport: PreviewViewport;
|
|
18
|
+
theme: string;
|
|
19
|
+
state: string;
|
|
20
|
+
motionPreference: PreviewMotionPreference;
|
|
21
|
+
selectedTarget?: PreviewTarget;
|
|
22
|
+
}
|
|
23
|
+
export interface PreviewAxisResult {
|
|
24
|
+
status: PreviewAxisStatus;
|
|
25
|
+
method: string;
|
|
26
|
+
evidence: string[];
|
|
27
|
+
failureReason?: string;
|
|
28
|
+
}
|
|
29
|
+
export interface PreviewContextResult {
|
|
30
|
+
version: typeof PREVIEW_CONTEXT_VERSION;
|
|
31
|
+
requestRevision: number;
|
|
32
|
+
applied: boolean;
|
|
33
|
+
context: PreviewContext;
|
|
34
|
+
axes: {
|
|
35
|
+
viewport: PreviewAxisResult;
|
|
36
|
+
theme: PreviewAxisResult;
|
|
37
|
+
state: PreviewAxisResult;
|
|
38
|
+
motion: PreviewAxisResult;
|
|
39
|
+
};
|
|
40
|
+
reloadQuery?: Record<string, string>;
|
|
41
|
+
failureReason?: string;
|
|
42
|
+
}
|
|
43
|
+
export interface PreviewThemeDefinition {
|
|
44
|
+
id: string;
|
|
45
|
+
label: string;
|
|
46
|
+
selector?: string;
|
|
47
|
+
attribute?: string;
|
|
48
|
+
value?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface PreviewStateDefinition {
|
|
51
|
+
id: string;
|
|
52
|
+
label: string;
|
|
53
|
+
viewport?: {
|
|
54
|
+
width: number;
|
|
55
|
+
height: number;
|
|
56
|
+
};
|
|
57
|
+
theme?: string;
|
|
58
|
+
variant?: Record<string, string | number | boolean>;
|
|
59
|
+
pseudoStates?: PreviewPseudoState[];
|
|
60
|
+
reducedMotion?: boolean;
|
|
61
|
+
query?: Record<string, string>;
|
|
62
|
+
evidence?: string[];
|
|
63
|
+
}
|
|
64
|
+
export interface PreviewBreakpointDefinition {
|
|
65
|
+
id: string;
|
|
66
|
+
label: string;
|
|
67
|
+
width: number;
|
|
68
|
+
height: number;
|
|
69
|
+
}
|
|
70
|
+
export interface PreviewDesignGraph {
|
|
71
|
+
breakpoints: PreviewBreakpointDefinition[];
|
|
72
|
+
themes: PreviewThemeDefinition[];
|
|
73
|
+
states: PreviewStateDefinition[];
|
|
74
|
+
}
|
|
75
|
+
export interface PreviewCapabilities {
|
|
76
|
+
viewports: Array<{
|
|
77
|
+
id: string;
|
|
78
|
+
width: number;
|
|
79
|
+
height: number;
|
|
80
|
+
}>;
|
|
81
|
+
themes: Array<{
|
|
82
|
+
id: string;
|
|
83
|
+
selector?: string;
|
|
84
|
+
attribute?: string;
|
|
85
|
+
value?: string;
|
|
86
|
+
}>;
|
|
87
|
+
states: Array<{
|
|
88
|
+
id: string;
|
|
89
|
+
methods: Array<'query' | 'variant' | 'pseudo' | 'native' | 'reduced-motion'>;
|
|
90
|
+
}>;
|
|
91
|
+
motionPreferences: PreviewMotionPreference[];
|
|
92
|
+
}
|
|
93
|
+
export interface PreviewAttributeNode {
|
|
94
|
+
getAttribute(name: string): string | null;
|
|
95
|
+
setAttribute(name: string, value: string): void;
|
|
96
|
+
removeAttribute(name: string): void;
|
|
97
|
+
}
|
|
98
|
+
export interface PreviewThemeRoot extends PreviewAttributeNode {
|
|
99
|
+
classList: Pick<DOMTokenList, 'add' | 'contains' | 'toggle'>;
|
|
100
|
+
}
|
|
101
|
+
export interface PreviewStateTarget extends PreviewAttributeNode {
|
|
102
|
+
focus?(options?: FocusOptions): void;
|
|
103
|
+
}
|
|
104
|
+
export interface PreviewThemeBaseline {
|
|
105
|
+
attributes: Map<string, string | null>;
|
|
106
|
+
classes: Map<string, boolean>;
|
|
107
|
+
}
|
|
108
|
+
export declare function createPreviewThemeBaseline(): PreviewThemeBaseline;
|
|
109
|
+
export declare function themeHook(theme: PreviewThemeDefinition): {
|
|
110
|
+
method: 'attribute';
|
|
111
|
+
attribute: string;
|
|
112
|
+
value: string;
|
|
113
|
+
} | {
|
|
114
|
+
method: 'class';
|
|
115
|
+
className: string;
|
|
116
|
+
} | {
|
|
117
|
+
method: 'unsupported';
|
|
118
|
+
};
|
|
119
|
+
export declare function capturePreviewThemeBaseline(root: PreviewThemeRoot, themes: PreviewThemeDefinition[], baseline: PreviewThemeBaseline): void;
|
|
120
|
+
export declare function restorePreviewThemeBaseline(root: PreviewThemeRoot, baseline: PreviewThemeBaseline): void;
|
|
121
|
+
export declare function applyPreviewTheme(root: PreviewThemeRoot, theme: PreviewThemeDefinition, configuredThemes?: PreviewThemeDefinition[]): ReturnType<typeof themeHook>;
|
|
122
|
+
export declare function variantAttribute(property: string): string;
|
|
123
|
+
export declare function replacePreviewPseudoSelector(selectorText: string, state: PreviewPseudoState, replacement?: string): string | null;
|
|
124
|
+
export declare function authoredPseudoSelectorMatches(selectorText: string, state: PreviewPseudoState, markerSelector: string, queryMatches: (selector: string) => boolean): boolean;
|
|
125
|
+
export declare function applyPreviewStateAttributes(target: PreviewStateTarget, state: PreviewStateDefinition): () => void;
|
|
126
|
+
export declare function acceptPreviewRevision(requestedRevision: number, currentRevision: number, latestRequestedRevision?: number): number;
|
|
127
|
+
export declare function applyPreviewMutationAtomically<T>(apply: () => T | Promise<T>, restore: () => void | Promise<void>): Promise<T>;
|
|
128
|
+
export declare function previewCapabilities(graph: PreviewDesignGraph): PreviewCapabilities;
|
|
129
|
+
export declare function previewContextKey(context: PreviewContext): string;
|
|
130
|
+
export declare function queryForPreviewState(states: PreviewStateDefinition[], stateId: string): Record<string, string>;
|
|
131
|
+
export declare function previewStateMethods(state: PreviewStateDefinition | undefined): string[];
|
|
132
|
+
//# sourceMappingURL=preview-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preview-context.d.ts","sourceRoot":"","sources":["../src/preview-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface FrozenVerificationTarget {
|
|
2
|
+
id: string;
|
|
3
|
+
componentPath: string[];
|
|
4
|
+
source?: {
|
|
5
|
+
file: string;
|
|
6
|
+
line?: number;
|
|
7
|
+
column?: number;
|
|
8
|
+
symbol?: string;
|
|
9
|
+
};
|
|
10
|
+
locator?: Record<string, unknown>;
|
|
11
|
+
}
|
|
12
|
+
export interface RenderedVerificationIdentity {
|
|
13
|
+
foundryId?: string;
|
|
14
|
+
componentPath: string[];
|
|
15
|
+
source?: {
|
|
16
|
+
file: string;
|
|
17
|
+
line?: number;
|
|
18
|
+
column?: number;
|
|
19
|
+
symbol?: string;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export declare function rebuiltTargetIdentityMatches(frozen: FrozenVerificationTarget, rendered: RenderedVerificationIdentity): boolean;
|
|
23
|
+
//# sourceMappingURL=rebuilt-identity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rebuilt-identity.d.ts","sourceRoot":"","sources":["../src/rebuilt-identity.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5E;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,wBAAwB,EAChC,QAAQ,EAAE,4BAA4B,GACrC,OAAO,CAgCT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rebuilt-value.d.ts","sourceRoot":"","sources":["../src/rebuilt-value.ts"],"names":[],"mappings":"AAEA,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,OAAO,GAChB,OAAO,CAET"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
export type ResponsiveStressMode = 'none' | 'browser-zoom' | 'dynamic-type' | 'long-content';
|
|
2
|
+
export interface ResponsiveViewportInput {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
width: number;
|
|
6
|
+
height?: number;
|
|
7
|
+
}
|
|
8
|
+
export interface ResponsiveViewport extends ResponsiveViewportInput {
|
|
9
|
+
height: number;
|
|
10
|
+
minWidth: number;
|
|
11
|
+
maxWidth?: number;
|
|
12
|
+
}
|
|
13
|
+
export interface ResponsiveSnapshot {
|
|
14
|
+
viewportId: string;
|
|
15
|
+
viewportWidth: number;
|
|
16
|
+
viewportHeight: number;
|
|
17
|
+
elementWidth: number;
|
|
18
|
+
elementHeight: number;
|
|
19
|
+
scrollWidth: number;
|
|
20
|
+
scrollHeight: number;
|
|
21
|
+
clientWidth: number;
|
|
22
|
+
clientHeight: number;
|
|
23
|
+
lineCount?: number;
|
|
24
|
+
top?: number;
|
|
25
|
+
left?: number;
|
|
26
|
+
}
|
|
27
|
+
export interface ContainerQueryInput {
|
|
28
|
+
id: string;
|
|
29
|
+
label: string;
|
|
30
|
+
name?: string;
|
|
31
|
+
condition: string;
|
|
32
|
+
minWidth?: number;
|
|
33
|
+
maxWidth?: number;
|
|
34
|
+
}
|
|
35
|
+
export interface ResponsiveContainerRange {
|
|
36
|
+
min: number;
|
|
37
|
+
max: number;
|
|
38
|
+
boundaries: number[];
|
|
39
|
+
}
|
|
40
|
+
export interface ResponsiveComparison {
|
|
41
|
+
changed: boolean;
|
|
42
|
+
viewportWidthDelta: number;
|
|
43
|
+
containerWidthDelta: number;
|
|
44
|
+
elementWidthDelta: number;
|
|
45
|
+
elementHeightDelta: number;
|
|
46
|
+
positionDelta: number;
|
|
47
|
+
lineCountDelta: number;
|
|
48
|
+
overflowDelta: number;
|
|
49
|
+
}
|
|
50
|
+
export interface ResponsiveFinding {
|
|
51
|
+
kind: 'overflow' | 'clipping' | 'awkward-wrap' | 'layout-jump';
|
|
52
|
+
severity: 'warning' | 'error';
|
|
53
|
+
viewportId: string;
|
|
54
|
+
message: string;
|
|
55
|
+
}
|
|
56
|
+
export declare function responsiveViewports(configured: ResponsiveViewportInput[] | null | undefined, current: {
|
|
57
|
+
width: number;
|
|
58
|
+
height: number;
|
|
59
|
+
}): ResponsiveViewport[];
|
|
60
|
+
export declare function viewportForWidth(viewports: ResponsiveViewport[], width: number): ResponsiveViewport | undefined;
|
|
61
|
+
export declare function responsiveScale(viewport: Pick<ResponsiveViewport, 'width' | 'height'>, bounds: {
|
|
62
|
+
width: number;
|
|
63
|
+
height: number;
|
|
64
|
+
}): number;
|
|
65
|
+
export declare function responsiveFindings(snapshots: ResponsiveSnapshot[]): ResponsiveFinding[];
|
|
66
|
+
export declare function responsiveContainerRange(queries: ContainerQueryInput[] | null | undefined, currentWidth: number): ResponsiveContainerRange;
|
|
67
|
+
export declare function responsiveComparison(before: ResponsiveSnapshot & {
|
|
68
|
+
containerWidth?: number;
|
|
69
|
+
}, after: ResponsiveSnapshot & {
|
|
70
|
+
containerWidth?: number;
|
|
71
|
+
}): ResponsiveComparison;
|
|
72
|
+
export declare function responsiveEditScopes(hasSourceMapping: boolean): Array<{
|
|
73
|
+
id: 'breakpoint' | 'all';
|
|
74
|
+
enabled: boolean;
|
|
75
|
+
label: string;
|
|
76
|
+
}>;
|
|
77
|
+
//# sourceMappingURL=responsive-lab.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responsive-lab.d.ts","sourceRoot":"","sources":["../src/responsive-lab.ts"],"names":[],"mappings":"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"}
|
package/dist/semantic.d.ts
CHANGED
|
@@ -6,12 +6,12 @@ export interface BrowserSourceRef {
|
|
|
6
6
|
export interface BrowserMappingCandidate {
|
|
7
7
|
id: string;
|
|
8
8
|
label: string;
|
|
9
|
-
intent: 'resize' | 'spacing' | 'align' | 'distribute' | 'position' | 'style' | 'content' | 'motion' | 'state';
|
|
9
|
+
intent: 'resize' | 'spacing' | 'align' | 'distribute' | 'position' | 'style' | 'content' | 'motion' | 'state' | 'component-variant' | 'token-refactor';
|
|
10
10
|
property: string;
|
|
11
11
|
targetId?: string;
|
|
12
12
|
value: string | number;
|
|
13
13
|
source?: BrowserSourceRef;
|
|
14
|
-
scope: 'instance' | 'component';
|
|
14
|
+
scope: 'instance' | 'variant' | 'component';
|
|
15
15
|
confidence: 'measured' | 'instrumented' | 'inferred' | 'unresolved';
|
|
16
16
|
evidence: string[];
|
|
17
17
|
blastRadius: number;
|
|
@@ -20,7 +20,7 @@ export interface LayoutContext {
|
|
|
20
20
|
targetId: string;
|
|
21
21
|
property: string;
|
|
22
22
|
value: string | number;
|
|
23
|
-
scope: 'instance' | 'component';
|
|
23
|
+
scope: 'instance' | 'variant' | 'component';
|
|
24
24
|
source?: BrowserSourceRef;
|
|
25
25
|
parentDisplay: string;
|
|
26
26
|
parentFlexDirection: string;
|
|
@@ -28,13 +28,24 @@ export interface LayoutContext {
|
|
|
28
28
|
componentInstances: number;
|
|
29
29
|
}
|
|
30
30
|
export declare function semanticCandidates(context: LayoutContext): BrowserMappingCandidate[];
|
|
31
|
-
export declare function candidatesForElement(element: HTMLElement, property: string, value: string | number, targetId: string, scope: 'instance' | 'component', source?: BrowserSourceRef): BrowserMappingCandidate[];
|
|
31
|
+
export declare function candidatesForElement(element: HTMLElement, property: string, value: string | number, targetId: string, scope: 'instance' | 'variant' | 'component', source?: BrowserSourceRef): BrowserMappingCandidate[];
|
|
32
32
|
export interface BrowserDesignToken {
|
|
33
33
|
id: string;
|
|
34
34
|
name: string;
|
|
35
35
|
value: string;
|
|
36
36
|
category: string;
|
|
37
37
|
cssVariable?: string;
|
|
38
|
+
aliasOfTokenId?: string;
|
|
39
|
+
aliasOfTokenName?: string;
|
|
40
|
+
resolvedValue?: string;
|
|
41
|
+
aliasChain?: string[];
|
|
42
|
+
aliasStatus?: 'direct' | 'resolved' | 'broken' | 'circular';
|
|
38
43
|
}
|
|
39
44
|
export declare function matchingTokens(tokens: BrowserDesignToken[], property: string, value: string | number): BrowserDesignToken[];
|
|
45
|
+
export interface RankedDesignToken {
|
|
46
|
+
token: BrowserDesignToken;
|
|
47
|
+
relation: 'exact' | 'nearest' | 'project';
|
|
48
|
+
distance?: number;
|
|
49
|
+
}
|
|
50
|
+
export declare function rankedProjectTokens(tokens: BrowserDesignToken[], property: string, value: string | number): RankedDesignToken[];
|
|
40
51
|
//# sourceMappingURL=semantic.d.ts.map
|
package/dist/semantic.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../src/semantic.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EACF,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,GACZ,UAAU,GACV,OAAO,GACP,SAAS,GACT,QAAQ,GACR,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../src/semantic.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EACF,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,GACZ,UAAU,GACV,OAAO,GACP,SAAS,GACT,QAAQ,GACR,OAAO,GACP,mBAAmB,GACnB,gBAAgB,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;IAC5C,UAAU,EAAE,UAAU,GAAG,cAAc,GAAG,UAAU,GAAG,YAAY,CAAC;IACpE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;IAC5C,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AA6BD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,uBAAuB,EAAE,CAgEpF;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,WAAW,EAC3C,MAAM,CAAC,EAAE,gBAAgB,GACxB,uBAAuB,EAAE,CAmB3B;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;CAC7D;AAMD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,kBAAkB,EAAE,EAC5B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GAAG,MAAM,GACrB,kBAAkB,EAAE,CActB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAOD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,kBAAkB,EAAE,EAC5B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GAAG,MAAM,GACrB,iBAAiB,EAAE,CAwBrB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export type StressCategory = 'content' | 'state' | 'accessibility';
|
|
2
|
+
export type StressConditionId = 'long-content' | 'empty-content' | 'large-numbers' | 'missing-images' | 'loading-state' | 'error-state' | 'offline-state' | 'text-200' | 'browser-zoom-200' | 'high-contrast' | 'monochrome' | 'reduced-motion' | 'keyboard-only';
|
|
3
|
+
export type StressScope = 'selection' | 'canvas';
|
|
4
|
+
export interface StressConditionDefinition {
|
|
5
|
+
id: StressConditionId;
|
|
6
|
+
category: StressCategory;
|
|
7
|
+
label: string;
|
|
8
|
+
description: string;
|
|
9
|
+
combination: 'content' | 'state' | 'preference' | 'navigation';
|
|
10
|
+
}
|
|
11
|
+
export interface StressFindingContext {
|
|
12
|
+
severity: 'high' | 'medium' | 'low';
|
|
13
|
+
category: string;
|
|
14
|
+
source?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface StressFindingGroup<T extends StressFindingContext> {
|
|
17
|
+
id: string;
|
|
18
|
+
label: string;
|
|
19
|
+
findings: T[];
|
|
20
|
+
}
|
|
21
|
+
export declare const STRESS_CONDITIONS: readonly StressConditionDefinition[];
|
|
22
|
+
export declare function normalizeStressConditions(values: readonly unknown[]): StressConditionId[];
|
|
23
|
+
export declare function toggleStressCondition(active: readonly StressConditionId[], id: StressConditionId): StressConditionId[];
|
|
24
|
+
export declare function stressConditionSummary(active: readonly StressConditionId[]): string;
|
|
25
|
+
export declare function groupStressFindings<T extends StressFindingContext>(findings: readonly T[], groupBy?: 'severity' | 'source'): StressFindingGroup<T>[];
|
|
26
|
+
//# sourceMappingURL=stress-testing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stress-testing.d.ts","sourceRoot":"","sources":["../src/stress-testing.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,eAAe,CAAC;AAEnE,MAAM,MAAM,iBAAiB,GACzB,cAAc,GACd,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,eAAe,GACf,aAAa,GACb,eAAe,GACf,UAAU,GACV,kBAAkB,GAClB,eAAe,GACf,YAAY,GACZ,gBAAgB,GAChB,eAAe,CAAC;AAEpB,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEjD,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,iBAAiB,CAAC;IACtB,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,SAAS,GAAG,OAAO,GAAG,YAAY,GAAG,YAAY,CAAC;CAChE;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,oBAAoB;IAChE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,EAAE,CAAC;CACf;AAED,eAAO,MAAM,iBAAiB,EAAE,SAAS,yBAAyB,EA4FxD,CAAC;AAIX,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,iBAAiB,EAAE,CAmBzF;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,iBAAiB,EAAE,EACpC,EAAE,EAAE,iBAAiB,GACpB,iBAAiB,EAAE,CAGrB;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,iBAAiB,EAAE,GAAG,MAAM,CAOnF;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,oBAAoB,EAChE,QAAQ,EAAE,SAAS,CAAC,EAAE,EACtB,OAAO,GAAE,UAAU,GAAG,QAAqB,GAC1C,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAuBzB"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
export type FontOrigin = 'active' | 'project' | 'used' | 'local';
|
|
2
|
+
export interface TypographyFontFace {
|
|
3
|
+
family: string;
|
|
4
|
+
styles: string[];
|
|
5
|
+
weights: string[];
|
|
6
|
+
origins: FontOrigin[];
|
|
7
|
+
status?: string;
|
|
8
|
+
localOnly?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface LocalFontRecord {
|
|
11
|
+
family: string;
|
|
12
|
+
fullName?: string;
|
|
13
|
+
postscriptName?: string;
|
|
14
|
+
style?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface GoogleFontAxis {
|
|
17
|
+
tag: string;
|
|
18
|
+
min: number;
|
|
19
|
+
max: number;
|
|
20
|
+
defaultValue: number;
|
|
21
|
+
}
|
|
22
|
+
export interface GoogleFontFamily {
|
|
23
|
+
family: string;
|
|
24
|
+
category: string;
|
|
25
|
+
variants: string[];
|
|
26
|
+
subsets: string[];
|
|
27
|
+
axes: GoogleFontAxis[];
|
|
28
|
+
popularity: number;
|
|
29
|
+
}
|
|
30
|
+
export interface GoogleFontSelection {
|
|
31
|
+
font: GoogleFontFamily;
|
|
32
|
+
weight: number;
|
|
33
|
+
style: 'normal' | 'italic';
|
|
34
|
+
axes: Record<string, number>;
|
|
35
|
+
}
|
|
36
|
+
export interface GoogleFontsCssOptions {
|
|
37
|
+
weight?: number;
|
|
38
|
+
style?: 'normal' | 'italic';
|
|
39
|
+
axes?: Record<string, number>;
|
|
40
|
+
variableRanges?: boolean;
|
|
41
|
+
}
|
|
42
|
+
export interface RenderedFontFace {
|
|
43
|
+
family: string;
|
|
44
|
+
weight: string;
|
|
45
|
+
style: string;
|
|
46
|
+
status: FontFaceLoadStatus;
|
|
47
|
+
}
|
|
48
|
+
export interface TypographyDiagnosticInput {
|
|
49
|
+
primaryFamily: string;
|
|
50
|
+
requestedWeight: number;
|
|
51
|
+
requestedStyle: string;
|
|
52
|
+
fontSynthesis: string;
|
|
53
|
+
fontCheck: boolean;
|
|
54
|
+
faces: RenderedFontFace[];
|
|
55
|
+
text: string;
|
|
56
|
+
fontSize: number;
|
|
57
|
+
lineHeight: number;
|
|
58
|
+
clientWidth: number;
|
|
59
|
+
clientHeight: number;
|
|
60
|
+
scrollWidth: number;
|
|
61
|
+
scrollHeight: number;
|
|
62
|
+
whiteSpace: string;
|
|
63
|
+
overflowX: string;
|
|
64
|
+
overflowY: string;
|
|
65
|
+
measuredLineCount?: number;
|
|
66
|
+
}
|
|
67
|
+
export interface TypographyDiagnostic {
|
|
68
|
+
id: 'load' | 'fallback' | 'weight' | 'style' | 'line-length' | 'clipping';
|
|
69
|
+
severity: 'warning' | 'error';
|
|
70
|
+
title: string;
|
|
71
|
+
detail: string;
|
|
72
|
+
}
|
|
73
|
+
export interface TypographyAnalysis {
|
|
74
|
+
diagnostics: TypographyDiagnostic[];
|
|
75
|
+
lineCount: number;
|
|
76
|
+
charactersPerLine: number;
|
|
77
|
+
faceStatus: 'loaded' | 'system' | 'fallback' | 'failed';
|
|
78
|
+
}
|
|
79
|
+
export interface TypeTreatment {
|
|
80
|
+
id: 'tight' | 'balanced' | 'open';
|
|
81
|
+
label: string;
|
|
82
|
+
detail: string;
|
|
83
|
+
lineHeight: number;
|
|
84
|
+
letterSpacing: string;
|
|
85
|
+
}
|
|
86
|
+
export interface ProjectTypographyStyleValues {
|
|
87
|
+
fontFamily: string;
|
|
88
|
+
fontWeight: string;
|
|
89
|
+
fontStyle: string;
|
|
90
|
+
fontSize: string;
|
|
91
|
+
lineHeight: string;
|
|
92
|
+
letterSpacing: string;
|
|
93
|
+
fontVariationSettings: string;
|
|
94
|
+
}
|
|
95
|
+
export interface ProjectTypographyStyle {
|
|
96
|
+
id: string;
|
|
97
|
+
name: string;
|
|
98
|
+
values: ProjectTypographyStyleValues;
|
|
99
|
+
validation: TypographyValidationPlan;
|
|
100
|
+
createdAt: string;
|
|
101
|
+
updatedAt: string;
|
|
102
|
+
}
|
|
103
|
+
export interface TypographyValidationPlan {
|
|
104
|
+
breakpoints: Array<{
|
|
105
|
+
id: string;
|
|
106
|
+
label: string;
|
|
107
|
+
}>;
|
|
108
|
+
themes: Array<{
|
|
109
|
+
id: string;
|
|
110
|
+
label: string;
|
|
111
|
+
}>;
|
|
112
|
+
states: Array<{
|
|
113
|
+
id: string;
|
|
114
|
+
label: string;
|
|
115
|
+
}>;
|
|
116
|
+
}
|
|
117
|
+
export interface TypographyVerificationContext {
|
|
118
|
+
breakpoint: string;
|
|
119
|
+
theme: string;
|
|
120
|
+
state: string;
|
|
121
|
+
}
|
|
122
|
+
export interface FontIntegrationPlan {
|
|
123
|
+
strategy: FontInstallStrategy;
|
|
124
|
+
label: string;
|
|
125
|
+
family: string;
|
|
126
|
+
weight: number;
|
|
127
|
+
style: 'normal' | 'italic';
|
|
128
|
+
declaration: string;
|
|
129
|
+
cssUrl: string;
|
|
130
|
+
packageName?: string;
|
|
131
|
+
importStatement?: string;
|
|
132
|
+
sourceActions: string[];
|
|
133
|
+
verificationChecks: string[];
|
|
134
|
+
requiresAssetSelection: boolean;
|
|
135
|
+
}
|
|
136
|
+
export interface TypographyValidationInput {
|
|
137
|
+
breakpoints?: Array<{
|
|
138
|
+
id: string;
|
|
139
|
+
label?: string;
|
|
140
|
+
}>;
|
|
141
|
+
themes?: Array<{
|
|
142
|
+
id: string;
|
|
143
|
+
label?: string;
|
|
144
|
+
}>;
|
|
145
|
+
states?: Array<string | {
|
|
146
|
+
id: string;
|
|
147
|
+
label?: string;
|
|
148
|
+
}>;
|
|
149
|
+
currentBreakpoint?: string;
|
|
150
|
+
currentTheme?: string;
|
|
151
|
+
currentState?: string;
|
|
152
|
+
}
|
|
153
|
+
interface TypographyStyleStorage {
|
|
154
|
+
getItem(key: string): string | null;
|
|
155
|
+
setItem(key: string, value: string): void;
|
|
156
|
+
}
|
|
157
|
+
export declare function buildTypographyValidationPlan(input: TypographyValidationInput): TypographyValidationPlan;
|
|
158
|
+
export declare function typographyVerificationContexts(plan: TypographyValidationPlan): TypographyVerificationContext[];
|
|
159
|
+
export declare function typographyValidationEvidence(plan: TypographyValidationPlan): string[];
|
|
160
|
+
export declare function parseTypographyVerificationContexts(evidence: string[] | undefined): TypographyVerificationContext[];
|
|
161
|
+
export declare function parseFontIntegrationPlan(evidence: string[] | undefined): FontIntegrationPlan | undefined;
|
|
162
|
+
export declare function createProjectTypographyStyle(input: {
|
|
163
|
+
name: string;
|
|
164
|
+
values: ProjectTypographyStyleValues;
|
|
165
|
+
validation: TypographyValidationPlan;
|
|
166
|
+
now?: string;
|
|
167
|
+
}): ProjectTypographyStyle;
|
|
168
|
+
export declare function projectTypographyStylesKey(projectRoot: string): string;
|
|
169
|
+
export declare function readProjectTypographyStyles(storage: TypographyStyleStorage, projectRoot: string): ProjectTypographyStyle[];
|
|
170
|
+
export declare function writeProjectTypographyStyles(storage: TypographyStyleStorage, projectRoot: string, styles: ProjectTypographyStyle[]): void;
|
|
171
|
+
export declare const typeTreatments: TypeTreatment[];
|
|
172
|
+
export declare function modularTypeSize(base: number, ratio: number, step: number): number;
|
|
173
|
+
export declare function fluidTypeClamp(minSize: number, maxSize: number, minViewport?: number, maxViewport?: number): string;
|
|
174
|
+
export type FontInstallStrategy = 'framework' | 'package' | 'stylesheet' | 'self-hosted';
|
|
175
|
+
export declare const fontInstallStrategies: Array<{
|
|
176
|
+
id: FontInstallStrategy;
|
|
177
|
+
label: string;
|
|
178
|
+
detail: string;
|
|
179
|
+
}>;
|
|
180
|
+
export declare function buildFontIntegrationPlan(selection: GoogleFontSelection, strategy: FontInstallStrategy, currentStack?: string): FontIntegrationPlan;
|
|
181
|
+
export declare function typographyPropertyMatches(property: string, rendered: unknown, expected: unknown): boolean;
|
|
182
|
+
export declare function analyzeTypography(input: TypographyDiagnosticInput): TypographyAnalysis;
|
|
183
|
+
export declare function normalizeFontFamily(value: string): string;
|
|
184
|
+
export declare function parseFontFamilyStack(value: string): string[];
|
|
185
|
+
export declare function fontFamilyDeclaration(family: string, currentStack?: string): string;
|
|
186
|
+
export declare function googleFontWeights(font: GoogleFontFamily): number[];
|
|
187
|
+
export declare function googleFontStyles(font: GoogleFontFamily): Array<'normal' | 'italic'>;
|
|
188
|
+
export declare function defaultGoogleFontSelection(font: GoogleFontFamily, currentWeight?: number, currentStyle?: string): GoogleFontSelection;
|
|
189
|
+
export declare function googleFontVariationSettings(selection: GoogleFontSelection): string;
|
|
190
|
+
export declare function googleFontsCssUrl(font: GoogleFontFamily, options?: GoogleFontsCssOptions): string;
|
|
191
|
+
export declare function mergeTypographyFonts(fonts: TypographyFontFace[]): TypographyFontFace[];
|
|
192
|
+
export declare function localFontRecords(records: LocalFontRecord[]): TypographyFontFace[];
|
|
193
|
+
export declare function collectProjectFonts(document: Document, selected?: HTMLElement | null, elementLimit?: number): TypographyFontFace[];
|
|
194
|
+
export {};
|
|
195
|
+
//# sourceMappingURL=typography.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typography.d.ts","sourceRoot":"","sources":["../src/typography.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const FOUNDRY_UI_GRID = 4;
|
|
2
|
+
export declare const FOUNDRY_UI_ICON_SIZES: readonly [12, 16, 20];
|
|
3
|
+
export declare const FOUNDRY_UI_CONTROL_SIZES: readonly [32, 36, 40, 44, 48];
|
|
4
|
+
export declare const FOUNDRY_UI_RADII: readonly [0, 4, 8, 12, 16, 20, 24, 32];
|
|
5
|
+
export declare const FOUNDRY_UI_TYPE_SIZES: readonly [12, 16, 20, 24, 28, 32, 40, 48, 64, 68, 76];
|
|
6
|
+
export declare const FOUNDRY_UI_FOUNDATION_CSS = "\n :host {\n --fdc-font-sans:\"Foundry Inter\",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif;\n --fdc-font-mono:\"Foundry JetBrains Mono\",\"JetBrains Mono\",ui-monospace,SFMono-Regular,Consolas,monospace;\n --fdc-canvas-accent:#2f6fed;\n --fdc-positive:#138a63;\n --fdc-warning:#b7791f;\n --fdc-negative:#cf3f4f;\n --fdc-space-1:4px;\n --fdc-space-2:8px;\n --fdc-space-3:12px;\n --fdc-space-4:16px;\n --fdc-space-5:20px;\n --fdc-space-6:24px;\n --fdc-space-7:28px;\n --fdc-space-8:32px;\n --fdc-radius-xs:4px;\n --fdc-radius-sm:8px;\n --fdc-radius-md:12px;\n --fdc-radius-lg:16px;\n --fdc-control-sm:32px;\n --fdc-control-md:36px;\n --fdc-control-lg:40px;\n --fdc-icon-sm:12px;\n --fdc-icon-md:16px;\n --fdc-icon-lg:20px;\n --fdc-type-caption:12px;\n --fdc-type-body:16px;\n --fdc-type-heading:20px;\n }\n";
|
|
7
|
+
export declare function nearestFoundryGridValue(value: number): number;
|
|
8
|
+
//# sourceMappingURL=ui-foundations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-foundations.d.ts","sourceRoot":"","sources":["../src/ui-foundations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,IAAI,CAAC;AAEjC,eAAO,MAAM,qBAAqB,uBAAwB,CAAC;AAC3D,eAAO,MAAM,wBAAwB,+BAAgC,CAAC;AACtE,eAAO,MAAM,gBAAgB,wCAAyC,CAAC;AACvE,eAAO,MAAM,qBAAqB,uDAAwD,CAAC;AAE3F,eAAO,MAAM,yBAAyB,65BA8BrC,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAS7D"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { DesignRecipe, RecipeValue } from './design-memory.js';
|
|
2
|
+
export type RecipeCompatibility = 'exact' | 'compatible' | 'partial' | 'incompatible';
|
|
3
|
+
export interface RecipeControl {
|
|
4
|
+
property: string;
|
|
5
|
+
value: string | number;
|
|
6
|
+
category: string;
|
|
7
|
+
unit?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface RecipeToken {
|
|
10
|
+
id: string;
|
|
11
|
+
name: string;
|
|
12
|
+
value: string;
|
|
13
|
+
category: string;
|
|
14
|
+
cssVariable?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface RecipeMapping {
|
|
17
|
+
property: string;
|
|
18
|
+
category: string;
|
|
19
|
+
sourceValue: string | number;
|
|
20
|
+
currentValue?: string | number;
|
|
21
|
+
resolvedValue?: string | number;
|
|
22
|
+
token?: {
|
|
23
|
+
id: string;
|
|
24
|
+
name: string;
|
|
25
|
+
value: string;
|
|
26
|
+
};
|
|
27
|
+
status: 'mapped' | 'ambiguous' | 'unsupported';
|
|
28
|
+
detail: string;
|
|
29
|
+
}
|
|
30
|
+
export interface RecipeAssessment {
|
|
31
|
+
compatibility: RecipeCompatibility;
|
|
32
|
+
score: number;
|
|
33
|
+
matched: number;
|
|
34
|
+
total: number;
|
|
35
|
+
ambiguous: number;
|
|
36
|
+
mappings: RecipeMapping[];
|
|
37
|
+
reasons: string[];
|
|
38
|
+
}
|
|
39
|
+
export declare function resolveRecipeValue(value: RecipeValue, tokens: RecipeToken[]): Pick<RecipeMapping, 'resolvedValue' | 'token' | 'status' | 'detail'>;
|
|
40
|
+
export declare function assessRecipe(recipe: DesignRecipe, controls: RecipeControl[], tokens?: RecipeToken[], target?: {
|
|
41
|
+
component?: string | null;
|
|
42
|
+
kind?: string | null;
|
|
43
|
+
}): RecipeAssessment;
|
|
44
|
+
export declare function recipeCategories(values: RecipeValue[]): string[];
|
|
45
|
+
//# sourceMappingURL=visual-recipes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visual-recipes.d.ts","sourceRoot":"","sources":["../src/visual-recipes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,YAAY,GAAG,SAAS,GAAG,cAAc,CAAC;AAEtF,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,mBAAmB,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AA+BD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,WAAW,EAAE,GACpB,IAAI,CAAC,aAAa,EAAE,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAwBtE;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,aAAa,EAAE,EACzB,MAAM,GAAE,WAAW,EAAO,EAC1B,MAAM,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC/D,gBAAgB,CAoDlB;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,EAAE,CAEhE"}
|