@animus-ui/core 0.1.1-beta.24 → 0.1.1-beta.26

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.
Files changed (42) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/Animus.d.ts +75 -76
  3. package/dist/AnimusConfig.d.ts +8 -8
  4. package/dist/AnimusExtended.d.ts +47 -48
  5. package/dist/__fixtures__/testConfig.d.ts +153 -153
  6. package/dist/compatTheme.d.ts +28 -28
  7. package/dist/config.d.ts +2321 -2321
  8. package/dist/createAnimus.d.ts +2 -2
  9. package/dist/index.d.ts +1084 -1084
  10. package/dist/index.js +216 -265
  11. package/dist/legacy/compose.d.ts +2 -2
  12. package/dist/legacy/config.d.ts +86 -86
  13. package/dist/legacy/core.d.ts +12 -12
  14. package/dist/legacy/create.d.ts +2 -2
  15. package/dist/legacy/createCss.d.ts +2 -2
  16. package/dist/legacy/createParser.d.ts +2 -2
  17. package/dist/legacy/createStates.d.ts +2 -2
  18. package/dist/legacy/createTransform.d.ts +2 -2
  19. package/dist/legacy/createVariant.d.ts +2 -2
  20. package/dist/legacy/responsive.d.ts +14 -14
  21. package/dist/properties/getStylePropNames.d.ts +1 -1
  22. package/dist/properties/orderPropNames.d.ts +6 -6
  23. package/dist/properties/styledOptions.d.ts +20 -20
  24. package/dist/scales/createScale.d.ts +6 -6
  25. package/dist/scales/lookupScaleValue.d.ts +3 -3
  26. package/dist/styles/createParser.d.ts +2 -2
  27. package/dist/styles/createPropertyStyle.d.ts +4 -4
  28. package/dist/styles/createStylist.d.ts +2 -2
  29. package/dist/styles/responsive.d.ts +14 -14
  30. package/dist/transforms/border.d.ts +1 -1
  31. package/dist/transforms/grid.d.ts +4 -4
  32. package/dist/transforms/index.d.ts +4 -4
  33. package/dist/transforms/size.d.ts +2 -2
  34. package/dist/transforms/utils.d.ts +2 -2
  35. package/dist/types/config.d.ts +50 -50
  36. package/dist/types/properties.d.ts +23 -23
  37. package/dist/types/props.d.ts +34 -34
  38. package/dist/types/scales.d.ts +2 -2
  39. package/dist/types/shared.d.ts +4 -4
  40. package/dist/types/theme.d.ts +17 -17
  41. package/dist/types/utils.d.ts +4 -4
  42. package/package.json +6 -6
