# @bamboocss/is-valid-prop

## 1.45.4

## 1.45.3

## 1.45.2

## 1.45.1

## 1.45.0

## 1.44.1

## 1.44.0

## 1.43.1

## 1.43.0

## 1.42.0

### Patch Changes

- b078253: Stop copying `is-valid-prop` into the generator's artifacts.

  `postbuild` wrote `dist/index.mjs` to `packages/generator/src/artifacts/generated/is-valid-prop.mjs.json` for the JSX
  factory to import at runtime. The factory is gone, nothing has read the artifact since, and it was still being rebuilt
  and committed on every release.

## 1.41.1

## 1.41.0

## 1.40.1

## 1.40.0

## 1.39.1

## 1.39.0

## 1.38.0

## 1.37.13

## 1.37.12

## 1.37.11

## 1.37.10

## 1.37.9

## 1.37.8

## 1.37.7

## 1.37.6

## 1.37.5

## 1.37.4

## 1.37.3

## 1.37.2

## 1.37.1

## 1.37.0

## 1.36.5

## 1.36.4

## 1.36.3

## 1.36.2

## 1.36.1

## 1.36.0

## 1.35.5

## 1.35.4

## 1.35.3

## 1.35.2

## 1.35.1

## 1.35.0

## 1.34.1

## 1.34.0

## 1.33.0

## 1.32.0

## 1.31.0

## 1.30.1

## 1.30.0

## 1.29.0

## 1.28.1

## 1.28.0

## 1.27.0

## 1.26.0

## 1.25.0

## 1.24.0

## 1.23.0

## 1.22.0

## 1.21.0

## 1.20.4

## 1.20.3

## 1.20.2

## 1.20.1

## 1.20.0

## 1.19.0

## 1.18.0

## 1.17.3

## 1.17.2

## 1.17.1

## 1.17.0

## 1.16.1

## 1.16.0

## 1.15.0

## 1.14.0

## 1.13.2

## 1.13.1

## 1.13.0

## 1.12.3

## 1.12.2

## 1.12.1

## 1.12.0

## 1.11.5

## 1.11.4

### Patch Changes

- fix pre-commit hook leaving dirty state after commit

## 1.11.3

### Patch Changes

- fix shared package producing chunk files that break codegen output

## 1.11.2

### Patch Changes

- 0f49103: migrate build to tsdown
- migrate to tsdown

## 1.11.1

## 1.11.0

## 1.10.0

## 1.9.1

## 1.9.0

## 1.8.2

### Patch Changes

