get_relative_selectors() — svelte Function Reference
Architecture documentation for the get_relative_selectors() function in css-prune.js from the svelte codebase.
Entity Profile
Dependency Diagram
graph TD 93e4e2a8_d367_c800_840d_5097d02af978["get_relative_selectors()"] cb1bf043_dade_7352_cc2b_976ffa2968d8["css-prune.js"] 93e4e2a8_d367_c800_840d_5097d02af978 -->|defined in| cb1bf043_dade_7352_cc2b_976ffa2968d8 22029545_f623_0033_1188_2848353eb5cc["prune()"] 22029545_f623_0033_1188_2848353eb5cc -->|calls| 93e4e2a8_d367_c800_840d_5097d02af978 44fb7f7e_7a78_eedb_fde3_53e386135788["relative_selector_might_apply_to_node()"] 44fb7f7e_7a78_eedb_fde3_53e386135788 -->|calls| 93e4e2a8_d367_c800_840d_5097d02af978 a446abce_d160_6f0a_0d38_aca50a65af3e["truncate()"] 93e4e2a8_d367_c800_840d_5097d02af978 -->|calls| a446abce_d160_6f0a_0d38_aca50a65af3e style 93e4e2a8_d367_c800_840d_5097d02af978 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js lines 125–157
function get_relative_selectors(node) {
const selectors = truncate(node);
if (node.metadata.rule?.metadata.parent_rule && selectors.length > 0) {
let has_explicit_nesting_selector = false;
// nesting could be inside pseudo classes like :is, :has or :where
for (let selector of selectors) {
walk(selector, null, {
// @ts-ignore
NestingSelector() {
has_explicit_nesting_selector = true;
}
});
// if we found one we can break from the others
if (has_explicit_nesting_selector) break;
}
if (!has_explicit_nesting_selector) {
if (selectors[0].combinator === null) {
selectors[0] = {
...selectors[0],
combinator: descendant_combinator
};
}
selectors.unshift(nesting_selector);
}
}
return selectors;
}
Domain
Subdomains
Calls
Source
Frequently Asked Questions
What does get_relative_selectors() do?
get_relative_selectors() is a function in the svelte codebase, defined in packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js.
Where is get_relative_selectors() defined?
get_relative_selectors() is defined in packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js at line 125.
What does get_relative_selectors() call?
get_relative_selectors() calls 1 function(s): truncate.
What calls get_relative_selectors()?
get_relative_selectors() is called by 2 function(s): prune, relative_selector_might_apply_to_node.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free