@@ -1,50 +1,50 @@
1
- import { Theme } from '@emotion/react';
2
- import { CompatTheme } from '../compatTheme';
3
- import { DefaultCSSPropertyValue, PropertyTypes } from './properties';
4
- import { AbstractProps, ResponsiveProp, ThemeProps } from './props';
5
- import { ArrayScale, MapScale } from './scales';
6
- import { CSSObject } from './shared';
7
- import { Arg } from './utils';
8
- export interface BaseProperty {
9
- property: keyof PropertyTypes;
10
- properties?: readonly (keyof PropertyTypes)[];
11
- }
12
- export interface Prop extends BaseProperty {
13
- scale?: keyof Theme | keyof CompatTheme | MapScale | ArrayScale;
14
- variable?: string;
15
- transform?: (val: string | number, prop?: string, props?: AbstractProps) => string | number | CSSObject;
16
- }
17
- export interface AbstractParser {
18
- (props: AbstractProps, orderProps?: boolean): CSSObject;
19
- propNames: string[];
20
- config: Record<string, Prop>;
21
- }
22
- type IsEmpty<T> = [] extends T ? true : false | {} extends T ? true : false;
23
- export type PropertyValues<Property extends Prop, IncludeGlobals = false> = Exclude<PropertyTypes<IncludeGlobals extends true ? DefaultCSSPropertyValue : never>[Property['property']], IncludeGlobals extends true ? never : object | any[]>;
24
- type CompatValue<Key extends keyof CompatTheme> = CompatTheme[Key] extends MapScale ? keyof CompatTheme[Key] : CompatTheme[Key] extends ArrayScale ? CompatTheme[Key][number] : never;
25
- export type ScaleValue<Config extends Prop> = Config['scale'] extends keyof Theme ? keyof Theme[Config['scale']] | PropertyValues<Config, IsEmpty<Theme[Config['scale']]>> : Config['scale'] extends MapScale ? keyof Config['scale'] | PropertyValues<Config, IsEmpty<Config['scale']>> : Config['scale'] extends ArrayScale ? Config['scale'][number] | PropertyValues<Config, IsEmpty<Config['scale']>> : Config['scale'] extends keyof CompatTheme ? CompatValue<Config['scale']> | PropertyValues<Config, IsEmpty<CompatTheme[Config['scale']]>> : PropertyValues<Config, true>;
26
- export type Scale<Config extends Prop> = ResponsiveProp<ScaleValue<Config> | ((theme: Theme) => ScaleValue<Config>)>;
27
- export type ParserProps<Config extends Record<string, Prop>> = ThemeProps<{
28
- [P in keyof Config]?: Scale<Config[P]>;
29
- }>;
30
- export interface Parser<Config extends Record<string, Prop>> {
31
- (props: ParserProps<Config>, orderProps?: boolean): CSSObject;
32
- propNames: Extract<keyof Config, string>[];
33
- config: Config;
34
- }
35
- export type SystemProps<P extends AbstractParser, SafeProps = Omit<Arg<P>, 'theme'>> = {
36
- [K in keyof SafeProps]: SafeProps[K];
37
- };
38
- export interface VariantConfig {
39
- prop?: any;
40
- defaultVariant?: any;
41
- base?: CSSProps<AbstractProps, SystemProps<AbstractParser>>;
42
- variants: CSSPropMap<AbstractProps, SystemProps<AbstractParser>>;
43
- }
44
- export type CSSPropMap<Props, System> = {
45
- [K in keyof Props]?: CSSProps<Props[K], System>;
46
- };
47
- export type CSSProps<Props, System> = {
48
- [K in keyof Props]?: K extends keyof System ? System[K] : K extends keyof PropertyTypes ? PropertyTypes[K] : Omit<PropertyTypes, keyof System> & Omit<System, 'theme'>;
49
- };
50
- export {};
1
+ import { Theme } from '@emotion/react';
2
+ import { CompatTheme } from '../compatTheme';
3
+ import { DefaultCSSPropertyValue, PropertyTypes } from './properties';
4
+ import { AbstractProps, ResponsiveProp, ThemeProps } from './props';
5
+ import { ArrayScale, MapScale } from './scales';
6
+ import { CSSObject } from './shared';
7
+ import { Arg } from './utils';
8
+ export interface BaseProperty {
9
+ property: keyof PropertyTypes;
10
+ properties?: readonly (keyof PropertyTypes)[];
11
+ }
12
+ export interface Prop extends BaseProperty {
13
+ scale?: keyof Theme | keyof CompatTheme | MapScale | ArrayScale;
14
+ variable?: string;
15
+ transform?: (val: string | number, prop?: string, props?: AbstractProps) => string | number | CSSObject;
16
+ }
17
+ export interface AbstractParser {
18
+ (props: AbstractProps, orderProps?: boolean): CSSObject;
19
+ propNames: string[];
20
+ config: Record<string, Prop>;
21
+ }
22
+ type IsEmpty<T> = [] extends T ? true : false | {} extends T ? true : false;
23
+ export type PropertyValues<Property extends Prop, IncludeGlobals = false> = Exclude<PropertyTypes<IncludeGlobals extends true ? DefaultCSSPropertyValue : never>[Property['property']], IncludeGlobals extends true ? never : object | any[]>;
24
+ type CompatValue<Key extends keyof CompatTheme> = CompatTheme[Key] extends MapScale ? keyof CompatTheme[Key] : CompatTheme[Key] extends ArrayScale ? CompatTheme[Key][number] : never;
25
+ export type ScaleValue<Config extends Prop> = Config['scale'] extends keyof Theme ? keyof Theme[Config['scale']] | PropertyValues<Config, IsEmpty<Theme[Config['scale']]>> : Config['scale'] extends MapScale ? keyof Config['scale'] | PropertyValues<Config, IsEmpty<Config['scale']>> : Config['scale'] extends ArrayScale ? Config['scale'][number] | PropertyValues<Config, IsEmpty<Config['scale']>> : Config['scale'] extends keyof CompatTheme ? CompatValue<Config['scale']> | PropertyValues<Config, IsEmpty<CompatTheme[Config['scale']]>> : PropertyValues<Config, true>;
26
+ export type Scale<Config extends Prop> = ResponsiveProp<ScaleValue<Config> | ((theme: Theme) => ScaleValue<Config>)>;
27
+ export type ParserProps<Config extends Record<string, Prop>> = ThemeProps<{
28
+ [P in keyof Config]?: Scale<Config[P]>;
29
+ }>;
30
+ export interface Parser<Config extends Record<string, Prop>> {
31
+ (props: ParserProps<Config>, orderProps?: boolean): CSSObject;
32
+ propNames: Extract<keyof Config, string>[];
33
+ config: Config;
34
+ }
35
+ export type SystemProps<P extends AbstractParser, SafeProps = Omit<Arg<P>, 'theme'>> = {
36
+ [K in keyof SafeProps]: SafeProps[K];
37
+ };
38
+ export interface VariantConfig {
39
+ prop?: any;
40
+ defaultVariant?: any;
41
+ base?: CSSProps<AbstractProps, SystemProps<AbstractParser>>;
42
+ variants: CSSPropMap<AbstractProps, SystemProps<AbstractParser>>;
43
+ }
44
+ export type CSSPropMap<Props, System> = {
45
+ [K in keyof Props]?: CSSProps<Props[K], System>;
46
+ };
47
+ export type CSSProps<Props, System> = {
48
+ [K in keyof Props]?: K extends keyof System ? System[K] : K extends keyof PropertyTypes ? PropertyTypes[K] : Omit<PropertyTypes, keyof System> & Omit<System, 'theme'>;
49
+ };
50
+ export {};
@@ -1,23 +1,23 @@
1
- import { Globals, StandardProperties, SvgProperties, VendorProperties } from 'csstype';
2
- import { CSSObject, NarrowPrimitive } from './shared';
3
- type AnimusCSSProperties<Overrides = DefaultCSSPropertyValue> = StandardProperties<Overrides> & VendorProperties<Overrides> & Omit<SvgProperties<Overrides>, keyof StandardProperties>;
4
- type ColorProperties = 'color' | `${string}Color` | 'fill' | 'stroke';
5
- type ColorGlobals = {
6
- [K in Extract<keyof AnimusCSSProperties, ColorProperties>]?: Globals | 'currentColor' | 'transparent' | NarrowPrimitive<string>;
7
- };
8
- type SizeProperties = 'left' | 'right' | 'top' | 'bottom' | 'inset' | 'width' | 'height' | `${string}${'Width' | 'Height'}`;
9
- type SizeValues = `${number}${'px' | 'rem' | 'vh' | 'vw' | 'vmax' | 'vmin' | '%'}` | `calc(${any})`;
10
- type SizeGlobals = {
11
- [K in Extract<keyof AnimusCSSProperties, SizeProperties>]?: AnimusCSSProperties[K] | SizeValues | NarrowPrimitive<number>;
12
- };
13
- /** This is a placeholder type for CSS properties that may not have any specific global values (outlineOffset).
14
- * (string & {}) will allow strings but not generalize the union type to just a string if other string literals exist in the union.
15
- *
16
- * This ensures that autosuggestions will still work for literal types but still allow any string for certain properties.
17
- */
18
- export type DefaultCSSPropertyValue = (string & {}) | 0;
19
- export interface PropertyTypes<Overrides = DefaultCSSPropertyValue> extends Omit<AnimusCSSProperties<Overrides>, keyof ColorGlobals | keyof SizeGlobals>, ColorGlobals, SizeGlobals {
20
- none?: never;
21
- variables?: CSSObject;
22
- }
23
- export {};
1
+ import { Globals, StandardProperties, SvgProperties, VendorProperties } from 'csstype';
2
+ import { CSSObject, NarrowPrimitive } from './shared';
3
+ type AnimusCSSProperties<Overrides = DefaultCSSPropertyValue> = StandardProperties<Overrides> & VendorProperties<Overrides> & Omit<SvgProperties<Overrides>, keyof StandardProperties>;
4
+ type ColorProperties = 'color' | `${string}Color` | 'fill' | 'stroke';
5
+ type ColorGlobals = {
6
+ [K in Extract<keyof AnimusCSSProperties, ColorProperties>]?: Globals | 'currentColor' | 'transparent' | NarrowPrimitive<string>;
7
+ };
8
+ type SizeProperties = 'left' | 'right' | 'top' | 'bottom' | 'inset' | 'width' | 'height' | `${string}${'Width' | 'Height'}`;
9
+ type SizeValues = `${number}${'px' | 'rem' | 'vh' | 'vw' | 'vmax' | 'vmin' | '%'}` | `calc(${any})`;
10
+ type SizeGlobals = {
11
+ [K in Extract<keyof AnimusCSSProperties, SizeProperties>]?: AnimusCSSProperties[K] | SizeValues | NarrowPrimitive<number>;
12
+ };
13
+ /** This is a placeholder type for CSS properties that may not have any specific global values (outlineOffset).
14
+ * (string & {}) will allow strings but not generalize the union type to just a string if other string literals exist in the union.
15
+ *
16
+ * This ensures that autosuggestions will still work for literal types but still allow any string for certain properties.
17
+ */
18
+ export type DefaultCSSPropertyValue = (string & {}) | 0;
19
+ export interface PropertyTypes<Overrides = DefaultCSSPropertyValue> extends Omit<AnimusCSSProperties<Overrides>, keyof ColorGlobals | keyof SizeGlobals>, ColorGlobals, SizeGlobals {
20
+ none?: never;
21
+ variables?: CSSObject;
22
+ }
23
+ export {};
@@ -1,34 +1,34 @@
1
- import { Theme } from '@emotion/react';
2
- export type AbstractProps = ThemeProps<Record<string, unknown>>;
3
- interface MediaQueryByKey<T = string> {
4
- xs: T;
5
- sm: T;
6
- md: T;
7
- lg: T;
8
- xl: T;
9
- }
10
- export interface MediaQueryCache {
11
- map: MediaQueryByKey;
12
- array: string[];
13
- }
14
- export type ThemeProps<Props = {}> = Props & {
15
- theme?: Theme;
16
- };
17
- export interface MediaQueryArray<T> {
18
- 0?: T;
19
- 1?: T;
20
- 2?: T;
21
- 3?: T;
22
- 4?: T;
23
- 5?: T;
24
- }
25
- export interface MediaQueryMap<T> {
26
- _?: T;
27
- xs?: T;
28
- sm?: T;
29
- md?: T;
30
- lg?: T;
31
- xl?: T;
32
- }
33
- export type ResponsiveProp<T> = T | MediaQueryMap<T> | MediaQueryArray<T>;
34
- export {};
1
+ import { Theme } from '@emotion/react';
2
+ export type AbstractProps = ThemeProps<Record<string, unknown>>;
3
+ interface MediaQueryByKey<T = string> {
4
+ xs: T;
5
+ sm: T;
6
+ md: T;
7
+ lg: T;
8
+ xl: T;
9
+ }
10
+ export interface MediaQueryCache {
11
+ map: MediaQueryByKey;
12
+ array: string[];
13
+ }
14
+ export type ThemeProps<Props = {}> = Props & {
15
+ theme?: Theme;
16
+ };
17
+ export interface MediaQueryArray<T> {
18
+ 0?: T;
19
+ 1?: T;
20
+ 2?: T;
21
+ 3?: T;
22
+ 4?: T;
23
+ 5?: T;
24
+ }
25
+ export interface MediaQueryMap<T> {
26
+ _?: T;
27
+ xs?: T;
28
+ sm?: T;
29
+ md?: T;
30
+ lg?: T;
31
+ xl?: T;
32
+ }
33
+ export type ResponsiveProp<T> = T | MediaQueryMap<T> | MediaQueryArray<T>;
34
+ export {};
@@ -1,2 +1,2 @@
1
- export type MapScale = Record<string | number, string | number>;
2
- export type ArrayScale = readonly (string | number)[];
1
+ export type MapScale = Record<string | number, string | number>;
2
+ export type ArrayScale = readonly (string | number)[];
@@ -1,4 +1,4 @@
1
- export interface CSSObject {
2
- [key: string]: string | number | CSSObject | undefined;
3
- }
4
- export type NarrowPrimitive<T> = T & {};
1
+ export interface CSSObject {
2
+ [key: string]: string | number | CSSObject | undefined;
3
+ }
4
+ export type NarrowPrimitive<T> = T & {};
@@ -1,17 +1,17 @@
1
- export interface Breakpoints<T = number> {
2
- xs: T;
3
- sm: T;
4
- md: T;
5
- lg: T;
6
- xl: T;
7
- }
8
- export interface BaseTheme {
9
- breakpoints: Breakpoints;
10
- }
11
- export interface AbstractTheme extends BaseTheme {
12
- readonly [key: string]: any;
13
- }
14
- declare module '@emotion/react' {
15
- interface Theme extends BaseTheme {
16
- }
17
- }
1
+ export interface Breakpoints<T = number> {
2
+ xs: T;
3
+ sm: T;
4
+ md: T;
5
+ lg: T;
6
+ xl: T;
7
+ }
8
+ export interface BaseTheme {
9
+ breakpoints: Breakpoints;
10
+ }
11
+ export interface AbstractTheme extends BaseTheme {
12
+ readonly [key: string]: any;
13
+ }
14
+ declare module '@emotion/react' {
15
+ interface Theme extends BaseTheme {
16
+ }
17
+ }
@@ -1,4 +1,4 @@
1
- export type Arg<T extends (...args: any) => any> = Parameters<T>[0];
2
- export type AllUnionKeys<T> = T extends any ? keyof T : never;
3
- export type KeyFromUnion<T, K> = T extends any ? K extends keyof T ? T[K] : never : never;
4
- export type Key<T> = T extends string ? T : never;
1
+ export type Arg<T extends (...args: any) => any> = Parameters<T>[0];
2
+ export type AllUnionKeys<T> = T extends any ? keyof T : never;
3
+ export type KeyFromUnion<T, K> = T extends any ? K extends keyof T ? T[K] : never : never;
4
+ export type Key<T> = T extends string ? T : never;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@animus-ui/core",
3
3
  "description": "Constraint based CSS in JS Foundations",
4
- "version": "0.1.1-beta.24",
4
+ "version": "0.1.1-beta.26",
5
5
  "keywords": [
6
6
  "emotion",
7
7
  "css",
@@ -31,10 +31,10 @@
31
31
  "typescript": ">=4.3.5"
32
32
  },
33
33
  "dependencies": {
34
- "@emotion/is-prop-valid": "^1.1.1",
35
- "@emotion/react": "^11.0.0",
36
- "@emotion/styled": "^11.0.0",
37
- "csstype": "^3.0.7"
34
+ "@emotion/is-prop-valid": "^1.3.1",
35
+ "@emotion/react": "^11.14.0",
36
+ "@emotion/styled": "^11.14.0",
37
+ "csstype": "^3.1.3"
38
38
  },
39
- "gitHead": "42aeb80b573618b883e9740ba803ed54ed29d5e5"
39
+ "gitHead": "0eedde667e3b8ffb12ea3b170b86e201e4e6f932"
40
40
  }