@less/test-data 4.9.1 → 5.0.0-alpha.10

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 (227) 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/bootstrap4.css +182 -365
  5. package/tests-config/3rd-party/styles.config.cjs +1 -1
  6. package/tests-config/at-rules-compressed/at-rules-compressed.css +1 -1
  7. package/tests-config/at-rules-compressed-evaluation/at-rules-compressed-evaluation.css +1 -1
  8. package/tests-config/compression/compression.css +2 -2
  9. package/tests-config/compression/compression.less +0 -4
  10. package/tests-config/compression/styles.config.cjs +1 -1
  11. package/tests-config/debug/all/styles.config.cjs +1 -1
  12. package/tests-config/debug/comments/styles.config.cjs +1 -1
  13. package/tests-config/debug/mediaquery/styles.config.cjs +1 -1
  14. package/tests-config/filemanagerPlugin/styles.config.cjs +1 -1
  15. package/tests-config/functions-harness/functions-harness.css +8 -0
  16. package/tests-config/functions-harness/functions-harness.less +10 -0
  17. package/tests-config/js-type-errors/js-type-error-2.txt +4 -0
  18. package/tests-config/js-type-errors/js-type-error.txt +1 -1
  19. package/tests-config/namespacing/legacy/namespacing-7.css +15 -0
  20. package/tests-config/namespacing/namespacing-5.less +3 -3
  21. package/tests-config/namespacing/namespacing-7.css +16 -8
  22. package/tests-config/namespacing/styles.config.cjs +4 -1
  23. package/tests-config/sourcemaps/styles.config.cjs +1 -1
  24. package/tests-config/sourcemaps-variable-selector/styles.config.cjs +1 -1
  25. package/tests-config/static-urls/urls.css +2 -1
  26. package/tests-config/strict-imports/legacy/strict-imports.css +14 -0
  27. package/tests-config/strict-imports/strict-imports.css +4 -2
  28. package/tests-config/strict-imports/styles.config.cjs +6 -5
  29. package/tests-config/units/loose/loose.css +21 -0
  30. package/tests-config/units/loose/loose.less +21 -0
  31. package/tests-config/units/loose/styles.config.cjs +8 -0
  32. package/tests-config/units/no-strict/legacy/no-strict.css +24 -0
  33. package/tests-config/units/no-strict/no-strict.css +12 -12
  34. package/tests-config/url-args/legacy/urls.css +58 -0
  35. package/tests-config/url-args/urls.css +2 -1
  36. package/tests-error/eval/ampersand-merge-template-invalid.less +7 -0
  37. package/tests-error/eval/ampersand-merge-template-invalid.txt +1 -0
  38. package/tests-error/eval/at-rules-undefined-var.less +1 -1
  39. package/tests-error/eval/property-undefined.txt +1 -0
  40. package/tests-error/eval/recursive-property.txt +1 -0
  41. package/tests-unit/at-rule-variable-deprecated/at-rule-variable-deprecated.css +0 -38
  42. package/tests-unit/at-rule-variable-deprecated/at-rule-variable-deprecated.less +0 -70
  43. package/tests-unit/at-rule-variable-interpolation/at-rule-variable-interpolation.css +45 -0
  44. package/tests-unit/at-rule-variable-interpolation/at-rule-variable-interpolation.less +72 -0
  45. package/tests-unit/at-rules/at-rules.css +8 -6
  46. package/tests-unit/at-rules/legacy/at-rules.css +110 -0
  47. package/tests-unit/at-rules/styles.config.ts +5 -0
  48. package/tests-unit/at-rules-bubbling/at-rules-bubbling.css +121 -0
  49. package/tests-unit/at-rules-bubbling/legacy/at-rules-bubbling.css +122 -0
  50. package/tests-unit/at-rules-keyword-comments/at-rules-keyword-comments.css +2 -5
  51. package/tests-unit/at-rules-keyword-comments/legacy/at-rules-keyword-comments.css +12 -0
  52. package/tests-unit/at-rules-targeted/at-rules-targeted.css +5 -3
  53. package/tests-unit/at-rules-targeted/legacy/at-rules-targeted.css +55 -0
  54. package/tests-unit/calc/calc.css +8 -8
  55. package/tests-unit/calc/calc.less +1 -0
  56. package/tests-unit/calc/legacy/calc.css +32 -0
  57. package/tests-unit/color-functions/basic.css +1 -1
  58. package/tests-unit/color-functions/comprehensive.css +5 -5
  59. package/tests-unit/color-functions/comprehensive.less +1 -0
  60. package/tests-unit/color-functions/formats.css +0 -12
  61. package/tests-unit/color-functions/formats.less +0 -15
  62. package/tests-unit/color-functions/legacy/basic.css +21 -0
  63. package/tests-unit/color-functions/legacy/comprehensive.css +48 -0
  64. package/tests-unit/color-functions/legacy/modern-syntax.css +9 -0
  65. package/tests-unit/color-functions/legacy/operations.css +18 -0
  66. package/tests-unit/color-functions/legacy/rgba.css +20 -0
  67. package/tests-unit/color-functions/modern-syntax.css +4 -4
  68. package/tests-unit/color-functions/modern-syntax.less +1 -0
  69. package/tests-unit/color-functions/operations.css +1 -1
  70. package/tests-unit/color-functions/operations.less +1 -0
  71. package/tests-unit/color-functions/rgba.css +3 -3
  72. package/tests-unit/color-functions/rgba.less +3 -1
  73. package/tests-unit/comments/comments.css +5 -6
  74. package/tests-unit/comments/comments.less +2 -1
  75. package/tests-unit/comments/comments2.css +4 -6
  76. package/tests-unit/comments/comments2.less +3 -0
  77. package/tests-unit/comments/legacy/comments.css +86 -0
  78. package/tests-unit/comments/legacy/comments2.css +21 -0
  79. package/tests-unit/container/container.css +40 -83
  80. package/tests-unit/container/container.less +28 -82
  81. package/tests-unit/container/legacy/container.css +273 -0
  82. package/tests-unit/container/styles.config.ts +8 -0
  83. package/tests-unit/css-3/css-3.css +4 -4
  84. package/tests-unit/css-3/legacy/css-3.css +147 -0
  85. package/tests-unit/css-escapes/css-escapes.css +4 -4
  86. package/tests-unit/css-escapes/legacy/css-escapes.css +34 -0
  87. package/tests-unit/css-escapes/styles.config.ts +5 -0
  88. package/tests-unit/css-grid/css-grid.css +4 -1
  89. package/tests-unit/css-grid/legacy/css-grid.css +27 -0
  90. package/tests-unit/css-guards/css-guards.less +2 -1
  91. package/tests-unit/detached-rulesets/detached-rulesets.css +26 -18
  92. package/tests-unit/detached-rulesets/legacy/detached-rulesets.css +79 -0
  93. package/tests-unit/detached-rulesets/styles.config.cjs +8 -0
  94. package/tests-unit/directives-bubbling/directives-bubbling.css +16 -14
  95. package/tests-unit/extend/extend.css +22 -28
  96. package/tests-unit/extend/legacy/extend.css +79 -0
  97. package/tests-unit/extend/styles.config.ts +5 -0
  98. package/tests-unit/extend-chaining/extend-chaining.css +7 -10
  99. package/tests-unit/extend-chaining/legacy/extend-chaining.css +84 -0
  100. package/tests-unit/extend-clearfix/extend-clearfix.css +1 -3
  101. package/tests-unit/extend-clearfix/extend-clearfix.less +0 -1
  102. package/tests-unit/{extend → extend-clearfix/legacy}/extend-clearfix.css +3 -0
  103. package/tests-unit/extend-exact/extend-exact.css +25 -24
  104. package/tests-unit/extend-exact/legacy/extend-exact.css +40 -0
  105. package/tests-unit/extend-exact/styles.config.ts +5 -0
  106. package/tests-unit/extend-media/extend-media.css +9 -14
  107. package/tests-unit/extend-media/legacy/extend-media.css +27 -0
  108. package/tests-unit/extend-media/styles.config.ts +5 -0
  109. package/tests-unit/extend-nest/extend-nest.css +3 -22
  110. package/tests-unit/extend-nest/legacy/extend-nest.css +60 -0
  111. package/tests-unit/extend-selector/extend-selector.css +42 -67
  112. package/tests-unit/extend-selector/extend-selector.less +0 -15
  113. package/tests-unit/extend-selector/legacy/extend-selector.css +73 -0
  114. package/tests-unit/extend-selector/styles.config.ts +5 -0
  115. package/tests-unit/extract-and-length/extract-and-length.css +6 -5
  116. package/tests-unit/extract-and-length/extract-and-length.less +7 -2
  117. package/tests-unit/extract-and-length/legacy/extract-and-length.css +137 -0
  118. package/tests-unit/functions/functions.css +13 -24
  119. package/tests-unit/functions/functions.less +8 -21
  120. package/tests-unit/functions/legacy/functions.css +244 -0
  121. package/tests-unit/functions/legacy/functions.less +296 -0
  122. package/tests-unit/functions-each/functions-each.css +4 -2
  123. package/tests-unit/import/import/import-reference.less +1 -1
  124. package/tests-unit/import/import-reference-issues.css +6 -6
  125. package/tests-unit/import/import-reference.css +9 -5
  126. package/tests-unit/import/import.css +1 -1
  127. package/tests-unit/import/legacy/import-reference-issues.css +27 -0
  128. package/tests-unit/import/legacy/import-reference.css +101 -0
  129. package/tests-unit/import/styles.config.cjs +3 -4
  130. package/tests-unit/layer/layer.css +30 -28
  131. package/tests-unit/layer/legacy/layer.css +136 -0
  132. package/tests-unit/layer/styles.config.ts +5 -0
  133. package/tests-unit/math-css-vars/math-css-vars.css +1 -0
  134. package/tests-unit/math-css-vars/math-css-vars.less +1 -0
  135. package/tests-unit/media/legacy/media.css +274 -0
  136. package/tests-unit/media/media.css +49 -43
  137. package/tests-unit/media/media.less +0 -2
  138. package/tests-unit/media/styles.config.cjs +5 -0
  139. package/tests-unit/merge/merge.css +2 -2
  140. package/tests-unit/mixin-noparens/legacy/mixin-noparens.css +10 -0
  141. package/tests-unit/mixin-noparens/mixin-noparens.css +4 -2
  142. package/tests-unit/mixin-noparens/styles.config.ts +5 -0
  143. package/tests-unit/mixins/legacy/maps.css +9 -0
  144. package/tests-unit/mixins/legacy/mixins.css +147 -0
  145. package/tests-unit/mixins/maps.css +7 -5
  146. package/tests-unit/mixins/mixins.css +7 -5
  147. package/tests-unit/mixins/styles.config.ts +3 -0
  148. package/tests-unit/mixins-closure/legacy/mixins-closure.css +12 -0
  149. package/tests-unit/mixins-closure/mixins-closure.css +4 -2
  150. package/tests-unit/mixins-closure/styles.config.ts +5 -0
  151. package/tests-unit/mixins-guards/legacy/mixins-guards.css +214 -0
  152. package/tests-unit/mixins-guards/mixins-guards.css +21 -5
  153. package/tests-unit/mixins-guards/mixins-guards.less +0 -1
  154. package/tests-unit/mixins-guards/styles.config.ts +5 -0
  155. package/tests-unit/mixins-guards-default-func/legacy/mixins-guards-default-func.css +132 -0
  156. package/tests-unit/mixins-guards-default-func/mixins-guards-default-func.css +0 -2
  157. package/tests-unit/mixins-important/mixins-important.css +33 -19
  158. package/tests-unit/mixins-interpolated/legacy/mixins-interpolated.css +42 -0
  159. package/tests-unit/mixins-interpolated/mixins-interpolated.css +24 -14
  160. package/tests-unit/mixins-interpolated/styles.config.ts +5 -0
  161. package/tests-unit/mixins-nested/legacy/mixins-nested.css +17 -0
  162. package/tests-unit/mixins-nested/mixins-nested.css +16 -12
  163. package/tests-unit/mixins-nested/styles.config.ts +5 -0
  164. package/tests-unit/nesting/legacy/nesting.css +27 -0
  165. package/tests-unit/nesting/nesting-uncollapsed.css +26 -0
  166. package/tests-unit/nesting/nesting.css +1 -1
  167. package/tests-unit/nesting/styles.config.ts +6 -0
  168. package/tests-unit/operations/legacy/operations-advanced.css +36 -0
  169. package/tests-unit/operations/operations-advanced.css +1 -1
  170. package/tests-unit/operations/operations.css +4 -2
  171. package/tests-unit/parse-interpolation/legacy/parse-interpolation.css +39 -0
  172. package/tests-unit/parse-interpolation/parse-interpolation.css +72 -35
  173. package/tests-unit/parse-interpolation/parse-interpolation.less +73 -25
  174. package/tests-unit/parse-interpolation/styles.config.ts +5 -0
  175. package/tests-unit/parser-property-interp/parser-property-interp.css +1 -1
  176. package/tests-unit/parser-property-interp/parser-property-interp.less +2 -2
  177. package/tests-unit/parser-slashed-combinator/parser-slashed-combinator.css +1 -9
  178. package/tests-unit/parser-slashed-combinator/parser-slashed-combinator.less +11 -11
  179. package/tests-unit/plugin/styles.config.ts +11 -0
  180. package/tests-unit/property-accessors/legacy/property-accessors.css +60 -0
  181. package/tests-unit/property-accessors/property-accessors.css +15 -7
  182. package/tests-unit/property-name-interp/legacy/property-name-interp.css +24 -0
  183. package/tests-unit/property-name-interp/property-name-interp.css +1 -1
  184. package/tests-unit/property-name-interp/property-name-interp.less +4 -2
  185. package/tests-unit/property-targeted/legacy/property-targeted.css +7 -0
  186. package/tests-unit/property-targeted/property-targeted.css +1 -1
  187. package/tests-unit/rulesets/legacy/rulesets.css +31 -0
  188. package/tests-unit/rulesets/rulesets.css +30 -30
  189. package/tests-unit/rulesets/styles.config.ts +5 -0
  190. package/tests-unit/scope/legacy/scope.css +41 -0
  191. package/tests-unit/scope/scope.css +1 -1
  192. package/tests-unit/scope/styles.config.cjs +8 -0
  193. package/tests-unit/selectors/selectors.css +13 -41
  194. package/tests-unit/styles.config.cjs +1 -1
  195. package/tests-unit/styles.config.ts +8 -0
  196. package/tests-unit/variables/legacy/variable-advanced.css +58 -0
  197. package/tests-unit/variables/variable-advanced.css +15 -18
  198. package/tests-unit/variables/variable-advanced.less +5 -4
  199. package/tests-unit/variables/variables.css +1 -1
  200. package/tests-unit/variables-in-at-rules/variables-in-at-rules.less +3 -2
  201. package/tests-unit/whitespace/legacy/whitespace.css +45 -0
  202. package/tests-unit/whitespace/whitespace.css +3 -2
  203. package/tests-warnings/parentless-ampersand-nested.less +6 -0
  204. package/tests-warnings/parentless-ampersand-nested.txt +42 -0
  205. package/tests-warnings/parentless-ampersand.less +3 -0
  206. package/tests-warnings/parentless-ampersand.txt +21 -0
  207. package/tests-config/rootpath-escape-interpolation/rootpath-escape-interpolation.css +0 -8
  208. package/tests-config/rootpath-escape-interpolation/rootpath-escape-interpolation.less +0 -24
  209. package/tests-config/rootpath-escape-interpolation/styles.config.cjs +0 -8
  210. package/tests-config/sourcemaps/url-interpolation/styles.config.cjs +0 -9
  211. package/tests-config/sourcemaps/url-interpolation/url-interpolation.css +0 -13
  212. package/tests-config/sourcemaps/url-interpolation/url-interpolation.less +0 -24
  213. package/tests-error/eval/mixin-as-value.less +0 -6
  214. package/tests-error/eval/mixin-as-value.txt +0 -4
  215. package/tests-error/parse/property-interpolation-lookup.less +0 -8
  216. package/tests-error/parse/property-interpolation-lookup.txt +0 -4
  217. package/tests-unit/extend/extend-clearfix.less +0 -19
  218. package/tests-unit/lookup-interpolation/lookup-interpolation.css +0 -60
  219. package/tests-unit/lookup-interpolation/lookup-interpolation.less +0 -127
  220. package/tests-unit/media-nested-type/media-nested-type.css +0 -40
  221. package/tests-unit/media-nested-type/media-nested-type.less +0 -51
  222. /package/tests-unit/{directives-bubbling/directives-bubbling.less → at-rules-bubbling/at-rules-bubbling.less} +0 -0
  223. /package/tests-unit/{ie-filters → ie-filters-REMOVED/legacy}/ie-filters.css +0 -0
  224. /package/tests-unit/{ie-filters → ie-filters-REMOVED/legacy}/ie-filters.less +0 -0
  225. /package/tests-unit/{javascript → javascript-REMOVED/legacy}/javascript.css +0 -0
  226. /package/tests-unit/{javascript → javascript-REMOVED/legacy}/javascript.less +0 -0
  227. /package/tests-unit/{javascript → javascript-REMOVED/legacy}/styles.config.cjs +0 -0
