@jesscss/core 2.0.0-alpha.4 → 2.0.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.cjs +20159 -0
- package/lib/index.d.cts +5993 -0
- package/lib/index.d.cts.map +1 -0
- package/lib/index.d.ts +5992 -21
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +19926 -22
- package/lib/index.js.map +1 -1
- package/package.json +15 -14
- package/src/__tests__/define-function-record.test.ts +58 -0
- package/src/__tests__/define-function-simple.test.ts +55 -0
- package/src/__tests__/define-function-split-sequence.test.ts +547 -0
- package/src/__tests__/define-function-type-parity.test.ts +9 -0
- package/src/__tests__/define-function.test.ts +763 -0
- package/src/__tests__/num-operations.test.ts +91 -0
- package/src/__tests__/safe-parse.test.ts +374 -0
- package/src/context.ts +896 -0
- package/src/conversions.ts +282 -0
- package/src/debug-log.ts +29 -0
- package/src/define-function.ts +1006 -0
- package/src/deprecation.ts +67 -0
- package/src/globals.d.ts +26 -0
- package/src/index.ts +31 -0
- package/src/jess-error.ts +773 -0
- package/src/logger/deprecation-processing.ts +109 -0
- package/src/logger.ts +31 -0
- package/src/plugin.ts +292 -0
- package/src/tree/LOOKUP_CHAINS.md +35 -0
- package/src/tree/README.md +18 -0
- package/src/tree/__tests__/__snapshots__/extend-eval-integration.test.ts.snap +1455 -0
- package/src/tree/__tests__/ampersand.test.ts +382 -0
- package/src/tree/__tests__/at-rule.test.ts +2047 -0
- package/src/tree/__tests__/basic-render.test.ts +212 -0
- package/src/tree/__tests__/block.test.ts +40 -0
- package/src/tree/__tests__/call.test.ts +346 -0
- package/src/tree/__tests__/color.test.ts +537 -0
- package/src/tree/__tests__/condition.test.ts +186 -0
- package/src/tree/__tests__/control.test.ts +564 -0
- package/src/tree/__tests__/declaration.test.ts +253 -0
- package/src/tree/__tests__/dependency-graph.test.ts +177 -0
- package/src/tree/__tests__/detached-rulesets.test.ts +213 -0
- package/src/tree/__tests__/dimension.test.ts +236 -0
- package/src/tree/__tests__/expression.test.ts +73 -0
- package/src/tree/__tests__/ext-node.test.ts +31 -0
- package/src/tree/__tests__/extend-eval-integration.test.ts +1033 -0
- package/src/tree/__tests__/extend-import-style.test.ts +929 -0
- package/src/tree/__tests__/extend-less-fixtures.test.ts +851 -0
- package/src/tree/__tests__/extend-list.test.ts +31 -0
- package/src/tree/__tests__/extend-roots.test.ts +1045 -0
- package/src/tree/__tests__/extend-rules.test.ts +740 -0
- package/src/tree/__tests__/func.test.ts +171 -0
- package/src/tree/__tests__/import-js.test.ts +33 -0
- package/src/tree/__tests__/import-style-test-helpers.ts +56 -0
- package/src/tree/__tests__/import-style.test.ts +1967 -0
- package/src/tree/__tests__/interpolated-reference.test.ts +44 -0
- package/src/tree/__tests__/interpolated.test.ts +41 -0
- package/src/tree/__tests__/list.test.ts +177 -0
- package/src/tree/__tests__/log.test.ts +83 -0
- package/src/tree/__tests__/mixin-recursion.test.ts +639 -0
- package/src/tree/__tests__/mixin.test.ts +2171 -0
- package/src/tree/__tests__/negative.test.ts +45 -0
- package/src/tree/__tests__/nesting-collapse.test.ts +519 -0
- package/src/tree/__tests__/node-flags-perf.test.ts +195 -0
- package/src/tree/__tests__/node-flags.test.ts +410 -0
- package/src/tree/__tests__/node-graph.test.ts +598 -0
- package/src/tree/__tests__/node-mutation.test.ts +182 -0
- package/src/tree/__tests__/operation.test.ts +18 -0
- package/src/tree/__tests__/paren.test.ts +90 -0
- package/src/tree/__tests__/preserve-mode-output.test.ts +50 -0
- package/src/tree/__tests__/quoted.test.ts +72 -0
- package/src/tree/__tests__/range.test.ts +59 -0
- package/src/tree/__tests__/reference.test.ts +743 -0
- package/src/tree/__tests__/rest.test.ts +29 -0
- package/src/tree/__tests__/rules-raw.test.ts +14 -0
- package/src/tree/__tests__/rules.test.ts +1271 -0
- package/src/tree/__tests__/ruleset.test.ts +597 -0
- package/src/tree/__tests__/selector-attr.test.ts +50 -0
- package/src/tree/__tests__/selector-basic.test.ts +44 -0
- package/src/tree/__tests__/selector-capture.test.ts +22 -0
- package/src/tree/__tests__/selector-complex.test.ts +120 -0
- package/src/tree/__tests__/selector-compound.test.ts +74 -0
- package/src/tree/__tests__/selector-interpolated.test.ts +50 -0
- package/src/tree/__tests__/selector-list.test.ts +59 -0
- package/src/tree/__tests__/selector-pseudo.test.ts +23 -0
- package/src/tree/__tests__/selector.test.ts +182 -0
- package/src/tree/__tests__/sequence.test.ts +226 -0
- package/src/tree/__tests__/serialize-types.test.ts +529 -0
- package/src/tree/__tests__/spaced.test.ts +8 -0
- package/src/tree/__tests__/url.test.ts +72 -0
- package/src/tree/__tests__/var-declaration.test.ts +90 -0
- package/src/tree/ampersand.ts +538 -0
- package/src/tree/any.ts +169 -0
- package/src/tree/at-rule.ts +760 -0
- package/src/tree/block.ts +72 -0
- package/src/tree/bool.ts +46 -0
- package/src/tree/call.ts +593 -0
- package/src/tree/collection.ts +52 -0
- package/src/tree/color.ts +629 -0
- package/src/tree/combinator.ts +30 -0
- package/src/tree/comment.ts +36 -0
- package/src/tree/condition.ts +194 -0
- package/src/tree/control.ts +452 -0
- package/src/tree/declaration-custom.ts +56 -0
- package/src/tree/declaration-var.ts +87 -0
- package/src/tree/declaration.ts +742 -0
- package/src/tree/default-guard.ts +35 -0
- package/src/tree/dimension.ts +392 -0
- package/src/tree/expression.ts +97 -0
- package/src/tree/extend-list.ts +51 -0
- package/src/tree/extend.ts +391 -0
- package/src/tree/function.ts +254 -0
- package/src/tree/import-js.ts +130 -0
- package/src/tree/import-style.ts +875 -0
- package/{lib/tree/index.js → src/tree/index.ts} +49 -22
- package/src/tree/interpolated.ts +346 -0
- package/src/tree/js-array.ts +21 -0
- package/src/tree/js-expr.ts +50 -0
- package/src/tree/js-function.ts +31 -0
- package/src/tree/js-object.ts +22 -0
- package/src/tree/list.ts +415 -0
- package/src/tree/log.ts +89 -0
- package/src/tree/mixin.ts +331 -0
- package/src/tree/negative.ts +58 -0
- package/src/tree/nil.ts +57 -0
- package/src/tree/node-base.ts +1716 -0
- package/src/tree/node-type.ts +122 -0
- package/src/tree/node.ts +118 -0
- package/src/tree/number.ts +54 -0
- package/src/tree/operation.ts +187 -0
- package/src/tree/paren.ts +132 -0
- package/src/tree/query-condition.ts +47 -0
- package/src/tree/quoted.ts +119 -0
- package/src/tree/range.ts +101 -0
- package/src/tree/reference.ts +1099 -0
- package/src/tree/rest.ts +55 -0
- package/src/tree/rules-raw.ts +52 -0
- package/src/tree/rules.ts +2896 -0
- package/src/tree/ruleset.ts +1217 -0
- package/src/tree/selector-attr.ts +172 -0
- package/src/tree/selector-basic.ts +75 -0
- package/src/tree/selector-capture.ts +85 -0
- package/src/tree/selector-complex.ts +189 -0
- package/src/tree/selector-compound.ts +205 -0
- package/src/tree/selector-interpolated.ts +95 -0
- package/src/tree/selector-list.ts +245 -0
- package/src/tree/selector-pseudo.ts +173 -0
- package/src/tree/selector-simple.ts +10 -0
- package/src/tree/selector.ts +152 -0
- package/src/tree/sequence.ts +463 -0
- package/src/tree/tree.ts +130 -0
- package/src/tree/url.ts +95 -0
- package/src/tree/util/EXTEND_ARCHITECTURE_ANALYSIS.md +215 -0
- package/src/tree/util/EXTEND_AUDIT.md +233 -0
- package/src/tree/util/EXTEND_BASELINE.md +64 -0
- package/src/tree/util/EXTEND_CALL_GRAPH_ANALYSIS.md +244 -0
- package/src/tree/util/EXTEND_DOCS.md +24 -0
- package/src/tree/util/EXTEND_FINAL_SUMMARY.md +95 -0
- package/src/tree/util/EXTEND_FUNCTION_AUDIT.md +1433 -0
- package/src/tree/util/EXTEND_OPTIMIZATION_PLAN.md +114 -0
- package/src/tree/util/EXTEND_REFACTORING_SUMMARY.md +152 -0
- package/src/tree/util/EXTEND_RULES.md +74 -0
- package/src/tree/util/EXTEND_UNUSED_FUNCTIONS.md +127 -0
- package/src/tree/util/EXTEND_UNUSED_FUNCTIONS_ANALYSIS.md +227 -0
- package/src/tree/util/NODE_COPY_REDUCTION_PLAN.md +12 -0
- package/src/tree/util/__tests__/EXTEND_TEST_INDEX.md +59 -0
- package/src/tree/util/__tests__/OPTIMIZATION-ANALYSIS.md +130 -0
- package/src/tree/util/__tests__/WALK_AND_CONSUME_DESIGN.md +138 -0
- package/src/tree/util/__tests__/_archive/2026-02-09__OPTIMIZATION-ANALYSIS.md +9 -0
- package/src/tree/util/__tests__/_archive/README.md +4 -0
- package/src/tree/util/__tests__/bitset.test.ts +142 -0
- package/src/tree/util/__tests__/debug-log.ts +50 -0
- package/src/tree/util/__tests__/extend-comment-handling.test.ts +187 -0
- package/src/tree/util/__tests__/extend-core-unit.test.ts +941 -0
- package/src/tree/util/__tests__/extend-pipeline-bench.test.ts +154 -0
- package/src/tree/util/__tests__/extend-pipeline-bench.ts +190 -0
- package/src/tree/util/__tests__/fast-reject.test.ts +377 -0
- package/src/tree/util/__tests__/is-node.test.ts +63 -0
- package/src/tree/util/__tests__/list-like.test.ts +63 -0
- package/src/tree/util/__tests__/outputwriter.test.ts +523 -0
- package/src/tree/util/__tests__/print.test.ts +183 -0
- package/src/tree/util/__tests__/process-extends.test.ts +226 -0
- package/src/tree/util/__tests__/process-leading-is.test.ts +205 -0
- package/src/tree/util/__tests__/recursion-helper.test.ts +184 -0
- package/src/tree/util/__tests__/selector-match-unit.test.ts +1427 -0
- package/src/tree/util/__tests__/sourcemap.test.ts +117 -0
- package/src/tree/util/ampersand-template.ts +9 -0
- package/src/tree/util/bitset.ts +194 -0
- package/src/tree/util/calculate.ts +11 -0
- package/src/tree/util/cast.ts +89 -0
- package/src/tree/util/cloning.ts +8 -0
- package/src/tree/util/collections.ts +299 -0
- package/src/tree/util/compare.ts +90 -0
- package/src/tree/util/cursor.ts +171 -0
- package/src/tree/util/extend-core.ts +2139 -0
- package/src/tree/util/extend-roots.ts +1108 -0
- package/src/tree/util/field-helpers.ts +354 -0
- package/src/tree/util/is-node.ts +43 -0
- package/src/tree/util/list-like.ts +93 -0
- package/src/tree/util/mixin-instance-primitives.ts +2020 -0
- package/src/tree/util/print.ts +303 -0
- package/src/tree/util/process-leading-is.ts +421 -0
- package/src/tree/util/recursion-helper.ts +54 -0
- package/src/tree/util/regex.ts +2 -0
- package/src/tree/util/registry-utils.ts +1953 -0
- package/src/tree/util/ruleset-trace.ts +17 -0
- package/src/tree/util/scoped-body-eval.ts +320 -0
- package/src/tree/util/selector-match-core.ts +2005 -0
- package/src/tree/util/selector-utils.ts +757 -0
- package/src/tree/util/serialize-helper.ts +535 -0
- package/src/tree/util/serialize-types.ts +318 -0
- package/src/tree/util/should-operate.ts +78 -0
- package/src/tree/util/sourcemap.ts +37 -0
- package/src/types/config.ts +247 -0
- package/src/types/index.ts +12 -0
- package/{lib/types/modes.d.ts → src/types/modes.ts} +2 -1
- package/src/types.d.ts +9 -0
- package/src/types.ts +68 -0
- package/src/use-webpack-resolver.ts +56 -0
- package/src/visitor/__tests__/visitor.test.ts +136 -0
- package/src/visitor/index.ts +263 -0
- package/{lib/visitor/less-visitor.js → src/visitor/less-visitor.ts} +3 -2
- package/lib/context.d.ts +0 -352
- package/lib/context.d.ts.map +0 -1
- package/lib/context.js +0 -636
- package/lib/context.js.map +0 -1
- package/lib/conversions.d.ts +0 -73
- package/lib/conversions.d.ts.map +0 -1
- package/lib/conversions.js +0 -253
- package/lib/conversions.js.map +0 -1
- package/lib/debug-log.d.ts +0 -2
- package/lib/debug-log.d.ts.map +0 -1
- package/lib/debug-log.js +0 -27
- package/lib/debug-log.js.map +0 -1
- package/lib/define-function.d.ts +0 -587
- package/lib/define-function.d.ts.map +0 -1
- package/lib/define-function.js +0 -726
- package/lib/define-function.js.map +0 -1
- package/lib/deprecation.d.ts +0 -34
- package/lib/deprecation.d.ts.map +0 -1
- package/lib/deprecation.js +0 -57
- package/lib/deprecation.js.map +0 -1
- package/lib/jess-error.d.ts +0 -343
- package/lib/jess-error.d.ts.map +0 -1
- package/lib/jess-error.js +0 -508
- package/lib/jess-error.js.map +0 -1
- package/lib/logger/deprecation-processing.d.ts +0 -41
- package/lib/logger/deprecation-processing.d.ts.map +0 -1
- package/lib/logger/deprecation-processing.js +0 -81
- package/lib/logger/deprecation-processing.js.map +0 -1
- package/lib/logger.d.ts +0 -10
- package/lib/logger.d.ts.map +0 -1
- package/lib/logger.js +0 -20
- package/lib/logger.js.map +0 -1
- package/lib/plugin.d.ts +0 -94
- package/lib/plugin.d.ts.map +0 -1
- package/lib/plugin.js +0 -174
- package/lib/plugin.js.map +0 -1
- package/lib/tree/ampersand.d.ts +0 -94
- package/lib/tree/ampersand.d.ts.map +0 -1
- package/lib/tree/ampersand.js +0 -269
- package/lib/tree/ampersand.js.map +0 -1
- package/lib/tree/any.d.ts +0 -58
- package/lib/tree/any.d.ts.map +0 -1
- package/lib/tree/any.js +0 -104
- package/lib/tree/any.js.map +0 -1
- package/lib/tree/at-rule.d.ts +0 -53
- package/lib/tree/at-rule.d.ts.map +0 -1
- package/lib/tree/at-rule.js +0 -503
- package/lib/tree/at-rule.js.map +0 -1
- package/lib/tree/block.d.ts +0 -22
- package/lib/tree/block.d.ts.map +0 -1
- package/lib/tree/block.js +0 -24
- package/lib/tree/block.js.map +0 -1
- package/lib/tree/bool.d.ts +0 -18
- package/lib/tree/bool.d.ts.map +0 -1
- package/lib/tree/bool.js +0 -28
- package/lib/tree/bool.js.map +0 -1
- package/lib/tree/call.d.ts +0 -66
- package/lib/tree/call.d.ts.map +0 -1
- package/lib/tree/call.js +0 -306
- package/lib/tree/call.js.map +0 -1
- package/lib/tree/collection.d.ts +0 -30
- package/lib/tree/collection.d.ts.map +0 -1
- package/lib/tree/collection.js +0 -37
- package/lib/tree/collection.js.map +0 -1
- package/lib/tree/color.d.ts +0 -101
- package/lib/tree/color.d.ts.map +0 -1
- package/lib/tree/color.js +0 -513
- package/lib/tree/color.js.map +0 -1
- package/lib/tree/combinator.d.ts +0 -13
- package/lib/tree/combinator.d.ts.map +0 -1
- package/lib/tree/combinator.js +0 -12
- package/lib/tree/combinator.js.map +0 -1
- package/lib/tree/comment.d.ts +0 -20
- package/lib/tree/comment.d.ts.map +0 -1
- package/lib/tree/comment.js +0 -19
- package/lib/tree/comment.js.map +0 -1
- package/lib/tree/condition.d.ts +0 -31
- package/lib/tree/condition.d.ts.map +0 -1
- package/lib/tree/condition.js +0 -103
- package/lib/tree/condition.js.map +0 -1
- package/lib/tree/control.d.ts +0 -104
- package/lib/tree/control.d.ts.map +0 -1
- package/lib/tree/control.js +0 -430
- package/lib/tree/control.js.map +0 -1
- package/lib/tree/declaration-custom.d.ts +0 -18
- package/lib/tree/declaration-custom.d.ts.map +0 -1
- package/lib/tree/declaration-custom.js +0 -24
- package/lib/tree/declaration-custom.js.map +0 -1
- package/lib/tree/declaration-var.d.ts +0 -35
- package/lib/tree/declaration-var.d.ts.map +0 -1
- package/lib/tree/declaration-var.js +0 -63
- package/lib/tree/declaration-var.js.map +0 -1
- package/lib/tree/declaration.d.ts +0 -78
- package/lib/tree/declaration.d.ts.map +0 -1
- package/lib/tree/declaration.js +0 -286
- package/lib/tree/declaration.js.map +0 -1
- package/lib/tree/default-guard.d.ts +0 -15
- package/lib/tree/default-guard.d.ts.map +0 -1
- package/lib/tree/default-guard.js +0 -19
- package/lib/tree/default-guard.js.map +0 -1
- package/lib/tree/dimension.d.ts +0 -34
- package/lib/tree/dimension.d.ts.map +0 -1
- package/lib/tree/dimension.js +0 -294
- package/lib/tree/dimension.js.map +0 -1
- package/lib/tree/expression.d.ts +0 -25
- package/lib/tree/expression.d.ts.map +0 -1
- package/lib/tree/expression.js +0 -32
- package/lib/tree/expression.js.map +0 -1
- package/lib/tree/extend-list.d.ts +0 -23
- package/lib/tree/extend-list.d.ts.map +0 -1
- package/lib/tree/extend-list.js +0 -23
- package/lib/tree/extend-list.js.map +0 -1
- package/lib/tree/extend.d.ts +0 -47
- package/lib/tree/extend.d.ts.map +0 -1
- package/lib/tree/extend.js +0 -296
- package/lib/tree/extend.js.map +0 -1
- package/lib/tree/function.d.ts +0 -48
- package/lib/tree/function.d.ts.map +0 -1
- package/lib/tree/function.js +0 -74
- package/lib/tree/function.js.map +0 -1
- package/lib/tree/import-js.d.ts +0 -35
- package/lib/tree/import-js.d.ts.map +0 -1
- package/lib/tree/import-js.js +0 -45
- package/lib/tree/import-js.js.map +0 -1
- package/lib/tree/import-style.d.ts +0 -156
- package/lib/tree/import-style.d.ts.map +0 -1
- package/lib/tree/import-style.js +0 -566
- package/lib/tree/import-style.js.map +0 -1
- package/lib/tree/index.d.ts +0 -71
- package/lib/tree/index.d.ts.map +0 -1
- package/lib/tree/index.js.map +0 -1
- package/lib/tree/interpolated-reference.d.ts +0 -24
- package/lib/tree/interpolated-reference.d.ts.map +0 -1
- package/lib/tree/interpolated-reference.js +0 -37
- package/lib/tree/interpolated-reference.js.map +0 -1
- package/lib/tree/interpolated.d.ts +0 -62
- package/lib/tree/interpolated.d.ts.map +0 -1
- package/lib/tree/interpolated.js +0 -204
- package/lib/tree/interpolated.js.map +0 -1
- package/lib/tree/js-array.d.ts +0 -10
- package/lib/tree/js-array.d.ts.map +0 -1
- package/lib/tree/js-array.js +0 -10
- package/lib/tree/js-array.js.map +0 -1
- package/lib/tree/js-expr.d.ts +0 -23
- package/lib/tree/js-expr.d.ts.map +0 -1
- package/lib/tree/js-expr.js +0 -28
- package/lib/tree/js-expr.js.map +0 -1
- package/lib/tree/js-function.d.ts +0 -20
- package/lib/tree/js-function.d.ts.map +0 -1
- package/lib/tree/js-function.js +0 -16
- package/lib/tree/js-function.js.map +0 -1
- package/lib/tree/js-object.d.ts +0 -10
- package/lib/tree/js-object.d.ts.map +0 -1
- package/lib/tree/js-object.js +0 -10
- package/lib/tree/js-object.js.map +0 -1
- package/lib/tree/list.d.ts +0 -38
- package/lib/tree/list.d.ts.map +0 -1
- package/lib/tree/list.js +0 -83
- package/lib/tree/list.js.map +0 -1
- package/lib/tree/log.d.ts +0 -29
- package/lib/tree/log.d.ts.map +0 -1
- package/lib/tree/log.js +0 -56
- package/lib/tree/log.js.map +0 -1
- package/lib/tree/mixin.d.ts +0 -87
- package/lib/tree/mixin.d.ts.map +0 -1
- package/lib/tree/mixin.js +0 -112
- package/lib/tree/mixin.js.map +0 -1
- package/lib/tree/negative.d.ts +0 -17
- package/lib/tree/negative.d.ts.map +0 -1
- package/lib/tree/negative.js +0 -22
- package/lib/tree/negative.js.map +0 -1
- package/lib/tree/nil.d.ts +0 -30
- package/lib/tree/nil.d.ts.map +0 -1
- package/lib/tree/nil.js +0 -35
- package/lib/tree/nil.js.map +0 -1
- package/lib/tree/node-base.d.ts +0 -361
- package/lib/tree/node-base.d.ts.map +0 -1
- package/lib/tree/node-base.js +0 -930
- package/lib/tree/node-base.js.map +0 -1
- package/lib/tree/node.d.ts +0 -10
- package/lib/tree/node.d.ts.map +0 -1
- package/lib/tree/node.js +0 -45
- package/lib/tree/node.js.map +0 -1
- package/lib/tree/number.d.ts +0 -21
- package/lib/tree/number.d.ts.map +0 -1
- package/lib/tree/number.js +0 -27
- package/lib/tree/number.js.map +0 -1
- package/lib/tree/operation.d.ts +0 -26
- package/lib/tree/operation.d.ts.map +0 -1
- package/lib/tree/operation.js +0 -103
- package/lib/tree/operation.js.map +0 -1
- package/lib/tree/paren.d.ts +0 -19
- package/lib/tree/paren.d.ts.map +0 -1
- package/lib/tree/paren.js +0 -92
- package/lib/tree/paren.js.map +0 -1
- package/lib/tree/query-condition.d.ts +0 -17
- package/lib/tree/query-condition.d.ts.map +0 -1
- package/lib/tree/query-condition.js +0 -39
- package/lib/tree/query-condition.js.map +0 -1
- package/lib/tree/quoted.d.ts +0 -28
- package/lib/tree/quoted.d.ts.map +0 -1
- package/lib/tree/quoted.js +0 -75
- package/lib/tree/quoted.js.map +0 -1
- package/lib/tree/range.d.ts +0 -33
- package/lib/tree/range.d.ts.map +0 -1
- package/lib/tree/range.js +0 -47
- package/lib/tree/range.js.map +0 -1
- package/lib/tree/reference.d.ts +0 -76
- package/lib/tree/reference.d.ts.map +0 -1
- package/lib/tree/reference.js +0 -521
- package/lib/tree/reference.js.map +0 -1
- package/lib/tree/rest.d.ts +0 -15
- package/lib/tree/rest.d.ts.map +0 -1
- package/lib/tree/rest.js +0 -32
- package/lib/tree/rest.js.map +0 -1
- package/lib/tree/rules-raw.d.ts +0 -17
- package/lib/tree/rules-raw.d.ts.map +0 -1
- package/lib/tree/rules-raw.js +0 -37
- package/lib/tree/rules-raw.js.map +0 -1
- package/lib/tree/rules.d.ts +0 -262
- package/lib/tree/rules.d.ts.map +0 -1
- package/lib/tree/rules.js +0 -2359
- package/lib/tree/rules.js.map +0 -1
- package/lib/tree/ruleset.d.ts +0 -92
- package/lib/tree/ruleset.d.ts.map +0 -1
- package/lib/tree/ruleset.js +0 -528
- package/lib/tree/ruleset.js.map +0 -1
- package/lib/tree/selector-attr.d.ts +0 -31
- package/lib/tree/selector-attr.d.ts.map +0 -1
- package/lib/tree/selector-attr.js +0 -99
- package/lib/tree/selector-attr.js.map +0 -1
- package/lib/tree/selector-basic.d.ts +0 -24
- package/lib/tree/selector-basic.d.ts.map +0 -1
- package/lib/tree/selector-basic.js +0 -38
- package/lib/tree/selector-basic.js.map +0 -1
- package/lib/tree/selector-capture.d.ts +0 -23
- package/lib/tree/selector-capture.d.ts.map +0 -1
- package/lib/tree/selector-capture.js +0 -34
- package/lib/tree/selector-capture.js.map +0 -1
- package/lib/tree/selector-complex.d.ts +0 -40
- package/lib/tree/selector-complex.d.ts.map +0 -1
- package/lib/tree/selector-complex.js +0 -143
- package/lib/tree/selector-complex.js.map +0 -1
- package/lib/tree/selector-compound.d.ts +0 -16
- package/lib/tree/selector-compound.d.ts.map +0 -1
- package/lib/tree/selector-compound.js +0 -114
- package/lib/tree/selector-compound.js.map +0 -1
- package/lib/tree/selector-interpolated.d.ts +0 -23
- package/lib/tree/selector-interpolated.d.ts.map +0 -1
- package/lib/tree/selector-interpolated.js +0 -27
- package/lib/tree/selector-interpolated.js.map +0 -1
- package/lib/tree/selector-list.d.ts +0 -17
- package/lib/tree/selector-list.d.ts.map +0 -1
- package/lib/tree/selector-list.js +0 -174
- package/lib/tree/selector-list.js.map +0 -1
- package/lib/tree/selector-pseudo.d.ts +0 -42
- package/lib/tree/selector-pseudo.d.ts.map +0 -1
- package/lib/tree/selector-pseudo.js +0 -204
- package/lib/tree/selector-pseudo.js.map +0 -1
- package/lib/tree/selector-simple.d.ts +0 -5
- package/lib/tree/selector-simple.d.ts.map +0 -1
- package/lib/tree/selector-simple.js +0 -6
- package/lib/tree/selector-simple.js.map +0 -1
- package/lib/tree/selector.d.ts +0 -43
- package/lib/tree/selector.d.ts.map +0 -1
- package/lib/tree/selector.js +0 -56
- package/lib/tree/selector.js.map +0 -1
- package/lib/tree/sequence.d.ts +0 -43
- package/lib/tree/sequence.d.ts.map +0 -1
- package/lib/tree/sequence.js +0 -151
- package/lib/tree/sequence.js.map +0 -1
- package/lib/tree/tree.d.ts +0 -87
- package/lib/tree/tree.d.ts.map +0 -1
- package/lib/tree/tree.js +0 -2
- package/lib/tree/tree.js.map +0 -1
- package/lib/tree/url.d.ts +0 -18
- package/lib/tree/url.d.ts.map +0 -1
- package/lib/tree/url.js +0 -35
- package/lib/tree/url.js.map +0 -1
- package/lib/tree/util/__tests__/debug-log.d.ts +0 -1
- package/lib/tree/util/__tests__/debug-log.d.ts.map +0 -1
- package/lib/tree/util/__tests__/debug-log.js +0 -36
- package/lib/tree/util/__tests__/debug-log.js.map +0 -1
- package/lib/tree/util/calculate.d.ts +0 -3
- package/lib/tree/util/calculate.d.ts.map +0 -1
- package/lib/tree/util/calculate.js +0 -10
- package/lib/tree/util/calculate.js.map +0 -1
- package/lib/tree/util/cast.d.ts +0 -10
- package/lib/tree/util/cast.d.ts.map +0 -1
- package/lib/tree/util/cast.js +0 -87
- package/lib/tree/util/cast.js.map +0 -1
- package/lib/tree/util/cloning.d.ts +0 -4
- package/lib/tree/util/cloning.d.ts.map +0 -1
- package/lib/tree/util/cloning.js +0 -8
- package/lib/tree/util/cloning.js.map +0 -1
- package/lib/tree/util/collections.d.ts +0 -57
- package/lib/tree/util/collections.d.ts.map +0 -1
- package/lib/tree/util/collections.js +0 -136
- package/lib/tree/util/collections.js.map +0 -1
- package/lib/tree/util/compare.d.ts +0 -11
- package/lib/tree/util/compare.d.ts.map +0 -1
- package/lib/tree/util/compare.js +0 -89
- package/lib/tree/util/compare.js.map +0 -1
- package/lib/tree/util/extend-helpers.d.ts +0 -2
- package/lib/tree/util/extend-helpers.d.ts.map +0 -1
- package/lib/tree/util/extend-helpers.js +0 -2
- package/lib/tree/util/extend-helpers.js.map +0 -1
- package/lib/tree/util/extend-roots.d.ts +0 -37
- package/lib/tree/util/extend-roots.d.ts.map +0 -1
- package/lib/tree/util/extend-roots.js +0 -700
- package/lib/tree/util/extend-roots.js.map +0 -1
- package/lib/tree/util/extend-roots.old.d.ts +0 -132
- package/lib/tree/util/extend-roots.old.d.ts.map +0 -1
- package/lib/tree/util/extend-roots.old.js +0 -2272
- package/lib/tree/util/extend-roots.old.js.map +0 -1
- package/lib/tree/util/extend-trace-debug.d.ts +0 -13
- package/lib/tree/util/extend-trace-debug.d.ts.map +0 -1
- package/lib/tree/util/extend-trace-debug.js +0 -34
- package/lib/tree/util/extend-trace-debug.js.map +0 -1
- package/lib/tree/util/extend-walk.d.ts +0 -53
- package/lib/tree/util/extend-walk.d.ts.map +0 -1
- package/lib/tree/util/extend-walk.js +0 -881
- package/lib/tree/util/extend-walk.js.map +0 -1
- package/lib/tree/util/extend.d.ts +0 -218
- package/lib/tree/util/extend.d.ts.map +0 -1
- package/lib/tree/util/extend.js +0 -3182
- package/lib/tree/util/extend.js.map +0 -1
- package/lib/tree/util/find-extendable-locations.d.ts +0 -2
- package/lib/tree/util/find-extendable-locations.d.ts.map +0 -1
- package/lib/tree/util/find-extendable-locations.js +0 -2
- package/lib/tree/util/find-extendable-locations.js.map +0 -1
- package/lib/tree/util/format.d.ts +0 -20
- package/lib/tree/util/format.d.ts.map +0 -1
- package/lib/tree/util/format.js +0 -67
- package/lib/tree/util/format.js.map +0 -1
- package/lib/tree/util/is-node.d.ts +0 -13
- package/lib/tree/util/is-node.d.ts.map +0 -1
- package/lib/tree/util/is-node.js +0 -43
- package/lib/tree/util/is-node.js.map +0 -1
- package/lib/tree/util/print.d.ts +0 -80
- package/lib/tree/util/print.d.ts.map +0 -1
- package/lib/tree/util/print.js +0 -205
- package/lib/tree/util/print.js.map +0 -1
- package/lib/tree/util/process-leading-is.d.ts +0 -25
- package/lib/tree/util/process-leading-is.d.ts.map +0 -1
- package/lib/tree/util/process-leading-is.js +0 -364
- package/lib/tree/util/process-leading-is.js.map +0 -1
- package/lib/tree/util/recursion-helper.d.ts +0 -15
- package/lib/tree/util/recursion-helper.d.ts.map +0 -1
- package/lib/tree/util/recursion-helper.js +0 -43
- package/lib/tree/util/recursion-helper.js.map +0 -1
- package/lib/tree/util/regex.d.ts +0 -4
- package/lib/tree/util/regex.d.ts.map +0 -1
- package/lib/tree/util/regex.js +0 -4
- package/lib/tree/util/regex.js.map +0 -1
- package/lib/tree/util/registry-utils.d.ts +0 -192
- package/lib/tree/util/registry-utils.d.ts.map +0 -1
- package/lib/tree/util/registry-utils.js +0 -1214
- package/lib/tree/util/registry-utils.js.map +0 -1
- package/lib/tree/util/ruleset-trace.d.ts +0 -4
- package/lib/tree/util/ruleset-trace.d.ts.map +0 -1
- package/lib/tree/util/ruleset-trace.js +0 -14
- package/lib/tree/util/ruleset-trace.js.map +0 -1
- package/lib/tree/util/selector-compare.d.ts +0 -2
- package/lib/tree/util/selector-compare.d.ts.map +0 -1
- package/lib/tree/util/selector-compare.js +0 -2
- package/lib/tree/util/selector-compare.js.map +0 -1
- package/lib/tree/util/selector-match-core.d.ts +0 -184
- package/lib/tree/util/selector-match-core.d.ts.map +0 -1
- package/lib/tree/util/selector-match-core.js +0 -1603
- package/lib/tree/util/selector-match-core.js.map +0 -1
- package/lib/tree/util/selector-utils.d.ts +0 -30
- package/lib/tree/util/selector-utils.d.ts.map +0 -1
- package/lib/tree/util/selector-utils.js +0 -100
- package/lib/tree/util/selector-utils.js.map +0 -1
- package/lib/tree/util/serialize-helper.d.ts +0 -13
- package/lib/tree/util/serialize-helper.d.ts.map +0 -1
- package/lib/tree/util/serialize-helper.js +0 -387
- package/lib/tree/util/serialize-helper.js.map +0 -1
- package/lib/tree/util/serialize-types.d.ts +0 -9
- package/lib/tree/util/serialize-types.d.ts.map +0 -1
- package/lib/tree/util/serialize-types.js +0 -216
- package/lib/tree/util/serialize-types.js.map +0 -1
- package/lib/tree/util/should-operate.d.ts +0 -23
- package/lib/tree/util/should-operate.d.ts.map +0 -1
- package/lib/tree/util/should-operate.js +0 -46
- package/lib/tree/util/should-operate.js.map +0 -1
- package/lib/tree/util/sourcemap.d.ts +0 -7
- package/lib/tree/util/sourcemap.d.ts.map +0 -1
- package/lib/tree/util/sourcemap.js +0 -25
- package/lib/tree/util/sourcemap.js.map +0 -1
- package/lib/types/config.d.ts +0 -205
- package/lib/types/config.d.ts.map +0 -1
- package/lib/types/config.js +0 -2
- package/lib/types/config.js.map +0 -1
- package/lib/types/index.d.ts +0 -15
- package/lib/types/index.d.ts.map +0 -1
- package/lib/types/index.js +0 -3
- package/lib/types/index.js.map +0 -1
- package/lib/types/modes.d.ts.map +0 -1
- package/lib/types/modes.js +0 -2
- package/lib/types/modes.js.map +0 -1
- package/lib/types.d.ts +0 -61
- package/lib/types.d.ts.map +0 -1
- package/lib/types.js +0 -2
- package/lib/types.js.map +0 -1
- package/lib/use-webpack-resolver.d.ts +0 -9
- package/lib/use-webpack-resolver.d.ts.map +0 -1
- package/lib/use-webpack-resolver.js +0 -41
- package/lib/use-webpack-resolver.js.map +0 -1
- package/lib/visitor/index.d.ts +0 -136
- package/lib/visitor/index.d.ts.map +0 -1
- package/lib/visitor/index.js +0 -135
- package/lib/visitor/index.js.map +0 -1
- package/lib/visitor/less-visitor.d.ts +0 -7
- package/lib/visitor/less-visitor.d.ts.map +0 -1
- package/lib/visitor/less-visitor.js.map +0 -1
package/lib/tree/ampersand.js
DELETED
|
@@ -1,269 +0,0 @@
|
|
|
1
|
-
import { defineType, F_AMPERSAND, F_IMPLICIT_AMPERSAND } from './node.js';
|
|
2
|
-
import { Nil } from './nil.js';
|
|
3
|
-
import { SimpleSelector } from './selector-simple.js';
|
|
4
|
-
import { PseudoSelector } from './selector-pseudo.js';
|
|
5
|
-
import { SelectorList } from './selector-list.js';
|
|
6
|
-
import { BasicSelector } from './selector-basic.js';
|
|
7
|
-
import { isNode } from './util/is-node.js';
|
|
8
|
-
import { atIndex } from './util/collections.js';
|
|
9
|
-
import { getPrintOptions } from './util/print.js';
|
|
10
|
-
import { F_VISIBLE } from './node.js';
|
|
11
|
-
/**
|
|
12
|
-
* The '&' selector element
|
|
13
|
-
*/
|
|
14
|
-
export class Ampersand extends SimpleSelector {
|
|
15
|
-
type = 'Ampersand';
|
|
16
|
-
shortType = 'amp';
|
|
17
|
-
_storedSelector;
|
|
18
|
-
_selectorContainer;
|
|
19
|
-
constructor(value, options, location, treeContext) {
|
|
20
|
-
let finalValue = {};
|
|
21
|
-
if (typeof value === 'string') {
|
|
22
|
-
finalValue.appendValue = value;
|
|
23
|
-
super(finalValue, options, location, treeContext);
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
finalValue = value ? { appendValue: value.appendValue } : {};
|
|
27
|
-
super(finalValue, options, location, treeContext);
|
|
28
|
-
const selectorContainer = value?.selectorContainer;
|
|
29
|
-
if (selectorContainer) {
|
|
30
|
-
this._selectorContainer = selectorContainer;
|
|
31
|
-
this._storedSelector = selectorContainer?.selector;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
// Set the F_AMPERSAND flag so it bubbles up to parent selectors
|
|
35
|
-
this.addFlag(F_AMPERSAND);
|
|
36
|
-
}
|
|
37
|
-
get keySet() {
|
|
38
|
-
const stored = this._storedSelector;
|
|
39
|
-
const current = this._selectorContainer?.selector;
|
|
40
|
-
if (!current || isNode(current, 'Nil')) {
|
|
41
|
-
return new Set(['&']);
|
|
42
|
-
}
|
|
43
|
-
let keySet = this._keySet;
|
|
44
|
-
if (!keySet || stored !== current) {
|
|
45
|
-
this._computeKeySetAndFastReject();
|
|
46
|
-
return this._keySet;
|
|
47
|
-
}
|
|
48
|
-
return keySet;
|
|
49
|
-
}
|
|
50
|
-
/** The keys of an ampersand are the keys of the selector it contains */
|
|
51
|
-
_computeKeySetAndFastReject() {
|
|
52
|
-
const selector = this._selectorContainer?.selector;
|
|
53
|
-
if (selector && 'keySet' in selector) {
|
|
54
|
-
this._keySet = selector.keySet;
|
|
55
|
-
// For visibleKeySet, if this ampersand has a selector value, it's an implicit ampersand
|
|
56
|
-
// (added by getImplicitSelector). For indexing purposes, we want to exclude implicit ampersands
|
|
57
|
-
// regardless of visibility, so always set visibleKeySet to empty when there's a selector value
|
|
58
|
-
if (this.hasFlag(F_VISIBLE) && !selector) {
|
|
59
|
-
// Only include visibleKeySet if visible AND no selector value (explicit ampersand)
|
|
60
|
-
this._visibleKeySet = new Set();
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
// Implicit ampersand (has selector value) or invisible - exclude from visibleKeySet
|
|
64
|
-
this._visibleKeySet = new Set();
|
|
65
|
-
}
|
|
66
|
-
this._canFastReject = selector.canFastReject;
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
this._keySet = new Set(['&']);
|
|
70
|
-
this._visibleKeySet = new Set();
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Returns the current selector from the selector container (live when container is ruleset value).
|
|
74
|
-
* Used by extend, serialization, and matching so nested rules see the parent after extend.
|
|
75
|
-
*/
|
|
76
|
-
getResolvedSelector() {
|
|
77
|
-
const selector = this._selectorContainer?.selector;
|
|
78
|
-
if (selector && isNode(selector, 'SelectorList') && this.hasFlag(F_IMPLICIT_AMPERSAND)) {
|
|
79
|
-
const wrapped = PseudoSelector.create({ name: ':is', arg: selector.copy(true) });
|
|
80
|
-
wrapped.generated = true;
|
|
81
|
-
return wrapped;
|
|
82
|
-
}
|
|
83
|
-
return selector;
|
|
84
|
-
}
|
|
85
|
-
valueOf() {
|
|
86
|
-
const selector = this._selectorContainer?.selector;
|
|
87
|
-
if (selector) {
|
|
88
|
-
return selector.valueOf();
|
|
89
|
-
}
|
|
90
|
-
return '&';
|
|
91
|
-
}
|
|
92
|
-
toTrimmedString(options) {
|
|
93
|
-
options = getPrintOptions(options);
|
|
94
|
-
const w = options.writer;
|
|
95
|
-
const mark = w.mark();
|
|
96
|
-
const { appendValue } = this.value;
|
|
97
|
-
if (appendValue) {
|
|
98
|
-
w.add('&(');
|
|
99
|
-
if (appendValue) {
|
|
100
|
-
w.add(appendValue, this);
|
|
101
|
-
}
|
|
102
|
-
w.add(')');
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
w.add('&', this);
|
|
106
|
-
}
|
|
107
|
-
return w.getSince(mark);
|
|
108
|
-
}
|
|
109
|
-
/** Hmm this should never return Extend */
|
|
110
|
-
evalNode(context) {
|
|
111
|
-
const { appendValue } = this.value;
|
|
112
|
-
const selectorContainer = this._selectorContainer;
|
|
113
|
-
const storedSelector = selectorContainer?.selector;
|
|
114
|
-
// Check if appendValue is defined (including empty string), or if hoistToRoot/collapseNesting is set
|
|
115
|
-
if (appendValue !== undefined || this.hoistToRoot || context.opts.collapseNesting) {
|
|
116
|
-
// Use the stored selector if available, otherwise fall back to frame selector
|
|
117
|
-
let frame = atIndex(context.rulesetFrames, -1);
|
|
118
|
-
let selector = storedSelector ?? frame?.selector;
|
|
119
|
-
if (!selector) {
|
|
120
|
-
return new Nil();
|
|
121
|
-
}
|
|
122
|
-
// Never mutate the frame selector in-place for append forms (&-foo / &()).
|
|
123
|
-
if (appendValue !== undefined && !isNode(selector, 'Nil')) {
|
|
124
|
-
selector = selector.clone(true);
|
|
125
|
-
}
|
|
126
|
-
/** Remove any surrounding whitespace */
|
|
127
|
-
selector.pre = undefined;
|
|
128
|
-
selector.post = undefined;
|
|
129
|
-
if (appendValue && !isNode(selector, 'Nil')) {
|
|
130
|
-
const isTemplateMerge = appendValue.includes('&');
|
|
131
|
-
if (isTemplateMerge) {
|
|
132
|
-
const isIdentJoinChar = (char) => {
|
|
133
|
-
return !!char && /[a-zA-Z0-9_-]/.test(char);
|
|
134
|
-
};
|
|
135
|
-
const assertValidTemplateJoin = (template, replacement) => {
|
|
136
|
-
if (!replacement) {
|
|
137
|
-
return;
|
|
138
|
-
}
|
|
139
|
-
let searchFrom = 0;
|
|
140
|
-
while (true) {
|
|
141
|
-
const idx = template.indexOf('&', searchFrom);
|
|
142
|
-
if (idx === -1) {
|
|
143
|
-
break;
|
|
144
|
-
}
|
|
145
|
-
const before = idx > 0 ? template[idx - 1] : undefined;
|
|
146
|
-
const after = idx < template.length - 1 ? template[idx + 1] : undefined;
|
|
147
|
-
const first = replacement[0];
|
|
148
|
-
const last = replacement[replacement.length - 1];
|
|
149
|
-
const invalidHeadJoin = (first === '.' || first === '#') && isIdentJoinChar(before);
|
|
150
|
-
const invalidTailJoin = (last === '.' || last === '#') && isIdentJoinChar(after);
|
|
151
|
-
if (invalidHeadJoin || invalidTailJoin) {
|
|
152
|
-
throw new SyntaxError(`Invalid ampersand merge template "${template}" with parent selector "${replacement}"`);
|
|
153
|
-
}
|
|
154
|
-
searchFrom = idx + 1;
|
|
155
|
-
}
|
|
156
|
-
};
|
|
157
|
-
const mergeTemplate = (baseSelector) => {
|
|
158
|
-
const baseSelectors = [];
|
|
159
|
-
if (isNode(baseSelector, 'PseudoSelector')
|
|
160
|
-
&& baseSelector.value.name === ':is'
|
|
161
|
-
&& baseSelector.value.arg
|
|
162
|
-
&& isNode(baseSelector.value.arg, 'SelectorList')) {
|
|
163
|
-
baseSelectors.push(...baseSelector.value.arg.value.map(item => item));
|
|
164
|
-
}
|
|
165
|
-
else if (isNode(baseSelector, 'SelectorList')) {
|
|
166
|
-
baseSelectors.push(...baseSelector.value.map(item => item));
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
baseSelectors.push(baseSelector);
|
|
170
|
-
}
|
|
171
|
-
const merged = baseSelectors.map((item) => {
|
|
172
|
-
const value = item.toTrimmedString();
|
|
173
|
-
assertValidTemplateJoin(appendValue, value);
|
|
174
|
-
return new BasicSelector(appendValue.split('&').join(value)).inherit(baseSelector);
|
|
175
|
-
});
|
|
176
|
-
if (merged.length === 1) {
|
|
177
|
-
return merged[0];
|
|
178
|
-
}
|
|
179
|
-
return new SelectorList(merged).inherit(baseSelector);
|
|
180
|
-
};
|
|
181
|
-
if (isNode(selector, 'SelectorList')) {
|
|
182
|
-
const mergedItems = [];
|
|
183
|
-
for (const item of selector.value) {
|
|
184
|
-
const merged = mergeTemplate(item);
|
|
185
|
-
if (isNode(merged, 'SelectorList')) {
|
|
186
|
-
mergedItems.push(...merged.value);
|
|
187
|
-
}
|
|
188
|
-
else {
|
|
189
|
-
mergedItems.push(merged);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
selector = new SelectorList(mergedItems).inherit(selector);
|
|
193
|
-
}
|
|
194
|
-
else {
|
|
195
|
-
selector = mergeTemplate(selector);
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
else {
|
|
199
|
-
let doAppendValue = (n) => {
|
|
200
|
-
let appended = false;
|
|
201
|
-
for (let s of n.nodes(true)) {
|
|
202
|
-
/** Find the last simple selector and attempt to append */
|
|
203
|
-
if (isNode(s, 'SimpleSelector')) {
|
|
204
|
-
if (typeof s.value === 'string') {
|
|
205
|
-
s.value += appendValue;
|
|
206
|
-
appended = true;
|
|
207
|
-
break;
|
|
208
|
-
}
|
|
209
|
-
throw new SyntaxError(`Cannot append "${appendValue}" to this type of selector`);
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
if (!appended) {
|
|
213
|
-
throw new SyntaxError(`Cannot append "${appendValue}" to this type of selector`);
|
|
214
|
-
}
|
|
215
|
-
};
|
|
216
|
-
if (isNode(selector, 'SelectorList')) {
|
|
217
|
-
selector.value.forEach(doAppendValue);
|
|
218
|
-
}
|
|
219
|
-
else {
|
|
220
|
-
doAppendValue(selector);
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
let result;
|
|
225
|
-
const shouldWrapSelectorList = isNode(selector, 'SelectorList') && (context.opts.collapseNesting || this.hoistToRoot || appendValue !== undefined);
|
|
226
|
-
const shouldWrapComplexSelector = isNode(selector, 'ComplexSelector');
|
|
227
|
-
if (shouldWrapSelectorList || shouldWrapComplexSelector) {
|
|
228
|
-
result = PseudoSelector.create({ name: ':is', arg: selector });
|
|
229
|
-
// When create() is invoked from this eval path, generated is not set on the instance
|
|
230
|
-
// (repro: process-leading-is test "unwraps evaled &[e] with frame * b"). Set explicitly.
|
|
231
|
-
result.generated = true;
|
|
232
|
-
}
|
|
233
|
-
else {
|
|
234
|
-
result = selector;
|
|
235
|
-
}
|
|
236
|
-
// If we're appending (e.g. `&-1`), we must hoist this selector out of its parent frames
|
|
237
|
-
// because it materially changes the inherited selector.
|
|
238
|
-
if (appendValue !== undefined) {
|
|
239
|
-
result.hoistToRoot = true;
|
|
240
|
-
}
|
|
241
|
-
// Only set hoistToRoot if we actually wrapped or if it was already set
|
|
242
|
-
if (shouldWrapSelectorList || shouldWrapComplexSelector || this.hoistToRoot) {
|
|
243
|
-
result.hoistToRoot = true;
|
|
244
|
-
}
|
|
245
|
-
return result;
|
|
246
|
-
}
|
|
247
|
-
const amp = this.maybeClone(context);
|
|
248
|
-
let frame = atIndex(context.rulesetFrames, -1);
|
|
249
|
-
/**
|
|
250
|
-
* Attach the current context selector if we need it later, for extends and such.
|
|
251
|
-
* The frame is constant, so we can use the selector directly.
|
|
252
|
-
* If the ampersand already has a stored selector (from getImplicitSelector),
|
|
253
|
-
* preserve it instead of overwriting with the frame selector.
|
|
254
|
-
*/
|
|
255
|
-
if (!amp._selectorContainer && frame && frame.selector) {
|
|
256
|
-
amp._selectorContainer = frame;
|
|
257
|
-
}
|
|
258
|
-
return amp;
|
|
259
|
-
}
|
|
260
|
-
clone(deep, cloneFn) {
|
|
261
|
-
const newNode = super.clone(deep, cloneFn);
|
|
262
|
-
if (this._selectorContainer) {
|
|
263
|
-
newNode._selectorContainer = this._selectorContainer;
|
|
264
|
-
}
|
|
265
|
-
return newNode;
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
export const amp = defineType(Ampersand, 'Ampersand', 'amp');
|
|
269
|
-
//# sourceMappingURL=ampersand.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ampersand.js","sourceRoot":"","sources":["../../src/tree/ampersand.ts"],"names":[],"mappings":"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"}
|
package/lib/tree/any.d.ts
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Import from node-base to avoid circular dependency.
|
|
3
|
-
* The patching happens in node.ts
|
|
4
|
-
*/
|
|
5
|
-
import { Node, type LocationInfo, type NodeOptions } from './node-base.js';
|
|
6
|
-
import type { Context, TreeContext } from '../context.js';
|
|
7
|
-
import { type MaybePromise } from '@jesscss/awaitable-pipe';
|
|
8
|
-
import { Nil } from './nil.js';
|
|
9
|
-
export type AnyRole = 'ident' | 'name' | 'charset' | 'keyword' | 'property' | 'atkeyword' | 'urlvalue' | 'flag' | 'customprop' | 'semi' | 'operator' | 'any';
|
|
10
|
-
/** Doesn't get assigned but can be used for inference? */
|
|
11
|
-
export type AnyOptions<T extends string> = NodeOptions & {
|
|
12
|
-
role?: T;
|
|
13
|
-
};
|
|
14
|
-
export interface Any<Role extends AnyRole = AnyRole> extends Node<string, AnyOptions<Role>> {
|
|
15
|
-
eval(context: Context): Any<Role>;
|
|
16
|
-
valueOf(): string;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Any is a simple token that has a string value and a role.
|
|
20
|
-
* Sometimes that role is unspecified. Think of it as a generic,
|
|
21
|
-
* and a placeholder for tokens that don't have anything special
|
|
22
|
-
* to do during evaluation.
|
|
23
|
-
*
|
|
24
|
-
* Called "Anonymous" in Less's original tree, but "anonymous"
|
|
25
|
-
* was somewhat a counter-intuitive name.
|
|
26
|
-
*/
|
|
27
|
-
export declare class Any<Role extends AnyRole = AnyRole> extends Node<string, AnyOptions<Role>> {
|
|
28
|
-
type: string;
|
|
29
|
-
shortType: string;
|
|
30
|
-
constructor(...args: ConstructorParameters<typeof Node<string, AnyOptions<Role>>>);
|
|
31
|
-
preEval(context: Context): this | Nil;
|
|
32
|
-
evalNode(context: Context): MaybePromise<Node>;
|
|
33
|
-
compare(other: Node): 0 | 1 | -1 | undefined;
|
|
34
|
-
}
|
|
35
|
-
export declare function any<Role extends AnyRole = AnyRole>(value: string, options?: AnyOptions<Role>): Any<Role>;
|
|
36
|
-
/** Legacy class - remove? */
|
|
37
|
-
export declare class Anonymous<Role extends AnyRole = AnyRole> extends Any<Role> {
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Keyword represents a CSS keyword value (e.g., 'auto', 'none', 'inherit', 'and', 'or').
|
|
41
|
-
*
|
|
42
|
-
* This is a convenience class that extends Any with role: 'keyword' fixed.
|
|
43
|
-
* It provides better type safety and aligns with Less.js's Keyword node type
|
|
44
|
-
* for compatibility purposes.
|
|
45
|
-
*
|
|
46
|
-
* Note: In Jess, boolean values ('true', 'false') are represented as Bool nodes,
|
|
47
|
-
* not Keyword nodes, unlike Less.js where they are Keyword instances.
|
|
48
|
-
*/
|
|
49
|
-
export declare class Keyword extends Any<'keyword'> {
|
|
50
|
-
type: "Keyword";
|
|
51
|
-
shortType: string;
|
|
52
|
-
constructor(value: string, options?: Omit<NodeOptions, 'role'>, location?: LocationInfo, context?: TreeContext);
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Helper function to create a Keyword node
|
|
56
|
-
*/
|
|
57
|
-
export declare function keyword(value: string, options?: Omit<NodeOptions, 'role'>, location?: LocationInfo, context?: TreeContext): Keyword;
|
|
58
|
-
//# sourceMappingURL=any.d.ts.map
|
package/lib/tree/any.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"any.d.ts","sourceRoot":"","sources":["../../src/tree/any.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,IAAI,EAAc,KAAK,YAAY,EAAE,KAAK,WAAW,EAAY,MAAM,gBAAgB,CAAC;AACjG,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,MAAM,MAAM,OAAO,GACjB,OAAO,GACL,MAAM,GACN,SAAS,GACT,SAAS,GACT,UAAU,GACV,WAAW,GACX,UAAU,GACV,MAAM,GACN,YAAY,GACZ,MAAM,GACN,UAAU,GACV,KAAK,CAAC;AAEV,0DAA0D;AAC1D,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,IAAI,WAAW,GAAG;IACvD,IAAI,CAAC,EAAE,CAAC,CAAC;CACV,CAAC;AAEF,MAAM,WAAW,GAAG,CAClB,IAAI,SAAS,OAAO,GAAG,OAAO,CAC9B,SAAQ,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,qBAAa,GAAG,CACd,IAAI,SAAS,OAAO,GAAG,OAAO,CAC9B,SAAQ,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,SAAS;IACb,SAAS,SAAS;gBAEN,GAAG,IAAI,EAAE,qBAAqB,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAKxE,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,GAAG;IAcrC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC;IAI9C,OAAO,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS;CA8BtD;AAGD,wBAAgB,GAAG,CAAC,IAAI,SAAS,OAAO,GAAG,OAAO,EAChD,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,GACzB,GAAG,CAAC,IAAI,CAAC,CAEX;AAGD,6BAA6B;AAC7B,qBAAa,SAAS,CACpB,IAAI,SAAS,OAAO,GAAG,OAAO,CAC9B,SAAQ,GAAG,CAAC,IAAI,CAAC;CAAG;AAGtB;;;;;;;;;GASG;AACH,qBAAa,OAAQ,SAAQ,GAAG,CAAC,SAAS,CAAC;IAChC,IAAI,EAAG,SAAS,CAAU;IAC1B,SAAS,SAAa;gBAG7B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,EACnC,QAAQ,CAAC,EAAE,YAAY,EACvB,OAAO,CAAC,EAAE,WAAW;CAKxB;AAGD;;GAEG;AACH,wBAAgB,OAAO,CACrB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,EACnC,QAAQ,CAAC,EAAE,YAAY,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAET"}
|
package/lib/tree/any.js
DELETED
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Import from node-base to avoid circular dependency.
|
|
3
|
-
* The patching happens in node.ts
|
|
4
|
-
*/
|
|
5
|
-
import { Node, defineType, F_STATIC } from './node-base.js';
|
|
6
|
-
import { Nil } from './nil.js';
|
|
7
|
-
/**
|
|
8
|
-
* Any is a simple token that has a string value and a role.
|
|
9
|
-
* Sometimes that role is unspecified. Think of it as a generic,
|
|
10
|
-
* and a placeholder for tokens that don't have anything special
|
|
11
|
-
* to do during evaluation.
|
|
12
|
-
*
|
|
13
|
-
* Called "Anonymous" in Less's original tree, but "anonymous"
|
|
14
|
-
* was somewhat a counter-intuitive name.
|
|
15
|
-
*/
|
|
16
|
-
export class Any extends Node {
|
|
17
|
-
type = 'Any';
|
|
18
|
-
shortType = 'any';
|
|
19
|
-
constructor(...args) {
|
|
20
|
-
super(...args);
|
|
21
|
-
this.addFlag(F_STATIC);
|
|
22
|
-
}
|
|
23
|
-
preEval(context) {
|
|
24
|
-
this.preEvaluated = true;
|
|
25
|
-
// Index should already be assigned by parent Rules
|
|
26
|
-
if (this.options.role === 'charset') {
|
|
27
|
-
if (!context.currentCharset) {
|
|
28
|
-
/** @todo - Throw error in the future? */
|
|
29
|
-
context.currentCharset = this;
|
|
30
|
-
}
|
|
31
|
-
return new Nil();
|
|
32
|
-
}
|
|
33
|
-
return this;
|
|
34
|
-
}
|
|
35
|
-
// Any values are static and don't need evaluation
|
|
36
|
-
evalNode(context) {
|
|
37
|
-
return this;
|
|
38
|
-
}
|
|
39
|
-
compare(other) {
|
|
40
|
-
// In Less guards, quoted strings are distinct from bare identifiers.
|
|
41
|
-
if (other.type === 'Quoted') {
|
|
42
|
-
return undefined;
|
|
43
|
-
}
|
|
44
|
-
if (other.type === 'Any' || other.type === 'Keyword') {
|
|
45
|
-
return this.value === String(other.valueOf?.() ?? '') ? 0 : undefined;
|
|
46
|
-
}
|
|
47
|
-
if (other.type === 'Number' || other.type === 'Dimension') {
|
|
48
|
-
const text = this.value.trim();
|
|
49
|
-
if (!/^[-+]?(?:\d+\.?\d*|\.\d+)$/.test(text)) {
|
|
50
|
-
return undefined;
|
|
51
|
-
}
|
|
52
|
-
const otherValue = other.value;
|
|
53
|
-
const otherNumber = otherValue?.number;
|
|
54
|
-
const otherUnit = otherValue?.unit;
|
|
55
|
-
if (typeof otherNumber !== 'number') {
|
|
56
|
-
return undefined;
|
|
57
|
-
}
|
|
58
|
-
if (other.type === 'Dimension' && otherUnit) {
|
|
59
|
-
return undefined;
|
|
60
|
-
}
|
|
61
|
-
return Number(text) === otherNumber ? 0 : undefined;
|
|
62
|
-
}
|
|
63
|
-
if (other.toString) {
|
|
64
|
-
const normalize = (s) => s.replace(/;\s*/g, ', ').replace(/\s+/g, ' ').trim();
|
|
65
|
-
return normalize(this.toString()) === normalize(other.toString()) ? 0 : undefined;
|
|
66
|
-
}
|
|
67
|
-
return undefined;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
// Custom any function that properly handles role narrowing
|
|
71
|
-
export function any(value, options) {
|
|
72
|
-
return new Any(value, options);
|
|
73
|
-
}
|
|
74
|
-
defineType(Any, 'Any');
|
|
75
|
-
/** Legacy class - remove? */
|
|
76
|
-
export class Anonymous extends Any {
|
|
77
|
-
}
|
|
78
|
-
defineType(Anonymous, 'Anonymous');
|
|
79
|
-
/**
|
|
80
|
-
* Keyword represents a CSS keyword value (e.g., 'auto', 'none', 'inherit', 'and', 'or').
|
|
81
|
-
*
|
|
82
|
-
* This is a convenience class that extends Any with role: 'keyword' fixed.
|
|
83
|
-
* It provides better type safety and aligns with Less.js's Keyword node type
|
|
84
|
-
* for compatibility purposes.
|
|
85
|
-
*
|
|
86
|
-
* Note: In Jess, boolean values ('true', 'false') are represented as Bool nodes,
|
|
87
|
-
* not Keyword nodes, unlike Less.js where they are Keyword instances.
|
|
88
|
-
*/
|
|
89
|
-
export class Keyword extends Any {
|
|
90
|
-
type = 'Keyword';
|
|
91
|
-
shortType = 'keyword';
|
|
92
|
-
constructor(value, options, location, context) {
|
|
93
|
-
// Force role to 'keyword'
|
|
94
|
-
super(value, { ...options, role: 'keyword' }, location, context);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
defineType(Keyword, 'Keyword');
|
|
98
|
-
/**
|
|
99
|
-
* Helper function to create a Keyword node
|
|
100
|
-
*/
|
|
101
|
-
export function keyword(value, options, location, context) {
|
|
102
|
-
return new Keyword(value, options, location, context);
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=any.js.map
|
package/lib/tree/any.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"any.js","sourceRoot":"","sources":["../../src/tree/any.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,IAAI,EAAE,UAAU,EAAuC,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAGjG,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AA4B/B;;;;;;;;GAQG;AACH,MAAM,OAAO,GAEX,SAAQ,IAA8B;IACtC,IAAI,GAAG,KAAK,CAAC;IACb,SAAS,GAAG,KAAK,CAAC;IAElB,YAAY,GAAG,IAAkE;QAC/E,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACf,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAEQ,OAAO,CAAC,OAAgB;QAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,mDAAmD;QACnD,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC5B,yCAAyC;gBACzC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;YAChC,CAAC;YACD,OAAO,IAAI,GAAG,EAAE,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kDAAkD;IACzC,QAAQ,CAAC,OAAgB;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAEQ,OAAO,CAAC,KAAW;QAC1B,qEAAqE;QACrE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7C,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,UAAU,GAAI,KAAa,CAAC,KAAK,CAAC;YACxC,MAAM,WAAW,GAAG,UAAU,EAAE,MAAM,CAAC;YACvC,MAAM,SAAS,GAAG,UAAU,EAAE,IAAI,CAAC;YACnC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,SAAS,EAAE,CAAC;gBAC5C,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtD,CAAC;QACD,IAAK,KAAa,CAAC,QAAQ,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YACtF,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,SAAS,CAAE,KAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7F,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,2DAA2D;AAC3D,MAAM,UAAU,GAAG,CACjB,KAAa,EACb,OAA0B;IAE1B,OAAO,IAAI,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC;AACD,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAEvB,6BAA6B;AAC7B,MAAM,OAAO,SAEX,SAAQ,GAAS;CAAG;AACtB,UAAU,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AAEnC;;;;;;;;;GASG;AACH,MAAM,OAAO,OAAQ,SAAQ,GAAc;IAChC,IAAI,GAAG,SAAkB,CAAC;IAC1B,SAAS,GAAG,SAAS,CAAC;IAE/B,YACE,KAAa,EACb,OAAmC,EACnC,QAAuB,EACvB,OAAqB;QAErB,0BAA0B;QAC1B,KAAK,CAAC,KAAK,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;CACF;AACD,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAE/B;;GAEG;AACH,MAAM,UAAU,OAAO,CACrB,KAAa,EACb,OAAmC,EACnC,QAAuB,EACvB,OAAqB;IAErB,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACxD,CAAC"}
|
package/lib/tree/at-rule.d.ts
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { Node, type NodeOptions } from './node.js';
|
|
2
|
-
import { Ruleset } from './ruleset.js';
|
|
3
|
-
import { Any } from './any.js';
|
|
4
|
-
import { Rules } from './rules.js';
|
|
5
|
-
import type { Context } from '../context.js';
|
|
6
|
-
import { type FinalPrintOptions, type PrintOptions } from './util/print.js';
|
|
7
|
-
import { type MaybePromise } from '@jesscss/awaitable-pipe';
|
|
8
|
-
import { Nil } from './nil.js';
|
|
9
|
-
export type AtRuleValue = {
|
|
10
|
-
name: Any<'atkeyword'>;
|
|
11
|
-
/** The prelude */
|
|
12
|
-
prelude?: Node;
|
|
13
|
-
rules?: Rules;
|
|
14
|
-
};
|
|
15
|
-
export declare const NESTABLE_AT_RULES: readonly ["@media", "@supports", "@layer", "@container", "@scope"];
|
|
16
|
-
export declare const ROOT_ONLY_AT_RULES: readonly ["@charset", "@import", "@namespace", "@font-face", "@keyframes", "@page", "@property", "@counter-style", "@viewport"];
|
|
17
|
-
export type AtRuleOptions = NodeOptions;
|
|
18
|
-
/**
|
|
19
|
-
* A rule like @charset or @media
|
|
20
|
-
*/
|
|
21
|
-
export declare class AtRule extends Node<AtRuleValue, AtRuleOptions> {
|
|
22
|
-
type: "AtRule";
|
|
23
|
-
shortType: "atrule";
|
|
24
|
-
allowRoot: boolean;
|
|
25
|
-
frames: (Ruleset | AtRule)[] | undefined;
|
|
26
|
-
protected _valueOf: string | undefined;
|
|
27
|
-
/** Used for equality comparison with other at-rules */
|
|
28
|
-
valueOf(): string;
|
|
29
|
-
/**
|
|
30
|
-
* Means: can bubble ruleset parents to children.
|
|
31
|
-
*/
|
|
32
|
-
isNestable(): boolean;
|
|
33
|
-
/**
|
|
34
|
-
* For legacy collapseNesting, will push ruleset to root silently.
|
|
35
|
-
*/
|
|
36
|
-
isRootOnly(): boolean;
|
|
37
|
-
isHoisted(opts: {
|
|
38
|
-
collapseNesting?: boolean;
|
|
39
|
-
}): boolean;
|
|
40
|
-
toTrimmedString(options?: PrintOptions): string;
|
|
41
|
-
/**
|
|
42
|
-
* Pre-evaluate name and prelude (similar to Ruleset.preEval)
|
|
43
|
-
* This allows us to extract layer names before rules are evaluated
|
|
44
|
-
*/
|
|
45
|
-
preEval(context: Context): MaybePromise<AtRule | Nil>;
|
|
46
|
-
private _preEvalPrelude;
|
|
47
|
-
private _extractAndStoreLayerName;
|
|
48
|
-
/** Render the opening of this at-rule (name and prelude) */
|
|
49
|
-
getHeaderString(options: FinalPrintOptions, withoutComments?: boolean): string;
|
|
50
|
-
evalNode(context: Context): MaybePromise<AtRule | Nil>;
|
|
51
|
-
}
|
|
52
|
-
export declare const atrule: (value?: AtRuleValue | undefined, options?: NodeOptions | undefined, location?: import("./node-base.js").LocationInfo | undefined) => AtRule;
|
|
53
|
-
//# sourceMappingURL=at-rule.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"at-rule.d.ts","sourceRoot":"","sources":["../../src/tree/at-rule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAyB,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AA0B7C,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAmB,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAc,KAAK,YAAY,EAAQ,MAAM,yBAAyB,CAAC;AAK9E,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IACvB,kBAAkB;IAClB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,iBAAiB,oEAAqE,CAAC;AACpG,eAAO,MAAM,kBAAkB,iIAUrB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC;AAExC;;GAEG;AACH,qBAAa,MAAO,SAAQ,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC;IAC1D,IAAI,EAAG,QAAQ,CAAU;IACzB,SAAS,EAAG,QAAQ,CAAU;IACrB,SAAS,UAAQ;IAE1B,MAAM,EAAE,CAAC,OAAO,GAAG,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC;IAEzC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAEvC,uDAAuD;IAC9C,OAAO;IAIhB;;OAEG;IACH,UAAU;IAIV;;OAEG;IACH,UAAU;IAIV,SAAS,CAAC,IAAI,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE;IAIpC,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM;IAKxD;;;OAGG;IACM,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC;IAyB9D,OAAO,CAAC,eAAe;IAkFvB,OAAO,CAAC,yBAAyB;IAqBjC,4DAA4D;IAC5D,eAAe,CAAC,OAAO,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG,MAAM;IAqDrE,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC;CAiThE;AAED,eAAO,MAAM,MAAM,8IAA+B,CAAC"}
|