- 331d1a5: Update `csstype` from 3.1.3 to 3.2.3, which adds support for newer CSS properties including:
  - Anchor positioning: `anchorName`, `anchorScope`, `positionAnchor`, `positionArea`, `positionTry`,
    `positionTryFallbacks`, `positionTryOrder`, `positionVisibility`
  - Text wrapping: `textWrapMode`, `textWrapStyle`, `textSpacingTrim`
  - Form sizing: `fieldSizing`, `interpolateSize`

  Add support for the experimental [`corner-shape`](https://developer.mozilla.org/en-US/docs/Web/CSS/corner-shape) CSS
  property, which specifies the shape of a box's corners. Valid values include: `round`, `square`, `bevel`, `scoop`,
  `notch`, `squircle`, and `superellipse(<number>)`.

## 1.8.1

## 1.8.0

## 1.7.3

## 1.7.2

## 1.7.1

## 1.7.0

## 1.6.1

## 1.6.0

## 1.5.1

## 1.5.0

## 1.4.3

## 1.4.2

## 1.4.1

## 1.4.0

## 1.3.1

## 1.3.0

## 1.2.0

## 1.1.0

## 1.0.1

## 1.0.0

### Major Changes

- a3bcbea: Stable release of BambooCSS

  ### Style Context

  Add `createStyleContext` function to framework artifacts for React, Preact, Solid, and Vue frameworks

  ```tsx
  import { sva } from 'styled-system/css'
  import { createStyleContext } from 'styled-system/jsx'

  const card = sva({
    slots: ['root', 'label'],
    base: {
      root: {
        color: 'red',
        bg: 'red.300',
      },
      label: {
        fontWeight: 'medium',
      },
    },
    variants: {
      size: {
        sm: {
          root: {
            padding: '10px',
          },
        },
        md: {
          root: {
            padding: '20px',
          },
        },
      },
    },
    defaultVariants: {
      size: 'sm',
    },
  })

  const { withProvider, withContext } = createStyleContext(card)

  const CardRoot = withProvider('div', 'root')
  const CardLabel = withContext('label', 'label')
  ```

  Then, use like this:

  ```tsx
  <CardRoot size="sm">
    <CardLabel>Hello</CardLabel>
  </CardRoot>
  ```

## 0.54.0

## 0.53.7

## 0.53.6

## 0.53.5

## 0.53.4

## 0.53.3

## 0.53.2

## 0.53.1

## 0.53.0

### Minor Changes

- 5286731: Add support for recent baseline and experimental css properties:
  - **Size interpolation:** fieldSizing, interpolateSize
  - **Text rendering:** textWrapMode, textWrapStyle and textSpacingTrim
  - **[Experimental] Anchor positioning:** anchorName, anchorScope, positionAnchor, positionArea, positionTry,
    positionTryFallback, positionTryOrder, positionVisibility

## 0.52.0

## 0.51.1

## 0.51.0

## 0.50.0

## 0.49.0

## 0.48.1

## 0.48.0

## 0.47.1

## 0.47.0

## 0.46.1

## 0.46.0

## 0.45.2

## 0.45.1

## 0.45.0

## 0.44.0

## 0.43.0

## 0.42.0

## 0.41.0

## 0.40.1

## 0.40.0

## 0.39.2

## 0.39.1

## 0.39.0

## 0.38.0

## 0.37.2

## 0.37.1

## 0.37.0

## 0.36.1

## 0.36.0

### Minor Changes

- fabdabe: ## Changes

  When using `strictTokens: true`, if you didn't have `tokens` (or `semanticTokens`) on a given `Token category`, you'd
  still not be able to use _any_ values in properties bound to that category. Now, `strictTokens` will correctly only
  restrict properties that have values in their token category.

  Example:

  ```ts
  // bamboo.config.ts

  export default defineConfig({
    // ...
    strictTokens: true,
    theme: {
      extend: {
        colors: {
          primary: { value: 'blue' },
        },
        // borderWidths: {}, // ⚠️ nothing defined here
      },
    },
  })
  ```

  ```ts
  // app.tsx
  css({
    // ❌ before this PR, TS would throw an error as you are supposed to only use Tokens
    // even thought you don't have any `borderWidths` tokens defined !

    // ✅ after this PR, TS will not throw an error anymore as you don't have any `borderWidths` tokens
    // if you add one, this will error again (as it's supposed to)
    borderWidths: '123px',
  })
  ```

  ## Description
  - Simplify typings for the style properties.
  - Add the `csstype` comments for each property.

  You will now be able to see a utility or `csstype` values in 2 clicks !

  ## How

  Instead of relying on TS to infer the correct type for each properties, we now just generate the appropriate value for
  each property based on the config.

  This should make it easier to understand the type of each property and might also speed up the TS suggestions as
  there's less to infer.

## 0.35.0

## 0.34.3

## 0.34.2

## 0.34.1

## 0.34.0

## 0.33.0

## 0.32.1

## 0.32.0

## 0.31.0

## 0.30.2

## 0.30.1

## 0.30.0

## 0.29.1

## 0.29.0

## 0.28.0

## 0.27.3

## 0.27.2

## 0.27.1

## 0.27.0

### Minor Changes

- 84304901: Improve performance, mostly for the CSS generation by removing a lot of `postcss` usage (and plugins).

  ## Public changes:
  - Introduce a new `config.lightningcss` option to use `lightningcss` (currently disabled by default) instead of
    `postcss`.
  - Add a new `config.browserslist` option to configure the browserslist used by `lightningcss`.
  - Add a `--lightningcss` flag to the `bamboo` and `bamboo cssgen` command to use `lightningcss` instead of `postcss`
    for this run.

  ## Internal changes:
  - `markImportant` fn from JS instead of walking through postcss AST nodes
  - use a fork of `stitches` `stringify` function instead of `postcss-css-in-js` to write the CSS string from a JS
    object
  - only compute once `TokenDictionary` properties
  - refactor `serializeStyle` to use the same code path as the rest of the pipeline with `StyleEncoder` / `StyleDecoder`
    and rename it to `transformStyles` to better convey what it does

## 0.26.2

## 0.26.1

## 0.26.0

## 0.25.0

## 0.24.2

## 0.24.1

## 0.24.0

## 0.23.0

## 0.22.1

## 0.22.0

## 0.21.0

## 0.20.1

## 0.20.0

## 0.19.0

## 0.18.3

## 0.18.2

## 0.18.1

## 0.18.0

## 0.17.5

## 0.17.4

## 0.17.3

## 0.17.2

## 0.17.1

## 0.17.0

## 0.16.0

## 0.15.5

## 0.15.4

## 0.15.3

## 0.15.2

## 0.15.1

## 0.15.0

## 0.14.0

## 0.13.1

## 0.13.0

## 0.12.2

## 0.12.1

## 0.12.0

## 0.11.1

### Patch Changes

- dfb3f85f: Add missing svg props types

## 0.11.0

## 0.10.0

### Patch Changes

- 24e783b3: Reduce the overall `outdir` size, introduce the new config `jsxStyleProps` option to disable style props and
  further reduce it.

  `config.jsxStyleProps`:
  - When set to 'all', all style props are allowed.
  - When set to 'minimal', only the `css` prop is allowed.
  - When set to 'none', no style props are allowed and therefore the `jsxFactory` will not be usable as a component:
    - `<styled.div />` and `styled("div")` aren't valid
    - but the recipe usage is still valid `styled("div", { base: { color: "red.300" }, variants: { ...} })`

- 6d4eaa68: Refactor code

## 0.9.0

## 0.8.0

## 0.7.0

## 0.6.0

## 0.5.1

## 0.5.0

## 0.4.0

### Patch Changes

- 54a8913c: Fix issue where patterns that include css selectors doesn't work in JSX

## 0.3.2

## 0.3.1

### Patch Changes

- efd79d83: Baseline release for the launch

## 0.3.0

## 0.0.2

### Patch Changes

- fb40fff2: Initial release of all packages
  - Internal AST parser for TS and TSX
  - Support for defining presets in config
  - Support for design tokens (core and semantic)
  - Add `outExtension` key to config to allow file extension options for generated javascript. `.js` or `.mjs`
  - Add `jsxElement` option to patterns, to allow specifying the jsx element rendered by the patterns.
