@jesscss/plugin-less-compat 2.0.0-alpha.5 → 2.0.0-alpha.7

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.
Files changed (114) hide show
  1. package/README.md +3 -2
  2. package/lib/index.cjs +844 -0
  3. package/lib/index.d.ts +2 -0
  4. package/lib/index.js +800 -9
  5. package/lib/less-adapter.cjs +216 -0
  6. package/lib/less-adapter.js +181 -0
  7. package/lib/less-compat-structures.cjs +378 -0
  8. package/lib/less-compat-structures.d.ts +2 -2
  9. package/lib/less-compat-structures.js +367 -512
  10. package/lib/nodes/at-rule.d.ts +2 -6
  11. package/lib/nodes/attribute-selector.d.ts +2 -6
  12. package/lib/nodes/call.d.ts +2 -6
  13. package/lib/nodes/color.d.ts +1 -5
  14. package/lib/nodes/combinator.d.ts +1 -5
  15. package/lib/nodes/comment.d.ts +1 -5
  16. package/lib/nodes/condition.d.ts +2 -6
  17. package/lib/nodes/declaration.d.ts +2 -6
  18. package/lib/nodes/dimension.d.ts +1 -5
  19. package/lib/nodes/expression.d.ts +2 -6
  20. package/lib/nodes/extend.d.ts +1 -5
  21. package/lib/nodes/import.d.ts +2 -6
  22. package/lib/nodes/keyword.d.ts +1 -5
  23. package/lib/nodes/list.d.ts +2 -5
  24. package/lib/nodes/mixin.d.ts +2 -6
  25. package/lib/nodes/negative.d.ts +2 -6
  26. package/lib/nodes/operation.d.ts +2 -6
  27. package/lib/nodes/paren.d.ts +2 -6
  28. package/lib/nodes/quoted.d.ts +1 -5
  29. package/lib/nodes/reference.d.ts +1 -8
  30. package/lib/nodes/ruleset.d.ts +2 -6
  31. package/lib/nodes/selector.d.ts +2 -7
  32. package/lib/nodes/sequence.d.ts +2 -9
  33. package/lib/nodes/url.d.ts +1 -5
  34. package/lib/nodes/var-declaration.d.ts +2 -6
  35. package/lib/plugin.d.ts +44 -16
  36. package/lib/transform/adapter.d.ts +31 -0
  37. package/lib/transform/index.cjs +13 -0
  38. package/lib/transform/index.d.ts +1 -1
  39. package/lib/transform/index.js +3 -8
  40. package/lib/transform/less-adapter.d.ts +29 -0
  41. package/lib/transform.cjs +1045 -0
  42. package/lib/transform.js +1015 -0
  43. package/lib/types.d.ts +153 -28
  44. package/package.json +13 -12
  45. package/lib/index.js.map +0 -1
  46. package/lib/less-compat-structures.js.map +0 -1
  47. package/lib/nodes/at-rule.js +0 -72
  48. package/lib/nodes/at-rule.js.map +0 -1
  49. package/lib/nodes/attribute-selector.js +0 -54
  50. package/lib/nodes/attribute-selector.js.map +0 -1
  51. package/lib/nodes/call.js +0 -83
  52. package/lib/nodes/call.js.map +0 -1
  53. package/lib/nodes/color.js +0 -57
  54. package/lib/nodes/color.js.map +0 -1
  55. package/lib/nodes/combinator.js +0 -34
  56. package/lib/nodes/combinator.js.map +0 -1
  57. package/lib/nodes/comment.js +0 -41
  58. package/lib/nodes/comment.js.map +0 -1
  59. package/lib/nodes/condition.js +0 -60
  60. package/lib/nodes/condition.js.map +0 -1
  61. package/lib/nodes/declaration.js +0 -81
  62. package/lib/nodes/declaration.js.map +0 -1
  63. package/lib/nodes/dimension.js +0 -47
  64. package/lib/nodes/dimension.js.map +0 -1
  65. package/lib/nodes/expression.js +0 -44
  66. package/lib/nodes/expression.js.map +0 -1
  67. package/lib/nodes/extend.js +0 -57
  68. package/lib/nodes/extend.js.map +0 -1
  69. package/lib/nodes/import.js +0 -63
  70. package/lib/nodes/import.js.map +0 -1
  71. package/lib/nodes/index.js +0 -308
  72. package/lib/nodes/index.js.map +0 -1
  73. package/lib/nodes/keyword.js +0 -36
  74. package/lib/nodes/keyword.js.map +0 -1
  75. package/lib/nodes/list.js +0 -150
  76. package/lib/nodes/list.js.map +0 -1
  77. package/lib/nodes/mixin.js +0 -62
  78. package/lib/nodes/mixin.js.map +0 -1
  79. package/lib/nodes/negative.js +0 -42
  80. package/lib/nodes/negative.js.map +0 -1
  81. package/lib/nodes/operation.js +0 -63
  82. package/lib/nodes/operation.js.map +0 -1
  83. package/lib/nodes/paren.js +0 -42
  84. package/lib/nodes/paren.js.map +0 -1
  85. package/lib/nodes/quoted.js +0 -57
  86. package/lib/nodes/quoted.js.map +0 -1
  87. package/lib/nodes/reference.js +0 -80
  88. package/lib/nodes/reference.js.map +0 -1
  89. package/lib/nodes/ruleset.js +0 -108
  90. package/lib/nodes/ruleset.js.map +0 -1
  91. package/lib/nodes/selector.js +0 -226
  92. package/lib/nodes/selector.js.map +0 -1
  93. package/lib/nodes/sequence.js +0 -75
  94. package/lib/nodes/sequence.js.map +0 -1
  95. package/lib/nodes/url.js +0 -42
  96. package/lib/nodes/url.js.map +0 -1
  97. package/lib/nodes/var-declaration.js +0 -60
  98. package/lib/nodes/var-declaration.js.map +0 -1
  99. package/lib/plugin-utils.js +0 -100
  100. package/lib/plugin-utils.js.map +0 -1
  101. package/lib/plugin.js +0 -1027
  102. package/lib/plugin.js.map +0 -1
  103. package/lib/transform/from-less.js +0 -170
  104. package/lib/transform/from-less.js.map +0 -1
  105. package/lib/transform/index.js.map +0 -1
  106. package/lib/transform/proxy.d.ts +0 -32
  107. package/lib/transform/proxy.js +0 -138
  108. package/lib/transform/proxy.js.map +0 -1
  109. package/lib/transform/to-less.js +0 -128
  110. package/lib/transform/to-less.js.map +0 -1
  111. package/lib/transform/type-map.js +0 -105
  112. package/lib/transform/type-map.js.map +0 -1
  113. package/lib/types.js +0 -5
  114. package/lib/types.js.map +0 -1
