javascriptmvc 3.0.0.pre15

Sign up to get free protection for your applications and to get access to all the features.
Files changed (550) hide show
  1. data/.document +5 -0
  2. data/.gitignore +21 -0
  3. data/README.markdown +15 -0
  4. data/Rakefile +17 -0
  5. data/VERSION +1 -0
  6. data/bin/jmvc-build +4 -0
  7. data/bin/jmvc-gen +4 -0
  8. data/bin/jmvc-get +4 -0
  9. data/bin/jmvc-init +4 -0
  10. data/bin/jmvc-update +4 -0
  11. data/lib/javascriptmvc.rb +97 -0
  12. data/lib/javascriptmvc/documentjs/README +0 -0
  13. data/lib/javascriptmvc/documentjs/add.js +76 -0
  14. data/lib/javascriptmvc/documentjs/application.js +285 -0
  15. data/lib/javascriptmvc/documentjs/attribute.js +61 -0
  16. data/lib/javascriptmvc/documentjs/baseclass.js +537 -0
  17. data/lib/javascriptmvc/documentjs/class.js +141 -0
  18. data/lib/javascriptmvc/documentjs/constructor.js +145 -0
  19. data/lib/javascriptmvc/documentjs/directives.js +394 -0
  20. data/lib/javascriptmvc/documentjs/distance.js +49 -0
  21. data/lib/javascriptmvc/documentjs/document +21 -0
  22. data/lib/javascriptmvc/documentjs/documentjs.js +76 -0
  23. data/lib/javascriptmvc/documentjs/file.js +55 -0
  24. data/lib/javascriptmvc/documentjs/function.js +112 -0
  25. data/lib/javascriptmvc/documentjs/jmvcdoc/images/close.png +0 -0
  26. data/lib/javascriptmvc/documentjs/jmvcdoc/images/download.png +0 -0
  27. data/lib/javascriptmvc/documentjs/jmvcdoc/images/fav-off.png +0 -0
  28. data/lib/javascriptmvc/documentjs/jmvcdoc/images/fav-on.png +0 -0
  29. data/lib/javascriptmvc/documentjs/jmvcdoc/images/favicon.ico +0 -0
  30. data/lib/javascriptmvc/documentjs/jmvcdoc/images/logo.png +0 -0
  31. data/lib/javascriptmvc/documentjs/jmvcdoc/images/pre.png +0 -0
  32. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  33. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  34. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  35. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  36. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  37. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  38. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  39. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  40. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-icons_222222_256x240.png +0 -0
  41. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-icons_2e83ff_256x240.png +0 -0
  42. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-icons_454545_256x240.png +0 -0
  43. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-icons_888888_256x240.png +0 -0
  44. data/lib/javascriptmvc/documentjs/jmvcdoc/images/ui-icons_cd0a0a_256x240.png +0 -0
  45. data/lib/javascriptmvc/documentjs/jmvcdoc/images/video.png +0 -0
  46. data/lib/javascriptmvc/documentjs/jmvcdoc/production.js +552 -0
  47. data/lib/javascriptmvc/documentjs/jmvcdoc/style.css +354 -0
  48. data/lib/javascriptmvc/documentjs/jmvcdoc/summary.ejs +134 -0
  49. data/lib/javascriptmvc/documentjs/json.js +172 -0
  50. data/lib/javascriptmvc/documentjs/page.js +107 -0
  51. data/lib/javascriptmvc/documentjs/pair.js +302 -0
  52. data/lib/javascriptmvc/documentjs/prototype.js +13 -0
  53. data/lib/javascriptmvc/documentjs/scripts/build.js +6 -0
  54. data/lib/javascriptmvc/documentjs/static.js +25 -0
  55. data/lib/javascriptmvc/documentjs/test/docs/Something.json +1 -0
  56. data/lib/javascriptmvc/documentjs/test/docs/searchData.json +1 -0
  57. data/lib/javascriptmvc/documentjs/test/something.js +8 -0
  58. data/lib/javascriptmvc/documentjs/test/test.html +6 -0
  59. data/lib/javascriptmvc/documentjs/test_doc.html +1 -0
  60. data/lib/javascriptmvc/documentjs/update +5 -0
  61. data/lib/javascriptmvc/funcunit/README +17 -0
  62. data/lib/javascriptmvc/funcunit/autosuggest/auto_suggest.js +495 -0
  63. data/lib/javascriptmvc/funcunit/autosuggest/autosuggest.css +24 -0
  64. data/lib/javascriptmvc/funcunit/autosuggest/autosuggest.html +26 -0
  65. data/lib/javascriptmvc/funcunit/autosuggest/autosuggest.js +17 -0
  66. data/lib/javascriptmvc/funcunit/autosuggest/autosuggest_test.js +14 -0
  67. data/lib/javascriptmvc/funcunit/autosuggest/funcunit.html +15 -0
  68. data/lib/javascriptmvc/funcunit/build.js +54 -0
  69. data/lib/javascriptmvc/funcunit/drivers/selenium.js +129 -0
  70. data/lib/javascriptmvc/funcunit/drivers/standard.js +169 -0
  71. data/lib/javascriptmvc/funcunit/envjs +13 -0
  72. data/lib/javascriptmvc/funcunit/envjs.bat +28 -0
  73. data/lib/javascriptmvc/funcunit/funcunit.html +20 -0
  74. data/lib/javascriptmvc/funcunit/funcunit.js +1509 -0
  75. data/lib/javascriptmvc/funcunit/java/selenium-java-client-driver.jar +0 -0
  76. data/lib/javascriptmvc/funcunit/java/selenium-server.jar +0 -0
  77. data/lib/javascriptmvc/funcunit/qunit.html +22 -0
  78. data/lib/javascriptmvc/funcunit/qunit/qunit.css +119 -0
  79. data/lib/javascriptmvc/funcunit/qunit/qunit.js +1124 -0
  80. data/lib/javascriptmvc/funcunit/qunit/rhino/rhino.js +24 -0
  81. data/lib/javascriptmvc/funcunit/qunit/test/qunit.html +18 -0
  82. data/lib/javascriptmvc/funcunit/qunit/test/test.js +7 -0
  83. data/lib/javascriptmvc/funcunit/resources/funcunit.js +31 -0
  84. data/lib/javascriptmvc/funcunit/resources/jquery.js +6378 -0
  85. data/lib/javascriptmvc/funcunit/resources/json.js +201 -0
  86. data/lib/javascriptmvc/funcunit/resources/selenium_start.js +43 -0
  87. data/lib/javascriptmvc/funcunit/scripts/run.js +36 -0
  88. data/lib/javascriptmvc/funcunit/scripts/test.js +55 -0
  89. data/lib/javascriptmvc/funcunit/settings.js +10 -0
  90. data/lib/javascriptmvc/funcunit/synthetic/browsers.js +151 -0
  91. data/lib/javascriptmvc/funcunit/synthetic/demo.html +150 -0
  92. data/lib/javascriptmvc/funcunit/synthetic/demo/record.js +254 -0
  93. data/lib/javascriptmvc/funcunit/synthetic/drag/drag.html +41 -0
  94. data/lib/javascriptmvc/funcunit/synthetic/drag/drag.js +268 -0
  95. data/lib/javascriptmvc/funcunit/synthetic/drag/qunit.html +20 -0
  96. data/lib/javascriptmvc/funcunit/synthetic/drag/test/qunit/drag_test.js +195 -0
  97. data/lib/javascriptmvc/funcunit/synthetic/drag/test/qunit/qunit.js +7 -0
  98. data/lib/javascriptmvc/funcunit/synthetic/key.js +832 -0
  99. data/lib/javascriptmvc/funcunit/synthetic/mouse.js +291 -0
  100. data/lib/javascriptmvc/funcunit/synthetic/qunit.html +22 -0
  101. data/lib/javascriptmvc/funcunit/synthetic/recorder.html +303 -0
  102. data/lib/javascriptmvc/funcunit/synthetic/synthetic.html +85 -0
  103. data/lib/javascriptmvc/funcunit/synthetic/synthetic.js +796 -0
  104. data/lib/javascriptmvc/funcunit/synthetic/test/qunit/key_test.js +391 -0
  105. data/lib/javascriptmvc/funcunit/synthetic/test/qunit/mouse_test.js +233 -0
  106. data/lib/javascriptmvc/funcunit/synthetic/test/qunit/qunit.js +6 -0
  107. data/lib/javascriptmvc/funcunit/synthetic/test/qunit/synthetic_test.js +91 -0
  108. data/lib/javascriptmvc/funcunit/synthetic/test/submit.html +29 -0
  109. data/lib/javascriptmvc/funcunit/synthetic/test/submitted.html +3 -0
  110. data/lib/javascriptmvc/funcunit/template.html +18 -0
  111. data/lib/javascriptmvc/funcunit/test/drag.html +63 -0
  112. data/lib/javascriptmvc/funcunit/test/funcunit/funcunit.js +3 -0
  113. data/lib/javascriptmvc/funcunit/test/funcunit/funcunit_test.js +87 -0
  114. data/lib/javascriptmvc/funcunit/test/funcunit/open_test.js +28 -0
  115. data/lib/javascriptmvc/funcunit/test/funcunit/protodrag_test.js +13 -0
  116. data/lib/javascriptmvc/funcunit/test/funcunit/syn_test.js +41 -0
  117. data/lib/javascriptmvc/funcunit/test/jquery.event.drag.js +801 -0
  118. data/lib/javascriptmvc/funcunit/test/jquery.event.drop.js +439 -0
  119. data/lib/javascriptmvc/funcunit/test/jquery.js +6360 -0
  120. data/lib/javascriptmvc/funcunit/test/myapp.html +103 -0
  121. data/lib/javascriptmvc/funcunit/test/myotherapp.html +15 -0
  122. data/lib/javascriptmvc/funcunit/test/protodrag/dragdrop.js +974 -0
  123. data/lib/javascriptmvc/funcunit/test/protodrag/effects.js +1123 -0
  124. data/lib/javascriptmvc/funcunit/test/protodrag/funcunit_test.js +20 -0
  125. data/lib/javascriptmvc/funcunit/test/protodrag/myapp.html +63 -0
  126. data/lib/javascriptmvc/funcunit/test/protodrag/prototype.js +4874 -0
  127. data/lib/javascriptmvc/funcunit/test/protodrag/scriptaculous.js +68 -0
  128. data/lib/javascriptmvc/funcunit/update +5 -0
  129. data/lib/javascriptmvc/jquery/README +24 -0
  130. data/lib/javascriptmvc/jquery/build.js +73 -0
  131. data/lib/javascriptmvc/jquery/class/class.html +109 -0
  132. data/lib/javascriptmvc/jquery/class/class.js +627 -0
  133. data/lib/javascriptmvc/jquery/class/qunit.html +15 -0
  134. data/lib/javascriptmvc/jquery/class/test/qunit/class_test.js +146 -0
  135. data/lib/javascriptmvc/jquery/class/test/qunit/qunit.js +5 -0
  136. data/lib/javascriptmvc/jquery/class/test/qunit/test.html +20 -0
  137. data/lib/javascriptmvc/jquery/controller/controller.html +89 -0
  138. data/lib/javascriptmvc/jquery/controller/controller.js +735 -0
  139. data/lib/javascriptmvc/jquery/controller/history/history.html +44 -0
  140. data/lib/javascriptmvc/jquery/controller/history/history.js +177 -0
  141. data/lib/javascriptmvc/jquery/controller/qunit.html +21 -0
  142. data/lib/javascriptmvc/jquery/controller/subscribe/funcunit.html +21 -0
  143. data/lib/javascriptmvc/jquery/controller/subscribe/scripts/compress.js +6 -0
  144. data/lib/javascriptmvc/jquery/controller/subscribe/scripts/docs.js +6 -0
  145. data/lib/javascriptmvc/jquery/controller/subscribe/subscribe.html +56 -0
  146. data/lib/javascriptmvc/jquery/controller/subscribe/subscribe.js +27 -0
  147. data/lib/javascriptmvc/jquery/controller/subscribe/test/funcunit/funcunit.js +3 -0
  148. data/lib/javascriptmvc/jquery/controller/subscribe/test/funcunit/run.js +10 -0
  149. data/lib/javascriptmvc/jquery/controller/subscribe/test/funcunit/subscribe_test.js +11 -0
  150. data/lib/javascriptmvc/jquery/controller/subscribe/test/qunit/qunit.html +21 -0
  151. data/lib/javascriptmvc/jquery/controller/subscribe/test/qunit/qunit.js +9 -0
  152. data/lib/javascriptmvc/jquery/controller/subscribe/test/qunit/run.js +2 -0
  153. data/lib/javascriptmvc/jquery/controller/subscribe/test/qunit/subscribe_test.js +4 -0
  154. data/lib/javascriptmvc/jquery/controller/test/qunit/controller_test.js +170 -0
  155. data/lib/javascriptmvc/jquery/controller/test/qunit/qunit.js +9 -0
  156. data/lib/javascriptmvc/jquery/controller/view/qunit.html +21 -0
  157. data/lib/javascriptmvc/jquery/controller/view/test/qunit/controller_view_test.js +15 -0
  158. data/lib/javascriptmvc/jquery/controller/view/test/qunit/qunit.js +6 -0
  159. data/lib/javascriptmvc/jquery/controller/view/test/qunit/views/init.micro +1 -0
  160. data/lib/javascriptmvc/jquery/controller/view/view.js +102 -0
  161. data/lib/javascriptmvc/jquery/dom/closest/closest.html +23 -0
  162. data/lib/javascriptmvc/jquery/dom/closest/closest.js +47 -0
  163. data/lib/javascriptmvc/jquery/dom/closest/funcunit.html +20 -0
  164. data/lib/javascriptmvc/jquery/dom/closest/qunit.html +22 -0
  165. data/lib/javascriptmvc/jquery/dom/closest/scripts/compress.js +3 -0
  166. data/lib/javascriptmvc/jquery/dom/closest/scripts/doc.js +4 -0
  167. data/lib/javascriptmvc/jquery/dom/closest/scripts/test.js +55 -0
  168. data/lib/javascriptmvc/jquery/dom/closest/settings.js +40 -0
  169. data/lib/javascriptmvc/jquery/dom/closest/test/funcunit/funcunit.js +3 -0
  170. data/lib/javascriptmvc/jquery/dom/closest/test/funcunit/tests/basic.js +11 -0
  171. data/lib/javascriptmvc/jquery/dom/closest/test/qunit/qunit.js +4 -0
  172. data/lib/javascriptmvc/jquery/dom/closest/test/qunit/tests/basic.js +4 -0
  173. data/lib/javascriptmvc/jquery/dom/compare/compare.html +88 -0
  174. data/lib/javascriptmvc/jquery/dom/compare/compare.js +67 -0
  175. data/lib/javascriptmvc/jquery/dom/compare/qunit.html +20 -0
  176. data/lib/javascriptmvc/jquery/dom/compare/test/qunit/compare_test.js +19 -0
  177. data/lib/javascriptmvc/jquery/dom/compare/test/qunit/qunit.js +5 -0
  178. data/lib/javascriptmvc/jquery/dom/cookie/cookie.html +25 -0
  179. data/lib/javascriptmvc/jquery/dom/cookie/cookie.js +119 -0
  180. data/lib/javascriptmvc/jquery/dom/cookie/scripts/compress.js +6 -0
  181. data/lib/javascriptmvc/jquery/dom/cookie/scripts/doc.js +6 -0
  182. data/lib/javascriptmvc/jquery/dom/cookie/test/funcunit/cookie_test.js +11 -0
  183. data/lib/javascriptmvc/jquery/dom/cookie/test/funcunit/funcunit.html +21 -0
  184. data/lib/javascriptmvc/jquery/dom/cookie/test/funcunit/funcunit.js +3 -0
  185. data/lib/javascriptmvc/jquery/dom/cookie/test/funcunit/run.js +10 -0
  186. data/lib/javascriptmvc/jquery/dom/cookie/test/qunit/cookie_test.js +4 -0
  187. data/lib/javascriptmvc/jquery/dom/cookie/test/qunit/qunit.html +21 -0
  188. data/lib/javascriptmvc/jquery/dom/cookie/test/qunit/qunit.js +9 -0
  189. data/lib/javascriptmvc/jquery/dom/cookie/test/qunit/run.js +2 -0
  190. data/lib/javascriptmvc/jquery/dom/cur_styles/cur_styles.html +71 -0
  191. data/lib/javascriptmvc/jquery/dom/cur_styles/cur_styles.js +120 -0
  192. data/lib/javascriptmvc/jquery/dom/cur_styles/qunit.html +22 -0
  193. data/lib/javascriptmvc/jquery/dom/cur_styles/test/qunit/curStyles.micro +3 -0
  194. data/lib/javascriptmvc/jquery/dom/cur_styles/test/qunit/cur_styles_test.js +22 -0
  195. data/lib/javascriptmvc/jquery/dom/cur_styles/test/qunit/outer.micro +0 -0
  196. data/lib/javascriptmvc/jquery/dom/cur_styles/test/qunit/qunit.js +4 -0
  197. data/lib/javascriptmvc/jquery/dom/dimensions/curstyles.html +22 -0
  198. data/lib/javascriptmvc/jquery/dom/dimensions/dimensions.html +132 -0
  199. data/lib/javascriptmvc/jquery/dom/dimensions/dimensions.js +140 -0
  200. data/lib/javascriptmvc/jquery/dom/dimensions/qunit.html +22 -0
  201. data/lib/javascriptmvc/jquery/dom/dimensions/test/qunit/curStyles.micro +3 -0
  202. data/lib/javascriptmvc/jquery/dom/dimensions/test/qunit/dimensions_test.js +8 -0
  203. data/lib/javascriptmvc/jquery/dom/dimensions/test/qunit/outer.micro +0 -0
  204. data/lib/javascriptmvc/jquery/dom/dimensions/test/qunit/qunit.js +4 -0
  205. data/lib/javascriptmvc/jquery/dom/dom.js +7 -0
  206. data/lib/javascriptmvc/jquery/dom/fixture/fixture.html +143 -0
  207. data/lib/javascriptmvc/jquery/dom/fixture/fixture.js +521 -0
  208. data/lib/javascriptmvc/jquery/dom/fixture/fixtures/messages.html +31 -0
  209. data/lib/javascriptmvc/jquery/dom/fixture/fixtures/test.json +3 -0
  210. data/lib/javascriptmvc/jquery/dom/fixture/qunit.html +22 -0
  211. data/lib/javascriptmvc/jquery/dom/fixture/test/qunit/fixture_test.js +50 -0
  212. data/lib/javascriptmvc/jquery/dom/fixture/test/qunit/qunit.js +4 -0
  213. data/lib/javascriptmvc/jquery/dom/form_params/form_params.html +57 -0
  214. data/lib/javascriptmvc/jquery/dom/form_params/form_params.js +106 -0
  215. data/lib/javascriptmvc/jquery/dom/form_params/qunit.html +22 -0
  216. data/lib/javascriptmvc/jquery/dom/form_params/test/qunit/basics.micro +27 -0
  217. data/lib/javascriptmvc/jquery/dom/form_params/test/qunit/checkbox.micro +20 -0
  218. data/lib/javascriptmvc/jquery/dom/form_params/test/qunit/form_params_test.js +43 -0
  219. data/lib/javascriptmvc/jquery/dom/form_params/test/qunit/qunit.js +4 -0
  220. data/lib/javascriptmvc/jquery/dom/form_params/test/qunit/truthy.micro +8 -0
  221. data/lib/javascriptmvc/jquery/dom/within/within.js +67 -0
  222. data/lib/javascriptmvc/jquery/error/background.png +0 -0
  223. data/lib/javascriptmvc/jquery/error/error.html +31 -0
  224. data/lib/javascriptmvc/jquery/error/error.js +227 -0
  225. data/lib/javascriptmvc/jquery/error/setup.js +4 -0
  226. data/lib/javascriptmvc/jquery/error/test/test.html +23 -0
  227. data/lib/javascriptmvc/jquery/error/test/test.js +4 -0
  228. data/lib/javascriptmvc/jquery/event/default/compress.js +7 -0
  229. data/lib/javascriptmvc/jquery/event/default/default.html +85 -0
  230. data/lib/javascriptmvc/jquery/event/default/default.js +193 -0
  231. data/lib/javascriptmvc/jquery/event/default/defaultjquery.html +117 -0
  232. data/lib/javascriptmvc/jquery/event/default/qunit.html +22 -0
  233. data/lib/javascriptmvc/jquery/event/default/test/qunit/default_test.js +104 -0
  234. data/lib/javascriptmvc/jquery/event/default/test/qunit/html.micro +8 -0
  235. data/lib/javascriptmvc/jquery/event/default/test/qunit/qunit.js +6 -0
  236. data/lib/javascriptmvc/jquery/event/default/test/qunit/run.js +2 -0
  237. data/lib/javascriptmvc/jquery/event/destroyed/destroyed.html +24 -0
  238. data/lib/javascriptmvc/jquery/event/destroyed/destroyed.js +40 -0
  239. data/lib/javascriptmvc/jquery/event/destroyed/destroyed_menu.html +96 -0
  240. data/lib/javascriptmvc/jquery/event/destroyed/qunit.html +21 -0
  241. data/lib/javascriptmvc/jquery/event/destroyed/test/qunit/destroyed_test.js +12 -0
  242. data/lib/javascriptmvc/jquery/event/destroyed/test/qunit/qunit.js +6 -0
  243. data/lib/javascriptmvc/jquery/event/drag/drag.html +105 -0
  244. data/lib/javascriptmvc/jquery/event/drag/drag.js +466 -0
  245. data/lib/javascriptmvc/jquery/event/drag/limit/limit.html +74 -0
  246. data/lib/javascriptmvc/jquery/event/drag/limit/limit.js +56 -0
  247. data/lib/javascriptmvc/jquery/event/drag/limit/scripts/compress.js +6 -0
  248. data/lib/javascriptmvc/jquery/event/drag/limit/scripts/doc.js +6 -0
  249. data/lib/javascriptmvc/jquery/event/drag/limit/test/funcunit/funcunit.html +21 -0
  250. data/lib/javascriptmvc/jquery/event/drag/limit/test/funcunit/funcunit.js +3 -0
  251. data/lib/javascriptmvc/jquery/event/drag/limit/test/funcunit/limit_test.js +11 -0
  252. data/lib/javascriptmvc/jquery/event/drag/limit/test/funcunit/run.js +10 -0
  253. data/lib/javascriptmvc/jquery/event/drag/limit/test/qunit/limit_test.js +4 -0
  254. data/lib/javascriptmvc/jquery/event/drag/limit/test/qunit/qunit.html +21 -0
  255. data/lib/javascriptmvc/jquery/event/drag/limit/test/qunit/qunit.js +9 -0
  256. data/lib/javascriptmvc/jquery/event/drag/limit/test/qunit/run.js +2 -0
  257. data/lib/javascriptmvc/jquery/event/drag/qunit.html +16 -0
  258. data/lib/javascriptmvc/jquery/event/drag/scroll/scroll.js +120 -0
  259. data/lib/javascriptmvc/jquery/event/drag/test/qunit/drag_test.js +130 -0
  260. data/lib/javascriptmvc/jquery/event/drag/test/qunit/qunit.js +4 -0
  261. data/lib/javascriptmvc/jquery/event/drop/drop.html +74 -0
  262. data/lib/javascriptmvc/jquery/event/drop/drop.js +301 -0
  263. data/lib/javascriptmvc/jquery/event/event.js +6 -0
  264. data/lib/javascriptmvc/jquery/event/hashchange/hashchange.js +245 -0
  265. data/lib/javascriptmvc/jquery/event/hover/compress.js +7 -0
  266. data/lib/javascriptmvc/jquery/event/hover/hover.html +56 -0
  267. data/lib/javascriptmvc/jquery/event/hover/hover.js +219 -0
  268. data/lib/javascriptmvc/jquery/event/hover/qunit.html +16 -0
  269. data/lib/javascriptmvc/jquery/event/hover/test/qunit/hover_test.js +55 -0
  270. data/lib/javascriptmvc/jquery/event/hover/test/qunit/qunit.js +4 -0
  271. data/lib/javascriptmvc/jquery/event/livehack/compress.js +7 -0
  272. data/lib/javascriptmvc/jquery/event/livehack/funcunit.html +21 -0
  273. data/lib/javascriptmvc/jquery/event/livehack/livehack.html +25 -0
  274. data/lib/javascriptmvc/jquery/event/livehack/livehack.js +167 -0
  275. data/lib/javascriptmvc/jquery/event/offline/funcunit.html +20 -0
  276. data/lib/javascriptmvc/jquery/event/offline/offline.html +26 -0
  277. data/lib/javascriptmvc/jquery/event/offline/offline.js +36 -0
  278. data/lib/javascriptmvc/jquery/event/offline/qunit.html +22 -0
  279. data/lib/javascriptmvc/jquery/event/offline/scripts/compress.js +3 -0
  280. data/lib/javascriptmvc/jquery/event/offline/scripts/doc.js +4 -0
  281. data/lib/javascriptmvc/jquery/event/offline/settings.js +41 -0
  282. data/lib/javascriptmvc/jquery/event/offline/test/funcunit/funcunit.js +3 -0
  283. data/lib/javascriptmvc/jquery/event/offline/test/funcunit/tests/basic.js +11 -0
  284. data/lib/javascriptmvc/jquery/event/offline/test/qunit/qunit.js +4 -0
  285. data/lib/javascriptmvc/jquery/event/offline/test/qunit/tests/basic.js +4 -0
  286. data/lib/javascriptmvc/jquery/event/resize/funcunit.html +20 -0
  287. data/lib/javascriptmvc/jquery/event/resize/qunit.html +22 -0
  288. data/lib/javascriptmvc/jquery/event/resize/resize.html +23 -0
  289. data/lib/javascriptmvc/jquery/event/resize/resize.js +50 -0
  290. data/lib/javascriptmvc/jquery/event/resize/scripts/compress.js +3 -0
  291. data/lib/javascriptmvc/jquery/event/resize/scripts/doc.js +4 -0
  292. data/lib/javascriptmvc/jquery/event/resize/scripts/test.js +55 -0
  293. data/lib/javascriptmvc/jquery/event/resize/settings.js +40 -0
  294. data/lib/javascriptmvc/jquery/event/resize/test/funcunit/funcunit.js +3 -0
  295. data/lib/javascriptmvc/jquery/event/resize/test/funcunit/tests/basic.js +11 -0
  296. data/lib/javascriptmvc/jquery/event/resize/test/qunit/qunit.js +4 -0
  297. data/lib/javascriptmvc/jquery/event/resize/test/qunit/tests/basic.js +4 -0
  298. data/lib/javascriptmvc/jquery/event/select/scripts/compress.js +6 -0
  299. data/lib/javascriptmvc/jquery/event/select/scripts/doc.js +6 -0
  300. data/lib/javascriptmvc/jquery/event/select/select.html +63 -0
  301. data/lib/javascriptmvc/jquery/event/select/select.js +65 -0
  302. data/lib/javascriptmvc/jquery/event/select/test/funcunit/funcunit.html +21 -0
  303. data/lib/javascriptmvc/jquery/event/select/test/funcunit/funcunit.js +3 -0
  304. data/lib/javascriptmvc/jquery/event/select/test/funcunit/run.js +10 -0
  305. data/lib/javascriptmvc/jquery/event/select/test/funcunit/select_test.js +11 -0
  306. data/lib/javascriptmvc/jquery/event/select/test/qunit/qunit.html +21 -0
  307. data/lib/javascriptmvc/jquery/event/select/test/qunit/qunit.js +5 -0
  308. data/lib/javascriptmvc/jquery/event/select/test/qunit/run.js +2 -0
  309. data/lib/javascriptmvc/jquery/event/select/test/qunit/select_test.js +4 -0
  310. data/lib/javascriptmvc/jquery/generate/app +23 -0
  311. data/lib/javascriptmvc/jquery/generate/controller +21 -0
  312. data/lib/javascriptmvc/jquery/generate/model +26 -0
  313. data/lib/javascriptmvc/jquery/generate/page +20 -0
  314. data/lib/javascriptmvc/jquery/generate/plugin +20 -0
  315. data/lib/javascriptmvc/jquery/generate/scaffold +23 -0
  316. data/lib/javascriptmvc/jquery/generate/templates/app/(application_name).css.ejs +4 -0
  317. data/lib/javascriptmvc/jquery/generate/templates/app/(application_name).html.ejs +23 -0
  318. data/lib/javascriptmvc/jquery/generate/templates/app/(application_name).js.ejs +21 -0
  319. data/lib/javascriptmvc/jquery/generate/templates/app/controllers/.ignore +0 -0
  320. data/lib/javascriptmvc/jquery/generate/templates/app/docs/.ignore +0 -0
  321. data/lib/javascriptmvc/jquery/generate/templates/app/fixtures/.ignore +0 -0
  322. data/lib/javascriptmvc/jquery/generate/templates/app/funcunit.html.ejs +15 -0
  323. data/lib/javascriptmvc/jquery/generate/templates/app/models/.ignore +0 -0
  324. data/lib/javascriptmvc/jquery/generate/templates/app/qunit.html.ejs +20 -0
  325. data/lib/javascriptmvc/jquery/generate/templates/app/resources/.ignore +0 -0
  326. data/lib/javascriptmvc/jquery/generate/templates/app/scripts/build.js.ejs +6 -0
  327. data/lib/javascriptmvc/jquery/generate/templates/app/scripts/clean.js.ejs +6 -0
  328. data/lib/javascriptmvc/jquery/generate/templates/app/scripts/docs.js.ejs +4 -0
  329. data/lib/javascriptmvc/jquery/generate/templates/app/test/funcunit/(application_name)_test.js.ejs +9 -0
  330. data/lib/javascriptmvc/jquery/generate/templates/app/test/funcunit/funcunit.js.ejs +3 -0
  331. data/lib/javascriptmvc/jquery/generate/templates/app/test/qunit/(application_name)_test.js.ejs +5 -0
  332. data/lib/javascriptmvc/jquery/generate/templates/app/test/qunit/qunit.js.ejs +3 -0
  333. data/lib/javascriptmvc/jquery/generate/templates/app/views/.ignore +0 -0
  334. data/lib/javascriptmvc/jquery/generate/templates/controller/controllers/(underscore)_controller.js.ejs +12 -0
  335. data/lib/javascriptmvc/jquery/generate/templates/model/fixtures.link +1 -0
  336. data/lib/javascriptmvc/jquery/generate/templates/model/models.link +1 -0
  337. data/lib/javascriptmvc/jquery/generate/templates/model/test/qunit.link +1 -0
  338. data/lib/javascriptmvc/jquery/generate/templates/page.ejs +23 -0
  339. data/lib/javascriptmvc/jquery/generate/templates/plugin/(application_name).html.ejs +23 -0
  340. data/lib/javascriptmvc/jquery/generate/templates/plugin/(application_name).js.ejs +3 -0
  341. data/lib/javascriptmvc/jquery/generate/templates/plugin/fixtures/.ignore +0 -0
  342. data/lib/javascriptmvc/jquery/generate/templates/plugin/funcunit.html.ejs +15 -0
  343. data/lib/javascriptmvc/jquery/generate/templates/plugin/qunit.html.ejs +20 -0
  344. data/lib/javascriptmvc/jquery/generate/templates/plugin/resources/.ignore +0 -0
  345. data/lib/javascriptmvc/jquery/generate/templates/plugin/scripts.link +1 -0
  346. data/lib/javascriptmvc/jquery/generate/templates/plugin/test.link +1 -0
  347. data/lib/javascriptmvc/jquery/generate/templates/plugin/views/.ignore +0 -0
  348. data/lib/javascriptmvc/jquery/generate/templates/scaffold/controllers/(underscore)_controller.js.ejs +96 -0
  349. data/lib/javascriptmvc/jquery/generate/templates/scaffold/fixtures/(plural).json.get.ejs +3 -0
  350. data/lib/javascriptmvc/jquery/generate/templates/scaffold/models/(underscore).js.ejs +83 -0
  351. data/lib/javascriptmvc/jquery/generate/templates/scaffold/test/funcunit/(underscore)_controller_test.js.ejs +63 -0
  352. data/lib/javascriptmvc/jquery/generate/templates/scaffold/test/qunit/(underscore)_test.js.ejs +45 -0
  353. data/lib/javascriptmvc/jquery/generate/templates/scaffold/views/(underscore)/edit.ejs.ejs +10 -0
  354. data/lib/javascriptmvc/jquery/generate/templates/scaffold/views/(underscore)/init.ejs.ejs +26 -0
  355. data/lib/javascriptmvc/jquery/generate/templates/scaffold/views/(underscore)/list.ejs.ejs +5 -0
  356. data/lib/javascriptmvc/jquery/generate/templates/scaffold/views/(underscore)/show.ejs.ejs +10 -0
  357. data/lib/javascriptmvc/jquery/jquery.js +6360 -0
  358. data/lib/javascriptmvc/jquery/lang/json/json.html +25 -0
  359. data/lib/javascriptmvc/jquery/lang/json/json.js +201 -0
  360. data/lib/javascriptmvc/jquery/lang/json/scripts/compress.js +6 -0
  361. data/lib/javascriptmvc/jquery/lang/json/scripts/doc.js +6 -0
  362. data/lib/javascriptmvc/jquery/lang/json/test/funcunit/funcunit.html +21 -0
  363. data/lib/javascriptmvc/jquery/lang/json/test/funcunit/funcunit.js +3 -0
  364. data/lib/javascriptmvc/jquery/lang/json/test/funcunit/json_test.js +11 -0
  365. data/lib/javascriptmvc/jquery/lang/json/test/funcunit/run.js +10 -0
  366. data/lib/javascriptmvc/jquery/lang/json/test/qunit/json_test.js +4 -0
  367. data/lib/javascriptmvc/jquery/lang/json/test/qunit/qunit.html +21 -0
  368. data/lib/javascriptmvc/jquery/lang/json/test/qunit/qunit.js +9 -0
  369. data/lib/javascriptmvc/jquery/lang/json/test/qunit/run.js +2 -0
  370. data/lib/javascriptmvc/jquery/lang/lang.html +27 -0
  371. data/lib/javascriptmvc/jquery/lang/lang.js +104 -0
  372. data/lib/javascriptmvc/jquery/lang/openajax/openajax.js +202 -0
  373. data/lib/javascriptmvc/jquery/lang/rsplit/rsplit.js +31 -0
  374. data/lib/javascriptmvc/jquery/lang/vector/vector.js +167 -0
  375. data/lib/javascriptmvc/jquery/model/associations/associations.html +25 -0
  376. data/lib/javascriptmvc/jquery/model/associations/associations.js +46 -0
  377. data/lib/javascriptmvc/jquery/model/associations/qunit.html +21 -0
  378. data/lib/javascriptmvc/jquery/model/associations/test/qunit/associations_test.js +51 -0
  379. data/lib/javascriptmvc/jquery/model/associations/test/qunit/qunit.js +9 -0
  380. data/lib/javascriptmvc/jquery/model/associations/test/qunit/run.js +2 -0
  381. data/lib/javascriptmvc/jquery/model/backup/backup.js +82 -0
  382. data/lib/javascriptmvc/jquery/model/json_rest/json_rest.js +91 -0
  383. data/lib/javascriptmvc/jquery/model/list/list.js +148 -0
  384. data/lib/javascriptmvc/jquery/model/list/qunit.html +16 -0
  385. data/lib/javascriptmvc/jquery/model/list/test/qunit/list_test.js +58 -0
  386. data/lib/javascriptmvc/jquery/model/list/test/qunit/qunit.js +6 -0
  387. data/lib/javascriptmvc/jquery/model/list/test/qunit/run.js +0 -0
  388. data/lib/javascriptmvc/jquery/model/model.js +537 -0
  389. data/lib/javascriptmvc/jquery/model/qunit.html +17 -0
  390. data/lib/javascriptmvc/jquery/model/store/store.js +66 -0
  391. data/lib/javascriptmvc/jquery/model/test/qunit/model_test.js +71 -0
  392. data/lib/javascriptmvc/jquery/model/test/qunit/qunit.js +5 -0
  393. data/lib/javascriptmvc/jquery/qunit.html +15 -0
  394. data/lib/javascriptmvc/jquery/test/funcunit/funcunit.html +21 -0
  395. data/lib/javascriptmvc/jquery/test/funcunit/funcunit.js +3 -0
  396. data/lib/javascriptmvc/jquery/test/funcunit/jquerytest_test.js +11 -0
  397. data/lib/javascriptmvc/jquery/test/funcunit/run.js +10 -0
  398. data/lib/javascriptmvc/jquery/test/qunit/qunit.js +22 -0
  399. data/lib/javascriptmvc/jquery/update +5 -0
  400. data/lib/javascriptmvc/jquery/view/compress.js +7 -0
  401. data/lib/javascriptmvc/jquery/view/ejs/ejs.html +25 -0
  402. data/lib/javascriptmvc/jquery/view/ejs/ejs.js +489 -0
  403. data/lib/javascriptmvc/jquery/view/ejs/funcunit.html +21 -0
  404. data/lib/javascriptmvc/jquery/view/ejs/test/funcunit/ejs_test.js +11 -0
  405. data/lib/javascriptmvc/jquery/view/ejs/test/funcunit/funcunit.js +3 -0
  406. data/lib/javascriptmvc/jquery/view/ejs/test/funcunit/run.js +10 -0
  407. data/lib/javascriptmvc/jquery/view/ejs/test/qunit/ejs_test.js +4 -0
  408. data/lib/javascriptmvc/jquery/view/ejs/test/qunit/qunit.html +21 -0
  409. data/lib/javascriptmvc/jquery/view/ejs/test/qunit/qunit.js +9 -0
  410. data/lib/javascriptmvc/jquery/view/ejs/test/qunit/run.js +2 -0
  411. data/lib/javascriptmvc/jquery/view/fulljslint.js +3774 -0
  412. data/lib/javascriptmvc/jquery/view/helpers/helpers.js +338 -0
  413. data/lib/javascriptmvc/jquery/view/jaml/compress.js +7 -0
  414. data/lib/javascriptmvc/jquery/view/jaml/funcunit.html +21 -0
  415. data/lib/javascriptmvc/jquery/view/jaml/jaml.html +25 -0
  416. data/lib/javascriptmvc/jquery/view/jaml/jaml.js +73 -0
  417. data/lib/javascriptmvc/jquery/view/jaml/node.js +149 -0
  418. data/lib/javascriptmvc/jquery/view/jaml/template.js +131 -0
  419. data/lib/javascriptmvc/jquery/view/jaml/test/funcunit/funcunit.js +3 -0
  420. data/lib/javascriptmvc/jquery/view/jaml/test/funcunit/jaml_test.js +11 -0
  421. data/lib/javascriptmvc/jquery/view/jaml/test/funcunit/run.js +10 -0
  422. data/lib/javascriptmvc/jquery/view/jaml/test/qunit/jaml_test.js +4 -0
  423. data/lib/javascriptmvc/jquery/view/jaml/test/qunit/qunit.html +21 -0
  424. data/lib/javascriptmvc/jquery/view/jaml/test/qunit/qunit.js +9 -0
  425. data/lib/javascriptmvc/jquery/view/jaml/test/qunit/run.js +2 -0
  426. data/lib/javascriptmvc/jquery/view/micro/compress.js +7 -0
  427. data/lib/javascriptmvc/jquery/view/micro/funcunit.html +21 -0
  428. data/lib/javascriptmvc/jquery/view/micro/micro.html +25 -0
  429. data/lib/javascriptmvc/jquery/view/micro/micro.js +57 -0
  430. data/lib/javascriptmvc/jquery/view/micro/test/funcunit/funcunit.js +3 -0
  431. data/lib/javascriptmvc/jquery/view/micro/test/funcunit/micro_test.js +11 -0
  432. data/lib/javascriptmvc/jquery/view/micro/test/funcunit/run.js +10 -0
  433. data/lib/javascriptmvc/jquery/view/micro/test/qunit/micro_test.js +4 -0
  434. data/lib/javascriptmvc/jquery/view/micro/test/qunit/qunit.html +21 -0
  435. data/lib/javascriptmvc/jquery/view/micro/test/qunit/qunit.js +9 -0
  436. data/lib/javascriptmvc/jquery/view/micro/test/qunit/run.js +2 -0
  437. data/lib/javascriptmvc/jquery/view/qunit.html +16 -0
  438. data/lib/javascriptmvc/jquery/view/test/compression/compression.html +12 -0
  439. data/lib/javascriptmvc/jquery/view/test/compression/compression.js +11 -0
  440. data/lib/javascriptmvc/jquery/view/test/compression/run.js +36 -0
  441. data/lib/javascriptmvc/jquery/view/test/funcunit/funcunit.js +3 -0
  442. data/lib/javascriptmvc/jquery/view/test/funcunit/run.js +10 -0
  443. data/lib/javascriptmvc/jquery/view/test/funcunit/view_test.js +11 -0
  444. data/lib/javascriptmvc/jquery/view/test/qunit/nested_plugin.ejs +1 -0
  445. data/lib/javascriptmvc/jquery/view/test/qunit/plugin.ejs +1 -0
  446. data/lib/javascriptmvc/jquery/view/test/qunit/qunit.js +9 -0
  447. data/lib/javascriptmvc/jquery/view/test/qunit/template.ejs +1 -0
  448. data/lib/javascriptmvc/jquery/view/test/qunit/template.jaml +3 -0
  449. data/lib/javascriptmvc/jquery/view/test/qunit/template.micro +1 -0
  450. data/lib/javascriptmvc/jquery/view/test/qunit/template.tmpl +1 -0
  451. data/lib/javascriptmvc/jquery/view/test/qunit/view_test.js +24 -0
  452. data/lib/javascriptmvc/jquery/view/tmpl/tmpl.js +150 -0
  453. data/lib/javascriptmvc/jquery/view/view.html +65 -0
  454. data/lib/javascriptmvc/jquery/view/view.js +296 -0
  455. data/lib/javascriptmvc/js +56 -0
  456. data/lib/javascriptmvc/js.bat +57 -0
  457. data/lib/javascriptmvc/steal/README +26 -0
  458. data/lib/javascriptmvc/steal/build/apps/apps.js +208 -0
  459. data/lib/javascriptmvc/steal/build/apps/test.js +4 -0
  460. data/lib/javascriptmvc/steal/build/build.js +281 -0
  461. data/lib/javascriptmvc/steal/build/pluginify.js +73 -0
  462. data/lib/javascriptmvc/steal/build/scripts/compiler.jar +0 -0
  463. data/lib/javascriptmvc/steal/build/scripts/scripts.js +155 -0
  464. data/lib/javascriptmvc/steal/build/styles/cssmin.js +17 -0
  465. data/lib/javascriptmvc/steal/build/styles/styles.js +84 -0
  466. data/lib/javascriptmvc/steal/build/test/basicpage.html +6 -0
  467. data/lib/javascriptmvc/steal/build/test/basicproduction.js +1 -0
  468. data/lib/javascriptmvc/steal/build/test/basicsource.js +6 -0
  469. data/lib/javascriptmvc/steal/build/test/css/css/css1.css +1 -0
  470. data/lib/javascriptmvc/steal/build/test/css/css/justin.png +0 -0
  471. data/lib/javascriptmvc/steal/build/test/css/css2.css +5 -0
  472. data/lib/javascriptmvc/steal/build/test/css/page.html +9 -0
  473. data/lib/javascriptmvc/steal/build/test/css/production.css +1 -0
  474. data/lib/javascriptmvc/steal/build/test/css/test.js +7 -0
  475. data/lib/javascriptmvc/steal/build/test/css/upload.PNG +0 -0
  476. data/lib/javascriptmvc/steal/build/test/foreign.html +6 -0
  477. data/lib/javascriptmvc/steal/build/test/foreign.js +2 -0
  478. data/lib/javascriptmvc/steal/build/test/removecode.js +11 -0
  479. data/lib/javascriptmvc/steal/build/test/run.js +57 -0
  480. data/lib/javascriptmvc/steal/build/test/stealpage.html +10 -0
  481. data/lib/javascriptmvc/steal/build/test/stealprodpage.html +10 -0
  482. data/lib/javascriptmvc/steal/build/test/test.js +3 -0
  483. data/lib/javascriptmvc/steal/buildjs +21 -0
  484. data/lib/javascriptmvc/steal/clean/beautify.js +1108 -0
  485. data/lib/javascriptmvc/steal/clean/clean.js +179 -0
  486. data/lib/javascriptmvc/steal/clean/jslint.js +5662 -0
  487. data/lib/javascriptmvc/steal/clean/test.js +7 -0
  488. data/lib/javascriptmvc/steal/cleanjs +5 -0
  489. data/lib/javascriptmvc/steal/coffee/coffee-script.js +9 -0
  490. data/lib/javascriptmvc/steal/coffee/coffee.js +56 -0
  491. data/lib/javascriptmvc/steal/dev/dev.js +83 -0
  492. data/lib/javascriptmvc/steal/end.js +1 -0
  493. data/lib/javascriptmvc/steal/generate/app +23 -0
  494. data/lib/javascriptmvc/steal/generate/ejs.js +470 -0
  495. data/lib/javascriptmvc/steal/generate/generate.js +211 -0
  496. data/lib/javascriptmvc/steal/generate/inflector.js +117 -0
  497. data/lib/javascriptmvc/steal/generate/system.js +33 -0
  498. data/lib/javascriptmvc/steal/generate/templates/app/(application_name).css.ejs +10 -0
  499. data/lib/javascriptmvc/steal/generate/templates/app/(application_name).html.ejs +18 -0
  500. data/lib/javascriptmvc/steal/generate/templates/app/(application_name).js.ejs +10 -0
  501. data/lib/javascriptmvc/steal/generate/templates/app/docs/.ignore +0 -0
  502. data/lib/javascriptmvc/steal/generate/templates/app/resources/.ignore +0 -0
  503. data/lib/javascriptmvc/steal/generate/templates/app/resources/example.coffee.ejs +5 -0
  504. data/lib/javascriptmvc/steal/generate/templates/app/resources/example.js.ejs +13 -0
  505. data/lib/javascriptmvc/steal/generate/templates/app/resources/example.less.ejs +9 -0
  506. data/lib/javascriptmvc/steal/generate/templates/app/scripts/build.js.ejs +6 -0
  507. data/lib/javascriptmvc/steal/generate/templates/app/scripts/clean.js.ejs +6 -0
  508. data/lib/javascriptmvc/steal/generate/templates/app/test/.ignore +0 -0
  509. data/lib/javascriptmvc/steal/generate/templates/page.ejs +23 -0
  510. data/lib/javascriptmvc/steal/generate/test/test.js +92 -0
  511. data/lib/javascriptmvc/steal/get/get.js +163 -0
  512. data/lib/javascriptmvc/steal/get/gets.json +10 -0
  513. data/lib/javascriptmvc/steal/get/getter.js +115 -0
  514. data/lib/javascriptmvc/steal/get/github.js +134 -0
  515. data/lib/javascriptmvc/steal/get/json.js +172 -0
  516. data/lib/javascriptmvc/steal/getjs +5 -0
  517. data/lib/javascriptmvc/steal/js +56 -0
  518. data/lib/javascriptmvc/steal/js.bat +57 -0
  519. data/lib/javascriptmvc/steal/less/less.js +117 -0
  520. data/lib/javascriptmvc/steal/less/less_engine.js +2529 -0
  521. data/lib/javascriptmvc/steal/rhino/blank.html +6 -0
  522. data/lib/javascriptmvc/steal/rhino/build.js +31 -0
  523. data/lib/javascriptmvc/steal/rhino/docs.js +68 -0
  524. data/lib/javascriptmvc/steal/rhino/empty.html +12 -0
  525. data/lib/javascriptmvc/steal/rhino/env.js +11537 -0
  526. data/lib/javascriptmvc/steal/rhino/file.js +299 -0
  527. data/lib/javascriptmvc/steal/rhino/js.jar +0 -0
  528. data/lib/javascriptmvc/steal/rhino/loader.js +8 -0
  529. data/lib/javascriptmvc/steal/rhino/prompt.js +49 -0
  530. data/lib/javascriptmvc/steal/rhino/steal.js +122 -0
  531. data/lib/javascriptmvc/steal/rhino/test.js +16 -0
  532. data/lib/javascriptmvc/steal/steal.js +1317 -0
  533. data/lib/javascriptmvc/steal/steal.production.js +23 -0
  534. data/lib/javascriptmvc/steal/test/absoluteurl.html +7 -0
  535. data/lib/javascriptmvc/steal/test/absoluteurl/absoluteurl.js +1 -0
  536. data/lib/javascriptmvc/steal/test/absoluteurl/alert.js +1 -0
  537. data/lib/javascriptmvc/steal/test/another/two.js +2 -0
  538. data/lib/javascriptmvc/steal/test/one/four.js +1 -0
  539. data/lib/javascriptmvc/steal/test/one/one.js +6 -0
  540. data/lib/javascriptmvc/steal/test/qunit/qunit.html +22 -0
  541. data/lib/javascriptmvc/steal/test/qunit/qunit.js +3 -0
  542. data/lib/javascriptmvc/steal/test/qunit/steal_test.js +197 -0
  543. data/lib/javascriptmvc/steal/test/run.js +12 -0
  544. data/lib/javascriptmvc/steal/test/steal.html +37 -0
  545. data/lib/javascriptmvc/steal/test/test.js +82 -0
  546. data/lib/javascriptmvc/steal/test/three.js +3 -0
  547. data/lib/javascriptmvc/steal/testing/test.html +20 -0
  548. data/lib/javascriptmvc/steal/testing/testing.js +48 -0
  549. data/lib/javascriptmvc/steal/update +5 -0
  550. metadata +622 -0
