Skip to content

PostCSS Logical revamp #740

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 36 commits into from
Jan 23, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
fd01242
Getting started
Antonio-Laguna Dec 3, 2022
20a877f
Merge branch 'postcss-preset-env--v8' into feature/logical-revamp-v8
Antonio-Laguna Dec 12, 2022
b6e22b3
Merge branch 'postcss-preset-env--v8' into feature/logical-revamp-v8
Antonio-Laguna Dec 13, 2022
494fdbe
wip: starting with single logical on margin
Antonio-Laguna Dec 18, 2022
b5c6712
Updating how the transform works
Antonio-Laguna Dec 18, 2022
496cfe8
Getting block/inline working for padding and margin
Antonio-Laguna Dec 23, 2022
12de273
Merge branch 'postcss-preset-env--v8' into feature/logical-revamp-v8
Antonio-Laguna Dec 23, 2022
d988d76
Completing margin and padding
Antonio-Laguna Dec 25, 2022
5a27b4b
Merge branch 'postcss-preset-env--v8' into feature/logical-revamp-v8
Antonio-Laguna Dec 25, 2022
e8a265f
Enable caption-side, float and clear
Antonio-Laguna Dec 29, 2022
0399f6c
adding support for text-align
Antonio-Laguna Jan 1, 2023
606fa6d
further progress
Antonio-Laguna Jan 2, 2023
a0cd7e9
Completing border
Antonio-Laguna Jan 6, 2023
37b8173
Addiing docs
Antonio-Laguna Jan 6, 2023
91cf02b
Rewriting test
Antonio-Laguna Jan 7, 2023
c07efde
Merge branch 'postcss-preset-env--v8' into feature/logical-revamp-v8
Antonio-Laguna Jan 7, 2023
c367f0d
Missing part of the CHANGELOG
Antonio-Laguna Jan 7, 2023
693e4c7
Removing no longer needed check
Antonio-Laguna Jan 7, 2023
439561b
Updating tests
Antonio-Laguna Jan 7, 2023
86d79c4
Updating more tests
Antonio-Laguna Jan 7, 2023
481006a
Linting package.json
Antonio-Laguna Jan 7, 2023
8ea3c39
feature/logical-revamp-v8 : feedback (#773)
romainmenke Jan 9, 2023
37d8390
Adding missing docs
Antonio-Laguna Jan 9, 2023
4491b8f
Removing `preserve`
Antonio-Laguna Jan 9, 2023
4990403
Updating CHANGELOG
Antonio-Laguna Jan 9, 2023
a115d7b
add a few abstract tests with various configs (#775)
romainmenke Jan 10, 2023
94451d6
logical : border radius (#776)
romainmenke Jan 10, 2023
8d4d4d3
Logical Float and Clear (#781)
Antonio-Laguna Jan 19, 2023
ed0119f
Merge branch 'postcss-preset-env--v8' into feature/logical-revamp-v8
Antonio-Laguna Jan 19, 2023
e328996
logical-resize (#792)
romainmenke Jan 21, 2023
eb9d276
Merge branch 'postcss-preset-env--v8' into feature/logical-revamp-v8
Antonio-Laguna Jan 21, 2023
2918454
Updating CHANGELOG
Antonio-Laguna Jan 21, 2023
e7427b5
Updating dependencies
Antonio-Laguna Jan 21, 2023
fda2b5d
Merge branch 'postcss-preset-env--v8' into feature/logical-revamp-v8
Antonio-Laguna Jan 22, 2023
f428f3a
Merge remote-tracking branch 'origin/postcss-preset-env--v8' into fea…
romainmenke Jan 22, 2023
3e5be94
Wire logical into Preset Env and CLI (#798)
Antonio-Laguna Jan 23, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/css-issue.yml
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,8 @@ body:
- PostCSS Is Pseudo Class
- PostCSS Lab Function
- PostCSS Logical
- PostCSS Logical Float and Clear
- PostCSS Logical Resize
- PostCSS Logical Viewport Units
- PostCSS Media Queries Aspect-Ratio Number Values
- PostCSS Media Query Ranges
Expand Down
2 changes: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/plugin-issue.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,8 @@ body:
- PostCSS Is Pseudo Class
- PostCSS Lab Function
- PostCSS Logical
- PostCSS Logical Float and Clear
- PostCSS Logical Resize
- PostCSS Logical Viewport Units
- PostCSS Media Queries Aspect-Ratio Number Values
- PostCSS Media Query Ranges
Expand Down
8 changes: 8 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,14 @@
- plugins/postcss-logical/**
- experimental/postcss-logical/**

"plugins/postcss-logical-float-and-clear":
- plugins/postcss-logical-float-and-clear/**
- experimental/postcss-logical-float-and-clear/**

"plugins/postcss-logical-resize":
- plugins/postcss-logical-resize/**
- experimental/postcss-logical-resize/**

"plugins/postcss-logical-viewport-units":
- plugins/postcss-logical-viewport-units/**
- experimental/postcss-logical-viewport-units/**
Expand Down
3 changes: 3 additions & 0 deletions cli/csstools-cli/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@
- Updated: Support for Node v14+ (major).
- Remove `postcss-env-function` (breaking).
- Remove `importFrom` and `exportTo` plugin options (breaking).
- Added `@csstools/postcss-logical-float-and-clear`
- Added `@csstools/postcss-logical-resize`
- Added `@csstools/postcss-logical-viewport-units`

### 1.4.0 (June 3, 2022)

Expand Down
2 changes: 1 addition & 1 deletion cli/csstools-cli/dist/cli.cjs

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions cli/csstools-cli/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,9 @@
"@csstools/postcss-hwb-function": "^1.0.1",
"@csstools/postcss-ic-unit": "^1.0.0",
"@csstools/postcss-is-pseudo-class": "^2.0.4",
"@csstools/postcss-logical-float-and-clear": "^1.0.0",
"@csstools/postcss-logical-resize": "^1.0.0",
"@csstools/postcss-logical-viewport-units": "^1.0.0",
"@csstools/postcss-normalize-display-values": "^1.0.0",
"@csstools/postcss-oklab-function": "^1.1.0",
"@csstools/postcss-stepped-value-functions": "^1.0.0",
Expand Down
12 changes: 12 additions & 0 deletions cli/csstools-cli/src/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ import postcssImageSetFunction from './plugins/postcss-image-set-function';
import postcssIsPseudoClass from './plugins/postcss-is-pseudo-class';
import postcssLabFunction from './plugins/postcss-lab-function';
import postcssLogical from './plugins/postcss-logical';
import postcssLogicalFloatAndClear from './plugins/postcss-logical-float-and-clear';
import postcssLogicalResize from './plugins/postcss-logical-resize';
import postcssLogicalViewportUnits from './plugins/postcss-logical-viewport-units';
import postcssNesting from './plugins/postcss-nesting';
import postcssNormalizeDisplayValues from './plugins/postcss-normalize-display-values';
import postcssOKLabFunction from './plugins/postcss-oklab-function';
Expand Down Expand Up @@ -109,6 +112,15 @@ function main() {
case 'postcss-logical':
postcssLogical();
return;
case 'postcss-logical-float-and-clear':
postcssLogicalFloatAndClear();
return;
case 'postcss-logical-resize':
postcssLogicalResize();
return;
case 'postcss-logical-viewport-units':
postcssLogicalViewportUnits();
return;
case 'postcss-nesting':
postcssNesting();
return;
Expand Down
18 changes: 18 additions & 0 deletions cli/csstools-cli/src/plugins/postcss-logical-float-and-clear.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import plugin from '@csstools/postcss-logical-float-and-clear';
import { cli, helpTextLogger } from '@csstools/base-cli';

export default function postcssLogical() {
cli(
plugin,
['inlineDirection', 'blockDirection'],
helpTextLogger(
'@csstools/cli postcss-logical-float-and-clear',
'PostCSS Logical Float And Clear',
'Lets you use flow-relative (inline-start and inline-end) values for float and clear, following the CSS Logical Properties and Values specification.',
{
inlineDirection: 'left-to-right',
},
),
false,
);
}
18 changes: 18 additions & 0 deletions cli/csstools-cli/src/plugins/postcss-logical-resize.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import plugin from '@csstools/postcss-logical-resize';
import { cli, helpTextLogger } from '@csstools/base-cli';

export default function postcssLogicalResize() {
cli(
plugin,
['inlineDirection'],
helpTextLogger(
'@csstools/cli postcss-logical-resize',
'PostCSS Logical Resize',
'Lets you use logical values in the resize property, following the CSS Logical Properties and Values specification.',
{
inlineDirection: 'left-to-right',
},
),
false,
);
}
19 changes: 19 additions & 0 deletions cli/csstools-cli/src/plugins/postcss-logical-viewport-units.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import plugin from '@csstools/postcss-logical-viewport-units';
import { cli, helpTextLogger } from '@csstools/base-cli';

export default function postcssLogicalViewportUnits() {
cli(
plugin,
['inlineDirection', 'preserve'],
helpTextLogger(
'@csstools/cli postcss-viewport-units',
'PostCSS Logical Viewport Units',
'Lets you use vb and vi length units in CSS, following the CSS Values and Units Module Level 4 specification.',
{
inlineDirection: 'left-to-right',
preserve: true,
},
),
false,
);
}
6 changes: 3 additions & 3 deletions cli/csstools-cli/src/plugins/postcss-logical.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ import { cli, helpTextLogger } from '@csstools/base-cli';
export default function postcssLogical() {
cli(
plugin,
['dir', 'preserve'],
['inlineDirection', 'blockDirection'],
helpTextLogger(
'@csstools/cli postcss-logical',
'PostCSS Logical',
'Lets you use logical, rather than physical, direction and dimension mappings in CSS, following the CSS Logical Properties and Values specification.',
{
dir: 'ltr|rtl',
preserve: true,
inlineDirection: 'left-to-right',
blockDirection: 'top-to-bottom',
},
),
false,
Expand Down
82 changes: 75 additions & 7 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 9 additions & 6 deletions plugin-packs/postcss-preset-env/.tape.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,15 @@ postcssTape(plugin)({
browsers: '> 0%'
},
},
'basic:hebrew': {
message: 'supports { logical: { inlineDirection: "right-to-left" }, stage: 0, browsers: "> 0%" } usage',
options: {
stage: 0,
logical: {
inlineDirection: 'right-to-left'
}
},
},
'layers-basic': {
message: 'supports layers usage',
options: {
Expand Down Expand Up @@ -268,9 +277,6 @@ postcssTape(plugin)({
message: 'supports { insertBefore } usage when looking for source',
options: {
stage: 0,
features: {
'lab-function': true
},
features: {
'lab-function': true,
'color-function': false,
Expand All @@ -288,9 +294,6 @@ postcssTape(plugin)({
message: 'supports { insertBefore } usage when looking for a result',
options: {
stage: 0,
features: {
'lab-function': true
},
features: {
'lab-function': true,
'color-function': false,
Expand Down
5 changes: 5 additions & 0 deletions plugin-packs/postcss-preset-env/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,12 @@

- Added: TypeScript support.
- Added `@csstools/postcss-media-queries-aspect-ratio-number-values` [Check the plugin README](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-media-queries-aspect-ratio-number-values#readme) for usage details.
- Added `@csstools/postcss-logical-float-and-clear` [Check the plugin README](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-logical-float-and-clear#readme) for usage details.
- Added `@csstools/postcss-logical-resize` [Check the plugin README](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-logical-resize#readme) for usage details.
- Added `@csstools/postcss-logical-viewport-units` [Check the plugin README](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-logical-viewport-units#readme) for usage details.
- Added `logical` option to control all logical plugins.
- Fixed: `all-property` and `overflow-wrap-property` now follow the `preserve` plugin option
- Removed a workaround to consider `blank-pseudo-class` and `prefers-color-scheme-query` as `stage: 1` features when using default options.

### (8.0.0-alpha.1) (November 14, 2022)

Expand Down
1 change: 1 addition & 0 deletions plugin-packs/postcss-preset-env/FEATURES.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ The `ID` listed is the key for PostCSS Preset Env configuration in your project.
| `dir-pseudo-class` | `:dir` Directionality Pseudo-Class | [example](https://preset-env.cssdb.org/features/#dir-pseudo-class) | [docs](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-dir-pseudo-class#readme) |
| `display-two-values` | Two values syntax for `display` | [example](https://preset-env.cssdb.org/features/#display-two-values) | [docs](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-normalize-display-values#readme) |
| `double-position-gradients` | Double Position Gradients | [example](https://preset-env.cssdb.org/features/#double-position-gradients) | [docs](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-double-position-gradients#readme) |
| `float-clear-logical-values` | Logical Values in float and clear | [example](https://preset-env.cssdb.org/features/#float-clear-logical-values) | [docs](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-logical#readme) |
| `focus-visible-pseudo-class` | `:focus-visible` Focus-Indicated Pseudo-Class | [example](https://preset-env.cssdb.org/features/#focus-visible-pseudo-class) | [docs](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-focus-visible#readme) |
| `focus-within-pseudo-class` | `:focus-within` Focus Container Pseudo-Class | [example](https://preset-env.cssdb.org/features/#focus-within-pseudo-class) | [docs](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-focus-within#readme) |
| `font-format-keywords` | Font `format()` Keywords | [example](https://preset-env.cssdb.org/features/#font-format-keywords) | [docs](https://github.com/valtlai/postcss-font-format-keywords#readme) |
Expand Down
Loading