package/lib/types.d.ts CHANGED
@@ -1,33 +1,158 @@
1
- /**
2
- * TypeScript type definitions for Less.js compatibility
3
- */
4
- export type LessNode = any;
1
+ import type { AtRule, Call, Color, Comment, Condition, Declaration, Dimension, Extend, Expression, List, Mixin, Negative, Node, Operation, Paren, Quoted, Reference, Ruleset, Sequence, StyleImport, Url, VarDeclaration } from '@jesscss/core';
2
+ import type { LessAdapterBase } from './transform/less-adapter.js';
3
+ export interface LessAdapterNode<TJess extends Node = Node> extends LessAdapterBase<TJess> {
4
+ type: string;
5
+ typeIndex: number | undefined;
6
+ accept(visitor: unknown): TJess | unknown;
7
+ }
8
+ export interface LessRuleset extends LessAdapterNode<Ruleset> {
9
+ type: 'Ruleset';
10
+ selectors: LessNode[];
11
+ rules: LessNode[];
12
+ }
13
+ export interface LessSelector extends LessAdapterNode<Node> {
14
+ type: 'Selector';
15
+ elements: LessElement[];
16
+ length: number;
17
+ }
18
+ export interface RawLessSelector {
19
+ type: 'Selector';
20
+ typeIndex: number | undefined;
21
+ elements: LessNode[];
22
+ length: number;
23
+ accept(visitor: unknown): unknown;
24
+ }
25
+ export interface LessElement extends LessAdapterNode<Node> {
26
+ type: 'Element';
27
+ combinator: LessCombinator | RawLessCombinator;
28
+ value: unknown;
29
+ isVariable: boolean;
30
+ }
31
+ export interface RawLessElement {
32
+ type: 'Element';
33
+ typeIndex: number | undefined;
34
+ combinator: LessCombinator | RawLessCombinator;
35
+ value: unknown;
36
+ isVariable: boolean;
37
+ accept(visitor: unknown): unknown;
38
+ }
39
+ export interface LessCombinator extends LessAdapterNode<Node> {
40
+ type: 'Combinator';
41
+ value: string;
42
+ emptyOrWhitespace: boolean;
43
+ }
44
+ export interface RawLessCombinator {
45
+ type: 'Combinator';
46
+ typeIndex: number | undefined;
47
+ value: string;
48
+ emptyOrWhitespace: boolean;
49
+ accept(visitor: unknown): unknown;
50
+ }
51
+ export interface LessDeclaration extends LessAdapterNode<Declaration> {
52
+ type: 'Declaration';
53
+ name: unknown;
54
+ value: LessNode | unknown;
55
+ important: unknown;
56
+ variable: boolean;
57
+ merge: boolean;
58
+ }
59
+ export interface LessVariable extends LessAdapterNode<Reference | VarDeclaration> {
60
+ type: 'Variable';
61
+ name: string;
62
+ }
63
+ export interface LessProperty extends LessAdapterNode<Reference> {
64
+ type: 'Property';
65
+ name: string;
66
+ }
67
+ export interface LessVariableCall extends LessAdapterNode<Reference> {
68
+ type: 'VariableCall';
69
+ name: string;
70
+ value?: unknown;
71
+ }
72
+ export interface LessMixinDefinition extends LessAdapterNode<Mixin> {
73
+ type: 'Mixin';
74
+ name?: unknown;
75
+ params?: unknown;
76
+ rules: LessNode[];
77
+ condition?: unknown;
78
+ }
79
+ export interface LessMixinCall extends LessAdapterNode<Call> {
80
+ type: 'Call';
81
+ name: unknown;
82
+ args: LessNode[];
83
+ index?: number;
84
+ }
85
+ export interface LessDimension extends LessAdapterNode<Dimension> {
86
+ type: 'Dimension' | 'Num';
87
+ value: number;
88
+ unit?: string;
89
+ }
90
+ export interface LessColor extends LessAdapterNode<Color> {
91
+ type: 'Color';
92
+ }
93
+ export interface LessOperation extends LessAdapterNode<Operation> {
94
+ type: 'Operation';
95
+ op: string;
96
+ operands: LessNode[];
97
+ }
98
+ export interface LessExpression extends LessAdapterNode<Expression | Sequence | List> {
99
+ type: 'Expression' | 'Value';
100
+ value: LessNode[];
101
+ length?: number;
102
+ }
103
+ export interface LessQuoted extends LessAdapterNode<Quoted> {
104
+ type: 'Quoted';
105
+ value: string;
106
+ quote: string;
107
+ escaped: boolean;
108
+ }
109
+ export interface LessURL extends LessAdapterNode<Url> {
110
+ type: 'Url';
111
+ value: LessNode | unknown;
112
+ }
113
+ export interface LessComment extends LessAdapterNode<Comment> {
114
+ type: 'Comment';
115
+ }
116
+ export interface LessAtRule extends LessAdapterNode<AtRule> {
117
+ type: 'AtRule' | 'Directive';
118
+ name: unknown;
119
+ value?: LessNode | unknown;
120
+ rules: LessNode[];
121
+ }
122
+ export interface LessImport extends LessAdapterNode<StyleImport> {
123
+ type: 'Import';
124
+ path: LessNode | unknown;
125
+ options: Record<string, unknown>;
126
+ currentFileInfo: unknown;
127
+ index?: number;
128
+ }
129
+ export interface LessExtend extends LessAdapterNode<Extend> {
130
+ type: 'Extend';
131
+ selector: LessSelector | unknown;
132
+ option: 'exact' | 'all';
133
+ index?: number;
134
+ currentFileInfo: unknown;
135
+ }
136
+ export interface LessCondition extends LessAdapterNode<Condition> {
137
+ type: 'Condition';
138
+ op: string;
139
+ lvalue: LessNode | unknown;
140
+ rvalue: LessNode | unknown;
141
+ negate: boolean;
142
+ }
143
+ export interface LessParen extends LessAdapterNode<Paren> {
144
+ type: 'Paren';
145
+ value: LessNode | unknown;
146
+ }
147
+ export interface LessNegative extends LessAdapterNode<Negative> {
148
+ type: 'Negative';
149
+ value: LessNode | unknown;
150
+ }
151
+ export type LessValue = LessExpression;
152
+ export type LessAssignment = LessDeclaration;
153
+ export type LessNode = LessRuleset | LessSelector | RawLessSelector | LessElement | RawLessElement | LessCombinator | RawLessCombinator | LessDeclaration | LessVariable | LessProperty | LessVariableCall | LessMixinDefinition | LessMixinCall | LessDimension | LessColor | LessOperation | LessExpression | LessQuoted | LessURL | LessComment | LessAtRule | LessImport | LessExtend | LessCondition | LessParen | LessNegative | LessAdapterNode;
5
154
  /**
6
155
  * @deprecated Less.js Visitor API - This is a compatibility type for Less.js visitors.
7
156
  * Use Jess's native Visitor interface instead when possible.
8
157
  */
