@master/css 2.0.0-alpha.50 → 2.0.0-alpha.52

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 (487) hide show
  1. package/{config → esm/config}/breakpoints.d.ts +0 -0
  2. package/esm/config/breakpoints.js +12 -0
  3. package/{config → esm/config}/colors.d.ts +0 -0
  4. package/esm/config/colors.js +264 -0
  5. package/{config → esm/config}/index.d.ts +0 -0
  6. package/esm/config/index.js +19 -0
  7. package/{config → esm/config}/root-size.d.ts +0 -0
  8. package/esm/config/root-size.js +1 -0
  9. package/{config → esm/config}/rules.d.ts +0 -0
  10. package/esm/config/rules.js +388 -0
  11. package/{config → esm/config}/selectors.d.ts +0 -0
  12. package/esm/config/selectors.js +18 -0
  13. package/{config → esm/config}/semantics.d.ts +0 -0
  14. package/esm/config/semantics.js +81 -0
  15. package/{config → esm/config}/themes.d.ts +0 -0
  16. package/esm/config/themes.js +1 -0
  17. package/{config → esm/config}/values.d.ts +0 -0
  18. package/esm/config/values.js +83 -0
  19. package/{configure.d.ts → esm/configure.d.ts} +0 -0
  20. package/esm/configure.js +10 -0
  21. package/{constants → esm/constants}/start-symbol.d.ts +0 -0
  22. package/esm/constants/start-symbol.js +5 -0
  23. package/{core.d.ts → esm/core.d.ts} +0 -0
  24. package/esm/core.js +865 -0
  25. package/{fill-color-scale.d.ts → esm/fill-color-scale.d.ts} +0 -0
  26. package/esm/fill-color-scale.js +59 -0
  27. package/{index.d.ts → esm/index.d.ts} +0 -0
  28. package/esm/index.js +9 -0
  29. package/{init.d.ts → esm/init.d.ts} +0 -0
  30. package/esm/init.js +12 -0
  31. package/{interfaces → esm/interfaces}/config.d.ts +0 -0
  32. package/{config.test.d.ts → esm/interfaces/config.js} +0 -0
  33. package/{interfaces → esm/interfaces}/declaration.d.ts +0 -0
  34. package/{configure.test.d.ts → esm/interfaces/declaration.js} +0 -0
  35. package/{interfaces → esm/interfaces}/media-feature-rule.d.ts +0 -0
  36. package/{grouping-selectors.test.d.ts → esm/interfaces/media-feature-rule.js} +0 -0
  37. package/{interfaces → esm/interfaces}/media.d.ts +0 -0
  38. package/{render.test.d.ts → esm/interfaces/media.js} +0 -0
  39. package/esm/polyfills/css-escape.d.ts +2 -0
  40. package/esm/polyfills/css-escape.js +90 -0
  41. package/{render-from-html.d.ts → esm/render-from-html.d.ts} +0 -0
  42. package/esm/render-from-html.js +18 -0
  43. package/{render-into-html.d.ts → esm/render-into-html.d.ts} +0 -0
  44. package/esm/render-into-html.js +9 -0
  45. package/{render.d.ts → esm/render.d.ts} +0 -0
  46. package/esm/render.js +13 -0
  47. package/{rule.d.ts → esm/rule.d.ts} +2 -1
  48. package/esm/rule.js +563 -0
  49. package/{rules → esm/rules}/accent-color.d.ts +0 -0
  50. package/esm/rules/accent-color.js +7 -0
  51. package/{rules → esm/rules}/align-content.d.ts +0 -0
  52. package/esm/rules/align-content.js +6 -0
  53. package/{rules → esm/rules}/align-items.d.ts +0 -0
  54. package/esm/rules/align-items.js +6 -0
  55. package/{rules → esm/rules}/align-self.d.ts +0 -0
  56. package/esm/rules/align-self.js +6 -0
  57. package/{rules → esm/rules}/animation-delay.d.ts +0 -0
  58. package/esm/rules/animation-delay.js +7 -0
  59. package/{rules → esm/rules}/animation-direction.d.ts +0 -0
  60. package/esm/rules/animation-direction.js +6 -0
  61. package/{rules → esm/rules}/animation-duration.d.ts +0 -0
  62. package/esm/rules/animation-duration.js +7 -0
  63. package/{rules → esm/rules}/animation-fill-mode.d.ts +0 -0
  64. package/esm/rules/animation-fill-mode.js +6 -0
  65. package/{rules → esm/rules}/animation-iteration-count.d.ts +0 -0
  66. package/esm/rules/animation-iteration-count.js +7 -0
  67. package/{rules → esm/rules}/animation-name.d.ts +0 -0
  68. package/esm/rules/animation-name.js +6 -0
  69. package/{rules → esm/rules}/animation-play-state.d.ts +0 -0
  70. package/esm/rules/animation-play-state.js +6 -0
  71. package/{rules → esm/rules}/animation-timing-function.d.ts +0 -0
  72. package/esm/rules/animation-timing-function.js +6 -0
  73. package/{rules → esm/rules}/animation.d.ts +0 -0
  74. package/esm/rules/animation.js +8 -0
  75. package/{rules → esm/rules}/appearance.d.ts +0 -0
  76. package/esm/rules/appearance.js +5 -0
  77. package/{rules → esm/rules}/aspect-radio.d.ts +0 -0
  78. package/esm/rules/aspect-radio.js +7 -0
  79. package/{rules → esm/rules}/backdrop-filter.d.ts +2 -1
  80. package/esm/rules/backdrop-filter.js +26 -0
  81. package/{rules → esm/rules}/background-attachment.d.ts +0 -0
  82. package/esm/rules/background-attachment.js +6 -0
  83. package/{rules → esm/rules}/background-blend-mode.d.ts +0 -0
  84. package/esm/rules/background-blend-mode.js +5 -0
  85. package/{rules → esm/rules}/background-clip.d.ts +0 -0
  86. package/esm/rules/background-clip.js +12 -0
  87. package/{rules → esm/rules}/background-color.d.ts +0 -0
  88. package/esm/rules/background-color.js +8 -0
  89. package/{rules → esm/rules}/background-image.d.ts +0 -0
  90. package/esm/rules/background-image.js +7 -0
  91. package/{rules → esm/rules}/background-origin.d.ts +0 -0
  92. package/esm/rules/background-origin.js +6 -0
  93. package/{rules → esm/rules}/background-position.d.ts +0 -0
  94. package/esm/rules/background-position.js +7 -0
  95. package/{rules → esm/rules}/background-repeat.d.ts +0 -0
  96. package/esm/rules/background-repeat.js +6 -0
  97. package/{rules → esm/rules}/background-size.d.ts +0 -0
  98. package/esm/rules/background-size.js +6 -0
  99. package/{rules → esm/rules}/background.d.ts +0 -0
  100. package/esm/rules/background.js +8 -0
  101. package/{rules → esm/rules}/border-collapse.d.ts +0 -0
  102. package/esm/rules/border-collapse.js +6 -0
  103. package/{rules → esm/rules}/border-color.d.ts +0 -0
  104. package/esm/rules/border-color.js +14 -0
  105. package/{rules → esm/rules}/border-image-outset.d.ts +0 -0
  106. package/esm/rules/border-image-outset.js +5 -0
  107. package/{rules → esm/rules}/border-image-repeat.d.ts +0 -0
  108. package/esm/rules/border-image-repeat.js +6 -0
  109. package/{rules → esm/rules}/border-image-slice.d.ts +0 -0
  110. package/esm/rules/border-image-slice.js +6 -0
  111. package/{rules → esm/rules}/border-image-source.d.ts +0 -0
  112. package/esm/rules/border-image-source.js +6 -0
  113. package/{rules → esm/rules}/border-image-width.d.ts +0 -0
  114. package/esm/rules/border-image-width.js +6 -0
  115. package/{rules → esm/rules}/border-image.d.ts +0 -0
  116. package/esm/rules/border-image.js +6 -0
  117. package/{rules → esm/rules}/border-radius.d.ts +0 -0
  118. package/esm/rules/border-radius.js +73 -0
  119. package/{rules → esm/rules}/border-spacing.d.ts +0 -0
  120. package/esm/rules/border-spacing.js +5 -0
  121. package/{rules → esm/rules}/border-style.d.ts +0 -0
  122. package/esm/rules/border-style.js +12 -0
  123. package/{rules → esm/rules}/border-width.d.ts +0 -0
  124. package/esm/rules/border-width.js +12 -0
  125. package/{rules → esm/rules}/border.d.ts +0 -0
  126. package/esm/rules/border.js +13 -0
  127. package/{rules → esm/rules}/box-decoration-break.d.ts +0 -0
  128. package/esm/rules/box-decoration-break.js +13 -0
  129. package/{rules → esm/rules}/box-shadow.d.ts +0 -0
  130. package/esm/rules/box-shadow.js +7 -0
  131. package/{rules → esm/rules}/box-sizing.d.ts +0 -0
  132. package/esm/rules/box-sizing.js +6 -0
  133. package/{rules → esm/rules}/break-after.d.ts +0 -0
  134. package/esm/rules/break-after.js +5 -0
  135. package/{rules → esm/rules}/break-before.d.ts +0 -0
  136. package/esm/rules/break-before.js +5 -0
  137. package/{rules → esm/rules}/break-inside.d.ts +0 -0
  138. package/esm/rules/break-inside.js +5 -0
  139. package/{rules → esm/rules}/caret-color.d.ts +0 -0
  140. package/esm/rules/caret-color.js +7 -0
  141. package/{rules → esm/rules}/clear.d.ts +0 -0
  142. package/esm/rules/clear.js +5 -0
  143. package/{rules → esm/rules}/clip-path.d.ts +0 -0
  144. package/esm/rules/clip-path.js +6 -0
  145. package/{rules → esm/rules}/color.d.ts +0 -0
  146. package/esm/rules/color.js +8 -0
  147. package/{rules → esm/rules}/column-span.d.ts +0 -0
  148. package/esm/rules/column-span.js +6 -0
  149. package/{rules → esm/rules}/columns.d.ts +0 -0
  150. package/esm/rules/columns.js +8 -0
  151. package/{rules → esm/rules}/contain.d.ts +0 -0
  152. package/esm/rules/contain.js +5 -0
  153. package/{rules → esm/rules}/content.d.ts +0 -0
  154. package/esm/rules/content.js +5 -0
  155. package/{rules → esm/rules}/counter-increment.d.ts +0 -0
  156. package/esm/rules/counter-increment.js +6 -0
  157. package/{rules → esm/rules}/cursor.d.ts +0 -0
  158. package/esm/rules/cursor.js +5 -0
  159. package/{rules → esm/rules}/cx.d.ts +0 -0
  160. package/esm/rules/cx.js +6 -0
  161. package/{rules → esm/rules}/cy.d.ts +0 -0
  162. package/esm/rules/cy.js +6 -0
  163. package/{rules → esm/rules}/direction.d.ts +0 -0
  164. package/esm/rules/direction.js +5 -0
  165. package/{rules → esm/rules}/display.d.ts +0 -0
  166. package/esm/rules/display.js +6 -0
  167. package/{rules → esm/rules}/fill.d.ts +0 -0
  168. package/esm/rules/fill.js +7 -0
  169. package/{rules → esm/rules}/filter.d.ts +2 -1
  170. package/esm/rules/filter.js +19 -0
  171. package/{rules → esm/rules}/flex-basis.d.ts +0 -0
  172. package/esm/rules/flex-basis.js +5 -0
  173. package/{rules → esm/rules}/flex-direction.d.ts +0 -0
  174. package/esm/rules/flex-direction.js +6 -0
  175. package/{rules → esm/rules}/flex-grow.d.ts +0 -0
  176. package/esm/rules/flex-grow.js +6 -0
  177. package/{rules → esm/rules}/flex-shrink.d.ts +0 -0
  178. package/esm/rules/flex-shrink.js +6 -0
  179. package/{rules → esm/rules}/flex-wrap.d.ts +0 -0
  180. package/esm/rules/flex-wrap.js +6 -0
  181. package/{rules → esm/rules}/flex.d.ts +0 -0
  182. package/esm/rules/flex.js +7 -0
  183. package/{rules → esm/rules}/float.d.ts +0 -0
  184. package/esm/rules/float.js +5 -0
  185. package/{rules → esm/rules}/font-family.d.ts +0 -0
  186. package/esm/rules/font-family.js +6 -0
  187. package/{rules → esm/rules}/font-size.d.ts +0 -0
  188. package/esm/rules/font-size.js +6 -0
  189. package/{rules → esm/rules}/font-smoothing.d.ts +0 -0
  190. package/esm/rules/font-smoothing.js +34 -0
  191. package/{rules → esm/rules}/font-style.d.ts +0 -0
  192. package/esm/rules/font-style.js +7 -0
  193. package/{rules → esm/rules}/font-variant-numeric.d.ts +0 -0
  194. package/esm/rules/font-variant-numeric.js +6 -0
  195. package/{rules → esm/rules}/font-weight.d.ts +0 -0
  196. package/esm/rules/font-weight.js +7 -0
  197. package/{rules → esm/rules}/font.d.ts +0 -0
  198. package/esm/rules/font.js +8 -0
  199. package/{rules → esm/rules}/gap.d.ts +0 -0
  200. package/esm/rules/gap.js +16 -0
  201. package/{rules → esm/rules}/grid-area.d.ts +0 -0
  202. package/esm/rules/grid-area.js +7 -0
  203. package/{rules → esm/rules}/grid-auto-columns.d.ts +0 -0
  204. package/esm/rules/grid-auto-columns.js +6 -0
  205. package/{rules → esm/rules}/grid-auto-flow.d.ts +0 -0
  206. package/esm/rules/grid-auto-flow.js +6 -0
  207. package/{rules → esm/rules}/grid-auto-rows.d.ts +0 -0
  208. package/esm/rules/grid-auto-rows.js +5 -0
  209. package/{rules → esm/rules}/grid-column-end.d.ts +0 -0
  210. package/esm/rules/grid-column-end.js +7 -0
  211. package/{rules → esm/rules}/grid-column-start.d.ts +0 -0
  212. package/esm/rules/grid-column-start.js +7 -0
  213. package/{rules → esm/rules}/grid-column.d.ts +0 -0
  214. package/esm/rules/grid-column.js +13 -0
  215. package/{rules → esm/rules}/grid-columns.d.ts +0 -0
  216. package/esm/rules/grid-columns.js +20 -0
  217. package/{rules → esm/rules}/grid-row-end.d.ts +0 -0
  218. package/esm/rules/grid-row-end.js +6 -0
  219. package/{rules → esm/rules}/grid-row-start.d.ts +0 -0
  220. package/esm/rules/grid-row-start.js +6 -0
  221. package/{rules → esm/rules}/grid-row.d.ts +0 -0
  222. package/esm/rules/grid-row.js +13 -0
  223. package/{rules → esm/rules}/grid-rows.d.ts +0 -0
  224. package/esm/rules/grid-rows.js +20 -0
  225. package/{rules → esm/rules}/grid-template-areas.d.ts +0 -0
  226. package/esm/rules/grid-template-areas.js +5 -0
  227. package/{rules → esm/rules}/grid-template-columns.d.ts +0 -0
  228. package/esm/rules/grid-template-columns.js +6 -0
  229. package/{rules → esm/rules}/grid-template-rows.d.ts +0 -0
  230. package/esm/rules/grid-template-rows.js +5 -0
  231. package/{rules → esm/rules}/grid-template.d.ts +0 -0
  232. package/esm/rules/grid-template.js +6 -0
  233. package/{rules → esm/rules}/grid.d.ts +0 -0
  234. package/esm/rules/grid.js +6 -0
  235. package/{rules → esm/rules}/group.d.ts +0 -0
  236. package/esm/rules/group.js +104 -0
  237. package/{rules → esm/rules}/height.d.ts +0 -0
  238. package/esm/rules/height.js +6 -0
  239. package/{rules → esm/rules}/inset.d.ts +0 -0
  240. package/esm/rules/inset.js +11 -0
  241. package/{rules → esm/rules}/isolation.d.ts +0 -0
  242. package/esm/rules/isolation.js +5 -0
  243. package/{rules → esm/rules}/justify-content.d.ts +0 -0
  244. package/esm/rules/justify-content.js +6 -0
  245. package/{rules → esm/rules}/justify-items.d.ts +0 -0
  246. package/esm/rules/justify-items.js +6 -0
  247. package/{rules → esm/rules}/justify-self.d.ts +0 -0
  248. package/esm/rules/justify-self.js +6 -0
  249. package/{rules → esm/rules}/letter-spacing.d.ts +0 -0
  250. package/esm/rules/letter-spacing.js +7 -0
  251. package/{rules → esm/rules}/line-clamp.d.ts +0 -0
  252. package/esm/rules/line-clamp.js +11 -0
  253. package/{rules → esm/rules}/line-height.d.ts +0 -0
  254. package/esm/rules/line-height.js +7 -0
  255. package/{rules → esm/rules}/lines.d.ts +0 -0
  256. package/esm/rules/lines.js +16 -0
  257. package/{rules → esm/rules}/list-style-image.d.ts +0 -0
  258. package/esm/rules/list-style-image.js +6 -0
  259. package/{rules → esm/rules}/list-style-position.d.ts +0 -0
  260. package/esm/rules/list-style-position.js +6 -0
  261. package/{rules → esm/rules}/list-style-type.d.ts +0 -0
  262. package/esm/rules/list-style-type.js +6 -0
  263. package/{rules → esm/rules}/list-style.d.ts +0 -0
  264. package/esm/rules/list-style.js +6 -0
  265. package/{rules → esm/rules}/margin.d.ts +0 -0
  266. package/esm/rules/margin.js +13 -0
  267. package/{rules → esm/rules}/mask-image.d.ts +0 -0
  268. package/esm/rules/mask-image.js +11 -0
  269. package/{rules → esm/rules}/max-height.d.ts +0 -0
  270. package/esm/rules/max-height.js +6 -0
  271. package/{rules → esm/rules}/max-width.d.ts +0 -0
  272. package/esm/rules/max-width.js +6 -0
  273. package/{rules → esm/rules}/min-height.d.ts +0 -0
  274. package/esm/rules/min-height.js +6 -0
  275. package/{rules → esm/rules}/min-width.d.ts +0 -0
  276. package/esm/rules/min-width.js +6 -0
  277. package/{rules → esm/rules}/mix-blend-mode.d.ts +0 -0
  278. package/esm/rules/mix-blend-mode.js +6 -0
  279. package/{rules → esm/rules}/object-fit.d.ts +0 -0
  280. package/esm/rules/object-fit.js +6 -0
  281. package/{rules → esm/rules}/object-position.d.ts +0 -0
  282. package/esm/rules/object-position.js +6 -0
  283. package/{rules → esm/rules}/opacity.d.ts +0 -0
  284. package/esm/rules/opacity.js +6 -0
  285. package/{rules → esm/rules}/order.d.ts +0 -0
  286. package/esm/rules/order.js +8 -0
  287. package/{rules → esm/rules}/outline-color.d.ts +0 -0
  288. package/esm/rules/outline-color.js +7 -0
  289. package/{rules → esm/rules}/outline-offset.d.ts +0 -0
  290. package/esm/rules/outline-offset.js +5 -0
  291. package/{rules → esm/rules}/outline-style.d.ts +0 -0
  292. package/esm/rules/outline-style.js +6 -0
  293. package/{rules → esm/rules}/outline-width.d.ts +0 -0
  294. package/esm/rules/outline-width.js +6 -0
  295. package/{rules → esm/rules}/outline.d.ts +0 -0
  296. package/esm/rules/outline.js +7 -0
  297. package/{rules → esm/rules}/overflow.d.ts +0 -0
  298. package/esm/rules/overflow.js +26 -0
  299. package/{rules → esm/rules}/overscroll-behavior.d.ts +0 -0
  300. package/esm/rules/overscroll-behavior.js +15 -0
  301. package/{rules → esm/rules}/padding.d.ts +0 -0
  302. package/esm/rules/padding.js +13 -0
  303. package/{rules → esm/rules}/place-content.d.ts +0 -0
  304. package/esm/rules/place-content.js +6 -0
  305. package/{rules → esm/rules}/place-items.d.ts +0 -0
  306. package/esm/rules/place-items.js +6 -0
  307. package/{rules → esm/rules}/place-self.d.ts +0 -0
  308. package/esm/rules/place-self.js +6 -0
  309. package/{rules → esm/rules}/placement.d.ts +0 -0
  310. package/esm/rules/placement.js +29 -0
  311. package/{rules → esm/rules}/pointer-events.d.ts +0 -0
  312. package/esm/rules/pointer-events.js +5 -0
  313. package/{rules → esm/rules}/position.d.ts +0 -0
  314. package/esm/rules/position.js +5 -0
  315. package/{rules → esm/rules}/quotes.d.ts +0 -0
  316. package/esm/rules/quotes.js +5 -0
  317. package/{rules → esm/rules}/resize.d.ts +0 -0
  318. package/esm/rules/resize.js +5 -0
  319. package/{rules → esm/rules}/rx.d.ts +0 -0
  320. package/esm/rules/rx.js +6 -0
  321. package/{rules → esm/rules}/ry.d.ts +0 -0
  322. package/esm/rules/ry.js +6 -0
  323. package/{rules → esm/rules}/scroll-behavior.d.ts +0 -0
  324. package/esm/rules/scroll-behavior.js +5 -0
  325. package/{rules → esm/rules}/scroll-margin.d.ts +0 -0
  326. package/esm/rules/scroll-margin.js +45 -0
  327. package/{rules → esm/rules}/scroll-padding.d.ts +0 -0
  328. package/esm/rules/scroll-padding.js +45 -0
  329. package/{rules → esm/rules}/scroll-snap-align.d.ts +0 -0
  330. package/esm/rules/scroll-snap-align.js +6 -0
  331. package/{rules → esm/rules}/scroll-snap-stop.d.ts +0 -0
  332. package/esm/rules/scroll-snap-stop.js +6 -0
  333. package/{rules → esm/rules}/scroll-snap-type.d.ts +0 -0
  334. package/esm/rules/scroll-snap-type.js +6 -0
  335. package/{rules → esm/rules}/shape-image-threshold.d.ts +0 -0
  336. package/esm/rules/shape-image-threshold.js +6 -0
  337. package/{rules → esm/rules}/shape-margin.d.ts +0 -0
  338. package/esm/rules/shape-margin.js +6 -0
  339. package/{rules → esm/rules}/shape-outside.d.ts +0 -0
  340. package/esm/rules/shape-outside.js +6 -0
  341. package/{rules → esm/rules}/spacing.d.ts +0 -0
  342. package/esm/rules/spacing.js +48 -0
  343. package/{rules → esm/rules}/stroke-dasharray.d.ts +0 -0
  344. package/esm/rules/stroke-dasharray.js +5 -0
  345. package/{rules → esm/rules}/stroke-dashoffset.d.ts +0 -0
  346. package/esm/rules/stroke-dashoffset.js +5 -0
  347. package/{rules → esm/rules}/stroke-width.d.ts +0 -0
  348. package/esm/rules/stroke-width.js +6 -0
  349. package/{rules → esm/rules}/stroke.d.ts +0 -0
  350. package/esm/rules/stroke.js +6 -0
  351. package/{rules → esm/rules}/table-layout.d.ts +0 -0
  352. package/esm/rules/table-layout.js +5 -0
  353. package/{rules → esm/rules}/text-align.d.ts +0 -0
  354. package/esm/rules/text-align.js +6 -0
  355. package/{rules → esm/rules}/text-decoration-color.d.ts +0 -0
  356. package/esm/rules/text-decoration-color.js +7 -0
  357. package/{rules → esm/rules}/text-decoration-line.d.ts +0 -0
  358. package/esm/rules/text-decoration-line.js +6 -0
  359. package/{rules → esm/rules}/text-decoration-style.d.ts +0 -0
  360. package/esm/rules/text-decoration-style.js +6 -0
  361. package/{rules → esm/rules}/text-decoration-thickness.d.ts +0 -0
  362. package/esm/rules/text-decoration-thickness.js +7 -0
  363. package/{rules → esm/rules}/text-decoration.d.ts +0 -0
  364. package/esm/rules/text-decoration.js +8 -0
  365. package/{rules → esm/rules}/text-fill-color.d.ts +0 -0
  366. package/esm/rules/text-fill-color.js +12 -0
  367. package/{rules → esm/rules}/text-indent.d.ts +0 -0
  368. package/esm/rules/text-indent.js +5 -0
  369. package/{rules → esm/rules}/text-orientation.d.ts +0 -0
  370. package/esm/rules/text-orientation.js +6 -0
  371. package/{rules → esm/rules}/text-overflow.d.ts +0 -0
  372. package/esm/rules/text-overflow.js +6 -0
  373. package/{rules → esm/rules}/text-rendering.d.ts +0 -0
  374. package/esm/rules/text-rendering.js +6 -0
  375. package/{rules → esm/rules}/text-shadow.d.ts +0 -0
  376. package/esm/rules/text-shadow.js +6 -0
  377. package/{rules → esm/rules}/text-size.d.ts +0 -0
  378. package/esm/rules/text-size.js +17 -0
  379. package/{rules → esm/rules}/text-stroke-color.d.ts +0 -0
  380. package/esm/rules/text-stroke-color.js +12 -0
  381. package/{rules → esm/rules}/text-stroke-width.d.ts +0 -0
  382. package/esm/rules/text-stroke-width.js +10 -0
  383. package/{rules → esm/rules}/text-stroke.d.ts +0 -0
  384. package/esm/rules/text-stroke.js +10 -0
  385. package/{rules → esm/rules}/text-transform.d.ts +0 -0
  386. package/esm/rules/text-transform.js +6 -0
  387. package/{rules → esm/rules}/text-underline-offset.d.ts +0 -0
  388. package/esm/rules/text-underline-offset.js +5 -0
  389. package/{rules → esm/rules}/touch-action.d.ts +0 -0
  390. package/esm/rules/touch-action.js +5 -0
  391. package/{rules → esm/rules}/transform-box.d.ts +0 -0
  392. package/esm/rules/transform-box.js +6 -0
  393. package/{rules → esm/rules}/transform-origin.d.ts +0 -0
  394. package/esm/rules/transform-origin.js +7 -0
  395. package/{rules → esm/rules}/transform-style.d.ts +0 -0
  396. package/esm/rules/transform-style.js +6 -0
  397. package/{rules → esm/rules}/transform.d.ts +2 -1
  398. package/esm/rules/transform.js +44 -0
  399. package/{rules → esm/rules}/transition-delay.d.ts +0 -0
  400. package/esm/rules/transition-delay.js +7 -0
  401. package/{rules → esm/rules}/transition-duration.d.ts +0 -0
  402. package/esm/rules/transition-duration.js +7 -0
  403. package/{rules → esm/rules}/transition-property.d.ts +0 -0
  404. package/esm/rules/transition-property.js +6 -0
  405. package/{rules → esm/rules}/transition-timing-function.d.ts +0 -0
  406. package/esm/rules/transition-timing-function.js +6 -0
  407. package/{rules → esm/rules}/transition.d.ts +0 -0
  408. package/esm/rules/transition.js +7 -0
  409. package/{rules → esm/rules}/user-drag.d.ts +0 -0
  410. package/esm/rules/user-drag.js +12 -0
  411. package/{rules → esm/rules}/user-select.d.ts +0 -0
  412. package/esm/rules/user-select.js +12 -0
  413. package/{rules → esm/rules}/variable.d.ts +0 -0
  414. package/esm/rules/variable.js +11 -0
  415. package/{rules → esm/rules}/vertical-align.d.ts +0 -0
  416. package/esm/rules/vertical-align.js +6 -0
  417. package/{rules → esm/rules}/visibility.d.ts +0 -0
  418. package/esm/rules/visibility.js +5 -0
  419. package/{rules → esm/rules}/white-space.d.ts +0 -0
  420. package/esm/rules/white-space.js +6 -0
  421. package/{rules → esm/rules}/width.d.ts +0 -0
  422. package/esm/rules/width.js +6 -0
  423. package/{rules → esm/rules}/will-change.d.ts +0 -0
  424. package/esm/rules/will-change.js +5 -0
  425. package/{rules → esm/rules}/word-break.d.ts +0 -0
  426. package/esm/rules/word-break.js +6 -0
  427. package/{rules → esm/rules}/word-spacing.d.ts +0 -0
  428. package/esm/rules/word-spacing.js +6 -0
  429. package/{rules → esm/rules}/writing-mode.d.ts +0 -0
  430. package/esm/rules/writing-mode.js +6 -0
  431. package/{rules → esm/rules}/x.d.ts +0 -0
  432. package/esm/rules/x.js +6 -0
  433. package/{rules → esm/rules}/y.d.ts +0 -0
  434. package/esm/rules/y.js +6 -0
  435. package/{rules → esm/rules}/z-index.d.ts +0 -0
  436. package/esm/rules/z-index.js +7 -0
  437. package/{utils → esm/utils}/concat-arrays.d.ts +0 -0
  438. package/esm/utils/concat-arrays.js +7 -0
  439. package/{utils → esm/utils}/get-border-props.d.ts +0 -0
  440. package/esm/utils/get-border-props.js +43 -0
  441. package/{utils → esm/utils}/get-css-property-text.d.ts +0 -0
  442. package/esm/utils/get-css-property-text.js +7 -0
  443. package/{utils → esm/utils}/get-type.d.ts +0 -0
  444. package/esm/utils/get-type.js +9 -0
  445. package/{utils → esm/utils}/hex-to-rgb.d.ts +0 -0
  446. package/esm/utils/hex-to-rgb.js +7 -0
  447. package/{utils → esm/utils}/is-plain-object.d.ts +0 -0
  448. package/esm/utils/is-plain-object.js +12 -0
  449. package/{utils → esm/utils}/is-symbol.d.ts +0 -0
  450. package/esm/utils/is-symbol.js +10 -0
  451. package/{utils → esm/utils}/merge.d.ts +0 -0
  452. package/esm/utils/merge.js +58 -0
  453. package/{utils → esm/utils}/normalize-css-calc-text.d.ts +0 -0
  454. package/esm/utils/normalize-css-calc-text.js +55 -0
  455. package/esm/utils/parse-value-unit.d.ts +2 -0
  456. package/esm/utils/parse-value-unit.js +47 -0
  457. package/{utils → esm/utils}/parse-value.d.ts +0 -0
  458. package/esm/utils/parse-value.js +84 -0
  459. package/{utils → esm/utils}/rgb-to-hex.d.ts +0 -0
  460. package/esm/utils/rgb-to-hex.js +3 -0
  461. package/{utils → esm/utils}/test-css.d.ts +0 -0
  462. package/esm/utils/test-css.js +15 -0
  463. package/index.js +1 -1
  464. package/package.json +5 -5
  465. package/index.esm.js +0 -2
  466. package/rule.test.d.ts +0 -1
  467. package/rules/accent.test.d.ts +0 -1
  468. package/rules/area.test.d.ts +0 -1
  469. package/rules/background.test.d.ts +0 -1
  470. package/rules/caret.test.d.ts +0 -1
  471. package/rules/color.test.d.ts +0 -1
  472. package/rules/content.test.d.ts +0 -1
  473. package/rules/font-weight.test.d.ts +0 -1
  474. package/rules/grid-column.test.d.ts +0 -1
  475. package/rules/group.test.d.ts +0 -1
  476. package/rules/max-width.test.d.ts +0 -1
  477. package/rules/outline.test.d.ts +0 -1
  478. package/rules/overflow.test.d.ts +0 -1
  479. package/rules/scroll-snap-type.test.d.ts +0 -1
  480. package/rules/semantics.test.d.ts +0 -1
  481. package/rules/text-fill-color.test.d.ts +0 -1
  482. package/rules/text.test.d.ts +0 -1
  483. package/rules/transform.test.d.ts +0 -1
  484. package/rules/transition.test.d.ts +0 -1
  485. package/rules/writing-mode.test.d.ts +0 -1
  486. package/selectors.test.d.ts +0 -1
  487. package/utils/parse-value-unit.d.ts +0 -1
