Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

1.2.0 initial

  • Loading branch information...
commit a7498974f746bb8ae1ca835bf3936952a3c7d1d6 1 parent 4fc3f58
@anotherquiz anotherquiz authored
Showing with 3,109 additions and 8,762 deletions.
  1. +34 −0 GNUmakefile
  2. +0 −5 Makefile
  3. +0 −17 TODO.md
  4. +0 −6 USAGE
  5. +2 −2 bin/csso
  6. +0 −234 jsdoc/index.html
  7. +0 −2,280 jsdoc/symbols/$cssm.html
  8. +0 −496 jsdoc/symbols/$cssoutils.html
  9. +0 −1,443 jsdoc/symbols/$cssp.html
  10. +0 −326 jsdoc/symbols/_global_.html
  11. +0 −16 jsdoc/template/allclasses.tmpl
  12. +0 −649 jsdoc/template/class.tmpl
  13. +0 −39 jsdoc/template/index.tmpl
  14. +0 −175 jsdoc/template/publish.js
  15. +0 −162 jsdoc/template/static/default.css
  16. +0 −2  jsdoc/template/static/header.html
  17. +0 −19 jsdoc/template/static/index.html
  18. +0 −35 jsdoc/template/symbol.tmpl
  19. +0 −61 lib/ccli.js
  20. +750 −0 lib/compressor.js
  21. +0 −930 lib/cssm.js
  22. +56 −0 lib/csso.js
  23. +16 −0 lib/cssoapi.js
  24. +0 −162 lib/cssoutils.js
  25. +0 −706 lib/cssp.js
  26. +850 −0 lib/parser.js
  27. +126 −0 lib/translator.js
  28. +41 −0 lib/util.js
  29. +6 −0 src/compressor.node.js
  30. +744 −0 src/compressor.shared.js
  31. +2 −0  src/compressor.web.js
  32. +135 −0 src/csso.other.js
  33. +177 −0 src/csso.pecode
  34. +3 −0  src/parser.node.js
  35. +7 −0 src/translator.node.js
  36. +119 −0 src/translator.shared.js
  37. +9 −0 src/util.node.js
  38. +32 −0 src/util.shared.js
  39. +0 −5 test/cssm/css/config.order.block.test1.css
  40. +0 −6 test/cssm/css/config.order.block.test2.css
  41. +0 −10 test/cssm/css/config.order.block.test3.css
  42. +0 −10 test/cssm/css/config.order.block.test4.css
  43. +0 −13 test/cssm/css/config.order.block.test5.css
  44. +0 −13 test/cssm/css/config.order.block.test6.css
  45. +0 −5 test/cssm/css/config.order.test1.css
  46. +0 −13 test/cssm/css/config.order.test10.css
  47. +0 −13 test/cssm/css/config.order.test11.css
  48. +0 −11 test/cssm/css/config.order.test12.css
  49. +0 −11 test/cssm/css/config.order.test13.css
  50. +0 −11 test/cssm/css/config.order.test14.css
  51. +0 −6 test/cssm/css/config.order.test2.css
  52. +0 −6 test/cssm/css/config.order.test3.css
  53. +0 −8 test/cssm/css/config.order.test4.css
  54. +0 −8 test/cssm/css/config.order.test5.css
  55. +0 −10 test/cssm/css/config.order.test6.css
  56. +0 −10 test/cssm/css/config.order.test7.css
  57. +0 −11 test/cssm/css/config.order.test8.css
  58. +0 −11 test/cssm/css/config.order.test9.css
  59. +0 −7 test/cssm/css/config.protect.block.test1.css
  60. +0 −6 test/cssm/css/config.protect.block.test2.css
  61. +0 −9 test/cssm/css/config.protect.block.test3.css
  62. +0 −10 test/cssm/css/config.protect.block.test4.css
  63. +0 −19 test/cssm/css/config.protect.block.test5.css
  64. +0 −4 test/cssm/css/config.protect.test1.css
  65. +0 −4 test/cssm/css/config.protect.test2.css
  66. +0 −5 test/cssm/css/config.protect.test3.css
  67. +0 −6 test/cssm/css/config.protect.test4.css
  68. +0 −8 test/cssm/css/config.protect.test5.css
  69. +0 −8 test/cssm/css/config.protect.test6.css
  70. +0 −3  test/cssm/css/css21.part13.2.1.test1.css
  71. +0 −7 test/cssm/css/css21.part13.2.1.test2.css
  72. +0 −6 test/cssm/css/css21.part13.2.1.test3.css
  73. +0 −6 test/cssm/css/css21.part13.2.1.test4.css
  74. +0 −12 test/cssm/css/css21.part13.2.2.test1.css
  75. +0 −12 test/cssm/css/css21.part13.2.2.test2.css
  76. +0 −1  test/cssm/css/css21.part15.6.test1.css
  77. +0 −1  test/cssm/css/css21.part15.6.test2.css
  78. +0 −1  test/cssm/css/css21.part15.6.test3.css
  79. +0 −1  test/cssm/css/css21.part15.6.test4.css
  80. +0 −1  test/cssm/css/css21.part4.1.3.test1.css
  81. +0 −1  test/cssm/css/css21.part4.1.3.test2.css
  82. +0 −1  test/cssm/css/css21.part4.1.3.test3.css
  83. +0 −1  test/cssm/css/css21.part4.1.3.test4.css
  84. +0 −3  test/cssm/css/css21.part4.1.5.test1.css
  85. +0 −3  test/cssm/css/css21.part4.1.5.test2.css
  86. +0 −4 test/cssm/css/css21.part4.1.5.test3.css
  87. +0 −5 test/cssm/css/css21.part4.1.5.test4.css
  88. +0 −1  test/cssm/css/css21.part4.1.9.test1.css
  89. +0 −1  test/cssm/css/css21.part4.1.9.test2.css
  90. +0 −1  test/cssm/css/css21.part4.1.9.test3.css
  91. +0 −1  test/cssm/css/css21.part4.1.9.test4.css
  92. +0 −1  test/cssm/css/css21.part4.1.9.test5.css
  93. +0 −4 test/cssm/css/css21.part4.1.9.test6.css
  94. +0 −4 test/cssm/css/css21.part4.1.9.test7.css
  95. +0 −4 test/cssm/css/css21.part4.1.9.test8.css
  96. +0 −1  test/cssm/css/css21.part4.1.9.test9.css
  97. +0 −1  test/cssm/css/css21.part4.2.empty.block.test2.css
  98. +0 −1  test/cssm/css/css21.part4.2.empty.block.test3.css
  99. +0 −1  test/cssm/css/css21.part4.2.empty.block.test4.css
  100. +0 −1  test/cssm/css/css21.part4.2.malformed.declarations.test1.css
  101. +0 −1  test/cssm/css/css21.part4.2.malformed.declarations.test2.css
  102. +0 −1  test/cssm/css/css21.part4.2.malformed.declarations.test3.css
  103. +0 −1  test/cssm/css/css21.part4.2.malformed.declarations.test4.css
  104. +0 −6 test/cssm/css/css21.part4.2.unexpected.end.of.string.test1.css
  105. +0 −1  test/cssm/css/css21.part4.3.2.test1.css
  106. +0 −10 test/cssm/css/css21.part4.3.2.test10.css
  107. +0 −1  test/cssm/css/css21.part4.3.2.test2.css
  108. +0 −1  test/cssm/css/css21.part4.3.2.test3.css
  109. +0 −1  test/cssm/css/css21.part4.3.2.test4.css
  110. +0 −1  test/cssm/css/css21.part4.3.2.test5.css
  111. +0 −1  test/cssm/css/css21.part4.3.2.test6.css
  112. +0 −1  test/cssm/css/css21.part4.3.2.test7.css
  113. +0 −1  test/cssm/css/css21.part4.3.2.test8.css
  114. +0 −10 test/cssm/css/css21.part4.3.2.test9.css
  115. +0 −2  test/cssm/css/css21.part4.3.4.test1.css
  116. +0 −2  test/cssm/css/css21.part4.3.4.test2.css
  117. +0 −2  test/cssm/css/css21.part4.3.4.test3.css
  118. +0 −2  test/cssm/css/css21.part4.3.4.test4.css
  119. +0 −2  test/cssm/css/css21.part4.3.4.test5.css
  120. +0 −2  test/cssm/css/css21.part4.3.4.test6.css
  121. +0 −2  test/cssm/css/css21.part4.3.4.test7.css
  122. +0 −2  test/cssm/css/css21.part4.3.4.test8.css
  123. +0 −2  test/cssm/css/css21.part4.3.4.test9.css
  124. +0 −1  test/cssm/css/css21.part4.3.6.test1.css
  125. +0 −1  test/cssm/css/css21.part4.3.6.test2.css
  126. +0 −1  test/cssm/css/css21.part4.3.6.test3.css
  127. +0 −1  test/cssm/css/css21.part4.3.6.test4.css
  128. +0 −1  test/cssm/css/css21.part4.3.6.test5.css
  129. +0 −18 test/cssm/css/css21.part4.3.6.test7.css
  130. +0 −14 test/cssm/css/css21.part4.3.6.test8.css
  131. +0 −1  test/cssm/css/css21.part4.3.7.test1.css
  132. +0 −1  test/cssm/css/css21.part4.3.7.test2.css
  133. +0 −1  test/cssm/css/css21.part4.3.7.test3.css
  134. +0 −1  test/cssm/css/css21.part4.3.7.test4.css
  135. +0 −4 test/cssm/css/css21.part4.3.7.test5.css
  136. +0 −4 test/cssm/css/css21.part4.3.7.test6.css
  137. +0 −1  test/cssm/css/css21.part4.4.test1.css
  138. +0 −2  test/cssm/css/css21.part4.4.test2.css
  139. +0 −2  test/cssm/css/css21.part4.4.test3.css
  140. +0 −1  test/cssm/css/css21.part6.3.test1.css
  141. +0 −1  test/cssm/css/css21.part6.3.test2.css
  142. +0 −1  test/cssm/css/css21.part6.3.test3.css
  143. +0 −1  test/cssm/css/css21.part6.3.test4.css
  144. +0 −1  test/cssm/css/css21.part6.4.2.test1.css
  145. +0 −4 test/cssm/css/css21.part6.4.2.test2.css
  146. +0 −1  test/cssm/css/css21.part7.test1.css
  147. +0 −1  test/cssm/css/css21.part7.test2.css
  148. +0 −6 test/cssm/css/css21.part8.3.test1.css
  149. +0 −5 test/cssm/css/css21.part8.3.test10.css
  150. +0 −5 test/cssm/css/css21.part8.3.test11.css
  151. +0 −6 test/cssm/css/css21.part8.3.test12.css
  152. +0 −3  test/cssm/css/css21.part8.3.test13.css
  153. +0 −3  test/cssm/css/css21.part8.3.test14.css
  154. +0 −18 test/cssm/css/css21.part8.3.test2.css
  155. +0 −6 test/cssm/css/css21.part8.3.test3.css
  156. +0 −8 test/cssm/css/css21.part8.3.test4.css
  157. +0 −20 test/cssm/css/css21.part8.3.test5.css
  158. +0 −8 test/cssm/css/css21.part8.3.test6.css
  159. +0 −20 test/cssm/css/css21.part8.3.test7.css
  160. +0 −28 test/cssm/css/css21.part8.3.test8.css
  161. +0 −24 test/cssm/css/css21.part8.3.test9.css
  162. +0 −6 test/cssm/css/css21.part8.4.test1.css
  163. +0 −18 test/cssm/css/css21.part8.4.test2.css
  164. +0 −6 test/cssm/css/css21.part8.4.test3.css
  165. +0 −8 test/cssm/css/css21.part8.4.test4.css
  166. +0 −20 test/cssm/css/css21.part8.4.test5.css
  167. +0 −8 test/cssm/css/css21.part8.4.test6.css
  168. +0 −20 test/cssm/css/css21.part8.4.test7.css
  169. +0 −28 test/cssm/css/css21.part8.4.test8.css
  170. +0 −24 test/cssm/css/css21.part8.4.test9.css
  171. +0 −4 test/cssm/css/css3.fonts.part4.test1.css
  172. +0 −5 test/cssm/css/css3.fonts.part4.test2.css
  173. +0 −6 test/cssm/css/css3.fonts.part4.test3.css
  174. +0 −11 test/cssm/css/css3.fonts.part4.test4.css
  175. +0 −5 test/cssm/css/css3.media.part3.1.test1.css
  176. +0 −1  test/cssm/css/css3.media.part3.1.test2.css
  177. +0 −1  test/cssm/css/css3.namespaces.part4.test1.css
  178. +0 −1  test/cssm/css/css3.namespaces.part4.test2.css
  179. +0 −1  test/cssm/css/css3.namespaces.part4.test3.css
  180. +0 −1  test/cssm/css/css3.namespaces.part4.test4.css
  181. +0 −1  test/cssm/css/css3.selectors.part2.test1.css
  182. +0 −1  test/cssm/css/css3.selectors.part2.test10.css
  183. +0 −1  test/cssm/css/css3.selectors.part2.test11.css
  184. +0 −1  test/cssm/css/css3.selectors.part2.test12.css
  185. +0 −1  test/cssm/css/css3.selectors.part2.test13.css
  186. +0 −1  test/cssm/css/css3.selectors.part2.test14.css
  187. +0 −1  test/cssm/css/css3.selectors.part2.test15.css
  188. +0 −1  test/cssm/css/css3.selectors.part2.test16.css
  189. +0 −1  test/cssm/css/css3.selectors.part2.test17.css
  190. +0 −1  test/cssm/css/css3.selectors.part2.test18.css
  191. +0 −1  test/cssm/css/css3.selectors.part2.test19.css
  192. +0 −1  test/cssm/css/css3.selectors.part2.test2.css
  193. +0 −1  test/cssm/css/css3.selectors.part2.test20.css
  194. +0 −1  test/cssm/css/css3.selectors.part2.test21.css
  195. +0 −1  test/cssm/css/css3.selectors.part2.test22.css
  196. +0 −1  test/cssm/css/css3.selectors.part2.test23.css
  197. +0 −1  test/cssm/css/css3.selectors.part2.test24.css
  198. +0 −1  test/cssm/css/css3.selectors.part2.test25.css
  199. +0 −1  test/cssm/css/css3.selectors.part2.test26.css
  200. +0 −1  test/cssm/css/css3.selectors.part2.test27.css
  201. +0 −1  test/cssm/css/css3.selectors.part2.test28.css
  202. +0 −1  test/cssm/css/css3.selectors.part2.test29.css
  203. +0 −1  test/cssm/css/css3.selectors.part2.test3.css
  204. +0 −1  test/cssm/css/css3.selectors.part2.test30.css
  205. +0 −1  test/cssm/css/css3.selectors.part2.test31.css
  206. +0 −1  test/cssm/css/css3.selectors.part2.test32.css
  207. +0 −1  test/cssm/css/css3.selectors.part2.test33.css
  208. +0 −1  test/cssm/css/css3.selectors.part2.test34.css
  209. +0 −1  test/cssm/css/css3.selectors.part2.test35.css
  210. +0 −1  test/cssm/css/css3.selectors.part2.test36.css
  211. +0 −1  test/cssm/css/css3.selectors.part2.test37.css
  212. +0 −1  test/cssm/css/css3.selectors.part2.test38.css
  213. +0 −1  test/cssm/css/css3.selectors.part2.test39.css
  214. +0 −1  test/cssm/css/css3.selectors.part2.test4.css
  215. +0 −1  test/cssm/css/css3.selectors.part2.test40.css
  216. +0 −1  test/cssm/css/css3.selectors.part2.test41.css
  217. +0 −1  test/cssm/css/css3.selectors.part2.test42.css
  218. +0 −1  test/cssm/css/css3.selectors.part2.test5.css
  219. +0 −1  test/cssm/css/css3.selectors.part2.test6.css
  220. +0 −1  test/cssm/css/css3.selectors.part2.test7.css
  221. +0 −1  test/cssm/css/css3.selectors.part2.test8.css
  222. +0 −1  test/cssm/css/css3.selectors.part2.test9.css
  223. +0 −6 test/cssm/css/css3.selectors.part6.3.test1.css
  224. +0 −1  test/cssm/css/css3.selectors.part6.4.test1.css
  225. +0 −1  test/cssm/css/css3.selectors.part6.4.test2.css
  226. +0 −1  test/cssm/css/css3.selectors.part6.4.test3.css
  227. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test1.css
  228. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test10.css
  229. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test11.css
  230. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test12.css
  231. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test2.css
  232. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test3.css
  233. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test4.css
  234. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test5.css
  235. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test6.css
  236. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test7.css
  237. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test8.css
  238. +0 −1  test/cssm/css/css3.selectors.part6.6.5.test9.css
  239. +0 −1  test/cssm/css/css3.selectors.part6.6.7.test1.css
  240. +0 −1  test/cssm/css/css3.selectors.part6.6.7.test2.css
  241. +0 −1  test/cssm/css/css3.selectors.part6.6.7.test3.css
  242. +0 −1  test/cssm/css/css3.selectors.part6.6.7.test4.css
  243. +0 −1  test/cssm/css/css3.selectors.part6.6.7.test5.css
  244. 0  test/cssm/css/empty.css
  245. +0 −1  test/cssm/css/expression.test1.css
  246. +0 −6 test/cssm/css/expression.test10.css
  247. +0 −1  test/cssm/css/expression.test2.css
  248. +0 −4 test/cssm/css/expression.test3.css
  249. +0 −1  test/cssm/css/expression.test4.css
  250. +0 −3  test/cssm/css/expression.test5.css
  251. +0 −3  test/cssm/css/expression.test6.css
  252. +0 −3  test/cssm/css/expression.test7.css
  253. +0 −6 test/cssm/css/expression.test8.css
  254. +0 −6 test/cssm/css/expression.test9.css
  255. +0 −10 test/cssm/css/safe.restructure.disjoin.test1.css
  256. +0 −10 test/cssm/css/safe.restructure.disjoin.test2.css
  257. +0 −10 test/cssm/css/safe.restructure.disjoin.test3.css
  258. +0 −1  test/cssm/expected/_2safe.config.order.block.test5.css.dump
  259. +0 −1  test/cssm/expected/_2safe.config.order.block.test6.css.dump
  260. +0 −1  test/cssm/expected/_2safe.config.order.test10.css.dump
  261. +0 −1  test/cssm/expected/_2safe.config.order.test11.css.dump
  262. +0 −1  test/cssm/expected/_2safe.config.order.test14.css.dump
  263. +0 −1  test/cssm/expected/_2safe.config.order.test7.css.dump
  264. +0 −1  test/cssm/expected/_2safe.config.order.test9.css.dump
  265. +0 −1  test/cssm/expected/_2safe.css21.part13.2.1.test2.css.dump
  266. +0 −1  test/cssm/expected/_2safe.css21.part13.2.1.test3.css.dump
  267. +0 −1  test/cssm/expected/_2safe.css21.part13.2.1.test4.css.dump
  268. +0 −1  test/cssm/expected/_2safe.css21.part13.2.2.test2.css.dump
  269. +0 −1  test/cssm/expected/config.order.block.test1.css.dump
  270. +0 −1  test/cssm/expected/config.order.block.test2.css.dump
  271. +0 −1  test/cssm/expected/config.order.block.test3.css.dump
  272. +0 −1  test/cssm/expected/config.order.block.test4.css.dump
  273. +0 −1  test/cssm/expected/config.order.test1.css.dump
  274. +0 −1  test/cssm/expected/config.order.test12.css.dump
  275. +0 −1  test/cssm/expected/config.order.test13.css.dump
  276. +0 −1  test/cssm/expected/config.order.test2.css.dump
  277. +0 −1  test/cssm/expected/config.order.test3.css.dump
  278. +0 −1  test/cssm/expected/config.order.test4.css.dump
  279. +0 −1  test/cssm/expected/config.order.test5.css.dump
  280. +0 −1  test/cssm/expected/config.order.test6.css.dump
  281. +0 −1  test/cssm/expected/config.order.test8.css.dump
  282. +0 −1  test/cssm/expected/config.protect.block.test1.css.dump
  283. +0 −1  test/cssm/expected/config.protect.block.test2.css.dump
  284. +0 −1  test/cssm/expected/config.protect.block.test3.css.dump
  285. +0 −1  test/cssm/expected/config.protect.block.test4.css.dump
  286. +0 −1  test/cssm/expected/config.protect.block.test5.css.dump
  287. +0 −1  test/cssm/expected/config.protect.test1.css.dump
  288. +0 −1  test/cssm/expected/config.protect.test2.css.dump
  289. +0 −1  test/cssm/expected/config.protect.test3.css.dump
  290. +0 −1  test/cssm/expected/config.protect.test4.css.dump
  291. +0 −1  test/cssm/expected/config.protect.test5.css.dump
  292. +0 −1  test/cssm/expected/config.protect.test6.css.dump
  293. +0 −1  test/cssm/expected/css21.part13.2.1.test1.css.dump
  294. +0 −1  test/cssm/expected/css21.part13.2.2.test1.css.dump
  295. +0 −1  test/cssm/expected/css21.part15.6.test1.css.dump
  296. +0 −1  test/cssm/expected/css21.part15.6.test2.css.dump
  297. +0 −1  test/cssm/expected/css21.part15.6.test3.css.dump
  298. +0 −1  test/cssm/expected/css21.part15.6.test4.css.dump
  299. +0 −1  test/cssm/expected/css21.part4.1.3.test1.css.dump
  300. +0 −1  test/cssm/expected/css21.part4.1.3.test2.css.dump