9
158
  export type LessVisitor = any;
10
- export type LessRuleset = any;
11
- export type LessSelector = any;
12
- export type LessElement = any;
13
- export type LessDeclaration = any;
14
- export type LessVariable = any;
15
- export type LessProperty = any;
16
- export type LessVariableCall = any;
17
- export type LessMixinDefinition = any;
18
- export type LessMixinCall = any;
19
- export type LessDimension = any;
20
- export type LessColor = any;
21
- export type LessOperation = any;
22
- export type LessExpression = any;
23
- export type LessQuoted = any;
24
- export type LessURL = any;
25
- export type LessComment = any;
26
- export type LessAtRule = any;
27
- export type LessImport = any;
28
- export type LessExtend = any;
29
- export type LessCondition = any;
30
- export type LessParen = any;
31
- export type LessNegative = any;
32
- export type LessValue = any;
33
- export type LessAssignment = any;
package/package.json CHANGED
@@ -4,25 +4,25 @@
4
4
  "access": "public"
5
5
  },
6
6
  "description": "Less.js compatibility layer for Jess - enables Less plugins and visitors to work with Jess AST",
7
- "version": "2.0.0-alpha.5",
7
+ "version": "2.0.0-alpha.7",
8
8
  "type": "module",
9
- "main": "lib/index.js",
9
+ "main": "lib/index.cjs",
10
10
  "types": "lib/index.d.ts",
