diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json index 0d1db51..e1c5c8a 100644 --- a/.eslintrc-auto-import.json +++ b/.eslintrc-auto-import.json @@ -20,6 +20,7 @@ "WritableComputedRef": true, "asyncComputed": true, "autoResetRef": true, + "componentSections": true, "computed": true, "computedAsync": true, "computedEager": true, @@ -301,6 +302,7 @@ "useWindowScroll": true, "useWindowSize": true, "utilityColors": true, + "utilityGroups": true, "watch": true, "watchArray": true, "watchAtMost": true, diff --git a/CHANGELOG.md b/CHANGELOG.md index db038cc..510fad3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,40 @@ All notable changes to this project will be documented in this file. +## [0.1.31] - 2026-10-12 + +### Added + +* Container queries. The `@container` class sets `container-type: inline-size`, and the utilities that lay a block out take a container prefix, the name of a step after an `@`: `@md:flex-row` applies when the nearest `@container` above the element is at least 28rem wide, and never when there is none. The steps are the ones of Tailwind CSS, `@xs:` 20rem, `@sm:` 24rem, `@md:` 28rem, `@lg:` 32rem, `@xl:` 36rem, `@xxl:` 42rem and `@xxxl:` 48rem, set by `$container-breakpoints`, and they reach display, flex direction and wrap, the justify and align utilities of content and items, `grid-cols-`, `col-` and text align: 70 classes per step, 2 KB of `volver.css` once gzipped, where giving them to every responsive utility would have added about 570 KB before compression. A container class is emitted after the responsive classes of its utility, so it wins when both apply. `spread-map-into-utilities` takes the steps in a `$cqs` argument, `$container-breakpoints: ()` emits none, and `cq-up`, a shorthand for `container-breakpoint-up`, wraps any rule in the container query of a step; an unknown step, or one of 0, which would emit the base classes a second time after the responsive ones, stops the compilation. Containing the inline size stops an element from taking its width from its content, so `@container` belongs on a block that fills its parent, a card or a column, and collapses an `inline-flex` or a flex item with no basis to nothing. For the same reason no component turns itself into a container. +* Open and close transitions on the native elements, with no script. The content of `vv-accordion` grows from 0 to its height and back: its `::details-content` transitions `block-size` to `auto` through `interpolate-size`, and `content-visibility` with `allow-discrete`, so the content stays painted until the closing ends. A browser without them, Safari and Firefox today, opens it at once as before. A `vv-popover` with `popover` fades in from a `@starting-style` and fades out with `display` and `overlay` held by `allow-discrete` until the fade ends, where the browser holds them: Safari 17.6 fades it in and hides it at once, as before. One shown without `popover` does not fade. The closed panel takes its opacity of 0 from `[popover]:not(:popover-open)`, which a browser without the Popover API (Safari 16) drops: there the element is shown as it is, and an opacity on `[popover]` alone would have left it invisible and still in the way of the pointer. A `vv-dialog` opened with `showModal()` fades in and closes at once. A fade out would need `allow-discrete` on the closed dialog, and `@volverjs/ui-vue` hides its dialog with an inline `display: none` and closes it in the same task: the dialog would stay on the page for 300ms after every close, invisible and in the way of the pointer. The Vue transitions of the dialog run as before. Every duration reads the duration tokens, which are 0s under reduced motion. +* `details-content` is a pseudo-element a component map can style. It was missing from the list the generator checks, which dropped the rule and still declared its custom properties, and it gets no `content: ''` of its own: it wraps content of the page instead of generating a box. +* `llms.txt` and `llms-full.txt` on the documentation site, in the format of llmstxt.org. The index links the agent skill and every page of the styleguide with its description; the full file is the skill, the overview and its four references, which is written for a model and checked against the compiled CSS, while the pages are built from live examples that read as noise once flattened. The skill is published next to them, under `skills/volverjs-style/`, so the links between its files keep working. + +### Changed + +* `--rounded` is the base of the radius scale. `--rounded-sm` to `--rounded-xxxl` are declared as `calc(var(--rounded) * )`, the ratio taken from `$border-radius` at compile time, so the computed values do not move while `:root, :host, .theme { --rounded: 0.375rem }` now rescales every corner of the utilities and of the components, where before it changed the `rounded` step alone. The steps are computed where they are declared, on the root and on every `.theme`, so a section with the `theme` class can carry a scale of its own. `none` and `full` keep their value, as does any step listed in the new `$border-radius-fixed` or whose unit differs from the one of `rounded`; a pill in px over a base in px has to be listed there. A script that reads `--rounded-lg` through `getPropertyValue` gets the `calc()` instead of `0.5rem`. + +### Fixed + +* `.container` was 0px wide on a viewport narrower than 360px, with its content spilling out of it. Its `max-width` reads `--breakpoint-value`, which the props set at each breakpoint to the width it starts at, and the first breakpoint, `xxs`, starts at 0. The token keeps that value, which is true of the breakpoint and is what a script reading it gets. Instead, the container rule now takes the whole width up to the next breakpoint, through a media query for every breakpoint that starts at 0. In `dist/` the `.container` rule gains `@media (width<=359.98px)` with `max-width: 100%`, and nothing else moves. +* The sizing classes walked into the dynamic spacing map, which holds the value of each size at each breakpoint, and emitted a class per entry: `.w-xs-xxs`, `.h-md-sm`, `.max-w-xl-lg` and so on, for `w-`, `h-`, `max-w-`, `max-h-`, `min-w-` and `min-h-`. Each read a token nothing declares, with a unitless fallback (`var(--spacing-xs-xxs, 6)`), which is invalid, so the class reset the property instead of setting it. Only `sm` and `lg` came out with a bare name, because they are also the names of two breakpoints: `.w-sm` and `.w-lg` read the right token, still with the unitless fallback. The recursion also ran the loop over the breakpoints again for every breakpoint, so about half of the rules were duplicates. The classes now read the dynamic tokens the way the spacing, gap and inset utilities do, with one class per size, from `w-xs` to `w-xl` for each of the six prefixes and their responsive variants, and the token resolves the size for the viewport. `max-w-md` is therefore 12 to 16px, not the container width that Tailwind gives the name: the skill says so. In `dist/`, 624 class names that did nothing go away and 144 come in. `utilities/sizing.css` drops from 529 kB to 173 kB, and `volver.css` from 1425 kB to 1071 kB, 120.3 kB to 113.2 kB gzipped. +* The `duration-` and `delay-` classes wrote their value, `.duration-300` as `transition-duration: .3s`, while the duration tokens are `0s` unless the user allows motion, so a transition set by a class kept moving for a user who had asked for less motion. The classes now read the tokens, with the value as a fallback: `var(--duration-300, .3s)`. A delay reads the same duration tokens and drops to 0s with the preference, as the transitions of the components do. The shadow, opacity, blur, brightness, contrast, saturate, backdrop blur, `transition-property-` and `ease-` classes read their tokens the same way, so a token set on the page, `--shadow-md` or `--opacity-50`, reaches the classes as it already reached the components. + + A shadow token is written with `var(--color-shadow)`, which resolves where the token is declared, on the root and on every `.theme`. A `--color-shadow` set on another element no longer recolours the shadow classes inside it, which is how the shadows of the components already behaved. + + Reading the token also renames the default backdrop blur, because the generator gives the bare class name to the key that matches the token. `.backdrop-blur-blur` is now `.backdrop-blur`, like `.blur`, and the old name is kept on the same rule. + + In `dist/` the declarations of these classes change and no other rule moves. Every token they read is declared in `props.css`. +* The alias that styles a plain `div` as the list of `vv-dropdown` matched `[role="list-box"]`, which is not an ARIA role, so a `
` without the `vv-dropdown__list` class was left unstyled. It reads `[role="listbox"]` now. `VvDropdown` of `@volverjs/ui-vue` puts the class on its list and renders as before. In `dist/` the 12 rules of the list change their selector and none of their declarations. +* `scheme`, the `color-scheme` of the theme, is in the map of the colors, and came out as `.bg-scheme`, `.text-scheme`, `.border-scheme` and `.decoration-scheme`, which wrote `light` as a color. The color utilities leave it out, as they leave out `tint`, and `--color-scheme` stays declared. In `dist/` the four rules go away. + +* A nested map in `spread-map-into-utilities` was walked with every breakpoint under the prefix of the current one: at the first, of 0, it emitted the prefixed classes with no media query, and it emitted every rule of the nested map once per breakpoint. The recursion now takes the current breakpoint alone. No map of the library reaches the branch since the sizing classes stopped walking the dynamic spacing map, above, so `dist/` does not move; before that the sizing classes gave 630 classes such as `.xs:w-sm` that applied at every width and 4,410 identical copies of the others, and an application that spreads a nested map of its own with breakpoints still did. +* A `transition` declared by a state or a modifier of a block that has Vue transitions shares its name with the `transition` map of the block, which the generator took for a declaration: it reassigned a `--vv-*-transition` that no rule reads, and the transition never applied. A map in the block is no longer taken for a declaration. No component reached the branch before the fade in of `vv-dialog`. +* The sitemap of the documentation listed every page without the `/style` of the site, `https://volverjs.github.io/components/accordion` instead of `https://volverjs.github.io/style/components/accordion`: the routes are absolute, so they replaced the path of the hostname. The sitemap is now generated with `basePath: 'style'`, and `robots.txt` still points to `/style/sitemap.xml`. +* The color swatch of the readable check, on the colors page of the documentation, sat 16px below the fields next to it and was 8px shorter than them. It was aligned to the end of the row, which includes the `--input-gap` margin each field keeps under its wrapper, and it was 44px tall where a field is `--input-min-height`, 52px. The swatch now takes that margin and that height from the same tokens, so it lines up with the wrapper of the fields and stays lined up when a theme changes them. + +`design-tokens.json` and the `exports` map do not change. + ## [0.1.30] - 2026-10-07 ### Added diff --git a/README.md b/README.md index 796e74e..ca926de 100644 --- a/README.md +++ b/README.md @@ -192,5 +192,7 @@ context.$vv-button: map.deep-merge( ## Documentation To learn more about `@volverjs/style`, check [its documentation](https://volverjs.github.io/style). +For coding agents, the documentation publishes [`llms.txt`](https://volverjs.github.io/style/llms.txt), an index of its pages, and [`llms-full.txt`](https://volverjs.github.io/style/llms-full.txt), the whole reference of the [agent skill](skills/volverjs-style) in one file. The skill installs with `npx skills add volverjs/style`. + ## License [MIT](http://opensource.org/licenses/MIT) diff --git a/auto-imports.d.ts b/auto-imports.d.ts index 4496fcd..2089552 100644 --- a/auto-imports.d.ts +++ b/auto-imports.d.ts @@ -11,6 +11,7 @@ declare global { const EffectScope: typeof import('vue').EffectScope const asyncComputed: typeof import('@vueuse/core').asyncComputed const autoResetRef: typeof import('@vueuse/core').autoResetRef + const componentSections: typeof import('./docs/settings/menuSections.js').componentSections const computed: typeof import('vue').computed const computedAsync: typeof import('@vueuse/core').computedAsync const computedEager: typeof import('@vueuse/core').computedEager @@ -295,6 +296,7 @@ declare global { const useWindowScroll: typeof import('@vueuse/core').useWindowScroll const useWindowSize: typeof import('@vueuse/core').useWindowSize const utilityColors: typeof import('./docs/utils/utilityColors.js').utilityColors + const utilityGroups: typeof import('./docs/settings/menuSections.js').utilityGroups const watch: typeof import('vue').watch const watchArray: typeof import('@vueuse/core').watchArray const watchAtMost: typeof import('@vueuse/core').watchAtMost @@ -327,6 +329,7 @@ declare module 'vue' { readonly EffectScope: UnwrapRef readonly asyncComputed: UnwrapRef readonly autoResetRef: UnwrapRef + readonly componentSections: UnwrapRef readonly computed: UnwrapRef readonly computedAsync: UnwrapRef readonly computedEager: UnwrapRef @@ -608,6 +611,7 @@ declare module 'vue' { readonly useWindowScroll: UnwrapRef readonly useWindowSize: UnwrapRef readonly utilityColors: UnwrapRef + readonly utilityGroups: UnwrapRef readonly watch: UnwrapRef readonly watchArray: UnwrapRef readonly watchAtMost: UnwrapRef diff --git a/docs/components/PresetOutlinedFields.vue b/docs/components/PresetOutlinedFields.vue index 7205ce1..6315f8c 100644 --- a/docs/components/PresetOutlinedFields.vue +++ b/docs/components/PresetOutlinedFields.vue @@ -23,21 +23,25 @@ @use '@/layers'; // The keys of `$after` whose value is not the one in `$before`, nested - // maps compared key by key + // maps compared key by key. Written without `@else`: stylelint, which + // SonarCloud runs on the styles of a component, validates `@else` as the + // at-rule of CSS Conditional 5, whose syntax refers to an undefined + // ``, and the whole file fails to parse. @function -changed($before, $after) { $result: (); @each $key, $value in $after { $old: map.get($before, $key); + $change: $value; + $changed: $value != $old; @if meta.type-of($value) == 'map' and meta.type-of($old) == 'map' { - $nested: -changed($old, $value); + $change: -changed($old, $value); + $changed: list.length($change) > 0; + } - @if list.length($nested) > 0 { - $result: map.set($result, $key, $nested); - } - } @else if $value != $old { - $result: map.set($result, $key, $value); + @if $changed { + $result: map.set($result, $key, $change); } } @@ -51,8 +55,8 @@ .docs-preset-outlined-fields { // The `--input-*` tokens the preset changes, declared on this element // instead of the root. The ones it leaves alone, such as the colours - // the dark theme sets for `valid` and `invalid`, keep coming from the - // root, as they do in a build with the preset. + // of `valid` and `invalid`, keep coming from the root, as they do in a + // build with the preset. @include ctx.layer(props, ctx.$use-css-layers, ctx.$layer-prefix) { @include ctx.spread-map-into-props( $map: -changed($-default-input, ctx.$input), diff --git a/docs/components/ReadableCheck.vue b/docs/components/ReadableCheck.vue index bd122d0..7f217ad 100644 --- a/docs/components/ReadableCheck.vue +++ b/docs/components/ReadableCheck.vue @@ -156,11 +156,18 @@ class="font-mono" />
+ + class="self-end p-0 border-0 rounded cursor-pointer" + style=" + inline-size: var(--input-min-height); + block-size: var(--input-min-height); + margin-block-end: var(--input-gap); + " />
\ No newline at end of file + + +### Rescale the corners +`--rounded` is the base of the scale: the other steps are declared as a multiple of it, so one declaration rescales every corner of the utilities and of the components. `none` and `full` keep their value. + +```css +:root, :host, .theme { + --rounded: 0.375rem; /* sm 0.1875rem, lg 0.75rem, xxl 1.5rem */ +} +``` + +The steps are computed where they are declared, on the root and on every `.theme` element, so a section gets its own scale with the `theme` class: + +```html +
+ +
+``` + +In SCSS the ratios come from `$border-radius` at compile time. A step that is not a size, like a pill, goes in `$border-radius-fixed` to keep its own value: + +```scss +@use '@volverjs/style/scss/context' with ( + $border-radius: (none: 0px, sm: 2px, rounded: 4px, lg: 8px, pill: 9999px, full: 9999px), + $border-radius-fixed: (none, pill, full) +); +``` diff --git a/docs/contents/utilities/effects/box-shadow.md b/docs/contents/utilities/effects/box-shadow.md index 89ccf6f..5c30d86 100644 --- a/docs/contents/utilities/effects/box-shadow.md +++ b/docs/contents/utilities/effects/box-shadow.md @@ -3,7 +3,7 @@ title: Box Shadow description: Utilities for controlling the box shadow of an element. customProperties: true --- - +
diff --git a/docs/contents/utilities/effects/opacity.md b/docs/contents/utilities/effects/opacity.md index 62a1f33..c09918b 100644 --- a/docs/contents/utilities/effects/opacity.md +++ b/docs/contents/utilities/effects/opacity.md @@ -4,7 +4,7 @@ description: Utilities for controlling the opacity of an element. customProperties: true --- - +
diff --git a/docs/contents/utilities/filters/backdrop-blur.md b/docs/contents/utilities/filters/backdrop-blur.md index 130fa93..a5b0e66 100644 --- a/docs/contents/utilities/filters/backdrop-blur.md +++ b/docs/contents/utilities/filters/backdrop-blur.md @@ -1,9 +1,14 @@ --- title: Backdrop Blur description: Utilities for blurring what is behind an element. +customProperties: true --- -The element needs a background that lets what is behind it show through, such as a translucent surface. The class for the default 8px is `.backdrop-blur-blur`; there is no bare `.backdrop-blur`. +The element needs a background that lets what is behind it show through, such as a translucent surface. The class for the default 8px is `.backdrop-blur`, like `.blur`; `.backdrop-blur-blur`, its earlier name, still works. The classes read the blur tokens, the same as the [blur](/style/utilities/filters/blur) utilities.
- + + +
diff --git a/docs/contents/utilities/filters/blur.md b/docs/contents/utilities/filters/blur.md index 7ccbc02..578bcfa 100644 --- a/docs/contents/utilities/filters/blur.md +++ b/docs/contents/utilities/filters/blur.md @@ -4,5 +4,5 @@ description: Utilities for controlling the blur of an element. customProperties: true ---
- +
\ No newline at end of file diff --git a/docs/contents/utilities/filters/brightness.md b/docs/contents/utilities/filters/brightness.md index 744e0fb..54138fa 100644 --- a/docs/contents/utilities/filters/brightness.md +++ b/docs/contents/utilities/filters/brightness.md @@ -4,5 +4,5 @@ description: Utilities for controlling the brightness of an element. customProperties: true ---
- +
\ No newline at end of file diff --git a/docs/contents/utilities/filters/contrast.md b/docs/contents/utilities/filters/contrast.md index 3a49fe5..4531e51 100644 --- a/docs/contents/utilities/filters/contrast.md +++ b/docs/contents/utilities/filters/contrast.md @@ -4,5 +4,5 @@ description: Utilities for applying contrast filters to an element. customProperties: true ---
- +
\ No newline at end of file diff --git a/docs/contents/utilities/filters/saturation.md b/docs/contents/utilities/filters/saturation.md index 4bf7a4f..e953815 100644 --- a/docs/contents/utilities/filters/saturation.md +++ b/docs/contents/utilities/filters/saturation.md @@ -4,5 +4,5 @@ description: Utilities for controlling the saturation of an element. customProperties: true ---
- +
\ No newline at end of file diff --git a/docs/contents/utilities/flex-grid/align-content.md b/docs/contents/utilities/flex-grid/align-content.md index f28607c..c393cf6 100644 --- a/docs/contents/utilities/flex-grid/align-content.md +++ b/docs/contents/utilities/flex-grid/align-content.md @@ -2,6 +2,7 @@ title: Align Content description: Utilities for controlling how rows are positioned in multi-row flex and grid containers. breakpoints: true +containerQueries: true --- ### Align Content The `align-content` property aligns a flex container's lines within when there is extra space in the cross-axis, similar to how `justify-content` aligns individual items within the main-axis. diff --git a/docs/contents/utilities/flex-grid/align-items.md b/docs/contents/utilities/flex-grid/align-items.md index 060351e..e6be9cc 100644 --- a/docs/contents/utilities/flex-grid/align-items.md +++ b/docs/contents/utilities/flex-grid/align-items.md @@ -2,6 +2,7 @@ title: Align Items description: Utilities for controlling how flex and grid items are positioned along a container's cross axis. breakpoints: true +containerQueries: true --- ### Align Items The `align-items` property sets the default `align-self` of every item, placing it on the cross axis of its line or of its grid area. diff --git a/docs/contents/utilities/flex-grid/flex-direction.md b/docs/contents/utilities/flex-grid/flex-direction.md index b7f7d7f..826240b 100644 --- a/docs/contents/utilities/flex-grid/flex-direction.md +++ b/docs/contents/utilities/flex-grid/flex-direction.md @@ -2,6 +2,7 @@ title: Flex Direction description: Utilities for controlling the direction of flex items. breakpoints: true +containerQueries: true --- Flex direction utilities are used to control the direction of flex items. They can be used to change the direction of flex items from row to column, or vice versa. diff --git a/docs/contents/utilities/flex-grid/flex-wrap.md b/docs/contents/utilities/flex-grid/flex-wrap.md index a033a85..d9e7e0e 100644 --- a/docs/contents/utilities/flex-grid/flex-wrap.md +++ b/docs/contents/utilities/flex-grid/flex-wrap.md @@ -2,6 +2,7 @@ title: Flex Wrap description: Utilities for controlling how flex items wrap. breakpoints: true +containerQueries: true --- Flex wrap utilities are used to control how flex items wrap. They can be used to change the wrapping behavior of flex items from wrapping to not wrapping, or vice versa. diff --git a/docs/contents/utilities/flex-grid/grid-column-start-end.md b/docs/contents/utilities/flex-grid/grid-column-start-end.md index 5135ca9..fb675de 100644 --- a/docs/contents/utilities/flex-grid/grid-column-start-end.md +++ b/docs/contents/utilities/flex-grid/grid-column-start-end.md @@ -2,11 +2,14 @@ title: Grid Column Start / End description: Utilities for controlling how elements are sized and placed across grid columns. breakpoints: true +containerQueries: true --- Column start and end utilities are used to control how elements are sized and placed across grid columns. They can be used to change the size and placement of elements from the default to a specific size and placement, or vice versa. +The `col-*` classes above also take a container prefix, `@md:col-span-6`. The `col-start-*` and `col-end-*` classes below take the breakpoint prefix only. + ### Column Start The column start utilities are used to control the starting column of an element. They can be used to change the starting column of an element from the default to a specific column, or vice versa. diff --git a/docs/contents/utilities/flex-grid/grid-template-columns.md b/docs/contents/utilities/flex-grid/grid-template-columns.md index 57240cb..8319809 100644 --- a/docs/contents/utilities/flex-grid/grid-template-columns.md +++ b/docs/contents/utilities/flex-grid/grid-template-columns.md @@ -2,6 +2,7 @@ title: Grid Template Columns description: Utilities for specifying the columns in a grid layout. breakpoints: true +containerQueries: true --- Grid template columns utilities are used to specify the columns in a grid layout. They can be used to change the number of columns from the default to a specific number. diff --git a/docs/contents/utilities/flex-grid/justify-content.md b/docs/contents/utilities/flex-grid/justify-content.md index 3de5be3..e5927df 100644 --- a/docs/contents/utilities/flex-grid/justify-content.md +++ b/docs/contents/utilities/flex-grid/justify-content.md @@ -2,6 +2,7 @@ title: Justify Content description: Utilities for controlling how flex and grid items are positioned along a container's main axis. breakpoints: true +containerQueries: true --- The `justify-content` property aligns flex items along the main axis of the current line of the flex container. It helps distribute extra free space left over when either all the flex items on a line are inflexible, or are flexible but have reached their maximum size. It also exerts some control over the alignment of items when they overflow the line. diff --git a/docs/contents/utilities/flex-grid/justify-items.md b/docs/contents/utilities/flex-grid/justify-items.md index 64cea32..50fa76d 100644 --- a/docs/contents/utilities/flex-grid/justify-items.md +++ b/docs/contents/utilities/flex-grid/justify-items.md @@ -2,6 +2,7 @@ title: Justify Items description: Utilities for controlling how grid items are aligned along their inline axis. breakpoints: true +containerQueries: true --- The `justify-items` property sets the default `justify-self` of every grid item, placing it on the inline axis of its grid area. Flex containers ignore it. diff --git a/docs/contents/utilities/layout/container.md b/docs/contents/utilities/layout/container.md index 105b08b..803a4cc 100644 --- a/docs/contents/utilities/layout/container.md +++ b/docs/contents/utilities/layout/container.md @@ -3,7 +3,7 @@ title: Container description: Utilities for fixing an element's width to the current breakpoint. --- -`.container` sets `width: 100%` and `max-width: var(--breakpoint-value, 100%)`. `--breakpoint-value` holds the value of the breakpoint the viewport has reached, so the container snaps to the width of the current breakpoint, as the table shows. +`.container` sets `width: 100%` and `max-width: var(--breakpoint-value, 100%)`. `--breakpoint-value` holds the value of the breakpoint the viewport has reached, so the container snaps to the width of the current breakpoint, as the table shows. Below `xs`, where the first breakpoint starts at 0, the container takes the whole width.
diff --git a/docs/contents/utilities/layout/display.md b/docs/contents/utilities/layout/display.md index 84d7727..485d3d3 100644 --- a/docs/contents/utilities/layout/display.md +++ b/docs/contents/utilities/layout/display.md @@ -2,10 +2,11 @@ title: Display description: Utilities for controlling the display box type of an element. breakpoints: true +containerQueries: true --- ### Display without breakpoints -The following utilities can not be used with breakpoint prefix. +The following utilities can not be used with a breakpoint or a container prefix. \ No newline at end of file diff --git a/docs/contents/utilities/sizing/height.md b/docs/contents/utilities/sizing/height.md index 6a03a1e..f23b87f 100644 --- a/docs/contents/utilities/sizing/height.md +++ b/docs/contents/utilities/sizing/height.md @@ -9,7 +9,7 @@ spacing: true ### Spacing scale -Height can also be set using the static spacing scale, for example `h-96`. +Height can also be set using the spacing scale: a static step, for example `h-96`, or a dynamic one from `h-xs` to `h-xl`, which grows with the viewport.
diff --git a/docs/contents/utilities/sizing/max-height.md b/docs/contents/utilities/sizing/max-height.md index b82dd07..1a0718c 100644 --- a/docs/contents/utilities/sizing/max-height.md +++ b/docs/contents/utilities/sizing/max-height.md @@ -9,7 +9,7 @@ spacing: true ### Spacing scale -Max height can also be set using the static spacing scale, for example `max-h-288`. +Max height can also be set using the spacing scale: a static step, for example `max-h-288`, or a dynamic one from `max-h-xs` to `max-h-xl`, which grows with the viewport.
diff --git a/docs/contents/utilities/sizing/max-width.md b/docs/contents/utilities/sizing/max-width.md index 778ff1c..2109b78 100644 --- a/docs/contents/utilities/sizing/max-width.md +++ b/docs/contents/utilities/sizing/max-width.md @@ -9,7 +9,7 @@ spacing: true ### Spacing scale -Max width can also be set using the static spacing scale, for example `max-w-384`. +Max width can also be set using the spacing scale: a static step, for example `max-w-384`, or a dynamic one from `max-w-xs` to `max-w-xl`, which grows with the viewport.
diff --git a/docs/contents/utilities/sizing/min-height.md b/docs/contents/utilities/sizing/min-height.md index bdc5808..cb12e2d 100644 --- a/docs/contents/utilities/sizing/min-height.md +++ b/docs/contents/utilities/sizing/min-height.md @@ -9,7 +9,7 @@ spacing: true ### Spacing scale -Min height can also be set using the static spacing scale, for example `min-h-96`. +Min height can also be set using the spacing scale: a static step, for example `min-h-96`, or a dynamic one from `min-h-xs` to `min-h-xl`, which grows with the viewport.
diff --git a/docs/contents/utilities/sizing/min-width.md b/docs/contents/utilities/sizing/min-width.md index 4e87a40..f34c971 100644 --- a/docs/contents/utilities/sizing/min-width.md +++ b/docs/contents/utilities/sizing/min-width.md @@ -9,7 +9,7 @@ spacing: true ### Spacing scale -Min width can also be set using the static spacing scale, for example `min-w-96`. +Min width can also be set using the spacing scale: a static step, for example `min-w-96`, or a dynamic one from `min-w-xs` to `min-w-xl`, which grows with the viewport.
diff --git a/docs/contents/utilities/sizing/width.md b/docs/contents/utilities/sizing/width.md index 667eee0..91d28d7 100644 --- a/docs/contents/utilities/sizing/width.md +++ b/docs/contents/utilities/sizing/width.md @@ -8,7 +8,7 @@ spacing: true ### Spacing scale -Width can also be set using the static spacing scale, for example `w-96`. +Width can also be set using the spacing scale: a static step, for example `w-96`, or a dynamic one from `w-xs` to `w-xl`, which grows with the viewport.
diff --git a/docs/contents/utilities/transitions/transition-delay.md b/docs/contents/utilities/transitions/transition-delay.md index 270332c..61742a6 100644 --- a/docs/contents/utilities/transitions/transition-delay.md +++ b/docs/contents/utilities/transitions/transition-delay.md @@ -4,5 +4,5 @@ description: Utilities for controlling the delay of CSS transitions. customProperties: true ---
- +
\ No newline at end of file diff --git a/docs/contents/utilities/transitions/transition-duration.md b/docs/contents/utilities/transitions/transition-duration.md index 06898a0..dff243c 100644 --- a/docs/contents/utilities/transitions/transition-duration.md +++ b/docs/contents/utilities/transitions/transition-duration.md @@ -4,5 +4,5 @@ description: Utilities for controlling the duration of CSS transitions. customProperties: true ---
- +
\ No newline at end of file diff --git a/docs/contents/utilities/transitions/transition-property.md b/docs/contents/utilities/transitions/transition-property.md index ec6019a..f3d92eb 100644 --- a/docs/contents/utilities/transitions/transition-property.md +++ b/docs/contents/utilities/transitions/transition-property.md @@ -4,5 +4,5 @@ description: Utilities for controlling which CSS properties transition. customProperties: true ---
- +
\ No newline at end of file diff --git a/docs/contents/utilities/transitions/transition-timing-function.md b/docs/contents/utilities/transitions/transition-timing-function.md index 1488f53..d1929fd 100644 --- a/docs/contents/utilities/transitions/transition-timing-function.md +++ b/docs/contents/utilities/transitions/transition-timing-function.md @@ -4,5 +4,5 @@ description: Utilities for controlling the easing of CSS transitions. customProperties: true ---
- +
\ No newline at end of file diff --git a/docs/contents/utilities/typography/text-align.md b/docs/contents/utilities/typography/text-align.md index 7964662..3c8a5f8 100644 --- a/docs/contents/utilities/typography/text-align.md +++ b/docs/contents/utilities/typography/text-align.md @@ -2,6 +2,7 @@ title: Text Align description: Utilities for controlling the alignment of text. breakpoints: true +containerQueries: true --- diff --git a/docs/pages/utilities/[group]/[name].vue b/docs/pages/utilities/[group]/[name].vue index 877ce92..3106499 100644 --- a/docs/pages/utilities/[group]/[name].vue +++ b/docs/pages/utilities/[group]/[name].vue @@ -8,6 +8,7 @@ const title = ref('') const description = ref('') const breakpoints = ref(false) + const containerQueries = ref(false) const colors = ref(false) const customProperties = ref(false) const spacing = ref(false) @@ -25,6 +26,7 @@ title.value = attributes.title description.value = attributes.description breakpoints.value = attributes.breakpoints + containerQueries.value = attributes.containerQueries colors.value = attributes.colors customProperties.value = attributes.customProperties spacing.value = attributes.spacing @@ -67,6 +69,11 @@ class="vv-badge vv-badge--sm"> breakpoints + + container queries + @@ -102,18 +109,38 @@