@@ -0,0 +1,136 @@
1
+ /* Less 4.x output, recorded when this fixture graduated to v5.
2
+ Historical record only — no test reads this file. */
3
+
4
+ @import url("/import/layer-import-2.css") layer(foo);
5
+ @import url("/import/layer-import-3.css") layer(responsive) supports(display: flex) screen and (max-width: 768px);
6
+ @import url("/import/layer-import-4.css") layer(print) print;
7
+ @import url("/import/layer-import-4.css") layer(print) print, (max-width: 600px);
8
+ @import url("/import/layer-import-5.css") layer(features) supports(display: grid);
9
+ @layer {
10
+ .main::before {
11
+ color: #f00;
12
+ }
13
+ }
14
+ @layer legacy {
15
+ .sub-rule ul {
16
+ color: white;
17
+ }
18
+ }
19
+ @layer primevue {
20
+ .test {
21
+ foo: bar;
22
+ }
23
+ }
24
+ @layer reset, base, components, utilities;
25
+ @layer reset {
26
+ *,
27
+ *::before,
28
+ *::after {
29
+ box-sizing: border-box;
30
+ }
31
+ }
32
+ @layer base {
33
+ body {
34
+ margin: 0;
35
+ font-family: system-ui, sans-serif;
36
+ }
37
+ body header {
38
+ background-color: #f0f0f0;
39
+ padding: 1rem;
40
+ }
41
+ }
42
+ @layer components {
43
+ .button {
44
+ display: inline-block;
45
+ padding: 0.5rem 1rem;
46
+ background-color: blue;
47
+ color: white;
48
+ }
49
+ .button:hover {
50
+ background-color: darkblue;
51
+ }
52
+ }
53
+ @layer utilities {
54
+ .text-center {
55
+ text-align: center;
56
+ }
57
+ .responsive {
58
+ width: 100%;
59
+ }
60
+ @media (min-width: 768px) {
61
+ .responsive {
62
+ width: 50%;
63
+ }
64
+ }
65
+ }
66
+ .parent {
67
+ color: black;
68
+ }
69
+ .parent .child {
70
+ color: red;
71
+ }
72
+ .parent:hover {
73
+ background: lightgray;
74
+ }
75
+ @layer foo.baz {
76
+ .bar {
77
+ font-weight: bold;
78
+ }
79
+ }
80
+ @layer framework {
81
+ @layer layout {
82
+ .container {
83
+ display: grid;
84
+ gap: 2rem;
85
+ }
86
+ }
87
+ }
88
+ @layer framework.layout {
89
+ main {
90
+ padding: 2rem;
91
+ }
92
+ p {
93
+ margin-block: 1rem;
94
+ color: #555;
95
+ }
96
+ }
97
+ @layer theme;
98
+ @layer layout, utilities;
99
+ body {
100
+ color: black;
101
+ }
102
+ @layer components {
103
+ .btn {
104
+ color: red;
105
+ }
106
+ .btn:hover {
107
+ color: blue;
108
+ }
109
+ }
110
+ @layer {
111
+ p {
112
+ margin-block: 1rem;
113
+ }
114
+ }
115
+ @layer framework.buttons.primary {
116
+ .btn-primary {
117
+ background: dodgerblue;
118
+ color: white;
119
+ }
120
+ }
121
+ .feature {
122
+ color: gray;
123
+ }
124
+ @layer component {
125
+ .feature h2 {
126
+ font-size: 1.5rem;
127
+ }
128
+ }
129
+ @layer ui {
130
+ .btn {
131
+ padding: 0.5rem 1rem;
132
+ border-radius: 4px;
133
+ background: rebeccapurple;
134
+ color: white;
135
+ }
136
+ }
@@ -0,0 +1,5 @@
1
+ export default {
2
+ output: [
3
+ { file: '{name}.css', collapseNesting: false }
4
+ ]
5
+ }
@@ -3,6 +3,7 @@
3
3
  b: cos(var(--a));