package/esm/rule.js ADDED
@@ -0,0 +1,563 @@
1
+ import { getCssPropertyText } from './utils/get-css-property-text';
2
+ import { parseValue } from './utils/parse-value';
3
+ import { START_SYMBOL } from './constants/start-symbol';
4
+ export const PRIORITY_SELECTORS = [':disabled', ':active', ':focus', ':hover'];
5
+ const MATCHES = 'matches';
6
+ const SEMANTICS = 'semantics';
7
+ const SYMBOL = 'symbol';
8
+ const WIDTH = 'width';
9
+ const MAX_WIDTH = 'max-' + WIDTH;
10
+ const MIN_WIDTH = 'min-' + WIDTH;
11
+ const MOTION = 'motion';
12
+ const REDUCE = 'reduce';
13
+ const REDUCED_MOTION = REDUCE + 'd-' + MOTION;
14
+ const PX = 'px';
15
+ const REM = 'rem';
16
+ const selectorSymbols = ['!', '*', '>', '+', '~', ':', '[', '@', '_'];
17
+ const selectorSplitRegexp = /(\\'(?:.*?)[^\\]\\')(?=[*_>~+,)])|(\[[^=]+='(?:.*?)[^\\]'\])/;
18
+ const transformSelectorUnderline = (selector) => selector.split(selectorSplitRegexp)
19
+ .map((eachToken, i) => i % 3 ? eachToken : eachToken.replace(/\_/g, ' '))
20
+ .join('');
21
+ export class MasterCSSRule {
22
+ className;
23
+ matching;
24
+ css;
25
+ prefix;
26
+ symbol;
27
+ token;
28
+ prefixSelectors;
29
+ suffixSelectors;
30
+ important;
31
+ media;
32
+ at = {};
33
+ direction;
34
+ themeName;
35
+ unitToken;
36
+ hasWhere;
37
+ prioritySelectorIndex = -1;
38
+ natives = [];
39
+ static id;
40
+ static propName;
41
+ static matches;
42
+ static colorStarts;
43
+ static symbol;
44
+ static unit = REM;
45
+ static colorful;
46
+ static match(name, colorNames) {
47
+ /**
48
+ * STEP 1. matches
49
+ */
50
+ if (this.matches && this.matches.test(name)) {
51
+ return { origin: MATCHES };
52
+ }
53
+ /**
54
+ * STEP 2. color starts
55
+ */
56
+ // TODO: 動態 new Regex 效能問題待優化
57
+ if (this.colorStarts
58
+ && (name.match('^' + this.colorStarts + '(?:(?:#|(rgb|hsl)\\(.*\\))((?!\\|).)*$|(?:transparent|current))')
59
+ || colorNames.length
60
+ && name.match('^' + this.colorStarts + '(' + colorNames.join('|') + ')')
61
+ && name.indexOf('|') === -1)) {
62
+ return { origin: MATCHES };
63
+ }
64
+ /**
65
+ * STEP 3. symbol
66
+ */
67
+ if (this.symbol && name.startsWith(this.symbol)) {
68
+ return { origin: SYMBOL };
69
+ }
70
+ /**
71
+ * STEP 4. key full name
72
+ */
73
+ if (this.propName && name.startsWith(this.propName + ':')) {
74
+ return { origin: MATCHES };
75
+ }
76
+ }
77
+ ;
78
+ constructor(className, matching, css) {
79
+ this.className = className;
80
+ this.matching = matching;
81
+ this.css = css;
82
+ const TargetRule = this.constructor;
83
+ let { id, unit, propName, colorful } = TargetRule;
84
+ const { breakpoints, mediaQueries, semantics, rootSize } = css.config;
85
+ const values = css.config.values[id];
86
+ const relationThemesMap = css.relationThemesMap[className];
87
+ const { themeNames, colorsThemesMap, selectors } = css;
88
+ let token = className;
89
+ // 1. value / selectorToken
90
+ let value, prefixToken, suffixToken, valueTokens;
91
+ if (matching.origin === SEMANTICS) {
92
+ suffixToken = token.slice(matching.value.length);
93
+ value = semantics[matching.value];
94
+ }
95
+ else {
96
+ let valueToken;
97
+ if (matching.origin === MATCHES) {
98
+ if (id === 'Group') {
99
+ let i = 0;
100
+ for (; i < token.length; i++) {
101
+ if (token[i] === '{' && token[i - 1] !== '\\') {
102
+ break;
103
+ }
104
+ }
105
+ prefixToken = token.slice(0, i);
106
+ valueToken = token.slice(i);
107
+ }
108
+ else {
109
+ const indexOfColon = token.indexOf(':');
110
+ this.prefix = token.slice(0, indexOfColon + 1);
111
+ if (this.prefix.includes('(')) {
112
+ this.prefix = undefined;
113
+ valueToken = token;
114
+ }
115
+ else {
116
+ valueToken = token.slice(indexOfColon + 1);
117
+ }
118
+ }
119
+ }
120
+ else if (matching.origin === SYMBOL) {
121
+ this.symbol = token[0];
122
+ valueToken = token.slice(1);
123
+ }
124
+ valueTokens = [];
125
+ let currentValueToken = '';
126
+ let i = 0;
127
+ (function analyze(end, depth, func = '') {
128
+ let varIndex;
129
+ let isString = false;
130
+ if (end) {
131
+ if (end === ')' && currentValueToken.slice(-1) === '$') {
132
+ varIndex = currentValueToken.length - 1;
133
+ }
134
+ else if (end === '\'') {
135
+ isString = true;
136
+ }
137
+ currentValueToken += valueToken[i++];
138
+ }
139
+ for (; i < valueToken.length; i++) {
140
+ const val = valueToken[i];
141
+ if (val === end) {
142
+ currentValueToken += val;
143
+ if (isString) {
144
+ let count = 0;
145
+ for (let j = currentValueToken.length - 2;; j--) {
146
+ if (currentValueToken[j] !== '\\') {
147
+ break;
148
+ }
149
+ count++;
150
+ }
151
+ if (count % 2) {
152
+ continue;
153
+ }
154
+ }
155
+ if (varIndex !== undefined) {
156
+ currentValueToken = currentValueToken.slice(0, varIndex) + currentValueToken.slice(varIndex).replace(/\$\((.*)\)/, 'var(--$1)');
157
+ }
158
+ if (!depth) {
159
+ if (isString) {
160
+ valueTokens.push(currentValueToken);
161
+ }
162
+ else {
163
+ valueTokens.push({ value: currentValueToken });
164
+ }
165
+ func = '';
166
+ currentValueToken = '';
167
+ }
168
+ break;
169
+ }
170
+ else if (!isString && val in START_SYMBOL) {
171
+ analyze(START_SYMBOL[val], depth === undefined ? 0 : depth + 1, func);
172
+ }
173
+ else if (val === '|' && end !== '}' && (!isString || func === 'path')) {
174
+ if (!end) {
175
+ valueTokens.push({ value: currentValueToken });
176
+ currentValueToken = '';
177
+ }
178
+ else {
179
+ currentValueToken += ' ';
180
+ }
181
+ }
182
+ else {
183
+ if (!end) {
184
+ if (val === '.') {
185
+ if (isNaN(+valueToken[i + 1])) {
186
+ break;
187
+ }
188
+ else if (valueToken[i - 1] === '-') {
189
+ currentValueToken += '0';
190
+ }
191
+ }
192
+ else if (val === ',') {
193
+ valueTokens.push({ value: currentValueToken }, ',');
194
+ currentValueToken = '';
195
+ continue;
196
+ }
197
+ else if (val === '#'
198
+ && (currentValueToken || valueTokens.length && valueToken[i - 1] !== '|')
199
+ || selectorSymbols.includes(val)) {
200
+ break;
201
+ }
202
+ func += val;
203
+ }
204
+ currentValueToken += val;
205
+ }
206
+ }
207
+ })();
208
+ if (currentValueToken) {
209
+ valueTokens.push({ value: currentValueToken });
210
+ }
211
+ suffixToken = valueToken.slice(i);
212
+ }
213
+ // 2. !important
214
+ if (suffixToken[0] === '!') {
215
+ this.important = true;
216
+ suffixToken = suffixToken.slice(1);
217
+ }
218
+ // 3. prefix selector
219
+ const analyzeSelectorToken = (selectorText) => {
220
+ const transformedSelectorText = transformSelectorUnderline(selectorText);
221
+ const selectors = [];
222
+ let currentSelector = '';
223
+ let symbolCount = 0;
224
+ for (let i = 0; i < transformedSelectorText.length; i++) {
225
+ const char = transformedSelectorText[i];
226
+ if (char === '\\') {
227
+ currentSelector += char + transformedSelectorText[++i];
228
+ continue;
229
+ }
230
+ if (!symbolCount && char === ',') {
231
+ selectors.push(currentSelector);
232
+ currentSelector = '';
233
+ }
234
+ else {
235
+ currentSelector += char;
236
+ if (symbolCount && char === ')') {
237
+ symbolCount--;
238
+ }
239
+ else if (char === '(') {
240
+ symbolCount++;
241
+ }
242
+ }
243
+ }
244
+ if (currentSelector) {
245
+ selectors.push(currentSelector);
246
+ }
247
+ return selectors;
248
+ };
249
+ this.prefixSelectors = prefixToken
250
+ ? analyzeSelectorToken(prefixToken)
251
+ : [''];
252
+ // 4. suffix selector
253
+ const suffixTokens = suffixToken.split('@');
254
+ let suffixSelector = suffixTokens[0];
255
+ if (suffixSelector) {
256
+ this.suffixSelectors = [];
257
+ const originalSuffixTokens = analyzeSelectorToken(suffixSelector);
258
+ for (let eachOriginalSuffixToken of originalSuffixTokens) {
259
+ for (const eachSingleSelectorEntry of selectors.single) {
260
+ eachOriginalSuffixToken = eachOriginalSuffixToken.replace(eachSingleSelectorEntry[0], eachSingleSelectorEntry[1]);
261
+ }
262
+ const transform = (selectorText) => {
263
+ for (const eachMultipleSelectorEntry of selectors.multiple) {
264
+ if (eachMultipleSelectorEntry[0].test(selectorText)) {
265
+ for (const eachSelectorText of eachMultipleSelectorEntry[1]) {
266
+ transform(selectorText.replace(eachMultipleSelectorEntry[0], eachSelectorText));
267
+ }
268
+ return;
269
+ }
270
+ }
271
+ this.suffixSelectors.push(selectorText);
272
+ };
273
+ transform(eachOriginalSuffixToken);
274
+ }
275
+ for (const eachSuffixSelector of this.suffixSelectors) {
276
+ if (this.hasWhere !== false) {
277
+ this.hasWhere = eachSuffixSelector.includes(':where(');
278
+ }
279
+ for (let i = 0; i < PRIORITY_SELECTORS.length; i++) {
280
+ if (eachSuffixSelector.includes(PRIORITY_SELECTORS[i])) {
281
+ if (this.prioritySelectorIndex === -1 || this.prioritySelectorIndex > i) {
282
+ this.prioritySelectorIndex = i;
283
+ }
284
+ break;
285
+ }
286
+ }
287
+ }
288
+ }
289
+ else {
290
+ this.suffixSelectors = [''];
291
+ }
292
+ // 5. atTokens
293
+ for (let i = 1; i < suffixTokens.length; i++) {
294
+ const atToken = suffixTokens[i];
295
+ if (atToken) {
296
+ if (themeNames.includes(atToken)) {
297
+ this.themeName = atToken;
298
+ }
299
+ else if (atToken === 'rtl'
300
+ || atToken === 'ltr') {
301
+ this.direction = atToken;
302
+ }
303
+ else {
304
+ let type;
305
+ let queryText;
306
+ const underscoreIndex = atToken.indexOf('_');
307
+ if (underscoreIndex !== -1) {
308
+ type = atToken.slice(0, underscoreIndex);
309
+ queryText = atToken.slice(underscoreIndex);
310
+ }
311
+ else {
312
+ const leftBracketIndex = atToken.indexOf('(');
313
+ if (leftBracketIndex !== -1) {
314
+ type = atToken.slice(0, leftBracketIndex);
315
+ queryText = atToken.slice(leftBracketIndex);
316
+ }
317
+ }
318
+ if (!type) {
319
+ type = 'media';
320
+ const queryTexts = [];
321
+ this.media = {
322
+ token: atToken,
323
+ features: {}
324
+ };
325
+ const typeOrFeatureTokens = atToken.split('&');
326
+ for (const typeOrFeatureToken of typeOrFeatureTokens) {
327
+ if (typeOrFeatureToken === 'all'
328
+ || typeOrFeatureToken === 'print'
329
+ || typeOrFeatureToken === 'screen'
330
+ || typeOrFeatureToken === 'speech') {
331
+ this.media.type = typeOrFeatureToken;
332
+ }
333
+ else if (typeOrFeatureToken === '🖨') {
334
+ this.media.type = 'print';
335
+ }
336
+ else {
337
+ if (typeOrFeatureToken === 'landscape' || typeOrFeatureToken === 'portrait') {
338
+ queryTexts.push('(orientation:' + typeOrFeatureToken + ')');
339
+ }
340
+ else if (typeOrFeatureToken === MOTION || typeOrFeatureToken === REDUCED_MOTION) {
341
+ queryTexts.push('(prefers-' + REDUCED_MOTION + ':'
342
+ + (typeOrFeatureToken === MOTION ? 'no-preference' : REDUCE)
343
+ + ')');
344
+ }
345
+ else if (mediaQueries && typeOrFeatureToken in mediaQueries) {
346
+ queryTexts.push(mediaQueries[typeOrFeatureToken]);
347
+ }
348
+ else {
349
+ const feature = {
350
+ token: typeOrFeatureToken
351
+ };
352
+ let featureName = '';
353
+ let extremumOperator = '';
354
+ let correction = 0;
355
+ if (typeOrFeatureToken.startsWith('<=')) {
356
+ extremumOperator = '<=';
357
+ featureName = MAX_WIDTH;
358
+ }
359
+ else if (typeOrFeatureToken.startsWith('>=') || breakpoints[typeOrFeatureToken]) {
360
+ extremumOperator = '>=';
361
+ featureName = MIN_WIDTH;
362
+ }
363
+ else if (typeOrFeatureToken.startsWith('>')) {
364
+ extremumOperator = '>';
365
+ featureName = MIN_WIDTH;
366
+ correction = .02;
367
+ }
368
+ else if (typeOrFeatureToken.startsWith('<')) {
369
+ extremumOperator = '<';
370
+ featureName = MAX_WIDTH;
371
+ correction = -.02;
372
+ }
373
+ switch (featureName) {
374
+ case MAX_WIDTH:
375
+ case MIN_WIDTH:
376
+ const conditionUnitValueToken = extremumOperator
377
+ ? typeOrFeatureToken.replace(extremumOperator, '')
378
+ : typeOrFeatureToken;
379
+ const breakpoint = breakpoints[conditionUnitValueToken];
380
+ if (breakpoint) {
381
+ Object.assign(feature, parseValue(breakpoint, PX));
382
+ }
383
+ else {
384
+ Object.assign(feature, parseValue(conditionUnitValueToken, PX));
385
+ }
386
+ if (feature.unit === PX) {
387
+ feature.value += correction;
388
+ }
389
+ this.media.features[featureName] = feature;
390
+ queryTexts.push('(' + featureName + ':' + (feature.value + feature.unit) + ')');
391
+ break;
392
+ }
393
+ }
394
+ }
395
+ }
396
+ queryText = '';
397
+ if (this.media.type) {
398
+ queryText = this.media.type;
399
+ }
400
+ if (queryTexts.length) {
401
+ queryText += (queryText ? ' and ' : '') + queryTexts.join(' and ');
402
+ }
403
+ }
404
+ if (queryText) {
405
+ this.at[type] = (type in this.at
406
+ ? this.at[type] + ' and '
407
+ : '')
408
+ + queryText.replace(/\_/g, ' ');
409
+ }
410
+ }
411
+ }
412
+ }
413
+ // 6. order
414
+ if (this.order === undefined) {
415
+ // @ts-ignore
416
+ this.order = 0;
417
+ }
418
+ // 7. value
419
+ const insertNewNative = (themeName, bypassWhenUnmatchColor) => {
420
+ let newValue, newUnit;
421
+ const generateCssText = (propertiesText, themeName) => {
422
+ let prefixText = '';
423
+ if (this.direction) {
424
+ prefixText += '[dir=' + this.direction + '] ';
425
+ }
426
+ const prefixTexts = this.prefixSelectors.map(eachPrefixSelector => eachPrefixSelector + prefixText);
427
+ const getCssText = (themeName, name) => {
428
+ const prefixThemeText = (themeName ? '.' + themeName + ' ' : '');
429
+ const esacpedName = '.' + CSS.escape(name);
430
+ return prefixTexts
431
+ .map(eachPrefixText => prefixThemeText + eachPrefixText)
432
+ .reduce((arr, eachPrefixText) => {
433
+ arr.push(this.suffixSelectors
434
+ .reduce((_arr, eachSuffixSelector) => {
435
+ _arr.push(eachPrefixText + esacpedName + eachSuffixSelector);
436
+ return _arr;
437
+ }, [])
438
+ .join(','));
439
+ return arr;
440
+ }, [])
441
+ .join(',');
442
+ };
443
+ let cssText = getCssText(themeName, className)
444
+ + (relationThemesMap
445
+ ? Object
446
+ .entries(relationThemesMap)
447
+ .filter(([relationTheme]) => this.themeName || !colorful || !themeName || !relationTheme || relationTheme === themeName)
448
+ .map(([relationTheme, classNames]) => classNames.reduce((str, className) => str + ',' + getCssText(this.themeName ?? (colorful ? themeName || relationTheme : relationTheme), className), ''))
449
+ .join('')
450
+ : '')
451
+ + '{'
452
+ + propertiesText
453
+ + '}';
454
+ for (const key of Object.keys(this.at).sort((a, b) => b === 'supports' ? -1 : 1)) {
455
+ cssText = '@' + key + ' ' + this.at[key] + '{' + cssText + '}';
456
+ }
457
+ return cssText;
458
+ };
459
+ const newValueTokens = [];
460
+ if (valueTokens) {
461
+ let uv, anyColorMatched = undefined;
462
+ for (const eachValueToken of valueTokens) {
463
+ if (typeof eachValueToken === 'string') {
464
+ newValueTokens.push(eachValueToken);
465
+ }
466
+ else {
467
+ uv = parseValue(eachValueToken.value, unit, colorful && colorsThemesMap, values, rootSize, this.themeName ? [this.themeName, ''] : [themeName]);
468
+ if (uv.colorMatched !== undefined && anyColorMatched !== true) {
469
+ anyColorMatched = uv.colorMatched;
470
+ }
471
+ newValueTokens.push(uv.value + uv.unit);
472
+ }
473
+ }
474
+ if (bypassWhenUnmatchColor && (anyColorMatched === undefined ? themeName : !anyColorMatched))
475
+ return;
476
+ if (newValueTokens.length === 1) {
477
+ if (uv) {
478
+ newValue = uv.value;
479
+ newUnit = uv.unit;
480
+ }
481
+ else {
482
+ newValue = newValueTokens[0];
483
+ }
484
+ }
485
+ else {
486
+ newValue = newValueTokens.reduce((previousVal, currentVal, i) => previousVal + currentVal + ((currentVal === ',' || valueTokens[i + 1] === ',' || i === valueTokens.length - 1) ? '' : ' '), '');
487
+ }
488
+ if (typeof newValue !== 'object') {
489
+ // 8. parseValue
490
+ if (this.parseValue) {
491
+ newValue = this.parseValue(newValue, this.css.config);
492
+ }
493
+ // 9. transform value
494
+ if (colorful && newValue === 'current') {
495
+ newValue = 'currentColor';
496
+ }
497
+ else if (values && newValue in values) {
498
+ newValue = values[newValue].toString();
499
+ }
500
+ const declaration = { unit: newUnit, value: newValue, important: this.important };
501
+ if (this.getThemeProps) {
502
+ const themeProps = this.getThemeProps(declaration, css);
503
+ for (const themeName in themeProps) {
504
+ this.natives.push({
505
+ unit: newUnit,
506
+ value: newValue,
507
+ text: generateCssText(Object
508
+ .entries(themeProps[themeName])
509
+ .map(([propertyName, propertyValue]) => getCssPropertyText(propertyName, {
510
+ important: this.important,
511
+ unit: '',
512
+ value: propertyValue
513
+ }))
514
+ .join(';'), themeName),
515
+ themeName
516
+ });
517
+ }
518
+ return;
519
+ }
520
+ else if (this.get) {
521
+ newValue = this.get(declaration);
522
+ }
523
+ }
524
+ }
525
+ else {
526
+ newValue = value;
527
+ }
528
+ this.natives.push({
529
+ unit: newUnit,
530
+ value: newValue,
531
+ text: generateCssText(typeof newValue === 'object'
532
+ ? Object
533
+ .entries(newValue)
534
+ .map(([propertyName, propertyValue]) => getCssPropertyText(propertyName, {
535
+ ...(typeof propertyValue === 'object'
536
+ ? propertyValue
537
+ : { unit: '', value: propertyValue }),
538
+ important: this.important
539
+ }))
540
+ .join(';')
541
+ : getCssPropertyText(propName, { unit: newUnit, value: newValue, important: this.important }), themeName),
542
+ themeName
543
+ });
544
+ };
545
+ if (this.getThemeProps) {
546
+ insertNewNative(undefined, false);
547
+ }
548
+ else if (this.themeName) {
549
+ insertNewNative(this.themeName, false);
550
+ }
551
+ else if (colorful) {
552
+ for (const eachThemeName of themeNames) {
553
+ insertNewNative(eachThemeName, true);
554
+ }
555
+ }
556
+ else {
557
+ insertNewNative('', false);
558
+ }
559
+ }
560
+ }
561
+ if (typeof window !== 'undefined') {
562
+ window.MasterCSSRule = MasterCSSRule;
563
+ }
File without changes
@@ -0,0 +1,7 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AccentColor';
4
+ static propName = 'accent-color';
5
+ static colorStarts = 'accent:';
6
+ static colorful = true;
7
+ }
File without changes
@@ -0,0 +1,6 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AlignContent';
4
+ static matches = /^ac:./;
5
+ static propName = 'align-content';
6
+ }
File without changes
@@ -0,0 +1,6 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AlignItems';
4
+ static matches = /^ai:./;
5
+ static propName = 'align-items';
6
+ }
File without changes
@@ -0,0 +1,6 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AlignSelf';
4
+ static matches = /^as:./;
5
+ static propName = 'align-self';
6
+ }
File without changes
@@ -0,0 +1,7 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AnimationDelay';
4
+ static matches = /^\@delay:./;
5
+ static propName = 'animation-delay';
6
+ static unit = 'ms';
7
+ }
File without changes
@@ -0,0 +1,6 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AnimationDirection';
4
+ static matches = /^\@direction:./;
5
+ static propName = 'animation-direction';
6
+ }
File without changes
@@ -0,0 +1,7 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AnimationDuration';
4
+ static matches = /^\@duration:./;
5
+ static propName = 'animation-duration';
6
+ static unit = 'ms';
7
+ }
File without changes
@@ -0,0 +1,6 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AnimationFillMode';
4
+ static matches = /^\@fill-mode:./;
5
+ static propName = 'animation-fill-mode';
6
+ }
@@ -0,0 +1,7 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AnimationIterationCount';
4
+ static matches = /^\@iteration-count:./;
5
+ static propName = 'animation-interation-count';
6
+ static unit = '';
7
+ }
File without changes
@@ -0,0 +1,6 @@
1
+ import { MasterCSSRule } from '../rule';
2
+ export default class default_1 extends MasterCSSRule {
3
+ static id = 'AnimationName';
4
+ static matches = /^\@name:./;
5
+ static propName = 'animation-name';
6
+ }
File without changes