zyzz 0.0.11 → 0.0.12
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/dist/variants.d.ts +13 -2
- package/dist/variants.d.ts.map +1 -1
- package/dist/variants.js.map +1 -1
- package/package.json +1 -1
- package/src/variants.ts +35 -2
package/dist/variants.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { style } from './styleFunction.js';
|
|
2
2
|
import type * as Config from './Config.js';
|
|
3
3
|
import type * as Binding from './internal/Binding.js';
|
|
4
|
+
import type * as Completion from './internal/Completion.js';
|
|
4
5
|
import type * as Condition from './internal/Condition.js';
|
|
5
6
|
import type * as Shorthands from './internal/Shorthands.js';
|
|
6
7
|
import type * as Style from './Style.js';
|
|
@@ -23,6 +24,16 @@ type Choice<choices> = ChoiceName<Omit<choices, DynamicKeys<choices>>> | {
|
|
|
23
24
|
} : never;
|
|
24
25
|
}[DynamicKeys<choices>];
|
|
25
26
|
type CheckedChoice<style, tokens extends Theme.Tokens, layers extends string, mappings extends Shorthands.Map> = style extends (values: infer values) => infer body ? (values: values) => CheckedStyles<body, tokens, layers, mappings> & Binding.Checked<body> & Binding.TokenSlots<body, values, tokens, mappings> & (string extends keyof values ? never : values extends Record<string, string | number> & Binding.Inputs<values> ? unknown : never) : CheckedStyles<style, tokens, layers, mappings>;
|
|
27
|
+
type SuggestedStyles<tokens extends Theme.Tokens> = Completion.Properties<tokens> & Readonly<Record<string, unknown>>;
|
|
28
|
+
/** Editor hints remain independent of declaration and selection validation. */
|
|
29
|
+
type Suggestions<tokens extends Theme.Tokens> = {
|
|
30
|
+
readonly base?: SuggestedStyles<tokens> | undefined;
|
|
31
|
+
readonly compoundVariants?: readonly {
|
|
32
|
+
readonly style: SuggestedStyles<tokens>;
|
|
33
|
+
readonly when: unknown;
|
|
34
|
+
}[] | undefined;
|
|
35
|
+
readonly variants?: Readonly<Record<string, Readonly<Record<string, SuggestedStyles<tokens> | ((...args: never[]) => SuggestedStyles<tokens>)>>>> | undefined;
|
|
36
|
+
};
|
|
26
37
|
type Keys<value> = value extends unknown ? keyof value : never;
|
|
27
38
|
type Selections<axes> = {
|
|
28
39
|
readonly [axis in keyof axes]?: Choice<axes[axis]> | null | undefined;
|
|
@@ -61,11 +72,11 @@ type Checked<definition, tokens extends Theme.Tokens, layers extends string, map
|
|
|
61
72
|
* @returns A callable selecting precompiled styles and returning one props object.
|
|
62
73
|
* @throws {Error} When uncompiled authoring omits an explicit identity.
|
|
63
74
|
*/
|
|
64
|
-
export declare function variants<const definition extends Record<string, unknown>>(definition: definition & NoInfer<Checked<definition, {}, never, {}
|
|
75
|
+
export declare function variants<const definition extends Record<string, unknown>>(definition: definition & NoInfer<Checked<definition, {}, never, {}>> & Suggestions<{}>, options?: style.DefinitionOptions): variants.ReturnType<definition>;
|
|
65
76
|
/** Inferred recipe authoring and selection contracts. */
|
|
66
77
|
export declare namespace variants {
|
|
67
78
|
/** Theme-bound authoring with the same inferred selection contract. */
|
|
68
|
-
type Bound<tokens extends Theme.Tokens, output extends style.Output = 'react', layers extends string = never, mappings extends Shorthands.Map = {}> = <const definition extends Record<string, unknown>>(definition: definition & NoInfer<Checked<definition, tokens, layers, mappings
|
|
79
|
+
type Bound<tokens extends Theme.Tokens, output extends style.Output = 'react', layers extends string = never, mappings extends Shorthands.Map = {}> = <const definition extends Record<string, unknown>>(definition: definition & NoInfer<Checked<definition, tokens, layers, mappings>> & Suggestions<tokens>, options?: style.DefinitionOptions) => ReturnType<definition, output>;
|
|
69
80
|
/** Callable selection; omitted values use defaults and null suppresses them. */
|
|
70
81
|
type ReturnType<definition, output extends style.Output = 'react'> = <const input extends Input<definition, output> = Input<definition, output>>(input?: input & Record<Exclude<Keys<input>, keyof Input<definition, output>>, never>) => style.Props<output> & {
|
|
71
82
|
readonly [axis in keyof Axes<definition> as `data-${axis & string}`]?: string | undefined;
|
package/dist/variants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../src/variants.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAA;AACrD,OAAO,KAAK,KAAK,SAAS,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,KAAK,UAAU,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,KAAK,KAAK,MAAM,qBAAqB,CAAA;AAEjD,KAAK,IAAI,CAAC,UAAU,IAAI,UAAU,SAAS;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAA;CAAE,GACxE,IAAI,GACJ,EAAE,CAAA;AACN,KAAK,UAAU,CAAC,UAAU,IAAI,UAAU,SAAS;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,UAAU,CAAA;CACtC,GACG,UAAU,GACV,EAAE,CAAA;AACN,KAAK,UAAU,CAAC,OAAO,IAAI,MAAM,OAAO,SAAS,MAAM,GAAG,GACtD,GAAG,SAAS,MAAM,GAAG,OAAO,GAC1B,GAAG,SAAS,MAAM,GAChB,IAAI,GACJ,KAAK,GACP,GAAG,SAAS,MAAM,GAChB,GAAG,GACH,KAAK,GACT,KAAK,CAAA;AACT,KAAK,WAAW,CAAC,OAAO,IAAI;KACzB,GAAG,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,GACtE,GAAG,GACH,KAAK;CACV,CAAC,MAAM,OAAO,CAAC,CAAA;AAChB,KAAK,MAAM,CAAC,OAAO,IACf,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,GAC/C;KACG,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAClD,MAAM,EAAE,MAAM,MAAM,KACjB,OAAO,GACR;QAAE,QAAQ,EAAE,IAAI,IAAI,GAAG,GAAG,MAAM;KAAE,GAAG;QACnC,QAAQ,EAAE,IAAI,IAAI,OAAO,CAAC,MAAM,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK;KACvD,GACD,KAAK;CACV,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;AAC3B,KAAK,aAAa,CAChB,KAAK,EACL,MAAM,SAAS,KAAK,CAAC,MAAM,EAC3B,MAAM,SAAS,MAAM,EACrB,QAAQ,SAAS,UAAU,CAAC,GAAG,IAC7B,KAAK,SAAS,CAAC,MAAM,EAAE,MAAM,MAAM,KAAK,MAAM,IAAI,GAClD,CACE,MAAM,EAAE,MAAM,KACX,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,GAChD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GACrB,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,GAClD,CAAC,MAAM,SAAS,MAAM,MAAM,GACxB,KAAK,GACL,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAC1C,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GACxB,OAAO,GACP,KAAK,CAAC,GACd,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../src/variants.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAA;AACrD,OAAO,KAAK,KAAK,UAAU,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,KAAK,SAAS,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,KAAK,UAAU,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,KAAK,KAAK,MAAM,qBAAqB,CAAA;AAEjD,KAAK,IAAI,CAAC,UAAU,IAAI,UAAU,SAAS;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAA;CAAE,GACxE,IAAI,GACJ,EAAE,CAAA;AACN,KAAK,UAAU,CAAC,UAAU,IAAI,UAAU,SAAS;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,UAAU,CAAA;CACtC,GACG,UAAU,GACV,EAAE,CAAA;AACN,KAAK,UAAU,CAAC,OAAO,IAAI,MAAM,OAAO,SAAS,MAAM,GAAG,GACtD,GAAG,SAAS,MAAM,GAAG,OAAO,GAC1B,GAAG,SAAS,MAAM,GAChB,IAAI,GACJ,KAAK,GACP,GAAG,SAAS,MAAM,GAChB,GAAG,GACH,KAAK,GACT,KAAK,CAAA;AACT,KAAK,WAAW,CAAC,OAAO,IAAI;KACzB,GAAG,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,GACtE,GAAG,GACH,KAAK;CACV,CAAC,MAAM,OAAO,CAAC,CAAA;AAChB,KAAK,MAAM,CAAC,OAAO,IACf,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,GAC/C;KACG,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAClD,MAAM,EAAE,MAAM,MAAM,KACjB,OAAO,GACR;QAAE,QAAQ,EAAE,IAAI,IAAI,GAAG,GAAG,MAAM;KAAE,GAAG;QACnC,QAAQ,EAAE,IAAI,IAAI,OAAO,CAAC,MAAM,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK;KACvD,GACD,KAAK;CACV,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;AAC3B,KAAK,aAAa,CAChB,KAAK,EACL,MAAM,SAAS,KAAK,CAAC,MAAM,EAC3B,MAAM,SAAS,MAAM,EACrB,QAAQ,SAAS,UAAU,CAAC,GAAG,IAC7B,KAAK,SAAS,CAAC,MAAM,EAAE,MAAM,MAAM,KAAK,MAAM,IAAI,GAClD,CACE,MAAM,EAAE,MAAM,KACX,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,GAChD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GACrB,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,GAClD,CAAC,MAAM,SAAS,MAAM,MAAM,GACxB,KAAK,GACL,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAC1C,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GACxB,OAAO,GACP,KAAK,CAAC,GACd,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;AAElD,KAAK,eAAe,CAAC,MAAM,SAAS,KAAK,CAAC,MAAM,IAC9C,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAEnE,+EAA+E;AAC/E,KAAK,WAAW,CAAC,MAAM,SAAS,KAAK,CAAC,MAAM,IAAI;IAC9C,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACnD,QAAQ,CAAC,gBAAgB,CAAC,EACtB,SAAS;QACP,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA;QACvC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;KACvB,EAAE,GACH,SAAS,CAAA;IACb,QAAQ,CAAC,QAAQ,CAAC,EACd,QAAQ,CACN,MAAM,CACJ,MAAM,EACN,QAAQ,CACN,MAAM,CACJ,MAAM,EACJ,eAAe,CAAC,MAAM,CAAC,GACvB,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,eAAe,CAAC,MAAM,CAAC,CAAC,CAClD,CACF,CACF,CACF,GACD,SAAS,CAAA;CACd,CAAA;AAED,KAAK,IAAI,CAAC,KAAK,IAAI,KAAK,SAAS,OAAO,GAAG,MAAM,KAAK,GAAG,KAAK,CAAA;AAC9D,KAAK,UAAU,CAAC,IAAI,IAAI;IACtB,QAAQ,EAAE,IAAI,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS;CACtE,CAAA;AACD,KAAK,KAAK,CAAC,UAAU,EAAE,MAAM,SAAS,KAAK,CAAC,MAAM,IAAI,UAAU,CAC9D,IAAI,CAAC,UAAU,CAAC,CACjB,GACC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GACrB,CAAC,MAAM,UAAU,CAAC,UAAU,CAAC,SAAS,KAAK,GACvC,EAAE,GACF;IACE,QAAQ,CAAC,UAAU,CAAC,EAChB;QACE,QAAQ,EAAE,IAAI,IAAI,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAC5C,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAC5B,SAAS;KACd,GACD,SAAS,CAAA;CACd,CAAC,CAAA;AACR,KAAK,aAAa,CAChB,KAAK,EACL,MAAM,SAAS,KAAK,CAAC,MAAM,EAC3B,MAAM,SAAS,MAAM,EACrB,QAAQ,SAAS,UAAU,CAAC,GAAG,IAE/B,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,GACvC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,SAAS,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,GACxE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,GAC9C,KAAK,CAAA;AACX,KAAK,OAAO,CACV,UAAU,EACV,MAAM,SAAS,KAAK,CAAC,MAAM,EAC3B,MAAM,SAAS,MAAM,EACrB,QAAQ,SAAS,UAAU,CAAC,GAAG,IAC7B;IACF,QAAQ,EAAE,GAAG,IAAI,MAAM,UAAU,GAAG,GAAG,SAAS,MAAM,GAClD,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,GACxD,GAAG,SAAS,UAAU,GACpB;QACE,QAAQ,EAAE,IAAI,IAAI,MAAM,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,SAC1C,MAAM,KAAK,CAAC,OAAO,GACnB,OAAO,GACP,YAAY,GACZ,KAAK,GACL,KAAK,GACL,kBAAkB,MAAM,EAAE,GAC1B,KAAK,GACL;YACE,QAAQ,EAAE,MAAM,IAAI,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,aAAa,CAC7D,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAC7B,MAAM,EACN,MAAM,EACN,QAAQ,CACT;SACF;KACN,GACD,GAAG,SAAS,YAAY,GACtB;QACE,QAAQ,EAAE,IAAI,IAAI,MAAM,UAAU,CAAC,GAAG,CAAC,GAAG,OAAO,CAC/C,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EACtB,IAAI,OAAO,GAAG,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,EAAE,CAClF;KACF,GACD,GAAG,SAAS,iBAAiB,GAC3B,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAC1B,MAAM,CACJ,OAAO,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,EACtD,KAAK,CACN,GACH,GAAG,SAAS,kBAAkB,GAC5B,SAAS;QACP,QAAQ,CAAC,IAAI,EAAE;YACb,QAAQ,EAAE,IAAI,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EACtC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,GAClC,SAAS,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE;SAClD,CAAA;QACD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KACxC,EAAE,GAAG;QACJ,QAAQ,EAAE,KAAK,IAAI,MAAM,UAAU,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS;YACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,KAAK,CAAA;YAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAA;SAC1B,GACG;YACE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAC3B,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,CACT,CAAA;YACD,QAAQ,CAAC,IAAI,EAAE,MAAM,CACnB,OAAO,CAAC,MAAM,IAAI,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,EAC3C,KAAK,CACN,CAAA;SACF,GAAG,MAAM,CACR,OAAO,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,EACvD,KAAK,CACN,GACD,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;KAC3B,GACD,KAAK;CAClB,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,CAAC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvE,UAAU,EAAE,UAAU,GACpB,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAC3C,WAAW,CAAC,EAAE,CAAC,EACjB,OAAO,GAAE,KAAK,CAAC,iBAAsB,GACpC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAKjC;AAED,yDAAyD;AACzD,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,uEAAuE;IACvE,KAAK,KAAK,CACR,MAAM,SAAS,KAAK,CAAC,MAAM,EAC3B,MAAM,SAAS,KAAK,CAAC,MAAM,GAAG,OAAO,EACrC,MAAM,SAAS,MAAM,GAAG,KAAK,EAC7B,QAAQ,SAAS,UAAU,CAAC,GAAG,GAAG,EAAE,IAClC,CAAC,KAAK,CAAC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnD,UAAU,EAAE,UAAU,GACpB,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,GACtD,WAAW,CAAC,MAAM,CAAC,EACrB,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,KAC9B,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IAEnC,gFAAgF;IAChF,KAAK,UAAU,CAAC,UAAU,EAAE,MAAM,SAAS,KAAK,CAAC,MAAM,GAAG,OAAO,IAAI,CACnE,KAAK,CAAC,KAAK,SAAS,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,EAEzE,KAAK,CAAC,EAAE,KAAK,GACX,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,KACnE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG;QACzB,QAAQ,EAAE,IAAI,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,QAAQ,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC,EACjE,MAAM,GACN,SAAS;KACd,CAAA;IAED,gDAAgD;IAChD,KAAK,SAAS,GAAG,KAAK,CAAA;CACvB;AAED,wDAAwD;AACxD,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,mDAAmD;IACnD,cAIC;IACD,qCAAqC;IAC5B,IAAI,SAAmC;CACjD"}
|
package/dist/variants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variants.js","sourceRoot":"","sources":["../src/variants.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"variants.js","sourceRoot":"","sources":["../src/variants.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAA;AAiMpD;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CACtB,UAEiB,EACjB,OAAO,GAA4B,EAAE;IAErC,OAAO,SAAS,CAAC,QAAQ,CACvB,UAAU,EACV,OAAO,CAC2B,CAAA;AACtC,CAAC;AAiCD,wDAAwD;AACxD,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,mDAAmD;IACnD;QACE,KAAK,CACH,4FAA4F,CAC7F,CAAA;IACH,CAAC;IACD,qCAAqC;IAC5B,IAAI,GAAG,gCAAgC,CAAA;CACjD"}
|
package/package.json
CHANGED
package/src/variants.ts
CHANGED
|
@@ -3,6 +3,7 @@ import * as Authoring from './internal/Authoring.js'
|
|
|
3
3
|
import type { style } from './styleFunction.js'
|
|
4
4
|
import type * as Config from './Config.js'
|
|
5
5
|
import type * as Binding from './internal/Binding.js'
|
|
6
|
+
import type * as Completion from './internal/Completion.js'
|
|
6
7
|
import type * as Condition from './internal/Condition.js'
|
|
7
8
|
import type * as Shorthands from './internal/Shorthands.js'
|
|
8
9
|
import type * as Style from './Style.js'
|
|
@@ -59,6 +60,35 @@ type CheckedChoice<
|
|
|
59
60
|
? unknown
|
|
60
61
|
: never)
|
|
61
62
|
: CheckedStyles<style, tokens, layers, mappings>
|
|
63
|
+
|
|
64
|
+
type SuggestedStyles<tokens extends Theme.Tokens> =
|
|
65
|
+
Completion.Properties<tokens> & Readonly<Record<string, unknown>>
|
|
66
|
+
|
|
67
|
+
/** Editor hints remain independent of declaration and selection validation. */
|
|
68
|
+
type Suggestions<tokens extends Theme.Tokens> = {
|
|
69
|
+
readonly base?: SuggestedStyles<tokens> | undefined
|
|
70
|
+
readonly compoundVariants?:
|
|
71
|
+
| readonly {
|
|
72
|
+
readonly style: SuggestedStyles<tokens>
|
|
73
|
+
readonly when: unknown
|
|
74
|
+
}[]
|
|
75
|
+
| undefined
|
|
76
|
+
readonly variants?:
|
|
77
|
+
| Readonly<
|
|
78
|
+
Record<
|
|
79
|
+
string,
|
|
80
|
+
Readonly<
|
|
81
|
+
Record<
|
|
82
|
+
string,
|
|
83
|
+
| SuggestedStyles<tokens>
|
|
84
|
+
| ((...args: never[]) => SuggestedStyles<tokens>)
|
|
85
|
+
>
|
|
86
|
+
>
|
|
87
|
+
>
|
|
88
|
+
>
|
|
89
|
+
| undefined
|
|
90
|
+
}
|
|
91
|
+
|
|
62
92
|
type Keys<value> = value extends unknown ? keyof value : never
|
|
63
93
|
type Selections<axes> = {
|
|
64
94
|
readonly [axis in keyof axes]?: Choice<axes[axis]> | null | undefined
|
|
@@ -169,7 +199,9 @@ type Checked<
|
|
|
169
199
|
* @throws {Error} When uncompiled authoring omits an explicit identity.
|
|
170
200
|
*/
|
|
171
201
|
export function variants<const definition extends Record<string, unknown>>(
|
|
172
|
-
definition: definition &
|
|
202
|
+
definition: definition &
|
|
203
|
+
NoInfer<Checked<definition, {}, never, {}>> &
|
|
204
|
+
Suggestions<{}>,
|
|
173
205
|
options: style.DefinitionOptions = {},
|
|
174
206
|
): variants.ReturnType<definition> {
|
|
175
207
|
return Authoring.variants(
|
|
@@ -188,7 +220,8 @@ export declare namespace variants {
|
|
|
188
220
|
mappings extends Shorthands.Map = {},
|
|
189
221
|
> = <const definition extends Record<string, unknown>>(
|
|
190
222
|
definition: definition &
|
|
191
|
-
NoInfer<Checked<definition, tokens, layers, mappings
|
|
223
|
+
NoInfer<Checked<definition, tokens, layers, mappings>> &
|
|
224
|
+
Suggestions<tokens>,
|
|
192
225
|
options?: style.DefinitionOptions,
|
|
193
226
|
) => ReturnType<definition, output>
|
|
194
227
|
|