Sorry, we could not display the entire diff because too many files (1,871) changed.
View
34 GNUmakefile
@@ -0,0 +1,34 @@
+.PHONY: test web shared node
+
+node:
+ @make shared
+ @cat src/parser.node.js >> .parser.js
+ @mv .parser.js lib/parser.js
+ @cat src/compressor.node.js >> .compressor.js
+ @mv .compressor.js lib/compressor.js
+ @cat src/util.node.js >> .util.js
+ @mv .util.js lib/util.js
+ @cat src/translator.node.js >> .translator.js
+ @mv .translator.js lib/translator.js
+
+shared:
+ @pecode src/csso.pecode > .parser.js
+ @cat src/csso.other.js >> .parser.js
+ @cat src/compressor.shared.js > .compressor.js
+ @cat src/util.shared.js > .util.js
+ @cat src/translator.shared.js > .translator.js
+
+test:
+ @node test/test.js
+
+web:
+ @make shared
+ @cat .util.js > web/csso.web.js
+ @rm .util.js
+ @cat .parser.js >> web/csso.web.js
+ @rm .parser.js
+ @cat src/compressor.web.js >> web/csso.web.js
+ @cat .compressor.js >> web/csso.web.js
+ @rm .compressor.js
+ @cat .translator.js >> web/csso.web.js
+ @rm .translator.js
View
5 Makefile
@@ -1,5 +0,0 @@
-.PHONY: test
-
-test:
- @cd test/cssp && node test.js
- @cd test/cssm && node test.js
View
17 TODO.md
@@ -1,17 +0,0 @@
-# TODO
-
-### Мелкое
-
-* документировать код;
-* минимизация border;
-* минимизация background;
-* минимизация rgba и hsla;
-* минимизация font?
-* все токены (кроме строк) toLowerCase()?
-* перенести shorthand'ы внутрь циклической минимизации;
-* сделать merge по схеме X Y => X XY Y также и для ordered.
-
-### Крупное
-
-* добавить возможность глобального управления обработкой;
-* руководства на английском.
View
6 USAGE
@@ -3,9 +3,6 @@ Usage:
shows usage information
csso <filename>
minimizes the CSS in <filename> and outputs the result to stdout
- csso -r <filename>
- csso --restructure <filename>
- disables structural optimization
csso -h
csso --help
shows usage information
@@ -18,9 +15,6 @@ Usage:
показывает этот текст
csso <имя_файла>
минимизирует CSS из <имя_файла> и записывает результат в stdout
- csso -r <имя_файла>
- csso --restructure <имя_файла>
- выключить структурную минимизацию
csso -h
csso --help
показывает этот текст
View
4 bin/csso
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
SELF_PATH=$(cd -P -- "$(dirname -- "$0")" && pwd -P) && SELF_PATH="$SELF_PATH/$(basename -- "$0")"
@@ -10,5 +10,5 @@ done
CSSO_HOME=$(dirname -- "$(dirname -- "$SELF_PATH")")
-node $CSSO_HOME/lib/ccli.js $@
+node $CSSO_HOME/lib/csso.js $@
View
234 jsdoc/index.html
@@ -1,234 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <meta http-equiv="content-type" content="text/html; charset=utf-8" />
-
- <title>JsDoc Reference - Index</title>
- <meta name="generator" content="JsDoc Toolkit" />
-
- <style type="text/css">
- /* default.css */
-body
-{
- font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif;
- width: 800px;
-}
-
-.header
-{
- clear: both;
- background-color: #ccc;
- padding: 8px;
-}
-
-h1
-{
- font-size: 150%;
- font-weight: bold;
- padding: 0;
- margin: 1em 0 0 .3em;
-}
-
-hr
-{
- border: none 0;
- border-top: 1px solid #7F8FB1;
- height: 1px;
-}
-
-pre.code
-{
- display: block;
- padding: 8px;
- border: 1px dashed #ccc;
-}
-
-#index
-{
- margin-top: 24px;
- float: left;
- width: 160px;
- position: absolute;
- left: 8px;
- background-color: #F3F3F3;
- padding: 8px;
-}
-
-#content
-{
- margin-left: 190px;
- width: 600px;
-}
-
-.classList
-{
- list-style-type: none;
- padding: 0;
- margin: 0 0 0 8px;
- font-family: arial, sans-serif;
- font-size: 1em;
- overflow: auto;
-}
-
-.classList li
-{
- padding: 0;
- margin: 0 0 8px 0;
-}
-
-.summaryTable { width: 100%; }
-
-h1.classTitle
-{
- font-size:170%;
- line-height:130%;
-}
-
-h2 { font-size: 110%; }
-caption, div.sectionTitle
-{
- background-color: #7F8FB1;
- color: #fff;
- font-size:130%;
- text-align: left;
- padding: 2px 6px 2px 6px;
- border: 1px #7F8FB1 solid;
-}
-
-div.sectionTitle { margin-bottom: 8px; }
-.summaryTable thead { display: none; }
-
-.summaryTable td
-{
- vertical-align: top;
- padding: 4px;
- border-bottom: 1px #7F8FB1 solid;
- border-right: 1px #7F8FB1 solid;
-}
-
-/*col#summaryAttributes {}*/
-.summaryTable td.attributes
-{
- border-left: 1px #7F8FB1 solid;
- width: 140px;
- text-align: right;
-}
-
-td.attributes, .fixedFont
-{
- line-height: 15px;
- color: #002EBE;
- font-family: "Courier New",Courier,monospace;
- font-size: 13px;
-}
-
-.summaryTable td.nameDescription
-{
- text-align: left;
- font-size: 13px;
- line-height: 15px;
-}
-
-.summaryTable td.nameDescription, .description
-{
- line-height: 15px;
- padding: 4px;
- padding-left: 4px;
-}
-
-.summaryTable { margin-bottom: 8px; }
-
-ul.inheritsList
-{
- list-style: square;
- margin-left: 20px;
- padding-left: 0;
-}
-
-.detailList {
- margin-left: 20px;
- line-height: 15px;
-}
-.detailList dt { margin-left: 20px; }
-
-.detailList .heading
-{
- font-weight: bold;
- padding-bottom: 6px;
- margin-left: 0;
-}
-
-.light, td.attributes, .light a:link, .light a:visited
-{
- color: #777;
- font-style: italic;
-}
-
-.fineprint
-{
- text-align: right;
- font-size: 10px;
-}
- </style>
- </head>
-
- <body>
- <div id="header">
-</div>
-
- <div id="index">
- <div align="center"><a href="index.html">Class Index</a></div>
-<hr />
-<h2>Classes</h2>
-<ul class="classList">
-
- <li><a href="symbols/%24cssm.html">$cssm</a></li>
-
- <li><a href="symbols/%24cssoutils.html">$cssoutils</a></li>
-
- <li><a href="symbols/%24cssp.html">$cssp</a></li>
-
- <li><i><a href="symbols/_global_.html">_global_</a></i></li>
-
-</ul>
-<hr />
-
- </div>
-
- <div id="content">
- <h1 class="classTitle">Class Index</h1>
-
-
- <div>
- <h2><a href="symbols/%24cssm.html">$cssm</a></h2>
- CSS минимизатор.
- </div>
- <hr />
-
- <div>
- <h2><a href="symbols/%24cssoutils.html">$cssoutils</a></h2>
- CSS утилиты.
- </div>
- <hr />
-
- <div>
- <h2><a href="symbols/%24cssp.html">$cssp</a></h2>
- CSS парсер.
- </div>
- <hr />
-
- <div>
- <h2><a href="symbols/_global_.html">_global_</a></h2>
-
- </div>
- <hr />
-
-
- </div>
- <div class="fineprint" style="clear:both">
-
- Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blankt">JsDoc Toolkit</a> 2.3.2 on Mon Apr 04 2011 13:18:55 GMT+0300 (EEST)
- </div>
- </body>
-</html>
View
2,280 jsdoc/symbols/$cssm.html
@@ -1,2280 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <meta http-equiv="content-type" content="text/html; charset=utf-8" />
- <meta name="generator" content="JsDoc Toolkit" />
-
- <title>JsDoc Reference - $cssm</title>
-
- <style type="text/css">
- /* default.css */
-body
-{
- font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif;
- width: 800px;
-}
-
-.header
-{
- clear: both;
- background-color: #ccc;
- padding: 8px;
-}
-
-h1
-{
- font-size: 150%;
- font-weight: bold;
- padding: 0;
- margin: 1em 0 0 .3em;
-}
-
-hr
-{
- border: none 0;
- border-top: 1px solid #7F8FB1;
- height: 1px;
-}
-
-pre.code
-{
- display: block;
- padding: 8px;
- border: 1px dashed #ccc;
-}
-
-#index
-{
- margin-top: 24px;
- float: left;
- width: 160px;
- position: absolute;
- left: 8px;
- background-color: #F3F3F3;
- padding: 8px;
-}
-
-#content
-{
- margin-left: 190px;
- width: 600px;
-}
-
-.classList
-{
- list-style-type: none;
- padding: 0;
- margin: 0 0 0 8px;
- font-family: arial, sans-serif;
- font-size: 1em;
- overflow: auto;
-}
-
-.classList li
-{
- padding: 0;
- margin: 0 0 8px 0;
-}
-
-.summaryTable { width: 100%; }
-
-h1.classTitle
-{
- font-size:170%;
- line-height:130%;
-}
-
-h2 { font-size: 110%; }
-caption, div.sectionTitle
-{
- background-color: #7F8FB1;
- color: #fff;
- font-size:130%;
- text-align: left;
- padding: 2px 6px 2px 6px;
- border: 1px #7F8FB1 solid;
-}
-
-div.sectionTitle { margin-bottom: 8px; }
-.summaryTable thead { display: none; }
-
-.summaryTable td
-{
- vertical-align: top;
- padding: 4px;
- border-bottom: 1px #7F8FB1 solid;
- border-right: 1px #7F8FB1 solid;
-}
-
-/*col#summaryAttributes {}*/
-.summaryTable td.attributes
-{
- border-left: 1px #7F8FB1 solid;
- width: 140px;
- text-align: right;
-}
-
-td.attributes, .fixedFont
-{
- line-height: 15px;
- color: #002EBE;
- font-family: "Courier New",Courier,monospace;
- font-size: 13px;
-}
-
-.summaryTable td.nameDescription
-{
- text-align: left;
- font-size: 13px;
- line-height: 15px;
-}
-
-.summaryTable td.nameDescription, .description
-{
- line-height: 15px;
- padding: 4px;
- padding-left: 4px;
-}
-
-.summaryTable { margin-bottom: 8px; }
-
-ul.inheritsList
-{
- list-style: square;
- margin-left: 20px;
- padding-left: 0;
-}
-
-.detailList {
- margin-left: 20px;
- line-height: 15px;
-}
-.detailList dt { margin-left: 20px; }
-
-.detailList .heading
-{
- font-weight: bold;
- padding-bottom: 6px;
- margin-left: 0;
-}
-
-.light, td.attributes, .light a:link, .light a:visited
-{
- color: #777;
- font-style: italic;
-}
-
-.fineprint
-{
- text-align: right;
- font-size: 10px;
-}
- </style>
- </head>
-
- <body>
-<!-- ============================== header ================================= -->
- <!-- begin static/header.html -->
- <div id="header">
-</div>
- <!-- end static/header.html -->
-
-<!-- ============================== classes index ============================ -->
- <div id="index">
- <!-- begin publish.classesIndex -->
- <div align="center"><a href="../index.html">Class Index</a></div>
-<hr />
-<h2>Classes</h2>
-<ul class="classList">
-
- <li><a href="../symbols/%24cssm.html">$cssm</a></li>
-
- <li><a href="../symbols/%24cssoutils.html">$cssoutils</a></li>
-
- <li><a href="../symbols/%24cssp.html">$cssp</a></li>
-
- <li><i><a href="../symbols/_global_.html">_global_</a></i></li>
-
-</ul>
-<hr />
-
- <!-- end publish.classesIndex -->
- </div>
-
- <div id="content">
-<!-- ============================== class title ============================ -->
- <h1 class="classTitle">
-
- Namespace $cssm
- </h1>
-
-<!-- ============================== class summary ========================== -->
- <p class="description">
-
-
-
- CSS минимизатор.
-
-
- <br /><i>Defined in: </i> &lt;/cssm.js&gt;.
-
- </p>
-
-<!-- ============================== constructor summary ==================== -->
-
- <table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class $cssm.">
- <caption>Namespace Summary</caption>
- <thead>
- <tr>
- <th scope="col">Constructor Attributes</th>
- <th scope="col">Constructor Name and Description</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td class="attributes">&nbsp;</td>
- <td class="nameDescription" >
- <div class="fixedFont">
- <b><a href="../symbols/%24cssm.html#constructor">$cssm</a></b>
- </div>
- <div class="description"></div>
- </td>
- </tr>
- </tbody>
- </table>
-
-
-<!-- ============================== properties summary ===================== -->
-
-
-<!-- ============================== methods summary ======================== -->
-
-
-
- <table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class $cssm.">
- <caption>Method Summary</caption>
- <thead>
- <tr>
- <th scope="col">Method Attributes</th>
- <th scope="col">Method Name and Description</th>
- </tr>
- </thead>
- <tbody>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.checkMode">checkMode</a></b>(s, mode)
- </div>
- <div class="description">Меняет режим защиты свойств, если переданный комментарий является конфигурационным.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.cleanComments">cleanComments</a></b>(tokens)
- </div>
- <div class="description">Удаляет комментарии в массиве токенов.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.collapseShorthands">collapseShorthands</a></b>(content)
- </div>
- <div class="description">Собирает примитивы margin / padding в минимальный по длине набор свойств, при этом удаляет оригиналы.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.collectIndice">collectIndice</a></b>(nodes)
- </div>
- <div class="description">Индексирует свойства в наборе узлов.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.compareContent">compareContent</a></b>(c1, c2, both)
- </div>
- <div class="description">Детально сравнивает наборы свойств с учётом номинального порядка.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.copyContent">copyContent</a></b>(content)
- </div>
- <div class="description">Копирует набор свойств.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.copyTree">copyTree</a></b>(src, dst)
- </div>
- <div class="description">Копирует CSS-дерево со всем содержимым, попутно пропуская ошибочные узлы.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.createNodeByKey">createNodeByKey</a></b>(nodes, indice, key)
- </div>
- <div class="description">Выделяет (если это возможно) отдельный узел из множества узлов, перемещая из них указанное свойство.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.excludeFromContent">excludeFromContent</a></b>(c1, c2)
- </div>
- <div class="description">Исключает один набор свойств из другого и возвращает разницу.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.excludeFromNodes">excludeFromNodes</a></b>(content, nodes, indice)
- </div>
- <div class="description">Удаляет определённый набор свойств из узлов.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.expandNode">expandNode</a></b>(node)
- </div>
- <div class="description">Разделяет узел с набором селектора на такие же узлы, но по одному селектору в каждом.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.expandShorthands">expandShorthands</a></b>(content)
- </div>
- <div class="description">Раскрывает свойства margin / padding до примитивов, при этом удаляет оригиналы.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.getBestContent">getBestContent</a></b>(node)
- </div>
- <div class="description">Ищет лучшее (по длине и прочим параметрам) свойство для того, чтобы оставить в узле после частичного слияния узлов.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.getContentLength">getContentLength</a></b>(content)
- </div>
- <div class="description">Вычисляет суммарную длину свойств в символах.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.isComment">isComment</a></b>(s)
- </div>
- <div class="description">Проверяет, является ли строка комментарием.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.isContentEqaul">isContentEqaul</a></b>(c1, c2)
- </div>
- <div class="description">Сравнивает наборы свойств (предварительно сортируя).</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.isContentNode">isContentNode</a></b>(node)
- </div>
- <div class="description">Проверяет, является ли узел блоком с набором свойств.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.itWasCorrectJoin">itWasCorrectJoin</a></b>(node)
- </div>
- <div class="description">Проверяет, является ли суммарная длина селекторов (или аналога) узла в символах меньше суммарной длины свойств.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.joinEqualNodes">joinEqualNodes</a></b>(nodes, ignoreOrder)
- </div>
- <div class="description">Объединяет рядом стоящие одинаковые по набору свойств узлы.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.joinValue">joinValue</a></b>(value, ordered)
- </div>
- <div class="description">Объединяет все значения 2-мерного массива в одну строку.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.mergeContent">mergeContent</a></b>(c1, c2)
- </div>
- <div class="description">Сливает равные наборы свойств, учитывая номинальный порядок свойств.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.minColors">minColors</a></b>(tokens)
- </div>
- <div class="description">Минимизирует токены цвета в массиве токенов.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.minFontWeight">minFontWeight</a></b>(tokens)
- </div>
- <div class="description">Минимизирует токены свойства font-weight.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.minimize">minimize</a></b>(tree)
- </div>
- <div class="description">Минимизирует CSS-дерево.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.minimizeNodes">minimizeNodes</a></b>(nodes)
- </div>
- <div class="description">Минимизирует подготовленные для минимизации узлы дерева.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.minNumbers">minNumbers</a></b>(tokens)
- </div>
- <div class="description">Минимизирует числовые токены в массиве токенов.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.minTokens">minTokens</a></b>(tokens)
- </div>
- <div class="description">Минимизирует токены.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.nextNode">nextNode</a></b>(nodes, type, i)
- </div>
- <div class="description">Ищет следующий узел указанного типа.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.possibleJoin">possibleJoin</a></b>(nodes, indice)
- </div>
- <div class="description">Фильтрует список узлов, отбрасывая узлы, у которых одно свойство.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.prepareContent">prepareContent</a></b>(content)
- </div>
- <div class="description">TODO:</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.prevNode">prevNode</a></b>(nodes, type, i)
- </div>
- <div class="description">Ищет предыдущий узел указанного типа.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.processComments">processComments</a></b>(nodes)
- </div>
- <div class="description">Удаляет комментарии и обрабатывает конфигурационные комментарии.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.realContentLength">realContentLength</a></b>(content)
- </div>
- <div class="description">Считает действительную суммарную длину в символах набора свойств, учитывая технические маркеры минимизатора.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.restoreOrder">restoreOrder</a></b>(nodes)
- </div>
- <div class="description">Сортирует свойства узлов.</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.restructure">restructure</a></b>(nodes)
- </div>
- <div class="description">TODO:</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.sortContentByN">sortContentByN</a></b>(a, b)
- </div>
- <div class="description">Функция для сортировки свойств внутри блока, используется в [].sort().</div>
- </td>
- </tr>
-
- <tr>
- <td class="attributes">&lt;static&gt; &nbsp;</td>
- <td class="nameDescription">
- <div class="fixedFont">$cssm.<b><a href="../symbols/%24cssm.html#.sortDstNodes">sortDstNodes</a></b>(nodes, indice, i)
- </div>
- <div class="description">Ищет потенциально наилучший узел для слияния с указанным.</div>
- </td>
- </tr>
-
- </tbody>
- </table>
-
-
-
-
-<!-- ============================== events summary ======================== -->
-
-
-<!-- ============================== constructor details ==================== -->
-
- <div class="details"><a name="constructor"> </a>
- <div class="sectionTitle">
- Namespace Detail
- </div>
-
- <div class="fixedFont">
- <b>$cssm</b>
- </div>
-
- <div class="description">
-
-
- </div>
-
-
-
-
-
-
-
-
-
-
-
-
- </div>
-
-
-<!-- ============================== field details ========================== -->
-
-
-<!-- ============================== method details ========================= -->
-
- <div class="sectionTitle">
- Method Detail
- </div>
-
- <a name=".checkMode"> </a>
- <div class="fixedFont">&lt;static&gt;
-
-
- <span class="light">$cssm.</span><b>checkMode</b>(s, mode)
-
- </div>
- <div class="description">
- Меняет режим защиты свойств, если переданный комментарий является конфигурационным.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{String}</span> <b>s</b>
-
- </dt>
- <dd>комментарий для обработки</dd>
-
- <dt>
- <span class="light fixedFont">{Object}</span> <b>mode</b>
-
- </dt>
- <dd>режим для смены</dd>
-
- </dl>
-
-
-
-
-
-
-
-
- <hr />
-
- <a name=".cleanComments"> </a>
- <div class="fixedFont">&lt;static&gt;
-
-
- <span class="light">$cssm.</span><b>cleanComments</b>(tokens)
-
- </div>
- <div class="description">
- Удаляет комментарии в массиве токенов.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <b>tokens</b>
-
- </dt>
- <dd>токены с комментариями</dd>
-
- </dl>
-
-
-
-
-
-
-
-
- <hr />
-
- <a name=".collapseShorthands"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Object[]}</span>
- <span class="light">$cssm.</span><b>collapseShorthands</b>(content)
-
- </div>
- <div class="description">
- Собирает примитивы margin / padding в минимальный по длине набор свойств, при этом удаляет оригиналы.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>content</b>
-
- </dt>
- <dd>массив свойств</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Object[]}</span> обработанный массив свойств</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".collectIndice"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Object}</span>
- <span class="light">$cssm.</span><b>collectIndice</b>(nodes)
-
- </div>
- <div class="description">
- Индексирует свойства в наборе узлов. В дальнейшем индекс используется для поиска узлов по заданным свойствам.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>nodes</b>
-
- </dt>
- <dd>узлы для индексации</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Object}</span> проиндексированные свойства</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".compareContent"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{[]}</span>
- <span class="light">$cssm.</span><b>compareContent</b>(c1, c2, both)
-
- </div>
- <div class="description">
- Детально сравнивает наборы свойств с учётом номинального порядка.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>c1</b>
-
- </dt>
- <dd>один набор свойств</dd>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>c2</b>
-
- </dt>
- <dd>другой набор свойств</dd>
-
- <dt>
- <span class="light fixedFont">{Boolean}</span> <b>both</b>
-
- </dt>
- <dd>сравнивать ли оба направления (также и c2 с с1, а не только c1 с c2)</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{[]}</span> массив из двух массивов, в первом разница между c1 и c2, во втором разница между c2 и c1</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".copyContent"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Object[]}</span>
- <span class="light">$cssm.</span><b>copyContent</b>(content)
-
- </div>
- <div class="description">
- Копирует набор свойств.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>content</b>
-
- </dt>
- <dd>набор свойств для копирования</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Object[]}</span> копия</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".copyTree"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Object[]}</span>
- <span class="light">$cssm.</span><b>copyTree</b>(src, dst)
-
- </div>
- <div class="description">
- Копирует CSS-дерево со всем содержимым, попутно пропуская ошибочные узлы.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object}</span> <b>src</b>
-
- </dt>
- <dd>исходное дерево</dd>
-
- <dt>
- <span class="light fixedFont">{[]}</span> <b>dst</b>
-
- </dt>
- <dd>принимающий массив, может быть не указан</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Object[]}</span> массив скопированных узлов дерева</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".createNodeByKey"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Object}</span>
- <span class="light">$cssm.</span><b>createNodeByKey</b>(nodes, indice, key)
-
- </div>
- <div class="description">
- Выделяет (если это возможно) отдельный узел из множества узлов, перемещая из них указанное свойство.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>nodes</b>
-
- </dt>
- <dd>узлы для поиска узлов, позволяющих выделение свойства</dd>
-
- <dt>
- <span class="light fixedFont">{Object}</span> <b>indice</b>
-
- </dt>
- <dd>проиндексированные свойства всех узлов</dd>
-
- <dt>
- <span class="light fixedFont">{String}</span> <b>key</b>
-
- </dt>
- <dd>ID выделяемого свойства</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Object}</span> если получилось выделить, узел, иначе null</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".excludeFromContent"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Object[]}</span>
- <span class="light">$cssm.</span><b>excludeFromContent</b>(c1, c2)
-
- </div>
- <div class="description">
- Исключает один набор свойств из другого и возвращает разницу.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>c1</b>
-
- </dt>
- <dd>набор, который исключать</dd>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>c2</b>
-
- </dt>
- <dd>набор, из которого исключать</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Object[]}</span> разница</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".excludeFromNodes"> </a>
- <div class="fixedFont">&lt;static&gt;
-
-
- <span class="light">$cssm.</span><b>excludeFromNodes</b>(content, nodes, indice)
-
- </div>
- <div class="description">
- Удаляет определённый набор свойств из узлов.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>content</b>
-
- </dt>
- <dd>удаляемый набор свойств</dd>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>nodes</b>
-
- </dt>
- <dd>узлы для поиска узлов, нуждающихся в чистке свойств</dd>
-
- <dt>
- <span class="light fixedFont">{Object}</span> <b>indice</b>
-
- </dt>
- <dd>проиндексированные свойства всех узлов</dd>
-
- </dl>
-
-
-
-
-
-
-
-
- <hr />
-
- <a name=".expandNode"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Object[]}</span>
- <span class="light">$cssm.</span><b>expandNode</b>(node)
-
- </div>
- <div class="description">
- Разделяет узел с набором селектора на такие же узлы, но по одному селектору в каждом.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object}</span> <b>node</b>
-
- </dt>
- <dd>узел для разделения</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Object[]}</span> разделённые узлы</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".expandShorthands"> </a>
- <div class="fixedFont">&lt;static&gt;
-
-
- <span class="light">$cssm.</span><b>expandShorthands</b>(content)
-
- </div>
- <div class="description">
- Раскрывает свойства margin / padding до примитивов, при этом удаляет оригиналы.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>content</b>
-
- </dt>
- <dd>массив свойств</dd>
-
- </dl>
-
-
-
-
-
-
-
-
- <hr />
-
- <a name=".getBestContent"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Number}</span>
- <span class="light">$cssm.</span><b>getBestContent</b>(node)
-
- </div>
- <div class="description">
- Ищет лучшее (по длине и прочим параметрам) свойство для того, чтобы оставить в узле после частичного слияния узлов.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object}</span> <b>node</b>
-
- </dt>
- <dd>узел для анализа</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Number}</span> если свойство найдено, индекс, иначе -1</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".getContentLength"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Number}</span>
- <span class="light">$cssm.</span><b>getContentLength</b>(content)
-
- </div>
- <div class="description">
- Вычисляет суммарную длину свойств в символах.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>content</b>
-
- </dt>
- <dd>набор свойств</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Number}</span> суммарная длина свойств в символах</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".isComment"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Boolean}</span>
- <span class="light">$cssm.</span><b>isComment</b>(s)
-
- </div>
- <div class="description">
- Проверяет, является ли строка комментарием.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{String}</span> <b>s</b>
-
- </dt>
- <dd>строка для проверки</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Boolean}</span> если комментарий, true, иначе false</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".isContentEqaul"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{boolean}</span>
- <span class="light">$cssm.</span><b>isContentEqaul</b>(c1, c2)
-
- </div>
- <div class="description">
- Сравнивает наборы свойств (предварительно сортируя).
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>c1</b>
-
- </dt>
- <dd>один набор свойств</dd>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>c2</b>
-
- </dt>
- <dd>другой набор свойств</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{boolean}</span> если равны, true, иначе false</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".isContentNode"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Boolean}</span>
- <span class="light">$cssm.</span><b>isContentNode</b>(node)
-
- </div>
- <div class="description">
- Проверяет, является ли узел блоком с набором свойств.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object}</span> <b>node</b>
-
- </dt>
- <dd>узел для проверки</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Boolean}</span> если является, true, иначе false</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".itWasCorrectJoin"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{Boolean}</span>
- <span class="light">$cssm.</span><b>itWasCorrectJoin</b>(node)
-
- </div>
- <div class="description">
- Проверяет, является ли суммарная длина селекторов (или аналога) узла в символах меньше суммарной длины свойств.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object}</span> <b>node</b>
-
- </dt>
- <dd>узел для проверки</dd>
-
- </dl>
-
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Returns:</dt>
-
- <dd><span class="light fixedFont">{Boolean}</span> если меньше, true, иначе false</dd>
-
- </dl>
-
-
-
-
- <hr />
-
- <a name=".joinEqualNodes"> </a>
- <div class="fixedFont">&lt;static&gt;
-
-
- <span class="light">$cssm.</span><b>joinEqualNodes</b>(nodes, ignoreOrder)
-
- </div>
- <div class="description">
- Объединяет рядом стоящие одинаковые по набору свойств узлы.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>
- <span class="light fixedFont">{Object[]}</span> <b>nodes</b>
-
- </dt>
- <dd>узлы, среди которых могут оказаться одинаковые</dd>
-
- <dt>
- <span class="light fixedFont">{Boolean}</span> <b>ignoreOrder</b>
-
- </dt>
- <dd>учитывать ли буквальное значение порядка свойств внутри блока</dd>
-
- </dl>
-
-
-
-
-
-
-
-
- <hr />
-
- <a name=".joinValue"> </a>
- <div class="fixedFont">&lt;static&gt;
-
- <span class="light">{String}</span>
- <span class="light">$cssm.</span><b>joinValue</b>(value, ordered)
-
- </div>
- <div class="description">
- Объединяет все значения 2-мерного массива в одну строку.
-
-
- </div>
-
-
-
-
- <dl class="detailList">
- <dt class="heading">Parameters:</dt>
-
- <dt>