@less/test-data 4.9.0 → 5.0.0-alpha.2

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 (211) hide show
  1. package/UPSTREAM-FIXTURE-SYNC.md +54 -0
  2. package/package.json +4 -1
  3. package/styles.config.ts +15 -0
  4. package/tests-config/3rd-party/styles.config.cjs +1 -1
  5. package/tests-config/compression/styles.config.cjs +1 -1
  6. package/tests-config/debug/all/styles.config.cjs +1 -1
  7. package/tests-config/debug/comments/styles.config.cjs +1 -1
  8. package/tests-config/debug/mediaquery/styles.config.cjs +1 -1
  9. package/tests-config/filemanagerPlugin/styles.config.cjs +1 -1
  10. package/tests-config/functions-harness/functions-harness.css +8 -0
  11. package/tests-config/functions-harness/functions-harness.less +10 -0
  12. package/tests-config/js-type-errors/js-type-error-2.txt +4 -0
  13. package/tests-config/js-type-errors/js-type-error.txt +1 -1
  14. package/tests-config/namespacing/legacy/namespacing-7.css +15 -0
  15. package/tests-config/namespacing/namespacing-5.less +3 -3
  16. package/tests-config/namespacing/namespacing-7.css +16 -8
  17. package/tests-config/namespacing/styles.config.cjs +4 -1
  18. package/tests-config/sourcemaps/styles.config.cjs +1 -1
  19. package/tests-config/sourcemaps-variable-selector/styles.config.cjs +1 -1
  20. package/tests-config/strict-imports/legacy/strict-imports.css +14 -0
  21. package/tests-config/strict-imports/strict-imports.css +4 -2
  22. package/tests-config/strict-imports/styles.config.cjs +6 -5
  23. package/tests-config/units/no-strict/legacy/no-strict.css +24 -0
  24. package/tests-config/units/no-strict/no-strict.css +3 -3
  25. package/tests-config/url-args/legacy/urls.css +58 -0
  26. package/tests-config/url-args/urls.css +2 -1
  27. package/tests-error/eval/ampersand-merge-template-invalid.less +7 -0
  28. package/tests-error/eval/ampersand-merge-template-invalid.txt +1 -0
  29. package/tests-error/eval/at-rules-undefined-var.less +1 -1
  30. package/tests-error/eval/property-undefined.txt +1 -0
  31. package/tests-error/eval/recursive-property.txt +1 -0
  32. package/tests-unit/at-rule-variable-deprecated/at-rule-variable-deprecated.css +0 -38
  33. package/tests-unit/at-rule-variable-deprecated/at-rule-variable-deprecated.less +0 -70
  34. package/tests-unit/at-rule-variable-interpolation/at-rule-variable-interpolation.css +45 -0
  35. package/tests-unit/at-rule-variable-interpolation/at-rule-variable-interpolation.less +72 -0
  36. package/tests-unit/at-rules/at-rules.css +8 -6
  37. package/tests-unit/at-rules/legacy/at-rules.css +110 -0
  38. package/tests-unit/at-rules/styles.config.ts +5 -0
  39. package/tests-unit/at-rules-bubbling/at-rules-bubbling.css +121 -0
  40. package/tests-unit/at-rules-bubbling/legacy/at-rules-bubbling.css +122 -0
  41. package/tests-unit/at-rules-keyword-comments/at-rules-keyword-comments.css +2 -5
  42. package/tests-unit/at-rules-keyword-comments/legacy/at-rules-keyword-comments.css +12 -0
  43. package/tests-unit/at-rules-targeted/at-rules-targeted.css +5 -3
  44. package/tests-unit/at-rules-targeted/legacy/at-rules-targeted.css +55 -0
  45. package/tests-unit/calc/calc.css +8 -8
  46. package/tests-unit/calc/calc.less +1 -0
  47. package/tests-unit/calc/legacy/calc.css +32 -0
  48. package/tests-unit/color-functions/basic.css +1 -1
  49. package/tests-unit/color-functions/comprehensive.css +5 -5
  50. package/tests-unit/color-functions/comprehensive.less +1 -0
  51. package/tests-unit/color-functions/formats.css +0 -12
  52. package/tests-unit/color-functions/formats.less +0 -15
  53. package/tests-unit/color-functions/legacy/basic.css +21 -0
  54. package/tests-unit/color-functions/legacy/comprehensive.css +48 -0
  55. package/tests-unit/color-functions/legacy/modern-syntax.css +9 -0
  56. package/tests-unit/color-functions/legacy/operations.css +18 -0
  57. package/tests-unit/color-functions/legacy/rgba.css +20 -0
  58. package/tests-unit/color-functions/modern-syntax.css +4 -4
  59. package/tests-unit/color-functions/modern-syntax.less +1 -0
  60. package/tests-unit/color-functions/operations.less +1 -0
  61. package/tests-unit/color-functions/rgba.css +3 -3
  62. package/tests-unit/color-functions/rgba.less +3 -1
  63. package/tests-unit/comments/comments.css +5 -6
  64. package/tests-unit/comments/comments.less +2 -1
  65. package/tests-unit/comments/comments2.css +4 -6
  66. package/tests-unit/comments/comments2.less +3 -0
  67. package/tests-unit/comments/legacy/comments.css +86 -0
  68. package/tests-unit/comments/legacy/comments2.css +21 -0
  69. package/tests-unit/container/container.css +40 -83
  70. package/tests-unit/container/container.less +28 -82
  71. package/tests-unit/container/legacy/container.css +273 -0
  72. package/tests-unit/container/styles.config.ts +8 -0
  73. package/tests-unit/css-3/css-3.css +4 -4
  74. package/tests-unit/css-3/legacy/css-3.css +147 -0
  75. package/tests-unit/css-escapes/css-escapes.css +4 -4
  76. package/tests-unit/css-escapes/legacy/css-escapes.css +34 -0
  77. package/tests-unit/css-escapes/styles.config.ts +5 -0
  78. package/tests-unit/css-grid/css-grid.css +4 -1
  79. package/tests-unit/css-grid/legacy/css-grid.css +27 -0
  80. package/tests-unit/css-guards/css-guards.less +2 -1
  81. package/tests-unit/detached-rulesets/detached-rulesets.css +26 -18
  82. package/tests-unit/detached-rulesets/legacy/detached-rulesets.css +79 -0
  83. package/tests-unit/directives-bubbling/directives-bubbling.css +16 -14
  84. package/tests-unit/extend/extend.css +22 -28
  85. package/tests-unit/extend/legacy/extend.css +79 -0
  86. package/tests-unit/extend/styles.config.ts +5 -0
  87. package/tests-unit/extend-chaining/extend-chaining.css +7 -10
  88. package/tests-unit/extend-chaining/legacy/extend-chaining.css +84 -0
  89. package/tests-unit/extend-clearfix/extend-clearfix.css +1 -3
  90. package/tests-unit/extend-clearfix/extend-clearfix.less +0 -1
  91. package/tests-unit/{extend → extend-clearfix/legacy}/extend-clearfix.css +3 -0
  92. package/tests-unit/extend-exact/extend-exact.css +25 -24
  93. package/tests-unit/extend-exact/legacy/extend-exact.css +40 -0
  94. package/tests-unit/extend-exact/styles.config.ts +5 -0
  95. package/tests-unit/extend-media/extend-media.css +9 -14
  96. package/tests-unit/extend-media/legacy/extend-media.css +27 -0
  97. package/tests-unit/extend-media/styles.config.ts +5 -0
  98. package/tests-unit/extend-nest/extend-nest.css +3 -22
  99. package/tests-unit/extend-nest/legacy/extend-nest.css +60 -0
  100. package/tests-unit/extend-selector/extend-selector.css +42 -67
  101. package/tests-unit/extend-selector/extend-selector.less +0 -15
  102. package/tests-unit/extend-selector/legacy/extend-selector.css +73 -0
  103. package/tests-unit/extend-selector/styles.config.ts +5 -0
  104. package/tests-unit/extract-and-length/extract-and-length.css +6 -5
  105. package/tests-unit/extract-and-length/extract-and-length.less +7 -2
  106. package/tests-unit/extract-and-length/legacy/extract-and-length.css +137 -0
  107. package/tests-unit/functions/functions.css +5 -16
  108. package/tests-unit/functions/functions.less +8 -21
  109. package/tests-unit/functions/legacy/functions.css +244 -0
  110. package/tests-unit/functions/legacy/functions.less +296 -0
  111. package/tests-unit/functions-each/functions-each.css +4 -2
  112. package/tests-unit/import/import-reference-issues.css +6 -6
  113. package/tests-unit/import/import-reference.css +4 -2
  114. package/tests-unit/import/legacy/import-reference-issues.css +27 -0
  115. package/tests-unit/import/legacy/import-reference.css +101 -0
  116. package/tests-unit/import/styles.config.cjs +5 -4
  117. package/tests-unit/layer/layer.css +30 -28
  118. package/tests-unit/layer/legacy/layer.css +136 -0
  119. package/tests-unit/layer/styles.config.ts +5 -0
  120. package/tests-unit/math-css-vars/math-css-vars.css +1 -0
  121. package/tests-unit/math-css-vars/math-css-vars.less +1 -0
  122. package/tests-unit/media/legacy/media.css +274 -0
  123. package/tests-unit/media/media.css +49 -43
  124. package/tests-unit/media/media.less +0 -2
  125. package/tests-unit/media/styles.config.cjs +5 -0
  126. package/tests-unit/merge/merge.css +2 -2
  127. package/tests-unit/mixin-noparens/legacy/mixin-noparens.css +10 -0
  128. package/tests-unit/mixin-noparens/mixin-noparens.css +4 -2
  129. package/tests-unit/mixin-noparens/styles.config.ts +5 -0
  130. package/tests-unit/mixins/legacy/maps.css +9 -0
  131. package/tests-unit/mixins/legacy/mixins.css +147 -0
  132. package/tests-unit/mixins/maps.css +7 -5
  133. package/tests-unit/mixins/mixins.css +7 -5
  134. package/tests-unit/mixins/styles.config.ts +5 -0
  135. package/tests-unit/mixins-closure/legacy/mixins-closure.css +12 -0
  136. package/tests-unit/mixins-closure/mixins-closure.css +4 -2
  137. package/tests-unit/mixins-closure/styles.config.ts +5 -0
  138. package/tests-unit/mixins-guards/legacy/mixins-guards.css +214 -0
  139. package/tests-unit/mixins-guards/mixins-guards.css +21 -5
  140. package/tests-unit/mixins-guards/mixins-guards.less +0 -1
  141. package/tests-unit/mixins-guards/styles.config.ts +5 -0
  142. package/tests-unit/mixins-guards-default-func/legacy/mixins-guards-default-func.css +132 -0
  143. package/tests-unit/mixins-guards-default-func/mixins-guards-default-func.css +0 -2
  144. package/tests-unit/mixins-important/mixins-important.css +33 -19
  145. package/tests-unit/mixins-interpolated/legacy/mixins-interpolated.css +42 -0
  146. package/tests-unit/mixins-interpolated/mixins-interpolated.css +24 -14
  147. package/tests-unit/mixins-interpolated/styles.config.ts +5 -0
  148. package/tests-unit/mixins-nested/legacy/mixins-nested.css +17 -0
  149. package/tests-unit/mixins-nested/mixins-nested.css +16 -12
  150. package/tests-unit/mixins-nested/styles.config.ts +5 -0
  151. package/tests-unit/nesting/legacy/nesting.css +27 -0
  152. package/tests-unit/nesting/nesting-uncollapsed.css +26 -0
  153. package/tests-unit/nesting/nesting.css +1 -1
  154. package/tests-unit/nesting/styles.config.ts +6 -0
  155. package/tests-unit/operations/legacy/operations-advanced.css +36 -0
  156. package/tests-unit/operations/operations-advanced.css +1 -1
  157. package/tests-unit/operations/operations.css +4 -2
  158. package/tests-unit/parse-interpolation/legacy/parse-interpolation.css +39 -0
  159. package/tests-unit/parse-interpolation/parse-interpolation.css +72 -35
  160. package/tests-unit/parse-interpolation/parse-interpolation.less +73 -25
  161. package/tests-unit/parse-interpolation/styles.config.ts +5 -0
  162. package/tests-unit/parser-property-interp/parser-property-interp.css +1 -1
  163. package/tests-unit/parser-property-interp/parser-property-interp.less +2 -2
  164. package/tests-unit/parser-slashed-combinator/parser-slashed-combinator.css +1 -9
  165. package/tests-unit/parser-slashed-combinator/parser-slashed-combinator.less +11 -11
  166. package/tests-unit/plugin/styles.config.ts +11 -0
  167. package/tests-unit/property-accessors/legacy/property-accessors.css +60 -0
  168. package/tests-unit/property-accessors/property-accessors.css +15 -7
  169. package/tests-unit/property-name-interp/legacy/property-name-interp.css +24 -0
  170. package/tests-unit/property-name-interp/property-name-interp.css +1 -1
  171. package/tests-unit/property-name-interp/property-name-interp.less +4 -2
  172. package/tests-unit/property-targeted/legacy/property-targeted.css +7 -0
  173. package/tests-unit/property-targeted/property-targeted.css +1 -1
  174. package/tests-unit/rulesets/legacy/rulesets.css +31 -0
  175. package/tests-unit/rulesets/rulesets.css +30 -30
  176. package/tests-unit/rulesets/styles.config.ts +5 -0
  177. package/tests-unit/scope/legacy/scope.css +41 -0
  178. package/tests-unit/scope/scope.css +1 -1
  179. package/tests-unit/selectors/selectors.css +13 -41
  180. package/tests-unit/styles.config.cjs +1 -1
  181. package/tests-unit/styles.config.ts +8 -0
  182. package/tests-unit/variables/legacy/variable-advanced.css +58 -0
  183. package/tests-unit/variables/variable-advanced.css +9 -12
  184. package/tests-unit/variables/variable-advanced.less +5 -4
  185. package/tests-unit/variables/variables.css +1 -1
  186. package/tests-unit/variables-in-at-rules/variables-in-at-rules.less +3 -2
  187. package/tests-unit/whitespace/legacy/whitespace.css +45 -0
  188. package/tests-unit/whitespace/whitespace.css +3 -2
  189. package/tests-warnings/parentless-ampersand-nested.less +6 -0
  190. package/tests-warnings/parentless-ampersand-nested.txt +42 -0
  191. package/tests-warnings/parentless-ampersand.less +3 -0
  192. package/tests-warnings/parentless-ampersand.txt +21 -0
  193. package/tests-config/rootpath-escape-interpolation/rootpath-escape-interpolation.css +0 -8
  194. package/tests-config/rootpath-escape-interpolation/rootpath-escape-interpolation.less +0 -24
  195. package/tests-config/rootpath-escape-interpolation/styles.config.cjs +0 -8
  196. package/tests-config/sourcemaps/url-interpolation/styles.config.cjs +0 -9
  197. package/tests-config/sourcemaps/url-interpolation/url-interpolation.css +0 -13
  198. package/tests-config/sourcemaps/url-interpolation/url-interpolation.less +0 -24
  199. package/tests-error/parse/property-interpolation-lookup.less +0 -8
  200. package/tests-error/parse/property-interpolation-lookup.txt +0 -4
  201. package/tests-unit/extend/extend-clearfix.less +0 -19
  202. package/tests-unit/lookup-interpolation/lookup-interpolation.css +0 -60
  203. package/tests-unit/lookup-interpolation/lookup-interpolation.less +0 -127
  204. package/tests-unit/media-nested-type/media-nested-type.css +0 -40
  205. package/tests-unit/media-nested-type/media-nested-type.less +0 -51
  206. /package/tests-unit/{directives-bubbling/directives-bubbling.less → at-rules-bubbling/at-rules-bubbling.less} +0 -0
  207. /package/tests-unit/{ie-filters → ie-filters-REMOVED/legacy}/ie-filters.css +0 -0
  208. /package/tests-unit/{ie-filters → ie-filters-REMOVED/legacy}/ie-filters.less +0 -0
  209. /package/tests-unit/{javascript → javascript-REMOVED/legacy}/javascript.css +0 -0
  210. /package/tests-unit/{javascript → javascript-REMOVED/legacy}/javascript.less +0 -0
  211. /package/tests-unit/{javascript → javascript-REMOVED/legacy}/styles.config.cjs +0 -0