@@ -0,0 +1,150 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2
+ "http://www.w3.org/TR/html4/strict.dtd">
3
+ <html lang="en">
4
+ <head>
5
+ <title>Demo Page</title>
6
+ <link type="text/css" href="../../phui/smoothness/jquery-ui-1.7.2.custom.css" rel="stylesheet" />
7
+ <link type="text/css" href="../../phui/resizable/resizable.css" rel="stylesheet" />
8
+ <style type='text/css'>
9
+ body {font-family: verdana}
10
+ .error {border: solid 1px red;}
11
+ .error_text { color: red; font-size: 10px;}
12
+ td {padding: 3px;}
13
+
14
+ #first {
15
+ border: solid 1px;
16
+ height: 200px;width: 200px;
17
+ }
18
+ .ui-widget {
19
+ font-size: 1em;
20
+ }
21
+ .ui-tabs .ui-tabs-nav li a {
22
+ padding: 0.1em 0.2em
23
+ }
24
+ .ui-tabs .ui-tabs-panel {
25
+ padding: 0.5em
26
+ }
27
+ #uitabs a:focus {
28
+ outline: dashed;
29
+ }
30
+ #submitform {
31
+ border-left: dotted 1px gray;
32
+ padding: 10px;
33
+ margin-left: 10px;
34
+ }
35
+ </style>
36
+ </head>
37
+ <body>
38
+ <div class='tabarea'>
39
+ <ul id="uitabs">
40
+ <li><a href="javascript://"><span>Instructions</span></a></li>
41
+ <li><a href="javascript://"><span>Drag Drop</span></a></li>
42
+ <li><a href="javascript://"><span>Typing</span></a></li>
43
+ <li><a href="javascript://"><span>Form</span></a></li>
44
+ </ul>
45
+
46
+ <div>
47
+ <p>Welcome to the Syn demo!</p>
48
+ <p>Click, drag, and type in this page.
49
+ Your actions will be recorded as a syn-script.
50
+ You can playback this script by pressing "Replay" below.
51
+ </p>
52
+ <p>Try clicking and tabbing between tab-buttons.</p>
53
+ <div>
54
+ <ul id='uitabs2'>
55
+ <li><a href="javascript://">Alpha</a></li>
56
+ <li><a href="javascript://">Beta</a></li>
57
+ <li><a href="javascript://">Gamma</a></li>
58
+ </ul>
59
+ <div>Content Alpha</div>
60
+ <div>Content Beta</div>
61
+ <div>Content Gamma</div>
62
+ </div>
63
+ </div>
64
+ <div>
65
+ <p>Drag the gray dot.</p>
66
+ <div class='wrap' id='first'>Here is some swell content</div>
67
+ </div>
68
+ <div>
69
+ <p>Test the numeric field. It only accepts numbers.
70
+ </p>
71
+ <p><input type='text' id='numeric' /></p>
72
+ <p>You can copy and paste if you select text with the keyboard like:
73
+ [shift][left][shift-up][ctrl]c[ctrl-up][right][ctrl]v[ctrl-up]. It's
74
+ possible to make mouse text selection work, but not with this recording demo.</p>
75
+ </div>
76
+ <div>
77
+ &lt;form>
78
+ <form action='' id='submitform'>
79
+
80
+ <p id='indicator'>I turn green when this form is submitted.
81
+ </p>
82
+ <p id='changeIndicator'>I turn green when an element is changed.</p>
83
+ <div>
84
+ <label>Type enter to submit the form: </label>
85
+ <input type='text' id='clearme'/>
86
+ </div>
87
+ <div>
88
+ <label>Click to submit: </label>
89
+ <input type='submit'/>
90
+ </div>
91
+ <div>
92
+ <label>Click to toggle: </label>
93
+ <input type='checkbox' />
94
+ </div>
95
+ <div>
96
+ <label>Click to toggle: </label>
97
+ <input type='radio' name='radio' value='1'/>
98
+ <input type='radio' name='radio' value='2'/>
99
+ <input type='radio' name='radio' value='3'/>
100
+ </div>
101
+ <div>
102
+ <label>Click to change: </label>
103
+ <select>
104
+ <option>1</option><option>2</option><option>3</option>
105
+ </select>
106
+ </div>
107
+
108
+
109
+ </form>
110
+ &lt;/form>
111
+
112
+ </div>
113
+ </div>
114
+
115
+
116
+
117
+
118
+ <script type='text/javascript' src='../../steal/steal.js'></script>
119
+ <script type='text/javascript'>
120
+ steal.plugins('phui/tabs','phui/resizable','phui/key_validator').start();
121
+ </script>
122
+
123
+ <script type='text/javascript'>
124
+ $("#first").phui_resizable();
125
+ $("#uitabs, #uitabs2").phui_ui_tabs();
126
+
127
+
128
+ $(window).bind('load', function(){
129
+ $("select")[0].selectedIndex = 0;
130
+
131
+ $("#numeric").phui_key_validator({test: /^[-+]?[0-9]*\.?[0-9]*$/}).val("")
132
+ })
133
+ $("#submitform").submit(function(ev){
134
+ ev.preventDefault();
135
+ $("#indicator").css("backgroundColor","#00ff00")
136
+ setTimeout(function(){
137
+ $("#indicator").css("backgroundColor","")
138
+ },300)
139
+
140
+ }).change(function(ev){
141
+ $("#changeIndicator").css("backgroundColor","#00ff00")
142
+ setTimeout(function(){
143
+ $("#changeIndicator").css("backgroundColor","")
144
+ },300)
145
+ })
146
+ //this is to handle all click events in the form
147
+
148
+ </script>
149
+ </body>
150
+ </html>
@@ -0,0 +1,254 @@
1
+ //Safari doesn't send mouse/click on option
2
+
3
+ $(function(){
4
+ Syn.autoDelay = true;
5
+ REPLAY = false;
6
+ ADD = true;
7
+ Recorder ={
8
+ cb: function( i ) {
9
+ return function(){
10
+ $("#code div:nth("+(i)+")").css("color","black").css("font-weight","")
11
+ $("#code div:nth("+(i+1)+")").css("color","orange").css("font-weight","bold")
12
+ if(i == commands.length - 1){
13
+ Recorder.done();
14
+ }
15
+ }
16
+
17
+ },
18
+ done: function() {
19
+ ADD = true;
20
+ $("#code div").css("color","black")
21
+ }
22
+ }
23
+ var commands =[],
24
+ downKeys = [],
25
+ keytarget = null,
26
+ current = [],
27
+ mousedown,
28
+ mousemove,
29
+ mouseup,
30
+ h ={
31
+ commandsText: function( func ) {
32
+ var text = [],
33
+ command,
34
+ prev,
35
+ args;
36
+ for(var i=0; i < commands.length; i++){
37
+ command = commands[i];
38
+ args = [];
39
+ command.options && args.push(command.options);
40
+ (!prev || prev.selector !== command.selector) && args.push("$('"+command.selector+"')");
41
+ func && args.push("Recorder.cb("+i+")");
42
+
43
+ text.push(func ? "":"<div>",
44
+ i > 0 ? " ." : "Syn.",
45
+ command.type,
46
+ "(",
47
+ args.join(", "),
48
+ ")\n",
49
+ func ? "":"</div>"
50
+ )
51
+ prev = command;
52
+ }
53
+ return text.join("")
54
+ },
55
+ addCode: function( type, options, target ) {
56
+ if(!ADD){
57
+ return;
58
+ }
59
+
60
+ var selector = h.selector(target),
61
+ last = commands[commands.length - 1] || {};
62
+
63
+ if(last.type == type && type == 'type' && last.selector == selector){
64
+ //change options
65
+ last.options = options
66
+ }else if(last.type == 'type'
67
+ && type == 'click'
68
+ && last.options.lastIndexOf("\\r") == last.options.length -3
69
+ && last.selector == selector){
70
+ }
71
+ else{
72
+ commands.push({
73
+ type : type,
74
+ options: options,
75
+ selector: selector
76
+ })
77
+ }
78
+
79
+ $("#code").html(h.commandsText())
80
+ },
81
+ getKey: function( code ) {
82
+ for(var key in Syn.keycodes){
83
+ if(Syn.keycodes[key] == code){
84
+ return key
85
+ }
86
+ }
87
+ },
88
+ addKey: function( key ) {
89
+
90
+ },
91
+ showChar: function( character, target ) {
92
+ var convert = {
93
+ "\r" : "\\r",
94
+ "\t" :"\\t",
95
+ "\b" : "\\b"
96
+ }
97
+ if(convert[character]){
98
+ character = convert[character]
99
+ }else if(character == "[" || character.length > 1){
100
+ character = "["+character+"]"
101
+ }
102
+ current.push(character);
103
+
104
+ h.addCode("type",'"'+current.join("")+'"', target)
105
+ },
106
+ keydown: function( ev ) {
107
+ var key = h.getKey(ev.keyCode);
108
+
109
+ if(keytarget != ev.target){
110
+ current = [];
111
+ keytarget = ev.target;
112
+ }
113
+ if($.inArray(key, downKeys) == -1){
114
+ downKeys.push(key);
115
+ h.showChar(key, ev.target);
116
+ }
117
+ },
118
+ keyup: function( ev ) {
119
+ var key = h.getKey(ev.keyCode);
120
+ if(Syn.key.isSpecial(ev.keyCode)){
121
+ h.showChar(key+"-up", ev.target);
122
+ }
123
+
124
+ var location = $.inArray(key, downKeys);
125
+ downKeys.splice(location,1);
126
+ justKey = true;
127
+ setTimeout(function(){
128
+ justKey = false;
129
+ },20)
130
+ },
131
+ // returns a selector
132
+ selector: function( target ) {
133
+ var selector = target.nodeName.toLowerCase();
134
+ if(target.id){
135
+ return "#"+target.id
136
+ }else{
137
+ var parent = target.parentNode;
138
+ while(parent){
139
+ if(parent.id){
140
+ selector = "#"+parent.id+" "+selector;
141
+ break;
142
+ }else{
143
+ parent = parent.parentNode
144
+ }
145
+ }
146
+ }
147
+ if(target.className){
148
+ selector += "."+target.className.split(" ")[0]
149
+ }
150
+ var others = jQuery(selector, Syn.helpers.getWindow(target).document)
151
+ if(others.length > 1){
152
+ return selector+":eq("+others.index(target)+")";
153
+ }else{
154
+ return selector;
155
+ }
156
+
157
+
158
+ }
159
+ },
160
+ lastX,
161
+ lastY,
162
+ justKey = false,
163
+ mousedownH = function(ev){
164
+ mousedown = ev.target;
165
+ mousemove = 0
166
+ lastX = ev.pageX
167
+ lastY = ev.pageY;
168
+ },
169
+ mouseupH = function(ev){
170
+ if(/option/i.test(ev.target.nodeName)){
171
+
172
+ }else if(!mousemove || (lastX == ev.pageX && lastY == ev.pageY)){
173
+ h.addCode("click",undefined,ev.target)
174
+ }else if(mousemove > 2 && mousedown){
175
+ h.addCode("drag","'"+ev.clientX+"X"+ev.clientY+"'",mousedown)
176
+ }
177
+
178
+ mousedown = null;
179
+ mousemove = 0;
180
+ lastY = lastX = null;
181
+
182
+ },
183
+ mousemoveH = function(ev){
184
+ mousemove++;
185
+
186
+ },
187
+ changeH = function(ev){
188
+ //if we changed without a previous keypress
189
+ if(!justKey && ev.target.nodeName.toLowerCase() == "select"){
190
+
191
+ var el = $("option:eq("+ev.target.selectedIndex+")", ev.target);
192
+ h.addCode("click",undefined, el[0])
193
+ }
194
+ };
195
+
196
+ $("<iframe src='demo.html'></iframe>").load(function(){
197
+ //cant uses handled b/c it doesn't bubble
198
+ var iframe = $('iframe');
199
+ //iframe.phui_filler({parent: $("#fill")});
200
+ var frameWindow = iframe[0].contentWindow;
201
+
202
+ var oldHandle = frameWindow.jQuery.event.handle;
203
+
204
+ frameWindow.jQuery.event.handle = function(ev){
205
+ if(! ev[ frameWindow.jQuery.expando ]){
206
+ //add
207
+ //if(code[ev.type]){
208
+ // code[ev.type].call(ev.target||ev.srcElement, ev)
209
+ //}
210
+ }
211
+ oldHandle.apply(this,arguments);
212
+ }
213
+ keytarget = null;
214
+ $(frameWindow.document).keydown(h.keydown).keyup(h.keyup)
215
+ .mousedown(mousedownH).mousemove(mousemoveH).mouseup(mouseupH)
216
+ .change(changeH)
217
+ .click(function(ev){
218
+ //if(ev.target.nodeName.toLowerCase() == 'option'){
219
+ // h.addCode("click",undefined,ev.target)
220
+ //}
221
+ })
222
+
223
+
224
+
225
+ if(REPLAY){
226
+ REPLAY = false;
227
+ setTimeout(function(){
228
+ var text = h.commandsText(true)
229
+ ADD = false;
230
+ $("#code div:first").css("color","red")
231
+ eval("with(frameWindow){"+ text +"}" );
232
+ },500)
233
+
234
+ }
235
+
236
+ }).appendTo($("#app"))
237
+
238
+ $(function(){
239
+ $("#code, #clearme").val("");
240
+ })
241
+ $('#app').phui_filler({parent: document.body});
242
+
243
+ $("#run").click(function(){
244
+ REPLAY = true;
245
+ $('iframe')[0].contentWindow.location.reload(true);
246
+ $("#code div").css("color","gray")
247
+
248
+ })
249
+
250
+
251
+ });
252
+
253
+
254
+
@@ -0,0 +1,41 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2
+ "http://www.w3.org/TR/html4/strict.dtd">
3
+ <html lang="en">
4
+ <head>
5
+ <title>Synthetic Typing Test</title>
6
+ <style type='text/css'>
7
+ body {font-family: verdana}
8
+ td {text-align: right}
9
+ td:nth-child(even) {background: #CCd}
10
+ #key th:nth-child(even) {background: #CCf}
11
+ #who th:nth-child(even) {background: #fCb}
12
+ .hover {background-color: blue}
13
+ </style>
14
+ </head>
15
+ <body>
16
+ <p id='start'>start</p>
17
+ <div class='over'>Move over me</div>
18
+ <div class='over'>Move over me</div>
19
+ <p id='end'>end</p>
20
+ <script type='text/javascript' src='../../../steal/steal.js'></script>
21
+ <script type='text/javascript'>
22
+ steal.plugins('funcunit/synthetic', 'funcunit/synthetic/drag','jquery').start();
23
+ </script>
24
+ <script type='text/javascript' id="demo-source">
25
+ setTimeout(function(){
26
+ Syn("move",{
27
+ from: "#start",
28
+ to: "#end",
29
+ duration: 1000
30
+ },"start")
31
+ },1000)
32
+
33
+
34
+ $(".over").bind('mouseover',function(){
35
+ $(this).addClass('hover')
36
+ }).bind('mouseout',function(){
37
+ $(this).removeClass('hover')
38
+ })
39
+ </script>
40
+ </body>
41
+ </html>
@@ -0,0 +1,268 @@
1
+ steal.then(function(){
2
+ // document body has to exists for this test
3
+
4
+ (function(){
5
+ if (!document.body) {
6
+ setTimeout(arguments.callee, 1)
7
+ return;
8
+ }
9
+ var div = document.createElement('div')
10
+ document.body.appendChild(div);
11
+ Syn.helpers.extend(div.style, {
12
+ width: "100px",
13
+ height: "10000px",
14
+ backgroundColor: "blue",
15
+ position: "absolute",
16
+ top: "10px",
17
+ left: "0px",
18
+ zIndex: 19999
19
+ });
20
+ document.body.scrollTop = 11;
21
+ if(!document.elementFromPoint){
22
+ return;
23
+ }
24
+ var el = document.elementFromPoint(3, 1)
25
+ if (el == div) {
26
+ Syn.support.elementFromClient = true;
27
+ }
28
+ else {
29
+ Syn.support.elementFromPage = true;
30
+ }
31
+ document.body.removeChild(div);
32
+ document.body.scrollTop = 0;
33
+ })();
34
+
35
+
36
+ //gets an element from a point
37
+ var elementFromPoint = function(point, element){
38
+ var clientX = point.clientX, clientY = point.clientY, win = Syn.helpers.getWindow(element)
39
+
40
+ if (Syn.support.elementFromPage) {
41
+ var off = Syn.helpers.scrollOffset(win);
42
+ clientX = clientX + off.left; //convert to pageX
43
+ clientY = clientY + off.top; //convert to pageY
44
+ }
45
+
46
+ return win.document.elementFromPoint ? win.document.elementFromPoint(clientX, clientY) : element;
47
+ }, //creates an event at a certain point
48
+ createEventAtPoint = function(event, point, element){
49
+ var el = elementFromPoint(point, element)
50
+ Syn.trigger(event, point, el || element)
51
+ return el;
52
+ }, // creates a mousemove event, but first triggering mouseout / mouseover if appropriate
53
+ mouseMove = function(point, element, last){
54
+ var el = elementFromPoint(point, element)
55
+ if (last != el && el && last) {
56
+ var options = Syn.helpers.extend({},point);
57
+ options.relatedTarget = el;
58
+ Syn.trigger("mouseout", options, last);
59
+ options.relatedTarget = last;
60
+ Syn.trigger("mouseover", options, el);
61
+ }
62
+
63
+ Syn.trigger("mousemove", point, el || element)
64
+ return el;
65
+ }, // start and end are in clientX, clientY
66
+ startMove = function(start, end, duration, element, callback){
67
+ var startTime = new Date(),
68
+ distX = end.clientX - start.clientX,
69
+ distY = end.clientY - start.clientY,
70
+ win = Syn.helpers.getWindow(element),
71
+ current = elementFromPoint(start, element),
72
+ cursor = win.document.createElement('div'),
73
+ calls = 0;
74
+ move = function(){
75
+ //get what fraction we are at
76
+ var now = new Date(),
77
+ scrollOffset = Syn.helpers.scrollOffset(win),
78
+ fraction = ( calls == 0 ? 0 : now - startTime) / duration,
79
+ options = {
80
+ clientX: distX * fraction + start.clientX,
81
+ clientY: distY * fraction + start.clientY
82
+ };
83
+ calls++;
84
+ if (fraction < 1) {
85
+ Syn.helpers.extend(cursor.style, {
86
+ left: (options.clientX + scrollOffset.left + 2) + "px",
87
+ top: (options.clientY + scrollOffset.top + 2) + "px"
88
+ })
89
+ current = mouseMove(options, element, current)
90
+ setTimeout(arguments.callee, 15)
91
+ }
92
+ else {
93
+ current = mouseMove(end, element, current);
94
+ win.document.body.removeChild(cursor)
95
+ callback();
96
+ }
97
+ }
98
+ Syn.helpers.extend(cursor.style, {
99
+ height: "5px",
100
+ width: "5px",
101
+ backgroundColor: "red",
102
+ position: "absolute",
103
+ zIndex: 19999,
104
+ fontSize: "1px"
105
+ })
106
+ win.document.body.appendChild(cursor)
107
+ move();
108
+ },
109
+ startDrag = function(start, end, duration, element, callback){
110
+ createEventAtPoint("mousedown", start, element);
111
+ startMove(start, end, duration, element, function(){
112
+ createEventAtPoint("mouseup", end, element);
113
+ callback();
114
+ })
115
+ },
116
+ center = function(el){
117
+ var j = Syn.jquery()(el),
118
+ o = j.offset();
119
+ return{
120
+ pageX: o.left + (j.width() / 2),
121
+ pageY: o.top + (j.height() / 2)
122
+ }
123
+ },
124
+ convertOption = function(option, win, from){
125
+ var page = /(\d+)[x ](\d+)/,
126
+ client = /(\d+)X(\d+)/,
127
+ relative = /([+-]\d+)[xX ]([+-]\d+)/
128
+ //check relative "+22x-44"
129
+ if (typeof option == 'string' && relative.test(option) && from) {
130
+ var cent = center(from),
131
+ parts = option.match(relative);
132
+ option = {
133
+ pageX: cent.pageX + parseInt(parts[1]),
134
+ pageY: cent.pageY +parseInt(parts[2])
135
+ }
136
+ }
137
+ if (typeof option == 'string' && page.test(option)) {
138
+ var parts = option.match(page)
139
+ option = {
140
+ pageX: parseInt(parts[1]),
141
+ pageY: parseInt(parts[2])
142
+ }
143
+ }
144
+ if (typeof option == 'string' && client.test(option)) {
145
+ var parts = option.match(client)
146
+ option = {
147
+ clientX: parseInt(parts[1]),
148
+ clientY: parseInt(parts[2])
149
+ }
150
+ }
151
+ if (typeof option == 'string') {
152
+ option = Syn.jquery()(option, win.document)[0];
153
+ }
154
+ if (option.nodeName) {
155
+ option = center(option)
156
+ }
157
+ if (option.pageX) {
158
+ var off = Syn.helpers.scrollOffset(win);
159
+ option = {
160
+ clientX: option.pageX - off.left,
161
+ clientY: option.pageY - off.top
162
+ }
163
+ }
164
+ return option;
165
+ }
166
+ /**
167
+ * @add Syn prototype
168
+ */
169
+ Syn.helpers.extend(Syn.init.prototype,{
170
+ /**
171
+ * @function move
172
+ * Moves the cursor from one point to another.
173
+ * <h3>Quick Example</h3>
174
+ * The following moves the cursor from (0,0) in
175
+ * the window to (100,100) in 1 second.
176
+ * @codestart
177
+ * Syn.move(
178
+ * {
179
+ * from: {clientX: 0, clientY: 0},
180
+ * to: {clientX: 100, clientY: 100},
181
+ * duration: 1000
182
+ * },
183
+ * document.document)
184
+ * @codeend
185
+ * <h2>Options</h2>
186
+ * There are many ways to configure the endpoints of the move.
187
+ *
188
+ * <h3>PageX and PageY</h3>
189
+ * If you pass pageX or pageY, these will get converted
190
+ * to client coordinates.
191
+ * @codestart
192
+ * Syn.move(
193
+ * {
194
+ * from: {pageX: 0, pageY: 0},
195
+ * to: {pageX: 100, pageY: 100}
196
+ * },
197
+ * document.document)
198
+ * @codeend
199
+ * <h3>String Coordinates</h3>
200
+ * You can set the pageX and pageY as strings like:
201
+ * @codestart
202
+ * Syn.move(
203
+ * {
204
+ * from: "0x0",
205
+ * to: "100x100"
206
+ * },
207
+ * document.document)
208
+ * @codeend
209
+ * <h3>Element Coordinates</h3>
210
+ * If jQuery is present, you can pass an element as the from or to option
211
+ * and the coordinate will be set as the center of the element.
212
+ * @codestart
213
+ * Syn.move(
214
+ * {
215
+ * from: $(".recipe")[0],
216
+ * to: $("#trash")[0]
217
+ * },
218
+ * document.document)
219
+ * @codeend
220
+ * <h3>Query Strings</h3>
221
+ * If jQuery is present, you can pass a query string as the from or to option.
222
+ * @codestart
223
+ * Syn.move(
224
+ * {
225
+ * from: ".recipe",
226
+ * to: "#trash"
227
+ * },
228
+ * document.document)
229
+ * @codeend
230
+ * <h3>No From</h3>
231
+ * If you don't provide a from, the element argument passed to Syn is used.
232
+ * @codestart
233
+ * Syn.move(
234
+ * { to: "#trash" },
235
+ * 'myrecipe')
236
+ * @codeend
237
+ * @param {Object} options
238
+ * @param {HTMLElement} from
239
+ * @param {Function} callback
240
+ */
241
+ _move: function( options, from, callback ) {
242
+ //need to convert if elements
243
+ var win = Syn.helpers.getWindow(from),
244
+ fro = convertOption(options.from || from, win),
245
+ to = convertOption(options.to || options, win);
246
+
247
+ startMove(fro, to, options.duration || 500, from, callback);
248
+ },
249
+ /**
250
+ * @function drag
251
+ * Creates a mousedown and drags from one point to another.
252
+ * Check out [Syn.prototype.move move] for API details.
253
+ *
254
+ * @param {Object} options
255
+ * @param {Object} from
256
+ * @param {Object} callback
257
+ */
258
+ _drag: function( options, from, callback ) {
259
+ //need to convert if elements
260
+ var win = Syn.helpers.getWindow(from),
261
+ fro = convertOption(options.from || from, win, from),
262
+ to = convertOption(options.to || options, win, from);
263
+
264
+ startDrag(fro, to, options.duration || 500, from, callback);
265
+ }
266
+ })
267
+
268
+ })