4
4
  c: calc(tan(var(--t)) * 1px);
5
5
  d: atan2(var(--x), var(--y));
6
+ e: percentage(var(--p));
6
7
  }
7
8
  .numeric {
8
9
  a: 0.5;
@@ -5,6 +5,7 @@
5
5
  b: cos(var(--a));
6
6
  c: calc(tan(var(--t)) * 1px);
7
7
  d: atan2(var(--x), var(--y));
8
+ e: percentage(var(--p));
8
9
  }
9
10
 
10
11
  // Concrete numeric arguments still evaluate.
@@ -0,0 +1,274 @@
1
+ /* Less 4.x output, recorded when this fixture graduated to v5.
2
+ Historical record only — no test reads this file. */
3
+
4
+ @media print {
5
+ .class {
6
+ color: blue;
7
+ }
8
+ .class .sub {
9
+ width: 42;
10
+ }
11
+ .top,
12
+ header > h1 {
13
+ color: #444444;
14
+ }
15
+ }
16
+ @media screen {
17
+ .body {
18
+ max-width: 480;
19
+ }
20
+ }
21
+ @media all and (device-aspect-ratio: 16 / 9) {
22
+ .body {
23
+ max-width: 800px;
24
+ }
25
+ }
26
+ @media all and (orientation: portrait) {
27
+ aside {
28
+ float: none;
29
+ }
30
+ }
31
+ @media handheld and (min-width: 42), screen and (min-width: 20em) {
32
+ .body {
33
+ max-width: 480px;
34
+ }
35
+ }
36
+ @media print {
37
+ .body {
38
+ padding: 20px;
39
+ }
40
+ .body header {
41
+ background-color: red;
42
+ }
43
+ }
44
+ @media print and (orientation: landscape) {
45
+ .body {
46
+ margin-left: 20px;
47
+ }
48
+ }
49
+ @media screen {
50
+ .sidebar {
51
+ width: 300px;
52
+ }
53
+ }
54
+ @media screen and (orientation: landscape) {
55
+ .sidebar {
56
+ width: 500px;
57
+ }
58
+ }
59
+ @media a and (b) {
60
+ .first .second .third {
61
+ width: 300px;
62
+ }
63
+ .first .second .fourth {
64
+ width: 3;
65
+ }
66
+ }
67
+ @media a and (b) and (c) {
68
+ .first .second .third {
69
+ width: 500px;
70
+ }
71
+ }
72
+ @media a, (b) and (c) {
73
+ .body {
74
+ width: 95%;
75
+ }
76
+ }
77
+ @media a and (x), (b) and (c) and (x), a and (y), (b) and (c) and (y) {
78
+ .body {
79
+ width: 100%;
80
+ }
81
+ }
82
+ .a {
83
+ background: black;
84
+ }
85
+ @media handheld {
86
+ .a {
87
+ background: white;
88
+ }
89
+ }
90
+ @media handheld and (max-width: 100px) {
91
+ .a {
92
+ background: red;
93
+ }
94
+ }
95
+ .b {
96
+ background: black;
97
+ }
98
+ @media handheld {
99
+ .b {
100
+ background: white;
101
+ }
102
+ }
103
+ @media handheld and (max-width: 200px) {
104
+ .b {
105
+ background: red;
106
+ }
107
+ }
108
+ @media only screen and (max-width: 200px) {
109
+ .body {
110
+ width: 480px;
111
+ }
112
+ }
113
+ @media print {
114
+ @page :left {
115
+ margin: 0.5cm;
116
+ }
117
+ @page :right {
118
+ margin: 0.5cm;
119
+ }
120
+ @page Test:first {
121
+ margin: 1cm;
122
+ }
123
+ @page :first {
124
+ size: 8.5in 11in;
125
+ @top-left {
126
+ margin: 1cm;
127
+ }
128
+ @top-left-corner {
129
+ margin: 1cm;
130
+ }
131
+ @top-center {
132
+ margin: 1cm;
133
+ }
134
+ @top-right {
135
+ margin: 1cm;
136
+ }
137
+ @top-right-corner {
138
+ margin: 1cm;
139
+ }
140
+ @bottom-left {
141
+ margin: 1cm;
142
+ }
143
+ @bottom-left-corner {
144
+ margin: 1cm;
145
+ }
146
+ @bottom-center {
147
+ margin: 1cm;
148
+ }
149
+ @bottom-right {
150
+ margin: 1cm;
151
+ }
152
+ @bottom-right-corner {
153
+ margin: 1cm;
154
+ }
155
+ @left-top {
156
+ margin: 1cm;
157
+ }
158
+ @left-middle {
159
+ margin: 1cm;
160
+ }
161
+ @left-bottom {
162
+ margin: 1cm;
163
+ }
164
+ @right-top {
165
+ margin: 1cm;
166
+ }
167
+ @right-middle {
168
+ content: "Page " counter(page);
169
+ }
170
+ @right-bottom {
171
+ margin: 1cm;
172
+ }
173
+ }
174
+ }
175
+ @media (-webkit-min-device-pixel-ratio: 2), (min--moz-device-pixel-ratio: 2), (-o-min-device-pixel-ratio: 2/1), (min-resolution: 2dppx), (min-resolution: 128dpcm) {
176
+ .b {
177
+ background: red;
178
+ }
179
+ }
180
+ .body {
181
+ background: red;
182
+ }
183
+ @media (max-width: 500px) {
184
+ .body {
185
+ background: green;
186
+ }
187
+ }
188
+ @media (max-width: 1000px) {
189
+ .body {
190
+ background: red;
191
+ background: blue;
192
+ }
193
+ }
194
+ @media (max-width: 1000px) and (max-width: 500px) {
195
+ .body {
196
+ background: green;
197
+ }
198
+ }
199
+ @media (max-width: 1200px) {
200
+ /* a comment */
201
+ }
202
+ @media (max-width: 1200px) and (max-width: 900px) {
203
+ .body {
204
+ font-size: 11px;
205
+ }
206
+ }
207
+ @media (min-width: 480px) {
208
+ .nav-justified > li {
209
+ display: table-cell;
210
+ }
211
+ }
212
+ @media (min-width: 768px) and (min-width: 480px) {
213
+ .menu > li {
214
+ display: table-cell;
215
+ }
216
+ }
217
+ @media all and (tv) {
218
+ .all-and-tv-variables {
219
+ var: all-and-tv;
220
+ }
221
+ }
222
+ @media screen and (min-width: 61px) {
223
+ .selector {
224
+ foo: bar;
225
+ }
226
+ }
227
+ @media screen and (color), projection and (color) {
228
+ .selector {
229
+ color: #eee;
230
+ }
231
+ }
232
+ @media not (width <= -100px) {
233
+ body {
234
+ background: green;
235
+ }
236
+ }
237
+ @media (height > -100px) {
238
+ body {
239
+ background: green;
240
+ }
241
+ }
242
+ @media not (resolution: -300dpi) {
243
+ body {
244
+ background: green;
245
+ }
246
+ }
247
+ @media (min-orientation: portrait) {
248
+ body {
249
+ background: green;
250
+ }
251
+ }
252
+ @media print and (min-resolution: 118dpcm) {
253
+ body {
254
+ background: green;
255
+ }
256
+ }
257
+ @media (200px <= width <= 500px) {
258
+ .test-range-syntax {
259
+ padding: 0;
260
+ }
261
+ }
262
+ .selector {
263
+ color: #eee;
264
+ }
265
+ @media (200px <= width <= 500px) {
266
+ .selector .test-range-syntax {
267
+ padding: 0;
268
+ }
269
+ }
270
+ @media print, (max-width: 992px) {
271
+ div {
272
+ color: red;
273
+ }
274
+ }
@@ -37,43 +37,45 @@
37
37
  .body header {
38
38
  background-color: red;
39
39
  }
