jsduck 5.0.0 → 5.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (446) hide show
  1. data/lib/jsduck/class.rb +2 -2
  2. data/lib/jsduck/guide_anchors.rb +8 -1
  3. data/lib/jsduck/guide_toc.rb +1 -1
  4. data/lib/jsduck/js/associator.rb +3 -1
  5. data/lib/jsduck/js/method.rb +5 -0
  6. data/lib/jsduck/js/node.rb +17 -0
  7. data/lib/jsduck/js/parser.rb +15 -1
  8. data/lib/jsduck/js/property.rb +9 -1
  9. data/lib/jsduck/js/rkelly_adapter.rb +29 -2
  10. data/lib/jsduck/members_index.rb +4 -5
  11. data/lib/jsduck/options.rb +1 -1
  12. data/lib/jsduck/process/inherit_doc.rb +4 -0
  13. data/lib/jsduck/process/inherit_members.rb +0 -2
  14. data/lib/jsduck/tag/cfg.rb +6 -1
  15. data/lib/jsduck/tag/property.rb +1 -0
  16. data/template-min/README.md +14 -0
  17. data/template-min/app-8718a7273ffcf400247ec95230aa1737.js +1 -0
  18. data/template-min/eg-iframe.html +26 -0
  19. data/template-min/extjs/ext-all.js +38 -0
  20. data/template-min/extjs/resources/themes/images/default/boundlist/trigger-arrow.png +0 -0
  21. data/template-min/extjs/resources/themes/images/default/box/corners-blue.gif +0 -0
  22. data/template-min/extjs/resources/themes/images/default/box/corners.gif +0 -0
  23. data/template-min/extjs/resources/themes/images/default/box/l-blue.gif +0 -0
  24. data/template-min/extjs/resources/themes/images/default/box/l.gif +0 -0
  25. data/template-min/extjs/resources/themes/images/default/box/r-blue.gif +0 -0
  26. data/template-min/extjs/resources/themes/images/default/box/r.gif +0 -0
  27. data/template-min/extjs/resources/themes/images/default/box/tb-blue.gif +0 -0
  28. data/template-min/extjs/resources/themes/images/default/box/tb.gif +0 -0
  29. data/template-min/extjs/resources/themes/images/default/btn-group/btn-group-default-framed-corners.gif +0 -0
  30. data/template-min/extjs/resources/themes/images/default/btn-group/btn-group-default-framed-notitle-corners.gif +0 -0
  31. data/template-min/extjs/resources/themes/images/default/btn-group/btn-group-default-framed-notitle-sides.gif +0 -0
  32. data/template-min/extjs/resources/themes/images/default/btn-group/btn-group-default-framed-sides.gif +0 -0
  33. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-bg.gif +0 -0
  34. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-corners.gif +0 -0
  35. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-disabled-bg.gif +0 -0
  36. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-disabled-corners.gif +0 -0
  37. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-disabled-sides.gif +0 -0
  38. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-focus-bg.gif +0 -0
  39. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-focus-corners.gif +0 -0
  40. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-focus-sides.gif +0 -0
  41. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-over-bg.gif +0 -0
  42. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-over-corners.gif +0 -0
  43. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-over-sides.gif +0 -0
  44. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-pressed-bg.gif +0 -0
  45. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-pressed-corners.gif +0 -0
  46. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-pressed-sides.gif +0 -0
  47. data/template-min/extjs/resources/themes/images/default/btn/btn-default-large-sides.gif +0 -0
  48. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-bg.gif +0 -0
  49. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-corners.gif +0 -0
  50. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-disabled-bg.gif +0 -0
  51. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-disabled-corners.gif +0 -0
  52. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-disabled-sides.gif +0 -0
  53. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-focus-bg.gif +0 -0
  54. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-focus-corners.gif +0 -0
  55. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-focus-sides.gif +0 -0
  56. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-over-bg.gif +0 -0
  57. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-over-corners.gif +0 -0
  58. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-over-sides.gif +0 -0
  59. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-pressed-bg.gif +0 -0
  60. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-pressed-corners.gif +0 -0
  61. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-pressed-sides.gif +0 -0
  62. data/template-min/extjs/resources/themes/images/default/btn/btn-default-medium-sides.gif +0 -0
  63. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-bg.gif +0 -0
  64. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-corners.gif +0 -0
  65. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-disabled-bg.gif +0 -0
  66. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-disabled-corners.gif +0 -0
  67. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-disabled-sides.gif +0 -0
  68. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-focus-bg.gif +0 -0
  69. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-focus-corners.gif +0 -0
  70. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-focus-sides.gif +0 -0
  71. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-over-bg.gif +0 -0
  72. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-over-corners.gif +0 -0
  73. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-over-sides.gif +0 -0
  74. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-pressed-bg.gif +0 -0
  75. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-pressed-corners.gif +0 -0
  76. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-pressed-sides.gif +0 -0
  77. data/template-min/extjs/resources/themes/images/default/btn/btn-default-small-sides.gif +0 -0
  78. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-corners.gif +0 -0
  79. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-disabled-corners.gif +0 -0
  80. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-disabled-sides.gif +0 -0
  81. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-focus-bg.gif +0 -0
  82. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-focus-corners.gif +0 -0
  83. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-focus-sides.gif +0 -0
  84. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-over-bg.gif +0 -0
  85. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-over-corners.gif +0 -0
  86. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-over-sides.gif +0 -0
  87. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-pressed-bg.gif +0 -0
  88. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-pressed-corners.gif +0 -0
  89. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-pressed-sides.gif +0 -0
  90. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-large-sides.gif +0 -0
  91. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-corners.gif +0 -0
  92. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-disabled-corners.gif +0 -0
  93. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-disabled-sides.gif +0 -0
  94. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-focus-bg.gif +0 -0
  95. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-focus-corners.gif +0 -0
  96. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-focus-sides.gif +0 -0
  97. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-over-bg.gif +0 -0
  98. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-over-corners.gif +0 -0
  99. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-over-sides.gif +0 -0
  100. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-pressed-bg.gif +0 -0
  101. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-pressed-corners.gif +0 -0
  102. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-pressed-sides.gif +0 -0
  103. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-medium-sides.gif +0 -0
  104. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-corners.gif +0 -0
  105. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-disabled-corners.gif +0 -0
  106. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-disabled-sides.gif +0 -0
  107. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-focus-bg.gif +0 -0
  108. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-focus-corners.gif +0 -0
  109. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-focus-sides.gif +0 -0
  110. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-over-bg.gif +0 -0
  111. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-over-corners.gif +0 -0
  112. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-over-sides.gif +0 -0
  113. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-pressed-bg.gif +0 -0
  114. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-pressed-corners.gif +0 -0
  115. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-pressed-sides.gif +0 -0
  116. data/template-min/extjs/resources/themes/images/default/btn/btn-default-toolbar-small-sides.gif +0 -0
  117. data/template-min/extjs/resources/themes/images/default/button/arrow.gif +0 -0
  118. data/template-min/extjs/resources/themes/images/default/button/btn.gif +0 -0
  119. data/template-min/extjs/resources/themes/images/default/button/group-cs.gif +0 -0
  120. data/template-min/extjs/resources/themes/images/default/button/group-lr.gif +0 -0
  121. data/template-min/extjs/resources/themes/images/default/button/group-tb.gif +0 -0
  122. data/template-min/extjs/resources/themes/images/default/button/s-arrow-b-noline.gif +0 -0
  123. data/template-min/extjs/resources/themes/images/default/button/s-arrow-b.gif +0 -0
  124. data/template-min/extjs/resources/themes/images/default/button/s-arrow-bo.gif +0 -0
  125. data/template-min/extjs/resources/themes/images/default/button/s-arrow-light.gif +0 -0
  126. data/template-min/extjs/resources/themes/images/default/button/s-arrow-noline.gif +0 -0
  127. data/template-min/extjs/resources/themes/images/default/button/s-arrow-o.gif +0 -0
  128. data/template-min/extjs/resources/themes/images/default/button/s-arrow.gif +0 -0
  129. data/template-min/extjs/resources/themes/images/default/datepicker/datepicker-footer-bg.gif +0 -0
  130. data/template-min/extjs/resources/themes/images/default/datepicker/datepicker-footer-bg.png +0 -0
  131. data/template-min/extjs/resources/themes/images/default/datepicker/datepicker-header-bg.gif +0 -0
  132. data/template-min/extjs/resources/themes/images/default/datepicker/datepicker-header-bg.png +0 -0
  133. data/template-min/extjs/resources/themes/images/default/dd/drop-add.gif +0 -0
  134. data/template-min/extjs/resources/themes/images/default/dd/drop-no.gif +0 -0
  135. data/template-min/extjs/resources/themes/images/default/dd/drop-yes.gif +0 -0
  136. data/template-min/extjs/resources/themes/images/default/editor/tb-sprite.gif +0 -0
  137. data/template-min/extjs/resources/themes/images/default/form-invalid-tip/form-invalid-tip-corners.gif +0 -0
  138. data/template-min/extjs/resources/themes/images/default/form-invalid-tip/form-invalid-tip-default-corners.gif +0 -0
  139. data/template-min/extjs/resources/themes/images/default/form-invalid-tip/form-invalid-tip-default-sides.gif +0 -0
  140. data/template-min/extjs/resources/themes/images/default/form-invalid-tip/form-invalid-tip-sides.gif +0 -0
  141. data/template-min/extjs/resources/themes/images/default/form/checkbox.gif +0 -0
  142. data/template-min/extjs/resources/themes/images/default/form/clear-trigger.gif +0 -0
  143. data/template-min/extjs/resources/themes/images/default/form/date-trigger.gif +0 -0
  144. data/template-min/extjs/resources/themes/images/default/form/error-tip-corners.gif +0 -0
  145. data/template-min/extjs/resources/themes/images/default/form/exclamation.gif +0 -0
  146. data/template-min/extjs/resources/themes/images/default/form/radio.gif +0 -0
  147. data/template-min/extjs/resources/themes/images/default/form/search-trigger.gif +0 -0
  148. data/template-min/extjs/resources/themes/images/default/form/spinner-small.gif +0 -0
  149. data/template-min/extjs/resources/themes/images/default/form/spinner.gif +0 -0
  150. data/template-min/extjs/resources/themes/images/default/form/text-bg.gif +0 -0
  151. data/template-min/extjs/resources/themes/images/default/form/trigger-square.gif +0 -0
  152. data/template-min/extjs/resources/themes/images/default/form/trigger-tpl.gif +0 -0
  153. data/template-min/extjs/resources/themes/images/default/form/trigger.gif +0 -0
  154. data/template-min/extjs/resources/themes/images/default/grid/arrow-left-white.gif +0 -0
  155. data/template-min/extjs/resources/themes/images/default/grid/arrow-right-white.gif +0 -0
  156. data/template-min/extjs/resources/themes/images/default/grid/cell-special-bg.gif +0 -0
  157. data/template-min/extjs/resources/themes/images/default/grid/cell-special-bg.png +0 -0
  158. data/template-min/extjs/resources/themes/images/default/grid/cell-special-selected-bg.gif +0 -0
  159. data/template-min/extjs/resources/themes/images/default/grid/cell-special-selected-bg.png +0 -0
  160. data/template-min/extjs/resources/themes/images/default/grid/checked.gif +0 -0
  161. data/template-min/extjs/resources/themes/images/default/grid/col-move-bottom.gif +0 -0
  162. data/template-min/extjs/resources/themes/images/default/grid/col-move-top.gif +0 -0
  163. data/template-min/extjs/resources/themes/images/default/grid/column-header-bg.gif +0 -0
  164. data/template-min/extjs/resources/themes/images/default/grid/column-header-bg.png +0 -0
  165. data/template-min/extjs/resources/themes/images/default/grid/column-header-over-bg.gif +0 -0
  166. data/template-min/extjs/resources/themes/images/default/grid/column-header-over-bg.png +0 -0
  167. data/template-min/extjs/resources/themes/images/default/grid/columns.gif +0 -0
  168. data/template-min/extjs/resources/themes/images/default/grid/dd-insert-arrow-left.gif +0 -0
  169. data/template-min/extjs/resources/themes/images/default/grid/dd-insert-arrow-left.png +0 -0
  170. data/template-min/extjs/resources/themes/images/default/grid/dd-insert-arrow-right.gif +0 -0
  171. data/template-min/extjs/resources/themes/images/default/grid/dd-insert-arrow-right.png +0 -0
  172. data/template-min/extjs/resources/themes/images/default/grid/dirty.gif +0 -0
  173. data/template-min/extjs/resources/themes/images/default/grid/done.gif +0 -0
  174. data/template-min/extjs/resources/themes/images/default/grid/drop-no.gif +0 -0
  175. data/template-min/extjs/resources/themes/images/default/grid/drop-yes.gif +0 -0
  176. data/template-min/extjs/resources/themes/images/default/grid/footer-bg.gif +0 -0
  177. data/template-min/extjs/resources/themes/images/default/grid/grid-blue-hd.gif +0 -0
  178. data/template-min/extjs/resources/themes/images/default/grid/grid-blue-split.gif +0 -0
  179. data/template-min/extjs/resources/themes/images/default/grid/grid-hrow.gif +0 -0
  180. data/template-min/extjs/resources/themes/images/default/grid/grid-loading.gif +0 -0
  181. data/template-min/extjs/resources/themes/images/default/grid/grid-split.gif +0 -0
  182. data/template-min/extjs/resources/themes/images/default/grid/grid-vista-hd.gif +0 -0
  183. data/template-min/extjs/resources/themes/images/default/grid/grid3-hd-btn.gif +0 -0
  184. data/template-min/extjs/resources/themes/images/default/grid/grid3-hrow-over.gif +0 -0
  185. data/template-min/extjs/resources/themes/images/default/grid/grid3-hrow.gif +0 -0
  186. data/template-min/extjs/resources/themes/images/default/grid/grid3-rowheader.gif +0 -0
  187. data/template-min/extjs/resources/themes/images/default/grid/group-by.gif +0 -0
  188. data/template-min/extjs/resources/themes/images/default/grid/group-collapse.gif +0 -0
  189. data/template-min/extjs/resources/themes/images/default/grid/group-expand-sprite.gif +0 -0
  190. data/template-min/extjs/resources/themes/images/default/grid/group-expand.gif +0 -0
  191. data/template-min/extjs/resources/themes/images/default/grid/hd-pop.gif +0 -0
  192. data/template-min/extjs/resources/themes/images/default/grid/hmenu-asc.gif +0 -0
  193. data/template-min/extjs/resources/themes/images/default/grid/hmenu-desc.gif +0 -0
  194. data/template-min/extjs/resources/themes/images/default/grid/hmenu-lock.gif +0 -0
  195. data/template-min/extjs/resources/themes/images/default/grid/hmenu-lock.png +0 -0
  196. data/template-min/extjs/resources/themes/images/default/grid/hmenu-unlock.gif +0 -0
  197. data/template-min/extjs/resources/themes/images/default/grid/hmenu-unlock.png +0 -0
  198. data/template-min/extjs/resources/themes/images/default/grid/invalid_line.gif +0 -0
  199. data/template-min/extjs/resources/themes/images/default/grid/loading.gif +0 -0
  200. data/template-min/extjs/resources/themes/images/default/grid/mso-hd.gif +0 -0
  201. data/template-min/extjs/resources/themes/images/default/grid/nowait.gif +0 -0
  202. data/template-min/extjs/resources/themes/images/default/grid/page-first-disabled.gif +0 -0
  203. data/template-min/extjs/resources/themes/images/default/grid/page-first.gif +0 -0
  204. data/template-min/extjs/resources/themes/images/default/grid/page-last-disabled.gif +0 -0
  205. data/template-min/extjs/resources/themes/images/default/grid/page-last.gif +0 -0
  206. data/template-min/extjs/resources/themes/images/default/grid/page-next-disabled.gif +0 -0
  207. data/template-min/extjs/resources/themes/images/default/grid/page-next.gif +0 -0
  208. data/template-min/extjs/resources/themes/images/default/grid/page-prev-disabled.gif +0 -0
  209. data/template-min/extjs/resources/themes/images/default/grid/page-prev.gif +0 -0
  210. data/template-min/extjs/resources/themes/images/default/grid/pick-button.gif +0 -0
  211. data/template-min/extjs/resources/themes/images/default/grid/property-cell-bg.gif +0 -0
  212. data/template-min/extjs/resources/themes/images/default/grid/property-cell-selected-bg.gif +0 -0
  213. data/template-min/extjs/resources/themes/images/default/grid/refresh-disabled.gif +0 -0
  214. data/template-min/extjs/resources/themes/images/default/grid/refresh.gif +0 -0
  215. data/template-min/extjs/resources/themes/images/default/grid/row-check-sprite.gif +0 -0
  216. data/template-min/extjs/resources/themes/images/default/grid/row-expand-sprite.gif +0 -0
  217. data/template-min/extjs/resources/themes/images/default/grid/row-over.gif +0 -0
  218. data/template-min/extjs/resources/themes/images/default/grid/row-sel.gif +0 -0
  219. data/template-min/extjs/resources/themes/images/default/grid/sort-hd.gif +0 -0
  220. data/template-min/extjs/resources/themes/images/default/grid/sort_asc.gif +0 -0
  221. data/template-min/extjs/resources/themes/images/default/grid/sort_desc.gif +0 -0
  222. data/template-min/extjs/resources/themes/images/default/grid/unchecked.gif +0 -0
  223. data/template-min/extjs/resources/themes/images/default/grid/wait.gif +0 -0
  224. data/template-min/extjs/resources/themes/images/default/layout/mini-bottom.gif +0 -0
  225. data/template-min/extjs/resources/themes/images/default/layout/mini-left.gif +0 -0
  226. data/template-min/extjs/resources/themes/images/default/layout/mini-right.gif +0 -0
  227. data/template-min/extjs/resources/themes/images/default/layout/mini-top.gif +0 -0
  228. data/template-min/extjs/resources/themes/images/default/menu/checked.gif +0 -0
  229. data/template-min/extjs/resources/themes/images/default/menu/group-checked.gif +0 -0
  230. data/template-min/extjs/resources/themes/images/default/menu/item-over.gif +0 -0
  231. data/template-min/extjs/resources/themes/images/default/menu/menu-item-active-bg.gif +0 -0
  232. data/template-min/extjs/resources/themes/images/default/menu/menu-item-active-corners.gif +0 -0
  233. data/template-min/extjs/resources/themes/images/default/menu/menu-item-active-sides.gif +0 -0
  234. data/template-min/extjs/resources/themes/images/default/menu/menu-parent.gif +0 -0
  235. data/template-min/extjs/resources/themes/images/default/menu/menu.gif +0 -0
  236. data/template-min/extjs/resources/themes/images/default/menu/unchecked.gif +0 -0
  237. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-bottom-bg.gif +0 -0
  238. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-bottom-bg.gif +0 -0
  239. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-bottom-corners.gif +0 -0
  240. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-bottom-sides.gif +0 -0
  241. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-bottom-bg.gif +0 -0
  242. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-bottom-corners.gif +0 -0
  243. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-bottom-sides.gif +0 -0
  244. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-left-bg.gif +0 -0
  245. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-left-corners.gif +0 -0
  246. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-left-sides.gif +0 -0
  247. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-right-bg.gif +0 -0
  248. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-right-corners.gif +0 -0
  249. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-right-sides.gif +0 -0
  250. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-top-bg.gif +0 -0
  251. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-top-corners.gif +0 -0
  252. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-collapsed-top-sides.gif +0 -0
  253. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-left-bg.gif +0 -0
  254. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-left-corners.gif +0 -0
  255. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-left-sides.gif +0 -0
  256. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-right-bg.gif +0 -0
  257. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-right-corners.gif +0 -0
  258. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-right-sides.gif +0 -0
  259. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-top-bg.gif +0 -0
  260. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-top-corners.gif +0 -0
  261. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-framed-top-sides.gif +0 -0
  262. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-left-bg.gif +0 -0
  263. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-right-bg.gif +0 -0
  264. data/template-min/extjs/resources/themes/images/default/panel-header/panel-header-default-top-bg.gif +0 -0
  265. data/template-min/extjs/resources/themes/images/default/panel/panel-default-framed-corners.gif +0 -0
  266. data/template-min/extjs/resources/themes/images/default/panel/panel-default-framed-sides.gif +0 -0
  267. data/template-min/extjs/resources/themes/images/default/progress/progress-default-bg.gif +0 -0
  268. data/template-min/extjs/resources/themes/images/default/shared/blue-loading.gif +0 -0
  269. data/template-min/extjs/resources/themes/images/default/shared/calendar.gif +0 -0
  270. data/template-min/extjs/resources/themes/images/default/shared/glass-bg.gif +0 -0
  271. data/template-min/extjs/resources/themes/images/default/shared/hd-sprite.gif +0 -0
  272. data/template-min/extjs/resources/themes/images/default/shared/icon-error.gif +0 -0
  273. data/template-min/extjs/resources/themes/images/default/shared/icon-info.gif +0 -0
  274. data/template-min/extjs/resources/themes/images/default/shared/icon-question.gif +0 -0
  275. data/template-min/extjs/resources/themes/images/default/shared/icon-warning.gif +0 -0
  276. data/template-min/extjs/resources/themes/images/default/shared/large-loading.gif +0 -0
  277. data/template-min/extjs/resources/themes/images/default/shared/left-btn.gif +0 -0
  278. data/template-min/extjs/resources/themes/images/default/shared/loading-balls.gif +0 -0
  279. data/template-min/extjs/resources/themes/images/default/shared/right-btn.gif +0 -0
  280. data/template-min/extjs/resources/themes/images/default/shared/shadow-c.png +0 -0
  281. data/template-min/extjs/resources/themes/images/default/shared/shadow-lr.png +0 -0
  282. data/template-min/extjs/resources/themes/images/default/shared/shadow.png +0 -0
  283. data/template-min/extjs/resources/themes/images/default/shared/warning.gif +0 -0
  284. data/template-min/extjs/resources/themes/images/default/sizer/e-handle-dark.gif +0 -0
  285. data/template-min/extjs/resources/themes/images/default/sizer/e-handle.gif +0 -0
  286. data/template-min/extjs/resources/themes/images/default/sizer/ne-handle-dark.gif +0 -0
  287. data/template-min/extjs/resources/themes/images/default/sizer/ne-handle.gif +0 -0
  288. data/template-min/extjs/resources/themes/images/default/sizer/nw-handle-dark.gif +0 -0
  289. data/template-min/extjs/resources/themes/images/default/sizer/nw-handle.gif +0 -0
  290. data/template-min/extjs/resources/themes/images/default/sizer/s-handle-dark.gif +0 -0
  291. data/template-min/extjs/resources/themes/images/default/sizer/s-handle.gif +0 -0
  292. data/template-min/extjs/resources/themes/images/default/sizer/se-handle-dark.gif +0 -0
  293. data/template-min/extjs/resources/themes/images/default/sizer/se-handle.gif +0 -0
  294. data/template-min/extjs/resources/themes/images/default/sizer/square.gif +0 -0
  295. data/template-min/extjs/resources/themes/images/default/sizer/sw-handle-dark.gif +0 -0
  296. data/template-min/extjs/resources/themes/images/default/sizer/sw-handle.gif +0 -0
  297. data/template-min/extjs/resources/themes/images/default/slider/slider-bg.gif +0 -0
  298. data/template-min/extjs/resources/themes/images/default/slider/slider-bg.png +0 -0
  299. data/template-min/extjs/resources/themes/images/default/slider/slider-thumb.gif +0 -0
  300. data/template-min/extjs/resources/themes/images/default/slider/slider-thumb.png +0 -0
  301. data/template-min/extjs/resources/themes/images/default/slider/slider-v-bg.gif +0 -0
  302. data/template-min/extjs/resources/themes/images/default/slider/slider-v-bg.png +0 -0
  303. data/template-min/extjs/resources/themes/images/default/slider/slider-v-thumb.gif +0 -0
  304. data/template-min/extjs/resources/themes/images/default/slider/slider-v-thumb.png +0 -0
  305. data/template-min/extjs/resources/themes/images/default/tab-bar/scroll-left.gif +0 -0
  306. data/template-min/extjs/resources/themes/images/default/tab-bar/scroll-right.gif +0 -0
  307. data/template-min/extjs/resources/themes/images/default/tab-bar/tab-bar-default-bg.gif +0 -0
  308. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-active-bg.gif +0 -0
  309. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-active-corners.gif +0 -0
  310. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-active-sides.gif +0 -0
  311. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-bg.gif +0 -0
  312. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-corners.gif +0 -0
  313. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-disabled-bg.gif +0 -0
  314. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-disabled-corners.gif +0 -0
  315. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-disabled-sides.gif +0 -0
  316. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-over-bg.gif +0 -0
  317. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-over-corners.gif +0 -0
  318. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-over-sides.gif +0 -0
  319. data/template-min/extjs/resources/themes/images/default/tab/tab-default-bottom-sides.gif +0 -0
  320. data/template-min/extjs/resources/themes/images/default/tab/tab-default-close.gif +0 -0
  321. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-active-bg.gif +0 -0
  322. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-active-corners.gif +0 -0
  323. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-active-sides.gif +0 -0
  324. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-bg.gif +0 -0
  325. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-corners.gif +0 -0
  326. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-disabled-bg.gif +0 -0
  327. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-disabled-corners.gif +0 -0
  328. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-disabled-sides.gif +0 -0
  329. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-over-bg.gif +0 -0
  330. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-over-corners.gif +0 -0
  331. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-over-sides.gif +0 -0
  332. data/template-min/extjs/resources/themes/images/default/tab/tab-default-top-sides.gif +0 -0
  333. data/template-min/extjs/resources/themes/images/default/tip/tip-corners.gif +0 -0
  334. data/template-min/extjs/resources/themes/images/default/tip/tip-sides.gif +0 -0
  335. data/template-min/extjs/resources/themes/images/default/toolbar/more.gif +0 -0
  336. data/template-min/extjs/resources/themes/images/default/toolbar/scroll-left.gif +0 -0
  337. data/template-min/extjs/resources/themes/images/default/toolbar/scroll-right.gif +0 -0
  338. data/template-min/extjs/resources/themes/images/default/toolbar/toolbar-default-bg.gif +0 -0
  339. data/template-min/extjs/resources/themes/images/default/tools/tool-sprite-tpl.gif +0 -0
  340. data/template-min/extjs/resources/themes/images/default/tools/tool-sprites.gif +0 -0
  341. data/template-min/extjs/resources/themes/images/default/tools/tools-sprites-trans.gif +0 -0
  342. data/template-min/extjs/resources/themes/images/default/tree/arrows.gif +0 -0
  343. data/template-min/extjs/resources/themes/images/default/tree/drop-above.gif +0 -0
  344. data/template-min/extjs/resources/themes/images/default/tree/drop-add.gif +0 -0
  345. data/template-min/extjs/resources/themes/images/default/tree/drop-append.gif +0 -0
  346. data/template-min/extjs/resources/themes/images/default/tree/drop-below.gif +0 -0
  347. data/template-min/extjs/resources/themes/images/default/tree/drop-between.gif +0 -0
  348. data/template-min/extjs/resources/themes/images/default/tree/drop-no.gif +0 -0
  349. data/template-min/extjs/resources/themes/images/default/tree/drop-over.gif +0 -0
  350. data/template-min/extjs/resources/themes/images/default/tree/drop-under.gif +0 -0
  351. data/template-min/extjs/resources/themes/images/default/tree/drop-yes.gif +0 -0
  352. data/template-min/extjs/resources/themes/images/default/tree/elbow-end-minus-nl.gif +0 -0
  353. data/template-min/extjs/resources/themes/images/default/tree/elbow-end-minus.gif +0 -0
  354. data/template-min/extjs/resources/themes/images/default/tree/elbow-end-plus-nl.gif +0 -0
  355. data/template-min/extjs/resources/themes/images/default/tree/elbow-end-plus.gif +0 -0
  356. data/template-min/extjs/resources/themes/images/default/tree/elbow-end.gif +0 -0
  357. data/template-min/extjs/resources/themes/images/default/tree/elbow-line.gif +0 -0
  358. data/template-min/extjs/resources/themes/images/default/tree/elbow-minus-nl.gif +0 -0
  359. data/template-min/extjs/resources/themes/images/default/tree/elbow-minus.gif +0 -0
  360. data/template-min/extjs/resources/themes/images/default/tree/elbow-plus-nl.gif +0 -0
  361. data/template-min/extjs/resources/themes/images/default/tree/elbow-plus.gif +0 -0
  362. data/template-min/extjs/resources/themes/images/default/tree/elbow.gif +0 -0
  363. data/template-min/extjs/resources/themes/images/default/tree/folder-open.gif +0 -0
  364. data/template-min/extjs/resources/themes/images/default/tree/folder.gif +0 -0
  365. data/template-min/extjs/resources/themes/images/default/tree/leaf.gif +0 -0
  366. data/template-min/extjs/resources/themes/images/default/tree/loading.gif +0 -0
  367. data/template-min/extjs/resources/themes/images/default/tree/s.gif +0 -0
  368. data/template-min/extjs/resources/themes/images/default/util/splitter/mini-bottom.gif +0 -0
  369. data/template-min/extjs/resources/themes/images/default/util/splitter/mini-left.gif +0 -0
  370. data/template-min/extjs/resources/themes/images/default/util/splitter/mini-right.gif +0 -0
  371. data/template-min/extjs/resources/themes/images/default/util/splitter/mini-top.gif +0 -0
  372. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-bottom-corners.gif +0 -0
  373. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-bottom-sides.gif +0 -0
  374. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-collapsed-bottom-corners.gif +0 -0
  375. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-collapsed-bottom-sides.gif +0 -0
  376. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-collapsed-left-corners.gif +0 -0
  377. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-collapsed-left-sides.gif +0 -0
  378. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-collapsed-right-corners.gif +0 -0
  379. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-collapsed-right-sides.gif +0 -0
  380. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-collapsed-top-corners.gif +0 -0
  381. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-collapsed-top-sides.gif +0 -0
  382. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-left-corners.gif +0 -0
  383. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-left-sides.gif +0 -0
  384. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-right-corners.gif +0 -0
  385. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-right-sides.gif +0 -0
  386. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-top-corners.gif +0 -0
  387. data/template-min/extjs/resources/themes/images/default/window-header/window-header-default-top-sides.gif +0 -0
  388. data/template-min/extjs/resources/themes/images/default/window/window-default-corners.gif +0 -0
  389. data/template-min/extjs/resources/themes/images/default/window/window-default-sides.gif +0 -0
  390. data/template-min/favicon.ico +0 -0
  391. data/template-min/index-template.html +35 -0
  392. data/template-min/index.php +94 -0
  393. data/template-min/mobile-redirect.js +1 -0
  394. data/template-min/print-template.html +52 -0
  395. data/template-min/resources/css/app-68f1acb2324b20262c41507f2e1b4b0b.css +1 -0
  396. data/template-min/resources/images/ajax-loader.gif +0 -0
  397. data/template-min/resources/images/arrows.png +0 -0
  398. data/template-min/resources/images/class-m.png +0 -0
  399. data/template-min/resources/images/comment-bubble.png +0 -0
  400. data/template-min/resources/images/comment.png +0 -0
  401. data/template-min/resources/images/component-m.png +0 -0
  402. data/template-min/resources/images/default-guide.png +0 -0
  403. data/template-min/resources/images/doc-m.png +0 -0
  404. data/template-min/resources/images/down-arr.png +0 -0
  405. data/template-min/resources/images/elbow-end.gif +0 -0
  406. data/template-min/resources/images/example-icons.png +0 -0
  407. data/template-min/resources/images/expandcollapse.png +0 -0
  408. data/template-min/resources/images/group-expand-sprite.gif +0 -0
  409. data/template-min/resources/images/header.png +0 -0
  410. data/template-min/resources/images/hero-extjs4-alt.png +0 -0
  411. data/template-min/resources/images/icons.png +0 -0
  412. data/template-min/resources/images/link-green-standard-over.png +0 -0
  413. data/template-min/resources/images/link-green-standard.png +0 -0
  414. data/template-min/resources/images/loading.gif +0 -0
  415. data/template-min/resources/images/logo-screen-noglow.png +0 -0
  416. data/template-min/resources/images/logo.png +0 -0
  417. data/template-min/resources/images/member-collapsed.gif +0 -0
  418. data/template-min/resources/images/member-expanded.gif +0 -0
  419. data/template-min/resources/images/member-hover.gif +0 -0
  420. data/template-min/resources/images/more.png +0 -0
  421. data/template-min/resources/images/phone-l.jpg +0 -0
  422. data/template-min/resources/images/phone-p.jpg +0 -0
  423. data/template-min/resources/images/phone-small-l.jpg +0 -0
  424. data/template-min/resources/images/phone-small-p.jpg +0 -0
  425. data/template-min/resources/images/print.png +0 -0
  426. data/template-min/resources/images/sample-over.gif +0 -0
  427. data/template-min/resources/images/search-box.png +0 -0
  428. data/template-min/resources/images/singleton-m.png +0 -0
  429. data/template-min/resources/images/tablet-l.jpg +0 -0
  430. data/template-min/resources/images/tablet-p.jpg +0 -0
  431. data/template-min/resources/images/tabs.png +0 -0
  432. data/template-min/resources/images/text-bg.gif +0 -0
  433. data/template-min/resources/images/vote-arrows.png +0 -0
  434. data/template-min/resources/images/welcome-bg-js4.gif +0 -0
  435. data/template-min/resources/images/x.png +0 -0
  436. data/template-min/resources/images/x12.png +0 -0
  437. data/template-min/resources/prettify/prettify.css +1 -0
  438. data/template-min/resources/prettify/prettify.js +30 -0
  439. data/template-min/template.html +44 -0
  440. metadata +196 -201
  441. data/.gitignore +0 -6
  442. data/.travis.yml +0 -12
  443. data/Rakefile +0 -302
  444. data/bin/compare +0 -374
  445. data/bin/graph +0 -52
  446. data/jsduck.gemspec +0 -33
