, orderProps?: boolean): CSSObject;
propNames: (keyof Config)[];
@@ -98,7 +98,7 @@ export interface Variant {
Keys extends keyof Props,
Base extends AbstractProps,
Props extends Record,
- PropKey extends Readonly = 'variant',
+ PropKey extends Readonly = 'variant'
>(options: {
prop?: PropKey;
defaultVariant?: keyof Props;
@@ -114,13 +114,13 @@ export interface States {
}
export interface CSS
{
- (
- config: CSSProps>
- ): (props: ThemeProps) => CSSObject;
+ (config: CSSProps>): (
+ props: ThemeProps
+ ) => CSSObject;
}
export type ParserProps<
- Config extends Record,
+ Config extends Record
> = ThemeProps<{
[P in keyof Config]?: Parameters[2][Config[P]['prop']];
}>;
diff --git a/packages/core/src/legacy/createCss.ts b/packages/core/src/legacy/createCss.ts
index 0e7cdbd..0f95af7 100644
--- a/packages/core/src/legacy/createCss.ts
+++ b/packages/core/src/legacy/createCss.ts
@@ -7,7 +7,7 @@ import { create } from './create';
export function createCss<
Config extends Record,
- P extends Parser>,
+ P extends Parser>
>(config: Config): CSS {
const parser = create(config);
const filteredProps = parser.propNames as string[];
diff --git a/packages/core/src/legacy/createParser.ts b/packages/core/src/legacy/createParser.ts
index bdbd40c..37e74e0 100644
--- a/packages/core/src/legacy/createParser.ts
+++ b/packages/core/src/legacy/createParser.ts
@@ -54,7 +54,7 @@ const renderPropValue = (
};
export function createParser<
- Config extends Record,
+ Config extends Record
>(config: Config): Parser {
const propNames = orderPropNames(config);
const ctx: RenderContext = {
diff --git a/packages/core/src/legacy/createStates.ts b/packages/core/src/legacy/createStates.ts
index 715b32d..227bd63 100644
--- a/packages/core/src/legacy/createStates.ts
+++ b/packages/core/src/legacy/createStates.ts
@@ -7,7 +7,7 @@ import { createCss } from './createCss';
export function createStates<
Config extends Record,
- P extends Parser>,
+ P extends Parser>
>(config: Config): States {
const css: CSS
= createCss(config);
diff --git a/packages/core/src/legacy/createVariant.ts b/packages/core/src/legacy/createVariant.ts
index cb74cb9..02d167b 100644
--- a/packages/core/src/legacy/createVariant.ts
+++ b/packages/core/src/legacy/createVariant.ts
@@ -7,7 +7,7 @@ import { createCss } from './createCss';
export function createVariant<
Config extends Record,
- P extends Parser>,
+ P extends Parser>
>(config: Config): Variant {
const css: CSS
= createCss(config);
diff --git a/packages/core/src/legacy/responsive.ts b/packages/core/src/legacy/responsive.ts
index 393c798..f0c0648 100644
--- a/packages/core/src/legacy/responsive.ts
+++ b/packages/core/src/legacy/responsive.ts
@@ -34,7 +34,7 @@ export const isMediaMap = (
intersection(Object.keys(val), BREAKPOINT_KEYS).length > 0;
interface ResponsiveParser<
- Bp extends MediaQueryMap | (string | number)[],
+ Bp extends MediaQueryMap | (string | number)[]
> {
(
value: Bp,
diff --git a/packages/core/src/properties/styledOptions.ts b/packages/core/src/properties/styledOptions.ts
index 56d3e08..90a9bd9 100644
--- a/packages/core/src/properties/styledOptions.ts
+++ b/packages/core/src/properties/styledOptions.ts
@@ -7,7 +7,7 @@ import isPropValid from '@emotion/is-prop-valid';
export type ForwardableProps<
El extends keyof JSX.IntrinsicElements,
- Reserved,
+ Reserved
> = Exclude<
El extends keyof JSX.IntrinsicElements
? keyof JSX.IntrinsicElements[El]
@@ -30,7 +30,7 @@ export const createStyledOptions = >(
const bindShouldForward = <
El extends keyof JSX.IntrinsicElements = 'div',
Forward extends string = never,
- Filter extends string = never,
+ Filter extends string = never
>(opts?: {
element?: El;
forward?: readonly Forward[];
diff --git a/packages/core/src/styles/responsive.ts b/packages/core/src/styles/responsive.ts
index 08f8692..e4cc0c9 100644
--- a/packages/core/src/styles/responsive.ts
+++ b/packages/core/src/styles/responsive.ts
@@ -35,7 +35,7 @@ export const isMediaMap = (
intersection(Object.keys(val), BREAKPOINT_KEYS).length > 0;
interface ResponsiveParser<
- Bp extends MediaQueryMap | (string | number)[],
+ Bp extends MediaQueryMap | (string | number)[]
> {
(
value: Bp,
diff --git a/packages/core/src/types/config.ts b/packages/core/src/types/config.ts
index 49c69b7..adc18a1 100644
--- a/packages/core/src/types/config.ts
+++ b/packages/core/src/types/config.ts
@@ -32,7 +32,7 @@ type IsEmpty = [] extends T ? true : false | {} extends T ? true : false;
export type PropertyValues<
Property extends Prop,
- IncludeGlobals = false,
+ IncludeGlobals = false
> = Exclude<
PropertyTypes<
IncludeGlobals extends true ? DefaultCSSPropertyValue : never
@@ -44,8 +44,8 @@ type CompatValue =
CompatTheme[Key] extends MapScale
? keyof CompatTheme[Key]
: CompatTheme[Key] extends ArrayScale
- ? CompatTheme[Key][number]
- : never;
+ ? CompatTheme[Key][number]
+ : never;
export type ScaleValue =
Config['scale'] extends keyof Theme
@@ -53,16 +53,14 @@ export type ScaleValue =
| keyof Theme[Config['scale']]
| PropertyValues>
: Config['scale'] extends MapScale
- ? keyof Config['scale'] | PropertyValues>
- : Config['scale'] extends ArrayScale
- ?
- | Config['scale'][number]
- | PropertyValues>
- : Config['scale'] extends keyof CompatTheme
- ?
- | CompatValue
- | PropertyValues>
- : PropertyValues;
+ ? keyof Config['scale'] | PropertyValues>
+ : Config['scale'] extends ArrayScale
+ ? Config['scale'][number] | PropertyValues>
+ : Config['scale'] extends keyof CompatTheme
+ ?
+ | CompatValue
+ | PropertyValues>
+ : PropertyValues;
export type Scale = ResponsiveProp<
ScaleValue | ((theme: Theme) => ScaleValue)
@@ -80,7 +78,7 @@ export interface Parser> {
export type SystemProps<
P extends AbstractParser,
- SafeProps = Omit, 'theme'>,
+ SafeProps = Omit, 'theme'>
> = {
[K in keyof SafeProps]: SafeProps[K];
};
@@ -99,6 +97,6 @@ export type CSSProps = {
[K in keyof Props]?: K extends keyof System
? System[K]
: K extends keyof PropertyTypes
- ? PropertyTypes[K]
- : Omit & Omit;
+ ? PropertyTypes[K]
+ : Omit & Omit;
};
diff --git a/packages/theming/src/core/ThemeBuilder.ts b/packages/theming/src/core/ThemeBuilder.ts
index 6a9c30f..76f5412 100644
--- a/packages/theming/src/core/ThemeBuilder.ts
+++ b/packages/theming/src/core/ThemeBuilder.ts
@@ -45,7 +45,7 @@ export class ThemeWithRawColors<
Bps extends Breakpoints,
Scales,
Tokens,
- Vars,
+ Vars
> extends ThemeWithAll {
constructor(breakpoints: Bps, scales: Scales, tokens: Tokens, vars: Vars) {
super(breakpoints, scales, tokens, vars);
diff --git a/packages/theming/src/utils/createTheme.ts b/packages/theming/src/utils/createTheme.ts
index 4c7d3a5..72cae57 100644
--- a/packages/theming/src/utils/createTheme.ts
+++ b/packages/theming/src/utils/createTheme.ts
@@ -49,7 +49,7 @@ export class ThemeBuilder {
*/
addColors<
Colors extends Record,
- NextColors extends LiteralPaths,
+ NextColors extends LiteralPaths
>(
colors: Colors
): ThemeBuilder<
@@ -87,7 +87,7 @@ export class ThemeBuilder {
Config extends Record,
ColorAliases extends {
[K in keyof Config]: LiteralPaths;
- },
+ }
>(
initialMode: InitialMode,
modeConfig: Config
@@ -148,7 +148,7 @@ export class ThemeBuilder {
string | number,
string | number | Record
>,
- NewScale extends LiteralPaths, '-'>,
+ NewScale extends LiteralPaths, '-'>
>(
key: Key,
createScale: Fn
@@ -167,7 +167,7 @@ export class ThemeBuilder {
*/
updateScale<
Key extends keyof T,
- Fn extends (tokens: T[Key]) => Record,
+ Fn extends (tokens: T[Key]) => Record
>(
key: Key,
updateFn: Fn
diff --git a/packages/theming/src/utils/flattenScale.ts b/packages/theming/src/utils/flattenScale.ts
index fde5c89..9e58b5c 100644
--- a/packages/theming/src/utils/flattenScale.ts
+++ b/packages/theming/src/utils/flattenScale.ts
@@ -21,7 +21,7 @@ export type Path = FindPath | keyof T;
export type PathValue<
T,
P extends Path,
- D extends string = '.',
+ D extends string = '.'
> = P extends `${infer K}${D}${infer Rest}`
? K extends keyof T
? Rest extends Path
@@ -29,23 +29,22 @@ export type PathValue<
: never
: never
: P extends keyof T
- ? T[P]
- : never;
+ ? T[P]
+ : never;
/** Check if path has a primitive end value and return only the union of end paths */
export type PathToLiteral<
T,
K extends Path,
D extends string = '.',
- Base extends string = '',
-> =
- PathValue extends string | number
- ? K extends string | number
- ? K extends `${infer BasePath}${D}${Base}`
- ? BasePath
- : K
- : never
- : never;
+ Base extends string = ''
+> = PathValue extends string | number
+ ? K extends string | number
+ ? K extends `${infer BasePath}${D}${Base}`
+ ? BasePath
+ : K
+ : never
+ : never;
/**
* Reduce all paths to a single map of paths with primitive values removing all extra non stateful paths
@@ -55,7 +54,7 @@ export type PathToLiteral<
export type LiteralPaths<
T extends Record,
D extends string = '.',
- Base extends string = '',
+ Base extends string = ''
> = {
[K in Path as PathToLiteral]: PathValue<
T,
@@ -66,23 +65,20 @@ export type LiteralPaths<
export function flattenScale<
T extends Record,
- P extends string,
+ P extends string
>(object: T, path?: P): LiteralPaths {
- return Object.keys(object).reduce(
- (carry, key) => {
- const nextKey = path ? `${path}${key === '_' ? '' : `-${key}`}` : key;
- const current = object[key];
- if (isObject(current)) {
- return {
- ...carry,
- ...flattenScale(current as Record, nextKey),
- };
- }
+ return Object.keys(object).reduce((carry, key) => {
+ const nextKey = path ? `${path}${key === '_' ? '' : `-${key}`}` : key;
+ const current = object[key];
+ if (isObject(current)) {
return {
...carry,
- [nextKey]: object[key],
+ ...flattenScale(current as Record, nextKey),
};
- },
- {} as LiteralPaths
- );
+ }
+ return {
+ ...carry,
+ [nextKey]: object[key],
+ };
+ }, {} as LiteralPaths);
}
diff --git a/packages/theming/src/utils/serializeTokens.ts b/packages/theming/src/utils/serializeTokens.ts
index 39bdf38..d37b769 100644
--- a/packages/theming/src/utils/serializeTokens.ts
+++ b/packages/theming/src/utils/serializeTokens.ts
@@ -7,7 +7,7 @@ import { isObject, merge } from 'lodash';
*/
export type KeyAsVariable<
T extends Record,
- Prefix extends string,
+ Prefix extends string
> = {
[V in keyof T]: `var(--${Prefix}-${SanitizeKey>})`;
};
@@ -55,7 +55,7 @@ interface SerializedTokensInputRecursive {
export const serializeTokens = <
T extends SerializedTokensInput,
- Prefix extends string,
+ Prefix extends string
>(
tokens: T,
prefix: Prefix,
diff --git a/packages/theming/src/utils/types.ts b/packages/theming/src/utils/types.ts
index df5ebcb..7bd6bd7 100644
--- a/packages/theming/src/utils/types.ts
+++ b/packages/theming/src/utils/types.ts
@@ -12,7 +12,7 @@ import { AbstractTheme, CSSObject } from '@animus-ui/core';
export type MergeTheme<
Base extends AbstractTheme,
Next,
- Unmergable = Record<'breakpoints', Base['breakpoints']>,
+ Unmergable = Record<'breakpoints', Base['breakpoints']>
> = Unmergable & Merge;
/** This merges at 2 levels of depth */
@@ -22,8 +22,8 @@ export type Merge = {
? AssignValueIfUnmergable
: B[K]
: K extends keyof A
- ? A[K]
- : never;
+ ? A[K]
+ : never;
};
/** Extract mergable objects */
@@ -33,16 +33,19 @@ export type Mergable = Exclude<
>;
/** Return B if either A or B is unmergable */
-export type AssignValueIfUnmergable =
- Mergable extends never ? B : Mergable extends never ? B : Assign;
+export type AssignValueIfUnmergable = Mergable extends never
+ ? B
+ : Mergable extends never
+ ? B
+ : Assign;
/** Prefer all values from B */
export type Assign = {
[K in keyof A | keyof B]: K extends keyof B
? B[K]
: K extends keyof A
- ? A[K]
- : never;
+ ? A[K]
+ : never;
};
/** These are keys that are consistent for all theme builds - they are loosely typed as they are not meant to be accessed directly */
diff --git a/packages/ui/src/ComponentProvider/bindComponentProvider.tsx b/packages/ui/src/ComponentProvider/bindComponentProvider.tsx
index dacdd9c..9db507b 100644
--- a/packages/ui/src/ComponentProvider/bindComponentProvider.tsx
+++ b/packages/ui/src/ComponentProvider/bindComponentProvider.tsx
@@ -10,7 +10,7 @@ import { ComponentOverrides, ComponentRegistry } from './types';
export const bindComponentProvider = <
ComponentKey extends keyof Registry,
- Registry extends ComponentRegistry,
+ Registry extends ComponentRegistry
>(
components: Registry
) => {
diff --git a/packages/ui/src/components/ColorMode.tsx b/packages/ui/src/components/ColorMode.tsx
index 9389fbb..0f8ffe0 100644
--- a/packages/ui/src/components/ColorMode.tsx
+++ b/packages/ui/src/components/ColorMode.tsx
@@ -35,7 +35,7 @@ export function useColorModes(): [
ColorModes,
ColorModeShape,
ColorModeConfig,
- (color: Colors) => string,
+ (color: Colors) => string
] {
const { mode, modes, _getColorValue: getColorValue } = useTheme() || {};
return [mode, modes?.[mode], modes, getColorValue];