@stylexjs/shared 0.5.0 → 0.6.0
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/lib/convert-to-className.d.ts +5 -1
 - package/lib/convert-to-className.js +33 -1
 - package/lib/convert-to-className.js.flow +5 -1
 - package/lib/messages.d.ts +1 -0
 - package/lib/messages.js +3 -2
 - package/lib/messages.js.flow +1 -0
 - package/lib/stylex-create-theme.js +30 -40
 - package/lib/stylex-define-vars.d.ts +2 -6
 - package/lib/stylex-define-vars.js +40 -21
 - package/lib/stylex-define-vars.js.flow +1 -4
 - package/lib/stylex-first-that-works.d.ts +1 -1
 - package/lib/stylex-first-that-works.js.flow +1 -1
 - package/lib/stylex-vars-utils.d.ts +27 -0
 - package/lib/stylex-vars-utils.js +69 -0
 - package/lib/stylex-vars-utils.js.flow +31 -0
 - package/lib/types/index.d.ts +79 -76
 - package/lib/types/index.js +28 -72
 - package/lib/types/index.js.flow +82 -82
 - package/lib/utils/normalize-value.js +1 -2
 - package/lib/utils/normalizers/zero-dimensions.d.ts +2 -2
 - package/lib/utils/normalizers/zero-dimensions.js +6 -0
 - package/lib/utils/normalizers/zero-dimensions.js.flow +2 -2
 - package/package.json +2 -2
 
    
        package/lib/types/index.js.flow
    CHANGED
    
    | 
         @@ -15,15 +15,23 @@ 
     | 
|
| 
       15 
15 
     | 
    
         
             
            // We want on type that defines CSS Types
         
     | 
| 
       16 
16 
     | 
    
         
             
            // Option 2: Do a union type and make
         
     | 
| 
       17 
17 
     | 
    
         | 
| 
       18 
     | 
    
         
            -
            // interface  
     | 
| 
      
 18 
     | 
    
         
            +
            // interface CSSType {
         
     | 
| 
       19 
19 
     | 
    
         
             
            //   toString(): string;
         
     | 
| 
       20 
20 
     | 
    
         
             
            // }
         
     | 
| 
       21 
21 
     | 
    
         | 
| 
       22 
     | 
    
         
            -
            type  
     | 
| 
       23 
     | 
    
         
            -
              |  
     | 
| 
      
 22 
     | 
    
         
            +
            type NestedWithNumbers =
         
     | 
| 
      
 23 
     | 
    
         
            +
              | number
         
     | 
| 
      
 24 
     | 
    
         
            +
              | string
         
     | 
| 
       24 
25 
     | 
    
         
             
              | $ReadOnly<{
         
     | 
| 
       25 
     | 
    
         
            -
                  default:  
     | 
| 
       26 
     | 
    
         
            -
                  [string]:  
     | 
| 
      
 26 
     | 
    
         
            +
                  default: NestedWithNumbers,
         
     | 
| 
      
 27 
     | 
    
         
            +
                  [string]: NestedWithNumbers,
         
     | 
| 
      
 28 
     | 
    
         
            +
                }>;
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
            type ValueWithDefault =
         
     | 
| 
      
 31 
     | 
    
         
            +
              | string
         
     | 
| 
      
 32 
     | 
    
         
            +
              | $ReadOnly<{
         
     | 
| 
      
 33 
     | 
    
         
            +
                  default: ValueWithDefault,
         
     | 
| 
      
 34 
     | 
    
         
            +
                  [string]: ValueWithDefault,
         
     | 
| 
       27 
35 
     | 
    
         
             
                }>;
         
     | 
| 
       28 
36 
     | 
    
         | 
| 
       29 
37 
     | 
    
         
             
            type CSSSyntax =
         
     | 
| 
         @@ -43,51 +51,56 @@ type CSSSyntax = 
     | 
|
| 
       43 
51 
     | 
    
         
             
              | '<custom-ident>'
         
     | 
| 
       44 
52 
     | 
    
         
             
              | '<transform-list>';
         
     | 
| 
       45 
53 
     | 
    
         | 
| 
       46 
     | 
    
         
            -
            type CSSSyntaxType = CSSSyntax 
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
            declare export class CSSType {}
         
     | 
| 
      
 54 
     | 
    
         
            +
            type CSSSyntaxType = CSSSyntax;
         
     | 
