MCPcopy
hub / github.com/tailwindlabs/tailwindcss / substituteFunctions

Function substituteFunctions

packages/tailwindcss/src/css-functions.ts:175–200  ·  packages/tailwindcss/src/css-functions.ts::substituteFunctions
(ast: AstNode[], designSystem: DesignSystem)

Source from the content-addressed store, hash-verified

173)
174
175export function substituteFunctions(ast: AstNode[], designSystem: DesignSystem) {
176 let features = Features.None
177 walk(ast, (node) => {
178 class="cm">// Find all declaration values
179 if (node.kind === class="st">'declaration' && node.value && THEME_FUNCTION_INVOCATION.test(node.value)) {
180 features |= Features.ThemeFunction
181 node.value = substituteFunctionsInValue(node.value, node, designSystem)
182 return
183 }
184
185 class="cm">// Find at-rules rules
186 if (node.kind === class="st">'at-rule') {
187 if (
188 (node.name === class="st">'@media' ||
189 node.name === class="st">'@custom-media' ||
190 node.name === class="st">'@container' ||
191 node.name === class="st">'@supports') &&
192 THEME_FUNCTION_INVOCATION.test(node.params)
193 ) {
194 features |= Features.ThemeFunction
195 node.params = substituteFunctionsInValue(node.params, node, designSystem)
196 }
197 }
198 })
199 return features
200}
201
202export function substituteFunctionsInValue(
203 value: string,

Callers 3

parseCssFunction · 0.90
buildDesignSystemFunction · 0.90
addBaseFunction · 0.90

Calls 2

walkFunction · 0.90

Tested by

no test coverage detected