data/.gitignore DELETED
@@ -1,6 +0,0 @@
1
- *.gem
2
- template/extjs
3
- template/resources/css
4
- template/resources/sass/.sass-cache
5
- template-min/
6
- sdk-vars.rb
data/.travis.yml DELETED
@@ -1,12 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - "1.8.7"
4
- - "1.9.3"
5
- install:
6
- - gem install rdiscount
7
- - gem install json
8
- - gem install parallel
9
- - gem install rkelly-remix -v 0.0.1
10
- - gem install rspec
11
- - gem install rake
12
- - gem install dimensions
data/Rakefile DELETED
@@ -1,302 +0,0 @@
1
- require 'rubygems'
2
- require 'rake'
3
-
4
- $LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
5
-
6
- require 'jsduck/util/md5'
7
-
8
- def os_is_windows?
9
- RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/
10
- end
11
-
12
- require 'rspec'
13
- require 'rspec/core/rake_task'
14
- RSpec::Core::RakeTask.new(:spec) do |spec|
15
- spec.rspec_opts = ["--color"] unless os_is_windows?
16
- spec.pattern = "spec/**/*_spec.rb"
17
- end
18
-
19
- def load_sdk_vars
20
- if File.exists?("sdk-vars.rb")
21
- require "./sdk-vars.rb"
22
- else
23
- puts "Error: sdk-vars.rb not found."
24
- puts
25
- puts "Please create file sdk-vars.rb and define in it:"
26
- puts
27
- puts " # where to output the docs"
28
- puts " OUT_DIR='/path/to/ouput/dir'"
29
- puts " # path to Ext JS 4 build"
30
- puts " EXT_BUILD='/path/to/ext-4'"
31
- puts " # path to Touch 2 build (for building Sencha Touch)"
32
- puts " TOUCH_BUILD='/path/to/touch-2'"
33
- puts " # path to SDK (for developers at Sencha)"
34
- puts " SDK_DIR='/path/to/SDK'"
35
- exit 1
36
- end
37
- end
38
-
39
- # Compress JS/CSS file in-place
40
- # Using a hackish way to access yui-compressor
41
- def yui_compress(fname)
42
- system "java -jar $(dirname $(which sencha))/bin/yuicompressor.jar -o #{fname} #{fname}"
43
- end
44
-
45
- # Reads in all CSS files referenced between BEGIN CSS and END CSS markers.
46
- # Deletes those input CSS files and writes out concatenated CSS to
47
- # resources/css/app.css
48
- # Finally replaces the CSS section with <link> to that one CSS file.
49
- def combine_css(html, dir)
50
- css_section_re = /<!-- BEGIN CSS -->.*<!-- END CSS -->/m
51
- css = []
52
- css_section_re.match(html)[0].each_line do |line|
53
- if line =~ /<link rel="stylesheet" href="(.*?)"/
54
- file = $1
55
- css << IO.read(dir + "/" + file)
56
- end
57
- end
58
-
59
- fname = "#{dir}/resources/css/app.css"
60
- File.open(fname, 'w') {|f| f.write(css.join("\n")) }
61
- yui_compress(fname)
62
- fname = JsDuck::Util::MD5.rename(fname)
63
-
64
- html.sub(css_section_re, '<link rel="stylesheet" href="resources/css/' + File.basename(fname) + '" type="text/css" />')
65
- end
66
-
67
- # Same thing for JavaScript, result is written to: app.js
68
- def combine_js(html, dir)
69
- js_section_re = /<!-- BEGIN JS -->.*<!-- END JS -->/m
70
- js = []
71
- js_section_re.match(html)[0].each_line do |line|
72
- if line =~ /<script .* src="(.*)">/
73
- file = $1
74
- js << IO.read(dir + "/" + file)
75
- elsif line =~ /<script .*>(.*)<\/script>/
76
- js << $1
77
- end
78
- end
79
-
80
- fname = "#{dir}/app.js"
81
-
82
- File.open(fname, 'w') {|f| f.write(js.join("\n")) }
83
- yui_compress(fname)
84
- fname = JsDuck::Util::MD5.rename(fname)
85
- html.sub(js_section_re, '<script type="text/javascript" src="' + File.basename(fname) + '"></script>')
86
- end
87
-
88
- # Modifies HTML to link app.css.
89
- def rewrite_css_links(dir, filename)
90
- html = IO.read(dir + "/" + filename);
91
- html = combine_css(html, dir)
92
- File.open(dir + "/" + filename, 'w') {|f| f.write(html) }
93
- end
94
-
95
- # Compress JavaScript and CSS files of JSDuck
96
- def compress
97
- load_sdk_vars
98
-
99
- # Clean up template-min/ left over from previous compress task
100
- system("rm", "-rf", "template-min")
101
- # Copy template/ files to template-min/
102
- system("cp", "-r", "template", "template-min")
103
- # Now do everything that follows in template-min/ dir
104
- dir = "template-min"
105
-
106
- # Create JSB3 file for Docs app
107
- system("sencha", "create", "jsb", "-a", "http://localhost/docs/", "-p", "#{dir}/app.jsb3")
108
- # Concatenate files listed in JSB3 file
109
- system("sencha", "build", "-p", "#{dir}/app.jsb3", "-d", dir)
110
-
111
- # Remove intermediate build files
112
- system("rm", "#{dir}/app.jsb3")
113
- system("rm", "#{dir}/all-classes.js")
114
- # Replace app.js with app-all.js
115
- system("mv", "#{dir}/app-all.js", "#{dir}/app.js")
116
- # Remove the entire app/ dir
117
- system("rm", "-r", "#{dir}/app")
118
-
119
- # Change CSS links in print-template.html and index-template.html files
120
- rewrite_css_links(dir, "print-template.html")
121
- rewrite_css_links(dir, "index-template.html")
122
-
123
- # Concatenate CSS and JS files referenced in template.html file
124
- template_html = "#{dir}/template.html"
125
- html = IO.read(template_html)
126
- html = combine_css(html, dir)
127
- html = combine_js(html, dir)
128
- File.open(template_html, 'w') {|f| f.write(html) }
129
-
130
- # Clean up SASS files
131
- # (But keep prettify lib, which is needed for source files)
132
- system "rm -rf #{dir}/resources/css/docs-ext.css"
133
- system "rm -rf #{dir}/resources/css/viewport.css"
134
- system "rm -rf #{dir}/resources/sass"
135
- system "rm -rf #{dir}/resources/codemirror"
136
- system "rm -rf #{dir}/resources/.sass-cache"
137
-
138
- # Empty the extjs dir, leave only the main JS file and images
139
- system "rm -rf #{dir}/extjs"
140
- system "mkdir #{dir}/extjs"
141
- system "cp template/extjs/ext-all.js #{dir}/extjs"
142
- system "mkdir -p #{dir}/extjs/resources/themes/images"
143
- system "cp -r template/extjs/resources/themes/images/default #{dir}/extjs/resources/themes/images"
144
- end
145
-
146
-
147
- class JsDuckRunner
148
- def initialize
149
- @options = []
150
- load_sdk_vars
151
- end
152
-
153
- def add_options(*options)
154
- @options += options
155
- end
156
-
157
- def add_comments(db_name, version)
158
- add_options("--comments-url", "http://localhost:3000/auth")
159
- add_options("--comments-domain", db_name+"/"+version)
160
- end
161
-
162
- def add_search(product, version)
163
- add_options("--search-url", "http://support-test.sencha.com:8080/docsearch/search")
164
- add_options("--search-domain", product+"/"+version)
165
- end
166
-
167
- def add_ext4
168
- @options += [
169
- "--title", "Sencha Docs - Ext JS 4.0",
170
- "--footer", "Ext JS 4.0 Docs - Generated with <a href='https://github.com/senchalabs/jsduck'>JSDuck</a> {VERSION}." +
171
- " <a href='http://www.sencha.com/legal/terms-of-use/'>Terms of Use</a>",
172
- "--ignore-global",
173
- "--warnings", "-all",
174
- "--images", "#{EXT_BUILD}/docs/images",
175
- "--local-storage-db", "ext-4",
176
- "--output", "#{OUT_DIR}",
177
- "#{EXT_BUILD}/src",
178
- ]
179
- end
180
-
181
- def add_debug
182
- add_options(
183
- "--extjs-path", "extjs/ext-all-debug.js",
184
- "--template", "template"
185
- )
186
- add_options("--template-links") unless os_is_windows?
187
- end
188
-
189
- def run
190
- # Pass multiple arguments to system, so we'll take advantage of the built-in escaping
191
- system(*["ruby", "bin/jsduck"].concat(@options))
192
- end
193
- end
194
-
195
- # Download ExtJS into template/extjs
196
- task :get_extjs do
197
- system "curl -o template/extjs.zip http://cdn.sencha.com/ext-4.1.1a-gpl.zip"
198
- system "unzip template/extjs.zip -d template/"
199
- system "rm -rf template/extjs"
200
- system "mv template/ext-4.1.1a template/extjs"
201
- system "rm template/extjs.zip"
202
- end
203
-
204
- # Auto-generate sdk-vars.rb config file
205
- task :config_file do
206
- if File.exists?("sdk-vars.rb")
207
- puts "sdk-vars.rb already exists. Keeping it."
208
- else
209
- puts "Generating sdk-vars.rb with the following content:"
210
- config = <<-EORUBY
211
- # where to output the docs
212
- OUT_DIR='#{Dir.pwd}/output'
213
- # path to Ext JS 4 build
214
- EXT_BUILD='#{Dir.pwd}/template/extjs'
215
- EORUBY
216
- puts
217
- puts config
218
- File.open("sdk-vars.rb", "w") {|h| h.write(config) }
219
- end
220
- end
221
-
222
- desc "Download ExtJS and initialize sdk-vars.rb config file"
223
- task :configure => [:get_extjs, :config_file]
224
-
225
- # Run compass to generate CSS files
226
- task :sass do
227
- system "compass compile --quiet template/resources/sass"
228
- end
229
-
230
- desc "Build JSDuck gem"
231
- task :gem => :sass do
232
- compress
233
- system "gem build jsduck.gemspec"
234
- end
235
-
236
- desc "Run JSDuck on Docs app itself"
237
- task :docs do
238
- runner = JsDuckRunner.new
239
- runner.add_ext4
240
- runner.add_options(
241
- "--builtin-classes",
242
- "template/app"
243
- )
244
- runner.add_debug
245
- runner.run
246
- end
247
-
248
- desc "Run JSDuck on official Ext JS 4 build"
249
- task :ext4 => :sass do
250
- runner = JsDuckRunner.new
251
- runner.add_ext4
252
- runner.add_debug
253
- runner.run
254
-
255
- system("ln -s #{EXT_BUILD} #{OUT_DIR}/extjs-build")
256
- end
257
-
258
- desc "Run JSDuck on Ext JS from SDK repo (for internal use at Sencha)"
259
- task :sdk => :sass do
260
- runner = JsDuckRunner.new
261
- runner.add_options(
262
- "--output", OUT_DIR,
263
- "--config", "#{SDK_DIR}/extjs/docs/config.json",
264
- "--examples-base-url", "extjs-build/examples/",
265
- # "--import", "4.1.3:../docs.sencha.com/exports/extjs-4.1.3",
266
- # "--import", "4.2",
267
- "--seo"
268
- )
269
- runner.add_debug
270
- runner.add_comments('ext-js', '4')
271
- runner.add_search('Ext JS', '4.2.0')
272
- runner.run
273
-
274
- system("ln -s #{EXT_BUILD} #{OUT_DIR}/extjs-build")
275
- end
276
-
277
- desc "Run JSDuck on Sencha Touch 2 repo (for internal use at Sencha)"
278
- task :touch2 => :sass do
279
- runner = JsDuckRunner.new
280
- runner.add_options(
281
- "--output", OUT_DIR,
282
- "--config", "#{SDK_DIR}/touch/docs/config.json",
283
- "--examples-base-url", "touch-build/examples/production/",
284
- # "--import", "1.1.0:../docs.sencha.com/exports/touch-1.1.0",
285
- # "--import", "1.1.1:../docs.sencha.com/exports/touch-1.1.1",
286
- # "--import", "2.0.0:../docs.sencha.com/exports/touch-2.0.0",
287
- # "--import", "2.0.1:../docs.sencha.com/exports/touch-2.0.1",
288
- # "--import", "2.1.0:../docs.sencha.com/exports/touch-2.1.0",
289
- # "--import", "2.1.1:../docs.sencha.com/exports/touch-2.1.1",
290
- # "--import", "2.2.0:../docs.sencha.com/exports/touch-2.2.0",
291
- # "--import", "2.2.1",
292
- "--seo"
293
- )
294
-
295
- runner.add_debug
296
- runner.add_comments('touch', '2')
297
- runner.run
298
-
299
- system("ln -s #{TOUCH_BUILD} #{OUT_DIR}/touch-build")
300
- end
301
-
302
- task :default => :spec
data/bin/compare DELETED
@@ -1,374 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Produces diff of two JSDuck exports.
3
-
4
- # For running when gem not installed
5
- $:.unshift File.dirname(File.dirname(__FILE__)) + "/lib"
6
-
7
- require "rubygems"
8
- require "cgi"
9
- require "optparse"
10
- require "jsduck/util/json"
11
-
12
- options = {
13
- :title => "Comparison of Ext 4.0.7 and Ext 4.1.1",
14
- :remap => {},
15
- }
16
-
17
- input_files = OptionParser.new do |opts|
18
- opts.banner = "Produces diff of two JSDuck exports.\n\n" +
19
- "Usage: compare [options] old/classes/ new/classes/ output.html\n\n"
20
-
21
- opts.on("--ignore=FILE", "A file listing members to be ignored") do |file|
22
- options[:ignore] = file
23
- end
24
-
25
- opts.on("--type=NAME", "Only produce diff of cfg, property, method or event.") do |name|
26
- options[:type] = name
27
- end
28
-
29
- opts.on("--title=TEXT", "Title for the generated HTML page.",
30
- "Defaults to: 'Comparison of Ext 4.0.7 and Ext 4.1.1'") do |text|
31
- options[:title] = text
32
- end
33
-
34
- opts.on("--show-unchanged", "To list classes that have not changed.",
35
- "By default only classes with changes are listed.") do
36
- options[:show_unchanged] = true
37
- end
38
-
39
- opts.on("--map=A:B", "Maps class A in old/classes/ to class B",
40
- "in new/classes/. For example --map Ext.Foo:Ext.NewFoo") do |pair|
41
- (a, b) = pair.split(/:/)
42
- options[:remap][a] = b
43
- end
44
-
45
- opts.on("-h", "--help", "Show this help message") do
46
- puts opts
47
- exit
48
- end
49
- end.parse!
50
-
51
- if input_files.length == 3
52
- options[:old_classes] = input_files[0]
53
- options[:new_classes] = input_files[1]
54
- options[:out_file] = input_files[2]
55
- else
56
- puts "You must specify exactly 3 filenames: old/classes/ new/classes/ output.html"
57
- exit 1
58
- end
59
-
60
-
61
- def read_class(filename)
62
- JsDuck::Util::Json.read(filename)
63
- end
64
-
65
- # loops through all members of class
66
- def each_member(cls)
67
- ["members", "statics"].each do |category|
68
- cls[category].each_pair do |k, members|
69
- members.each do |m|
70
- yield m
71
- end
72
- end
73
- end
74
- end
75
-
76
- def discard_docs(cls)
77
- each_member(cls) do |m|
78
- m["doc"] = nil
79
- m["params"] = nil
80
- end
81
- cls
82
- end
83
-
84
- def read_all_classes(dir)
85
- map = {}
86
- Dir[dir+"/*.json"].each do |filename|
87
- print "."
88
- STDOUT.flush
89
- cls = discard_docs(read_class(filename))
90
- map[cls["name"]] = cls
91
- cls["alternateClassNames"].each do |name|
92
- map[name] = cls
93
- end
94
- end
95
- puts "OK"
96
- map
97
- end
98
-
99
- def read_ignored_members(filename)
100
- map = {}
101
- IO.read(filename).each_line do |line|
102
- map[line.chomp] = true
103
- end
104
- map
105
- end
106
-
107
- def normal_public_member?(m)
108
- !m["private"] && !m["protected"] && !m["deprecated"] && !m["removed"]
109
- end
110
-
111
- def unify_default(v)
112
- (v || "undefined").gsub(/"/, "'").sub(/^Ext\.baseCSSPrefix \+ '/, "'x-")
113
- end
114
-
115
- def visibility(m)
116
- if m["private"]
117
- "private"
118
- elsif m["protected"]
119
- "protected"
120
- else
121
- "public"
122
- end
123
- end
124
-
125
- # Finds equivalent member to given member from class.
126
- # Returns the member found or nil.
127
- def find_member(cls, member)
128
- cls[member["static"] ? "statics" : "members"][member["tagname"]].find do |m|
129
- member["name"] == m["name"]
130
- end
131
- end
132
-
133
-
134
- # Compares members of cls1 to cls2.
135
- # Returns diff array of added, removed and changed members.
136
- def compare_classes(cls1, cls2)
137
- diff = []
138
-
139
- checked_members = {}
140
-
141
- each_member(cls1) do |m1|
142
- next unless normal_public_member?(m1) && m1["owner"] == cls1["name"]
143
-
144
- checked_members[m1["id"]] = true
145
-
146
- m2 = find_member(cls2, m1)
147
-
148
- if m2
149
- changes = []
150
- if m1["type"] != m2["type"]
151
- changes << {
152
- :what => "type",
153
- :a => m1["type"],
154
- :b => m2["type"],
155
- }
156
- end
157
- if unify_default(m1["default"]) != unify_default(m2["default"])
158
- changes << {
159
- :what => "default",
160
- :a => unify_default(m1["default"]),
161
- :b => unify_default(m2["default"]),
162
- }
163
- end
164
- if visibility(m1) != visibility(m2)
165
- changes << {
166
- :what => "visibility",
167
- :a => visibility(m1),
168
- :b => visibility(m2),
169
- }
170
- end
171
-
172
- if changes.length > 0
173
- diff << {
174
- :type => m1["tagname"],
175
- :name => m1["name"],
176
- :what => "changed",
177
- :changes => changes,
178
- }
179
- end
180
-
181
- elsif !m2 && m1["name"] != "constructor" && m1["name"] != ""
182
- other = nil
183
- ["cfg", "property", "method", "event"].each do |g|
184
- other = other || cls2["members"][g].find {|m2| m2["name"] == m1["name"] }
185
- other = other || cls2["statics"][g].find {|m2| m2["name"] == m1["name"] }
186
- end
187
- diff << {
188
- :type => m1["tagname"],
189
- :name => m1["name"],
190
- :what => "removed",
191
- :other => other ? {
192
- :type => other["tagname"],
193
- :static => other["static"],
194
- :private => other["private"],
195
- :protected => other["protected"],
196
- } : nil
197
- }
198
- end
199
- end
200
-
201
- each_member(cls2) do |m2|
202
- next unless normal_public_member?(m2) && m2["owner"] == cls2["name"] && !checked_members[m2["id"]]
203
-
204
- m1 = find_member(cls1, m2)
205
-
206
- if m1
207
- changes = []
208
- if visibility(m1) != visibility(m2)
209
- changes << {
210
- :what => "visibility",
211
- :a => visibility(m1),
212
- :b => visibility(m2),
213
- }
214
- end
215
-
216
- if changes.length > 0
217
- diff << {
218
- :type => m2["tagname"],
219
- :name => m2["name"],
220
- :what => "changed",
221
- :changes => changes,
222
- }
223
- end
224
-
225
- elsif !m1 && m2["name"] != "constructor" && m2["name"] != ""
226
- diff << {
227
- :type => m2["tagname"],
228
- :name => m2["name"],
229
- :what => "added",
230
- }
231
- end
232
- end
233
-
234
- diff
235
- end
236
-
237
-
238
- old_classes = read_all_classes(options[:old_classes])
239
- new_classes = read_all_classes(options[:new_classes])
240
- ignored_members = options[:ignore] ? read_ignored_members(options[:ignore]) : {}
241
-
242
- diff_data = []
243
- old_classes.each_pair do |name, cls|
244
- # only go through classes, not alternate names
245
- if name == cls["name"] && !cls["private"]
246
- if options[:remap][name]
247
- new_cls = new_classes[options[:remap][name]]
248
- else
249
- new_cls = new_classes[name]
250
- end
251
-
252
- diff_data << {
253
- :name => cls["name"],
254
- :found => (new_cls || ignored_members[name]) ? :both : :old,
255
- :new_name => new_cls && new_cls["name"],
256
- :diff => new_cls ? compare_classes(cls, new_cls) : [],
257
- }
258
- end
259
- end
260
-
261
- new_classes.each_pair do |name, cls|
262
- if name == cls["name"] && !cls["private"]
263
- unless old_classes[name]
264
- diff_data << {
265
- :name => cls["name"],
266
- :found => :new,
267
- :diff => [],
268
- }
269
- end
270
- end
271
- end
272
-
273
- # Throw away ignored members and everything except configs
274
- diff_data.each do |cls|
275
- cls[:diff] = cls[:diff].find_all do |m|
276
- !ignored_members[cls[:name]+"#"+m[:name]] && (!options[:type] || m[:type] == options[:type])
277
- end
278
- end
279
-
280
- # Choose title based on filename
281
- if options[:out_file] =~ /touch/
282
- title = "Comparison of Touch 1.1.1 and Touch 2.0.0"
283
- else
284
- title = "Comparison of Ext 4.0.7 and Ext 4.1.1"
285
- end
286
-
287
- # do HTML output
288
- html = []
289
- html << <<-EOHTML
290
- <!DOCTYPE html>
291
- <html>
292
- <head>
293
- <title>#{options[:title]}</title>
294
- <style type="text/css">
295
- body { font-family: Georgia, serif; }
296
- li h2 { font-size: medium; font-weight: normal; }
297
- li ul { display: none; }
298
- b.unchanged { color: green; }
299
- b.removed { color: red; }
300
- b.new { color: black; }
301
- </style>
302
- <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
303
- <script>
304
- $(function() {
305
- $("h2 > a").live("click", function() {
306
- $("ul", $(this).parent().parent()).toggle();
307
- return false;
308
- });
309
- });
310
- </script>
311
- </head>
312
- <body>
313
- <h1>#{options[:title]}</h1>
314
- EOHTML
315
-
316
- html << "<ul>"
317
- diff_data.sort! {|a, b| a[:name] <=> b[:name] }
318
- diff_data.each do |cls|
319
- if cls[:found] == :both
320
- if cls[:diff].length > 0 || options[:show_unchanged]
321
- html << "<li>"
322
- new_name = (cls[:new_name] == cls[:name] ? "" : " --> " + cls[:new_name])
323
- diff_count = cls[:diff].length > 0 ? "(#{cls[:diff].length} changes)" : ""
324
- link = cls[:diff].length > 0 ? "<a href='#expand'>#{cls[:name]}</a>" : cls[:name]+" <b class='unchanged'>Unchanged</b>"
325
- html << "<h2>#{link} #{new_name} #{diff_count}</h2>"
326
- if cls[:diff].length > 0
327
- html << "<ul>"
328
- cls[:diff].each do |m|
329
- html << "<li>"
330
- html << m[:what] + " " + m[:type] + " " + m[:name]
331
- if m[:other]
332
- o = m[:other]
333
- stat = o[:static] ? 'static' : ''
334
- priv = o[:private] ? 'private' : ''
335
- prot = o[:protected] ? 'protected' : ''
336
- html << " (found #{stat} #{priv} #{prot} #{o[:type]} with the same name)"
337
- elsif m[:changes]
338
- m[:changes].each do |c|
339
- html << " (#{c[:what]} changed from #{CGI.escapeHTML(c[:a])} to #{CGI.escapeHTML(c[:b])})"
340
- end
341
- end
342
- end
343
- html << "</li>"
344
- end
345
- html << "</li>"
346
- end
347
- elsif cls[:found] == :old
348
- html << "<li>"
349
- html << "<h2>" + cls[:name] + " <b class='removed'>Removed</b></h2>"
350
- html << "</li>"
351
- elsif cls[:found] == :new
352
- html << "<li>"
353
- html << "<h2>" + cls[:name] + " <b class='new'>New class</b></h2>"
354
- html << "</li>"
355
- end
356
- html << "</li>"
357
- end
358
- html << "</ul>"
359
-
360
- html << "<h2>Summary</h2>"
361
- dd = diff_data
362
- html << "<p>" + dd.find_all {|c| c[:found] == :old }.length.to_s + " classes removed</p>"
363
- html << "<p>" + dd.find_all {|c| c[:found] == :new }.length.to_s + " new classes added</p>"
364
- html << "<p>" + dd.find_all {|c| c[:found] == :both && c[:diff].length == 0 }.length.to_s + " classes exactly the same</p>"
365
- html << "<p>" + dd.find_all {|c| c[:found] == :both && c[:name] == c[:new_name] }.length.to_s + " classes with same name</p>"
366
- html << "<p>" + dd.find_all {|c| c[:found] == :both && c[:name] != c[:new_name] }.length.to_s + " renamed classes</p>"
367
- html << "<p>" + dd.find_all {|c| c[:diff].length > 0 }.length.to_s + " classes with changed members</p>"
368
- html << "<p>" + dd.map {|c| c[:diff].length }.inject {|sum,x| sum + x }.to_s + " changed members</p>"
369
-
370
-
371
- html << "</body>"
372
- html << "</html>"
373
-
374
- File.open(options[:out_file], 'w') {|f| f.write(html.join("\n")) }