| 
       49 
55 
     | 
    
         | 
| 
       50 
     | 
    
         
            -
             
     | 
| 
       51 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 56 
     | 
    
         
            +
            declare class BaseCSSType {
         
     | 
| 
      
 57 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
      
 58 
     | 
    
         
            +
              +syntax: CSSSyntaxType;
         
     | 
| 
      
 59 
     | 
    
         
            +
              constructor(value: ValueWithDefault): void;
         
     | 
| 
      
 60 
     | 
    
         
            +
            }
         
     | 
| 
      
 61 
     | 
    
         
            +
            export interface CSSType<+_T: string | number = string | number> {
         
     | 
| 
      
 62 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       52 
63 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       53 
64 
     | 
    
         
             
            }
         
     | 
| 
       54 
65 
     | 
    
         | 
| 
      
 66 
     | 
    
         
            +
            declare export const isCSSType: (
         
     | 
| 
      
 67 
     | 
    
         
            +
              value: mixed,
         
     | 
| 
      
 68 
     | 
    
         
            +
            ) => value is CSSType<string | number>;
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
       55 
70 
     | 
    
         
             
            type AnguleValue = string;
         
     | 
| 
       56 
71 
     | 
    
         
             
            declare export class Angle<+T: AnguleValue>
         
     | 
| 
       57 
     | 
    
         
            -
              extends  
     | 
| 
       58 
     | 
    
         
            -
              implements  
     | 
| 
      
 72 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 73 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       59 
74 
     | 
    
         
             
            {
         
     | 
| 
       60 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 75 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       61 
76 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       62 
77 
     | 
    
         
             
              static +syntax: CSSSyntaxType;
         
     | 
| 
       63 
     | 
    
         
            -
              constructor(value: ValueWithDefault<T>): void;
         
     | 
| 
       64 
78 
     | 
    
         
             
              static create<T: AnguleValue = AnguleValue>(
         
     | 
| 
       65 
     | 
    
         
            -
                value: ValueWithDefault 
     | 
| 
      
 79 
     | 
    
         
            +
                value: ValueWithDefault,
         
     | 
| 
       66 
80 
     | 
    
         
             
              ): Angle<T>;
         
     | 
| 
       67 
81 
     | 
    
         
             
            }
         
     | 
| 
       68 
82 
     | 
    
         
             
            declare export const angle: $FlowFixMe;
         
     | 
| 
       69 
83 
     | 
    
         | 
| 
       70 
84 
     | 
    
         
             
            type ColorValue = string;
         
     | 
| 
       71 
85 
     | 
    
         
             
            declare export class Color<+T: ColorValue>
         
     | 
| 
       72 
     | 
    
         
            -
              extends  
     | 
| 
       73 
     | 
    
         
            -
              implements  
     | 
| 
      
 86 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 87 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       74 
88 
     | 
    
         
             
            {
         
     | 
| 
       75 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 89 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       76 
90 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       77 
     | 
    
         
            -
               
     | 
| 
       78 
     | 
    
         
            -
              static create<T: ColorValue = ColorValue>(
         
     | 
| 
       79 
     | 
    
         
            -
                value: ValueWithDefault<T>,
         
     | 
| 
       80 
     | 
    
         
            -
              ): Color<T>;
         
     | 
| 
      
 91 
     | 
    
         
            +
              static create<T: ColorValue = ColorValue>(value: ValueWithDefault): Color<T>;
         
     | 
| 
       81 
92 
     | 
    
         
             
            }
         
     | 
| 
       82 
93 
     | 
    
         
             
            declare export const color: $FlowFixMe;
         
     | 
| 
       83 
94 
     | 
    
         | 
| 
       84 
95 
     | 
    
         
             
            type URLValue = string;
         
     | 
| 
       85 
96 
     | 
    
         | 
| 
       86 
     | 
    
         
            -
            declare export class Url<+T: URLValue> 
     | 
| 
       87 
     | 
    
         
            -
               
     | 
| 
      
 97 
     | 
    
         
            +
            declare export class Url<+T: URLValue>
         
     | 
| 
      
 98 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 99 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
      
 100 
     | 
    
         
            +
            {
         
     | 
| 
      
 101 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       88 
102 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       89 
     | 
    
         
            -
               
     | 
| 
       90 
     | 
    
         
            -
              static create<T: URLValue = URLValue>(value: ValueWithDefault<T>): Url<T>;
         
     | 
| 
      
 103 
     | 
    
         
            +
              static create<T: URLValue = URLValue>(value: ValueWithDefault): Url<T>;
         
     | 
| 
       91 
104 
     | 
    
         
             
            }
         
     | 
