@master/css-schema 2.0.0-rc.70
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 +5 -0
- package/dist/css-common.d.ts +1 -0
- package/dist/css-common.mjs +1 -0
- package/dist/css-directives.d.ts +138 -0
- package/dist/css-directives.mjs +51 -0
- package/dist/css-syntax.d.ts +92 -0
- package/dist/css-syntax.mjs +1 -0
- package/dist/hydration-manifest.d.ts +32 -0
- package/dist/hydration-manifest.mjs +12 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.mjs +7 -0
- package/dist/manifest-json.d.ts +3 -0
- package/dist/manifest-json.mjs +62 -0
- package/dist/manifest.d.ts +210 -0
- package/dist/manifest.mjs +33 -0
- package/dist/native-css-shorthand.d.ts +3 -0
- package/dist/native-css-shorthand.mjs +85 -0
- package/dist/runtime-style.d.ts +1 -0
- package/dist/runtime-style.mjs +3 -0
- package/dist/utility-type.d.ts +19 -0
- package/dist/utility-type.mjs +16 -0
- package/package.json +1 -0
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type Vendors = 'webkit' | 'moz' | 'ms' | 'o';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import type { MasterCSSManifestDefaultMode, MasterCSSManifestUtilityKind, MasterCSSManifestModeTrigger, MasterCSSManifestUtilityLayerName, MasterCSSManifestVariant } from './manifest.js';
|
|
2
|
+
export type CSSDirectiveVariableValue = number | string | false | (number | string)[];
|
|
3
|
+
export type CSSDirectiveDeclarations = Record<string, string>;
|
|
4
|
+
export type CSSDirectiveLayerName = MasterCSSManifestUtilityLayerName;
|
|
5
|
+
export type CSSDirectiveModeTrigger = MasterCSSManifestModeTrigger;
|
|
6
|
+
export type CSSDirectiveDefaultMode = MasterCSSManifestDefaultMode;
|
|
7
|
+
export type CSSDirectiveVariantDefinitions = Pick<MasterCSSManifestVariant, 'token' | 'branches'>[];
|
|
8
|
+
export interface CSSDirectiveSourceRange {
|
|
9
|
+
start: number;
|
|
10
|
+
end: number;
|
|
11
|
+
}
|
|
12
|
+
export interface CSSDirectiveSourceLocation {
|
|
13
|
+
line: number;
|
|
14
|
+
column: number;
|
|
15
|
+
}
|
|
16
|
+
export interface CSSDirectiveSourceReference {
|
|
17
|
+
file?: string;
|
|
18
|
+
range: CSSDirectiveSourceRange;
|
|
19
|
+
loc?: {
|
|
20
|
+
start: CSSDirectiveSourceLocation;
|
|
21
|
+
end: CSSDirectiveSourceLocation;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export interface CSSDirectiveRelatedInformation {
|
|
25
|
+
message: string;
|
|
26
|
+
source?: CSSDirectiveSourceReference;
|
|
27
|
+
}
|
|
28
|
+
export declare class CSSDirectiveError extends Error {
|
|
29
|
+
code: string;
|
|
30
|
+
source?: CSSDirectiveSourceReference;
|
|
31
|
+
related?: CSSDirectiveRelatedInformation[];
|
|
32
|
+
constructor(code: string, message: string, source?: CSSDirectiveSourceReference, related?: CSSDirectiveRelatedInformation[]);
|
|
33
|
+
}
|
|
34
|
+
export declare function createCSSDirectiveSourceReference(file: string | undefined, range: CSSDirectiveSourceRange, source?: string): CSSDirectiveSourceReference;
|
|
35
|
+
export interface CSSDirectiveVariableDefinition {
|
|
36
|
+
name?: string;
|
|
37
|
+
value: CSSDirectiveVariableValue;
|
|
38
|
+
mode?: string;
|
|
39
|
+
inline?: boolean;
|
|
40
|
+
static?: boolean;
|
|
41
|
+
namespace?: string;
|
|
42
|
+
key?: string;
|
|
43
|
+
}
|
|
44
|
+
export type CSSDirectiveAnimationDefinitions = Record<string, Record<string, CSSDirectiveDeclarations>>;
|
|
45
|
+
export type CSSDirectiveAnimationOptions = Record<string, {
|
|
46
|
+
static?: boolean;
|
|
47
|
+
}>;
|
|
48
|
+
export interface CSSDirectiveUtilityRuleDefinition {
|
|
49
|
+
declarations: CSSDirectiveDeclarations;
|
|
50
|
+
atRules?: string[];
|
|
51
|
+
selector?: string;
|
|
52
|
+
}
|
|
53
|
+
export interface CSSDirectiveUtilityPatternDefinition {
|
|
54
|
+
prefix: string;
|
|
55
|
+
values: string[];
|
|
56
|
+
}
|
|
57
|
+
export interface CSSDirectiveUtilityDynamicDefinition {
|
|
58
|
+
key: string;
|
|
59
|
+
variableAliasRefs?: string[];
|
|
60
|
+
kind?: MasterCSSManifestUtilityKind;
|
|
61
|
+
values?: string[];
|
|
62
|
+
arbitrary?: boolean;
|
|
63
|
+
}
|
|
64
|
+
export interface CSSDirectiveUtilityDefinition {
|
|
65
|
+
name: string;
|
|
66
|
+
type?: 'static' | 'pattern' | 'dynamic';
|
|
67
|
+
layer?: CSSDirectiveLayerName;
|
|
68
|
+
pattern?: CSSDirectiveUtilityPatternDefinition;
|
|
69
|
+
dynamic?: CSSDirectiveUtilityDynamicDefinition;
|
|
70
|
+
declarations?: CSSDirectiveDeclarations;
|
|
71
|
+
atRules?: string[];
|
|
72
|
+
rules?: CSSDirectiveUtilityRuleDefinition[];
|
|
73
|
+
}
|
|
74
|
+
export interface CSSDirectiveManifestInput {
|
|
75
|
+
variants?: CSSDirectiveVariantDefinitions;
|
|
76
|
+
variables?: CSSDirectiveVariableDefinition[];
|
|
77
|
+
utilities?: CSSDirectiveUtilityDefinition[];
|
|
78
|
+
rootSize?: number;
|
|
79
|
+
baseUnit?: number;
|
|
80
|
+
defaultMode?: CSSDirectiveDefaultMode;
|
|
81
|
+
scope?: string;
|
|
82
|
+
important?: boolean;
|
|
83
|
+
animations?: CSSDirectiveAnimationDefinitions;
|
|
84
|
+
animationOptions?: CSSDirectiveAnimationOptions;
|
|
85
|
+
modes?: string[];
|
|
86
|
+
modeTrigger?: CSSDirectiveModeTrigger;
|
|
87
|
+
}
|
|
88
|
+
export interface CSSDirectiveExtractionPolicy {
|
|
89
|
+
include: string[];
|
|
90
|
+
exclude: string[];
|
|
91
|
+
safelist: string[];
|
|
92
|
+
blocklist: (string | RegExp)[];
|
|
93
|
+
preserveNative: boolean;
|
|
94
|
+
}
|
|
95
|
+
export interface CSSDirectiveReference {
|
|
96
|
+
source: string;
|
|
97
|
+
file?: string;
|
|
98
|
+
}
|
|
99
|
+
export interface CSSDirectiveStyleComposeDefinition {
|
|
100
|
+
type: 'compose';
|
|
101
|
+
order: number;
|
|
102
|
+
className: string;
|
|
103
|
+
selector: string;
|
|
104
|
+
source?: CSSDirectiveSourceReference;
|
|
105
|
+
directiveSource?: CSSDirectiveSourceReference;
|
|
106
|
+
selectorSource?: CSSDirectiveSourceReference;
|
|
107
|
+
atRules?: string[];
|
|
108
|
+
layer?: CSSDirectiveLayerName;
|
|
109
|
+
name?: string;
|
|
110
|
+
}
|
|
111
|
+
export interface CSSDirectiveStyleNativeDefinition {
|
|
112
|
+
type: 'native';
|
|
113
|
+
order: number;
|
|
114
|
+
selector: string;
|
|
115
|
+
declarations: CSSDirectiveDeclarations;
|
|
116
|
+
source?: CSSDirectiveSourceReference;
|
|
117
|
+
selectorSource?: CSSDirectiveSourceReference;
|
|
118
|
+
atRules?: string[];
|
|
119
|
+
layer?: CSSDirectiveLayerName;
|
|
120
|
+
name?: string;
|
|
121
|
+
}
|
|
122
|
+
export type CSSDirectiveStyleDefinition = CSSDirectiveStyleComposeDefinition | CSSDirectiveStyleNativeDefinition;
|
|
123
|
+
export interface CSSDirectiveResult {
|
|
124
|
+
manifestInput: CSSDirectiveManifestInput;
|
|
125
|
+
extractionPolicy: CSSDirectiveExtractionPolicy;
|
|
126
|
+
classNames: string[];
|
|
127
|
+
nativeClassNames: string[];
|
|
128
|
+
nativeCSS: string;
|
|
129
|
+
css: string;
|
|
130
|
+
generatedCSS: string;
|
|
131
|
+
warnings: string[];
|
|
132
|
+
dependencies: string[];
|
|
133
|
+
references?: CSSDirectiveReference[];
|
|
134
|
+
styleDefinitions?: CSSDirectiveStyleDefinition[];
|
|
135
|
+
}
|
|
136
|
+
export declare const CSS_DIRECTIVE_VARIANT_REFERENCE_PREFIX = "__master_variant__:";
|
|
137
|
+
export declare function createCSSDirectiveVariantReference(token: string): string;
|
|
138
|
+
export declare function readCSSDirectiveVariantReference(atRule: string): string | undefined;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
class CSSDirectiveError extends Error {
|
|
2
|
+
code;
|
|
3
|
+
source;
|
|
4
|
+
related;
|
|
5
|
+
constructor(code, message, source, related){
|
|
6
|
+
super(message);
|
|
7
|
+
this.name = 'CSSDirectiveError';
|
|
8
|
+
this.code = code;
|
|
9
|
+
this.source = source;
|
|
10
|
+
this.related = related;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
function offsetToLocation(source, offset) {
|
|
14
|
+
let line = 1;
|
|
15
|
+
let column = 1;
|
|
16
|
+
for(let index = 0; index < offset && index < source.length; index++){
|
|
17
|
+
if (source[index] === '\n') {
|
|
18
|
+
line++;
|
|
19
|
+
column = 1;
|
|
20
|
+
} else {
|
|
21
|
+
column++;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return {
|
|
25
|
+
line,
|
|
26
|
+
column
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
function createCSSDirectiveSourceReference(file, range, source) {
|
|
30
|
+
return {
|
|
31
|
+
...file ? {
|
|
32
|
+
file
|
|
33
|
+
} : {},
|
|
34
|
+
range,
|
|
35
|
+
...source ? {
|
|
36
|
+
loc: {
|
|
37
|
+
start: offsetToLocation(source, range.start),
|
|
38
|
+
end: offsetToLocation(source, range.end)
|
|
39
|
+
}
|
|
40
|
+
} : {}
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
const CSS_DIRECTIVE_VARIANT_REFERENCE_PREFIX = '__master_variant__:';
|
|
44
|
+
function createCSSDirectiveVariantReference(token) {
|
|
45
|
+
return CSS_DIRECTIVE_VARIANT_REFERENCE_PREFIX + token;
|
|
46
|
+
}
|
|
47
|
+
function readCSSDirectiveVariantReference(atRule) {
|
|
48
|
+
return atRule.startsWith(CSS_DIRECTIVE_VARIANT_REFERENCE_PREFIX) ? atRule.slice(CSS_DIRECTIVE_VARIANT_REFERENCE_PREFIX.length) : undefined;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export { CSSDirectiveError, CSS_DIRECTIVE_VARIANT_REFERENCE_PREFIX, createCSSDirectiveSourceReference, createCSSDirectiveVariantReference, readCSSDirectiveVariantReference };
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import type { MasterCSSManifestUtility, MasterCSSManifestUtilityLayerName, MasterCSSManifestVariableNumericValue } from './manifest.js';
|
|
2
|
+
export type ValueComponent = StringValueComponent | NumberValueComponent | FunctionValueComponent | VariableValueComponent | SeparatorValueComponent;
|
|
3
|
+
export interface StringValueComponent {
|
|
4
|
+
text?: string;
|
|
5
|
+
token: string;
|
|
6
|
+
type: 'string';
|
|
7
|
+
value: string;
|
|
8
|
+
}
|
|
9
|
+
export interface NumberValueComponent {
|
|
10
|
+
text?: string;
|
|
11
|
+
token: string;
|
|
12
|
+
type: 'number';
|
|
13
|
+
value: number;
|
|
14
|
+
unit?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface FunctionValueComponent {
|
|
17
|
+
text?: string;
|
|
18
|
+
token: string;
|
|
19
|
+
type: 'function';
|
|
20
|
+
name: string;
|
|
21
|
+
symbol: string;
|
|
22
|
+
children: ValueComponent[];
|
|
23
|
+
bypassTransform?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface VariableValueComponent {
|
|
26
|
+
text?: string;
|
|
27
|
+
token: string;
|
|
28
|
+
type: 'variable';
|
|
29
|
+
name: string;
|
|
30
|
+
alpha?: number;
|
|
31
|
+
fallback?: string;
|
|
32
|
+
negative?: boolean;
|
|
33
|
+
variable?: Variable;
|
|
34
|
+
}
|
|
35
|
+
export interface SeparatorValueComponent {
|
|
36
|
+
text?: string;
|
|
37
|
+
token: string;
|
|
38
|
+
type: 'separator';
|
|
39
|
+
value: string;
|
|
40
|
+
}
|
|
41
|
+
export interface DefinedUtility {
|
|
42
|
+
id: string;
|
|
43
|
+
key?: string;
|
|
44
|
+
keys: string[];
|
|
45
|
+
matchers: {
|
|
46
|
+
key?: RegExp;
|
|
47
|
+
variable?: RegExp;
|
|
48
|
+
value?: RegExp;
|
|
49
|
+
arbitrary?: RegExp;
|
|
50
|
+
};
|
|
51
|
+
variables?: Map<string, Variable>;
|
|
52
|
+
order: number;
|
|
53
|
+
definition: MasterCSSManifestUtility;
|
|
54
|
+
}
|
|
55
|
+
export type ExplicitUtilityLayerName = MasterCSSManifestUtilityLayerName;
|
|
56
|
+
export interface MediaFeatureComponent {
|
|
57
|
+
type: string;
|
|
58
|
+
tokenType?: string;
|
|
59
|
+
operator?: string;
|
|
60
|
+
value: number;
|
|
61
|
+
unit: string;
|
|
62
|
+
}
|
|
63
|
+
export interface MediaQuery {
|
|
64
|
+
token: string;
|
|
65
|
+
features: Record<string, MediaFeatureComponent>;
|
|
66
|
+
type?: string;
|
|
67
|
+
}
|
|
68
|
+
interface VariableCommon {
|
|
69
|
+
namespace?: string;
|
|
70
|
+
name: string;
|
|
71
|
+
key: string;
|
|
72
|
+
inline?: boolean;
|
|
73
|
+
static?: boolean;
|
|
74
|
+
modes?: Record<string, ResolvedVariableValue>;
|
|
75
|
+
dependencies?: Set<string>;
|
|
76
|
+
}
|
|
77
|
+
export interface StringVariable {
|
|
78
|
+
type: 'string';
|
|
79
|
+
value: string | number;
|
|
80
|
+
}
|
|
81
|
+
export interface NumberVariable {
|
|
82
|
+
type: 'number';
|
|
83
|
+
value: number | string;
|
|
84
|
+
numeric?: MasterCSSManifestVariableNumericValue;
|
|
85
|
+
}
|
|
86
|
+
export type ResolvedVariableValue = StringVariable | NumberVariable;
|
|
87
|
+
export type Variable = VariableCommon & {
|
|
88
|
+
type: ResolvedVariableValue['type'];
|
|
89
|
+
value?: ResolvedVariableValue['value'];
|
|
90
|
+
numeric?: MasterCSSManifestVariableNumericValue;
|
|
91
|
+
};
|
|
92
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { MasterCSSManifestUtilityLayerName } from './manifest.js';
|
|
2
|
+
import type { UtilityType } from './utility-type.js';
|
|
3
|
+
export declare const MASTER_CSS_HYDRATION_MANIFEST_SCRIPT_ID = "master-css-hydration-manifest";
|
|
4
|
+
export declare const MASTER_CSS_HYDRATION_MANIFEST_ATTR = "data-master-css-hydration-manifest";
|
|
5
|
+
export declare const MASTER_CSS_HYDRATION_MANIFEST_ASSET_BASE = "/_master-css/hydration/";
|
|
6
|
+
export declare const MASTER_CSS_HYDRATION_MANIFEST_FILE_BASENAME = "master-css-hydration";
|
|
7
|
+
export interface MasterCSSRulePriorityIR {
|
|
8
|
+
features?: [string, number, number][];
|
|
9
|
+
selector: number;
|
|
10
|
+
}
|
|
11
|
+
export interface MasterCSSGeneratedRuleNodeIR {
|
|
12
|
+
text: string;
|
|
13
|
+
}
|
|
14
|
+
export interface MasterCSSGeneratedRuleIR {
|
|
15
|
+
className: string;
|
|
16
|
+
key: string;
|
|
17
|
+
layer: MasterCSSManifestUtilityLayerName;
|
|
18
|
+
type: UtilityType;
|
|
19
|
+
sortTier: number;
|
|
20
|
+
priority: MasterCSSRulePriorityIR;
|
|
21
|
+
text: string;
|
|
22
|
+
nodes?: MasterCSSGeneratedRuleNodeIR[];
|
|
23
|
+
selectorText?: string;
|
|
24
|
+
variableNames?: string[];
|
|
25
|
+
animationNames?: string[];
|
|
26
|
+
}
|
|
27
|
+
export interface MasterCSSHydrationManifest {
|
|
28
|
+
version: 1;
|
|
29
|
+
rules: MasterCSSGeneratedRuleIR[];
|
|
30
|
+
}
|
|
31
|
+
export declare function serializeMasterCSSHydrationManifest(hydrationManifest: MasterCSSHydrationManifest): string;
|
|
32
|
+
export declare function createMasterCSSHydrationManifestScript(hydrationManifest: MasterCSSHydrationManifest): string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
const MASTER_CSS_HYDRATION_MANIFEST_SCRIPT_ID = 'master-css-hydration-manifest';
|
|
2
|
+
const MASTER_CSS_HYDRATION_MANIFEST_ATTR = 'data-master-css-hydration-manifest';
|
|
3
|
+
const MASTER_CSS_HYDRATION_MANIFEST_ASSET_BASE = '/_master-css/hydration/';
|
|
4
|
+
const MASTER_CSS_HYDRATION_MANIFEST_FILE_BASENAME = 'master-css-hydration';
|
|
5
|
+
function serializeMasterCSSHydrationManifest(hydrationManifest) {
|
|
6
|
+
return JSON.stringify(hydrationManifest).replace(/</g, '\\u003c');
|
|
7
|
+
}
|
|
8
|
+
function createMasterCSSHydrationManifestScript(hydrationManifest) {
|
|
9
|
+
return `<script type="application/json" id="${MASTER_CSS_HYDRATION_MANIFEST_SCRIPT_ID}">${serializeMasterCSSHydrationManifest(hydrationManifest)}</script>`;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export { MASTER_CSS_HYDRATION_MANIFEST_ASSET_BASE, MASTER_CSS_HYDRATION_MANIFEST_ATTR, MASTER_CSS_HYDRATION_MANIFEST_FILE_BASENAME, MASTER_CSS_HYDRATION_MANIFEST_SCRIPT_ID, createMasterCSSHydrationManifestScript, serializeMasterCSSHydrationManifest };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './manifest';
|
|
2
|
+
export * from './manifest-json';
|
|
3
|
+
export * from './hydration-manifest';
|
|
4
|
+
export * from './css-directives';
|
|
5
|
+
export * from './css-syntax';
|
|
6
|
+
export * from './utility-type';
|
|
7
|
+
export * from './runtime-style';
|
|
8
|
+
export * from './native-css-shorthand';
|
|
9
|
+
export * from './css-common';
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { flattenMasterCSSManifestVariables, getMasterCSSManifestVariableName, groupMasterCSSManifestVariables } from './manifest.mjs';
|
|
2
|
+
export { normalizeMasterCSSManifestForJSON, stringifyMasterCSSManifestJSON } from './manifest-json.mjs';
|
|
3
|
+
export { MASTER_CSS_HYDRATION_MANIFEST_ASSET_BASE, MASTER_CSS_HYDRATION_MANIFEST_ATTR, MASTER_CSS_HYDRATION_MANIFEST_FILE_BASENAME, MASTER_CSS_HYDRATION_MANIFEST_SCRIPT_ID, createMasterCSSHydrationManifestScript, serializeMasterCSSHydrationManifest } from './hydration-manifest.mjs';
|
|
4
|
+
export { CSSDirectiveError, CSS_DIRECTIVE_VARIANT_REFERENCE_PREFIX, createCSSDirectiveSourceReference, createCSSDirectiveVariantReference, readCSSDirectiveVariantReference } from './css-directives.mjs';
|
|
5
|
+
export { UtilityType } from './utility-type.mjs';
|
|
6
|
+
export { MASTER_CSS_RUNTIME_STYLE_ID } from './runtime-style.mjs';
|
|
7
|
+
export { isNativeCSSShorthandProperty } from './native-css-shorthand.mjs';
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
function getVariableName(namespace, variable) {
|
|
2
|
+
return variable.name || (namespace ? `${namespace}${variable.key ? '-' + variable.key : ''}` : variable.key);
|
|
3
|
+
}
|
|
4
|
+
function normalizeTemplateDeclarations(declarations) {
|
|
5
|
+
const normalized = {};
|
|
6
|
+
for(const propertyName in declarations){
|
|
7
|
+
const value = declarations[propertyName];
|
|
8
|
+
normalized[propertyName] = Array.isArray(value) ? value.map((part)=>part === undefined ? null : part) : value === undefined ? null : value;
|
|
9
|
+
}
|
|
10
|
+
return normalized;
|
|
11
|
+
}
|
|
12
|
+
function normalizeVariablesForJSON(variables) {
|
|
13
|
+
if (!variables) return;
|
|
14
|
+
const normalized = {};
|
|
15
|
+
for (const [namespace, definitions] of Object.entries(variables)){
|
|
16
|
+
const nextDefinitions = definitions.map((definition)=>{
|
|
17
|
+
const normalizedDefinition = {
|
|
18
|
+
...definition
|
|
19
|
+
};
|
|
20
|
+
if (normalizedDefinition.namespace === namespace || !namespace) delete normalizedDefinition.namespace;
|
|
21
|
+
if (normalizedDefinition.name === getVariableName(namespace, normalizedDefinition)) {
|
|
22
|
+
delete normalizedDefinition.name;
|
|
23
|
+
}
|
|
24
|
+
if (normalizedDefinition.type === 'string') delete normalizedDefinition.type;
|
|
25
|
+
return normalizedDefinition;
|
|
26
|
+
});
|
|
27
|
+
if (nextDefinitions.length) normalized[namespace] = nextDefinitions;
|
|
28
|
+
}
|
|
29
|
+
return Object.keys(normalized).length ? normalized : undefined;
|
|
30
|
+
}
|
|
31
|
+
function normalizeUtilityForJSON(utility) {
|
|
32
|
+
const normalized = {
|
|
33
|
+
...utility
|
|
34
|
+
};
|
|
35
|
+
if (normalized.name === normalized.id) delete normalized.name;
|
|
36
|
+
if (normalized.layer === 'utilities') delete normalized.layer;
|
|
37
|
+
delete normalized.order;
|
|
38
|
+
if (normalized.emit.type !== 'template') return normalized;
|
|
39
|
+
return {
|
|
40
|
+
...normalized,
|
|
41
|
+
emit: {
|
|
42
|
+
...normalized.emit,
|
|
43
|
+
declarations: normalizeTemplateDeclarations(normalized.emit.declarations)
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function normalizeMasterCSSManifestForJSON(manifest) {
|
|
48
|
+
return {
|
|
49
|
+
...manifest,
|
|
50
|
+
...manifest.variables ? {
|
|
51
|
+
variables: normalizeVariablesForJSON(manifest.variables)
|
|
52
|
+
} : {},
|
|
53
|
+
...manifest.utilities?.length ? {
|
|
54
|
+
utilities: manifest.utilities.map(normalizeUtilityForJSON)
|
|
55
|
+
} : {}
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
function stringifyMasterCSSManifestJSON(manifest) {
|
|
59
|
+
return JSON.stringify(normalizeMasterCSSManifestForJSON(manifest));
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export { normalizeMasterCSSManifestForJSON, stringifyMasterCSSManifestJSON };
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import type { PropertiesHyphen } from 'csstype';
|
|
2
|
+
import type { UtilityType } from './utility-type.js';
|
|
3
|
+
export type MasterCSSManifestAtIdentifier = 'container' | 'starting-style' | 'supports' | 'media' | 'layer';
|
|
4
|
+
export type MasterCSSManifestUtilityLayerName = 'base' | 'defaults' | 'components' | 'utilities';
|
|
5
|
+
export type MasterCSSManifestDefaultMode = 'light' | 'dark' | 'none' | string;
|
|
6
|
+
export type MasterCSSManifestModeTrigger = 'class' | 'media' | 'host';
|
|
7
|
+
export type MasterCSSManifestVariantToken = `:${string}` | `::${string}` | `@${string}`;
|
|
8
|
+
export type MasterCSSManifestUtilityKind = 'number' | 'color' | 'image';
|
|
9
|
+
/** Defaults to single for variable/value matchers; multiple is an explicit opt-in. */
|
|
10
|
+
export type MasterCSSManifestUtilityMatcherValueSegments = 'single' | 'multiple';
|
|
11
|
+
export type MasterCSSManifestCSSDeclarationPrimitive = string | number | null;
|
|
12
|
+
export type MasterCSSManifestCSSDeclarations = PropertiesHyphen | Record<string, MasterCSSManifestCSSDeclarationPrimitive | MasterCSSManifestCSSDeclarationPrimitive[]>;
|
|
13
|
+
export type MasterCSSManifestVariableValue = number | string | false | (number | string)[];
|
|
14
|
+
export type MasterCSSManifestVariableType = 'number' | 'string';
|
|
15
|
+
export interface MasterCSSManifestVariableNumericValue {
|
|
16
|
+
value: number;
|
|
17
|
+
unit?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface MasterCSSManifestAtRuleBooleanNode {
|
|
20
|
+
raw?: string;
|
|
21
|
+
name: string;
|
|
22
|
+
type: 'boolean';
|
|
23
|
+
}
|
|
24
|
+
export interface MasterCSSManifestAtRuleNumberNode {
|
|
25
|
+
raw?: string;
|
|
26
|
+
name?: string;
|
|
27
|
+
type: 'number';
|
|
28
|
+
value: number;
|
|
29
|
+
unit?: string;
|
|
30
|
+
operator?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface MasterCSSManifestAtRuleStringNode {
|
|
33
|
+
raw?: string;
|
|
34
|
+
name?: string;
|
|
35
|
+
type: 'string';
|
|
36
|
+
value: string;
|
|
37
|
+
}
|
|
38
|
+
export type MasterCSSManifestAtRuleValueNode = MasterCSSManifestAtRuleNumberNode | MasterCSSManifestAtRuleStringNode;
|
|
39
|
+
export interface MasterCSSManifestAtRuleComparisonOperatorNode {
|
|
40
|
+
type: 'comparison';
|
|
41
|
+
raw?: string;
|
|
42
|
+
value: string;
|
|
43
|
+
}
|
|
44
|
+
export interface MasterCSSManifestAtRuleLogicalOperatorNode {
|
|
45
|
+
type: 'logical';
|
|
46
|
+
raw?: string;
|
|
47
|
+
value: string;
|
|
48
|
+
}
|
|
49
|
+
export type MasterCSSManifestAtRuleOperatorNode = MasterCSSManifestAtRuleComparisonOperatorNode | MasterCSSManifestAtRuleLogicalOperatorNode;
|
|
50
|
+
export interface MasterCSSManifestAtRuleGroupNode {
|
|
51
|
+
type?: 'group';
|
|
52
|
+
raw?: string;
|
|
53
|
+
children: MasterCSSManifestAtRuleNode[];
|
|
54
|
+
}
|
|
55
|
+
export type MasterCSSManifestAtRuleNode = MasterCSSManifestAtRuleBooleanNode | MasterCSSManifestAtRuleValueNode | MasterCSSManifestAtRuleComparisonOperatorNode | MasterCSSManifestAtRuleLogicalOperatorNode | MasterCSSManifestAtRuleGroupNode;
|
|
56
|
+
export interface MasterCSSManifestAtRule {
|
|
57
|
+
id: MasterCSSManifestAtIdentifier;
|
|
58
|
+
nodes: MasterCSSManifestAtRuleNode[];
|
|
59
|
+
}
|
|
60
|
+
export type MasterCSSManifestAtRules = Record<string, MasterCSSManifestAtRule>;
|
|
61
|
+
export interface MasterCSSManifestSelectorLiteralNode {
|
|
62
|
+
type?: 'attribute' | 'pseudo-class' | 'pseudo-element' | 'class' | 'universal' | 'id';
|
|
63
|
+
raw?: string;
|
|
64
|
+
value?: string;
|
|
65
|
+
children?: MasterCSSManifestSelectorNode[];
|
|
66
|
+
}
|
|
67
|
+
export interface MasterCSSManifestSelectorSeparatorNode {
|
|
68
|
+
type: 'separator';
|
|
69
|
+
raw?: string;
|
|
70
|
+
value: string;
|
|
71
|
+
}
|
|
72
|
+
export interface MasterCSSManifestSelectorCombinatorNode {
|
|
73
|
+
type: 'combinator';
|
|
74
|
+
raw?: string;
|
|
75
|
+
value: string;
|
|
76
|
+
}
|
|
77
|
+
export type MasterCSSManifestSelectorNode = MasterCSSManifestSelectorLiteralNode | MasterCSSManifestSelectorCombinatorNode | MasterCSSManifestSelectorSeparatorNode;
|
|
78
|
+
export type MasterCSSManifestSelectors = Record<string, MasterCSSManifestSelectorNode[]>;
|
|
79
|
+
export interface MasterCSSManifestSettings {
|
|
80
|
+
rootSize?: number;
|
|
81
|
+
baseUnit?: number;
|
|
82
|
+
defaultMode?: MasterCSSManifestDefaultMode;
|
|
83
|
+
scope?: string;
|
|
84
|
+
important?: boolean;
|
|
85
|
+
modeTrigger?: MasterCSSManifestModeTrigger;
|
|
86
|
+
modes?: string[];
|
|
87
|
+
}
|
|
88
|
+
export interface MasterCSSManifestVariable {
|
|
89
|
+
name?: string;
|
|
90
|
+
key: string;
|
|
91
|
+
namespace?: string;
|
|
92
|
+
type?: MasterCSSManifestVariableType;
|
|
93
|
+
value?: MasterCSSManifestVariableValue;
|
|
94
|
+
numeric?: MasterCSSManifestVariableNumericValue;
|
|
95
|
+
modes?: Record<string, {
|
|
96
|
+
type: MasterCSSManifestVariableType;
|
|
97
|
+
value: number | string;
|
|
98
|
+
numeric?: MasterCSSManifestVariableNumericValue;
|
|
99
|
+
}>;
|
|
100
|
+
dependencies?: string[];
|
|
101
|
+
mode?: string;
|
|
102
|
+
inline?: boolean;
|
|
103
|
+
static?: boolean;
|
|
104
|
+
}
|
|
105
|
+
export type MasterCSSManifestVariables = Record<string, MasterCSSManifestVariable[]>;
|
|
106
|
+
export type MasterCSSManifestVariableEntry = MasterCSSManifestVariable & {
|
|
107
|
+
name: string;
|
|
108
|
+
namespace?: string;
|
|
109
|
+
type: MasterCSSManifestVariableType;
|
|
110
|
+
};
|
|
111
|
+
export type MasterCSSManifestKeyframes<TDeclarations = MasterCSSManifestCSSDeclarations> = Record<'from' | 'to' | string, TDeclarations>;
|
|
112
|
+
export type MasterCSSManifestAnimations<TDeclarations = MasterCSSManifestCSSDeclarations> = Record<string, MasterCSSManifestKeyframes<TDeclarations>>;
|
|
113
|
+
export type MasterCSSManifestAnimationOptions = Record<string, {
|
|
114
|
+
static?: boolean;
|
|
115
|
+
}>;
|
|
116
|
+
export interface MasterCSSManifestVariantBranch {
|
|
117
|
+
selector?: string;
|
|
118
|
+
selectorNodes?: MasterCSSManifestSelectorNode[];
|
|
119
|
+
atRules?: string[];
|
|
120
|
+
atRuleNodes?: MasterCSSManifestAtRule[];
|
|
121
|
+
layer?: MasterCSSManifestUtilityLayerName;
|
|
122
|
+
}
|
|
123
|
+
export interface MasterCSSManifestVariant {
|
|
124
|
+
token: MasterCSSManifestVariantToken;
|
|
125
|
+
branches: MasterCSSManifestVariantBranch[];
|
|
126
|
+
}
|
|
127
|
+
export type MasterCSSManifestVariants = MasterCSSManifestVariant[];
|
|
128
|
+
export type MasterCSSManifestUtilityMatcher = {
|
|
129
|
+
type: 'static';
|
|
130
|
+
name: string;
|
|
131
|
+
} | {
|
|
132
|
+
type: 'pattern';
|
|
133
|
+
prefix: string;
|
|
134
|
+
values: string[];
|
|
135
|
+
} | {
|
|
136
|
+
type: 'key';
|
|
137
|
+
keys: string[];
|
|
138
|
+
} | {
|
|
139
|
+
type: 'variable';
|
|
140
|
+
keys: string[];
|
|
141
|
+
segments?: MasterCSSManifestUtilityMatcherValueSegments;
|
|
142
|
+
} | {
|
|
143
|
+
type: 'value';
|
|
144
|
+
keys: string[];
|
|
145
|
+
segments?: MasterCSSManifestUtilityMatcherValueSegments;
|
|
146
|
+
};
|
|
147
|
+
export type MasterCSSManifestVariableAlias = [key: string, name: string];
|
|
148
|
+
export type MasterCSSManifestVariableAliasSet = MasterCSSManifestVariableAlias[];
|
|
149
|
+
export type MasterCSSManifestUtilityEmit = {
|
|
150
|
+
type: 'declarations';
|
|
151
|
+
declarations: string[];
|
|
152
|
+
} | {
|
|
153
|
+
type: 'template';
|
|
154
|
+
declarations: MasterCSSManifestCSSDeclarations;
|
|
155
|
+
} | {
|
|
156
|
+
type: 'property';
|
|
157
|
+
property: string;
|
|
158
|
+
} | {
|
|
159
|
+
type: 'static';
|
|
160
|
+
rules: MasterCSSManifestUtilityRule[];
|
|
161
|
+
};
|
|
162
|
+
export interface MasterCSSManifestUtilityRule<TDeclarations = MasterCSSManifestCSSDeclarations> {
|
|
163
|
+
declarations: TDeclarations;
|
|
164
|
+
atRules?: string[];
|
|
165
|
+
selector?: string;
|
|
166
|
+
}
|
|
167
|
+
export interface MasterCSSManifestUtility {
|
|
168
|
+
id: string;
|
|
169
|
+
name?: string;
|
|
170
|
+
type: UtilityType;
|
|
171
|
+
order?: number;
|
|
172
|
+
layer?: MasterCSSManifestUtilityLayerName;
|
|
173
|
+
key?: string;
|
|
174
|
+
subkey?: string;
|
|
175
|
+
keys?: string[];
|
|
176
|
+
aliasGroups?: string[];
|
|
177
|
+
kind?: MasterCSSManifestUtilityKind;
|
|
178
|
+
namespaces?: string[];
|
|
179
|
+
implicitNamespace?: boolean;
|
|
180
|
+
separators?: string[];
|
|
181
|
+
atRules?: string[];
|
|
182
|
+
variableAliases?: MasterCSSManifestVariableAliasSet;
|
|
183
|
+
variableAliasRefs?: string[];
|
|
184
|
+
emit: MasterCSSManifestUtilityEmit;
|
|
185
|
+
matchers: MasterCSSManifestUtilityMatcher[];
|
|
186
|
+
debug?: Record<string, unknown>;
|
|
187
|
+
}
|
|
188
|
+
export type MasterCSSManifestUtilities = MasterCSSManifestUtility[];
|
|
189
|
+
export interface MasterCSSManifest {
|
|
190
|
+
/**
|
|
191
|
+
* MasterCSSManifest IR schema/codec version.
|
|
192
|
+
* This is not a legacy Config compatibility marker; engines must reject
|
|
193
|
+
* unsupported manifest versions instead of migrating authoring APIs at runtime.
|
|
194
|
+
*/
|
|
195
|
+
version: 1;
|
|
196
|
+
settings?: MasterCSSManifestSettings;
|
|
197
|
+
variables?: MasterCSSManifestVariables;
|
|
198
|
+
animations?: MasterCSSManifestAnimations;
|
|
199
|
+
animationOptions?: MasterCSSManifestAnimationOptions;
|
|
200
|
+
variants?: MasterCSSManifestVariants;
|
|
201
|
+
atRules?: MasterCSSManifestAtRules;
|
|
202
|
+
breakpointAtRules?: MasterCSSManifestAtRules;
|
|
203
|
+
containerAtRules?: MasterCSSManifestAtRules;
|
|
204
|
+
selectors?: MasterCSSManifestSelectors;
|
|
205
|
+
utilities?: MasterCSSManifestUtilities;
|
|
206
|
+
debug?: Record<string, unknown>;
|
|
207
|
+
}
|
|
208
|
+
export declare function getMasterCSSManifestVariableName(namespace: string, variable: Pick<MasterCSSManifestVariable, 'key' | 'name'>): string;
|
|
209
|
+
export declare function flattenMasterCSSManifestVariables(variables: MasterCSSManifestVariables | undefined): MasterCSSManifestVariableEntry[];
|
|
210
|
+
export declare function groupMasterCSSManifestVariables(variables: readonly MasterCSSManifestVariable[] | undefined): MasterCSSManifestVariables | undefined;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
function getMasterCSSManifestVariableName(namespace, variable) {
|
|
2
|
+
return variable.name || (namespace ? `${namespace}${variable.key ? '-' + variable.key : ''}` : variable.key);
|
|
3
|
+
}
|
|
4
|
+
function flattenMasterCSSManifestVariables(variables) {
|
|
5
|
+
const flattened = [];
|
|
6
|
+
for (const [namespace, definitions] of Object.entries(variables || {})){
|
|
7
|
+
for (const definition of definitions){
|
|
8
|
+
const type = definition.type || (typeof definition.value === 'number' ? 'number' : 'string');
|
|
9
|
+
flattened.push({
|
|
10
|
+
...definition,
|
|
11
|
+
name: getMasterCSSManifestVariableName(namespace, definition),
|
|
12
|
+
...namespace ? {
|
|
13
|
+
namespace
|
|
14
|
+
} : {},
|
|
15
|
+
type
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return flattened;
|
|
20
|
+
}
|
|
21
|
+
function groupMasterCSSManifestVariables(variables) {
|
|
22
|
+
if (!variables?.length) return;
|
|
23
|
+
const grouped = {};
|
|
24
|
+
for (const variable of variables){
|
|
25
|
+
const namespace = variable.namespace || '';
|
|
26
|
+
const group = grouped[namespace] ||= [];
|
|
27
|
+
const { namespace: _namespace, ...definition } = variable;
|
|
28
|
+
group.push(definition);
|
|
29
|
+
}
|
|
30
|
+
return Object.keys(grouped).length ? grouped : undefined;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export { flattenMasterCSSManifestVariables, getMasterCSSManifestVariableName, groupMasterCSSManifestVariables };
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
const nativeCSSShorthandProperties = new Set([
|
|
2
|
+
'all',
|
|
3
|
+
'animation',
|
|
4
|
+
'animation-range',
|
|
5
|
+
'background',
|
|
6
|
+
'background-position',
|
|
7
|
+
'background-repeat',
|
|
8
|
+
'border',
|
|
9
|
+
'border-block',
|
|
10
|
+
'border-block-color',
|
|
11
|
+
'border-block-end',
|
|
12
|
+
'border-block-start',
|
|
13
|
+
'border-block-style',
|
|
14
|
+
'border-block-width',
|
|
15
|
+
'border-bottom',
|
|
16
|
+
'border-color',
|
|
17
|
+
'border-image',
|
|
18
|
+
'border-inline',
|
|
19
|
+
'border-inline-color',
|
|
20
|
+
'border-inline-end',
|
|
21
|
+
'border-inline-start',
|
|
22
|
+
'border-inline-style',
|
|
23
|
+
'border-inline-width',
|
|
24
|
+
'border-left',
|
|
25
|
+
'border-radius',
|
|
26
|
+
'border-right',
|
|
27
|
+
'border-style',
|
|
28
|
+
'border-top',
|
|
29
|
+
'border-width',
|
|
30
|
+
'column-rule',
|
|
31
|
+
'columns',
|
|
32
|
+
'contain-intrinsic-size',
|
|
33
|
+
'container',
|
|
34
|
+
'flex',
|
|
35
|
+
'flex-flow',
|
|
36
|
+
'font',
|
|
37
|
+
'font-synthesis',
|
|
38
|
+
'font-variant',
|
|
39
|
+
'gap',
|
|
40
|
+
'grid',
|
|
41
|
+
'grid-area',
|
|
42
|
+
'grid-column',
|
|
43
|
+
'grid-row',
|
|
44
|
+
'grid-template',
|
|
45
|
+
'inset',
|
|
46
|
+
'inset-block',
|
|
47
|
+
'inset-inline',
|
|
48
|
+
'line-clamp',
|
|
49
|
+
'list-style',
|
|
50
|
+
'margin',
|
|
51
|
+
'margin-block',
|
|
52
|
+
'margin-inline',
|
|
53
|
+
'mask',
|
|
54
|
+
'mask-border',
|
|
55
|
+
'mask-position',
|
|
56
|
+
'mask-repeat',
|
|
57
|
+
'offset',
|
|
58
|
+
'outline',
|
|
59
|
+
'overflow',
|
|
60
|
+
'overscroll-behavior',
|
|
61
|
+
'padding',
|
|
62
|
+
'padding-block',
|
|
63
|
+
'padding-inline',
|
|
64
|
+
'place-content',
|
|
65
|
+
'place-items',
|
|
66
|
+
'place-self',
|
|
67
|
+
'scroll-margin',
|
|
68
|
+
'scroll-margin-block',
|
|
69
|
+
'scroll-margin-inline',
|
|
70
|
+
'scroll-padding',
|
|
71
|
+
'scroll-padding-block',
|
|
72
|
+
'scroll-padding-inline',
|
|
73
|
+
'scroll-timeline',
|
|
74
|
+
'text-decoration',
|
|
75
|
+
'text-emphasis',
|
|
76
|
+
'text-wrap',
|
|
77
|
+
'transition',
|
|
78
|
+
'view-timeline',
|
|
79
|
+
'white-space'
|
|
80
|
+
]);
|
|
81
|
+
function isNativeCSSShorthandProperty(property) {
|
|
82
|
+
return nativeCSSShorthandProperties.has(property);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export { nativeCSSShorthandProperties as default, isNativeCSSShorthandProperty };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const MASTER_CSS_RUNTIME_STYLE_ID = "master-css";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const UtilityType: {
|
|
2
|
+
/**
|
|
3
|
+
* semantic utility classes
|
|
4
|
+
* @example block, inline
|
|
5
|
+
*/
|
|
6
|
+
readonly Semantic: -2;
|
|
7
|
+
/**
|
|
8
|
+
* shorthand
|
|
9
|
+
* @example border, padding, margin
|
|
10
|
+
*/
|
|
11
|
+
readonly Shorthand: -1;
|
|
12
|
+
/**
|
|
13
|
+
* normal
|
|
14
|
+
* @example grid-cols
|
|
15
|
+
*/
|
|
16
|
+
readonly Normal: 0;
|
|
17
|
+
};
|
|
18
|
+
export type UtilityType = typeof UtilityType[keyof typeof UtilityType];
|
|
19
|
+
export default UtilityType;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const UtilityType = {
|
|
2
|
+
/**
|
|
3
|
+
* semantic utility classes
|
|
4
|
+
* @example block, inline
|
|
5
|
+
*/ Semantic: -2,
|
|
6
|
+
/**
|
|
7
|
+
* shorthand
|
|
8
|
+
* @example border, padding, margin
|
|
9
|
+
*/ Shorthand: -1,
|
|
10
|
+
/**
|
|
11
|
+
* normal
|
|
12
|
+
* @example grid-cols
|
|
13
|
+
*/ Normal: 0
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export { UtilityType, UtilityType as default };
|
package/package.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"@master/css-schema","type":"module","scripts":{"build":"techor build \"src/**/*.ts\" --formats esm","dev":"pnpm build --watch","lint":"eslint","type-check":"tsc --noEmit","test":"vitest"},"license":"MIT","description":"Public Master CSS schema and wire-format contracts.","author":"Aoyue Design LLC.","funding":"https://rc.css.master.co/sponsor","homepage":"https://css.master.co","bugs":{"url":"https://github.com/master-co/css/issues"},"repository":{"type":"git","url":"https://github.com/master-co/css.git","directory":"packages/schema"},"keywords":["schema","manifest","css","mastercss"],"sideEffects":false,"main":"./dist/index.mjs","jsnext:main":"./dist/index.mjs","esnext":"./dist/index.mjs","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./manifest":{"types":"./dist/manifest.d.ts","import":"./dist/manifest.mjs","default":"./dist/manifest.mjs"},"./manifest-json":{"types":"./dist/manifest-json.d.ts","import":"./dist/manifest-json.mjs","default":"./dist/manifest-json.mjs"},"./hydration-manifest":{"types":"./dist/hydration-manifest.d.ts","import":"./dist/hydration-manifest.mjs","default":"./dist/hydration-manifest.mjs"},"./css-directives":{"types":"./dist/css-directives.d.ts","import":"./dist/css-directives.mjs","default":"./dist/css-directives.mjs"},"./css-syntax":{"types":"./dist/css-syntax.d.ts","import":"./dist/css-syntax.mjs","default":"./dist/css-syntax.mjs"},"./utility-type":{"types":"./dist/utility-type.d.ts","import":"./dist/utility-type.mjs","default":"./dist/utility-type.mjs"},"./runtime-style":{"types":"./dist/runtime-style.d.ts","import":"./dist/runtime-style.mjs","default":"./dist/runtime-style.mjs"},"./native-css-shorthand":{"types":"./dist/native-css-shorthand.d.ts","import":"./dist/native-css-shorthand.mjs","default":"./dist/native-css-shorthand.mjs"},"./css-common":{"types":"./dist/css-common.d.ts","import":"./dist/css-common.mjs","default":"./dist/css-common.mjs"}},"files":["dist"],"publishConfig":{"access":"public","provenance":true},"dependencies":{"csstype":"^3.2.3"},"version":"2.0.0-rc.70"}
|