11
11
  "exports": {
12
12
  ".": {
13
- "import": "./lib/index.js",
14
13
  "types": "./lib/index.d.ts",
15
- "source": "./src/index.ts"
14
+ "import": "./lib/index.js",
15
+ "require": "./lib/index.cjs"
16
16
  },
17
17
  "./transform": {
18
- "import": "./lib/transform/index.js",
19
18
  "types": "./lib/transform/index.d.ts",
20
- "source": "./src/transform/index.ts"
19
+ "import": "./lib/transform/index.js",
20
+ "require": "./lib/transform/index.cjs"
21
21
  },
22
22
  "./less-compat-structures": {
23
- "import": "./lib/less-compat-structures.js",
24
23
  "types": "./lib/less-compat-structures.d.ts",
25
- "source": "./src/less-compat-structures.ts"
24
+ "import": "./lib/less-compat-structures.js",
25
+ "require": "./lib/less-compat-structures.cjs"
26
26
  },
27
27
  "./package.json": "./package.json"
28
28
  },
@@ -30,9 +30,9 @@
30
30
  "lib"
31
31
  ],
32
32
  "dependencies": {
33
- "@jesscss/less-parser": "2.0.0-alpha.5",
34
- "@jesscss/core": "2.0.0-alpha.5",
35
- "@jesscss/plugin-node-modules": "2.0.0-alpha.5"
33
+ "@jesscss/core": "2.0.0-alpha.7",
34
+ "@jesscss/plugin-node-modules": "2.0.0-alpha.7",
35
+ "@jesscss/less-parser": "2.0.0-alpha.7"
36
36
  },
37
37
  "devDependencies": {
38
38
  "less-plugin-autoprefix": "^2.0.0",
@@ -45,10 +45,11 @@
45
45
  "url": "https://github.com/jesscss/jess/issues"
46
46
  },
47
47
  "homepage": "https://github.com/jesscss/jess#readme",