| 
       92 
105 
     | 
    
         
             
            declare export const url: $FlowFixMe;
         
     | 
| 
       93 
106 
     | 
    
         | 
| 
         @@ -95,74 +108,68 @@ type ImageValue = string; 
     | 
|
| 
       95 
108 
     | 
    
         | 
| 
       96 
109 
     | 
    
         
             
            declare export class Image<+T: ImageValue>
         
     | 
| 
       97 
110 
     | 
    
         
             
              extends Url<T>
         
     | 
| 
       98 
     | 
    
         
            -
              implements  
     | 
| 
      
 111 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       99 
112 
     | 
    
         
             
            {
         
     | 
| 
       100 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 113 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       101 
114 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       102 
     | 
    
         
            -
              constructor(value: ValueWithDefault 
     | 
| 
       103 
     | 
    
         
            -
              static create<T: ImageValue = ImageValue>(
         
     | 
| 
       104 
     | 
    
         
            -
                value: ValueWithDefault<T>,
         
     | 
| 
       105 
     | 
    
         
            -
              ): Image<T>;
         
     | 
| 
      
 115 
     | 
    
         
            +
              constructor(value: ValueWithDefault): void;
         
     | 
| 
      
 116 
     | 
    
         
            +
              static create<T: ImageValue = ImageValue>(value: ValueWithDefault): Image<T>;
         
     | 
| 
       106 
117 
     | 
    
         
             
            }
         
     | 
| 
       107 
118 
     | 
    
         
             
            declare export const image: $FlowFixMe;
         
     | 
| 
       108 
119 
     | 
    
         | 
| 
       109 
120 
     | 
    
         
             
            type IntegerValue = number;
         
     | 
| 
       110 
121 
     | 
    
         | 
| 
       111 
122 
     | 
    
         
             
            declare export class Integer<+T: IntegerValue>
         
     | 
| 
       112 
     | 
    
         
            -
              extends  
     | 
| 
       113 
     | 
    
         
            -
              implements  
     | 
| 
      
 123 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 124 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       114 
125 
     | 
    
         
             
            {
         
     | 
| 
       115 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 126 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       116 
127 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       117 
     | 
    
         
            -
              constructor(value: ValueWithDefault<T>): void;
         
     | 
| 
       118 
128 
     | 
    
         
             
              static create<T: IntegerValue = IntegerValue>(value: T): Integer<T>;
         
     | 
| 
       119 
129 
     | 
    
         
             
            }
         
     | 
| 
       120 
130 
     | 
    
         
             
            declare export const integer: $FlowFixMe;
         
     | 
| 
       121 
131 
     | 
    
         | 
| 
       122 
132 
     | 
    
         
             
            type LengthPercentageValue = string;
         
     | 
| 
       123 
133 
     | 
    
         | 
| 
       124 
     | 
    
         
            -
            declare export class LengthPercentage<+ 
     | 
| 
       125 
     | 
    
         
            -
              extends  
     | 
| 
       126 
     | 
    
         
            -
              implements  
     | 
| 
      
 134 
     | 
    
         
            +
            declare export class LengthPercentage<+_T: LengthPercentageValue>
         
     | 
| 
      
 135 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 136 
     | 
    
         
            +
              implements CSSType<string>
         
     | 
| 
       127 
137 
     | 
    
         
             
            {
         
     | 
| 
       128 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 138 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       129 
139 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       130 
     | 
    
         
            -
               
     | 
| 
       131 
     | 
    
         
            -
             
     | 
| 
       132 
     | 
    
         
            -
                value: ValueWithDefault<T>,
         
     | 
| 
      
 140 
     | 
    
         
            +
              static createLength<_T: LengthPercentageValue | number>(
         
     | 
| 
      
 141 
     | 
    
         
            +
                value: ValueWithDefault,
         
     | 
| 
       133 
142 
     | 
    
         
             
              ): LengthPercentage<string>;
         
     | 
| 
       134 
     | 
    
         
            -
              static createPercentage< 
     | 
| 
       135 
     | 
    
         
            -
                value: ValueWithDefault 
     | 
| 
      
 143 
     | 
    
         
            +
              static createPercentage<_T: LengthPercentageValue | number>(
         
     | 
| 
      
 144 
     | 
    
         
            +
                value: ValueWithDefault,
         
     | 
| 
       136 
145 
     | 
    
         
             
              ): LengthPercentage<string>;
         
     | 
| 
       137 
146 
     | 
    
         
             
            }
         
     | 
| 
       138 
147 
     | 
    
         
             
            declare export const lengthPercentage: $FlowFixMe;
         
     | 
| 
       139 
148 
     | 
    
         | 
| 
       140 
149 
     | 
    
         
             
            type LengthValue = number | string;
         
     | 
| 
       141 
150 
     | 
    
         | 
| 
       142 
     | 
    
         
            -
            declare export class Length<+ 
     | 
| 
      
 151 
     | 
    
         
            +
            declare export class Length<+_T: LengthValue>
         
     | 
| 
       143 
152 
     | 
    
         
             
              extends LengthPercentage<string>
         
     | 
| 
       144 
     | 
    
         
            -
              implements  
     | 
| 
      
 153 
     | 
    
         
            +
              implements CSSType<string>
         
     | 
| 
       145 
154 
     | 
    
         
             
            {
         
     | 
| 
       146 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 155 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       147 
156 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       148 
     | 
    
         
            -
              constructor(value: ValueWithDefault<T>): void;
         
     | 
| 
       149 
157 
     | 
    
         
             
              static create<T: LengthValue = LengthValue>(
         
     | 
| 
       150 
     | 
    
         
            -
                value:  
     | 
| 
      
 158 
     | 
    
         
            +
                value: NestedWithNumbers,
         
     | 
| 
       151 
159 
     | 
    
         
             
              ): Length<T>;
         
     | 
| 
       152 
160 
     | 
    
         
             
            }
         
     | 
| 
       153 
161 
     | 
    
         
             
            declare export const length: $FlowFixMe;
         
     | 
| 
       154 
162 
     | 
    
         | 
| 
       155 
163 
     | 
    
         
             
            type PercentageValue = string | number;
         
     | 
| 
       156 
164 
     | 
    
         | 
| 
       157 
     | 
    
         
            -
            declare export class Percentage<+ 
     | 
| 
      
 165 
     | 
    
         
            +
            declare export class Percentage<+_T: PercentageValue>
         
     | 
| 
       158 
166 
     | 
    
         
             
              extends LengthPercentage<string>
         
     | 
| 
       159 
     | 
    
         
            -
              implements  
     | 
| 
      
 167 
     | 
    
         
            +
              implements CSSType<string>
         
     | 
| 
       160 
168 
     | 
    
         
             
            {
         
     | 
| 
       161 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 169 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       162 
170 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       163 
     | 
    
         
            -
              constructor(value: ValueWithDefault<T>): void;
         
     | 
| 
       164 
171 
     | 
    
         
             
              static create<T: PercentageValue = PercentageValue>(
         
     | 
| 
       165 
     | 
    
         
            -
                value:  
     | 
| 
      
 172 
     | 
    
         
            +
                value: NestedWithNumbers,
         
     | 
| 
       166 
173 
     | 
    
         
             
              ): Percentage<T>;
         
     | 
| 
       167 
174 
     | 
    
         
             
            }
         
     | 
| 
       168 
175 
     | 
    
         
             
            declare export const percentage: $FlowFixMe;
         
     | 
| 
         @@ -170,29 +177,25 @@ declare export const percentage: $FlowFixMe; 
     | 
|
| 
       170 
177 
     | 
    
         
             
            type NumberValue = number;
         
     | 
| 
       171 
178 
     | 
    
         | 
| 
       172 
179 
     | 
    
         
             
            declare export class Num<+T: NumberValue>
         
     | 
| 
       173 
     | 
    
         
            -
              extends  
     | 
| 
       174 
     | 
    
         
            -
              implements  
     | 
| 
      
 180 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 181 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       175 
182 
     | 
    
         
             
            {
         
     | 
| 
       176 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 183 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       177 
184 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       178 
     | 
    
         
            -
               
     | 
| 
       179 
     | 
    
         
            -
              static create<T: NumberValue = NumberValue>(
         
     | 
| 
       180 
     | 
    
         
            -
                value: ValueWithDefault<T>,
         
     | 
| 
       181 
     | 
    
         
            -
              ): Num<T>;
         
     | 
| 
      
 185 
     | 
    
         
            +
              static create<T: NumberValue = NumberValue>(value: NestedWithNumbers): Num<T>;
         
     | 
| 
       182 
186 
     | 
    
         
             
            }
         
     | 
| 
       183 
187 
     | 
    
         
             
            declare export const number: $FlowFixMe;
         
     | 
| 
       184 
188 
     | 
    
         | 
| 
       185 
189 
     | 
    
         
             
            type ResolutionValue = string | 0;
         
     | 
| 
       186 
190 
     | 
    
         | 
| 
       187 
191 
     | 
    
         
             
            declare export class Resolution<+T: ResolutionValue>
         
     | 
| 
       188 
     | 
    
         
            -
              extends  
     | 
| 
       189 
     | 
    
         
            -
              implements  
     | 
| 
      
 192 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 193 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       190 
194 
     | 
    
         
             
            {
         
     | 
| 
       191 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 195 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       192 
196 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       193 
     | 
    
         
            -
              constructor(value: ValueWithDefault<T>): void;
         
     | 
| 
       194 
197 
     | 
    
         
             
              static create<T: ResolutionValue = ResolutionValue>(
         
     | 
| 
       195 
     | 
    
         
            -
                value: ValueWithDefault 
     | 
| 
      
 198 
     | 
    
         
            +
                value: ValueWithDefault,
         
     | 
| 
       196 
199 
     | 
    
         
             
              ): Resolution<T>;
         
     | 
| 
       197 
200 
     | 
    
         
             
            }
         
     | 
| 
       198 
201 
     | 
    
         
             
            declare export const resolution: $FlowFixMe;
         
     | 
| 
         @@ -200,27 +203,25 @@ declare export const resolution: $FlowFixMe; 
     | 
|
| 
       200 
203 
     | 
    
         
             
            type TimeValue = string | 0;
         
     | 
| 
       201 
204 
     | 
    
         | 
| 
       202 
205 
     | 
    
         
             
            declare export class Time<+T: TimeValue>
         
     | 
| 
       203 
     | 
    
         
            -
              extends  
     | 
| 
       204 
     | 
    
         
            -
              implements  
     | 
| 
      
 206 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 207 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       205 
208 
     | 
    
         
             
            {
         
     | 
| 
       206 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 209 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       207 
210 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       208 
     | 
    
         
            -
               
     | 
| 
       209 
     | 
    
         
            -
              static create<T: TimeValue = TimeValue>(value: ValueWithDefault<T>): Time<T>;
         
     | 
| 
      
 211 
     | 
    
         
            +
              static create<T: TimeValue = TimeValue>(value: ValueWithDefault): Time<T>;
         
     | 
| 
       210 
212 
     | 
    
         
             
            }
         
     | 
| 
       211 
213 
     | 
    
         
             
            declare export const time: $FlowFixMe;
         
     | 
| 
       212 
214 
     | 
    
         | 
| 
       213 
215 
     | 
    
         
             
            type TransformFunctionValue = string;
         
     | 
| 
       214 
216 
     | 
    
         | 
| 
       215 
217 
     | 
    
         
             
            declare export class TransformFunction<+T: TransformFunctionValue>
         
     | 
| 
       216 
     | 
    
         
            -
              extends  
     | 
| 
       217 
     | 
    
         
            -
              implements  
     | 
| 
      
 218 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 219 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       218 
220 
     | 
    
         
             
            {
         
     | 
| 
       219 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 221 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       220 
222 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       221 
     | 
    
         
            -
              constructor(value: ValueWithDefault<T>): void;
         
     | 
| 
       222 
223 
     | 
    
         
             
              static create<T: TransformFunctionValue = TransformFunctionValue>(
         
     | 
| 
       223 
     | 
    
         
            -
                value: ValueWithDefault 
     | 
| 
      
 224 
     | 
    
         
            +
                value: ValueWithDefault,
         
     | 
| 
       224 
225 
     | 
    
         
             
              ): TransformFunction<T>;
         
     | 
| 
       225 
226 
     | 
    
         
             
            }
         
     | 
| 
       226 
227 
     | 
    
         
             
            declare export const transformFunction: $FlowFixMe;
         
     | 
| 
         @@ -228,14 +229,13 @@ declare export const transformFunction: $FlowFixMe; 
     | 
|
| 
       228 
229 
     | 
    
         
             
            type TransformListValue = string;
         
     | 
| 
       229 
230 
     | 
    
         | 
| 
       230 
231 
     | 
    
         
             
            declare export class TransformList<T: TransformListValue>
         
     | 
| 
       231 
     | 
    
         
            -
              extends  
     | 
| 
       232 
     | 
    
         
            -
              implements  
     | 
| 
      
 232 
     | 
    
         
            +
              extends BaseCSSType
         
     | 
| 
      
 233 
     | 
    
         
            +
              implements CSSType<T>
         
     | 
| 
       233 
234 
     | 
    
         
             
            {
         
     | 
| 
       234 
     | 
    
         
            -
              +value: ValueWithDefault 
     | 
| 
      
 235 
     | 
    
         
            +
              +value: ValueWithDefault;
         
     | 
| 
       235 
236 
     | 
    
         
             
              +syntax: CSSSyntaxType;
         
     | 
| 
       236 
     | 
    
         
            -
              constructor(value: ValueWithDefault<T>): void;
         
     | 
| 
       237 
237 
     | 
    
         
             
              static create<T: TransformListValue = TransformListValue>(
         
     | 
| 
       238 
     | 
    
         
            -
                value: ValueWithDefault 
     | 
| 
      
 238 
     | 
    
         
            +
                value: ValueWithDefault,
         
     | 
| 
       239 
239 
     | 
    
         
             
              ): TransformList<T>;
         
     | 
| 
       240 
240 
     | 
    
         
             
            }
         
     | 
| 
       241 
241 
     | 
    
         
             
            declare export const transformList: $FlowFixMe;
         
     | 
| 
         @@ -9,12 +9,11 @@ var _leadingZero = _interopRequireDefault(require("./normalizers/leading-zero")) 
     | 
|
| 
       9 
9 
     | 
    
         
             
            var _quotes = _interopRequireDefault(require("./normalizers/quotes"));
         
     | 
| 
       10 
10 
     | 
    
         
             
            var _timings = _interopRequireDefault(require("./normalizers/timings"));
         
     | 
| 
       11 
11 
     | 
    
         
             
            var _whitespace = _interopRequireDefault(require("./normalizers/whitespace"));
         
     | 
| 
       12 
     | 
    
         
            -
            var _zeroDimensions = _interopRequireDefault(require("./normalizers/zero-dimensions"));
         
     | 
| 
       13 
12 
     | 
    
         
             
            var _detectUnclosedFns = _interopRequireDefault(require("./normalizers/detect-unclosed-fns"));
         
     | 
| 
       14 
13 
     | 
    
         
             
            var _postcssValueParser = _interopRequireDefault(require("postcss-value-parser"));
         
     | 
| 
       15 
14 
     | 
    
         
             
            var _convertCamelCaseValues = _interopRequireDefault(require("./normalizers/convert-camel-case-values"));
         
     | 
| 
       16 
15 
     | 
    
         
             
            function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
         
     | 
| 
       17 
     | 
    
         
            -
            const normalizers = [_detectUnclosedFns.default, _whitespace.default, _timings.default,  
     | 
| 
      
 16 
     | 
    
         
            +
            const normalizers = [_detectUnclosedFns.default, _whitespace.default, _timings.default, _leadingZero.default, _quotes.default, _convertCamelCaseValues.default];
         
     | 
| 
       18 
17 
     | 
    
         
             
            function normalizeValue(value, key, _ref) {
         
     | 
| 
       19 
18 
     | 
    
         
             
              let {
         
     | 
| 
       20 
19 
     | 
    
         
             
                useRemForFontSize
         
     | 
| 
         @@ -8,8 +8,8 @@ 
     | 
|
| 
       8 
8 
     | 
    
         
             
             */
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
            /**
         
     | 
| 
       11 
     | 
    
         
            -
             * Remove units in zero values, except when required: in angles and  
     | 
| 
       12 
     | 
    
         
            -
             * in which case make them consistent 0deg and  
     | 
| 
      
 11 
     | 
    
         
            +
             * Remove units in zero values, except when required: in angles, timings, fractions, and percentages,
         
     | 
| 
      
 12 
     | 
    
         
            +
             * in which case make them consistent 0deg, 0s, 0fr, and 0%.
         
     | 
| 
       13 
13 
     | 
    
         
             
             */
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
            declare function normalizeZeroDimensions(
         
     | 
| 
         @@ -8,6 +8,8 @@ var _postcssValueParser = _interopRequireDefault(require("postcss-value-parser") 
     | 
|
| 
       8 
8 
     | 
    
         
             
            function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
         
     | 
| 
       9 
9 
     | 
    
         
             
            const angles = ['deg', 'grad', 'turn', 'rad'];
         
     | 
| 
       10 
10 
     | 
    
         
             
            const timings = ['ms', 's'];
         
     | 
| 
      
 11 
     | 
    
         
            +
            const fraction = 'fr';
         
     | 
| 
      
 12 
     | 
    
         
            +
            const percentage = '%';
         
     | 
| 
       11 
13 
     | 
    
         
             
            function normalizeZeroDimensions(ast, _) {
         
     | 
| 
       12 
14 
     | 
    
         
             
              let endFunction = 0;
         
     | 
| 
       13 
15 
     | 
    
         
             
              ast.walk(node => {
         
     | 
| 
         @@ -28,6 +30,10 @@ function normalizeZeroDimensions(ast, _) { 
     | 
|
| 
       28 
30 
     | 
    
         
             
                  node.value = '0deg';
         
     | 
| 
       29 
31 
     | 
    
         
             
                } else if (timings.indexOf(dimension.unit) !== -1) {
         
     | 
| 
       30 
32 
     | 
    
         
             
                  node.value = '0s';
         
     | 
| 
      
 33 
     | 
    
         
            +
                } else if (dimension.unit === fraction) {
         
     | 
| 
      
 34 
     | 
    
         
            +
                  node.value = '0fr';
         
     | 
| 
      
 35 
     | 
    
         
            +
                } else if (dimension.unit === percentage) {
         
     | 
| 
      
 36 
     | 
    
         
            +
                  node.value = '0%';
         
     | 
| 
       31 
37 
     | 
    
         
             
                } else if (!endFunction) {
         
     | 
| 
       32 
38 
     | 
    
         
             
                  node.value = '0';
         
     | 
| 
       33 
39 
     | 
    
         
             
                }
         
     | 
| 
         @@ -8,8 +8,8 @@ 
     | 
|
| 
       8 
8 
     | 
    
         
             
             */
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
            /**
         
     | 
| 
       11 
     | 
    
         
            -
             * Remove units in zero values, except when required: in angles and  
     | 
| 
       12 
     | 
    
         
            -
             * in which case make them consistent 0deg and  
     | 
| 
      
 11 
     | 
    
         
            +
             * Remove units in zero values, except when required: in angles, timings, fractions, and percentages,
         
     | 
| 
      
 12 
     | 
    
         
            +
             * in which case make them consistent 0deg, 0s, 0fr, and 0%.
         
     | 
| 
       13 
13 
     | 
    
         
             
             */
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
            declare export default function normalizeZeroDimensions(
         
     | 
    
        package/package.json
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            {
         
     | 
| 
       2 
2 
     | 
    
         
             
              "name": "@stylexjs/shared",
         
     | 
| 
       3 
     | 
    
         
            -
              "version": "0. 
     | 
| 
      
 3 
     | 
    
         
            +
              "version": "0.6.0",
         
     | 
| 
       4 
4 
     | 
    
         
             
              "main": "lib/index.js",
         
     | 
| 
       5 
5 
     | 
    
         
             
              "repository": "https://www.github.com/facebook/stylex",
         
     | 
| 
       6 
6 
     | 
    
         
             
              "license": "MIT",
         
     | 
| 
         @@ -13,7 +13,7 @@ 
     | 
|
| 
       13 
13 
     | 
    
         
             
                "postcss-value-parser": "^4.1.0"
         
     | 
| 
       14 
14 
     | 
    
         
             
              },
         
     | 
| 
       15 
15 
     | 
    
         
             
              "devDependencies": {
         
     | 
| 
       16 
     | 
    
         
            -
                "@stylexjs/scripts": "0. 
     | 
| 
      
 16 
     | 
    
         
            +
                "@stylexjs/scripts": "0.6.0"
         
     | 
| 
       17 
17 
     | 
    
         
             
              },
         
     | 
| 
       18 
18 
     | 
    
         
             
              "jest": {
         
     | 
| 
       19 
19 
     | 
    
         
             
                "snapshotFormat": {
         
     |