pollypost 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1132) hide show
  1. data/.gitignore +15 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +674 -0
  4. data/README.md +165 -0
  5. data/Rakefile +9 -0
  6. data/assets/fonts/font-awesome-custom/fontawesome-custom.eot +0 -0
  7. data/assets/fonts/font-awesome-custom/fontawesome-custom.svg +15 -0
  8. data/assets/fonts/font-awesome-custom/fontawesome-custom.ttf +0 -0
  9. data/assets/fonts/font-awesome-custom/fontawesome-custom.woff +0 -0
  10. data/assets/javascripts/app.js +35 -0
  11. data/assets/javascripts/application.js +8 -0
  12. data/assets/javascripts/dom-tweaking.js +36 -0
  13. data/assets/javascripts/main.js +36 -0
  14. data/assets/javascripts/models/page_content.js +39 -0
  15. data/assets/javascripts/templates/bar_edit_mode.html +14 -0
  16. data/assets/javascripts/templates/bar_view_mode.html +13 -0
  17. data/assets/javascripts/templates/duplicate_page.html +20 -0
  18. data/assets/javascripts/templates/html_editor.html +18 -0
  19. data/assets/javascripts/templates/loading.html +9 -0
  20. data/assets/javascripts/templates/new_page.html +23 -0
  21. data/assets/javascripts/templates/settings.html +15 -0
  22. data/assets/javascripts/views/bar_edit_mode.js +117 -0
  23. data/assets/javascripts/views/bar_view_mode.js +40 -0
  24. data/assets/javascripts/views/duplicate_page.js +76 -0
  25. data/assets/javascripts/views/editier_bar.js +171 -0
  26. data/assets/javascripts/views/html_editor.js +116 -0
  27. data/assets/javascripts/views/loading.js +31 -0
  28. data/assets/javascripts/views/new_page.js +77 -0
  29. data/assets/javascripts/views/page_content.js +26 -0
  30. data/assets/javascripts/views/settings.js +89 -0
  31. data/assets/stylesheets/_bootstrap-custom.scss +50 -0
  32. data/assets/stylesheets/_editor.scss +303 -0
  33. data/assets/stylesheets/_font-awesome-custom.scss +17 -0
  34. data/assets/stylesheets/_variable-overrides.scss +13 -0
  35. data/assets/stylesheets/application.scss +41 -0
  36. data/assets/stylesheets/bootstrap/_normalize.scss +427 -0
  37. data/assets/stylesheets/bootstrap/_scaffolding.scss +150 -0
  38. data/assets/stylesheets/font-awesome/_core.scss +12 -0
  39. data/assets/stylesheets/font-awesome/_mixins.scss +26 -0
  40. data/assets/stylesheets/font-awesome/_path.scss +14 -0
  41. data/lib/pollypost.rb +13 -0
  42. data/lib/pollypost/rake.rb +55 -0
  43. data/lib/pollypost/version.rb +11 -0
  44. data/pollypost.gemspec +27 -0
  45. data/test/README.md +55 -0
  46. data/test/basic.html +19 -0
  47. data/test/page_content_test.js +69 -0
  48. data/test/qunit-1.17.1.css +280 -0
  49. data/test/qunit-1.17.1.js +2875 -0
  50. data/test/sinon-1.14.1.js +5931 -0
  51. data/test/sinon-qunit-1.0.0.js +62 -0
  52. data/test/test.html +16 -0
  53. data/test/testmain.js +28 -0
  54. data/test/tests.js +58 -0
  55. data/vendor/assets/ace-1.1.8/ace.js +129 -0
  56. data/vendor/assets/ace-1.1.8/anchor.js +245 -0
  57. data/vendor/assets/ace-1.1.8/anchor_test.js +223 -0
  58. data/vendor/assets/ace-1.1.8/autocomplete.js +485 -0
  59. data/vendor/assets/ace-1.1.8/autocomplete/popup.js +338 -0
  60. data/vendor/assets/ace-1.1.8/autocomplete/text_completer.js +78 -0
  61. data/vendor/assets/ace-1.1.8/autocomplete/util.js +74 -0
  62. data/vendor/assets/ace-1.1.8/background_tokenizer.js +250 -0
  63. data/vendor/assets/ace-1.1.8/background_tokenizer_test.js +85 -0
  64. data/vendor/assets/ace-1.1.8/commands/command_manager.js +118 -0
  65. data/vendor/assets/ace-1.1.8/commands/command_manager_test.js +199 -0
  66. data/vendor/assets/ace-1.1.8/commands/default_commands.js +708 -0
  67. data/vendor/assets/ace-1.1.8/commands/incremental_search_commands.js +232 -0
  68. data/vendor/assets/ace-1.1.8/commands/multi_select_commands.js +102 -0
  69. data/vendor/assets/ace-1.1.8/commands/occur_commands.js +110 -0
  70. data/vendor/assets/ace-1.1.8/config.js +301 -0
  71. data/vendor/assets/ace-1.1.8/config_test.js +128 -0
  72. data/vendor/assets/ace-1.1.8/css/codefolding-fold-button-states.png +0 -0
  73. data/vendor/assets/ace-1.1.8/css/editor.css +422 -0
  74. data/vendor/assets/ace-1.1.8/css/expand-marker.png +0 -0
  75. data/vendor/assets/ace-1.1.8/document.js +645 -0
  76. data/vendor/assets/ace-1.1.8/document_test.js +306 -0
  77. data/vendor/assets/ace-1.1.8/edit_session.js +2554 -0
  78. data/vendor/assets/ace-1.1.8/edit_session/bracket_match.js +221 -0
  79. data/vendor/assets/ace-1.1.8/edit_session/fold.js +140 -0
  80. data/vendor/assets/ace-1.1.8/edit_session/fold_line.js +269 -0
  81. data/vendor/assets/ace-1.1.8/edit_session/folding.js +851 -0
  82. data/vendor/assets/ace-1.1.8/edit_session_test.js +1075 -0
  83. data/vendor/assets/ace-1.1.8/editor.js +2658 -0
  84. data/vendor/assets/ace-1.1.8/editor_change_document_test.js +188 -0
  85. data/vendor/assets/ace-1.1.8/editor_highlight_selected_word_test.js +223 -0
  86. data/vendor/assets/ace-1.1.8/editor_navigation_test.js +164 -0
  87. data/vendor/assets/ace-1.1.8/editor_text_edit_test.js +557 -0
  88. data/vendor/assets/ace-1.1.8/ext/beautify.js +57 -0
  89. data/vendor/assets/ace-1.1.8/ext/beautify/php_rules.js +366 -0
  90. data/vendor/assets/ace-1.1.8/ext/chromevox.js +980 -0
  91. data/vendor/assets/ace-1.1.8/ext/elastic_tabstops_lite.js +319 -0
  92. data/vendor/assets/ace-1.1.8/ext/emmet.js +434 -0
  93. data/vendor/assets/ace-1.1.8/ext/error_marker.js +214 -0
  94. data/vendor/assets/ace-1.1.8/ext/keybinding_menu.js +86 -0
  95. data/vendor/assets/ace-1.1.8/ext/language_tools.js +229 -0
  96. data/vendor/assets/ace-1.1.8/ext/linking.js +78 -0
  97. data/vendor/assets/ace-1.1.8/ext/menu_tools/add_editor_menu_options.js +109 -0
  98. data/vendor/assets/ace-1.1.8/ext/menu_tools/element_generator.js +148 -0
  99. data/vendor/assets/ace-1.1.8/ext/menu_tools/generate_settings_menu.js +264 -0
  100. data/vendor/assets/ace-1.1.8/ext/menu_tools/get_editor_keyboard_shortcuts.js +91 -0
  101. data/vendor/assets/ace-1.1.8/ext/menu_tools/get_set_functions.js +141 -0
  102. data/vendor/assets/ace-1.1.8/ext/menu_tools/overlay_page.js +116 -0
  103. data/vendor/assets/ace-1.1.8/ext/menu_tools/settings_menu.css +48 -0
  104. data/vendor/assets/ace-1.1.8/ext/modelist.js +191 -0
  105. data/vendor/assets/ace-1.1.8/ext/old_ie.js +114 -0
  106. data/vendor/assets/ace-1.1.8/ext/old_ie_test.js +77 -0
  107. data/vendor/assets/ace-1.1.8/ext/searchbox.css +153 -0
  108. data/vendor/assets/ace-1.1.8/ext/searchbox.js +308 -0
  109. data/vendor/assets/ace-1.1.8/ext/settings_menu.js +76 -0
  110. data/vendor/assets/ace-1.1.8/ext/spellcheck.js +69 -0
  111. data/vendor/assets/ace-1.1.8/ext/split.js +40 -0
  112. data/vendor/assets/ace-1.1.8/ext/static.css +31 -0
  113. data/vendor/assets/ace-1.1.8/ext/static_highlight.js +190 -0
  114. data/vendor/assets/ace-1.1.8/ext/static_highlight_test.js +96 -0
  115. data/vendor/assets/ace-1.1.8/ext/statusbar.js +48 -0
  116. data/vendor/assets/ace-1.1.8/ext/textarea.js +521 -0
  117. data/vendor/assets/ace-1.1.8/ext/themelist.js +100 -0
  118. data/vendor/assets/ace-1.1.8/ext/whitespace.js +213 -0
  119. data/vendor/assets/ace-1.1.8/ext/whitespace_test.js +116 -0
  120. data/vendor/assets/ace-1.1.8/incremental_search.js +317 -0
  121. data/vendor/assets/ace-1.1.8/incremental_search_test.js +213 -0
  122. data/vendor/assets/ace-1.1.8/keyboard/emacs.js +652 -0
  123. data/vendor/assets/ace-1.1.8/keyboard/emacs_test.js +151 -0
  124. data/vendor/assets/ace-1.1.8/keyboard/hash_handler.js +231 -0
  125. data/vendor/assets/ace-1.1.8/keyboard/keybinding.js +145 -0
  126. data/vendor/assets/ace-1.1.8/keyboard/keybinding_test.js +69 -0
  127. data/vendor/assets/ace-1.1.8/keyboard/state_handler.js +249 -0
  128. data/vendor/assets/ace-1.1.8/keyboard/textarea.js +82 -0
  129. data/vendor/assets/ace-1.1.8/keyboard/textinput.js +495 -0
  130. data/vendor/assets/ace-1.1.8/keyboard/vim.js +199 -0
  131. data/vendor/assets/ace-1.1.8/keyboard/vim/commands.js +618 -0
  132. data/vendor/assets/ace-1.1.8/keyboard/vim/maps/aliases.js +94 -0
  133. data/vendor/assets/ace-1.1.8/keyboard/vim/maps/motions.js +681 -0
  134. data/vendor/assets/ace-1.1.8/keyboard/vim/maps/operators.js +201 -0
  135. data/vendor/assets/ace-1.1.8/keyboard/vim/maps/util.js +132 -0
  136. data/vendor/assets/ace-1.1.8/keyboard/vim/registers.js +42 -0
  137. data/vendor/assets/ace-1.1.8/keyboard/vim_test.js +528 -0
  138. data/vendor/assets/ace-1.1.8/layer/cursor.js +234 -0
  139. data/vendor/assets/ace-1.1.8/layer/font_metrics.js +176 -0
  140. data/vendor/assets/ace-1.1.8/layer/gutter.js +287 -0
  141. data/vendor/assets/ace-1.1.8/layer/marker.js +218 -0
  142. data/vendor/assets/ace-1.1.8/layer/text.js +575 -0
  143. data/vendor/assets/ace-1.1.8/layer/text_test.js +126 -0
  144. data/vendor/assets/ace-1.1.8/lib/dom.js +283 -0
  145. data/vendor/assets/ace-1.1.8/lib/es5-shim.js +1062 -0
  146. data/vendor/assets/ace-1.1.8/lib/event.js +381 -0
  147. data/vendor/assets/ace-1.1.8/lib/event_emitter.js +155 -0
  148. data/vendor/assets/ace-1.1.8/lib/event_emitter_test.js +65 -0
  149. data/vendor/assets/ace-1.1.8/lib/fixoldbrowsers.js +19 -0
  150. data/vendor/assets/ace-1.1.8/lib/keys.js +163 -0
  151. data/vendor/assets/ace-1.1.8/lib/lang.js +221 -0
  152. data/vendor/assets/ace-1.1.8/lib/net.js +51 -0
  153. data/vendor/assets/ace-1.1.8/lib/oop.js +57 -0
  154. data/vendor/assets/ace-1.1.8/lib/regexp.js +113 -0
  155. data/vendor/assets/ace-1.1.8/lib/useragent.js +106 -0
  156. data/vendor/assets/ace-1.1.8/line_widgets.js +297 -0
  157. data/vendor/assets/ace-1.1.8/mode/_test/Readme.md +9 -0
  158. data/vendor/assets/ace-1.1.8/mode/_test/highlight_rules_test.js +210 -0
  159. data/vendor/assets/ace-1.1.8/mode/_test/package.json +8 -0
  160. data/vendor/assets/ace-1.1.8/mode/_test/text_asciidoc.txt +111 -0
  161. data/vendor/assets/ace-1.1.8/mode/_test/text_coffee.txt +57 -0
  162. data/vendor/assets/ace-1.1.8/mode/_test/text_curly.txt +9 -0
  163. data/vendor/assets/ace-1.1.8/mode/_test/text_html.txt +10 -0
  164. data/vendor/assets/ace-1.1.8/mode/_test/text_javascript.txt +86 -0
  165. data/vendor/assets/ace-1.1.8/mode/_test/text_livescript.txt +1 -0
  166. data/vendor/assets/ace-1.1.8/mode/_test/text_lucene.txt +16 -0
  167. data/vendor/assets/ace-1.1.8/mode/_test/text_markdown.txt +22 -0
  168. data/vendor/assets/ace-1.1.8/mode/_test/text_php.txt +24 -0
  169. data/vendor/assets/ace-1.1.8/mode/_test/text_ruby.txt +34 -0
  170. data/vendor/assets/ace-1.1.8/mode/_test/text_xml.txt +7 -0
  171. data/vendor/assets/ace-1.1.8/mode/_test/tokens_abap.json +189 -0
  172. data/vendor/assets/ace-1.1.8/mode/_test/tokens_actionscript.json +263 -0
  173. data/vendor/assets/ace-1.1.8/mode/_test/tokens_ada.json +39 -0
  174. data/vendor/assets/ace-1.1.8/mode/_test/tokens_asciidoc.json +422 -0
  175. data/vendor/assets/ace-1.1.8/mode/_test/tokens_assembly_x86.json +114 -0
  176. data/vendor/assets/ace-1.1.8/mode/_test/tokens_autohotkey.json +261 -0
  177. data/vendor/assets/ace-1.1.8/mode/_test/tokens_batchfile.json +70 -0
  178. data/vendor/assets/ace-1.1.8/mode/_test/tokens_c9search.json +131 -0
  179. data/vendor/assets/ace-1.1.8/mode/_test/tokens_c_cpp.json +185 -0
  180. data/vendor/assets/ace-1.1.8/mode/_test/tokens_cirru.json +267 -0
  181. data/vendor/assets/ace-1.1.8/mode/_test/tokens_clojure.json +162 -0
  182. data/vendor/assets/ace-1.1.8/mode/_test/tokens_cobol.json +4 -0
  183. data/vendor/assets/ace-1.1.8/mode/_test/tokens_coffee.json +545 -0
  184. data/vendor/assets/ace-1.1.8/mode/_test/tokens_coldfusion.json +26 -0
  185. data/vendor/assets/ace-1.1.8/mode/_test/tokens_csharp.json +31 -0
  186. data/vendor/assets/ace-1.1.8/mode/_test/tokens_css.json +148 -0
  187. data/vendor/assets/ace-1.1.8/mode/_test/tokens_curly.json +56 -0
  188. data/vendor/assets/ace-1.1.8/mode/_test/tokens_d.json +111 -0
  189. data/vendor/assets/ace-1.1.8/mode/_test/tokens_dart.json +368 -0
  190. data/vendor/assets/ace-1.1.8/mode/_test/tokens_diff.json +262 -0
  191. data/vendor/assets/ace-1.1.8/mode/_test/tokens_dot.json +2254 -0
  192. data/vendor/assets/ace-1.1.8/mode/_test/tokens_eiffel.json +141 -0
  193. data/vendor/assets/ace-1.1.8/mode/_test/tokens_ejs.json +296 -0
  194. data/vendor/assets/ace-1.1.8/mode/_test/tokens_elixir.json +196 -0
  195. data/vendor/assets/ace-1.1.8/mode/_test/tokens_elm.json +198 -0
  196. data/vendor/assets/ace-1.1.8/mode/_test/tokens_erlang.json +166 -0
  197. data/vendor/assets/ace-1.1.8/mode/_test/tokens_forth.json +219 -0
  198. data/vendor/assets/ace-1.1.8/mode/_test/tokens_ftl.json +341 -0
  199. data/vendor/assets/ace-1.1.8/mode/_test/tokens_gcode.json +296 -0
  200. data/vendor/assets/ace-1.1.8/mode/_test/tokens_gherkin.json +142 -0
  201. data/vendor/assets/ace-1.1.8/mode/_test/tokens_gitignore.json +33 -0
  202. data/vendor/assets/ace-1.1.8/mode/_test/tokens_glsl.json +127 -0
  203. data/vendor/assets/ace-1.1.8/mode/_test/tokens_golang.json +256 -0
  204. data/vendor/assets/ace-1.1.8/mode/_test/tokens_groovy.json +410 -0
  205. data/vendor/assets/ace-1.1.8/mode/_test/tokens_haml.json +174 -0
  206. data/vendor/assets/ace-1.1.8/mode/_test/tokens_handlebars.json +81 -0
  207. data/vendor/assets/ace-1.1.8/mode/_test/tokens_haskell.json +156 -0
  208. data/vendor/assets/ace-1.1.8/mode/_test/tokens_haxe.json +143 -0
  209. data/vendor/assets/ace-1.1.8/mode/_test/tokens_html.json +63 -0
  210. data/vendor/assets/ace-1.1.8/mode/_test/tokens_html_ruby.json +257 -0
  211. data/vendor/assets/ace-1.1.8/mode/_test/tokens_ini.json +23 -0
  212. data/vendor/assets/ace-1.1.8/mode/_test/tokens_io.json +49 -0
  213. data/vendor/assets/ace-1.1.8/mode/_test/tokens_jack.json +1786 -0
  214. data/vendor/assets/ace-1.1.8/mode/_test/tokens_jade.json +188 -0
  215. data/vendor/assets/ace-1.1.8/mode/_test/tokens_java.json +95 -0
  216. data/vendor/assets/ace-1.1.8/mode/_test/tokens_javascript.json +593 -0
  217. data/vendor/assets/ace-1.1.8/mode/_test/tokens_json.json +412 -0
  218. data/vendor/assets/ace-1.1.8/mode/_test/tokens_jsoniq.json +4 -0
  219. data/vendor/assets/ace-1.1.8/mode/_test/tokens_jsp.json +435 -0
  220. data/vendor/assets/ace-1.1.8/mode/_test/tokens_jsx.json +51 -0
  221. data/vendor/assets/ace-1.1.8/mode/_test/tokens_julia.json +111 -0
  222. data/vendor/assets/ace-1.1.8/mode/_test/tokens_latex.json +127 -0
  223. data/vendor/assets/ace-1.1.8/mode/_test/tokens_less.json +204 -0
  224. data/vendor/assets/ace-1.1.8/mode/_test/tokens_liquid.json +551 -0
  225. data/vendor/assets/ace-1.1.8/mode/_test/tokens_lisp.json +248 -0
  226. data/vendor/assets/ace-1.1.8/mode/_test/tokens_livescript.json +6 -0
  227. data/vendor/assets/ace-1.1.8/mode/_test/tokens_logiql.json +190 -0
  228. data/vendor/assets/ace-1.1.8/mode/_test/tokens_lsl.json +503 -0
  229. data/vendor/assets/ace-1.1.8/mode/_test/tokens_lua.json +348 -0
  230. data/vendor/assets/ace-1.1.8/mode/_test/tokens_luapage.json +633 -0
  231. data/vendor/assets/ace-1.1.8/mode/_test/tokens_lucene.json +92 -0
  232. data/vendor/assets/ace-1.1.8/mode/_test/tokens_markdown.json +114 -0
  233. data/vendor/assets/ace-1.1.8/mode/_test/tokens_matlab.json +90 -0
  234. data/vendor/assets/ace-1.1.8/mode/_test/tokens_mel.json +257 -0
  235. data/vendor/assets/ace-1.1.8/mode/_test/tokens_mushcode.json +790 -0
  236. data/vendor/assets/ace-1.1.8/mode/_test/tokens_mysql.json +4 -0
  237. data/vendor/assets/ace-1.1.8/mode/_test/tokens_nix.json +360 -0
  238. data/vendor/assets/ace-1.1.8/mode/_test/tokens_objectivec.json +792 -0
  239. data/vendor/assets/ace-1.1.8/mode/_test/tokens_ocaml.json +200 -0
  240. data/vendor/assets/ace-1.1.8/mode/_test/tokens_pascal.json +297 -0
  241. data/vendor/assets/ace-1.1.8/mode/_test/tokens_perl.json +227 -0
  242. data/vendor/assets/ace-1.1.8/mode/_test/tokens_pgsql.json +889 -0
  243. data/vendor/assets/ace-1.1.8/mode/_test/tokens_php.json +171 -0
  244. data/vendor/assets/ace-1.1.8/mode/_test/tokens_powershell.json +184 -0
  245. data/vendor/assets/ace-1.1.8/mode/_test/tokens_prolog.json +245 -0
  246. data/vendor/assets/ace-1.1.8/mode/_test/tokens_properties.json +68 -0
  247. data/vendor/assets/ace-1.1.8/mode/_test/tokens_protobuf.json +136 -0
  248. data/vendor/assets/ace-1.1.8/mode/_test/tokens_python.json +152 -0
  249. data/vendor/assets/ace-1.1.8/mode/_test/tokens_r.json +235 -0
  250. data/vendor/assets/ace-1.1.8/mode/_test/tokens_rdoc.json +441 -0
  251. data/vendor/assets/ace-1.1.8/mode/_test/tokens_rhtml.json +106 -0
  252. data/vendor/assets/ace-1.1.8/mode/_test/tokens_ruby.json +234 -0
  253. data/vendor/assets/ace-1.1.8/mode/_test/tokens_rust.json +136 -0
  254. data/vendor/assets/ace-1.1.8/mode/_test/tokens_sass.json +229 -0
  255. data/vendor/assets/ace-1.1.8/mode/_test/tokens_scad.json +194 -0
  256. data/vendor/assets/ace-1.1.8/mode/_test/tokens_scala.json +542 -0
  257. data/vendor/assets/ace-1.1.8/mode/_test/tokens_scheme.json +216 -0
  258. data/vendor/assets/ace-1.1.8/mode/_test/tokens_scss.json +123 -0
  259. data/vendor/assets/ace-1.1.8/mode/_test/tokens_sh.json +334 -0
  260. data/vendor/assets/ace-1.1.8/mode/_test/tokens_sjs.json +276 -0
  261. data/vendor/assets/ace-1.1.8/mode/_test/tokens_smarty.json +98 -0
  262. data/vendor/assets/ace-1.1.8/mode/_test/tokens_snippets.json +159 -0
  263. data/vendor/assets/ace-1.1.8/mode/_test/tokens_soy_template.json +286 -0
  264. data/vendor/assets/ace-1.1.8/mode/_test/tokens_space.json +322 -0
  265. data/vendor/assets/ace-1.1.8/mode/_test/tokens_sql.json +54 -0
  266. data/vendor/assets/ace-1.1.8/mode/_test/tokens_stylus.json +271 -0
  267. data/vendor/assets/ace-1.1.8/mode/_test/tokens_svg.json +684 -0
  268. data/vendor/assets/ace-1.1.8/mode/_test/tokens_tcl.json +385 -0
  269. data/vendor/assets/ace-1.1.8/mode/_test/tokens_tex.json +130 -0
  270. data/vendor/assets/ace-1.1.8/mode/_test/tokens_text.json +29 -0
  271. data/vendor/assets/ace-1.1.8/mode/_test/tokens_textile.json +113 -0
  272. data/vendor/assets/ace-1.1.8/mode/_test/tokens_toml.json +131 -0
  273. data/vendor/assets/ace-1.1.8/mode/_test/tokens_twig.json +288 -0
  274. data/vendor/assets/ace-1.1.8/mode/_test/tokens_typescript.json +559 -0
  275. data/vendor/assets/ace-1.1.8/mode/_test/tokens_vala.json +158 -0
  276. data/vendor/assets/ace-1.1.8/mode/_test/tokens_vbscript.json +205 -0
  277. data/vendor/assets/ace-1.1.8/mode/_test/tokens_velocity.json +285 -0
  278. data/vendor/assets/ace-1.1.8/mode/_test/tokens_verilog.json +113 -0
  279. data/vendor/assets/ace-1.1.8/mode/_test/tokens_vhdl.json +271 -0
  280. data/vendor/assets/ace-1.1.8/mode/_test/tokens_xml.json +43 -0
  281. data/vendor/assets/ace-1.1.8/mode/_test/tokens_xquery.json +44 -0
  282. data/vendor/assets/ace-1.1.8/mode/_test/tokens_yaml.json +150 -0
  283. data/vendor/assets/ace-1.1.8/mode/abap.js +77 -0
  284. data/vendor/assets/ace-1.1.8/mode/abap_highlight_rules.js +134 -0
  285. data/vendor/assets/ace-1.1.8/mode/actionscript.js +58 -0
  286. data/vendor/assets/ace-1.1.8/mode/actionscript_highlight_rules.js +141 -0
  287. data/vendor/assets/ace-1.1.8/mode/ada.js +54 -0
  288. data/vendor/assets/ace-1.1.8/mode/ada_highlight_rules.js +93 -0
  289. data/vendor/assets/ace-1.1.8/mode/apache_conf.js +62 -0
  290. data/vendor/assets/ace-1.1.8/mode/apache_conf_highlight_rules.js +231 -0
  291. data/vendor/assets/ace-1.1.8/mode/applescript.js +55 -0
  292. data/vendor/assets/ace-1.1.8/mode/applescript_highlight_rules.js +139 -0
  293. data/vendor/assets/ace-1.1.8/mode/asciidoc.js +64 -0
  294. data/vendor/assets/ace-1.1.8/mode/asciidoc_highlight_rules.js +234 -0
  295. data/vendor/assets/ace-1.1.8/mode/assembly_x86.js +56 -0
  296. data/vendor/assets/ace-1.1.8/mode/assembly_x86_highlight_rules.js +114 -0
  297. data/vendor/assets/ace-1.1.8/mode/autohotkey.js +57 -0
  298. data/vendor/assets/ace-1.1.8/mode/autohotkey_highlight_rules.js +107 -0
  299. data/vendor/assets/ace-1.1.8/mode/batchfile.js +61 -0
  300. data/vendor/assets/ace-1.1.8/mode/batchfile_highlight_rules.js +97 -0
  301. data/vendor/assets/ace-1.1.8/mode/behaviour.js +90 -0
  302. data/vendor/assets/ace-1.1.8/mode/behaviour/behaviour_test.js +133 -0
  303. data/vendor/assets/ace-1.1.8/mode/behaviour/css.js +108 -0
  304. data/vendor/assets/ace-1.1.8/mode/behaviour/cstyle.js +400 -0
  305. data/vendor/assets/ace-1.1.8/mode/behaviour/html.js +46 -0
  306. data/vendor/assets/ace-1.1.8/mode/behaviour/xml.js +202 -0
  307. data/vendor/assets/ace-1.1.8/mode/behaviour/xquery.js +92 -0
  308. data/vendor/assets/ace-1.1.8/mode/c9search.js +67 -0
  309. data/vendor/assets/ace-1.1.8/mode/c9search_highlight_rules.js +182 -0
  310. data/vendor/assets/ace-1.1.8/mode/c_cpp.js +101 -0
  311. data/vendor/assets/ace-1.1.8/mode/c_cpp_highlight_rules.js +196 -0
  312. data/vendor/assets/ace-1.1.8/mode/cirru.js +51 -0
  313. data/vendor/assets/ace-1.1.8/mode/cirru_highlight_rules.js +125 -0
  314. data/vendor/assets/ace-1.1.8/mode/clojure.js +128 -0
  315. data/vendor/assets/ace-1.1.8/mode/clojure_highlight_rules.js +200 -0
  316. data/vendor/assets/ace-1.1.8/mode/cobol.js +53 -0
  317. data/vendor/assets/ace-1.1.8/mode/cobol_highlight_rules.js +100 -0
  318. data/vendor/assets/ace-1.1.8/mode/coffee.js +135 -0
  319. data/vendor/assets/ace-1.1.8/mode/coffee/coffee-script.js +62 -0
  320. data/vendor/assets/ace-1.1.8/mode/coffee/helpers.js +271 -0
  321. data/vendor/assets/ace-1.1.8/mode/coffee/lexer.js +935 -0
  322. data/vendor/assets/ace-1.1.8/mode/coffee/nodes.js +3106 -0
  323. data/vendor/assets/ace-1.1.8/mode/coffee/parser.js +724 -0
  324. data/vendor/assets/ace-1.1.8/mode/coffee/parser_test.js +88 -0
  325. data/vendor/assets/ace-1.1.8/mode/coffee/rewriter.js +516 -0
  326. data/vendor/assets/ace-1.1.8/mode/coffee/scope.js +174 -0
  327. data/vendor/assets/ace-1.1.8/mode/coffee_highlight_rules.js +233 -0
  328. data/vendor/assets/ace-1.1.8/mode/coffee_worker.js +74 -0
  329. data/vendor/assets/ace-1.1.8/mode/coldfusion.js +61 -0
  330. data/vendor/assets/ace-1.1.8/mode/coldfusion_highlight_rules.js +49 -0
  331. data/vendor/assets/ace-1.1.8/mode/coldfusion_test.js +67 -0
  332. data/vendor/assets/ace-1.1.8/mode/csharp.js +61 -0
  333. data/vendor/assets/ace-1.1.8/mode/csharp_highlight_rules.js +93 -0
  334. data/vendor/assets/ace-1.1.8/mode/css.js +100 -0
  335. data/vendor/assets/ace-1.1.8/mode/css/csslint.js +9628 -0
  336. data/vendor/assets/ace-1.1.8/mode/css_highlight_rules.js +179 -0
  337. data/vendor/assets/ace-1.1.8/mode/css_test.js +78 -0
  338. data/vendor/assets/ace-1.1.8/mode/css_worker.js +100 -0
  339. data/vendor/assets/ace-1.1.8/mode/css_worker_test.js +68 -0
  340. data/vendor/assets/ace-1.1.8/mode/curly.js +63 -0
  341. data/vendor/assets/ace-1.1.8/mode/curly_highlight_rules.js +66 -0
  342. data/vendor/assets/ace-1.1.8/mode/d.js +56 -0
  343. data/vendor/assets/ace-1.1.8/mode/d_highlight_rules.js +334 -0
  344. data/vendor/assets/ace-1.1.8/mode/dart.js +62 -0
  345. data/vendor/assets/ace-1.1.8/mode/dart_highlight_rules.js +186 -0
  346. data/vendor/assets/ace-1.1.8/mode/diff.js +52 -0
  347. data/vendor/assets/ace-1.1.8/mode/diff_highlight_rules.js +108 -0
  348. data/vendor/assets/ace-1.1.8/mode/django.js +119 -0
  349. data/vendor/assets/ace-1.1.8/mode/doc_comment_highlight_rules.js +79 -0
  350. data/vendor/assets/ace-1.1.8/mode/dockerfile.js +52 -0
  351. data/vendor/assets/ace-1.1.8/mode/dockerfile_highlight_rules.js +57 -0
  352. data/vendor/assets/ace-1.1.8/mode/dot.js +55 -0
  353. data/vendor/assets/ace-1.1.8/mode/dot_highlight_rules.js +126 -0
  354. data/vendor/assets/ace-1.1.8/mode/eiffel.js +52 -0
  355. data/vendor/assets/ace-1.1.8/mode/eiffel_highlight_rules.js +143 -0
  356. data/vendor/assets/ace-1.1.8/mode/ejs.js +109 -0
  357. data/vendor/assets/ace-1.1.8/mode/elixir.js +58 -0
  358. data/vendor/assets/ace-1.1.8/mode/elixir_highlight_rules.js +433 -0
  359. data/vendor/assets/ace-1.1.8/mode/elm.js +58 -0
  360. data/vendor/assets/ace-1.1.8/mode/elm_highlight_rules.js +162 -0
  361. data/vendor/assets/ace-1.1.8/mode/erlang.js +57 -0
  362. data/vendor/assets/ace-1.1.8/mode/erlang_highlight_rules.js +876 -0
  363. data/vendor/assets/ace-1.1.8/mode/folding/asciidoc.js +142 -0
  364. data/vendor/assets/ace-1.1.8/mode/folding/c9search.js +83 -0
  365. data/vendor/assets/ace-1.1.8/mode/folding/coffee.js +120 -0
  366. data/vendor/assets/ace-1.1.8/mode/folding/coffee_test.js +101 -0
  367. data/vendor/assets/ace-1.1.8/mode/folding/csharp.js +138 -0
  368. data/vendor/assets/ace-1.1.8/mode/folding/cstyle.js +124 -0
  369. data/vendor/assets/ace-1.1.8/mode/folding/cstyle_test.js +109 -0
  370. data/vendor/assets/ace-1.1.8/mode/folding/diff.js +69 -0
  371. data/vendor/assets/ace-1.1.8/mode/folding/fold_mode.js +120 -0
  372. data/vendor/assets/ace-1.1.8/mode/folding/html.js +48 -0
  373. data/vendor/assets/ace-1.1.8/mode/folding/html_test.js +162 -0
  374. data/vendor/assets/ace-1.1.8/mode/folding/ini.js +80 -0
  375. data/vendor/assets/ace-1.1.8/mode/folding/latex.js +162 -0
  376. data/vendor/assets/ace-1.1.8/mode/folding/lua.js +163 -0
  377. data/vendor/assets/ace-1.1.8/mode/folding/markdown.js +125 -0
  378. data/vendor/assets/ace-1.1.8/mode/folding/mixed.js +83 -0
  379. data/vendor/assets/ace-1.1.8/mode/folding/pythonic.js +58 -0
  380. data/vendor/assets/ace-1.1.8/mode/folding/pythonic_test.js +98 -0
  381. data/vendor/assets/ace-1.1.8/mode/folding/velocity.js +120 -0
  382. data/vendor/assets/ace-1.1.8/mode/folding/xml.js +277 -0
  383. data/vendor/assets/ace-1.1.8/mode/folding/xml_test.js +110 -0
  384. data/vendor/assets/ace-1.1.8/mode/forth.js +58 -0
  385. data/vendor/assets/ace-1.1.8/mode/forth_highlight_rules.js +164 -0
  386. data/vendor/assets/ace-1.1.8/mode/ftl.js +49 -0
  387. data/vendor/assets/ace-1.1.8/mode/ftl_highlight_rules.js +195 -0
  388. data/vendor/assets/ace-1.1.8/mode/gcode.js +51 -0
  389. data/vendor/assets/ace-1.1.8/mode/gcode_highlight_rules.js +94 -0
  390. data/vendor/assets/ace-1.1.8/mode/gherkin.js +80 -0
  391. data/vendor/assets/ace-1.1.8/mode/gherkin_highlight_rules.js +113 -0
  392. data/vendor/assets/ace-1.1.8/mode/gitignore.js +20 -0
  393. data/vendor/assets/ace-1.1.8/mode/gitignore_highlight_rules.js +31 -0
  394. data/vendor/assets/ace-1.1.8/mode/glsl.js +56 -0
  395. data/vendor/assets/ace-1.1.8/mode/glsl_highlight_rules.js +81 -0
  396. data/vendor/assets/ace-1.1.8/mode/golang.js +55 -0
  397. data/vendor/assets/ace-1.1.8/mode/golang_highlight_rules.js +108 -0
  398. data/vendor/assets/ace-1.1.8/mode/groovy.js +24 -0
  399. data/vendor/assets/ace-1.1.8/mode/groovy_highlight_rules.js +173 -0
  400. data/vendor/assets/ace-1.1.8/mode/haml.js +61 -0
  401. data/vendor/assets/ace-1.1.8/mode/haml_highlight_rules.js +132 -0
  402. data/vendor/assets/ace-1.1.8/mode/handlebars.js +29 -0
  403. data/vendor/assets/ace-1.1.8/mode/handlebars_highlight_rules.js +72 -0
  404. data/vendor/assets/ace-1.1.8/mode/haskell.js +62 -0
  405. data/vendor/assets/ace-1.1.8/mode/haskell_highlight_rules.js +246 -0
  406. data/vendor/assets/ace-1.1.8/mode/haxe.js +56 -0
  407. data/vendor/assets/ace-1.1.8/mode/haxe_highlight_rules.js +98 -0
  408. data/vendor/assets/ace-1.1.8/mode/html.js +106 -0
  409. data/vendor/assets/ace-1.1.8/mode/html/saxparser.js +10430 -0
  410. data/vendor/assets/ace-1.1.8/mode/html_completions.js +305 -0
  411. data/vendor/assets/ace-1.1.8/mode/html_highlight_rules.js +111 -0
  412. data/vendor/assets/ace-1.1.8/mode/html_ruby.js +59 -0
  413. data/vendor/assets/ace-1.1.8/mode/html_ruby_highlight_rules.js +84 -0
  414. data/vendor/assets/ace-1.1.8/mode/html_test.js +67 -0
  415. data/vendor/assets/ace-1.1.8/mode/html_worker.js +92 -0
  416. data/vendor/assets/ace-1.1.8/mode/ini.js +53 -0
  417. data/vendor/assets/ace-1.1.8/mode/ini_highlight_rules.js +112 -0
  418. data/vendor/assets/ace-1.1.8/mode/io.js +58 -0
  419. data/vendor/assets/ace-1.1.8/mode/io_highlight_rules.js +120 -0
  420. data/vendor/assets/ace-1.1.8/mode/jack.js +79 -0
  421. data/vendor/assets/ace-1.1.8/mode/jack_highlight_rules.js +142 -0
  422. data/vendor/assets/ace-1.1.8/mode/jade.js +57 -0
  423. data/vendor/assets/ace-1.1.8/mode/jade_highlight_rules.js +341 -0
  424. data/vendor/assets/ace-1.1.8/mode/java.js +24 -0
  425. data/vendor/assets/ace-1.1.8/mode/java_highlight_rules.js +128 -0
  426. data/vendor/assets/ace-1.1.8/mode/javascript.js +116 -0
  427. data/vendor/assets/ace-1.1.8/mode/javascript/jshint.js +9459 -0
  428. data/vendor/assets/ace-1.1.8/mode/javascript_highlight_rules.js +405 -0
  429. data/vendor/assets/ace-1.1.8/mode/javascript_test.js +213 -0
  430. data/vendor/assets/ace-1.1.8/mode/javascript_worker.js +187 -0
  431. data/vendor/assets/ace-1.1.8/mode/javascript_worker_test.js +106 -0
  432. data/vendor/assets/ace-1.1.8/mode/js_regex_highlight_rules.js +94 -0
  433. data/vendor/assets/ace-1.1.8/mode/json.js +93 -0
  434. data/vendor/assets/ace-1.1.8/mode/json/json_parse.js +346 -0
  435. data/vendor/assets/ace-1.1.8/mode/json_highlight_rules.js +100 -0
  436. data/vendor/assets/ace-1.1.8/mode/json_worker.js +68 -0
  437. data/vendor/assets/ace-1.1.8/mode/json_worker_test.js +101 -0
  438. data/vendor/assets/ace-1.1.8/mode/jsoniq.js +203 -0
  439. data/vendor/assets/ace-1.1.8/mode/jsp.js +55 -0
  440. data/vendor/assets/ace-1.1.8/mode/jsp_highlight_rules.js +91 -0
  441. data/vendor/assets/ace-1.1.8/mode/jsx.js +56 -0
  442. data/vendor/assets/ace-1.1.8/mode/jsx_highlight_rules.js +120 -0
  443. data/vendor/assets/ace-1.1.8/mode/julia.js +62 -0
  444. data/vendor/assets/ace-1.1.8/mode/julia_highlight_rules.js +170 -0
  445. data/vendor/assets/ace-1.1.8/mode/latex.js +26 -0
  446. data/vendor/assets/ace-1.1.8/mode/latex_highlight_rules.js +73 -0
  447. data/vendor/assets/ace-1.1.8/mode/less.js +84 -0
  448. data/vendor/assets/ace-1.1.8/mode/less_highlight_rules.js +271 -0
  449. data/vendor/assets/ace-1.1.8/mode/liquid.js +82 -0
  450. data/vendor/assets/ace-1.1.8/mode/liquid_highlight_rules.js +131 -0
  451. data/vendor/assets/ace-1.1.8/mode/lisp.js +56 -0
  452. data/vendor/assets/ace-1.1.8/mode/lisp_highlight_rules.js +124 -0
  453. data/vendor/assets/ace-1.1.8/mode/livescript.js +249 -0
  454. data/vendor/assets/ace-1.1.8/mode/logiql.js +139 -0
  455. data/vendor/assets/ace-1.1.8/mode/logiql_highlight_rules.js +119 -0
  456. data/vendor/assets/ace-1.1.8/mode/logiql_test.js +98 -0
  457. data/vendor/assets/ace-1.1.8/mode/lsl.js +92 -0
  458. data/vendor/assets/ace-1.1.8/mode/lsl_highlight_rules.js +123 -0
  459. data/vendor/assets/ace-1.1.8/mode/lua.js +168 -0
  460. data/vendor/assets/ace-1.1.8/mode/lua/luaparse.js +1989 -0
  461. data/vendor/assets/ace-1.1.8/mode/lua_highlight_rules.js +193 -0
  462. data/vendor/assets/ace-1.1.8/mode/lua_worker.js +71 -0
  463. data/vendor/assets/ace-1.1.8/mode/luapage.js +24 -0
  464. data/vendor/assets/ace-1.1.8/mode/luapage_highlight_rules.js +49 -0
  465. data/vendor/assets/ace-1.1.8/mode/lucene.js +19 -0
  466. data/vendor/assets/ace-1.1.8/mode/lucene_highlight_rules.js +49 -0
  467. data/vendor/assets/ace-1.1.8/mode/makefile.js +58 -0
  468. data/vendor/assets/ace-1.1.8/mode/makefile_highlight_rules.js +75 -0
  469. data/vendor/assets/ace-1.1.8/mode/markdown.js +76 -0
  470. data/vendor/assets/ace-1.1.8/mode/markdown_highlight_rules.js +228 -0
  471. data/vendor/assets/ace-1.1.8/mode/matching_brace_outdent.js +69 -0
  472. data/vendor/assets/ace-1.1.8/mode/matching_parens_outdent.js +74 -0
  473. data/vendor/assets/ace-1.1.8/mode/matlab.js +55 -0
  474. data/vendor/assets/ace-1.1.8/mode/matlab_highlight_rules.js +262 -0
  475. data/vendor/assets/ace-1.1.8/mode/mel.js +56 -0
  476. data/vendor/assets/ace-1.1.8/mode/mel_highlight_rules.js +133 -0
  477. data/vendor/assets/ace-1.1.8/mode/mushcode.js +116 -0
  478. data/vendor/assets/ace-1.1.8/mode/mushcode_highlight_rules.js +569 -0
  479. data/vendor/assets/ace-1.1.8/mode/mysql.js +51 -0
  480. data/vendor/assets/ace-1.1.8/mode/mysql_highlight_rules.js +122 -0
  481. data/vendor/assets/ace-1.1.8/mode/nix.js +62 -0
  482. data/vendor/assets/ace-1.1.8/mode/nix_highlight_rules.js +119 -0
  483. data/vendor/assets/ace-1.1.8/mode/objectivec.js +61 -0
  484. data/vendor/assets/ace-1.1.8/mode/objectivec_highlight_rules.js +331 -0
  485. data/vendor/assets/ace-1.1.8/mode/ocaml.js +97 -0
  486. data/vendor/assets/ace-1.1.8/mode/ocaml_highlight_rules.js +337 -0
  487. data/vendor/assets/ace-1.1.8/mode/pascal.js +67 -0
  488. data/vendor/assets/ace-1.1.8/mode/pascal_highlight_rules.js +127 -0
  489. data/vendor/assets/ace-1.1.8/mode/perl.js +90 -0
  490. data/vendor/assets/ace-1.1.8/mode/perl_highlight_rules.js +165 -0
  491. data/vendor/assets/ace-1.1.8/mode/pgsql.js +59 -0
  492. data/vendor/assets/ace-1.1.8/mode/pgsql_highlight_rules.js +619 -0
  493. data/vendor/assets/ace-1.1.8/mode/php.js +158 -0
  494. data/vendor/assets/ace-1.1.8/mode/php/php.js +5031 -0
  495. data/vendor/assets/ace-1.1.8/mode/php_highlight_rules.js +1085 -0
  496. data/vendor/assets/ace-1.1.8/mode/php_test.js +65 -0
  497. data/vendor/assets/ace-1.1.8/mode/php_worker.js +81 -0
  498. data/vendor/assets/ace-1.1.8/mode/plain_text.js +55 -0
  499. data/vendor/assets/ace-1.1.8/mode/plain_text_test.js +56 -0
  500. data/vendor/assets/ace-1.1.8/mode/powershell.js +61 -0
  501. data/vendor/assets/ace-1.1.8/mode/powershell_highlight_rules.js +145 -0
  502. data/vendor/assets/ace-1.1.8/mode/praat.js +84 -0
  503. data/vendor/assets/ace-1.1.8/mode/praat_highlight_rules.js +262 -0
  504. data/vendor/assets/ace-1.1.8/mode/prolog.js +62 -0
  505. data/vendor/assets/ace-1.1.8/mode/prolog_highlight_rules.js +238 -0
  506. data/vendor/assets/ace-1.1.8/mode/properties.js +48 -0
  507. data/vendor/assets/ace-1.1.8/mode/properties_highlight_rules.js +86 -0
  508. data/vendor/assets/ace-1.1.8/mode/protobuf.js +63 -0
  509. data/vendor/assets/ace-1.1.8/mode/protobuf_highlight_rules.js +66 -0
  510. data/vendor/assets/ace-1.1.8/mode/python.js +113 -0
  511. data/vendor/assets/ace-1.1.8/mode/python_highlight_rules.js +191 -0
  512. data/vendor/assets/ace-1.1.8/mode/python_test.js +79 -0
  513. data/vendor/assets/ace-1.1.8/mode/r.js +154 -0
  514. data/vendor/assets/ace-1.1.8/mode/r_highlight_rules.js +208 -0
  515. data/vendor/assets/ace-1.1.8/mode/rdoc.js +61 -0
  516. data/vendor/assets/ace-1.1.8/mode/rdoc_highlight_rules.js +119 -0
  517. data/vendor/assets/ace-1.1.8/mode/rhtml.js +87 -0
  518. data/vendor/assets/ace-1.1.8/mode/rhtml_highlight_rules.js +66 -0
  519. data/vendor/assets/ace-1.1.8/mode/ruby.js +100 -0
  520. data/vendor/assets/ace-1.1.8/mode/ruby_highlight_rules.js +323 -0
  521. data/vendor/assets/ace-1.1.8/mode/ruby_test.js +77 -0
  522. data/vendor/assets/ace-1.1.8/mode/rust.js +58 -0
  523. data/vendor/assets/ace-1.1.8/mode/rust_highlight_rules.js +158 -0
  524. data/vendor/assets/ace-1.1.8/mode/sass.js +52 -0
  525. data/vendor/assets/ace-1.1.8/mode/sass_highlight_rules.js +79 -0
  526. data/vendor/assets/ace-1.1.8/mode/scad.js +99 -0
  527. data/vendor/assets/ace-1.1.8/mode/scad_highlight_rules.js +142 -0
  528. data/vendor/assets/ace-1.1.8/mode/scala.js +25 -0
  529. data/vendor/assets/ace-1.1.8/mode/scala_highlight_rules.js +160 -0
  530. data/vendor/assets/ace-1.1.8/mode/scheme.js +56 -0
  531. data/vendor/assets/ace-1.1.8/mode/scheme_highlight_rules.js +123 -0
  532. data/vendor/assets/ace-1.1.8/mode/scss.js +84 -0
  533. data/vendor/assets/ace-1.1.8/mode/scss_highlight_rules.js +296 -0
  534. data/vendor/assets/ace-1.1.8/mode/sh.js +116 -0
  535. data/vendor/assets/ace-1.1.8/mode/sh_highlight_rules.js +203 -0
  536. data/vendor/assets/ace-1.1.8/mode/sjs.js +56 -0
  537. data/vendor/assets/ace-1.1.8/mode/sjs_highlight_rules.js +233 -0
  538. data/vendor/assets/ace-1.1.8/mode/smarty.js +51 -0
  539. data/vendor/assets/ace-1.1.8/mode/smarty_highlight_rules.js +139 -0
  540. data/vendor/assets/ace-1.1.8/mode/snippets.js +113 -0
  541. data/vendor/assets/ace-1.1.8/mode/soy_template.js +60 -0
  542. data/vendor/assets/ace-1.1.8/mode/soy_template_highlight_rules.js +356 -0
  543. data/vendor/assets/ace-1.1.8/mode/space.js +21 -0
  544. data/vendor/assets/ace-1.1.8/mode/space_highlight_rules.js +56 -0
  545. data/vendor/assets/ace-1.1.8/mode/sql.js +53 -0
  546. data/vendor/assets/ace-1.1.8/mode/sql_highlight_rules.js +99 -0
  547. data/vendor/assets/ace-1.1.8/mode/stylus.js +62 -0
  548. data/vendor/assets/ace-1.1.8/mode/stylus_highlight_rules.js +165 -0
  549. data/vendor/assets/ace-1.1.8/mode/svg.js +69 -0
  550. data/vendor/assets/ace-1.1.8/mode/svg_highlight_rules.js +49 -0
  551. data/vendor/assets/ace-1.1.8/mode/tcl.js +84 -0
  552. data/vendor/assets/ace-1.1.8/mode/tcl_highlight_rules.js +172 -0
  553. data/vendor/assets/ace-1.1.8/mode/tex.js +68 -0
  554. data/vendor/assets/ace-1.1.8/mode/tex_highlight_rules.js +127 -0
  555. data/vendor/assets/ace-1.1.8/mode/text.js +386 -0
  556. data/vendor/assets/ace-1.1.8/mode/text_highlight_rules.js +234 -0
  557. data/vendor/assets/ace-1.1.8/mode/text_test.js +64 -0
  558. data/vendor/assets/ace-1.1.8/mode/textile.js +67 -0
  559. data/vendor/assets/ace-1.1.8/mode/textile_highlight_rules.js +93 -0
  560. data/vendor/assets/ace-1.1.8/mode/toml.js +56 -0
  561. data/vendor/assets/ace-1.1.8/mode/toml_highlight_rules.js +103 -0
  562. data/vendor/assets/ace-1.1.8/mode/twig.js +81 -0
  563. data/vendor/assets/ace-1.1.8/mode/twig_highlight_rules.js +166 -0
  564. data/vendor/assets/ace-1.1.8/mode/typescript.js +62 -0
  565. data/vendor/assets/ace-1.1.8/mode/typescript_highlight_rules.js +98 -0
  566. data/vendor/assets/ace-1.1.8/mode/vala.js +105 -0
  567. data/vendor/assets/ace-1.1.8/mode/vala_highlight_rules.js +457 -0
  568. data/vendor/assets/ace-1.1.8/mode/vbscript.js +60 -0
  569. data/vendor/assets/ace-1.1.8/mode/vbscript_highlight_rules.js +246 -0
  570. data/vendor/assets/ace-1.1.8/mode/velocity.js +58 -0
  571. data/vendor/assets/ace-1.1.8/mode/velocity_highlight_rules.js +177 -0
  572. data/vendor/assets/ace-1.1.8/mode/verilog.js +54 -0
  573. data/vendor/assets/ace-1.1.8/mode/verilog_highlight_rules.js +101 -0
  574. data/vendor/assets/ace-1.1.8/mode/vhdl.js +52 -0
  575. data/vendor/assets/ace-1.1.8/mode/vhdl_highlight_rules.js +115 -0
  576. data/vendor/assets/ace-1.1.8/mode/xml.js +59 -0
  577. data/vendor/assets/ace-1.1.8/mode/xml_highlight_rules.js +242 -0
  578. data/vendor/assets/ace-1.1.8/mode/xml_test.js +75 -0
  579. data/vendor/assets/ace-1.1.8/mode/xquery.js +216 -0
  580. data/vendor/assets/ace-1.1.8/mode/xquery/Readme.md +1 -0
  581. data/vendor/assets/ace-1.1.8/mode/xquery/jsoniq_lexer.js +4453 -0
  582. data/vendor/assets/ace-1.1.8/mode/xquery/modules.js +4 -0
  583. data/vendor/assets/ace-1.1.8/mode/xquery/xqlint.js +78912 -0
  584. data/vendor/assets/ace-1.1.8/mode/xquery/xquery_lexer.js +4422 -0
  585. data/vendor/assets/ace-1.1.8/mode/xquery_worker.js +115 -0
  586. data/vendor/assets/ace-1.1.8/mode/yaml.js +78 -0
  587. data/vendor/assets/ace-1.1.8/mode/yaml_highlight_rules.js +113 -0
  588. data/vendor/assets/ace-1.1.8/model/editor.js +62 -0
  589. data/vendor/assets/ace-1.1.8/mouse/default_gutter_handler.js +181 -0
  590. data/vendor/assets/ace-1.1.8/mouse/default_handlers.js +278 -0
  591. data/vendor/assets/ace-1.1.8/mouse/dragdrop_handler.js +428 -0
  592. data/vendor/assets/ace-1.1.8/mouse/fold_handler.js +93 -0
  593. data/vendor/assets/ace-1.1.8/mouse/mouse_event.js +129 -0
  594. data/vendor/assets/ace-1.1.8/mouse/mouse_handler.js +203 -0
  595. data/vendor/assets/ace-1.1.8/mouse/mouse_handler_test.js +77 -0
  596. data/vendor/assets/ace-1.1.8/mouse/multi_select_handler.js +208 -0
  597. data/vendor/assets/ace-1.1.8/multi_select.js +996 -0
  598. data/vendor/assets/ace-1.1.8/multi_select_test.js +199 -0
  599. data/vendor/assets/ace-1.1.8/occur.js +193 -0
  600. data/vendor/assets/ace-1.1.8/occur_test.js +154 -0
  601. data/vendor/assets/ace-1.1.8/placeholder.js +274 -0
  602. data/vendor/assets/ace-1.1.8/placeholder_test.js +156 -0
  603. data/vendor/assets/ace-1.1.8/range.js +549 -0
  604. data/vendor/assets/ace-1.1.8/range_list.js +240 -0
  605. data/vendor/assets/ace-1.1.8/range_list_test.js +182 -0
  606. data/vendor/assets/ace-1.1.8/range_test.js +191 -0
  607. data/vendor/assets/ace-1.1.8/renderloop.js +75 -0
  608. data/vendor/assets/ace-1.1.8/requirejs/text.js +52 -0
  609. data/vendor/assets/ace-1.1.8/requirejs/text_build.js +60 -0
  610. data/vendor/assets/ace-1.1.8/scrollbar.js +270 -0
  611. data/vendor/assets/ace-1.1.8/search.js +396 -0
  612. data/vendor/assets/ace-1.1.8/search_highlight.js +82 -0
  613. data/vendor/assets/ace-1.1.8/search_test.js +461 -0
  614. data/vendor/assets/ace-1.1.8/selection.js +955 -0
  615. data/vendor/assets/ace-1.1.8/selection_test.js +480 -0
  616. data/vendor/assets/ace-1.1.8/snippets.js +949 -0
  617. data/vendor/assets/ace-1.1.8/snippets/_.snippets +240 -0
  618. data/vendor/assets/ace-1.1.8/snippets/_all_modes.js +7 -0
  619. data/vendor/assets/ace-1.1.8/snippets/_all_modes.snippets +0 -0
  620. data/vendor/assets/ace-1.1.8/snippets/abap.js +7 -0
  621. data/vendor/assets/ace-1.1.8/snippets/abap.snippets +0 -0
  622. data/vendor/assets/ace-1.1.8/snippets/actionscript.js +7 -0
  623. data/vendor/assets/ace-1.1.8/snippets/actionscript.snippets +157 -0
  624. data/vendor/assets/ace-1.1.8/snippets/ada.js +7 -0
  625. data/vendor/assets/ace-1.1.8/snippets/ada.snippets +0 -0
  626. data/vendor/assets/ace-1.1.8/snippets/all_modes.js +7 -0
  627. data/vendor/assets/ace-1.1.8/snippets/all_modes.snippets +0 -0
  628. data/vendor/assets/ace-1.1.8/snippets/apache.snippets +35 -0
  629. data/vendor/assets/ace-1.1.8/snippets/apache_conf.js +7 -0
  630. data/vendor/assets/ace-1.1.8/snippets/apache_conf.snippets +0 -0
  631. data/vendor/assets/ace-1.1.8/snippets/applescript.js +7 -0
  632. data/vendor/assets/ace-1.1.8/snippets/applescript.snippets +0 -0
  633. data/vendor/assets/ace-1.1.8/snippets/asciidoc.js +7 -0
  634. data/vendor/assets/ace-1.1.8/snippets/asciidoc.snippets +0 -0
  635. data/vendor/assets/ace-1.1.8/snippets/assembly_x86.js +7 -0
  636. data/vendor/assets/ace-1.1.8/snippets/assembly_x86.snippets +0 -0
  637. data/vendor/assets/ace-1.1.8/snippets/autohotkey.js +7 -0
  638. data/vendor/assets/ace-1.1.8/snippets/autohotkey.snippets +0 -0
  639. data/vendor/assets/ace-1.1.8/snippets/autoit.snippets +66 -0
  640. data/vendor/assets/ace-1.1.8/snippets/batchfile.js +7 -0
  641. data/vendor/assets/ace-1.1.8/snippets/batchfile.snippets +0 -0
  642. data/vendor/assets/ace-1.1.8/snippets/c.snippets +235 -0
  643. data/vendor/assets/ace-1.1.8/snippets/c9search.js +7 -0
  644. data/vendor/assets/ace-1.1.8/snippets/c9search.snippets +0 -0
  645. data/vendor/assets/ace-1.1.8/snippets/c_cpp.js +7 -0
  646. data/vendor/assets/ace-1.1.8/snippets/c_cpp.snippets +131 -0
  647. data/vendor/assets/ace-1.1.8/snippets/chef.snippets +204 -0
  648. data/vendor/assets/ace-1.1.8/snippets/cirru.js +7 -0
  649. data/vendor/assets/ace-1.1.8/snippets/cirru.snippets +0 -0
  650. data/vendor/assets/ace-1.1.8/snippets/clojure.js +7 -0
  651. data/vendor/assets/ace-1.1.8/snippets/clojure.snippets +90 -0
  652. data/vendor/assets/ace-1.1.8/snippets/cmake.snippets +58 -0
  653. data/vendor/assets/ace-1.1.8/snippets/cobol.js +7 -0
  654. data/vendor/assets/ace-1.1.8/snippets/cobol.snippets +0 -0
  655. data/vendor/assets/ace-1.1.8/snippets/coffee.js +7 -0
  656. data/vendor/assets/ace-1.1.8/snippets/coffee.snippets +95 -0
  657. data/vendor/assets/ace-1.1.8/snippets/coldfusion.js +7 -0
  658. data/vendor/assets/ace-1.1.8/snippets/coldfusion.snippets +0 -0
  659. data/vendor/assets/ace-1.1.8/snippets/cs.snippets +374 -0
  660. data/vendor/assets/ace-1.1.8/snippets/csharp.js +7 -0
  661. data/vendor/assets/ace-1.1.8/snippets/csharp.snippets +0 -0
  662. data/vendor/assets/ace-1.1.8/snippets/css.js +7 -0
  663. data/vendor/assets/ace-1.1.8/snippets/css.snippets +967 -0
  664. data/vendor/assets/ace-1.1.8/snippets/curly.js +7 -0
  665. data/vendor/assets/ace-1.1.8/snippets/curly.snippets +0 -0
  666. data/vendor/assets/ace-1.1.8/snippets/d.js +7 -0
  667. data/vendor/assets/ace-1.1.8/snippets/d.snippets +0 -0
  668. data/vendor/assets/ace-1.1.8/snippets/dart.js +7 -0
  669. data/vendor/assets/ace-1.1.8/snippets/dart.snippets +83 -0
  670. data/vendor/assets/ace-1.1.8/snippets/diff.js +7 -0
  671. data/vendor/assets/ace-1.1.8/snippets/diff.snippets +11 -0
  672. data/vendor/assets/ace-1.1.8/snippets/django.js +7 -0
  673. data/vendor/assets/ace-1.1.8/snippets/django.snippets +108 -0
  674. data/vendor/assets/ace-1.1.8/snippets/dockerfile.js +7 -0
  675. data/vendor/assets/ace-1.1.8/snippets/dockerfile.snippets +0 -0
  676. data/vendor/assets/ace-1.1.8/snippets/dot.js +7 -0
  677. data/vendor/assets/ace-1.1.8/snippets/dot.snippets +0 -0
  678. data/vendor/assets/ace-1.1.8/snippets/dummy.js +7 -0
  679. data/vendor/assets/ace-1.1.8/snippets/dummy_syntax.js +7 -0
  680. data/vendor/assets/ace-1.1.8/snippets/eiffel.js +7 -0
  681. data/vendor/assets/ace-1.1.8/snippets/eiffel.snippets +0 -0
  682. data/vendor/assets/ace-1.1.8/snippets/ejs.js +7 -0
  683. data/vendor/assets/ace-1.1.8/snippets/ejs.snippets +0 -0
  684. data/vendor/assets/ace-1.1.8/snippets/elixir.js +7 -0
  685. data/vendor/assets/ace-1.1.8/snippets/elixir.snippets +0 -0
  686. data/vendor/assets/ace-1.1.8/snippets/elm.js +7 -0
  687. data/vendor/assets/ace-1.1.8/snippets/elm.snippets +0 -0
  688. data/vendor/assets/ace-1.1.8/snippets/erlang.js +7 -0
  689. data/vendor/assets/ace-1.1.8/snippets/erlang.snippets +160 -0
  690. data/vendor/assets/ace-1.1.8/snippets/eruby.snippets +113 -0
  691. data/vendor/assets/ace-1.1.8/snippets/falcon.snippets +71 -0
  692. data/vendor/assets/ace-1.1.8/snippets/forth.js +7 -0
  693. data/vendor/assets/ace-1.1.8/snippets/forth.snippets +0 -0
  694. data/vendor/assets/ace-1.1.8/snippets/ftl.js +7 -0
  695. data/vendor/assets/ace-1.1.8/snippets/ftl.snippets +0 -0
  696. data/vendor/assets/ace-1.1.8/snippets/gcode.js +7 -0
  697. data/vendor/assets/ace-1.1.8/snippets/gcode.snippets +0 -0
  698. data/vendor/assets/ace-1.1.8/snippets/gherkin.js +7 -0
  699. data/vendor/assets/ace-1.1.8/snippets/gherkin.snippets +0 -0
  700. data/vendor/assets/ace-1.1.8/snippets/gitignore.js +7 -0
  701. data/vendor/assets/ace-1.1.8/snippets/gitignore.snippets +0 -0
  702. data/vendor/assets/ace-1.1.8/snippets/glsl.js +7 -0
  703. data/vendor/assets/ace-1.1.8/snippets/glsl.snippets +0 -0
  704. data/vendor/assets/ace-1.1.8/snippets/go.snippets +201 -0
  705. data/vendor/assets/ace-1.1.8/snippets/golang.js +7 -0
  706. data/vendor/assets/ace-1.1.8/snippets/golang.snippets +0 -0
  707. data/vendor/assets/ace-1.1.8/snippets/groovy.js +7 -0
  708. data/vendor/assets/ace-1.1.8/snippets/groovy.snippets +0 -0
  709. data/vendor/assets/ace-1.1.8/snippets/haml.js +7 -0
  710. data/vendor/assets/ace-1.1.8/snippets/haml.snippets +20 -0
  711. data/vendor/assets/ace-1.1.8/snippets/handlebars.js +7 -0
  712. data/vendor/assets/ace-1.1.8/snippets/handlebars.snippets +0 -0
  713. data/vendor/assets/ace-1.1.8/snippets/haskell.js +7 -0
  714. data/vendor/assets/ace-1.1.8/snippets/haskell.snippets +82 -0
  715. data/vendor/assets/ace-1.1.8/snippets/haxe.js +7 -0
  716. data/vendor/assets/ace-1.1.8/snippets/haxe.snippets +0 -0
  717. data/vendor/assets/ace-1.1.8/snippets/html.js +7 -0
  718. data/vendor/assets/ace-1.1.8/snippets/html.snippets +828 -0
  719. data/vendor/assets/ace-1.1.8/snippets/html_ruby.js +7 -0
  720. data/vendor/assets/ace-1.1.8/snippets/html_ruby.snippets +0 -0
  721. data/vendor/assets/ace-1.1.8/snippets/htmldjango.snippets +136 -0
  722. data/vendor/assets/ace-1.1.8/snippets/htmltornado.snippets +55 -0
  723. data/vendor/assets/ace-1.1.8/snippets/ini.js +7 -0
  724. data/vendor/assets/ace-1.1.8/snippets/ini.snippets +0 -0
  725. data/vendor/assets/ace-1.1.8/snippets/io.js +69 -0
  726. data/vendor/assets/ace-1.1.8/snippets/io.snippets +0 -0
  727. data/vendor/assets/ace-1.1.8/snippets/jack.js +7 -0
  728. data/vendor/assets/ace-1.1.8/snippets/jack.snippets +0 -0
  729. data/vendor/assets/ace-1.1.8/snippets/jade.js +7 -0
  730. data/vendor/assets/ace-1.1.8/snippets/jade.snippets +0 -0
  731. data/vendor/assets/ace-1.1.8/snippets/java.js +7 -0
  732. data/vendor/assets/ace-1.1.8/snippets/java.snippets +240 -0
  733. data/vendor/assets/ace-1.1.8/snippets/javascript-jquery.snippets +589 -0
  734. data/vendor/assets/ace-1.1.8/snippets/javascript.js +7 -0
  735. data/vendor/assets/ace-1.1.8/snippets/javascript.snippets +195 -0
  736. data/vendor/assets/ace-1.1.8/snippets/json.js +7 -0
  737. data/vendor/assets/ace-1.1.8/snippets/json.snippets +0 -0
  738. data/vendor/assets/ace-1.1.8/snippets/jsoniq.js +7 -0
  739. data/vendor/assets/ace-1.1.8/snippets/jsoniq.snippets +61 -0
  740. data/vendor/assets/ace-1.1.8/snippets/jsp.js +7 -0
  741. data/vendor/assets/ace-1.1.8/snippets/jsp.snippets +99 -0
  742. data/vendor/assets/ace-1.1.8/snippets/jsx.js +7 -0
  743. data/vendor/assets/ace-1.1.8/snippets/jsx.snippets +0 -0
  744. data/vendor/assets/ace-1.1.8/snippets/julia.js +7 -0
  745. data/vendor/assets/ace-1.1.8/snippets/julia.snippets +0 -0
  746. data/vendor/assets/ace-1.1.8/snippets/latex.js +7 -0
  747. data/vendor/assets/ace-1.1.8/snippets/latex.snippets +0 -0
  748. data/vendor/assets/ace-1.1.8/snippets/ledger.snippets +5 -0
  749. data/vendor/assets/ace-1.1.8/snippets/less.js +7 -0
  750. data/vendor/assets/ace-1.1.8/snippets/less.snippets +0 -0
  751. data/vendor/assets/ace-1.1.8/snippets/liquid.js +7 -0
  752. data/vendor/assets/ace-1.1.8/snippets/liquid.snippets +0 -0
  753. data/vendor/assets/ace-1.1.8/snippets/lisp.js +7 -0
  754. data/vendor/assets/ace-1.1.8/snippets/lisp.snippets +0 -0
  755. data/vendor/assets/ace-1.1.8/snippets/livescript.js +7 -0
  756. data/vendor/assets/ace-1.1.8/snippets/livescript.snippets +0 -0
  757. data/vendor/assets/ace-1.1.8/snippets/logiql.js +7 -0
  758. data/vendor/assets/ace-1.1.8/snippets/logiql.snippets +0 -0
  759. data/vendor/assets/ace-1.1.8/snippets/lsl.js +7 -0
  760. data/vendor/assets/ace-1.1.8/snippets/lsl.snippets +1066 -0
  761. data/vendor/assets/ace-1.1.8/snippets/lua.js +7 -0
  762. data/vendor/assets/ace-1.1.8/snippets/lua.snippets +21 -0
  763. data/vendor/assets/ace-1.1.8/snippets/luapage.js +7 -0
  764. data/vendor/assets/ace-1.1.8/snippets/luapage.snippets +0 -0
  765. data/vendor/assets/ace-1.1.8/snippets/lucene.js +7 -0
  766. data/vendor/assets/ace-1.1.8/snippets/lucene.snippets +0 -0
  767. data/vendor/assets/ace-1.1.8/snippets/makefile.js +7 -0
  768. data/vendor/assets/ace-1.1.8/snippets/makefile.snippets +4 -0
  769. data/vendor/assets/ace-1.1.8/snippets/mako.snippets +54 -0
  770. data/vendor/assets/ace-1.1.8/snippets/markdown.js +7 -0
  771. data/vendor/assets/ace-1.1.8/snippets/markdown.snippets +88 -0
  772. data/vendor/assets/ace-1.1.8/snippets/matlab.js +7 -0
  773. data/vendor/assets/ace-1.1.8/snippets/matlab.snippets +0 -0
  774. data/vendor/assets/ace-1.1.8/snippets/mel.js +7 -0
  775. data/vendor/assets/ace-1.1.8/snippets/mel.snippets +0 -0
  776. data/vendor/assets/ace-1.1.8/snippets/mushcode.js +7 -0
  777. data/vendor/assets/ace-1.1.8/snippets/mushcode.snippets +0 -0
  778. data/vendor/assets/ace-1.1.8/snippets/mushcode_high_rules.js +7 -0
  779. data/vendor/assets/ace-1.1.8/snippets/mushcode_high_rules.snippets +0 -0
  780. data/vendor/assets/ace-1.1.8/snippets/mysql.js +7 -0
  781. data/vendor/assets/ace-1.1.8/snippets/mysql.snippets +0 -0
  782. data/vendor/assets/ace-1.1.8/snippets/nix.js +7 -0
  783. data/vendor/assets/ace-1.1.8/snippets/nix.snippets +0 -0
  784. data/vendor/assets/ace-1.1.8/snippets/objc.snippets +247 -0
  785. data/vendor/assets/ace-1.1.8/snippets/objectivec.js +7 -0
  786. data/vendor/assets/ace-1.1.8/snippets/objectivec.snippets +0 -0
  787. data/vendor/assets/ace-1.1.8/snippets/ocaml.js +7 -0
  788. data/vendor/assets/ace-1.1.8/snippets/ocaml.snippets +0 -0
  789. data/vendor/assets/ace-1.1.8/snippets/pascal.js +7 -0
  790. data/vendor/assets/ace-1.1.8/snippets/pascal.snippets +0 -0
  791. data/vendor/assets/ace-1.1.8/snippets/perl.js +7 -0
  792. data/vendor/assets/ace-1.1.8/snippets/perl.snippets +347 -0
  793. data/vendor/assets/ace-1.1.8/snippets/pgsql.js +7 -0
  794. data/vendor/assets/ace-1.1.8/snippets/pgsql.snippets +0 -0
  795. data/vendor/assets/ace-1.1.8/snippets/php.js +7 -0
  796. data/vendor/assets/ace-1.1.8/snippets/php.snippets +377 -0
  797. data/vendor/assets/ace-1.1.8/snippets/plain_text.js +7 -0
  798. data/vendor/assets/ace-1.1.8/snippets/plain_text.snippets +0 -0
  799. data/vendor/assets/ace-1.1.8/snippets/powershell.js +7 -0
  800. data/vendor/assets/ace-1.1.8/snippets/powershell.snippets +0 -0
  801. data/vendor/assets/ace-1.1.8/snippets/praat.js +7 -0
  802. data/vendor/assets/ace-1.1.8/snippets/praat.snippets +0 -0
  803. data/vendor/assets/ace-1.1.8/snippets/prolog.js +7 -0
  804. data/vendor/assets/ace-1.1.8/snippets/prolog.snippets +0 -0
  805. data/vendor/assets/ace-1.1.8/snippets/properties.js +7 -0
  806. data/vendor/assets/ace-1.1.8/snippets/properties.snippets +0 -0
  807. data/vendor/assets/ace-1.1.8/snippets/protobuf.js +7 -0
  808. data/vendor/assets/ace-1.1.8/snippets/protobuf.snippets +0 -0
  809. data/vendor/assets/ace-1.1.8/snippets/python.js +7 -0
  810. data/vendor/assets/ace-1.1.8/snippets/python.snippets +158 -0
  811. data/vendor/assets/ace-1.1.8/snippets/r.js +7 -0
  812. data/vendor/assets/ace-1.1.8/snippets/r.snippets +121 -0
  813. data/vendor/assets/ace-1.1.8/snippets/rdoc.js +7 -0
  814. data/vendor/assets/ace-1.1.8/snippets/rdoc.snippets +0 -0
  815. data/vendor/assets/ace-1.1.8/snippets/rhtml.js +7 -0
  816. data/vendor/assets/ace-1.1.8/snippets/rhtml.snippets +0 -0
  817. data/vendor/assets/ace-1.1.8/snippets/rst.snippets +22 -0
  818. data/vendor/assets/ace-1.1.8/snippets/ruby.js +7 -0
  819. data/vendor/assets/ace-1.1.8/snippets/ruby.snippets +928 -0
  820. data/vendor/assets/ace-1.1.8/snippets/rust.js +7 -0
  821. data/vendor/assets/ace-1.1.8/snippets/rust.snippets +0 -0
  822. data/vendor/assets/ace-1.1.8/snippets/sass.js +7 -0
  823. data/vendor/assets/ace-1.1.8/snippets/sass.snippets +0 -0
  824. data/vendor/assets/ace-1.1.8/snippets/scad.js +7 -0
  825. data/vendor/assets/ace-1.1.8/snippets/scad.snippets +0 -0
  826. data/vendor/assets/ace-1.1.8/snippets/scala.js +7 -0
  827. data/vendor/assets/ace-1.1.8/snippets/scala.snippets +0 -0
  828. data/vendor/assets/ace-1.1.8/snippets/scheme.js +7 -0
  829. data/vendor/assets/ace-1.1.8/snippets/scheme.snippets +0 -0
  830. data/vendor/assets/ace-1.1.8/snippets/scss.js +7 -0
  831. data/vendor/assets/ace-1.1.8/snippets/scss.snippets +0 -0
  832. data/vendor/assets/ace-1.1.8/snippets/sh.js +7 -0
  833. data/vendor/assets/ace-1.1.8/snippets/sh.snippets +83 -0
  834. data/vendor/assets/ace-1.1.8/snippets/sjs.js +7 -0
  835. data/vendor/assets/ace-1.1.8/snippets/sjs.snippets +0 -0
  836. data/vendor/assets/ace-1.1.8/snippets/smarty.js +7 -0
  837. data/vendor/assets/ace-1.1.8/snippets/smarty.snippets +0 -0
  838. data/vendor/assets/ace-1.1.8/snippets/snippets.js +7 -0
  839. data/vendor/assets/ace-1.1.8/snippets/snippets.snippets +9 -0
  840. data/vendor/assets/ace-1.1.8/snippets/soy_template.js +7 -0
  841. data/vendor/assets/ace-1.1.8/snippets/soy_template.snippets +0 -0
  842. data/vendor/assets/ace-1.1.8/snippets/space.js +7 -0
  843. data/vendor/assets/ace-1.1.8/snippets/space.snippets +0 -0
  844. data/vendor/assets/ace-1.1.8/snippets/sql.js +7 -0
  845. data/vendor/assets/ace-1.1.8/snippets/sql.snippets +26 -0
  846. data/vendor/assets/ace-1.1.8/snippets/stylus.js +7 -0
  847. data/vendor/assets/ace-1.1.8/snippets/stylus.snippets +0 -0
  848. data/vendor/assets/ace-1.1.8/snippets/svg.js +7 -0
  849. data/vendor/assets/ace-1.1.8/snippets/svg.snippets +0 -0
  850. data/vendor/assets/ace-1.1.8/snippets/tcl.js +7 -0
  851. data/vendor/assets/ace-1.1.8/snippets/tcl.snippets +92 -0
  852. data/vendor/assets/ace-1.1.8/snippets/tex.js +7 -0
  853. data/vendor/assets/ace-1.1.8/snippets/tex.snippets +191 -0
  854. data/vendor/assets/ace-1.1.8/snippets/text.js +7 -0
  855. data/vendor/assets/ace-1.1.8/snippets/text.snippets +0 -0
  856. data/vendor/assets/ace-1.1.8/snippets/textile.js +7 -0
  857. data/vendor/assets/ace-1.1.8/snippets/textile.snippets +30 -0
  858. data/vendor/assets/ace-1.1.8/snippets/tmsnippet.snippets +0 -0
  859. data/vendor/assets/ace-1.1.8/snippets/toml.js +7 -0
  860. data/vendor/assets/ace-1.1.8/snippets/toml.snippets +0 -0
  861. data/vendor/assets/ace-1.1.8/snippets/twig.js +7 -0
  862. data/vendor/assets/ace-1.1.8/snippets/twig.snippets +0 -0
  863. data/vendor/assets/ace-1.1.8/snippets/typescript.js +7 -0
  864. data/vendor/assets/ace-1.1.8/snippets/typescript.snippets +0 -0
  865. data/vendor/assets/ace-1.1.8/snippets/vala.js +195 -0
  866. data/vendor/assets/ace-1.1.8/snippets/vala.snippets +0 -0
  867. data/vendor/assets/ace-1.1.8/snippets/vbscript.js +7 -0
  868. data/vendor/assets/ace-1.1.8/snippets/vbscript.snippets +0 -0
  869. data/vendor/assets/ace-1.1.8/snippets/velocity.js +8 -0
  870. data/vendor/assets/ace-1.1.8/snippets/velocity.snippets +28 -0
  871. data/vendor/assets/ace-1.1.8/snippets/verilog.js +7 -0
  872. data/vendor/assets/ace-1.1.8/snippets/verilog.snippets +0 -0
  873. data/vendor/assets/ace-1.1.8/snippets/vhdl.js +7 -0
  874. data/vendor/assets/ace-1.1.8/snippets/vhdl.snippets +0 -0
  875. data/vendor/assets/ace-1.1.8/snippets/xml.js +7 -0
  876. data/vendor/assets/ace-1.1.8/snippets/xml.snippets +0 -0
  877. data/vendor/assets/ace-1.1.8/snippets/xquery.js +7 -0
  878. data/vendor/assets/ace-1.1.8/snippets/xquery.snippets +61 -0
  879. data/vendor/assets/ace-1.1.8/snippets/xslt.snippets +97 -0
  880. data/vendor/assets/ace-1.1.8/snippets/yaml.js +7 -0
  881. data/vendor/assets/ace-1.1.8/snippets/yaml.snippets +0 -0
  882. data/vendor/assets/ace-1.1.8/snippets_test.js +131 -0
  883. data/vendor/assets/ace-1.1.8/split.js +373 -0
  884. data/vendor/assets/ace-1.1.8/test/all.js +35 -0
  885. data/vendor/assets/ace-1.1.8/test/all_browser.js +141 -0
  886. data/vendor/assets/ace-1.1.8/test/assertions.js +56 -0
  887. data/vendor/assets/ace-1.1.8/test/asyncjs/assert.js +313 -0
  888. data/vendor/assets/ace-1.1.8/test/asyncjs/async.js +529 -0
  889. data/vendor/assets/ace-1.1.8/test/asyncjs/index.js +13 -0
  890. data/vendor/assets/ace-1.1.8/test/asyncjs/test.js +195 -0
  891. data/vendor/assets/ace-1.1.8/test/asyncjs/utils.js +65 -0
  892. data/vendor/assets/ace-1.1.8/test/benchmark.js +78 -0
  893. data/vendor/assets/ace-1.1.8/test/mockdom.js +10 -0
  894. data/vendor/assets/ace-1.1.8/test/mockrenderer.js +208 -0
  895. data/vendor/assets/ace-1.1.8/test/tests.html +46 -0
  896. data/vendor/assets/ace-1.1.8/theme/ambiance.css +221 -0
  897. data/vendor/assets/ace-1.1.8/theme/ambiance.js +33 -0
  898. data/vendor/assets/ace-1.1.8/theme/chaos.css +154 -0
  899. data/vendor/assets/ace-1.1.8/theme/chaos.js +33 -0
  900. data/vendor/assets/ace-1.1.8/theme/chrome.css +154 -0
  901. data/vendor/assets/ace-1.1.8/theme/chrome.js +39 -0
  902. data/vendor/assets/ace-1.1.8/theme/clouds.css +112 -0
  903. data/vendor/assets/ace-1.1.8/theme/clouds.js +39 -0
  904. data/vendor/assets/ace-1.1.8/theme/clouds_midnight.css +113 -0
  905. data/vendor/assets/ace-1.1.8/theme/clouds_midnight.js +39 -0
  906. data/vendor/assets/ace-1.1.8/theme/cobalt.css +134 -0
  907. data/vendor/assets/ace-1.1.8/theme/cobalt.js +39 -0
  908. data/vendor/assets/ace-1.1.8/theme/crimson_editor.css +143 -0
  909. data/vendor/assets/ace-1.1.8/theme/crimson_editor.js +39 -0
  910. data/vendor/assets/ace-1.1.8/theme/dawn.css +127 -0
  911. data/vendor/assets/ace-1.1.8/theme/dawn.js +39 -0
  912. data/vendor/assets/ace-1.1.8/theme/dreamweaver.css +176 -0
  913. data/vendor/assets/ace-1.1.8/theme/dreamweaver.js +38 -0
  914. data/vendor/assets/ace-1.1.8/theme/eclipse.css +113 -0
  915. data/vendor/assets/ace-1.1.8/theme/eclipse.js +41 -0
  916. data/vendor/assets/ace-1.1.8/theme/github.css +119 -0
  917. data/vendor/assets/ace-1.1.8/theme/github.js +39 -0
  918. data/vendor/assets/ace-1.1.8/theme/idle_fingers.css +113 -0
  919. data/vendor/assets/ace-1.1.8/theme/idle_fingers.js +39 -0
  920. data/vendor/assets/ace-1.1.8/theme/katzenmilch.css +140 -0
  921. data/vendor/assets/ace-1.1.8/theme/katzenmilch.js +39 -0
  922. data/vendor/assets/ace-1.1.8/theme/kr_theme.css +124 -0
  923. data/vendor/assets/ace-1.1.8/theme/kr_theme.js +39 -0
  924. data/vendor/assets/ace-1.1.8/theme/kuroir.css +67 -0
  925. data/vendor/assets/ace-1.1.8/theme/kuroir.js +39 -0
  926. data/vendor/assets/ace-1.1.8/theme/merbivore.css +110 -0
  927. data/vendor/assets/ace-1.1.8/theme/merbivore.js +39 -0
  928. data/vendor/assets/ace-1.1.8/theme/merbivore_soft.css +111 -0
  929. data/vendor/assets/ace-1.1.8/theme/merbivore_soft.js +39 -0
  930. data/vendor/assets/ace-1.1.8/theme/mono_industrial.css +126 -0
  931. data/vendor/assets/ace-1.1.8/theme/mono_industrial.js +39 -0
  932. data/vendor/assets/ace-1.1.8/theme/monokai.css +122 -0
  933. data/vendor/assets/ace-1.1.8/theme/monokai.js +39 -0
  934. data/vendor/assets/ace-1.1.8/theme/pastel_on_dark.css +129 -0
  935. data/vendor/assets/ace-1.1.8/theme/pastel_on_dark.js +39 -0
  936. data/vendor/assets/ace-1.1.8/theme/solarized_dark.css +101 -0
  937. data/vendor/assets/ace-1.1.8/theme/solarized_dark.js +39 -0
  938. data/vendor/assets/ace-1.1.8/theme/solarized_light.css +106 -0
  939. data/vendor/assets/ace-1.1.8/theme/solarized_light.js +39 -0
  940. data/vendor/assets/ace-1.1.8/theme/terminal.css +132 -0
  941. data/vendor/assets/ace-1.1.8/theme/terminal.js +39 -0
  942. data/vendor/assets/ace-1.1.8/theme/textmate.css +155 -0
  943. data/vendor/assets/ace-1.1.8/theme/textmate.js +40 -0
  944. data/vendor/assets/ace-1.1.8/theme/tomorrow.css +125 -0
  945. data/vendor/assets/ace-1.1.8/theme/tomorrow.js +39 -0
  946. data/vendor/assets/ace-1.1.8/theme/tomorrow_night.css +125 -0
  947. data/vendor/assets/ace-1.1.8/theme/tomorrow_night.js +39 -0
  948. data/vendor/assets/ace-1.1.8/theme/tomorrow_night_blue.css +122 -0
  949. data/vendor/assets/ace-1.1.8/theme/tomorrow_night_blue.js +39 -0
  950. data/vendor/assets/ace-1.1.8/theme/tomorrow_night_bright.css +141 -0
  951. data/vendor/assets/ace-1.1.8/theme/tomorrow_night_bright.js +39 -0
  952. data/vendor/assets/ace-1.1.8/theme/tomorrow_night_eighties.css +125 -0
  953. data/vendor/assets/ace-1.1.8/theme/tomorrow_night_eighties.js +39 -0
  954. data/vendor/assets/ace-1.1.8/theme/twilight.css +128 -0
  955. data/vendor/assets/ace-1.1.8/theme/twilight.js +39 -0
  956. data/vendor/assets/ace-1.1.8/theme/vibrant_ink.css +110 -0
  957. data/vendor/assets/ace-1.1.8/theme/vibrant_ink.js +39 -0
  958. data/vendor/assets/ace-1.1.8/theme/xcode.css +103 -0
  959. data/vendor/assets/ace-1.1.8/theme/xcode.js +39 -0
  960. data/vendor/assets/ace-1.1.8/token_iterator.js +150 -0
  961. data/vendor/assets/ace-1.1.8/token_iterator_test.js +212 -0
  962. data/vendor/assets/ace-1.1.8/tokenizer.js +366 -0
  963. data/vendor/assets/ace-1.1.8/tokenizer_dev.js +183 -0
  964. data/vendor/assets/ace-1.1.8/tokenizer_test.js +97 -0
  965. data/vendor/assets/ace-1.1.8/tooltip.js +138 -0
  966. data/vendor/assets/ace-1.1.8/undomanager.js +168 -0
  967. data/vendor/assets/ace-1.1.8/unicode.js +107 -0
  968. data/vendor/assets/ace-1.1.8/virtual_renderer.js +1759 -0
  969. data/vendor/assets/ace-1.1.8/virtual_renderer_test.js +86 -0
  970. data/vendor/assets/ace-1.1.8/worker/mirror.js +49 -0
  971. data/vendor/assets/ace-1.1.8/worker/worker.js +193 -0
  972. data/vendor/assets/ace-1.1.8/worker/worker_client.js +255 -0
  973. data/vendor/assets/ace-1.1.8/worker/worker_test.js +125 -0
  974. data/vendor/assets/ckeditor-4.4.7/CHANGES.md +720 -0
  975. data/vendor/assets/ckeditor-4.4.7/LICENSE.md +1264 -0
  976. data/vendor/assets/ckeditor-4.4.7/README.md +39 -0
  977. data/vendor/assets/ckeditor-4.4.7/adapters/jquery.js +10 -0
  978. data/vendor/assets/ckeditor-4.4.7/build-config.js +83 -0
  979. data/vendor/assets/ckeditor-4.4.7/ckeditor.js +829 -0
  980. data/vendor/assets/ckeditor-4.4.7/config.js +34 -0
  981. data/vendor/assets/ckeditor-4.4.7/contents.css +134 -0
  982. data/vendor/assets/ckeditor-4.4.7/lang/en.js +5 -0
  983. data/vendor/assets/ckeditor-4.4.7/plugins/clipboard/dialogs/paste.js +11 -0
  984. data/vendor/assets/ckeditor-4.4.7/plugins/dialog/dialogDefinition.js +4 -0
  985. data/vendor/assets/ckeditor-4.4.7/plugins/icons.png +0 -0
  986. data/vendor/assets/ckeditor-4.4.7/plugins/icons_hidpi.png +0 -0
  987. data/vendor/assets/ckeditor-4.4.7/plugins/image/dialogs/image.js +43 -0
  988. data/vendor/assets/ckeditor-4.4.7/plugins/image/images/noimage.png +0 -0
  989. data/vendor/assets/ckeditor-4.4.7/plugins/link/dialogs/anchor.js +7 -0
  990. data/vendor/assets/ckeditor-4.4.7/plugins/link/dialogs/link.js +26 -0
  991. data/vendor/assets/ckeditor-4.4.7/plugins/link/images/anchor.png +0 -0
  992. data/vendor/assets/ckeditor-4.4.7/plugins/link/images/hidpi/anchor.png +0 -0
  993. data/vendor/assets/ckeditor-4.4.7/plugins/magicline/images/hidpi/icon-rtl.png +0 -0
  994. data/vendor/assets/ckeditor-4.4.7/plugins/magicline/images/hidpi/icon.png +0 -0
  995. data/vendor/assets/ckeditor-4.4.7/plugins/magicline/images/icon-rtl.png +0 -0
  996. data/vendor/assets/ckeditor-4.4.7/plugins/magicline/images/icon.png +0 -0
  997. data/vendor/assets/ckeditor-4.4.7/plugins/pastefromword/filter/default.js +31 -0
  998. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_address.png +0 -0
  999. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_blockquote.png +0 -0
  1000. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_div.png +0 -0
  1001. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_h1.png +0 -0
  1002. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_h2.png +0 -0
  1003. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_h3.png +0 -0
  1004. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_h4.png +0 -0
  1005. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_h5.png +0 -0
  1006. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_h6.png +0 -0
  1007. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_p.png +0 -0
  1008. data/vendor/assets/ckeditor-4.4.7/plugins/showblocks/images/block_pre.png +0 -0
  1009. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/_translationstatus.txt +20 -0
  1010. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/af.js +13 -0
  1011. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/ar.js +13 -0
  1012. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/bg.js +13 -0
  1013. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/ca.js +14 -0
  1014. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/cs.js +13 -0
  1015. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/cy.js +14 -0
  1016. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/da.js +13 -0
  1017. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/de.js +13 -0
  1018. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/el.js +13 -0
  1019. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/en-gb.js +13 -0
  1020. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/en.js +13 -0
  1021. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/eo.js +12 -0
  1022. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/es.js +13 -0
  1023. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/et.js +13 -0
  1024. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/fa.js +12 -0
  1025. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/fi.js +13 -0
  1026. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/fr-ca.js +10 -0
  1027. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/fr.js +11 -0
  1028. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/gl.js +13 -0
  1029. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/he.js +12 -0
  1030. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/hr.js +13 -0
  1031. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/hu.js +12 -0
  1032. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/id.js +13 -0
  1033. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/it.js +14 -0
  1034. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/ja.js +9 -0
  1035. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/km.js +13 -0
  1036. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/ku.js +13 -0
  1037. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/lt.js +13 -0
  1038. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/lv.js +13 -0
  1039. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/nb.js +11 -0
  1040. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/nl.js +13 -0
  1041. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/no.js +11 -0
  1042. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/pl.js +12 -0
  1043. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/pt-br.js +11 -0
  1044. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/pt.js +13 -0
  1045. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/ru.js +13 -0
  1046. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/si.js +13 -0
  1047. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/sk.js +13 -0
  1048. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/sl.js +12 -0
  1049. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/sq.js +13 -0
  1050. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/sv.js +11 -0
  1051. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/th.js +13 -0
  1052. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/tr.js +12 -0
  1053. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/tt.js +13 -0
  1054. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/ug.js +13 -0
  1055. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/uk.js +12 -0
  1056. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/vi.js +14 -0
  1057. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/zh-cn.js +9 -0
  1058. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/lang/zh.js +12 -0
  1059. data/vendor/assets/ckeditor-4.4.7/plugins/specialchar/dialogs/specialchar.js +14 -0
  1060. data/vendor/assets/ckeditor-4.4.7/plugins/table/dialogs/table.js +21 -0
  1061. data/vendor/assets/ckeditor-4.4.7/plugins/templates/dialogs/templates.css +84 -0
  1062. data/vendor/assets/ckeditor-4.4.7/plugins/templates/dialogs/templates.js +10 -0
  1063. data/vendor/assets/ckeditor-4.4.7/plugins/templates/templates/default.js +6 -0
  1064. data/vendor/assets/ckeditor-4.4.7/plugins/templates/templates/images/template1.gif +0 -0
  1065. data/vendor/assets/ckeditor-4.4.7/plugins/templates/templates/images/template2.gif +0 -0
  1066. data/vendor/assets/ckeditor-4.4.7/plugins/templates/templates/images/template3.gif +0 -0
  1067. data/vendor/assets/ckeditor-4.4.7/plugins/uploadcare/README.md +64 -0
  1068. data/vendor/assets/ckeditor-4.4.7/plugins/uploadcare/icons/hidpi/uploadcare.png +0 -0
  1069. data/vendor/assets/ckeditor-4.4.7/plugins/uploadcare/icons/uploadcare.png +0 -0
  1070. data/vendor/assets/ckeditor-4.4.7/samples/ajax.html +82 -0
  1071. data/vendor/assets/ckeditor-4.4.7/samples/api.html +207 -0
  1072. data/vendor/assets/ckeditor-4.4.7/samples/appendto.html +56 -0
  1073. data/vendor/assets/ckeditor-4.4.7/samples/assets/inlineall/logo.png +0 -0
  1074. data/vendor/assets/ckeditor-4.4.7/samples/assets/outputxhtml/outputxhtml.css +204 -0
  1075. data/vendor/assets/ckeditor-4.4.7/samples/assets/posteddata.php +59 -0
  1076. data/vendor/assets/ckeditor-4.4.7/samples/assets/sample.jpg +0 -0
  1077. data/vendor/assets/ckeditor-4.4.7/samples/assets/uilanguages/languages.js +7 -0
  1078. data/vendor/assets/ckeditor-4.4.7/samples/datafiltering.html +401 -0
  1079. data/vendor/assets/ckeditor-4.4.7/samples/divreplace.html +141 -0
  1080. data/vendor/assets/ckeditor-4.4.7/samples/index.html +119 -0
  1081. data/vendor/assets/ckeditor-4.4.7/samples/inlineall.html +311 -0
  1082. data/vendor/assets/ckeditor-4.4.7/samples/inlinebycode.html +121 -0
  1083. data/vendor/assets/ckeditor-4.4.7/samples/inlinetextarea.html +110 -0
  1084. data/vendor/assets/ckeditor-4.4.7/samples/jquery.html +100 -0
  1085. data/vendor/assets/ckeditor-4.4.7/samples/plugins/dialog/assets/my_dialog.js +48 -0
  1086. data/vendor/assets/ckeditor-4.4.7/samples/plugins/dialog/dialog.html +187 -0
  1087. data/vendor/assets/ckeditor-4.4.7/samples/plugins/enterkey/enterkey.html +103 -0
  1088. data/vendor/assets/ckeditor-4.4.7/samples/plugins/magicline/magicline.html +206 -0
  1089. data/vendor/assets/ckeditor-4.4.7/samples/plugins/toolbar/toolbar.html +232 -0
  1090. data/vendor/assets/ckeditor-4.4.7/samples/readonly.html +73 -0
  1091. data/vendor/assets/ckeditor-4.4.7/samples/replacebyclass.html +57 -0
  1092. data/vendor/assets/ckeditor-4.4.7/samples/replacebycode.html +56 -0
  1093. data/vendor/assets/ckeditor-4.4.7/samples/sample.css +365 -0
  1094. data/vendor/assets/ckeditor-4.4.7/samples/sample.js +50 -0
  1095. data/vendor/assets/ckeditor-4.4.7/samples/sample_posteddata.php +16 -0
  1096. data/vendor/assets/ckeditor-4.4.7/samples/tabindex.html +75 -0
  1097. data/vendor/assets/ckeditor-4.4.7/samples/uicolor.html +69 -0
  1098. data/vendor/assets/ckeditor-4.4.7/samples/uilanguages.html +119 -0
  1099. data/vendor/assets/ckeditor-4.4.7/samples/xhtmlstyle.html +231 -0
  1100. data/vendor/assets/ckeditor-4.4.7/skins/flat/dialog.css +5 -0
  1101. data/vendor/assets/ckeditor-4.4.7/skins/flat/dialog_ie.css +5 -0
  1102. data/vendor/assets/ckeditor-4.4.7/skins/flat/dialog_ie7.css +5 -0
  1103. data/vendor/assets/ckeditor-4.4.7/skins/flat/dialog_ie8.css +5 -0
  1104. data/vendor/assets/ckeditor-4.4.7/skins/flat/dialog_iequirks.css +5 -0
  1105. data/vendor/assets/ckeditor-4.4.7/skins/flat/editor.css +5 -0
  1106. data/vendor/assets/ckeditor-4.4.7/skins/flat/editor_gecko.css +5 -0
  1107. data/vendor/assets/ckeditor-4.4.7/skins/flat/editor_ie.css +5 -0
  1108. data/vendor/assets/ckeditor-4.4.7/skins/flat/editor_ie7.css +5 -0
  1109. data/vendor/assets/ckeditor-4.4.7/skins/flat/editor_ie8.css +5 -0
  1110. data/vendor/assets/ckeditor-4.4.7/skins/flat/editor_iequirks.css +5 -0
  1111. data/vendor/assets/ckeditor-4.4.7/skins/flat/icons.png +0 -0
  1112. data/vendor/assets/ckeditor-4.4.7/skins/flat/icons_hidpi.png +0 -0
  1113. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/arrow.png +0 -0
  1114. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/close.png +0 -0
  1115. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/hidpi/close.png +0 -0
  1116. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/hidpi/lock-open.png +0 -0
  1117. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/hidpi/lock.png +0 -0
  1118. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/hidpi/refresh.png +0 -0
  1119. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/lock-open.png +0 -0
  1120. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/lock.png +0 -0
  1121. data/vendor/assets/ckeditor-4.4.7/skins/flat/images/refresh.png +0 -0
  1122. data/vendor/assets/ckeditor-4.4.7/skins/flat/readme.md +8 -0
  1123. data/vendor/assets/ckeditor-4.4.7/styles.js +111 -0
  1124. data/vendor/assets/javascripts/backbone.js +1608 -0
  1125. data/vendor/assets/javascripts/backbone.memento.js +159 -0
  1126. data/vendor/assets/javascripts/jquery-ui.js +14987 -0
  1127. data/vendor/assets/javascripts/jquery.js +10346 -0
  1128. data/vendor/assets/javascripts/jquery.noty.js +1436 -0
  1129. data/vendor/assets/javascripts/require.js +36 -0
  1130. data/vendor/assets/javascripts/text.js +391 -0
  1131. data/vendor/assets/javascripts/underscore.js +1536 -0
  1132. metadata +1287 -0