@@ -63,7 +63,25 @@
63
63
  .card-content h2 {
64
64
  padding: 0;
65
65
  margin: 0.5em 0 0 0;
66
- }
66
+ }
67
+ }
68
+ }
69
+
70
+ @container contactBody (min-width: 1300px) {
71
+ .named-container {
72
+ width: 25%;
73
+ }
74
+ }
75
+
76
+ @container _body (min-width: 1300px) {
77
+ .underscored-container {
78
+ width: 25%;
79
+ }
80
+ }
81
+
82
+ @container café (min-width: 1300px) {
83
+ .nonascii-container {
84
+ width: 25%;
67
85
  }
68
86
  }
69
87
 
@@ -74,7 +92,7 @@
74
92
  }
75
93
  }
76
94
 
77
- @container (width > 760px) not (height > 670px) {
95
+ @container (width > 760px) and (not (height > 670px)) {
78
96
  .card-content h2 {
79
97
  padding: 0;
80
98
  margin: 0.5em 0 0 0;
@@ -95,7 +113,7 @@
95
113
  }
96
114
  }
97
115
 
98
- @container (width < 500px) or (height < 500px) and (inline-size >= 0px) {
116
+ @container ((width < 500px) or (height < 500px)) and (inline-size >= 0px) {
99
117
  .card-content p {
100
118
  padding: 0;
101
119
 
@@ -105,7 +123,7 @@
105
123
  }
106
124
  }
107
125
 
108
- @container my-page-layout (width < 500px) or (height < 500px) and (block-size > 12em) {
126
+ @container my-page-layout ((width < 500px) or (height < 500px)) and (block-size > 12em) {
109
127
  .card-content p {
110
128
  padding: 0;
111
129
 
@@ -115,7 +133,7 @@
115
133
  }
116
134
  }
117
135
 
118
- @container (width < 500px) or (height < 500px) and (aspect-ratio: 3/2) {
136
+ @container ((width < 500px) or (height < 500px)) and (aspect-ratio: 3/2) {
119
137
  .card-content p {
120
138
  padding: 0;
121
139
 
@@ -125,7 +143,7 @@
125
143
  }
126
144
  }
127
145
 
128
- @container (width < 500px) or (height < 500px) and (orientation: portrait) {
146
+ @container ((width < 500px) or (height < 500px)) and (orientation: portrait) {
129
147
  .card-content p {
130
148
  padding: 0;
131
149
 
@@ -159,55 +177,7 @@
159
177
  }
160
178
  }
161
179
 
162
- @container card (width > 400px), style(--responsive: true), scroll-state(stuck: top) {
163
- h2 {
164
- font-size: 1.5em;
165
- }
166
- }
167
-
168
- @container style(--theme) {
169
- .style-query {
170
- color: red;
171
- }
172
- }
173
-
174
- @container style((--theme: one) or (--theme: two)) {
175
- .style-query-list {
176
- color: blue;
177
- }
178
- }
179
-
180
- @container contactBody (min-width: 1300px) {
181
- .named-container {
182
- width: 25%;
183
- }
184
- }
185
-
186
- @container _body (min-width: 1300px) {
187
- .underscored-container {
188
- width: 25%;
189
- }
190
- }
191
-
192
- @container --body (min-width: 1300px) {
193
- .custom-ident-container {
194
- width: 25%;
195
- }
196
- }
197
-
198
- @container contact\.body (min-width: 1300px) {
199
- .escaped-container {
200
- width: 25%;
201
- }
202
- }
203
-
204
- @container café (min-width: 1300px) {
205
- .nonascii-container {
206
- width: 25%;
207
- }
208
- }
209
-
210
- @container ( width < 500px ) or (height<500px) and (orientation: portrait) {
180
+ @container ((width < 500px) or (height < 500px)) and (orientation: portrait) {
211
181
  .card-content p {
212
182
  padding: 0;
213
183
 
@@ -217,7 +187,7 @@
217
187
  }
218
188
  }
219
189
 
220
- @container my-page-layout ( width< 500px) or ( height<500px) and ( block-size>12em ) {
190
+ @container my-page-layout (( width< 500px) or ( height<500px)) and ( block-size>12em ) {
221
191
  .card-content p {
222
192
  padding: 0;
223
193
 
@@ -367,12 +337,6 @@
367
337
  }
368
338
  }
369
339
 
370
- @container sidebar (min-width: 400px), scroll-state(stuck: top) {
371
- #sticky-child {
372
- font-size: 80%;
373
- }
374
- }
375
-
376
340
  @varfoo: foo;
377
341
  @threshold: 400px;
378
342
  @container @{varfoo} (min-width: @threshold) {
@@ -383,7 +347,8 @@
383
347
 
384
348
  // Regression test: mixin with variable container name and variable query condition
385
349
  // Issue: mixins with parameters using @container @name (condition < @var) failed
386
- // with "variable @bp is undefined" error in older versions
350
+ // with "variable @bp is undefined" error in older versions. Less 5 keeps the
351
+ // at-rule name on interpolation form because bare @var there is deprecated.
387
352
  @issue-width: 125px;
388
353
 
389
354
  .container-query-mixin(@container-name; @bp) {
@@ -404,22 +369,3 @@
404
369
  .header-test {
405
370
  .container-query-mixin(header, 800px);
406
371
  }
407
-
408
- // Range/comparison syntax in @container style() queries (issue #4460)
409
- @container style(var(--n) = 3) {
410
- .style-query-eq {
411
- color: red;
412
- }
413
- }
414
-
415
- @container style(calc(6 / 2) = var(--n)) {
416
- .style-query-calc-eq {
417
- color: blue;
418
- }
419
- }
420
-
421
- @container style(var(--size) > 1lh) {
422
- .style-query-gt {
423
- color: green;
424
- }
425
- }
@@ -0,0 +1,273 @@
1
+ /* Less 4.x output, recorded when this fixture graduated to v5.
2
+ Historical record only — no test reads this file. */
3
+
4
+ .widget.discoverresults,
5
+ .widget.repositoriesresults {
6
+ container-type: inline-size;
7
+ }
8
+ @container (max-width: 350px) {
9
+ .widget.discoverresults .cite .wdr-authors,
10
+ .widget.repositoriesresults .cite .wdr-authors {
11
+ display: none;
12
+ }
13
+ }
14
+ @container (min-width: 700px) {
15
+ .card h2 {
16
+ font-size: 2em;
17
+ }
18
+ }
19
+ @container sidebar (min-width: 700px) {
20
+ .card {
21
+ font-size: 2em;
22
+ }
23
+ }
24
+ @container (min-width: 60ch) {
25
+ .container:nth-child(odd) > article {
26
+ border: 1px solid grey;
27
+ }
28
+ }
29
+ @container size(min-width: 60ch) {
30
+ .article--post header {
31
+ grid-template-areas: "avatar name" "avatar headline";
32
+ align-items: start;
33
+ }
34
+ .article--post {
35
+ grid-template-areas: "header header" ". stats" ". content";
36
+ grid-auto-columns: 5rem 1fr;
37
+ column-gap: 1rem;
38
+ }
39
+ .article--post__title {
40
+ font-size: 1.75rem;
41
+ }
42
+ }
43
+ .card h2 {
44
+ container-type: inline-size;
45
+ margin: 0;
46
+ padding: 10px;
47
+ }
48
+ @container (min-width: 500px) {
49
+ .card h2 .card-content {
50
+ grid-template-columns: 1fr 2fr;
51
+ grid-template-rows: auto 1fr;
52
+ align-items: start;
53
+ column-gap: 20px;
54
+ }
55
+ .card h2 .card-content h2 {
56
+ padding: 0;
57
+ margin: 0.5em 0 0 0;
58
+ }
59
+ }
60
+ @container (width >= 500px) and (height >= 500px) {
61
+ .card-content h2 {
62
+ padding: 0;
63
+ margin: 0.5em 0 0 0;
64
+ }
65
+ }
66
+ @container (width > 760px) not (height > 670px) {
67
+ .card-content h2 {
68
+ padding: 0;
69
+ margin: 0.5em 0 0 0;
70
+ }
71
+ }
72
+ @container not (height <= 1080px) {
73
+ .card-content h2 {
74
+ padding: 0;
75
+ margin: 0.5em 0 0 0;
76
+ }
77
+ }
78
+ @container (width < 500px) or (height < 500px) {
79
+ .card-content h2 {
80
+ padding: 0;
81
+ margin: 0.5em 0 0 0;
82
+ }
83
+ }
84
+ @container (width < 500px) or (height < 500px) and (inline-size >= 0px) {
85
+ .card-content p {
86
+ padding: 0;
87
+ }
88
+ .card-content p h2 {
89
+ margin: 0.5em 0 0 0;
90
+ }
91
+ }
92
+ @container my-page-layout (width < 500px) or (height < 500px) and (block-size > 12em) {
93
+ .card-content p {
94
+ padding: 0;
95
+ }
96
+ .card-content p h2 {
97
+ margin: 0.5em 0 0 0;
98
+ }
99
+ }
100
+ @container (width < 500px) or (height < 500px) and (aspect-ratio: 3/2) {
101
+ .card-content p {
102
+ padding: 0;
103
+ }
104
+ .card-content p h2 {
105
+ margin: 0.5em 0 0 0;
106
+ }
107
+ }
108
+ @container (width < 500px) or (height < 500px) and (orientation: portrait) {
109
+ .card-content p {
110
+ padding: 0;
111
+ }
112
+ .card-content p h2 {
113
+ margin: 0.5em 0 0 0;
114
+ }
115
+ }
116
+ @container card (inline-size > 30em) {
117
+ .card-content p {
118
+ padding: 0;
119
+ }
120
+ .card-content p h2 {
121
+ margin: 0.5em 0 0 0;
122
+ }
123
+ }
124
+ @container card (inline-size > 30em) and style(--responsive: true) {
125
+ .card-content {
126
+ grid-template-columns: 1fr 2fr;
127
+ grid-template-rows: auto 1fr;
128
+ align-items: start;
129
+ column-gap: 20px;
130
+ }
131
+ .card-content h2 {
132
+ padding: 0;
133
+ margin: 0.5em 0 0 0;
134
+ }
135
+ }
136
+ @container (width < 500px) or (height < 500px) and (orientation: portrait) {
137
+ .card-content p {
138
+ padding: 0;
139
+ }
140
+ .card-content p h2 {
141
+ margin: 0.5em 0 0 0;
142
+ }
143
+ }
144
+ @container my-page-layout (width < 500px) or (height < 500px) and (block-size > 12em) {
145
+ .card-content p {
146
+ padding: 0;
147
+ }
148
+ .card-content p h2 {
149
+ margin: 0.5em 0 0 0;
150
+ }
151
+ }
152
+ .wrapper {
153
+ container-name: wrapper;
154
+ container-type: size;
155
+ }
156
+ @container wrapper (height < 100) {
157
+ a {
158
+ max-height: 100;
159
+ }
160
+ }
161
+ @container wrapper (height < 200) {
162
+ a {
163
+ max-height: 200;
164
+ }
165
+ }
166
+ @container wrapper (height < 300) {
167
+ a {
168
+ max-height: 300;
169
+ }
170
+ }
171
+ @media only screen and (min-width: 768px) {
172
+ @container (min-width: 500px) {
173
+ .primary-content {
174
+ font-size: 1rem;
175
+ }
176
+ }
177
+ }
178
+ @media only screen and (min-width: 768px) {
179
+ .media-1 {
180
+ font-size: 1.5rem;
181
+ }
182
+ @container (min-width: 500px) {
183
+ .primary-content {
184
+ font-size: 1rem;
185
+ }
186
+ }
187
+ }
188
+ @media only screen and (min-width: 768px) {
189
+ .media-1 {
190
+ font-size: 1.5rem;
191
+ }
192
+ @container (min-width: 500px) {
193
+ .primary-content {
194
+ font-size: 1rem;
195
+ }
196
+ }
197
+ .media-2 {
198
+ font-size: 2rem;
199
+ }
200
+ }
201
+ @media only screen and (min-width: 768px) {
202
+ .media-1 {
203
+ font-size: 1.5rem;
204
+ }
205
+ @container (min-width: 500px) {
206
+ .primary-content {
207
+ font-size: 1rem;
208
+ }
209
+ @media (hover: hover) {
210
+ .foo {
211
+ font-size: 1.75rem;
212
+ }
213
+ }
214
+ }
215
+ .media-2 {
216
+ font-size: 2rem;
217
+ }
218
+ }
219
+ @media only screen and (min-width: 768px) {
220
+ .media-1 {
221
+ font-size: 1.5rem;
222
+ }
223
+ @container (min-width: 500px) {
224
+ .primary-content {
225
+ font-size: 1rem;
226
+ }
227
+ @media (hover: hover) {
228
+ .foo {
229
+ font-size: 1.75rem;
230
+ }
231
+ @media not all and (hover: hover) {
232
+ .foo {
233
+ color: limegreen;
234
+ }
235
+ }
236
+ .media-3 {
237
+ padding: 0.5rem;
238
+ }
239
+ }
240
+ }
241
+ .media-2 {
242
+ font-size: 2rem;
243
+ }
244
+ }
245
+ @container (min-width: 768px) {
246
+ @media only screen and (min-width: 768px) {
247
+ .foo {
248
+ color: aliceblue;
249
+ }
250
+ }
251
+ .container-1 {
252
+ color: purple;
253
+ }
254
+ }
255
+ #sticky {
256
+ position: sticky;
257
+ container-type: scroll-state;
258
+ }
259
+ @container scroll-state(stuck: top) {
260
+ #sticky-child {
261
+ font-size: 75%;
262
+ }
263
+ }
264
+ @container scroll-state(snapped: x) {
265
+ #sticky-child {
266
+ font-size: 75%;
267
+ }
268
+ }
269
+ @container scroll-state(scrollable: top) {
270
+ #sticky-child {
271
+ font-size: 75%;
272
+ }
273
+ }
@@ -0,0 +1,8 @@
1
+ export default {
2
+ compile: {
3
+ mathMode: 'parens-division'
4
+ },
5
+ output: {
6
+ collapseNesting: true,
7
+ },
8
+ };
@@ -1,8 +1,9 @@
1
1
  @namespace foo url(http://www.example.com);
2
2
  .comma-delimited {
3
3
  text-shadow: -1px -1px 1px red, 6px 5px 5px yellow;
4
- -moz-box-shadow: 0pt 0pt 2px rgba(255, 255, 255, 0.4) inset, 0pt 4px 6px rgba(255, 255, 255, 0.4) inset;
5
- -webkit-transform: rotate(0deg);
4
+ -moz-box-shadow: 0pt 0pt 2px rgba(255, 255, 255, 0.4) inset,
5
+ 0pt 4px 6px rgba(255, 255, 255, 0.4) inset;
6
+ -webkit-transform: rotate(-0.0000000001deg);
6
7
  }
7
8
  @font-face {
8
9
  font-family: Headline;
@@ -74,8 +75,7 @@ p::before {
74
75
  font-size: 12px;
75
76
  }
76
77
  }
77
- @supports ( box-shadow: 2px 2px 2px black ) or
78
- ( -moz-box-shadow: 2px 2px 2px black ) {
78
+ @supports (box-shadow: 2px 2px 2px black) or (-moz-box-shadow: 2px 2px 2px black) {
79
79
  .outline {
80
80
  box-shadow: 2px 2px 2px black;
81
81
  -moz-box-shadow: 2px 2px 2px black;
@@ -0,0 +1,147 @@
1
+ /* Less 4.x output, recorded when this fixture graduated to v5.
2
+ Historical record only — no test reads this file. */
3
+
4
+ @namespace foo url(http://www.example.com);
5
+ .comma-delimited {
6
+ text-shadow: -1px -1px 1px red, 6px 5px 5px yellow;
7
+ -moz-box-shadow: 0pt 0pt 2px rgba(255, 255, 255, 0.4) inset, 0pt 4px 6px rgba(255, 255, 255, 0.4) inset;
8
+ -webkit-transform: rotate(0deg);
9
+ }
10
+ @font-face {
11
+ font-family: Headline;
12
+ unicode-range: U+??????, U+0???, U+0-7F, U+A5;
13
+ }
14
+ .other {
15
+ -moz-transform: translate(0, 11em) rotate(-90deg);
16
+ transform: rotateX(45deg);
17
+ }
18
+ .item[data-cra_zy-attr1b-ut3=bold] {
19
+ font-weight: bold;
20
+ }
21
+ p:not([class*="lead"]) {
22
+ color: black;
23
+ }
24
+ input[type="text"].class#id[attr=i32]:not(.one) {
25
+ color: inherit;
26
+ }
27
+ div#id.class[a=one][b=two].class:not(.one) {
28
+ color: inherit;
29
+ }
30
+ ul.comma > li:not(:only-child)::after {
31
+ color: inherit;
32
+ }
33
+ ol.comma > li:nth-last-child(2)::after {
34
+ color: inherit;
35
+ }
36
+ li:nth-child(4n+1),
37
+ li:nth-child(-5n),
38
+ li:nth-child(-n+2) {
39
+ color: inherit;
40
+ }
41
+ a[href^="http://"] {
42
+ color: black;
43
+ }
44
+ a[href$="http://"] {
45
+ color: black;
46
+ }
47
+ form[data-disabled] {
48
+ color: black;
49
+ }
50
+ p::before {
51
+ color: black;
52
+ }
53
+ #issue322 {
54
+ -webkit-animation: anim2 7s infinite ease-in-out;
55
+ }
56
+ @-webkit-keyframes frames {
57
+ 0% {
58
+ border: 1px;
59
+ }
60
+ 5.5% {
61
+ border: 2px;
62
+ }
63
+ 100% {
64
+ border: 3px;
65
+ }
66
+ }
67
+ @keyframes fontbulger1 {
68
+ to {
69
+ font-size: 15px;
70
+ }
71
+ from,
72
+ to {
73
+ font-size: 12px;
74
+ }
75
+ 0%,
76
+ 100% {
77
+ font-size: 12px;
78
+ }
79
+ }
80
+ @supports ( box-shadow: 2px 2px 2px black ) or
81
+ ( -moz-box-shadow: 2px 2px 2px black ) {
82
+ .outline {
83
+ box-shadow: 2px 2px 2px black;
84
+ -moz-box-shadow: 2px 2px 2px black;
85
+ }
86
+ }
87
+ @-x-document url-prefix(""github.com"") {
88
+ h1 {
89
+ color: red;
90
+ }
91
+ }
92
+ @viewport {
93
+ font-size: 10px;
94
+ }
95
+ foo|h1 {
96
+ color: blue;
97
+ }
98
+ foo|* {
99
+ color: yellow;
100
+ }
101
+ *|h1 {
102
+ color: green;
103
+ }
104
+ h1 {
105
+ color: green;
106
+ }
107
+ .upper-test {
108
+ UpperCaseProperties: allowed;
109
+ }
110
+ @host {
111
+ div {
112
+ display: block;
113
+ }
114
+ }
115
+ :not(input::placeholder) {
116
+ color: #b3b3b3;
117
+ }
118
+ .shadow > .dom,
119
+ body > .shadow {
120
+ display: done;
121
+ }
122
+ :host(.sel.a),
123
+ :host-context(.sel.b),
124
+ .sel > .b,
125
+ ::content .sel {
126
+ type: shadow-dom;
127
+ }
128
+ * b {
129
+ c: 'd';
130
+ }
131
+ * b[e] {
132
+ f: 'g';
133
+ }
134
+ #issue2066 {
135
+ background: url('/images/icon-team.svg') 0 0 / contain;
136
+ }
137
+ @counter-style triangle {
138
+ system: cyclic;
139
+ symbols: ‣;
140
+ suffix: " ";
141
+ }
142
+ @unknown foo 42 (bar) {
143
+ x {
144
+ y: z;
145
+ }
146
+ }
147
+ @unknown foo 43;
@@ -6,10 +6,10 @@
6
6
  }
7
7
  .\34 04 {
8
8
  background: red;
9
- }
10
- .\34 04 strong {
11
- color: fuchsia;
12
- font-weight: bold;
9
+ strong {
10
+ color: fuchsia;
11
+ font-weight: bold;
12
+ }
13
13
  }
14
14
  .trailingTest\+ {
15
15
  color: red;
@@ -0,0 +1,34 @@
1
+ /* Less 4.x output, recorded when this fixture graduated to v5.
2
+ Historical record only — no test reads this file. */
3
+
4
+ .escape\|random\|char {
5
+ color: red;
6
+ }
7
+ .mixin\!tUp {
8
+ font-weight: bold;
9
+ }
10
+ .\34 04 {
11
+ background: red;
12
+ }
13
+ .\34 04 strong {
14
+ color: fuchsia;
15
+ font-weight: bold;
16
+ }
17
+ .trailingTest\+ {
18
+ color: red;
19
+ }
20
+ /* This hideous test of hideousness checks for the selector "blockquote" with various permutations of hex escapes */
21
+ \62\6c\6f \63 \6B \0071 \000075o\74 e {
22
+ color: silver;
23
+ }
24
+ [ng\:cloak],
25
+ ng\:form {
26
+ display: none;
27
+ }
28
+ .bootstrap {
29
+ background-color: #000 \9;
30
+ }
31
+ textarea {
32
+ font-family: 'helvetica neue', 'wenquanyi micro hei', \5FAE\8F6F\96C5\9ED1, \5B8B\4F53, sans-serif;
33
+ }
34
+ /* anything to unquote */
@@ -0,0 +1,5 @@
1
+ export default {
2
+ output: [
3
+ { file: '{name}.css', collapseNesting: false }
4
+ ]
5
+ }
@@ -20,5 +20,8 @@
20
20
  display: grid;
21
21
  grid-template-columns: 9fr 1.875em 3fr;
22
22
  grid-template-rows: auto;
23
- grid-template-areas: "header header header" "content . sidebar" "footer footer footer";
23
+ grid-template-areas:
24
+ "header header header"
25
+ "content . sidebar"
26
+ "footer footer footer";
24
27
  }