summaryrefslogtreecommitdiff
path: root/node_modules/tailwindcss/src/util/removeAlphaVariables.js
diff options
context:
space:
mode:
authorPhilipp Tanlak <philipp.tanlak@gmail.com>2025-11-24 20:54:57 +0100
committerPhilipp Tanlak <philipp.tanlak@gmail.com>2025-11-24 20:57:48 +0100
commitb1e2c8fd5cb5dfa46bc440a12eafaf56cd844b1c (patch)
tree49d360fd6cbc6a2754efe93524ac47ff0fbe0f7d /node_modules/tailwindcss/src/util/removeAlphaVariables.js
Docs
Diffstat (limited to 'node_modules/tailwindcss/src/util/removeAlphaVariables.js')
-rw-r--r--node_modules/tailwindcss/src/util/removeAlphaVariables.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/node_modules/tailwindcss/src/util/removeAlphaVariables.js b/node_modules/tailwindcss/src/util/removeAlphaVariables.js
new file mode 100644
index 0000000..76655be
--- /dev/null
+++ b/node_modules/tailwindcss/src/util/removeAlphaVariables.js
@@ -0,0 +1,24 @@
+/**
+ * This function removes any uses of CSS variables used as an alpha channel
+ *
+ * This is required for selectors like `:visited` which do not allow
+ * changes in opacity or external control using CSS variables.
+ *
+ * @param {import('postcss').Container} container
+ * @param {string[]} toRemove
+ */
+export function removeAlphaVariables(container, toRemove) {
+ container.walkDecls((decl) => {
+ if (toRemove.includes(decl.prop)) {
+ decl.remove()
+
+ return
+ }
+
+ for (let varName of toRemove) {
+ if (decl.value.includes(`/ var(${varName})`)) {
+ decl.value = decl.value.replace(`/ var(${varName})`, '')
+ }
+ }
+ })
+}