<commit_before>## motion-css

Turns objects into nice CSS styles. Has a few helpers:

- Arrays to strings:
```js
{
  border: [1, 'solid', '#eee'], // 1px solid #eee
  border: [1, #eee'], // defaults (solid)
  color: [0, 0, 0, 0.5], // rgba(0,0,0,0.5)
}
```
- Transform objects:
```js
{
  transform: { x: 0, y: 10, z: 0, rotate: '100deg' }
}
```

- Color objects:
```js
{
  background: [0, 255, 0]
}
```

- Converts css-able functions/objects:
```js
{
  background: chroma('#fff') // will call .css() automatically
}
```

- Recurses into media queries + & selectors
```js
{
  '@media screen': { ... }
}
```

```js
{
  '& child': { ... }
}
```

- Shorthands
```js
{
  borderLeftRadius: ['borderTopLeftRadius', 'borderBottomLeftRadius'],
  borderRightRadius: ['borderTopRightRadius', 'borderBottomRightRadius'],
  borderBottomRadius: ['borderBottomLeftRadius', 'borderBottomRightRadius'],
  borderTopRadius: ['borderTopRightRadius', 'borderTopLeftRadius'],
}
```
- Comma separations for boxShadow and transition:
```js
{
  boxShadow: [{ x: 5, y: 5, blur: 2, spread: 5, color: [0,0,0,0.1] }, /* ... */]
}
```

- Object to value:
```js
{
  background: {
    color: 'green',
    image: 'url(image.jpg)',
    position: [0, 0],
    repeat: 'no-repeat'
  }
}```
<commit_msg>:memo: more bugs<commit_after>## motion-css

Turns objects into nice CSS styles. Has a few helpers:

- Arrays to strings:
```js
{
  border: [1, 'solid', '#eee'], // 1px solid #eee
  border: [1, '#eee'], // defaults (solid)
  color: [0, 0, 0, 0.5], // rgba(0,0,0,0.5)
}
```
- Transform objects:
```js
{
  transform: { x: 0, y: 10, z: 0, rotate: '100deg' }
}
```

- Color objects:
```js
{
  background: [0, 255, 0]
}
```

- Converts css-able functions/objects:
```js
{
  background: chroma('#fff') // will call .css() automatically
}
```

- Recurses into media queries + & selectors
```js
{
  '@media screen': { ... }
}
```

```js
{
  '& child': { ... }
}
```

- Shorthands
```js
{
  borderLeftRadius: ['borderTopLeftRadius', 'borderBottomLeftRadius'],
  borderRightRadius: ['borderTopRightRadius', 'borderBottomRightRadius'],
  borderBottomRadius: ['borderBottomLeftRadius', 'borderBottomRightRadius'],
  borderTopRadius: ['borderTopRightRadius', 'borderTopLeftRadius'],
}
```
- Comma separations for boxShadow and transition:
```js
{
  boxShadow: [{ x: 5, y: 5, blur: 2, spread: 5, color: [0,0,0,0.1] }, /* ... */]
}
```

- Object to value:
```js
{
  background: {
    color: 'green',
    image: 'url(image.jpg)',
    position: [0, 0],
    repeat: 'no-repeat'
  }
}```

{'fraction_non_alphanumeric': 0.21586424625098657, 'fraction_numerical': 0.028413575374901343, 'mean_word_length': 3.7383177570093458, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4013799', 'n_tokens_mistral': 1023, 'n_tokens_neox': 944, 'n_words': 240}