pollypost 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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
+ });