40
- }
41
- @media print and (orientation: landscape) {
42
- .body {
43
- margin-left: 20px;
40
+ @media (orientation: landscape) {
41
+ .body {
42
+ margin-left: 20px;
43
+ }
44
44
  }
45
45
  }
46
46
  @media screen {
47
47
  .sidebar {
48
48
  width: 300px;
49
49
  }
50
- }
51
- @media screen and (orientation: landscape) {
52
- .sidebar {
53
- width: 500px;
54
- }
55
- }
56
- @media a and (b) {
57
- .first .second .third {
58
- width: 300px;
59
- }
60
- .first .second .fourth {
61
- width: 3;
50
+ @media (orientation: landscape) {
51
+ .sidebar {
52
+ width: 500px;
53
+ }
62
54
  }
63
55
  }
64
- @media a and (b) and (c) {
65
- .first .second .third {
66
- width: 500px;
56
+ @media a {
57
+ @media (b) {
58
+ .first .second .third {
59
+ width: 300px;
60
+ }
61
+ @media (c) {
62
+ .first .second .third {
63
+ width: 500px;
64
+ }
65
+ }
66
+ .first .second .fourth {
67
+ width: 3;
68
+ }
67
69
  }
68
70
  }
69
71
  @media a, (b) and (c) {
70
72
  .body {
71
73
  width: 95%;
72
74
  }
73
- }
74
- @media a and (x), (b) and (c) and (x), a and (y), (b) and (c) and (y) {
75
- .body {
76
- width: 100%;
75
+ @media (x), (y) {
76
+ .body {
77
+ width: 100%;
78
+ }
77
79
  }
78
80
  }
79
81
  .a {
@@ -83,10 +85,10 @@
83
85
  .a {
84
86
  background: white;
85
87
  }
86
- }
87
- @media handheld and (max-width: 100px) {
88
- .a {
89
- background: red;
88
+ @media (max-width: 100px) {
89
+ .a {
90
+ background: red;
91
+ }
90
92
  }
91
93
  }
92
94
  .b {
@@ -96,10 +98,10 @@
96
98
  .b {
97
99
  background: white;
98
100
  }
99
- }
100
- @media handheld and (max-width: 200px) {
101
- .b {
102
- background: red;
101
+ @media (max-width: 200px) {
102
+ .b {
103
+ background: red;
104
+ }
103
105
  }
104
106
  }
105
107
  @media only screen and (max-width: 200px) {
@@ -114,7 +116,7 @@
114
116
  @page :right {
115
117
  margin: 0.5cm;
116
118
  }
117
- @page Test:first {
119
+ @page Test :first {
118
120
  margin: 1cm;
119
121
  }
120
122
  @page :first {
@@ -169,7 +171,7 @@
169
171
  }
170
172
  }
171
173
  }
172
- @media (-webkit-min-device-pixel-ratio: 2), (min--moz-device-pixel-ratio: 2), (-o-min-device-pixel-ratio: 2/1), (min-resolution: 2dppx), (min-resolution: 128dpcm) {
174
+ @media (-webkit-min-device-pixel-ratio: 2), (min--moz-device-pixel-ratio: 2), (-o-min-device-pixel-ratio: 2 / 1), (min-resolution: 2dppx), (min-resolution: 128dpcm) {
173
175
  .b {
174
176
  background: red;
175
177
  }
@@ -185,20 +187,22 @@
185
187
  @media (max-width: 1000px) {
186
188
  .body {
187
189
  background: red;
188
- background: blue;
189
190
  }
190
- }
191
- @media (max-width: 1000px) and (max-width: 500px) {
191
+ @media (max-width: 500px) {
192
+ .body {
193
+ background: green;
194
+ }
195
+ }
192
196
  .body {
193
- background: green;
197
+ background: blue;
194
198
  }
195
199
  }
196
200
  @media (max-width: 1200px) {
197
201
  /* a comment */
198
- }
199
- @media (max-width: 1200px) and (max-width: 900px) {
200
- .body {
201
- font-size: 11px;
202
+ @media (max-width: 900px) {
203
+ .body {
204
+ font-size: 11px;
205
+ }
202
206
  }
203
207
  }
204
208
  @media (min-width: 480px) {
@@ -206,17 +210,19 @@
206
210
  display: table-cell;
207
211
  }
208
212
  }
209
- @media (min-width: 768px) and (min-width: 480px) {
213
+ @media (min-width: 768px) {
214
+ @media (min-width: 480px) {
210
215
  .menu > li {
211
216
  display: table-cell;
212
217
  }
213
218
  }
219
+ }
214
220
  @media all and (tv) {
215
221
  .all-and-tv-variables {
216
222
  var: all-and-tv;
217
223
  }
218
224
  }
219
- @media screen and (min-width: 61px) {
225
+ @media screen and (min-width: (60px + 1)) {
220
226
  .selector {
221
227
  foo: bar;
222
228
  }
@@ -1,5 +1,3 @@
1
- // For now, variables can't be declared inside @media blocks.
2
-
3
1
  @var: 42;
4
2
 
5
3
  @media print {
@@ -0,0 +1,5 @@
1
+ module.exports = {
2
+ output: {
3
+ collapseNesting: true
4
+ }
5
+ };
@@ -22,12 +22,12 @@
22
22
  transform: scale(2, 4), scale(2, 4), scale(2, 4) !important;
23
23
  }
24
24
  .test-rule-interleaved {
25
- transform: t1, t2, t3;
26
25
  background: b1, b2, b3;
26
+ transform: t1, t2, t3;
27
27
  }
28
28
  .test-rule-spaced {
29
- transform: t1 t2 t3;
30
29
  background: b1 b2, b3;
30
+ transform: t1 t2 t3;
31
31
  }
32
32
  .test-rule-interleaved-with-spaced {
33
33
  transform: t1s, t2 t3s, t4 t5s t6s;
@@ -0,0 +1,10 @@
1
+ /* Less 4.x output, recorded when this fixture graduated to v5.
2
+ Historical record only — no test reads this file. */
3
+
4
+ #theme > .mixin {
5
+ background-color: grey;
6
+ }
7
+ #container {
8
+ color: black;
9
+ background-color: grey;
10
+ }
@@ -1,5 +1,7 @@
1
- #theme > .mixin {
2
- background-color: grey;
1
+ #theme {
2
+ > .mixin {
3
+ background-color: grey;
4
+ }
3
5
  }
4
6
  #container {
5
7
  color: black;
@@ -0,0 +1,5 @@
1
+ export default {
2
+ output: [
3
+ { file: '{name}.css', collapseNesting: false }
4
+ ]
5
+ }
@@ -0,0 +1,9 @@
1
+ /* Less 4.x output, recorded when this fixture graduated to v5.
2
+ Historical record only — no test reads this file. */
3
+
4
+ .maps h2 {
5
+ width: 10px;
6
+ }
7
+ .maps h1 {
8
+ color: white;
9
+ }