All notable changes to this project will be documented in this file.
See the Changesets for the latest changes.
- Fix postcss issue where
@layer reset, base, tokens, recipes, utilities
check was too strict - Fix parser issue in
.vue
files, make the traversal check nested elements instead of only checking the 1st level - Fix issue where slash could not be used in token name
- Improve module detection and hot module reloading in the PostCSS plugin when external files are changed
- Fix issue where
splitVariantProps
in cva doesn't resolve the correct types - Fix issue where
zIndex
tokens are not connected to zIndex utility
- Refactor
transition
utility to improve DX of adding transition. Transitions will now add a default transition property, timing function and duration. This allows you to add transitions with a single property.
<div className={css({ transition: 'background' })}>Content</div>
This will generate the following css:
.transition_background {
transition-property: background, background-color;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
}
- Fix type issue with the
definePattern
function - Fix issue where
panda cssgen --outfile
doesn't extract files to chunks before bundling them into the css out file - Fix issue where
gridRows
has the wrongclassName
- Fix issue where
gridItem
pattern did not use thecolStart
androwStart
values - Fix issue where unitless grid properties were converted to pixel values
- Fix issue where
_even
and_odd
map to incorrect selectors - Fix issue where
--config
flag doesn't work for most commands. - Fix issue where
css
prop was not extracted correctly in JSX elements
- Add negative fraction values to
translateX
andtranslateY
utilities - Export
isCssProperty
helper function fromstyled-system/jsx
entrypoint - Add support for using multiple config rcipes in the same component
-
Fix issue where
panda studio
command doesn't work outside of panda's monorepo. -
Fix parser issue where operation tokens like
1/2
was not detected. -
Improved Svelte file parsing algorithm to support more edge cases.
-
Improved config dependency and imported file detection.
- Add support for
--outfile
flag in thecssgen
command.
panda cssgen --outfile dist/styles.css
- Add feature where
config.staticCss.recipes
can now use [*
] to generate all variants of a recipe.
staticCss: {
recipes: {
button: ['*']
}
}
- Refactored all conditions to use
:is
selector to improve specificity and reduce the reliance on css order.
- Fix issue where escaping classname doesn't work when class starts with number.
-
Add support for tagged template literal version.
This features is pure css approach to writing styles, and can be a great way to migrate from styled-components and emotion.
Set the
syntax
option totemplate-literal
in the panda config to enable this feature.// panda.config.ts export default defineConfig({ //... syntax: 'template-literal', })
For existing projects, you might need to run the
panda codegen --clean
You can also use the
--syntax
option to specify the syntax type when using the CLI.panda init -p --syntax template-literal
To get autocomplete for token variables, consider using the CSS Var Autocomplete extension.
- Update the default color palette to match Tailwind's new palette.
- Fix issue here divider pattern generated incorrect css in horizontal orientation
- Fix issue where aspect ratio css property adds
px
- Fix placeholder condition to map to
&::placeholder
- Fix issue where patterns that include css selectors doesn't work in JSX
- Fix issue where the
panda ship
command does not write to the correct path
-
Experimental support for native
.vue
files and.svelte
files -
Add types for supported at-rules (
@media
,@layer
,@container
,@supports
, and@page
) -
Add webkit polyfill for common properties to reduce the need for
autoprefixer
-
Add support for watch mode in codegen command via the
--watch
or-w
flag.panda codegen --watch
-
Add support for disabling shorthand props
import { defineConfig } from '@pandacss/dev' export default defineConfig({ // ... shorthands: false, })
- Add
auto
value where neccessary to base utilities. - Add
0
value to default spacing tokens to allow forstrictTokens
mode.
-
Add support for config path in cli commands via the
--config
or-c
flag.panda init --config ./pandacss.config.js
-
Add support for setting config path in postcss
module.exports = { plugins: [ require('@pandacss/postcss')({ configPath: './path/to/panda.config.js', }), ], }
- Remove
bundledDependencies
frompackage.json
to fix NPM resolution
Baseline Release 🎉