48
+ "module": "lib/index.js",
48
49
  "scripts": {
49
50
  "ci": "pnpm build && pnpm test",
50
51
  "build": "pnpm compile",
51
- "compile": "tsc -b tsconfig.build.json",
52
+ "compile": "tsdown --tsconfig tsconfig.build.json --no-dts && tsc -p tsconfig.build.json --emitDeclarationOnly",
52
53
  "test": "cross-env TEST=true vitest --run",
53
54
  "lint:fix": "eslint --fix '**/*.{js,ts}'",
54
55
  "lint": "eslint '**/*.{js,ts}'"
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,OAAO,IAAI,gBAAgB,EAAgC,MAAM,aAAa,CAAC;AAC1G,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"less-compat-structures.js","sourceRoot":"","sources":["../src/less-compat-structures.ts"],"names":[],"mappings":"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"}
@@ -1,72 +0,0 @@
1
- import { Node } from '@jesscss/core';
2
- import { createLessProxy } from '../transform/proxy.js';
3
- import { toLessNode } from '../transform/to-less.js';
4
- import { mapJessTypeToLessType } from '../transform/type-map.js';
5
- /**
6
- * Transform a Jess AtRule to a Less-compatible AtRule
7
- */
8
- export function transformAtRuleToLess(jessAtRule, cache) {
9
- return createLessProxy(jessAtRule, cache, (prop, target) => {
10
- const atRule = target;
11
- // Map 'type' property
12
- // Less.js v2 used "Directive" instead of "AtRule" - support both for compatibility
13
- if (prop === 'type') {
14
- // For Less.js v2 compatibility, we can return "Directive" if needed
15
- // But by default, map to "AtRule" (modern)
16
- return mapJessTypeToLessType(atRule.type);
17
- }
18
- // Map 'typeIndex'
19
- if (prop === 'typeIndex') {
20
- return undefined;
21
- }
22
- // Map 'name' property
23
- if (prop === 'name') {
24
- return atRule.value.name;
25
- }
26
- // Map 'value' property (Less expects Value node or array)
27
- // Jess uses 'prelude' instead of 'value'
28
- if (prop === 'value') {
29
- const prelude = atRule.value.prelude;
30
- if (prelude instanceof Node) {
31
- return toLessNode(prelude, { cache });
32
- }
33
- return prelude;
34
- }
35
- // Map 'rules' property (for @media, @keyframes, etc.)
36
- if (prop === 'rules') {
37
- const rules = atRule.value.rules;
38
- if (rules) {
39
- return rules.value.map((r) => toLessNode(r, { cache }));
40
- }
41
- return [];
42
- }
43
- // Map 'accept' method for visitor traversal
44
- // AtRule's accept should ONLY traverse children (rules), NOT call visitor methods on itself
45
- // The visitor's visit() method already called visitAtRule() or visitDirective() before calling accept()
46
- if (prop === 'accept') {
47
- return function (visitor) {
48
- // AtRule's accept only traverses its rules (children)
49
- // Less.js AtRule.accept() pattern: visitor.visitArray(this.rules)
50
- const rules = atRule.value.rules;
51
- if (rules && rules.value && rules.value.length > 0) {
52
- const lessRules = rules.value.map((r) => toLessNode(r, { cache }));
53
- if (visitor.visitArray) {
54
- visitor.visitArray(lessRules);
55
- }
56
- else {
57
- // Fallback: call accept on each rule
58
- for (const lessRule of lessRules) {
59
- if (lessRule && lessRule.accept) {
60
- lessRule.accept(visitor);
61
- }
62
- }
63
- }
64
- }
65
- // Return the atRule (accept doesn't return a replacement node)
66
- return atRule;
67
- };
68
- }
69
- return undefined;
70
- });
71
- }
72
- //# sourceMappingURL=at-rule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"at-rule.js","sourceRoot":"","sources":["../../src/nodes/at-rule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,IAAI,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAIjE;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,UAAkB,EAClB,KAAyB;IAEzB,OAAO,eAAe,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACzD,MAAM,MAAM,GAAG,MAAgB,CAAC;QAEhC,sBAAsB;QACtB,mFAAmF;QACnF,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,oEAAoE;YACpE,2CAA2C;YAC3C,OAAO,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;QAED,kBAAkB;QAClB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAC3B,CAAC;QAED,0DAA0D;QAC1D,yCAAyC;QACzC,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YACrC,IAAI,OAAO,YAAY,IAAI,EAAE,CAAC;gBAC5B,OAAO,UAAU,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACxC,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,sDAAsD;QACtD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YACjC,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAO,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAChE,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,4CAA4C;QAC5C,4FAA4F;QAC5F,wGAAwG;QACxG,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,UAAS,OAAY;gBAC1B,sDAAsD;gBACtD,kEAAkE;gBAClE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;gBACjC,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACnD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAO,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;oBACzE,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBACvB,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;oBAChC,CAAC;yBAAM,CAAC;wBACN,qCAAqC;wBACrC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;4BACjC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gCAChC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;4BAC3B,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,+DAA+D;gBAC/D,OAAO,MAAM,CAAC;YAChB,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,54 +0,0 @@
1
- import { Node } from '@jesscss/core';
2
- import { createLessProxy } from '../transform/proxy.js';
3
- import { toLessNode } from '../transform/to-less.js';
4
- import { mapJessTypeToLessType } from '../transform/type-map.js';
5
- import { fromLessNode } from '../transform/from-less.js';
6
- /**
7
- * Transform a Jess AttributeSelector to a Less-compatible Attribute
8
- */
9
- export function transformAttributeSelectorToLess(jessAttr, cache) {
10
- return createLessProxy(jessAttr, cache, (prop, target) => {
11
- const attr = target;
12
- // Map 'type' property
13
- if (prop === 'type') {
14
- return mapJessTypeToLessType(attr.type);
15
- }
16
- // Map 'typeIndex'
17
- if (prop === 'typeIndex') {
18
- return undefined;
19
- }
20
- // Map 'key' property (Less uses 'key', Jess uses 'name')
21
- if (prop === 'key') {
22
- const name = attr.value.name;
23
- if (name instanceof Node) {
24
- return toLessNode(name, { cache });
25
- }
26
- return name;
27
- }
28
- // Map 'op' property (operator)
29
- if (prop === 'op') {
30
- return attr.value.op || '';
31
- }
32
- // Map 'value' property
33
- if (prop === 'value') {
34
- const value = attr.value.value;
35
- if (value instanceof Node) {
36
- return toLessNode(value, { cache });
37
- }
38
- return value;
39
- }
40
- // Map 'accept' method for visitor traversal
41
- if (prop === 'accept') {
42
- return function (visitor) {
43
- const lessAttr = transformAttributeSelectorToLess(attr, cache);
44
- const result = visitor.visit(lessAttr);
45
- if (result !== lessAttr) {
46
- return fromLessNode(result, { cache });
47
- }
48
- return attr;
49
- };
50
- }
51
- return undefined;
52
- });
53
- }
54
- //# sourceMappingURL=attribute-selector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"attribute-selector.js","sourceRoot":"","sources":["../../src/nodes/attribute-selector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,IAAI,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAC9C,QAA2B,EAC3B,KAAyB;IAEzB,OAAO,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACvD,MAAM,IAAI,GAAG,MAA2B,CAAC;QAEzC,sBAAsB;QACtB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;QAED,kBAAkB;QAClB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,yDAAyD;QACzD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAC7B,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;gBACzB,OAAO,UAAU,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACrC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,+BAA+B;QAC/B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;QAC7B,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YAC/B,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;gBAC1B,OAAO,UAAU,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACtC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,4CAA4C;QAC5C,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,UAAS,OAAY;gBAC1B,MAAM,QAAQ,GAAG,gCAAgC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACvC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACxB,OAAO,YAAY,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBACzC,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC"}
package/lib/nodes/call.js DELETED
@@ -1,83 +0,0 @@
1
- import { Node } from '@jesscss/core';
2
- import { createLessProxy } from '../transform/proxy.js';
3
- import { toLessNode } from '../transform/to-less.js';
4
- import { mapJessTypeToLessType } from '../transform/type-map.js';
5
- /**
6
- * Transform a Jess Call to a Less-compatible Call or MixinCall
7
- */
8
- export function transformCallToLess(jessCall, cache) {
9
- return createLessProxy(jessCall, cache, (prop, target) => {
10
- const call = target;
11
- // Map 'type' property
12
- // Less distinguishes between Call and MixinCall, but Jess uses Call for both
13
- // We'll default to Call, but this could be enhanced to detect mixin calls
14
- if (prop === 'type') {
15
- return mapJessTypeToLessType(call.type);
16
- }
17
- // Map 'typeIndex'
18
- if (prop === 'typeIndex') {
19
- return undefined;
20
- }
21
- // Map 'name' property
22
- if (prop === 'name') {
23
- return call.value.name;
24
- }
25
- // Map 'args' property
26
- if (prop === 'args') {
27
- const args = call.value.args;
28
- if (args) {
29
- return args.value.map((arg) => {
30
- if (arg instanceof Node) {
31
- return toLessNode(arg, { cache });
32
- }
33
- return arg;
34
- });
35
- }
36
- return [];
37
- }
38
- // Map 'index' property
39
- if (prop === 'index') {
40
- const loc = call.location;
41
- if (Array.isArray(loc) || !loc) {
42
- return undefined;
43
- }
44
- return loc.index;
45
- }
46
- // Map 'accept' method for visitor traversal
47
- if (prop === 'accept') {
48
- return function (visitor) {
49
- // Less Call's accept() should traverse args if they exist
50
- // But we don't call visitor.visit() here to avoid infinite loops
51
- // The visitor's visit() method will handle traversal
52
- // If args exist, we should traverse them using visitArray
53
- const args = call.value.args;
54
- if (args && args.value.length > 0) {
55
- const lessArgs = args.value
56
- .map((arg) => {
57
- if (arg instanceof Node) {
58
- return toLessNode(arg, { cache });
59
- }
60
- return arg;
61
- })
62
- .filter((arg) => arg !== undefined && arg !== null); // Filter out undefined/null
63
- if (lessArgs.length > 0) {
64
- if (visitor.visitArray) {
65
- visitor.visitArray(lessArgs);
66
- }
67
- else {
68
- // Fallback: call accept on each arg if visitArray not available
69
- for (const lessArg of lessArgs) {
70
- if (lessArg && lessArg.accept) {
71
- lessArg.accept(visitor);
72
- }
73
- }
74
- }
75
- }
76
- }
77
- return call;
78
- };
79
- }
80
- return undefined;
81
- });
82
- }
83
- //# sourceMappingURL=call.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/nodes/call.ts"],"names":[],"mappings":"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"}
@@ -1,57 +0,0 @@
1
- import { createLessProxy } from '../transform/proxy.js';
2
- import { mapJessTypeToLessType } from '../transform/type-map.js';
3
- /**
4
- * Transform a Jess Color to a Less-compatible Color
5
- */
6
- export function transformColorToLess(jessColor, cache) {
7
- return createLessProxy(jessColor, cache, (prop, target) => {
8
- const color = target;
9
- // Map 'type' property
10
- if (prop === 'type') {
11
- return mapJessTypeToLessType(color.type);
12
- }
13
- // Map 'typeIndex'
14
- if (prop === 'typeIndex') {
15
- return undefined;
16
- }
17
- // Map 'rgb' property
18
- if (prop === 'rgb') {
19
- return color.value.rgb || [0, 0, 0];
20
- }
21
- // Map 'alpha' property
22
- if (prop === 'alpha') {
23
- return color._alpha;
24
- }
25
- // Map 'value' property (Less expects string representation)
26
- if (prop === 'value') {
27
- // Convert color to string representation
28
- // Less uses format like '#rrggbb' or 'rgba(r, g, b, a)'
29
- const rgb = color.value.rgb;
30
- const alpha = color._alpha;
31
- if (rgb && alpha !== undefined && alpha < 1) {
32
- return `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${alpha})`;
33
- }
34
- if (rgb) {
35
- // Convert to hex
36
- const hex = rgb.map((v) => {
37
- const numericValue = Array.isArray(v) ? v[0] : v;
38
- const h = Math.round(numericValue).toString(16).padStart(2, '0');
39
- return h;
40
- }).join('');
41
- return `#${hex}`;
42
- }
43
- return '';
44
- }
45
- // Map 'accept' method for visitor traversal
46
- // Less's Visitor.visit() calls node.accept(this) to traverse children
47
- // Color nodes typically don't have children to traverse, so this is a no-op
48
- if (prop === 'accept') {
49
- return function (visitor) {
50
- // Color nodes don't have children to traverse
51
- // The visitor.visit() was already called by our plugin wrapper
52
- };
53
- }
54
- return undefined;
55
- });
56
- }
57
- //# sourceMappingURL=color.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"color.js","sourceRoot":"","sources":["../../src/nodes/color.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGjE;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAgB,EAChB,KAAyB;IAEzB,OAAO,eAAe,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACxD,MAAM,KAAK,GAAG,MAAe,CAAC;QAE9B,sBAAsB;QACtB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;QAED,kBAAkB;QAClB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,qBAAqB;QACrB,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACtC,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC,MAAM,CAAC;QACtB,CAAC;QAED,4DAA4D;QAC5D,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,yCAAyC;YACzC,wDAAwD;YACxD,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;YAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YAC3B,IAAI,GAAG,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC5C,OAAO,QAAQ,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC;YAC3D,CAAC;YACD,IAAI,GAAG,EAAE,CAAC;gBACR,iBAAiB;gBACjB,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACxB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBACjE,OAAO,CAAC,CAAC;gBACX,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACZ,OAAO,IAAI,GAAG,EAAE,CAAC;YACnB,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,4CAA4C;QAC5C,sEAAsE;QACtE,4EAA4E;QAC5E,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,UAAS,OAAY;gBAC1B,8CAA8C;gBAC9C,+DAA+D;YACjE,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,34 +0,0 @@
1
- import { createLessProxy } from '../transform/proxy.js';
2
- import { mapJessTypeToLessType } from '../transform/type-map.js';
3
- /**
4
- * Transform a Jess Combinator to a Less-compatible Combinator
5
- */
6
- export function transformCombinatorToLess(jessCombinator, cache) {
7
- return createLessProxy(jessCombinator, cache, (prop, target) => {
8
- const combinator = target;
9
- // Map 'type' property
10
- if (prop === 'type') {
11
- return mapJessTypeToLessType(combinator.type);
12
- }
13
- // Map 'typeIndex'
14
- if (prop === 'typeIndex') {
15
- return undefined;
16
- }
17
- // Map 'value' property
18
- if (prop === 'value') {
19
- return combinator.value;
20
- }
21
- // Map 'accept' method for visitor traversal
22
- if (prop === 'accept') {
23
- return function (visitor) {
24
- // Less Combinator has no children, so accept() should just return the combinator
25
- // The visitor's visit() method will be called by the visitor itself
26
- // We don't need to call visitor.visit() here - that would create a loop
27
- // if the visitor's visit() method calls accept() again
28
- return combinator;
29
- };
30
- }
31
- return undefined;
32
- });
33
- }
34
- //# sourceMappingURL=combinator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"combinator.js","sourceRoot":"","sources":["../../src/nodes/combinator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGjE;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,cAA0B,EAC1B,KAAyB;IAEzB,OAAO,eAAe,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAC7D,MAAM,UAAU,GAAG,MAAoB,CAAC;QAExC,sBAAsB;QACtB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,qBAAqB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;QAED,kBAAkB;QAClB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,OAAO,UAAU,CAAC,KAAK,CAAC;QAC1B,CAAC;QAED,4CAA4C;QAC5C,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,UAAS,OAAY;gBAC1B,iFAAiF;gBACjF,oEAAoE;gBACpE,wEAAwE;gBACxE,uDAAuD;gBACvD,OAAO,UAAU,CAAC;YACpB,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,41 +0,0 @@
1
- import { createLessProxy } from '../transform/proxy.js';
2
- import { mapJessTypeToLessType } from '../transform/type-map.js';
3
- import { fromLessNode } from '../transform/from-less.js';
4
- /**
5
- * Transform a Jess Comment to a Less-compatible Comment
6
- */
7
- export function transformCommentToLess(jessComment, cache) {
8
- return createLessProxy(jessComment, cache, (prop, target) => {
9
- const comment = target;
10
- // Map 'type' property
11
- if (prop === 'type') {
12
- return mapJessTypeToLessType(comment.type);
13
- }
14
- // Map 'typeIndex'
15
- if (prop === 'typeIndex') {
16
- return undefined;
17
- }
18
- // Map 'value' property
19
- if (prop === 'value') {
20
- return comment.value;
21
- }
22
- // Map 'silent' property (Less uses this for /* */ vs // comments)
23
- if (prop === 'silent') {
24
- // Jess doesn't distinguish, default to false (block comment)
25
- return false;
26
- }
27
- // Map 'accept' method for visitor traversal
28
- if (prop === 'accept') {
29
- return function (visitor) {
30
- const lessComment = transformCommentToLess(comment, cache);
31
- const result = visitor.visit(lessComment);
32
- if (result !== lessComment) {
33
- return fromLessNode(result, { cache });
34
- }
35
- return comment;
36
- };
37
- }
38
- return undefined;
39
- });
40
- }
41
- //# sourceMappingURL=comment.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"comment.js","sourceRoot":"","sources":["../../src/nodes/comment.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,WAAoB,EACpB,KAAyB;IAEzB,OAAO,eAAe,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAC1D,MAAM,OAAO,GAAG,MAAiB,CAAC;QAElC,sBAAsB;QACtB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QAED,kBAAkB;QAClB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,OAAO,OAAO,CAAC,KAAK,CAAC;QACvB,CAAC;QAED,kEAAkE;QAClE,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,6DAA6D;YAC7D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,4CAA4C;QAC5C,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,UAAS,OAAY;gBAC1B,MAAM,WAAW,GAAG,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAC1C,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;oBAC3B,OAAO,YAAY,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBACzC,CAAC;gBACD,OAAO,OAAO,CAAC;YACjB,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC"}