feat(css-prefix): text-emphasis support
MODIFY
internal/compiler/transforms/compile/css-handler/prefix/index.ts
internal/compiler/transforms/compile/css-handler/prefix/index.ts
-/* GENERATED:START(hash:27c3820b3347e8d3a51fae17d565dc4fa3be3710,id:main) Everything below is automatically generated. DO NOT MODIFY. Run `./rome run scripts/generated-files/css-prefix` to update. */
+/* GENERATED:START(hash:a7ee50ac5e776a428e44569bc07d6fd0a0da973d,id:main) Everything below is automatically generated. DO NOT MODIFY. Run `./rome run scripts/generated-files/css-prefix` to update. */
import animation from "./prefixes/animation";
import appearance from "./prefixes/appearance";
import backdropFilter from "./prefixes/backdrop-filter";
@@ -16,6 +16,7 @@ import position from "./prefixes/position";
import scrollSnapType from "./prefixes/scroll-snap-type";
import tabSize from "./prefixes/tab-size";
import textAlignLast from "./prefixes/text-align-last";
+import textEmphasis from "./prefixes/text-emphasis";
import textOrientation from "./prefixes/text-orientation";
import textOverflow from "./prefixes/text-overflow";
import transform from "./prefixes/transform";
@@ -41,6 +42,7 @@ export default [
...scrollSnapType,
...tabSize,
...textAlignLast,
+ ...textEmphasis,
...textOrientation,
...textOverflow,
...transform,

ADD
internal/compiler/transforms/compile/css-handler/prefix/prefixes/text-emphasis.ts
+import {
+ createPrefixVisitor,
+ prefixCSSProperty,
+} from "@internal/compiler/transforms/compile/css-handler/prefix/utils";
+
+// https://github.com/Fyrd/caniuse/blob/main/features-json/text-emphasis.json
+export default [
+ "text-emphasis",
+ "text-emphasis-position",
+ "text-emphasis-style",
+ "text-emphasis-color",
+].map((propertyName) =>
+ createPrefixVisitor({
+ name: "text-emphasis",
+ enter(path) {
+ return prefixCSSProperty({
+ path,
+ propertyName,
+ browserFeaturesKey: "text-emphasis",
+ });
+ },
+ })
+);

ADD
internal/compiler/transforms/compile/test-fixtures/css-handler/prefix/text-emphasis/input.css
+.style {
+ text-emphasis: none;
+}
+
+.style {
+ text-emphasis-position: above;
+}
+
+.style {
+ text-emphasis-position: below;
+}
+
+.style {
+ text-emphasis-position: left;
+}
+
+.style {
+ text-emphasis-position: right;
+}
+
+.style {
+ text-emphasis-color: #555;
+}
+
+.style {
+ text-emphasis-color: inherit;
+}
+
+.style {
+ text-emphasis-color: initial;
+}
+
+.style {
+ text-emphasis-color: unset;
+}
+
+.style {
+ text-emphasis-style: filled;
+}
+
+.style {
+ text-emphasis-style: open;
+}
+
+.style {
+ text-emphasis-style: dot;
+}
+
+.style {
+ text-emphasis-style: circle;
+}
+
+.style {
+ text-emphasis-style: double-circle;
+}
+
+.style {
+ text-emphasis-style: triangle;
+}
+
+.style {
+ text-emphasis-style: filled sesame;
+}
+
+.style {
+ text-emphasis-style: open sesame;
+}
+
+.style {
+ text-emphasis-style: inherit;
+}
+
+.style {
+ text-emphasis-style: initial;
+}
+
+.style {
+ text-emphasis-style: unset;
+}

ADD
internal/compiler/transforms/compile/test-fixtures/css-handler/prefix/text-emphasis/input.test.md
+# `index.test.ts`
+
+**DO NOT MODIFY**. This file has been autogenerated. Run `rome test internal/compiler/transforms/compile/index.test.ts --update-snapshots` to update.
+
+## `css-handler > prefix > text-emphasis`
+
+### `Diagnostics`
+
+```
+
+```
+
+### `Input`
+
+```css
+.style {
+ text-emphasis: none;
+}
+
+.style {
+ text-emphasis-position: above;
+}
+
+.style {
+ text-emphasis-position: below;
+}
+
+.style {
+ text-emphasis-position: left;
+}
+
+.style {
+ text-emphasis-position: right;
+}
+
+.style {
+ text-emphasis-color: #555;
+}
+
+.style {
+ text-emphasis-color: inherit;
+}
+
+.style {
+ text-emphasis-color: initial;
+}
+
+.style {
+ text-emphasis-color: unset;
+}
+
+.style {
+ text-emphasis-style: filled;
+}
+
+.style {
+ text-emphasis-style: open;
+}
+
+.style {
+ text-emphasis-style: dot;
+}
+
+.style {
+ text-emphasis-style: circle;
+}
+
+.style {
+ text-emphasis-style: double-circle;
+}
+
+.style {
+ text-emphasis-style: triangle;
+}
+
+.style {
+ text-emphasis-style: filled sesame;
+}
+
+.style {
+ text-emphasis-style: open sesame;
+}
+
+.style {
+ text-emphasis-style: inherit;
+}
+
+.style {
+ text-emphasis-style: initial;
+}
+
+.style {
+ text-emphasis-style: unset;
+}
+
+```
+
+### `Output`
+
+```css
+.style {
+ -webkit-text-emphasis: none;
+ text-emphasis: none;
+}
+
+.style {
+ -webkit-text-emphasis-position: above;
+ text-emphasis-position: above;
+}
+
+.style {
+ -webkit-text-emphasis-position: below;
+ text-emphasis-position: below;
+}
+
+.style {
+ -webkit-text-emphasis-position: left;
+ text-emphasis-position: left;
+}
+
+.style {
+ -webkit-text-emphasis-position: right;
+ text-emphasis-position: right;
+}
+
+.style {
+ -webkit-text-emphasis-color: #555;
+ text-emphasis-color: #555;
+}
+
+.style {
+ -webkit-text-emphasis-color: inherit;
+ text-emphasis-color: inherit;
+}
+
+.style {
+ -webkit-text-emphasis-color: initial;
+ text-emphasis-color: initial;
+}
+
+.style {
+ -webkit-text-emphasis-color: unset;
+ text-emphasis-color: unset;
+}
+
+.style {
+ -webkit-text-emphasis-style: filled;
+ text-emphasis-style: filled;
+}
+
+.style {
+ -webkit-text-emphasis-style: open;
+ text-emphasis-style: open;
+}
+
+.style {
+ -webkit-text-emphasis-style: dot;
+ text-emphasis-style: dot;
+}
+
+.style {
+ -webkit-text-emphasis-style: circle;
+ text-emphasis-style: circle;
+}
+
+.style {
+ -webkit-text-emphasis-style: double-circle;
+ text-emphasis-style: double-circle;
+}
+
+.style {
+ -webkit-text-emphasis-style: triangle;
+ text-emphasis-style: triangle;
+}
+
+.style {
+ -webkit-text-emphasis-style: filled sesame;
+ text-emphasis-style: filled sesame;
+}
+
+.style {
+ -webkit-text-emphasis-style: open sesame;
+ text-emphasis-style: open sesame;
+}
+
+.style {
+ -webkit-text-emphasis-style: inherit;
+ text-emphasis-style: inherit;
+}
+
+.style {
+ -webkit-text-emphasis-style: initial;
+ text-emphasis-style: initial;
+}
+
+.style {
+ -webkit-text-emphasis-style: unset;
+ text-emphasis-style: unset;
+}
+
+```

ADD
website/src/docs/css-handler/prefix/text-emphasis.md
+---
+title: Prefix text-emphasis
+layout: layouts/prefix.liquid
+showHero: false
+description: MISSING DOCUMENTATION
+eleventyNavigation:
+ key: css-handler/prefix/text-emphasis
+ parent: css-handler
+ title: text-emphasis
+---
+
+# text-emphasis
+
+MISSING DOCUMENTATION
\ No newline at end of file

feat(css-prefix): text-emphasis support (#1487)