@@ -0,0 +1,126 @@
1
+ /* ***** BEGIN LICENSE BLOCK *****
2
+ * Distributed under the BSD license:
3
+ *
4
+ * Copyright (c) 2010, Ajax.org B.V.
5
+ * All rights reserved.
6
+ *
7
+ * Redistribution and use in source and binary forms, with or without
8
+ * modification, are permitted provided that the following conditions are met:
9
+ * * Redistributions of source code must retain the above copyright
10
+ * notice, this list of conditions and the following disclaimer.
11
+ * * Redistributions in binary form must reproduce the above copyright
12
+ * notice, this list of conditions and the following disclaimer in the
13
+ * documentation and/or other materials provided with the distribution.
14
+ * * Neither the name of Ajax.org B.V. nor the
15
+ * names of its contributors may be used to endorse or promote products
16
+ * derived from this software without specific prior written permission.
17
+ *
18
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *
29
+ * ***** END LICENSE BLOCK ***** */
30
+
31
+ if (typeof process !== "undefined") {
32
+ require("amd-loader");
33
+ require("../test/mockdom");
34
+ }
35
+
36
+ define(function(require, exports, module) {
37
+ "use strict";
38
+
39
+ var assert = require("../test/assertions");
40
+ var EditSession = require("../edit_session").EditSession;
41
+ var TextLayer = require("./text").Text;
42
+ var JavaScriptMode = require("../mode/javascript").Mode;
43
+
44
+ module.exports = {
45
+
46
+ setUp: function(next) {
47
+ this.session = new EditSession("");
48
+ this.session.setMode(new JavaScriptMode());
49
+ this.textLayer = new TextLayer(document.createElement("div"));
50
+ this.textLayer.setSession(this.session);
51
+ this.textLayer.config = {
52
+ characterWidth: 10,
53
+ lineHeight: 20
54
+ };
55
+ next()
56
+ },
57
+
58
+ "test: render line with hard tabs should render the same as lines with soft tabs" : function() {
59
+ this.session.setValue("a\ta\ta\t\na a a \n");
60
+ this.textLayer.$computeTabString();
61
+
62
+ // row with hard tabs
63
+ var stringBuilder = [];
64
+ this.textLayer.$renderLine(stringBuilder, 0);
65
+
66
+ // row with soft tabs
67
+ var stringBuilder2 = [];
68
+ this.textLayer.$renderLine(stringBuilder2, 1);
69
+ assert.equal(stringBuilder.join(""), stringBuilder2.join(""));
70
+ },
71
+
72
+ "test rendering width of ideographic space (U+3000)" : function() {
73
+ this.session.setValue("\u3000");
74
+
75
+ var stringBuilder = [];
76
+ this.textLayer.$renderLine(stringBuilder, 0, true);
77
+ assert.equal(stringBuilder.join(""), "<span class='ace_cjk' style='width:20px'></span>");
78
+
79
+ this.textLayer.setShowInvisibles(true);
80
+ var stringBuilder = [];
81
+ this.textLayer.$renderLine(stringBuilder, 0, true);
82
+ assert.equal(
83
+ stringBuilder.join(""),
84
+ "<span class='ace_cjk ace_invisible ace_invisible_space' style='width:20px'>" + this.textLayer.SPACE_CHAR + "</span>"
85
+ + "<span class='ace_invisible ace_invisible_eol'>\xB6</span>"
86
+ );
87
+ },
88
+
89
+ "test rendering of indent guides" : function() {
90
+ var textLayer = this.textLayer
91
+ var EOL = "<span class='ace_invisible ace_invisible_eol'>" + textLayer.EOL_CHAR + "</span>";
92
+ var SPACE = function(i) {return Array(i+1).join("\xa0")}
93
+ var DOT = function(i) {return Array(i+1).join(textLayer.SPACE_CHAR)}
94
+ var TAB = function(i) {return textLayer.TAB_CHAR + SPACE(i-1)}
95
+ function testRender(results) {
96
+ for (var i = results.length; i--; ) {
97
+ var stringBuilder = [];
98
+ textLayer.$renderLine(stringBuilder, i, true);
99
+ assert.equal(stringBuilder.join(""), results[i]);
100
+ }
101
+ }
102
+
103
+ this.session.setValue(" \n\t\tf\n ");
104
+ testRender([
105
+ "<span class='ace_indent-guide'>" + SPACE(4) + "</span>" + SPACE(2),
106
+ "<span class='ace_indent-guide'>" + SPACE(4) + "</span>" + SPACE(4) + "<span class='ace_identifier'>f</span>",
107
+ SPACE(3)
108
+ ]);
109
+ this.textLayer.setShowInvisibles(true);
110
+ testRender([
111
+ "<span class='ace_indent-guide ace_invisible ace_invisible_space'>" + DOT(4) + "</span><span class='ace_invisible ace_invisible_space'>" + DOT(2) + "</span>" + EOL,
112
+ "<span class='ace_indent-guide ace_invisible ace_invisible_tab'>" + TAB(4) + "</span><span class='ace_invisible ace_invisible_tab'>" + TAB(4) + "</span><span class='ace_identifier'>f</span>" + EOL,
113
+ ]);
114
+ this.textLayer.setDisplayIndentGuides(false);
115
+ testRender([
116
+ "<span class='ace_invisible ace_invisible_space'>" + DOT(6) + "</span>" + EOL,
117
+ "<span class='ace_invisible ace_invisible_tab'>" + TAB(4) + "</span><span class='ace_invisible ace_invisible_tab'>" + TAB(4) + "</span><span class='ace_identifier'>f</span>" + EOL
118
+ ]);
119
+ }
120
+ };
121
+
122
+ });
123
+
124
+ if (typeof module !== "undefined" && module === require.main) {
125
+ require("asyncjs").test.testcase(module.exports).exec()
126
+ }
@@ -0,0 +1,283 @@
1
+ /* ***** BEGIN LICENSE BLOCK *****
2
+ * Distributed under the BSD license:
3
+ *
4
+ * Copyright (c) 2010, Ajax.org B.V.
5
+ * All rights reserved.
6
+ *
7
+ * Redistribution and use in source and binary forms, with or without
8
+ * modification, are permitted provided that the following conditions are met:
9
+ * * Redistributions of source code must retain the above copyright
10
+ * notice, this list of conditions and the following disclaimer.
11
+ * * Redistributions in binary form must reproduce the above copyright
12
+ * notice, this list of conditions and the following disclaimer in the
13
+ * documentation and/or other materials provided with the distribution.
14
+ * * Neither the name of Ajax.org B.V. nor the
15
+ * names of its contributors may be used to endorse or promote products
16
+ * derived from this software without specific prior written permission.
17
+ *
18
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *
29
+ * ***** END LICENSE BLOCK ***** */
30
+
31
+ define(function(require, exports, module) {
32
+ "use strict";
33
+
34
+ if (typeof document == "undefined")
35
+ return;
36
+
37
+ var XHTML_NS = "http://www.w3.org/1999/xhtml";
38
+
39
+ exports.getDocumentHead = function(doc) {
40
+ if (!doc)
41
+ doc = document;
42
+ return doc.head || doc.getElementsByTagName("head")[0] || doc.documentElement;
43
+ }
44
+
45
+ exports.createElement = function(tag, ns) {
46
+ return document.createElementNS ?
47
+ document.createElementNS(ns || XHTML_NS, tag) :
48
+ document.createElement(tag);
49
+ };
50
+
51
+ exports.hasCssClass = function(el, name) {
52
+ var classes = (el.className || "").split(/\s+/g);
53
+ return classes.indexOf(name) !== -1;
54
+ };
55
+
56
+ /*
57
+ * Add a CSS class to the list of classes on the given node
58
+ */
59
+ exports.addCssClass = function(el, name) {
60
+ if (!exports.hasCssClass(el, name)) {
61
+ el.className += " " + name;
62
+ }
63
+ };
64
+
65
+ /*
66
+ * Remove a CSS class from the list of classes on the given node
67
+ */
68
+ exports.removeCssClass = function(el, name) {
69
+ var classes = el.className.split(/\s+/g);
70
+ while (true) {
71
+ var index = classes.indexOf(name);
72
+ if (index == -1) {
73
+ break;
74
+ }
75
+ classes.splice(index, 1);
76
+ }
77
+ el.className = classes.join(" ");
78
+ };
79
+
80
+ exports.toggleCssClass = function(el, name) {
81
+ var classes = el.className.split(/\s+/g), add = true;
82
+ while (true) {
83
+ var index = classes.indexOf(name);
84
+ if (index == -1) {
85
+ break;
86
+ }
87
+ add = false;
88
+ classes.splice(index, 1);
89
+ }
90
+ if(add)
91
+ classes.push(name);
92
+
93
+ el.className = classes.join(" ");
94
+ return add;
95
+ };
96
+
97
+ /*
98
+ * Add or remove a CSS class from the list of classes on the given node
99
+ * depending on the value of <tt>include</tt>
100
+ */
101
+ exports.setCssClass = function(node, className, include) {
102
+ if (include) {
103
+ exports.addCssClass(node, className);
104
+ } else {
105
+ exports.removeCssClass(node, className);
106
+ }
107
+ };
108
+
109
+ exports.hasCssString = function(id, doc) {
110
+ var index = 0, sheets;
111
+ doc = doc || document;
112
+
113
+ if (doc.createStyleSheet && (sheets = doc.styleSheets)) {
114
+ while (index < sheets.length)
115
+ if (sheets[index++].owningElement.id === id) return true;
116
+ } else if ((sheets = doc.getElementsByTagName("style"))) {
117
+ while (index < sheets.length)
118
+ if (sheets[index++].id === id) return true;
119
+ }
120
+
121
+ return false;
122
+ };
123
+
124
+ exports.importCssString = function importCssString(cssText, id, doc) {
125
+ doc = doc || document;
126
+ // If style is already imported return immediately.
127
+ if (id && exports.hasCssString(id, doc))
128
+ return null;
129
+
130
+ var style;
131
+
132
+ if (doc.createStyleSheet) {
133
+ style = doc.createStyleSheet();
134
+ style.cssText = cssText;
135
+ if (id)
136
+ style.owningElement.id = id;
137
+ } else {
138
+ style = doc.createElementNS
139
+ ? doc.createElementNS(XHTML_NS, "style")
140
+ : doc.createElement("style");
141
+
142
+ style.appendChild(doc.createTextNode(cssText));
143
+ if (id)
144
+ style.id = id;
145
+
146
+ exports.getDocumentHead(doc).appendChild(style);
147
+ }
148
+ };
149
+
150
+ exports.importCssStylsheet = function(uri, doc) {
151
+ if (doc.createStyleSheet) {
152
+ doc.createStyleSheet(uri);
153
+ } else {
154
+ var link = exports.createElement('link');
155
+ link.rel = 'stylesheet';
156
+ link.href = uri;
157
+
158
+ exports.getDocumentHead(doc).appendChild(link);
159
+ }
160
+ };
161
+
162
+ exports.getInnerWidth = function(element) {
163
+ return (
164
+ parseInt(exports.computedStyle(element, "paddingLeft"), 10) +
165
+ parseInt(exports.computedStyle(element, "paddingRight"), 10) +
166
+ element.clientWidth
167
+ );
168
+ };
169
+
170
+ exports.getInnerHeight = function(element) {
171
+ return (
172
+ parseInt(exports.computedStyle(element, "paddingTop"), 10) +
173
+ parseInt(exports.computedStyle(element, "paddingBottom"), 10) +
174
+ element.clientHeight
175
+ );
176
+ };
177
+
178
+ if (window.pageYOffset !== undefined) {
179
+ exports.getPageScrollTop = function() {
180
+ return window.pageYOffset;
181
+ };
182
+
183
+ exports.getPageScrollLeft = function() {
184
+ return window.pageXOffset;
185
+ };
186
+ }
187
+ else {
188
+ exports.getPageScrollTop = function() {
189
+ return document.body.scrollTop;
190
+ };
191
+
192
+ exports.getPageScrollLeft = function() {
193
+ return document.body.scrollLeft;
194
+ };
195
+ }
196
+
197
+ if (window.getComputedStyle)
198
+ exports.computedStyle = function(element, style) {
199
+ if (style)
200
+ return (window.getComputedStyle(element, "") || {})[style] || "";
201
+ return window.getComputedStyle(element, "") || {};
202
+ };
203
+ else
204
+ exports.computedStyle = function(element, style) {
205
+ if (style)
206
+ return element.currentStyle[style];
207
+ return element.currentStyle;
208
+ };
209
+
210
+ exports.scrollbarWidth = function(document) {
211
+ var inner = exports.createElement("ace_inner");
212
+ inner.style.width = "100%";
213
+ inner.style.minWidth = "0px";
214
+ inner.style.height = "200px";
215
+ inner.style.display = "block";
216
+
217
+ var outer = exports.createElement("ace_outer");
218
+ var style = outer.style;
219
+
220
+ style.position = "absolute";
221
+ style.left = "-10000px";
222
+ style.overflow = "hidden";
223
+ style.width = "200px";
224
+ style.minWidth = "0px";
225
+ style.height = "150px";
226
+ style.display = "block";
227
+
228
+ outer.appendChild(inner);
229
+
230
+ var body = document.documentElement;
231
+ body.appendChild(outer);
232
+
233
+ var noScrollbar = inner.offsetWidth;
234
+
235
+ style.overflow = "scroll";
236
+ var withScrollbar = inner.offsetWidth;
237
+
238
+ if (noScrollbar == withScrollbar) {
239
+ withScrollbar = outer.clientWidth;
240
+ }
241
+
242
+ body.removeChild(outer);
243
+
244
+ return noScrollbar-withScrollbar;
245
+ };
246
+
247
+ /*
248
+ * Optimized set innerHTML. This is faster than plain innerHTML if the element
249
+ * already contains a lot of child elements.
250
+ *
251
+ * See http://blog.stevenlevithan.com/archives/faster-than-innerhtml for details
252
+ */
253
+ exports.setInnerHtml = function(el, innerHtml) {
254
+ var element = el.cloneNode(false);//document.createElement("div");
255
+ element.innerHTML = innerHtml;
256
+ el.parentNode.replaceChild(element, el);
257
+ return element;
258
+ };
259
+
260
+ if ("textContent" in document.documentElement) {
261
+ exports.setInnerText = function(el, innerText) {
262
+ el.textContent = innerText;
263
+ };
264
+
265
+ exports.getInnerText = function(el) {
266
+ return el.textContent;
267
+ };
268
+ }
269
+ else {
270
+ exports.setInnerText = function(el, innerText) {
271
+ el.innerText = innerText;
272
+ };
273
+
274
+ exports.getInnerText = function(el) {
275
+ return el.innerText;
276
+ };
277
+ }
278
+
279
+ exports.getParentWindow = function(document) {
280
+ return document.defaultView || document.parentWindow;
281
+ };
282
+
283
+ });
@@ -0,0 +1,1062 @@
1
+ // https://github.com/kriskowal/es5-shim
2
+ // Copyright 2009-2012 by contributors, MIT License
3
+
4
+ define(function(require, exports, module) {
5
+
6
+ /*
7
+ * Brings an environment as close to ECMAScript 5 compliance
8
+ * as is possible with the facilities of erstwhile engines.
9
+ *
10
+ * Annotated ES5: http://es5.github.com/ (specific links below)
11
+ * ES5 Spec: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf
12
+ * Required reading: http://javascriptweblog.wordpress.com/2011/12/05/extending-javascript-natives/
13
+ */
14
+
15
+ //
16
+ // Function
17
+ // ========
18
+ //
19
+
20
+ // ES-5 15.3.4.5
21
+ // http://es5.github.com/#x15.3.4.5
22
+
23
+ function Empty() {}
24
+
25
+ if (!Function.prototype.bind) {
26
+ Function.prototype.bind = function bind(that) { // .length is 1
27
+ // 1. Let Target be the this value.
28
+ var target = this;
29
+ // 2. If IsCallable(Target) is false, throw a TypeError exception.
30
+ if (typeof target != "function") {
31
+ throw new TypeError("Function.prototype.bind called on incompatible " + target);
32
+ }
33
+ // 3. Let A be a new (possibly empty) internal list of all of the
34
+ // argument values provided after thisArg (arg1, arg2 etc), in order.
35
+ // XXX slicedArgs will stand in for "A" if used
36
+ var args = slice.call(arguments, 1); // for normal call
37
+ // 4. Let F be a new native ECMAScript object.
38
+ // 11. Set the [[Prototype]] internal property of F to the standard
39
+ // built-in Function prototype object as specified in 15.3.3.1.
40
+ // 12. Set the [[Call]] internal property of F as described in
41
+ // 15.3.4.5.1.
42
+ // 13. Set the [[Construct]] internal property of F as described in
43
+ // 15.3.4.5.2.
44
+ // 14. Set the [[HasInstance]] internal property of F as described in
45
+ // 15.3.4.5.3.
46
+ var bound = function () {
47
+
48
+ if (this instanceof bound) {
49
+ // 15.3.4.5.2 [[Construct]]
50
+ // When the [[Construct]] internal method of a function object,
51
+ // F that was created using the bind function is called with a
52
+ // list of arguments ExtraArgs, the following steps are taken:
53
+ // 1. Let target be the value of F's [[TargetFunction]]
54
+ // internal property.
55
+ // 2. If target has no [[Construct]] internal method, a
56
+ // TypeError exception is thrown.
57
+ // 3. Let boundArgs be the value of F's [[BoundArgs]] internal
58
+ // property.
59
+ // 4. Let args be a new list containing the same values as the
60
+ // list boundArgs in the same order followed by the same
61
+ // values as the list ExtraArgs in the same order.
62
+ // 5. Return the result of calling the [[Construct]] internal
63
+ // method of target providing args as the arguments.
64
+
65
+ var result = target.apply(
66
+ this,
67
+ args.concat(slice.call(arguments))
68
+ );
69
+ if (Object(result) === result) {
70
+ return result;
71
+ }
72
+ return this;
73
+
74
+ } else {
75
+ // 15.3.4.5.1 [[Call]]
76
+ // When the [[Call]] internal method of a function object, F,
77
+ // which was created using the bind function is called with a
78
+ // this value and a list of arguments ExtraArgs, the following
79
+ // steps are taken:
80
+ // 1. Let boundArgs be the value of F's [[BoundArgs]] internal
81
+ // property.
82
+ // 2. Let boundThis be the value of F's [[BoundThis]] internal
83
+ // property.
84
+ // 3. Let target be the value of F's [[TargetFunction]] internal
85
+ // property.
86
+ // 4. Let args be a new list containing the same values as the
87
+ // list boundArgs in the same order followed by the same
88
+ // values as the list ExtraArgs in the same order.
89
+ // 5. Return the result of calling the [[Call]] internal method
90
+ // of target providing boundThis as the this value and
91
+ // providing args as the arguments.
92
+
93
+ // equiv: target.call(this, ...boundArgs, ...args)
94
+ return target.apply(
95
+ that,
96
+ args.concat(slice.call(arguments))
97
+ );
98
+
99
+ }
100
+
101
+ };
102
+ if(target.prototype) {
103
+ Empty.prototype = target.prototype;
104
+ bound.prototype = new Empty();
105
+ // Clean up dangling references.
106
+ Empty.prototype = null;
107
+ }
108
+ // XXX bound.length is never writable, so don't even try
109
+ //
110
+ // 15. If the [[Class]] internal property of Target is "Function", then
111
+ // a. Let L be the length property of Target minus the length of A.
112
+ // b. Set the length own property of F to either 0 or L, whichever is
113
+ // larger.
114
+ // 16. Else set the length own property of F to 0.
115
+ // 17. Set the attributes of the length own property of F to the values
116
+ // specified in 15.3.5.1.
117
+
118
+ // TODO
119
+ // 18. Set the [[Extensible]] internal property of F to true.
120
+
121
+ // TODO
122
+ // 19. Let thrower be the [[ThrowTypeError]] function Object (13.2.3).
123
+ // 20. Call the [[DefineOwnProperty]] internal method of F with
124
+ // arguments "caller", PropertyDescriptor {[[Get]]: thrower, [[Set]]:
125
+ // thrower, [[Enumerable]]: false, [[Configurable]]: false}, and
126
+ // false.
127
+ // 21. Call the [[DefineOwnProperty]] internal method of F with
128
+ // arguments "arguments", PropertyDescriptor {[[Get]]: thrower,
129
+ // [[Set]]: thrower, [[Enumerable]]: false, [[Configurable]]: false},
130
+ // and false.
131
+
132
+ // TODO
133
+ // NOTE Function objects created using Function.prototype.bind do not
134
+ // have a prototype property or the [[Code]], [[FormalParameters]], and
135
+ // [[Scope]] internal properties.
136
+ // XXX can't delete prototype in pure-js.
137
+
138
+ // 22. Return F.
139
+ return bound;
140
+ };
141
+ }
142
+
143
+ // Shortcut to an often accessed properties, in order to avoid multiple
144
+ // dereference that costs universally.
145
+ // _Please note: Shortcuts are defined after `Function.prototype.bind` as we
146
+ // us it in defining shortcuts.
147
+ var call = Function.prototype.call;
148
+ var prototypeOfArray = Array.prototype;
149
+ var prototypeOfObject = Object.prototype;
150
+ var slice = prototypeOfArray.slice;
151
+ // Having a toString local variable name breaks in Opera so use _toString.
152
+ var _toString = call.bind(prototypeOfObject.toString);
153
+ var owns = call.bind(prototypeOfObject.hasOwnProperty);
154
+
155
+ // If JS engine supports accessors creating shortcuts.
156
+ var defineGetter;
157
+ var defineSetter;
158
+ var lookupGetter;
159
+ var lookupSetter;
160
+ var supportsAccessors;
161
+ if ((supportsAccessors = owns(prototypeOfObject, "__defineGetter__"))) {
162
+ defineGetter = call.bind(prototypeOfObject.__defineGetter__);
163
+ defineSetter = call.bind(prototypeOfObject.__defineSetter__);
164
+ lookupGetter = call.bind(prototypeOfObject.__lookupGetter__);
165
+ lookupSetter = call.bind(prototypeOfObject.__lookupSetter__);
166
+ }
167
+
168
+ //
169
+ // Array
170
+ // =====
171
+ //
172
+
173
+ // ES5 15.4.4.12
174
+ // http://es5.github.com/#x15.4.4.12
175
+ // Default value for second param
176
+ // [bugfix, ielt9, old browsers]
177
+ // IE < 9 bug: [1,2].splice(0).join("") == "" but should be "12"
178
+ if ([1,2].splice(0).length != 2) {
179
+ if(function() { // test IE < 9 to splice bug - see issue #138
180
+ function makeArray(l) {
181
+ var a = new Array(l+2);
182
+ a[0] = a[1] = 0;
183
+ return a;
184
+ }
185
+ var array = [], lengthBefore;
186
+
187
+ array.splice.apply(array, makeArray(20));
188
+ array.splice.apply(array, makeArray(26));
189
+
190
+ lengthBefore = array.length; //46
191
+ array.splice(5, 0, "XXX"); // add one element
192
+
193
+ lengthBefore + 1 == array.length
194
+
195
+ if (lengthBefore + 1 == array.length) {
196
+ return true;// has right splice implementation without bugs
197
+ }
198
+ // else {
199
+ // IE8 bug
200
+ // }
201
+ }()) {//IE 6/7
202
+ var array_splice = Array.prototype.splice;
203
+ Array.prototype.splice = function(start, deleteCount) {
204
+ if (!arguments.length) {
205
+ return [];
206
+ } else {
207
+ return array_splice.apply(this, [
208
+ start === void 0 ? 0 : start,
209
+ deleteCount === void 0 ? (this.length - start) : deleteCount
210
+ ].concat(slice.call(arguments, 2)))
211
+ }
212
+ };
213
+ } else {//IE8
214
+ // taken from http://docs.sencha.com/ext-js/4-1/source/Array2.html
215
+ Array.prototype.splice = function(pos, removeCount){
216
+ var length = this.length;
217
+ if (pos > 0) {
218
+ if (pos > length)
219
+ pos = length;
220
+ } else if (pos == void 0) {
221
+ pos = 0;
222
+ } else if (pos < 0) {
223
+ pos = Math.max(length + pos, 0);
224
+ }
225
+
226
+ if (!(pos+removeCount < length))
227
+ removeCount = length - pos;
228
+
229
+ var removed = this.slice(pos, pos+removeCount);
230
+ var insert = slice.call(arguments, 2);
231
+ var add = insert.length;
232
+
233
+ // we try to use Array.push when we can for efficiency...
234
+ if (pos === length) {
235
+ if (add) {
236
+ this.push.apply(this, insert);
237
+ }
238
+ } else {
239
+ var remove = Math.min(removeCount, length - pos);
240
+ var tailOldPos = pos + remove;
241
+ var tailNewPos = tailOldPos + add - remove;
242
+ var tailCount = length - tailOldPos;
243
+ var lengthAfterRemove = length - remove;
244
+
245
+ if (tailNewPos < tailOldPos) { // case A
246
+ for (var i = 0; i < tailCount; ++i) {
247
+ this[tailNewPos+i] = this[tailOldPos+i];
248
+ }
249
+ } else if (tailNewPos > tailOldPos) { // case B
250
+ for (i = tailCount; i--; ) {
251
+ this[tailNewPos+i] = this[tailOldPos+i];
252
+ }
253
+ } // else, add == remove (nothing to do)
254
+
255
+ if (add && pos === lengthAfterRemove) {
256
+ this.length = lengthAfterRemove; // truncate array
257
+ this.push.apply(this, insert);
258
+ } else {
259
+ this.length = lengthAfterRemove + add; // reserves space
260
+ for (i = 0; i < add; ++i) {
261
+ this[pos+i] = insert[i];
262
+ }
263
+ }
264
+ }
265
+ return removed;
266
+ };
267
+ }
268
+ }
269
+
270
+ // ES5 15.4.3.2
271
+ // http://es5.github.com/#x15.4.3.2
272
+ // https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/isArray
273
+ if (!Array.isArray) {
274
+ Array.isArray = function isArray(obj) {
275
+ return _toString(obj) == "[object Array]";
276
+ };
277
+ }
278
+
279
+ // The IsCallable() check in the Array functions
280
+ // has been replaced with a strict check on the
281
+ // internal class of the object to trap cases where
282
+ // the provided function was actually a regular
283
+ // expression literal, which in V8 and
284
+ // JavaScriptCore is a typeof "function". Only in
285
+ // V8 are regular expression literals permitted as
286
+ // reduce parameters, so it is desirable in the
287
+ // general case for the shim to match the more
288
+ // strict and common behavior of rejecting regular
289
+ // expressions.
290
+
291
+ // ES5 15.4.4.18
292
+ // http://es5.github.com/#x15.4.4.18
293
+ // https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/array/forEach
294
+
295
+ // Check failure of by-index access of string characters (IE < 9)
296
+ // and failure of `0 in boxedString` (Rhino)
297
+ var boxedString = Object("a"),
298
+ splitString = boxedString[0] != "a" || !(0 in boxedString);
299
+
300
+ if (!Array.prototype.forEach) {
301
+ Array.prototype.forEach = function forEach(fun /*, thisp*/) {
302
+ var object = toObject(this),
303
+ self = splitString && _toString(this) == "[object String]" ?
304
+ this.split("") :
305
+ object,
306
+ thisp = arguments[1],
307
+ i = -1,
308
+ length = self.length >>> 0;
309
+
310
+ // If no callback function or if callback is not a callable function
311
+ if (_toString(fun) != "[object Function]") {
312
+ throw new TypeError(); // TODO message
313
+ }
314
+
315
+ while (++i < length) {
316
+ if (i in self) {
317
+ // Invoke the callback function with call, passing arguments:
318
+ // context, property value, property key, thisArg object
319
+ // context
320
+ fun.call(thisp, self[i], i, object);
321
+ }
322
+ }
323
+ };
324
+ }
325
+
326
+ // ES5 15.4.4.19
327
+ // http://es5.github.com/#x15.4.4.19
328
+ // https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/map
329
+ if (!Array.prototype.map) {
330
+ Array.prototype.map = function map(fun /*, thisp*/) {
331
+ var object = toObject(this),
332
+ self = splitString && _toString(this) == "[object String]" ?
333
+ this.split("") :
334
+ object,
335
+ length = self.length >>> 0,
336
+ result = Array(length),
337
+ thisp = arguments[1];
338
+
339
+ // If no callback function or if callback is not a callable function
340
+ if (_toString(fun) != "[object Function]") {
341
+ throw new TypeError(fun + " is not a function");
342
+ }
343
+
344
+ for (var i = 0; i < length; i++) {
345
+ if (i in self)
346
+ result[i] = fun.call(thisp, self[i], i, object);
347
+ }
348
+ return result;
349
+ };
350
+ }
351
+
352
+ // ES5 15.4.4.20
353
+ // http://es5.github.com/#x15.4.4.20
354
+ // https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/filter
355
+ if (!Array.prototype.filter) {
356
+ Array.prototype.filter = function filter(fun /*, thisp */) {
357
+ var object = toObject(this),
358
+ self = splitString && _toString(this) == "[object String]" ?
359
+ this.split("") :
360
+ object,
361
+ length = self.length >>> 0,
362
+ result = [],
363
+ value,
364
+ thisp = arguments[1];
365
+
366
+ // If no callback function or if callback is not a callable function
367
+ if (_toString(fun) != "[object Function]") {
368
+ throw new TypeError(fun + " is not a function");
369
+ }
370
+
371
+ for (var i = 0; i < length; i++) {
372
+ if (i in self) {
373
+ value = self[i];
374
+ if (fun.call(thisp, value, i, object)) {
375
+ result.push(value);
376
+ }
377
+ }
378
+ }
379
+ return result;
380
+ };
381
+ }
382
+
383
+ // ES5 15.4.4.16
384
+ // http://es5.github.com/#x15.4.4.16
385
+ // https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/every
386
+ if (!Array.prototype.every) {
387
+ Array.prototype.every = function every(fun /*, thisp */) {
388
+ var object = toObject(this),
389
+ self = splitString && _toString(this) == "[object String]" ?
390
+ this.split("") :
391
+ object,
392
+ length = self.length >>> 0,
393
+ thisp = arguments[1];
394
+
395
+ // If no callback function or if callback is not a callable function
396
+ if (_toString(fun) != "[object Function]") {
397
+ throw new TypeError(fun + " is not a function");
398
+ }
399
+
400
+ for (var i = 0; i < length; i++) {
401
+ if (i in self && !fun.call(thisp, self[i], i, object)) {
402
+ return false;
403
+ }
404
+ }
405
+ return true;
406
+ };
407
+ }
408
+
409
+ // ES5 15.4.4.17
410
+ // http://es5.github.com/#x15.4.4.17
411
+ // https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some
412
+ if (!Array.prototype.some) {
413
+ Array.prototype.some = function some(fun /*, thisp */) {
414
+ var object = toObject(this),
415
+ self = splitString && _toString(this) == "[object String]" ?
416
+ this.split("") :
417
+ object,
418
+ length = self.length >>> 0,
419
+ thisp = arguments[1];
420
+
421
+ // If no callback function or if callback is not a callable function
422
+ if (_toString(fun) != "[object Function]") {
423
+ throw new TypeError(fun + " is not a function");
424
+ }
425
+
426
+ for (var i = 0; i < length; i++) {
427
+ if (i in self && fun.call(thisp, self[i], i, object)) {
428
+ return true;
429
+ }
430
+ }
431
+ return false;
432
+ };
433
+ }
434
+
435
+ // ES5 15.4.4.21
436
+ // http://es5.github.com/#x15.4.4.21
437
+ // https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduce
438
+ if (!Array.prototype.reduce) {
439
+ Array.prototype.reduce = function reduce(fun /*, initial*/) {
440
+ var object = toObject(this),
441
+ self = splitString && _toString(this) == "[object String]" ?
442
+ this.split("") :
443
+ object,
444
+ length = self.length >>> 0;
445
+
446
+ // If no callback function or if callback is not a callable function
447
+ if (_toString(fun) != "[object Function]") {
448
+ throw new TypeError(fun + " is not a function");
449
+ }
450
+
451
+ // no value to return if no initial value and an empty array
452
+ if (!length && arguments.length == 1) {
453
+ throw new TypeError("reduce of empty array with no initial value");
454
+ }
455
+
456
+ var i = 0;
457
+ var result;
458
+ if (arguments.length >= 2) {
459
+ result = arguments[1];
460
+ } else {
461
+ do {
462
+ if (i in self) {
463
+ result = self[i++];
464
+ break;
465
+ }
466
+
467
+ // if array contains no values, no initial value to return
468
+ if (++i >= length) {
469
+ throw new TypeError("reduce of empty array with no initial value");
470
+ }
471
+ } while (true);
472
+ }
473
+
474
+ for (; i < length; i++) {
475
+ if (i in self) {
476
+ result = fun.call(void 0, result, self[i], i, object);
477
+ }
478
+ }
479
+
480
+ return result;
481
+ };
482
+ }
483
+
484
+ // ES5 15.4.4.22
485
+ // http://es5.github.com/#x15.4.4.22
486
+ // https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduceRight
487
+ if (!Array.prototype.reduceRight) {
488
+ Array.prototype.reduceRight = function reduceRight(fun /*, initial*/) {
489
+ var object = toObject(this),
490
+ self = splitString && _toString(this) == "[object String]" ?
491
+ this.split("") :
492
+ object,
493
+ length = self.length >>> 0;
494
+
495
+ // If no callback function or if callback is not a callable function
496
+ if (_toString(fun) != "[object Function]") {
497
+ throw new TypeError(fun + " is not a function");
498
+ }
499
+
500
+ // no value to return if no initial value, empty array
501
+ if (!length && arguments.length == 1) {
502
+ throw new TypeError("reduceRight of empty array with no initial value");
503
+ }
504
+
505
+ var result, i = length - 1;
506
+ if (arguments.length >= 2) {
507
+ result = arguments[1];
508
+ } else {
509
+ do {
510
+ if (i in self) {
511
+ result = self[i--];
512
+ break;
513
+ }
514
+
515
+ // if array contains no values, no initial value to return
516
+ if (--i < 0) {
517
+ throw new TypeError("reduceRight of empty array with no initial value");
518
+ }
519
+ } while (true);
520
+ }
521
+
522
+ do {
523
+ if (i in this) {
524
+ result = fun.call(void 0, result, self[i], i, object);
525
+ }
526
+ } while (i--);
527
+
528
+ return result;
529
+ };
530
+ }
531
+
532
+ // ES5 15.4.4.14
533
+ // http://es5.github.com/#x15.4.4.14
534
+ // https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf
535
+ if (!Array.prototype.indexOf || ([0, 1].indexOf(1, 2) != -1)) {
536
+ Array.prototype.indexOf = function indexOf(sought /*, fromIndex */ ) {
537
+ var self = splitString && _toString(this) == "[object String]" ?
538
+ this.split("") :
539
+ toObject(this),
540
+ length = self.length >>> 0;
541
+
542
+ if (!length) {
543
+ return -1;
544
+ }
545
+
546
+ var i = 0;
547
+ if (arguments.length > 1) {
548
+ i = toInteger(arguments[1]);
549
+ }
550
+
551
+ // handle negative indices
552
+ i = i >= 0 ? i : Math.max(0, length + i);
553
+ for (; i < length; i++) {
554
+ if (i in self && self[i] === sought) {
555
+ return i;
556
+ }
557
+ }
558
+ return -1;
559
+ };
560
+ }
561
+
562
+ // ES5 15.4.4.15
563
+ // http://es5.github.com/#x15.4.4.15
564
+ // https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/lastIndexOf
565
+ if (!Array.prototype.lastIndexOf || ([0, 1].lastIndexOf(0, -3) != -1)) {
566
+ Array.prototype.lastIndexOf = function lastIndexOf(sought /*, fromIndex */) {
567
+ var self = splitString && _toString(this) == "[object String]" ?
568
+ this.split("") :
569
+ toObject(this),
570
+ length = self.length >>> 0;
571
+
572
+ if (!length) {
573
+ return -1;
574
+ }
575
+ var i = length - 1;
576
+ if (arguments.length > 1) {
577
+ i = Math.min(i, toInteger(arguments[1]));
578
+ }
579
+ // handle negative indices
580
+ i = i >= 0 ? i : length - Math.abs(i);
581
+ for (; i >= 0; i--) {
582
+ if (i in self && sought === self[i]) {
583
+ return i;
584
+ }
585
+ }
586
+ return -1;
587
+ };
588
+ }
589
+
590
+ //
591
+ // Object
592
+ // ======
593
+ //
594
+
595
+ // ES5 15.2.3.2
596
+ // http://es5.github.com/#x15.2.3.2
597
+ if (!Object.getPrototypeOf) {
598
+ // https://github.com/kriskowal/es5-shim/issues#issue/2
599
+ // http://ejohn.org/blog/objectgetprototypeof/
600
+ // recommended by fschaefer on github
601
+ Object.getPrototypeOf = function getPrototypeOf(object) {
602
+ return object.__proto__ || (
603
+ object.constructor ?
604
+ object.constructor.prototype :
605
+ prototypeOfObject
606
+ );
607
+ };
608
+ }
609
+
610
+ // ES5 15.2.3.3
611
+ // http://es5.github.com/#x15.2.3.3
612
+ if (!Object.getOwnPropertyDescriptor) {
613
+ var ERR_NON_OBJECT = "Object.getOwnPropertyDescriptor called on a " +
614
+ "non-object: ";
615
+ Object.getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) {
616
+ if ((typeof object != "object" && typeof object != "function") || object === null)
617
+ throw new TypeError(ERR_NON_OBJECT + object);
618
+ // If object does not owns property return undefined immediately.
619
+ if (!owns(object, property))
620
+ return;
621
+
622
+ var descriptor, getter, setter;
623
+
624
+ // If object has a property then it's for sure both `enumerable` and
625
+ // `configurable`.
626
+ descriptor = { enumerable: true, configurable: true };
627
+
628
+ // If JS engine supports accessor properties then property may be a
629
+ // getter or setter.
630
+ if (supportsAccessors) {
631
+ // Unfortunately `__lookupGetter__` will return a getter even
632
+ // if object has own non getter property along with a same named
633
+ // inherited getter. To avoid misbehavior we temporary remove
634
+ // `__proto__` so that `__lookupGetter__` will return getter only
635
+ // if it's owned by an object.
636
+ var prototype = object.__proto__;
637
+ object.__proto__ = prototypeOfObject;
638
+
639
+ var getter = lookupGetter(object, property);
640
+ var setter = lookupSetter(object, property);
641
+
642
+ // Once we have getter and setter we can put values back.
643
+ object.__proto__ = prototype;
644
+
645
+ if (getter || setter) {
646
+ if (getter) descriptor.get = getter;
647
+ if (setter) descriptor.set = setter;
648
+
649
+ // If it was accessor property we're done and return here
650
+ // in order to avoid adding `value` to the descriptor.
651
+ return descriptor;
652
+ }
653
+ }
654
+
655
+ // If we got this far we know that object has an own property that is
656
+ // not an accessor so we set it as a value and return descriptor.
657
+ descriptor.value = object[property];
658
+ return descriptor;
659
+ };
660
+ }
661
+
662
+ // ES5 15.2.3.4
663
+ // http://es5.github.com/#x15.2.3.4
664
+ if (!Object.getOwnPropertyNames) {
665
+ Object.getOwnPropertyNames = function getOwnPropertyNames(object) {
666
+ return Object.keys(object);
667
+ };
668
+ }
669
+
670
+ // ES5 15.2.3.5
671
+ // http://es5.github.com/#x15.2.3.5
672
+ if (!Object.create) {
673
+ var createEmpty;
674
+ if (Object.prototype.__proto__ === null) {
675
+ createEmpty = function () {
676
+ return { "__proto__": null };
677
+ };
678
+ } else {
679
+ // In old IE __proto__ can't be used to manually set `null`
680
+ createEmpty = function () {
681
+ var empty = {};
682
+ for (var i in empty)
683
+ empty[i] = null;
684
+ empty.constructor =
685
+ empty.hasOwnProperty =
686
+ empty.propertyIsEnumerable =
687
+ empty.isPrototypeOf =
688
+ empty.toLocaleString =
689
+ empty.toString =
690
+ empty.valueOf =
691
+ empty.__proto__ = null;
692
+ return empty;
693
+ }
694
+ }
695
+
696
+ Object.create = function create(prototype, properties) {
697
+ var object;
698
+ if (prototype === null) {
699
+ object = createEmpty();
700
+ } else {
701
+ if (typeof prototype != "object")
702
+ throw new TypeError("typeof prototype["+(typeof prototype)+"] != 'object'");
703
+ var Type = function () {};
704
+ Type.prototype = prototype;
705
+ object = new Type();
706
+ // IE has no built-in implementation of `Object.getPrototypeOf`
707
+ // neither `__proto__`, but this manually setting `__proto__` will
708
+ // guarantee that `Object.getPrototypeOf` will work as expected with
709
+ // objects created using `Object.create`
710
+ object.__proto__ = prototype;
711
+ }
712
+ if (properties !== void 0)
713
+ Object.defineProperties(object, properties);
714
+ return object;
715
+ };
716
+ }
717
+
718
+ // ES5 15.2.3.6
719
+ // http://es5.github.com/#x15.2.3.6
720
+
721
+ // Patch for WebKit and IE8 standard mode
722
+ // Designed by hax <hax.github.com>
723
+ // related issue: https://github.com/kriskowal/es5-shim/issues#issue/5
724
+ // IE8 Reference:
725
+ // http://msdn.microsoft.com/en-us/library/dd282900.aspx
726
+ // http://msdn.microsoft.com/en-us/library/dd229916.aspx
727
+ // WebKit Bugs:
728
+ // https://bugs.webkit.org/show_bug.cgi?id=36423
729
+
730
+ function doesDefinePropertyWork(object) {
731
+ try {
732
+ Object.defineProperty(object, "sentinel", {});
733
+ return "sentinel" in object;
734
+ } catch (exception) {
735
+ // returns falsy
736
+ }
737
+ }
738
+
739
+ // check whether defineProperty works if it's given. Otherwise,
740
+ // shim partially.
741
+ if (Object.defineProperty) {
742
+ var definePropertyWorksOnObject = doesDefinePropertyWork({});
743
+ var definePropertyWorksOnDom = typeof document == "undefined" ||
744
+ doesDefinePropertyWork(document.createElement("div"));
745
+ if (!definePropertyWorksOnObject || !definePropertyWorksOnDom) {
746
+ var definePropertyFallback = Object.defineProperty;
747
+ }
748
+ }
749
+
750
+ if (!Object.defineProperty || definePropertyFallback) {
751
+ var ERR_NON_OBJECT_DESCRIPTOR = "Property description must be an object: ";
752
+ var ERR_NON_OBJECT_TARGET = "Object.defineProperty called on non-object: "
753
+ var ERR_ACCESSORS_NOT_SUPPORTED = "getters & setters can not be defined " +
754
+ "on this javascript engine";
755
+
756
+ Object.defineProperty = function defineProperty(object, property, descriptor) {
757
+ if ((typeof object != "object" && typeof object != "function") || object === null)
758
+ throw new TypeError(ERR_NON_OBJECT_TARGET + object);
759
+ if ((typeof descriptor != "object" && typeof descriptor != "function") || descriptor === null)
760
+ throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR + descriptor);
761
+
762
+ // make a valiant attempt to use the real defineProperty
763
+ // for I8's DOM elements.
764
+ if (definePropertyFallback) {
765
+ try {
766
+ return definePropertyFallback.call(Object, object, property, descriptor);
767
+ } catch (exception) {
768
+ // try the shim if the real one doesn't work
769
+ }
770
+ }
771
+
772
+ // If it's a data property.
773
+ if (owns(descriptor, "value")) {
774
+ // fail silently if "writable", "enumerable", or "configurable"
775
+ // are requested but not supported
776
+ /*
777
+ // alternate approach:
778
+ if ( // can't implement these features; allow false but not true
779
+ !(owns(descriptor, "writable") ? descriptor.writable : true) ||
780
+ !(owns(descriptor, "enumerable") ? descriptor.enumerable : true) ||
781
+ !(owns(descriptor, "configurable") ? descriptor.configurable : true)
782
+ )
783
+ throw new RangeError(
784
+ "This implementation of Object.defineProperty does not " +
785
+ "support configurable, enumerable, or writable."
786
+ );
787
+ */
788
+
789
+ if (supportsAccessors && (lookupGetter(object, property) ||
790
+ lookupSetter(object, property)))
791
+ {
792
+ // As accessors are supported only on engines implementing
793
+ // `__proto__` we can safely override `__proto__` while defining
794
+ // a property to make sure that we don't hit an inherited
795
+ // accessor.
796
+ var prototype = object.__proto__;
797
+ object.__proto__ = prototypeOfObject;
798
+ // Deleting a property anyway since getter / setter may be
799
+ // defined on object itself.
800
+ delete object[property];
801
+ object[property] = descriptor.value;
802
+ // Setting original `__proto__` back now.
803
+ object.__proto__ = prototype;
804
+ } else {
805
+ object[property] = descriptor.value;
806
+ }
807
+ } else {
808
+ if (!supportsAccessors)
809
+ throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);
810
+ // If we got that far then getters and setters can be defined !!
811
+ if (owns(descriptor, "get"))
812
+ defineGetter(object, property, descriptor.get);
813
+ if (owns(descriptor, "set"))
814
+ defineSetter(object, property, descriptor.set);
815
+ }
816
+
817
+ return object;
818
+ };
819
+ }
820
+
821
+ // ES5 15.2.3.7
822
+ // http://es5.github.com/#x15.2.3.7
823
+ if (!Object.defineProperties) {
824
+ Object.defineProperties = function defineProperties(object, properties) {
825
+ for (var property in properties) {
826
+ if (owns(properties, property))
827
+ Object.defineProperty(object, property, properties[property]);
828
+ }
829
+ return object;
830
+ };
831
+ }
832
+
833
+ // ES5 15.2.3.8
834
+ // http://es5.github.com/#x15.2.3.8
835
+ if (!Object.seal) {
836
+ Object.seal = function seal(object) {
837
+ // this is misleading and breaks feature-detection, but
838
+ // allows "securable" code to "gracefully" degrade to working
839
+ // but insecure code.
840
+ return object;
841
+ };
842
+ }
843
+
844
+ // ES5 15.2.3.9
845
+ // http://es5.github.com/#x15.2.3.9
846
+ if (!Object.freeze) {
847
+ Object.freeze = function freeze(object) {
848
+ // this is misleading and breaks feature-detection, but
849
+ // allows "securable" code to "gracefully" degrade to working
850
+ // but insecure code.
851
+ return object;
852
+ };
853
+ }
854
+
855
+ // detect a Rhino bug and patch it
856
+ try {
857
+ Object.freeze(function () {});
858
+ } catch (exception) {
859
+ Object.freeze = (function freeze(freezeObject) {
860
+ return function freeze(object) {
861
+ if (typeof object == "function") {
862
+ return object;
863
+ } else {
864
+ return freezeObject(object);
865
+ }
866
+ };
867
+ })(Object.freeze);
868
+ }
869
+
870
+ // ES5 15.2.3.10
871
+ // http://es5.github.com/#x15.2.3.10
872
+ if (!Object.preventExtensions) {
873
+ Object.preventExtensions = function preventExtensions(object) {
874
+ // this is misleading and breaks feature-detection, but
875
+ // allows "securable" code to "gracefully" degrade to working
876
+ // but insecure code.
877
+ return object;
878
+ };
879
+ }
880
+
881
+ // ES5 15.2.3.11
882
+ // http://es5.github.com/#x15.2.3.11
883
+ if (!Object.isSealed) {
884
+ Object.isSealed = function isSealed(object) {
885
+ return false;
886
+ };
887
+ }
888
+
889
+ // ES5 15.2.3.12
890
+ // http://es5.github.com/#x15.2.3.12
891
+ if (!Object.isFrozen) {
892
+ Object.isFrozen = function isFrozen(object) {
893
+ return false;
894
+ };
895
+ }
896
+
897
+ // ES5 15.2.3.13
898
+ // http://es5.github.com/#x15.2.3.13
899
+ if (!Object.isExtensible) {
900
+ Object.isExtensible = function isExtensible(object) {
901
+ // 1. If Type(O) is not Object throw a TypeError exception.
902
+ if (Object(object) === object) {
903
+ throw new TypeError(); // TODO message
904
+ }
905
+ // 2. Return the Boolean value of the [[Extensible]] internal property of O.
906
+ var name = '';
907
+ while (owns(object, name)) {
908
+ name += '?';
909
+ }
910
+ object[name] = true;
911
+ var returnValue = owns(object, name);
912
+ delete object[name];
913
+ return returnValue;
914
+ };
915
+ }
916
+
917
+ // ES5 15.2.3.14
918
+ // http://es5.github.com/#x15.2.3.14
919
+ if (!Object.keys) {
920
+ // http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
921
+ var hasDontEnumBug = true,
922
+ dontEnums = [
923
+ "toString",
924
+ "toLocaleString",
925
+ "valueOf",
926
+ "hasOwnProperty",
927
+ "isPrototypeOf",
928
+ "propertyIsEnumerable",
929
+ "constructor"
930
+ ],
931
+ dontEnumsLength = dontEnums.length;
932
+
933
+ for (var key in {"toString": null}) {
934
+ hasDontEnumBug = false;
935
+ }
936
+
937
+ Object.keys = function keys(object) {
938
+
939
+ if (
940
+ (typeof object != "object" && typeof object != "function") ||
941
+ object === null
942
+ ) {
943
+ throw new TypeError("Object.keys called on a non-object");
944
+ }
945
+
946
+ var keys = [];
947
+ for (var name in object) {
948
+ if (owns(object, name)) {
949
+ keys.push(name);
950
+ }
951
+ }
952
+
953
+ if (hasDontEnumBug) {
954
+ for (var i = 0, ii = dontEnumsLength; i < ii; i++) {
955
+ var dontEnum = dontEnums[i];
956
+ if (owns(object, dontEnum)) {
957
+ keys.push(dontEnum);
958
+ }
959
+ }
960
+ }
961
+ return keys;
962
+ };
963
+
964
+ }
965
+
966
+ //
967
+ // most of es5-shim Date section is removed since ace doesn't need it, it is too intrusive and it causes problems for users
968
+ // ====
969
+ //
970
+
971
+ // ES5 15.9.4.4
972
+ // http://es5.github.com/#x15.9.4.4
973
+ if (!Date.now) {
974
+ Date.now = function now() {
975
+ return new Date().getTime();
976
+ };
977
+ }
978
+
979
+
980
+ //
981
+ // String
982
+ // ======
983
+ //
984
+
985
+ // ES5 15.5.4.20
986
+ // http://es5.github.com/#x15.5.4.20
987
+ var ws = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003" +
988
+ "\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028" +
989
+ "\u2029\uFEFF";
990
+ if (!String.prototype.trim || ws.trim()) {
991
+ // http://blog.stevenlevithan.com/archives/faster-trim-javascript
992
+ // http://perfectionkills.com/whitespace-deviations/
993
+ ws = "[" + ws + "]";
994
+ var trimBeginRegexp = new RegExp("^" + ws + ws + "*"),
995
+ trimEndRegexp = new RegExp(ws + ws + "*$");
996
+ String.prototype.trim = function trim() {
997
+ return String(this).replace(trimBeginRegexp, "").replace(trimEndRegexp, "");
998
+ };
999
+ }
1000
+
1001
+ //
1002
+ // Util
1003
+ // ======
1004
+ //
1005
+
1006
+ // ES5 9.4
1007
+ // http://es5.github.com/#x9.4
1008
+ // http://jsperf.com/to-integer
1009
+
1010
+ function toInteger(n) {
1011
+ n = +n;
1012
+ if (n !== n) { // isNaN
1013
+ n = 0;
1014
+ } else if (n !== 0 && n !== (1/0) && n !== -(1/0)) {
1015
+ n = (n > 0 || -1) * Math.floor(Math.abs(n));
1016
+ }
1017
+ return n;
1018
+ }
1019
+
1020
+ function isPrimitive(input) {
1021
+ var type = typeof input;
1022
+ return (
1023
+ input === null ||
1024
+ type === "undefined" ||
1025
+ type === "boolean" ||
1026
+ type === "number" ||
1027
+ type === "string"
1028
+ );
1029
+ }
1030
+
1031
+ function toPrimitive(input) {
1032
+ var val, valueOf, toString;
1033
+ if (isPrimitive(input)) {
1034
+ return input;
1035
+ }
1036
+ valueOf = input.valueOf;
1037
+ if (typeof valueOf === "function") {
1038
+ val = valueOf.call(input);
1039
+ if (isPrimitive(val)) {
1040
+ return val;
1041
+ }
1042
+ }
1043
+ toString = input.toString;
1044
+ if (typeof toString === "function") {
1045
+ val = toString.call(input);
1046
+ if (isPrimitive(val)) {
1047
+ return val;
1048
+ }
1049
+ }
1050
+ throw new TypeError();
1051
+ }
1052
+
1053
+ // ES5 9.9
1054
+ // http://es5.github.com/#x9.9
1055
+ var toObject = function (o) {
1056
+ if (o == null) { // this matches both null and undefined
1057
+ throw new TypeError("can't convert "+o+" to object");
1058
+ }
1059
+ return Object(o);
1060
+ };
1061
+
1062
+ });