bedrock_sass 0.2.0 → 0.2.1

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 (466) hide show
  1. checksums.yaml +4 -4
  2. data/assets/_vendor/ace/ace.js +255 -589
  3. data/assets/_vendor/ace/ext-beautify.js +1 -2
  4. data/assets/_vendor/ace/ext-elastic_tabstops_lite.js +2 -2
  5. data/assets/_vendor/ace/ext-emmet.js +4 -4
  6. data/assets/_vendor/ace/ext-error_marker.js +1 -2
  7. data/assets/_vendor/ace/ext-keybinding_menu.js +1 -2
  8. data/assets/_vendor/ace/ext-language_tools.js +5 -9
  9. data/assets/_vendor/ace/ext-linking.js +1 -2
  10. data/assets/_vendor/ace/ext-modelist.js +9 -5
  11. data/assets/_vendor/ace/ext-options.js +10 -7
  12. data/assets/_vendor/ace/ext-rtl.js +1 -2
  13. data/assets/_vendor/ace/ext-searchbox.js +8 -4
  14. data/assets/_vendor/ace/ext-settings_menu.js +10 -7
  15. data/assets/_vendor/ace/ext-spellcheck.js +1 -2
  16. data/assets/_vendor/ace/ext-split.js +1 -2
  17. data/assets/_vendor/ace/ext-static_highlight.js +11 -8
  18. data/assets/_vendor/ace/ext-statusbar.js +1 -2
  19. data/assets/_vendor/ace/ext-textarea.js +1 -5
  20. data/assets/_vendor/ace/ext-themelist.js +2 -4
  21. data/assets/_vendor/ace/ext-whitespace.js +1 -2
  22. data/assets/_vendor/ace/keybinding-emacs.js +6 -2
  23. data/assets/_vendor/ace/keybinding-vim.js +13 -25
  24. data/assets/_vendor/ace/mode-abap.js +2 -3
  25. data/assets/_vendor/ace/mode-abc.js +3 -2
  26. data/assets/_vendor/ace/mode-actionscript.js +2 -2
  27. data/assets/_vendor/ace/mode-ada.js +1 -2
  28. data/assets/_vendor/ace/mode-apache_conf.js +2 -2
  29. data/assets/_vendor/ace/mode-apex.js +457 -0
  30. data/assets/_vendor/ace/mode-applescript.js +1 -2
  31. data/assets/_vendor/ace/mode-asciidoc.js +2 -2
  32. data/assets/_vendor/ace/mode-asl.js +1 -2
  33. data/assets/_vendor/ace/mode-assembly_x86.js +2 -2
  34. data/assets/_vendor/ace/mode-autohotkey.js +1 -2
  35. data/assets/_vendor/ace/mode-batchfile.js +2 -2
  36. data/assets/_vendor/ace/mode-bro.js +2 -2
  37. data/assets/_vendor/ace/mode-c9search.js +1 -2
  38. data/assets/_vendor/ace/mode-c_cpp.js +2 -2
  39. data/assets/_vendor/ace/mode-cirru.js +1 -2
  40. data/assets/_vendor/ace/mode-clojure.js +2 -2
  41. data/assets/_vendor/ace/mode-cobol.js +1 -2
  42. data/assets/_vendor/ace/mode-coffee.js +1 -2
  43. data/assets/_vendor/ace/mode-coldfusion.js +3 -2
  44. data/assets/_vendor/ace/mode-csharp.js +3 -3
  45. data/assets/_vendor/ace/mode-csound_document.js +319 -80
  46. data/assets/_vendor/ace/mode-csound_orchestra.js +323 -86
  47. data/assets/_vendor/ace/mode-csound_score.js +1 -2
  48. data/assets/_vendor/ace/mode-csp.js +1 -2
  49. data/assets/_vendor/ace/mode-css.js +2 -2
  50. data/assets/_vendor/ace/mode-curly.js +3 -2
  51. data/assets/_vendor/ace/mode-d.js +2 -2
  52. data/assets/_vendor/ace/mode-dart.js +24 -14
  53. data/assets/_vendor/ace/mode-diff.js +4 -4
  54. data/assets/_vendor/ace/mode-django.js +3 -2
  55. data/assets/_vendor/ace/mode-dockerfile.js +3 -2
  56. data/assets/_vendor/ace/mode-dot.js +1 -2
  57. data/assets/_vendor/ace/mode-drools.js +3 -2
  58. data/assets/_vendor/ace/mode-edifact.js +2 -2
  59. data/assets/_vendor/ace/mode-eiffel.js +1 -2
  60. data/assets/_vendor/ace/mode-ejs.js +5 -2
  61. data/assets/_vendor/ace/mode-elixir.js +2 -2
  62. data/assets/_vendor/ace/mode-elm.js +1 -2
  63. data/assets/_vendor/ace/mode-erlang.js +2 -2
  64. data/assets/_vendor/ace/mode-forth.js +2 -2
  65. data/assets/_vendor/ace/mode-fortran.js +1 -2
  66. data/assets/_vendor/ace/mode-fsharp.js +1 -2
  67. data/assets/_vendor/ace/mode-fsl.js +258 -0
  68. data/assets/_vendor/ace/mode-ftl.js +3 -2
  69. data/assets/_vendor/ace/mode-gcode.js +1 -2
  70. data/assets/_vendor/ace/mode-gherkin.js +2 -4
  71. data/assets/_vendor/ace/mode-gitignore.js +1 -2
  72. data/assets/_vendor/ace/mode-glsl.js +2 -2
  73. data/assets/_vendor/ace/mode-gobstones.js +3 -2
  74. data/assets/_vendor/ace/mode-golang.js +1 -2
  75. data/assets/_vendor/ace/mode-graphqlschema.js +1 -2
  76. data/assets/_vendor/ace/mode-groovy.js +4 -2
  77. data/assets/_vendor/ace/mode-haml.js +5 -2
  78. data/assets/_vendor/ace/mode-handlebars.js +3 -2
  79. data/assets/_vendor/ace/mode-haskell.js +2 -2
  80. data/assets/_vendor/ace/mode-haskell_cabal.js +1 -2
  81. data/assets/_vendor/ace/mode-haxe.js +2 -2
  82. data/assets/_vendor/ace/mode-hjson.js +2 -2
  83. data/assets/_vendor/ace/mode-html.js +3 -2
  84. data/assets/_vendor/ace/mode-html_elixir.js +4 -2
  85. data/assets/_vendor/ace/mode-html_ruby.js +5 -2
  86. data/assets/_vendor/ace/mode-ini.js +1 -2
  87. data/assets/_vendor/ace/mode-io.js +2 -2
  88. data/assets/_vendor/ace/mode-jack.js +1 -2
  89. data/assets/_vendor/ace/mode-jade.js +14 -115
  90. data/assets/_vendor/ace/mode-java.js +64 -3
  91. data/assets/_vendor/ace/mode-javascript.js +2 -2
  92. data/assets/_vendor/ace/mode-json.js +1 -2
  93. data/assets/_vendor/ace/mode-jsoniq.js +8 -2317
  94. data/assets/_vendor/ace/mode-jsp.js +4 -2
  95. data/assets/_vendor/ace/mode-jssm.js +2 -2
  96. data/assets/_vendor/ace/mode-jsx.js +1 -2
  97. data/assets/_vendor/ace/mode-julia.js +2 -2
  98. data/assets/_vendor/ace/mode-kotlin.js +2 -2
  99. data/assets/_vendor/ace/mode-latex.js +1 -2
  100. data/assets/_vendor/ace/mode-less.js +4 -2
  101. data/assets/_vendor/ace/mode-liquid.js +2026 -477
  102. data/assets/_vendor/ace/mode-lisp.js +2 -2
  103. data/assets/_vendor/ace/mode-livescript.js +1 -2
  104. data/assets/_vendor/ace/mode-logiql.js +2 -2
  105. data/assets/_vendor/ace/mode-logtalk.js +352 -0
  106. data/assets/_vendor/ace/mode-lsl.js +1 -2
  107. data/assets/_vendor/ace/mode-lua.js +1 -2
  108. data/assets/_vendor/ace/mode-luapage.js +3 -2
  109. data/assets/_vendor/ace/mode-lucene.js +2 -3
  110. data/assets/_vendor/ace/mode-makefile.js +3 -2
  111. data/assets/_vendor/ace/mode-markdown.js +5 -2
  112. data/assets/_vendor/ace/mode-mask.js +3 -2
  113. data/assets/_vendor/ace/mode-matlab.js +1 -2
  114. data/assets/_vendor/ace/mode-maze.js +2 -2
  115. data/assets/_vendor/ace/mode-mel.js +2 -2
  116. data/assets/_vendor/ace/mode-mixal.js +1 -2
  117. data/assets/_vendor/ace/mode-mushcode.js +2 -2
  118. data/assets/_vendor/ace/mode-mysql.js +3 -4
  119. data/assets/_vendor/ace/mode-nix.js +2 -2
  120. data/assets/_vendor/ace/mode-nsis.js +2 -2
  121. data/assets/_vendor/ace/mode-objectivec.js +3 -2
  122. data/assets/_vendor/ace/mode-ocaml.js +1 -2
  123. data/assets/_vendor/ace/mode-pascal.js +2 -2
  124. data/assets/_vendor/ace/mode-perl.js +2 -2
  125. data/assets/_vendor/ace/mode-perl6.js +593 -0
  126. data/assets/_vendor/ace/mode-pgsql.js +304 -69
  127. data/assets/_vendor/ace/mode-php.js +844 -1029
  128. data/assets/_vendor/ace/mode-php_laravel_blade.js +844 -1029
  129. data/assets/_vendor/ace/mode-pig.js +2 -2
  130. data/assets/_vendor/ace/mode-plain_text.js +1 -2
  131. data/assets/_vendor/ace/mode-powershell.js +2 -2
  132. data/assets/_vendor/ace/mode-praat.js +2 -2
  133. data/assets/_vendor/ace/mode-prolog.js +2 -2
  134. data/assets/_vendor/ace/mode-properties.js +1 -2
  135. data/assets/_vendor/ace/mode-protobuf.js +2 -2
  136. data/assets/_vendor/ace/mode-puppet.js +1 -2
  137. data/assets/_vendor/ace/mode-python.js +297 -63
  138. data/assets/_vendor/ace/mode-r.js +3 -2
  139. data/assets/_vendor/ace/mode-razor.js +9 -3
  140. data/assets/_vendor/ace/mode-rdoc.js +2 -2
  141. data/assets/_vendor/ace/mode-red.js +2 -2
  142. data/assets/_vendor/ace/mode-redshift.js +1 -2
  143. data/assets/_vendor/ace/mode-rhtml.js +5 -2
  144. data/assets/_vendor/ace/mode-rst.js +1 -2
  145. data/assets/_vendor/ace/mode-ruby.js +3 -2
  146. data/assets/_vendor/ace/mode-rust.js +2 -2
  147. data/assets/_vendor/ace/mode-sass.js +205 -117
  148. data/assets/_vendor/ace/mode-scad.js +2 -2
  149. data/assets/_vendor/ace/mode-scala.js +3 -2
  150. data/assets/_vendor/ace/mode-scheme.js +2 -2
  151. data/assets/_vendor/ace/mode-scss.js +204 -115
  152. data/assets/_vendor/ace/mode-sh.js +3 -2
  153. data/assets/_vendor/ace/mode-sjs.js +2 -2
  154. data/assets/_vendor/ace/mode-slim.js +18 -117
  155. data/assets/_vendor/ace/mode-smarty.js +3 -2
  156. data/assets/_vendor/ace/mode-snippets.js +1 -2
  157. data/assets/_vendor/ace/mode-soy_template.js +4 -2
  158. data/assets/_vendor/ace/mode-space.js +1 -2
  159. data/assets/_vendor/ace/mode-sparql.js +2 -2
  160. data/assets/_vendor/ace/mode-sql.js +2 -3
  161. data/assets/_vendor/ace/mode-sqlserver.js +2 -2
  162. data/assets/_vendor/ace/mode-stylus.js +3 -2
  163. data/assets/_vendor/ace/mode-svg.js +2 -2
  164. data/assets/_vendor/ace/mode-swift.js +1 -2
  165. data/assets/_vendor/ace/mode-tcl.js +2 -2
  166. data/assets/_vendor/ace/mode-terraform.js +1 -2
  167. data/assets/_vendor/ace/mode-tex.js +2 -2
  168. data/assets/_vendor/ace/mode-text.js +1 -2
  169. data/assets/_vendor/ace/mode-textile.js +1 -2
  170. data/assets/_vendor/ace/mode-toml.js +1 -2
  171. data/assets/_vendor/ace/mode-tsx.js +2 -2
  172. data/assets/_vendor/ace/mode-turtle.js +2 -2
  173. data/assets/_vendor/ace/mode-twig.js +3 -2
  174. data/assets/_vendor/ace/mode-typescript.js +2 -2
  175. data/assets/_vendor/ace/mode-vala.js +2 -2
  176. data/assets/_vendor/ace/mode-vbscript.js +1 -2
  177. data/assets/_vendor/ace/mode-velocity.js +4 -2
  178. data/assets/_vendor/ace/mode-verilog.js +1 -2
  179. data/assets/_vendor/ace/mode-vhdl.js +1 -2
  180. data/assets/_vendor/ace/mode-visualforce.js +2641 -0
  181. data/assets/_vendor/ace/mode-wollok.js +3 -2
  182. data/assets/_vendor/ace/mode-xml.js +1 -2
  183. data/assets/_vendor/ace/mode-xquery.js +8 -2287
  184. data/assets/_vendor/ace/mode-yaml.js +1 -2
  185. data/assets/_vendor/ace/snippets/abap.js +2 -3
  186. data/assets/_vendor/ace/snippets/abc.js +1 -2
  187. data/assets/_vendor/ace/snippets/actionscript.js +1 -2
  188. data/assets/_vendor/ace/snippets/ada.js +2 -3
  189. data/assets/_vendor/ace/snippets/apache_conf.js +2 -3
  190. data/assets/_vendor/ace/snippets/apex.js +14 -0
  191. data/assets/_vendor/ace/snippets/applescript.js +2 -3
  192. data/assets/_vendor/ace/snippets/asciidoc.js +2 -3
  193. data/assets/_vendor/ace/snippets/asl.js +2 -3
  194. data/assets/_vendor/ace/snippets/assembly_x86.js +2 -3
  195. data/assets/_vendor/ace/snippets/autohotkey.js +2 -3
  196. data/assets/_vendor/ace/snippets/batchfile.js +2 -3
  197. data/assets/_vendor/ace/snippets/bro.js +1 -2
  198. data/assets/_vendor/ace/snippets/c9search.js +2 -3
  199. data/assets/_vendor/ace/snippets/c_cpp.js +1 -2
  200. data/assets/_vendor/ace/snippets/cirru.js +2 -3
  201. data/assets/_vendor/ace/snippets/clojure.js +1 -2
  202. data/assets/_vendor/ace/snippets/cobol.js +2 -3
  203. data/assets/_vendor/ace/snippets/coffee.js +1 -2
  204. data/assets/_vendor/ace/snippets/coldfusion.js +2 -3
  205. data/assets/_vendor/ace/snippets/csharp.js +2 -3
  206. data/assets/_vendor/ace/snippets/csound_document.js +1 -2
  207. data/assets/_vendor/ace/snippets/csound_orchestra.js +1 -2
  208. data/assets/_vendor/ace/snippets/csound_score.js +2 -3
  209. data/assets/_vendor/ace/snippets/csp.js +1 -2
  210. data/assets/_vendor/ace/snippets/css.js +1 -2
  211. data/assets/_vendor/ace/snippets/curly.js +2 -3
  212. data/assets/_vendor/ace/snippets/d.js +2 -3
  213. data/assets/_vendor/ace/snippets/dart.js +1 -2
  214. data/assets/_vendor/ace/snippets/diff.js +1 -2
  215. data/assets/_vendor/ace/snippets/django.js +1 -2
  216. data/assets/_vendor/ace/snippets/dockerfile.js +2 -3
  217. data/assets/_vendor/ace/snippets/dot.js +2 -3
  218. data/assets/_vendor/ace/snippets/drools.js +1 -2
  219. data/assets/_vendor/ace/snippets/edifact.js +1 -2
  220. data/assets/_vendor/ace/snippets/eiffel.js +2 -3
  221. data/assets/_vendor/ace/snippets/ejs.js +2 -3
  222. data/assets/_vendor/ace/snippets/elixir.js +1 -2
  223. data/assets/_vendor/ace/snippets/elm.js +2 -3
  224. data/assets/_vendor/ace/snippets/erlang.js +1 -2
  225. data/assets/_vendor/ace/snippets/forth.js +2 -3
  226. data/assets/_vendor/ace/snippets/fortran.js +2 -3
  227. data/assets/_vendor/ace/snippets/fsharp.js +2 -3
  228. data/assets/_vendor/ace/snippets/fsl.js +14 -0
  229. data/assets/_vendor/ace/snippets/ftl.js +2 -3
  230. data/assets/_vendor/ace/snippets/gcode.js +2 -3
  231. data/assets/_vendor/ace/snippets/gherkin.js +2 -3
  232. data/assets/_vendor/ace/snippets/gitignore.js +2 -3
  233. data/assets/_vendor/ace/snippets/glsl.js +2 -3
  234. data/assets/_vendor/ace/snippets/gobstones.js +1 -2
  235. data/assets/_vendor/ace/snippets/golang.js +2 -3
  236. data/assets/_vendor/ace/snippets/graphqlschema.js +1 -2
  237. data/assets/_vendor/ace/snippets/groovy.js +2 -3
  238. data/assets/_vendor/ace/snippets/haml.js +1 -2
  239. data/assets/_vendor/ace/snippets/handlebars.js +2 -3
  240. data/assets/_vendor/ace/snippets/haskell.js +1 -2
  241. data/assets/_vendor/ace/snippets/haskell_cabal.js +2 -3
  242. data/assets/_vendor/ace/snippets/haxe.js +2 -3
  243. data/assets/_vendor/ace/snippets/hjson.js +1 -2
  244. data/assets/_vendor/ace/snippets/html.js +1 -2
  245. data/assets/_vendor/ace/snippets/html_elixir.js +2 -3
  246. data/assets/_vendor/ace/snippets/html_ruby.js +2 -3
  247. data/assets/_vendor/ace/snippets/ini.js +2 -3
  248. data/assets/_vendor/ace/snippets/io.js +1 -2
  249. data/assets/_vendor/ace/snippets/jack.js +2 -3
  250. data/assets/_vendor/ace/snippets/jade.js +2 -3
  251. data/assets/_vendor/ace/snippets/java.js +1 -2
  252. data/assets/_vendor/ace/snippets/javascript.js +1 -2
  253. data/assets/_vendor/ace/snippets/json.js +2 -3
  254. data/assets/_vendor/ace/snippets/jsoniq.js +1 -2
  255. data/assets/_vendor/ace/snippets/jsp.js +1 -2
  256. data/assets/_vendor/ace/snippets/jssm.js +1 -2
  257. data/assets/_vendor/ace/snippets/jsx.js +2 -3
  258. data/assets/_vendor/ace/snippets/julia.js +2 -3
  259. data/assets/_vendor/ace/snippets/kotlin.js +1 -2
  260. data/assets/_vendor/ace/snippets/latex.js +2 -3
  261. data/assets/_vendor/ace/snippets/less.js +2 -3
  262. data/assets/_vendor/ace/snippets/liquid.js +883 -3
  263. data/assets/_vendor/ace/snippets/lisp.js +2 -3
  264. data/assets/_vendor/ace/snippets/livescript.js +2 -3
  265. data/assets/_vendor/ace/snippets/logiql.js +2 -3
  266. data/assets/_vendor/ace/snippets/logtalk.js +14 -0
  267. data/assets/_vendor/ace/snippets/lsl.js +1 -2
  268. data/assets/_vendor/ace/snippets/lua.js +1 -2
  269. data/assets/_vendor/ace/snippets/luapage.js +2 -3
  270. data/assets/_vendor/ace/snippets/lucene.js +2 -3
  271. data/assets/_vendor/ace/snippets/makefile.js +1 -2
  272. data/assets/_vendor/ace/snippets/markdown.js +1 -2
  273. data/assets/_vendor/ace/snippets/mask.js +2 -3
  274. data/assets/_vendor/ace/snippets/matlab.js +2 -3
  275. data/assets/_vendor/ace/snippets/maze.js +1 -2
  276. data/assets/_vendor/ace/snippets/mel.js +2 -3
  277. data/assets/_vendor/ace/snippets/mixal.js +2 -3
  278. data/assets/_vendor/ace/snippets/mushcode.js +2 -3
  279. data/assets/_vendor/ace/snippets/mysql.js +2 -3
  280. data/assets/_vendor/ace/snippets/nix.js +2 -3
  281. data/assets/_vendor/ace/snippets/nsis.js +1 -2
  282. data/assets/_vendor/ace/snippets/objectivec.js +2 -3
  283. data/assets/_vendor/ace/snippets/ocaml.js +2 -3
  284. data/assets/_vendor/ace/snippets/pascal.js +2 -3
  285. data/assets/_vendor/ace/snippets/perl.js +1 -2
  286. data/assets/_vendor/ace/snippets/perl6.js +14 -0
  287. data/assets/_vendor/ace/snippets/pgsql.js +2 -3
  288. data/assets/_vendor/ace/snippets/php.js +1 -2
  289. data/assets/_vendor/ace/snippets/php_laravel_blade.js +2 -3
  290. data/assets/_vendor/ace/snippets/pig.js +2 -3
  291. data/assets/_vendor/ace/snippets/plain_text.js +2 -3
  292. data/assets/_vendor/ace/snippets/powershell.js +2 -3
  293. data/assets/_vendor/ace/snippets/praat.js +2 -3
  294. data/assets/_vendor/ace/snippets/prolog.js +2 -3
  295. data/assets/_vendor/ace/snippets/properties.js +2 -3
  296. data/assets/_vendor/ace/snippets/protobuf.js +1 -2
  297. data/assets/_vendor/ace/snippets/puppet.js +2 -3
  298. data/assets/_vendor/ace/snippets/python.js +1 -2
  299. data/assets/_vendor/ace/snippets/r.js +1 -2
  300. data/assets/_vendor/ace/snippets/razor.js +1 -2
  301. data/assets/_vendor/ace/snippets/rdoc.js +2 -3
  302. data/assets/_vendor/ace/snippets/red.js +1 -2
  303. data/assets/_vendor/ace/snippets/redshift.js +2 -3
  304. data/assets/_vendor/ace/snippets/rhtml.js +2 -3
  305. data/assets/_vendor/ace/snippets/rst.js +1 -2
  306. data/assets/_vendor/ace/snippets/ruby.js +1 -2
  307. data/assets/_vendor/ace/snippets/rust.js +2 -3
  308. data/assets/_vendor/ace/snippets/sass.js +2 -3
  309. data/assets/_vendor/ace/snippets/scad.js +2 -3
  310. data/assets/_vendor/ace/snippets/scala.js +2 -3
  311. data/assets/_vendor/ace/snippets/scheme.js +2 -3
  312. data/assets/_vendor/ace/snippets/scss.js +2 -3
  313. data/assets/_vendor/ace/snippets/sh.js +1 -2
  314. data/assets/_vendor/ace/snippets/sjs.js +2 -3
  315. data/assets/_vendor/ace/snippets/slim.js +2 -3
  316. data/assets/_vendor/ace/snippets/smarty.js +2 -3
  317. data/assets/_vendor/ace/snippets/snippets.js +1 -2
  318. data/assets/_vendor/ace/snippets/soy_template.js +2 -3
  319. data/assets/_vendor/ace/snippets/space.js +2 -3
  320. data/assets/_vendor/ace/snippets/sparql.js +1 -2
  321. data/assets/_vendor/ace/snippets/sql.js +1 -2
  322. data/assets/_vendor/ace/snippets/sqlserver.js +1 -2
  323. data/assets/_vendor/ace/snippets/stylus.js +2 -3
  324. data/assets/_vendor/ace/snippets/svg.js +2 -3
  325. data/assets/_vendor/ace/snippets/swift.js +2 -3
  326. data/assets/_vendor/ace/snippets/tcl.js +1 -2
  327. data/assets/_vendor/ace/snippets/terraform.js +2 -3
  328. data/assets/_vendor/ace/snippets/tex.js +1 -2
  329. data/assets/_vendor/ace/snippets/text.js +2 -3
  330. data/assets/_vendor/ace/snippets/textile.js +1 -2
  331. data/assets/_vendor/ace/snippets/toml.js +2 -3
  332. data/assets/_vendor/ace/snippets/tsx.js +2 -3
  333. data/assets/_vendor/ace/snippets/turtle.js +1 -2
  334. data/assets/_vendor/ace/snippets/twig.js +2 -3
  335. data/assets/_vendor/ace/snippets/typescript.js +2 -3
  336. data/assets/_vendor/ace/snippets/vala.js +1 -2
  337. data/assets/_vendor/ace/snippets/vbscript.js +2 -3
  338. data/assets/_vendor/ace/snippets/velocity.js +1 -2
  339. data/assets/_vendor/ace/snippets/verilog.js +2 -3
  340. data/assets/_vendor/ace/snippets/vhdl.js +2 -3
  341. data/assets/_vendor/ace/snippets/visualforce.js +14 -0
  342. data/assets/_vendor/ace/snippets/wollok.js +1 -2
  343. data/assets/_vendor/ace/snippets/xml.js +2 -3
  344. data/assets/_vendor/ace/snippets/xquery.js +1 -2
  345. data/assets/_vendor/ace/snippets/yaml.js +2 -3
  346. data/assets/_vendor/ace/theme-ambiance.js +1 -2
  347. data/assets/_vendor/ace/theme-chaos.js +1 -2
  348. data/assets/_vendor/ace/theme-chrome.js +1 -2
  349. data/assets/_vendor/ace/theme-clouds.js +1 -2
  350. data/assets/_vendor/ace/theme-clouds_midnight.js +1 -2
  351. data/assets/_vendor/ace/theme-cobalt.js +1 -2
  352. data/assets/_vendor/ace/theme-crimson_editor.js +1 -2
  353. data/assets/_vendor/ace/theme-dawn.js +1 -2
  354. data/assets/_vendor/ace/theme-dracula.js +1 -2
  355. data/assets/_vendor/ace/theme-dreamweaver.js +1 -2
  356. data/assets/_vendor/ace/theme-eclipse.js +1 -2
  357. data/assets/_vendor/ace/theme-github.js +3 -3
  358. data/assets/_vendor/ace/theme-gob.js +1 -2
  359. data/assets/_vendor/ace/theme-gruvbox.js +1 -2
  360. data/assets/_vendor/ace/theme-idle_fingers.js +1 -2
  361. data/assets/_vendor/ace/theme-iplastic.js +1 -2
  362. data/assets/_vendor/ace/theme-katzenmilch.js +1 -2
  363. data/assets/_vendor/ace/theme-kr_theme.js +1 -2
  364. data/assets/_vendor/ace/theme-kuroir.js +1 -2
  365. data/assets/_vendor/ace/theme-merbivore.js +1 -2
  366. data/assets/_vendor/ace/theme-merbivore_soft.js +1 -2
  367. data/assets/_vendor/ace/theme-mono_industrial.js +1 -2
  368. data/assets/_vendor/ace/theme-monokai.js +1 -2
  369. data/assets/_vendor/ace/theme-pastel_on_dark.js +1 -2
  370. data/assets/_vendor/ace/theme-solarized_dark.js +1 -2
  371. data/assets/_vendor/ace/theme-solarized_light.js +1 -2
  372. data/assets/_vendor/ace/theme-sqlserver.js +1 -2
  373. data/assets/_vendor/ace/theme-terminal.js +1 -2
  374. data/assets/_vendor/ace/theme-textmate.js +1 -2
  375. data/assets/_vendor/ace/theme-tomorrow.js +1 -2
  376. data/assets/_vendor/ace/theme-tomorrow_night.js +1 -2
  377. data/assets/_vendor/ace/theme-tomorrow_night_blue.js +1 -2
  378. data/assets/_vendor/ace/theme-tomorrow_night_bright.js +1 -2
  379. data/assets/_vendor/ace/theme-tomorrow_night_eighties.js +1 -2
  380. data/assets/_vendor/ace/theme-twilight.js +1 -2
  381. data/assets/_vendor/ace/theme-vibrant_ink.js +1 -2
  382. data/assets/_vendor/ace/theme-xcode.js +1 -2
  383. data/assets/_vendor/ace/worker-coffee.js +11 -20
  384. data/assets/_vendor/ace/worker-css.js +23 -20
  385. data/assets/_vendor/ace/worker-html.js +25 -31
  386. data/assets/_vendor/ace/worker-javascript.js +76 -36
  387. data/assets/_vendor/ace/worker-json.js +25 -20
  388. data/assets/_vendor/ace/worker-lua.js +68 -69
  389. data/assets/_vendor/ace/worker-php.js +12 -20
  390. data/assets/_vendor/ace/worker-xml.js +12 -22
  391. data/assets/_vendor/ace/worker-xquery.js +44 -12378
  392. data/assets/_vendor/tinymce/plugins/advlist/plugin.js +137 -137
  393. data/assets/_vendor/tinymce/plugins/anchor/plugin.js +102 -102
  394. data/assets/_vendor/tinymce/plugins/autolink/plugin.js +154 -154
  395. data/assets/_vendor/tinymce/plugins/autoresize/plugin.js +145 -145
  396. data/assets/_vendor/tinymce/plugins/autosave/plugin.js +207 -217
  397. data/assets/_vendor/tinymce/plugins/autosave/plugin.min.js +1 -1
  398. data/assets/_vendor/tinymce/plugins/bbcode/plugin.js +89 -89
  399. data/assets/_vendor/tinymce/plugins/charmap/plugin.js +1246 -1246
  400. data/assets/_vendor/tinymce/plugins/code/plugin.js +80 -80
  401. data/assets/_vendor/tinymce/plugins/codesample/plugin.js +852 -852
  402. data/assets/_vendor/tinymce/plugins/colorpicker/plugin.js +109 -109
  403. data/assets/_vendor/tinymce/plugins/contextmenu/plugin.js +144 -144
  404. data/assets/_vendor/tinymce/plugins/directionality/plugin.js +53 -53
  405. data/assets/_vendor/tinymce/plugins/emoticons/plugin.js +74 -74
  406. data/assets/_vendor/tinymce/plugins/fullpage/plugin.js +464 -464
  407. data/assets/_vendor/tinymce/plugins/fullscreen/plugin.js +152 -152
  408. data/assets/_vendor/tinymce/plugins/help/plugin.js +639 -678
  409. data/assets/_vendor/tinymce/plugins/help/plugin.min.js +1 -1
  410. data/assets/_vendor/tinymce/plugins/hr/plugin.js +29 -29
  411. data/assets/_vendor/tinymce/plugins/image/plugin.js +1119 -1126
  412. data/assets/_vendor/tinymce/plugins/image/plugin.min.js +1 -1
  413. data/assets/_vendor/tinymce/plugins/imagetools/plugin.js +3414 -3445
  414. data/assets/_vendor/tinymce/plugins/imagetools/plugin.min.js +1 -1
  415. data/assets/_vendor/tinymce/plugins/importcss/plugin.js +230 -230
  416. data/assets/_vendor/tinymce/plugins/insertdatetime/plugin.js +152 -152
  417. data/assets/_vendor/tinymce/plugins/legacyoutput/plugin.js +193 -193
  418. data/assets/_vendor/tinymce/plugins/link/plugin.js +646 -646
  419. data/assets/_vendor/tinymce/plugins/lists/plugin.js +2103 -1037
  420. data/assets/_vendor/tinymce/plugins/lists/plugin.min.js +1 -1
  421. data/assets/_vendor/tinymce/plugins/media/plugin.js +1050 -1050
  422. data/assets/_vendor/tinymce/plugins/nonbreaking/plugin.js +69 -69
  423. data/assets/_vendor/tinymce/plugins/noneditable/plugin.js +98 -98
  424. data/assets/_vendor/tinymce/plugins/pagebreak/plugin.js +91 -91
  425. data/assets/_vendor/tinymce/plugins/paste/plugin.js +1725 -1364
  426. data/assets/_vendor/tinymce/plugins/paste/plugin.min.js +1 -1
  427. data/assets/_vendor/tinymce/plugins/preview/plugin.js +107 -107
  428. data/assets/_vendor/tinymce/plugins/print/plugin.js +28 -28
  429. data/assets/_vendor/tinymce/plugins/save/plugin.js +101 -101
  430. data/assets/_vendor/tinymce/plugins/searchreplace/plugin.js +535 -537
  431. data/assets/_vendor/tinymce/plugins/searchreplace/plugin.min.js +1 -1
  432. data/assets/_vendor/tinymce/plugins/spellchecker/plugin.js +683 -681
  433. data/assets/_vendor/tinymce/plugins/spellchecker/plugin.min.js +1 -1
  434. data/assets/_vendor/tinymce/plugins/tabfocus/plugin.js +95 -95
  435. data/assets/_vendor/tinymce/plugins/table/plugin.js +8927 -9805
  436. data/assets/_vendor/tinymce/plugins/table/plugin.min.js +1 -1
  437. data/assets/_vendor/tinymce/plugins/template/plugin.js +305 -311
  438. data/assets/_vendor/tinymce/plugins/template/plugin.min.js +1 -1
  439. data/assets/_vendor/tinymce/plugins/textcolor/plugin.js +317 -317
  440. data/assets/_vendor/tinymce/plugins/textpattern/plugin.js +575 -329
  441. data/assets/_vendor/tinymce/plugins/textpattern/plugin.min.js +1 -1
  442. data/assets/_vendor/tinymce/plugins/toc/plugin.js +201 -201
  443. data/assets/_vendor/tinymce/plugins/visualblocks/plugin.js +113 -113
  444. data/assets/_vendor/tinymce/plugins/visualchars/plugin.js +419 -471
  445. data/assets/_vendor/tinymce/plugins/visualchars/plugin.min.js +1 -1
  446. data/assets/_vendor/tinymce/plugins/wordcount/plugin.js +371 -308
  447. data/assets/_vendor/tinymce/plugins/wordcount/plugin.min.js +1 -1
  448. data/assets/_vendor/tinymce/skins/lightgray/fonts/tinymce.eot +0 -0
  449. data/assets/_vendor/tinymce/skins/lightgray/fonts/tinymce.svg +1 -0
  450. data/assets/_vendor/tinymce/skins/lightgray/fonts/tinymce.ttf +0 -0
  451. data/assets/_vendor/tinymce/skins/lightgray/fonts/tinymce.woff +0 -0
  452. data/assets/_vendor/tinymce/skins/lightgray/skin.min.css +1 -1
  453. data/assets/_vendor/tinymce/themes/inlite/theme.js +9272 -9686
  454. data/assets/_vendor/tinymce/themes/inlite/theme.min.js +1 -1
  455. data/assets/_vendor/tinymce/themes/mobile/theme.js +12130 -13042
  456. data/assets/_vendor/tinymce/themes/mobile/theme.min.js +1 -1
  457. data/assets/_vendor/tinymce/themes/modern/theme.js +9090 -9504
  458. data/assets/_vendor/tinymce/themes/modern/theme.min.js +1 -1
  459. data/assets/_vendor/tinymce/tinymce.js +24914 -25218
  460. data/assets/bedrock/js/bedrock.js +1 -1
  461. data/assets/bedrock/scss/components/no-content.scss +5 -0
  462. data/assets/bedrock/scss/components/select-box.scss +1 -1
  463. data/lib/bedrock_sass.rb +51 -16
  464. data/lib/bedrock_sass/engine.rb +3 -2
  465. data/lib/bedrock_sass/version.rb +1 -1
  466. metadata +17 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e1032d99c0623f10aa4071727f7337be5b3006faa688f5b9d8660f7be3e079aa
4
- data.tar.gz: d223fdcf1a2c813e8d54126e48ccf9f311366d5896b5079d53a1b5f951713724
3
+ metadata.gz: 4cf8f79d000c9c15188638bfb16c5c0a4a4fbff13c2168cf149c14277b8b0ee5
4
+ data.tar.gz: abf5ecf91ec14cce51e6a0e3f5d6a5c368179785c476e33b325b8e75edcbf87f
5
5
  SHA512:
6
- metadata.gz: f6764a4691e9a69ed8c85f8a522edc0f0f8bdd9a6208c1307390017b36aa8459e0fdc05e8681bdf05934f2ce4d147c51b7d72e6c1a98f222a5fa4f7da39ec008
7
- data.tar.gz: d923d856c944b4ab5474a610ed705e46beb509a76cfd559fd369e30abcb99b2acd124153162399c36f76ac9494f9db2d4a7f18913337b269fc067240fad7ee28
6
+ metadata.gz: cec115b6433d3bde90df020df30ea31edd60719453ad92007b35f60d74254109a271c2a649886f2176b1570f47485d5f2485b426ac1fd9c97a096377bca8af40
7
+ data.tar.gz: 8eeeeb557ac339da9b0748ce48ec1379eedb0e2dc172d4c0312be6906d08da79ca063e334458f4905037870e67aad1808357aeeaf44becd26f548bc26d080eab
@@ -175,6 +175,7 @@ exportAce(ACE_NAMESPACE);
175
175
 
176
176
  define("ace/lib/regexp",["require","exports","module"], function(require, exports, module) {
177
177
  "use strict";
178
+
178
179
  var real = {
179
180
  exec: RegExp.prototype.exec,
180
181
  test: RegExp.prototype.test,
@@ -224,6 +225,7 @@ define("ace/lib/regexp",["require","exports","module"], function(require, export
224
225
  return !!match;
225
226
  };
226
227
  }
228
+
227
229
  function getNativeFlags (regex) {
228
230
  return (regex.global ? "g" : "") +
229
231
  (regex.ignoreCase ? "i" : "") +
@@ -246,8 +248,6 @@ define("ace/lib/regexp",["require","exports","module"], function(require, export
246
248
 
247
249
  define("ace/lib/es5-shim",["require","exports","module"], function(require, exports, module) {
248
250
 
249
- //
250
- //
251
251
  function Empty() {}
252
252
 
253
253
  if (!Function.prototype.bind) {
@@ -260,6 +260,7 @@ if (!Function.prototype.bind) {
260
260
  var bound = function () {
261
261
 
262
262
  if (this instanceof bound) {
263
+
263
264
  var result = target.apply(
264
265
  this,
265
266
  args.concat(slice.call(arguments))
@@ -283,7 +284,6 @@ if (!Function.prototype.bind) {
283
284
  bound.prototype = new Empty();
284
285
  Empty.prototype = null;
285
286
  }
286
- //
287
287
  return bound;
288
288
  };
289
289
  }
@@ -304,9 +304,6 @@ if ((supportsAccessors = owns(prototypeOfObject, "__defineGetter__"))) {
304
304
  lookupGetter = call.bind(prototypeOfObject.__lookupGetter__);
305
305
  lookupSetter = call.bind(prototypeOfObject.__lookupSetter__);
306
306
  }
307
-
308
- //
309
- //
310
307
  if ([1,2].splice(0).length != 2) {
311
308
  if(function() { // test IE < 9 to splice bug - see issue #138
312
309
  function makeArray(l) {
@@ -629,9 +626,6 @@ if (!Array.prototype.lastIndexOf || ([0, 1].lastIndexOf(0, -3) != -1)) {
629
626
  return -1;
630
627
  };
631
628
  }
632
-
633
- //
634
- //
635
629
  if (!Object.getPrototypeOf) {
636
630
  Object.getPrototypeOf = function getPrototypeOf(object) {
637
631
  return object.__proto__ || (
@@ -715,6 +709,7 @@ if (!Object.create) {
715
709
  return object;
716
710
  };
717
711
  }
712
+
718
713
  function doesDefinePropertyWork(object) {
719
714
  try {
720
715
  Object.defineProperty(object, "sentinel", {});
@@ -880,18 +875,11 @@ if (!Object.keys) {
880
875
  };
881
876
 
882
877
  }
883
-
884
- //
885
- //
886
878
  if (!Date.now) {
887
879
  Date.now = function now() {
888
880
  return new Date().getTime();
889
881
  };
890
882
  }
891
-
892
-
893
- //
894
- //
895
883
  var ws = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003" +
896
884
  "\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028" +
897
885
  "\u2029\uFEFF";
@@ -904,8 +892,6 @@ if (!String.prototype.trim || ws.trim()) {
904
892
  };
905
893
  }
906
894
 
907
- //
908
- //
909
895
  function toInteger(n) {
910
896
  n = +n;
911
897
  if (n !== n) { // isNaN
@@ -1160,13 +1146,18 @@ exports.hasCssString = function(id, doc) {
1160
1146
  }
1161
1147
  };
1162
1148
 
1163
- exports.importCssString = function importCssString(cssText, id, container) {
1164
- var root = container && container.getRootNode
1165
- ? container.getRootNode()
1166
- : document;
1149
+ exports.importCssString = function importCssString(cssText, id, target) {
1150
+ var container = target;
1151
+ if (!target || !target.getRootNode) {
1152
+ container = document;
1153
+ } else {
1154
+ container = target.getRootNode();
1155
+ if (!container || container == target)
1156
+ container = document;
1157
+ }
1167
1158
 
1168
- var doc = root.ownerDocument || root;
1169
- if (id && exports.hasCssString(id, root))
1159
+ var doc = container.ownerDocument || container;
1160
+ if (id && exports.hasCssString(id, container))
1170
1161
  return null;
1171
1162
 
1172
1163
  if (id)
@@ -1177,9 +1168,9 @@ exports.importCssString = function importCssString(cssText, id, container) {
1177
1168
  if (id)
1178
1169
  style.id = id;
1179
1170
 
1180
- if (root == doc)
1181
- root = exports.getDocumentHead(doc);
1182
- root.insertBefore(style, root.firstChild);
1171
+ if (container == doc)
1172
+ container = exports.getDocumentHead(doc);
1173
+ container.insertBefore(style, container.firstChild);
1183
1174
  };
1184
1175
 
1185
1176
  exports.importCssStylsheet = function(uri, doc) {
@@ -1292,11 +1283,9 @@ exports.implement = function(proto, mixin) {
1292
1283
 
1293
1284
  });
1294
1285
 
1295
- define("ace/lib/keys",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop"], function(require, exports, module) {
1286
+ define("ace/lib/keys",["require","exports","module","ace/lib/oop"], function(require, exports, module) {
1296
1287
  "use strict";
1297
1288
 
1298
- require("./fixoldbrowsers");
1299
-
1300
1289
  var oop = require("./oop");
1301
1290
  var Keys = (function() {
1302
1291
  var ret = {
@@ -2204,477 +2193,7 @@ exports.delayedCall = function(fcn, defaultTimeout) {
2204
2193
  };
2205
2194
  });
2206
2195
 
2207
- define("ace/keyboard/textinput_ios",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/lib/keys"], function(require, exports, module) {
2208
- "use strict";
2209
-
2210
- var event = require("../lib/event");
2211
- var useragent = require("../lib/useragent");
2212
- var dom = require("../lib/dom");
2213
- var lang = require("../lib/lang");
2214
- var KEYS = require("../lib/keys");
2215
- var MODS = KEYS.KEY_MODS;
2216
- var BROKEN_SETDATA = useragent.isChrome < 18;
2217
- var USE_IE_MIME_TYPE = useragent.isIE;
2218
-
2219
- var TextInput = function(parentNode, host) {
2220
- var self = this;
2221
- var text = dom.createElement("textarea");
2222
- text.className = useragent.isIOS ? "ace_text-input ace_text-input-ios" : "ace_text-input";
2223
-
2224
- if (useragent.isTouchPad)
2225
- text.setAttribute("x-palm-disable-auto-cap", true);
2226
-
2227
- text.setAttribute("wrap", "off");
2228
- text.setAttribute("autocorrect", "off");
2229
- text.setAttribute("autocapitalize", "off");
2230
- text.setAttribute("spellcheck", false);
2231
-
2232
- text.style.opacity = "0";
2233
- parentNode.insertBefore(text, parentNode.firstChild);
2234
-
2235
- var PLACEHOLDER = "\n aaaa a\n";
2236
-
2237
- var copied = false;
2238
- var cut = false;
2239
- var pasted = false;
2240
- var inComposition = false;
2241
- var tempStyle = '';
2242
- var isSelectionEmpty = true;
2243
- try { var isFocused = document.activeElement === text; } catch(e) {}
2244
-
2245
- event.addListener(text, "blur", function(e) {
2246
- host.onBlur(e);
2247
- isFocused = false;
2248
- });
2249
- event.addListener(text, "focus", function(e) {
2250
- isFocused = true;
2251
- host.onFocus(e);
2252
- resetSelection();
2253
- });
2254
- this.focus = function() {
2255
- if (tempStyle) return text.focus();
2256
- text.style.position = "fixed";
2257
- text.focus();
2258
- };
2259
- this.blur = function() {
2260
- text.blur();
2261
- };
2262
- this.isFocused = function() {
2263
- return isFocused;
2264
- };
2265
- var syncSelection = lang.delayedCall(function() {
2266
- isFocused && resetSelection(isSelectionEmpty);
2267
- });
2268
- var syncValue = lang.delayedCall(function() {
2269
- if (!inComposition) {
2270
- text.value = PLACEHOLDER;
2271
- isFocused && resetSelection();
2272
- }
2273
- });
2274
-
2275
- function resetSelection(isEmpty) {
2276
- if (inComposition)
2277
- return;
2278
- inComposition = true;
2279
-
2280
- if (inputHandler) {
2281
- selectionStart = 0;
2282
- selectionEnd = isEmpty ? 0 : text.value.length - 1;
2283
- } else {
2284
- var selectionStart = 4;
2285
- var selectionEnd = 5;
2286
- }
2287
- try {
2288
- text.setSelectionRange(selectionStart, selectionEnd);
2289
- } catch(e) {}
2290
-
2291
- inComposition = false;
2292
- }
2293
-
2294
- function resetValue() {
2295
- if (inComposition)
2296
- return;
2297
- text.value = PLACEHOLDER;
2298
- if (useragent.isWebKit)
2299
- syncValue.schedule();
2300
- }
2301
-
2302
- useragent.isWebKit || host.addEventListener('changeSelection', function() {
2303
- if (host.selection.isEmpty() != isSelectionEmpty) {
2304
- isSelectionEmpty = !isSelectionEmpty;
2305
- syncSelection.schedule();
2306
- }
2307
- });
2308
-
2309
- resetValue();
2310
- if (isFocused)
2311
- host.onFocus();
2312
-
2313
-
2314
- var isAllSelected = function(text) {
2315
- return text.selectionStart === 0 && text.selectionEnd === text.value.length;
2316
- };
2317
-
2318
- var onSelect = function(e) {
2319
- if (isAllSelected(text)) {
2320
- host.selectAll();
2321
- resetSelection();
2322
- } else if (inputHandler) {
2323
- resetSelection(host.selection.isEmpty());
2324
- }
2325
- };
2326
-
2327
- var inputHandler = null;
2328
- this.setInputHandler = function(cb) {inputHandler = cb;};
2329
- this.getInputHandler = function() {return inputHandler;};
2330
- var afterContextMenu = false;
2331
-
2332
- var sendText = function(data) {
2333
- if (text.selectionStart === 4 && text.selectionEnd === 5) {
2334
- return;
2335
- }
2336
- if (inputHandler) {
2337
- data = inputHandler(data);
2338
- inputHandler = null;
2339
- }
2340
- if (pasted) {
2341
- resetSelection();
2342
- if (data)
2343
- host.onPaste(data);
2344
- pasted = false;
2345
- } else if (data == PLACEHOLDER.substr(0) && text.selectionStart === 4) {
2346
- if (afterContextMenu)
2347
- host.execCommand("del", {source: "ace"});
2348
- else // some versions of android do not fire keydown when pressing backspace
2349
- host.execCommand("backspace", {source: "ace"});
2350
- } else if (!copied) {
2351
- if (data.substring(0, 9) == PLACEHOLDER && data.length > PLACEHOLDER.length)
2352
- data = data.substr(9);
2353
- else if (data.substr(0, 4) == PLACEHOLDER.substr(0, 4))
2354
- data = data.substr(4, data.length - PLACEHOLDER.length + 1);
2355
- else if (data.charAt(data.length - 1) == PLACEHOLDER.charAt(0))
2356
- data = data.slice(0, -1);
2357
- if (data == PLACEHOLDER.charAt(0)) {
2358
- } else if (data.charAt(data.length - 1) == PLACEHOLDER.charAt(0))
2359
- data = data.slice(0, -1);
2360
-
2361
- if (data)
2362
- host.onTextInput(data);
2363
- }
2364
- if (copied) {
2365
- copied = false;
2366
- }
2367
- if (afterContextMenu)
2368
- afterContextMenu = false;
2369
- };
2370
- var onInput = function(e) {
2371
- if (inComposition)
2372
- return;
2373
- var data = text.value;
2374
- sendText(data);
2375
- resetValue();
2376
- };
2377
-
2378
- var handleClipboardData = function(e, data, forceIEMime) {
2379
- var clipboardData = e.clipboardData || window.clipboardData;
2380
- if (!clipboardData || BROKEN_SETDATA)
2381
- return;
2382
- var mime = USE_IE_MIME_TYPE || forceIEMime ? "Text" : "text/plain";
2383
- try {
2384
- if (data) {
2385
- return clipboardData.setData(mime, data) !== false;
2386
- } else {
2387
- return clipboardData.getData(mime);
2388
- }
2389
- } catch(e) {
2390
- if (!forceIEMime)
2391
- return handleClipboardData(e, data, true);
2392
- }
2393
- };
2394
-
2395
- var doCopy = function(e, isCut) {
2396
- var data = host.getCopyText();
2397
- if (!data)
2398
- return event.preventDefault(e);
2399
-
2400
- if (handleClipboardData(e, data)) {
2401
- if (useragent.isIOS) {
2402
- cut = isCut;
2403
- text.value = "\n aa" + data + "a a\n";
2404
- text.setSelectionRange(4, 4 + data.length);
2405
- copied = {
2406
- value: data
2407
- };
2408
- }
2409
- isCut ? host.onCut() : host.onCopy();
2410
- if (!useragent.isIOS) event.preventDefault(e);
2411
- } else {
2412
- copied = true;
2413
- text.value = data;
2414
- text.select();
2415
- setTimeout(function(){
2416
- copied = false;
2417
- resetValue();
2418
- resetSelection();
2419
- isCut ? host.onCut() : host.onCopy();
2420
- });
2421
- }
2422
- };
2423
-
2424
- var onCut = function(e) {
2425
- doCopy(e, true);
2426
- };
2427
-
2428
- var onCopy = function(e) {
2429
- doCopy(e, false);
2430
- };
2431
-
2432
- var onPaste = function(e) {
2433
- var data = handleClipboardData(e);
2434
- if (typeof data == "string") {
2435
- if (data)
2436
- host.onPaste(data, e);
2437
- if (useragent.isIE)
2438
- setTimeout(resetSelection);
2439
- event.preventDefault(e);
2440
- }
2441
- else {
2442
- text.value = "";
2443
- pasted = true;
2444
- }
2445
- };
2446
-
2447
- event.addCommandKeyListener(text, host.onCommandKey.bind(host));
2448
-
2449
- event.addListener(text, "select", onSelect);
2450
-
2451
- event.addListener(text, "input", onInput);
2452
-
2453
- event.addListener(text, "cut", onCut);
2454
- event.addListener(text, "copy", onCopy);
2455
- event.addListener(text, "paste", onPaste);
2456
- var onCompositionStart = function(e) {
2457
- if (inComposition || !host.onCompositionStart || host.$readOnly)
2458
- return;
2459
- inComposition = {};
2460
- inComposition.canUndo = host.session.$undoManager;
2461
- host.onCompositionStart();
2462
- setTimeout(onCompositionUpdate, 0);
2463
- host.on("mousedown", onCompositionEnd);
2464
- if (inComposition.canUndo && !host.selection.isEmpty()) {
2465
- host.insert("");
2466
- host.session.markUndoGroup();
2467
- host.selection.clearSelection();
2468
- }
2469
- host.session.markUndoGroup();
2470
- };
2471
-
2472
- var onCompositionUpdate = function() {
2473
- if (!inComposition || !host.onCompositionUpdate || host.$readOnly)
2474
- return;
2475
- var val = text.value.replace(/\x01/g, "");
2476
- if (inComposition.lastValue === val) return;
2477
-
2478
- host.onCompositionUpdate(val);
2479
- if (inComposition.lastValue)
2480
- host.undo();
2481
- if (inComposition.canUndo)
2482
- inComposition.lastValue = val;
2483
- if (inComposition.lastValue) {
2484
- var r = host.selection.getRange();
2485
- host.insert(inComposition.lastValue);
2486
- host.session.markUndoGroup();
2487
- inComposition.range = host.selection.getRange();
2488
- host.selection.setRange(r);
2489
- host.selection.clearSelection();
2490
- }
2491
- };
2492
-
2493
- var onCompositionEnd = function(e) {
2494
- if (!host.onCompositionEnd || host.$readOnly) return;
2495
- var c = inComposition;
2496
- inComposition = false;
2497
- var timer = setTimeout(function() {
2498
- timer = null;
2499
- var str = text.value.replace(/\x01/g, "");
2500
- if (inComposition)
2501
- return;
2502
- else if (str == c.lastValue)
2503
- resetValue();
2504
- else if (!c.lastValue && str) {
2505
- resetValue();
2506
- sendText(str);
2507
- }
2508
- });
2509
- inputHandler = function compositionInputHandler(str) {
2510
- if (timer)
2511
- clearTimeout(timer);
2512
- str = str.replace(/\x01/g, "");
2513
- if (str == c.lastValue)
2514
- return "";
2515
- if (c.lastValue && timer)
2516
- host.undo();
2517
- return str;
2518
- };
2519
- host.onCompositionEnd();
2520
- host.removeListener("mousedown", onCompositionEnd);
2521
- if (e.type == "compositionend" && c.range) {
2522
- host.selection.setRange(c.range);
2523
- }
2524
- var needsOnInput =
2525
- (!!useragent.isChrome && useragent.isChrome >= 53) ||
2526
- (!!useragent.isWebKit && useragent.isWebKit >= 603);
2527
-
2528
- if (needsOnInput) {
2529
- onInput();
2530
- }
2531
- };
2532
-
2533
-
2534
-
2535
- var syncComposition = lang.delayedCall(onCompositionUpdate, 50);
2536
-
2537
- event.addListener(text, "compositionstart", onCompositionStart);
2538
- event.addListener(text, "compositionupdate", function(){syncComposition.schedule();});
2539
- event.addListener(text, "keyup", function(){syncComposition.schedule();});
2540
- event.addListener(text, "keydown", function(){syncComposition.schedule();});
2541
- event.addListener(text, "compositionend", onCompositionEnd);
2542
-
2543
- this.getElement = function() {
2544
- return text;
2545
- };
2546
-
2547
- this.setReadOnly = function(readOnly) {
2548
- text.readOnly = readOnly;
2549
- };
2550
-
2551
- this.onContextMenu = function(e) {
2552
- afterContextMenu = true;
2553
- resetSelection(host.selection.isEmpty());
2554
- host._emit("nativecontextmenu", {target: host, domEvent: e});
2555
- this.moveToMouse(e, true);
2556
- };
2557
-
2558
- this.moveToMouse = function(e, bringToFront) {
2559
- if (!tempStyle)
2560
- tempStyle = text.style.cssText;
2561
- text.style.cssText = (bringToFront ? "z-index:100000;" : "")
2562
- + "height:" + text.style.height + ";"
2563
- + (useragent.isIE ? "opacity:0.1;" : "");
2564
-
2565
- var rect = host.container.getBoundingClientRect();
2566
- var style = dom.computedStyle(host.container);
2567
- var top = rect.top + (parseInt(style.borderTopWidth) || 0);
2568
- var left = rect.left + (parseInt(rect.borderLeftWidth) || 0);
2569
- var maxTop = rect.bottom - top - text.clientHeight -2;
2570
- var move = function(e) {
2571
- text.style.left = e.clientX - left - 2 + "px";
2572
- text.style.top = Math.min(e.clientY - top - 2, maxTop) + "px";
2573
- };
2574
- move(e);
2575
-
2576
- if (e.type != "mousedown")
2577
- return;
2578
-
2579
- if (host.renderer.$keepTextAreaAtCursor)
2580
- host.renderer.$keepTextAreaAtCursor = null;
2581
-
2582
- clearTimeout(closeTimeout);
2583
- if (useragent.isWin)
2584
- event.capture(host.container, move, onContextMenuClose);
2585
- };
2586
-
2587
- this.onContextMenuClose = onContextMenuClose;
2588
- var closeTimeout;
2589
- function onContextMenuClose() {
2590
- clearTimeout(closeTimeout);
2591
- closeTimeout = setTimeout(function () {
2592
- if (tempStyle) {
2593
- text.style.cssText = tempStyle;
2594
- tempStyle = '';
2595
- }
2596
- if (host.renderer.$keepTextAreaAtCursor == null) {
2597
- host.renderer.$keepTextAreaAtCursor = true;
2598
- host.renderer.$moveTextAreaToCursor();
2599
- }
2600
- }, 0);
2601
- }
2602
-
2603
- var onContextMenu = function(e) {
2604
- host.textInput.onContextMenu(e);
2605
- onContextMenuClose();
2606
- };
2607
- event.addListener(text, "mouseup", onContextMenu);
2608
- event.addListener(text, "mousedown", function(e) {
2609
- e.preventDefault();
2610
- onContextMenuClose();
2611
- });
2612
- event.addListener(host.renderer.scroller, "contextmenu", onContextMenu);
2613
- event.addListener(text, "contextmenu", onContextMenu);
2614
-
2615
- if (useragent.isIOS) {
2616
- var typingResetTimeout = null;
2617
- var typing = false;
2618
-
2619
- parentNode.addEventListener("keydown", function (e) {
2620
- if (typingResetTimeout) clearTimeout(typingResetTimeout);
2621
- typing = true;
2622
- });
2623
-
2624
- parentNode.addEventListener("keyup", function (e) {
2625
- typingResetTimeout = setTimeout(function () {
2626
- typing = false;
2627
- }, 100);
2628
- });
2629
- var detectArrowKeys = function(e) {
2630
- if (document.activeElement !== text) return;
2631
- if (typing) return;
2632
-
2633
- if (cut) {
2634
- return setTimeout(function () {
2635
- cut = false;
2636
- }, 100);
2637
- }
2638
- var selectionStart = text.selectionStart;
2639
- var selectionEnd = text.selectionEnd;
2640
- text.setSelectionRange(4, 5);
2641
- if (selectionStart == selectionEnd) {
2642
- switch (selectionStart) {
2643
- case 0: host.onCommandKey(null, 0, KEYS.up); break;
2644
- case 1: host.onCommandKey(null, 0, KEYS.home); break;
2645
- case 2: host.onCommandKey(null, MODS.option, KEYS.left); break;
2646
- case 4: host.onCommandKey(null, 0, KEYS.left); break;
2647
- case 5: host.onCommandKey(null, 0, KEYS.right); break;
2648
- case 7: host.onCommandKey(null, MODS.option, KEYS.right); break;
2649
- case 8: host.onCommandKey(null, 0, KEYS.end); break;
2650
- case 9: host.onCommandKey(null, 0, KEYS.down); break;
2651
- }
2652
- } else {
2653
- switch (selectionEnd) {
2654
- case 6: host.onCommandKey(null, MODS.shift, KEYS.right); break;
2655
- case 7: host.onCommandKey(null, MODS.shift | MODS.option, KEYS.right); break;
2656
- case 8: host.onCommandKey(null, MODS.shift, KEYS.end); break;
2657
- case 9: host.onCommandKey(null, MODS.shift, KEYS.down); break;
2658
- }
2659
- switch (selectionStart) {
2660
- case 0: host.onCommandKey(null, MODS.shift, KEYS.up); break;
2661
- case 1: host.onCommandKey(null, MODS.shift, KEYS.home); break;
2662
- case 2: host.onCommandKey(null, MODS.shift | MODS.option, KEYS.left); break;
2663
- case 3: host.onCommandKey(null, MODS.shift, KEYS.left); break;
2664
- }
2665
- }
2666
- };
2667
- document.addEventListener("selectionchange", detectArrowKeys);
2668
- host.on("destroy", function() {
2669
- document.removeEventListener("selectionchange", detectArrowKeys);
2670
- });
2671
- }
2672
- };
2673
-
2674
- exports.TextInput = TextInput;
2675
- });
2676
-
2677
- define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/keyboard/textinput_ios"], function(require, exports, module) {
2196
+ define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/lib/keys"], function(require, exports, module) {
2678
2197
  "use strict";
2679
2198
 
2680
2199
  var event = require("../lib/event");
@@ -2686,11 +2205,12 @@ var USE_IE_MIME_TYPE = useragent.isIE;
2686
2205
  var HAS_FOCUS_ARGS = useragent.isChrome > 63;
2687
2206
  var MAX_LINE_LENGTH = 400;
2688
2207
 
2689
- var TextInputIOS = require("./textinput_ios").TextInput;
2208
+ var KEYS = require("../lib/keys");
2209
+ var MODS = KEYS.KEY_MODS;
2210
+ var isIOS = useragent.isIOS;
2211
+ var valueResetRegex = isIOS ? /\s/ : /\n/;
2212
+
2690
2213
  var TextInput = function(parentNode, host) {
2691
- if (useragent.isIOS)
2692
- return TextInputIOS.call(this, parentNode, host);
2693
-
2694
2214
  var text = dom.createElement("textarea");
2695
2215
  text.className = "ace_text-input";
2696
2216
 
@@ -2729,19 +2249,31 @@ var TextInput = function(parentNode, host) {
2729
2249
  event.addListener(text, "focus", function(e) {
2730
2250
  if (ignoreFocusEvents) return;
2731
2251
  isFocused = true;
2252
+ if (useragent.isEdge) {
2253
+ try {
2254
+ if (!document.hasFocus())
2255
+ return;
2256
+ } catch(e) {}
2257
+ }
2732
2258
  host.onFocus(e);
2733
- resetSelection();
2259
+ if (useragent.isEdge)
2260
+ setTimeout(resetSelection);
2261
+ else
2262
+ resetSelection();
2734
2263
  });
2735
2264
  this.$focusScroll = false;
2736
2265
  this.focus = function() {
2737
2266
  if (tempStyle || HAS_FOCUS_ARGS || this.$focusScroll == "browser")
2738
2267
  return text.focus({ preventScroll: true });
2739
- if (!document.documentElement.contains(text))
2740
- return;
2268
+
2741
2269
  var top = text.style.top;
2742
2270
  text.style.position = "fixed";
2743
2271
  text.style.top = "0px";
2744
- var isTransformed = text.getBoundingClientRect().top != 0;
2272
+ try {
2273
+ var isTransformed = text.getBoundingClientRect().top != 0;
2274
+ } catch(e) {
2275
+ return;
2276
+ }
2745
2277
  var ancestors = [];
2746
2278
  if (isTransformed) {
2747
2279
  var t = text.parentElement;
@@ -2783,7 +2315,25 @@ var TextInput = function(parentNode, host) {
2783
2315
  resetSelection();
2784
2316
  });
2785
2317
 
2786
- function resetSelection() {
2318
+ var resetSelection = isIOS
2319
+ ? function(value) {
2320
+ if (!isFocused || (copied && !value)) return;
2321
+ if (!value)
2322
+ value = "";
2323
+ var newValue = "\n ab" + value + "cde fg\n";
2324
+ if (newValue != text.value)
2325
+ text.value = lastValue = newValue;
2326
+
2327
+ var selectionStart = 4;
2328
+ var selectionEnd = 4 + (value.length || (host.selection.isEmpty() ? 0 : 1));
2329
+
2330
+ if (lastSelectionStart != selectionStart || lastSelectionEnd != selectionEnd) {
2331
+ text.setSelectionRange(selectionStart, selectionEnd);
2332
+ }
2333
+ lastSelectionStart = selectionStart;
2334
+ lastSelectionEnd = selectionEnd;
2335
+ }
2336
+ : function() {
2787
2337
  if (inComposition || sendingText)
2788
2338
  return;
2789
2339
  if (!isFocused && !afterContextMenu)
@@ -2829,7 +2379,11 @@ var TextInput = function(parentNode, host) {
2829
2379
  lastSelectionStart = text.selectionStart;
2830
2380
  lastSelectionEnd = text.selectionEnd;
2831
2381
  }
2832
- if (lastSelectionEnd != selectionEnd || lastSelectionStart != selectionStart) {
2382
+ if (
2383
+ lastSelectionEnd != selectionEnd
2384
+ || lastSelectionStart != selectionStart
2385
+ || text.selectionEnd != lastSelectionEnd // on ie edge selectionEnd changes silently after the initialization
2386
+ ) {
2833
2387
  try {
2834
2388
  text.setSelectionRange(selectionStart, selectionEnd);
2835
2389
  lastSelectionStart = selectionStart;
@@ -2837,7 +2391,7 @@ var TextInput = function(parentNode, host) {
2837
2391
  } catch(e){}
2838
2392
  }
2839
2393
  inComposition = false;
2840
- }
2394
+ };
2841
2395
 
2842
2396
  if (isFocused)
2843
2397
  host.onFocus();
@@ -2926,7 +2480,7 @@ var TextInput = function(parentNode, host) {
2926
2480
  return onCompositionUpdate();
2927
2481
  var data = text.value;
2928
2482
  var inserted = sendText(data, true);
2929
- if (data.length > MAX_LINE_LENGTH + 100 || /\n/.test(inserted))
2483
+ if (data.length > MAX_LINE_LENGTH + 100 || valueResetRegex.test(inserted))
2930
2484
  resetSelection();
2931
2485
  };
2932
2486
 
@@ -2953,6 +2507,13 @@ var TextInput = function(parentNode, host) {
2953
2507
  return event.preventDefault(e);
2954
2508
 
2955
2509
  if (handleClipboardData(e, data)) {
2510
+ if (isIOS) {
2511
+ resetSelection(data);
2512
+ copied = data;
2513
+ setTimeout(function () {
2514
+ copied = false;
2515
+ }, 10);
2516
+ }
2956
2517
  isCut ? host.onCut() : host.onCopy();
2957
2518
  event.preventDefault(e);
2958
2519
  } else {
@@ -3186,6 +2747,87 @@ var TextInput = function(parentNode, host) {
3186
2747
  });
3187
2748
  event.addListener(host.renderer.scroller, "contextmenu", onContextMenu);
3188
2749
  event.addListener(text, "contextmenu", onContextMenu);
2750
+
2751
+ if (isIOS)
2752
+ addIosSelectionHandler(parentNode, host, text);
2753
+
2754
+ function addIosSelectionHandler(parentNode, host, text) {
2755
+ var typingResetTimeout = null;
2756
+ var typing = false;
2757
+
2758
+ text.addEventListener("keydown", function (e) {
2759
+ if (typingResetTimeout) clearTimeout(typingResetTimeout);
2760
+ typing = true;
2761
+ }, true);
2762
+
2763
+ text.addEventListener("keyup", function (e) {
2764
+ typingResetTimeout = setTimeout(function () {
2765
+ typing = false;
2766
+ }, 100);
2767
+ }, true);
2768
+ var detectArrowKeys = function(e) {
2769
+ if (document.activeElement !== text) return;
2770
+ if (typing || inComposition) return;
2771
+
2772
+ if (copied) {
2773
+ return;
2774
+ }
2775
+ var selectionStart = text.selectionStart;
2776
+ var selectionEnd = text.selectionEnd;
2777
+
2778
+ var key = null;
2779
+ var modifier = 0;
2780
+ console.log(selectionStart, selectionEnd);
2781
+ if (selectionStart == 0) {
2782
+ key = KEYS.up;
2783
+ } else if (selectionStart == 1) {
2784
+ key = KEYS.home;
2785
+ } else if (selectionEnd > lastSelectionEnd && lastValue[selectionEnd] == "\n") {
2786
+ key = KEYS.end;
2787
+ } else if (selectionStart < lastSelectionStart && lastValue[selectionStart - 1] == " ") {
2788
+ key = KEYS.left;
2789
+ modifier = MODS.option;
2790
+ } else if (
2791
+ selectionStart < lastSelectionStart
2792
+ || (
2793
+ selectionStart == lastSelectionStart
2794
+ && lastSelectionEnd != lastSelectionStart
2795
+ && selectionStart == selectionEnd
2796
+ )
2797
+ ) {
2798
+ key = KEYS.left;
2799
+ } else if (selectionEnd > lastSelectionEnd && lastValue.slice(0, selectionEnd).split("\n").length > 2) {
2800
+ key = KEYS.down;
2801
+ } else if (selectionEnd > lastSelectionEnd && lastValue[selectionEnd - 1] == " ") {
2802
+ key = KEYS.right;
2803
+ modifier = MODS.option;
2804
+ } else if (
2805
+ selectionEnd > lastSelectionEnd
2806
+ || (
2807
+ selectionEnd == lastSelectionEnd
2808
+ && lastSelectionEnd != lastSelectionStart
2809
+ && selectionStart == selectionEnd
2810
+ )
2811
+ ) {
2812
+ key = KEYS.right;
2813
+ }
2814
+
2815
+ if (selectionStart !== selectionEnd)
2816
+ modifier |= MODS.shift;
2817
+
2818
+ if (key) {
2819
+ host.onCommandKey(null, modifier, key);
2820
+ lastSelectionStart = selectionStart;
2821
+ lastSelectionEnd = selectionEnd;
2822
+ resetSelection("");
2823
+ }
2824
+ };
2825
+ document.addEventListener("selectionchange", detectArrowKeys);
2826
+ host.on("destroy", function() {
2827
+ document.removeEventListener("selectionchange", detectArrowKeys);
2828
+ });
2829
+ }
2830
+
3189
2831
  };
3190
2832
 
3191
2833
  exports.TextInput = TextInput;
@@ -3197,7 +2839,7 @@ define("ace/mouse/default_handlers",["require","exports","module","ace/lib/usera
3197
2839
  var useragent = require("../lib/useragent");
3198
2840
 
3199
2841
  var DRAG_OFFSET = 0; // pixels
3200
- var SCROLL_COOLDOWN_T = 250; // milliseconds
2842
+ var SCROLL_COOLDOWN_T = 550; // milliseconds
3201
2843
 
3202
2844
  function DefaultHandlers(mouseHandler) {
3203
2845
  mouseHandler.$clickSelection = null;
@@ -3422,8 +3064,8 @@ function DefaultHandlers(mouseHandler) {
3422
3064
  if (canScroll) {
3423
3065
  prevScroll.allowed = t;
3424
3066
  } else if (t - prevScroll.allowed < SCROLL_COOLDOWN_T) {
3425
- var isSlower = Math.abs(vx) <= 1.1 * Math.abs(prevScroll.vx)
3426
- && Math.abs(vy) <= 1.1 * Math.abs(prevScroll.vy);
3067
+ var isSlower = Math.abs(vx) <= 1.5 * Math.abs(prevScroll.vx)
3068
+ && Math.abs(vy) <= 1.5 * Math.abs(prevScroll.vy);
3427
3069
  if (isSlower) {
3428
3070
  canScroll = true;
3429
3071
  prevScroll.allowed = t;
@@ -4236,10 +3878,15 @@ EventEmitter._signal = function(eventName, e) {
4236
3878
 
4237
3879
  EventEmitter.once = function(eventName, callback) {
4238
3880
  var _self = this;
4239
- callback && this.addEventListener(eventName, function newCallback() {
3881
+ this.addEventListener(eventName, function newCallback() {
4240
3882
  _self.removeEventListener(eventName, newCallback);
4241
3883
  callback.apply(null, arguments);
4242
3884
  });
3885
+ if (!callback) {
3886
+ return new Promise(function(resolve) {
3887
+ callback = resolve;
3888
+ });
3889
+ }
4243
3890
  };
4244
3891
 
4245
3892
 
@@ -5011,43 +4658,33 @@ var ArabicAlefBetIntervalsEnd = ['\u063A', '\u064a'];
5011
4658
  var dir = 0, hiLevel = 0;
5012
4659
  var lastArabic = false, hasUBAT_AL = false, hasUBAT_B = false, hasUBAT_S = false, hasBlockSep = false, hasSegSep = false;
5013
4660
 
5014
- var impTab_LTR = [
5015
- [ 0, 3, 0, 1, 0, 0, 0 ],
5016
- [ 0, 3, 0, 1, 2, 2, 0 ],
5017
- [ 0, 3, 0, 0x11, 2, 0, 1 ],
5018
- [ 0, 3, 5, 5, 4, 1, 0 ],
5019
- [ 0, 3, 0x15, 0x15, 4, 0, 1 ],
5020
- [ 0, 3, 5, 5, 4, 2, 0 ]
4661
+ var impTab_LTR = [ [ 0, 3, 0, 1, 0, 0, 0 ], [ 0, 3, 0, 1, 2, 2, 0 ], [ 0, 3, 0, 0x11, 2, 0, 1 ], [ 0, 3, 5, 5, 4, 1, 0 ], [ 0, 3, 0x15, 0x15, 4, 0, 1 ], [ 0, 3, 5, 5, 4, 2, 0 ]
5021
4662
  ];
5022
4663
 
5023
- var impTab_RTL = [
5024
- [ 2, 0, 1, 1, 0, 1, 0 ],
5025
- [ 2, 0, 1, 1, 0, 2, 0 ],
5026
- [ 2, 0, 2, 1, 3, 2, 0 ],
5027
- [ 2, 0, 2, 0x21, 3, 1, 1 ]
4664
+ var impTab_RTL = [ [ 2, 0, 1, 1, 0, 1, 0 ], [ 2, 0, 1, 1, 0, 2, 0 ], [ 2, 0, 2, 1, 3, 2, 0 ], [ 2, 0, 2, 0x21, 3, 1, 1 ]
5028
4665
  ];
5029
4666
 
5030
4667
  var LTR = 0, RTL = 1;
5031
4668
 
5032
- var L = 0; /* left to right */
5033
- var R = 1; /* right to left */
5034
- var EN = 2; /* European digit */
5035
- var AN = 3; /* Arabic-Indic digit */
5036
- var ON = 4; /* neutral */
5037
- var B = 5; /* block separator */
5038
- var S = 6; /* segment separator */
5039
- var AL = 7; /* Arabic Letter */
5040
- var WS = 8; /* white space */
5041
- var CS = 9; /* common digit separator */
5042
- var ES = 10; /* European digit separator */
5043
- var ET = 11; /* European digit terminator */
5044
- var NSM = 12; /* Non Spacing Mark */
5045
- var LRE = 13; /* LRE */
5046
- var RLE = 14; /* RLE */
5047
- var PDF = 15; /* PDF */
5048
- var LRO = 16; /* LRO */
5049
- var RLO = 17; /* RLO */
5050
- var BN = 18; /* Boundary Neutral */
4669
+ var L = 0;
4670
+ var R = 1;
4671
+ var EN = 2;
4672
+ var AN = 3;
4673
+ var ON = 4;
4674
+ var B = 5;
4675
+ var S = 6;
4676
+ var AL = 7;
4677
+ var WS = 8;
4678
+ var CS = 9;
4679
+ var ES = 10;
4680
+ var ET = 11;
4681
+ var NSM = 12;
4682
+ var LRE = 13;
4683
+ var RLE = 14;
4684
+ var PDF = 15;
4685
+ var LRO = 16;
4686
+ var RLO = 17;
4687
+ var BN = 18;
5051
4688
 
5052
4689
  var UnicodeTBL00 = [
5053
4690
  BN,BN,BN,BN,BN,BN,BN,BN,BN,S,B,S,WS,B,BN,BN,
@@ -5326,7 +4963,7 @@ exports.doBidiReorder = function(text, textCharTypes, isRtl) {
5326
4963
  }
5327
4964
 
5328
4965
  return {'logicalFromVisual': logicalFromVisual, 'bidiLevels': bidiLevels};
5329
- };
4966
+ };
5330
4967
  exports.hasBidiCharacters = function(text, textCharTypes){
5331
4968
  var ret = false;
5332
4969
  for (var i = 0; i < text.length; i++){
@@ -5335,8 +4972,7 @@ exports.hasBidiCharacters = function(text, textCharTypes){
5335
4972
  ret = true;
5336
4973
  }
5337
4974
  return ret;
5338
- };
5339
-
4975
+ };
5340
4976
  exports.getVisualFromLogicalIdx = function(logIdx, rowMap) {
5341
4977
  for (var i = 0; i < rowMap.logicalFromVisual.length; i++) {
5342
4978
  if (rowMap.logicalFromVisual[i] == logIdx)
@@ -6576,6 +6212,7 @@ define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/la
6576
6212
  var lang = require("../lib/lang");
6577
6213
 
6578
6214
  var TextHighlightRules = function() {
6215
+
6579
6216
  this.$rules = {
6580
6217
  "start" : [{
6581
6218
  token : "empty_line",
@@ -6845,7 +6482,7 @@ var TokenIterator = function(session, initialRow, initialColumn) {
6845
6482
  this.$tokenIndex = token ? token.index : -1;
6846
6483
  };
6847
6484
 
6848
- (function() {
6485
+ (function() {
6849
6486
  this.stepBackward = function() {
6850
6487
  this.$tokenIndex -= 1;
6851
6488
 
@@ -6861,7 +6498,7 @@ var TokenIterator = function(session, initialRow, initialColumn) {
6861
6498
  }
6862
6499
 
6863
6500
  return this.$rowTokens[this.$tokenIndex];
6864
- };
6501
+ };
6865
6502
  this.stepForward = function() {
6866
6503
  this.$tokenIndex += 1;
6867
6504
  var rowCount;
@@ -6879,13 +6516,13 @@ var TokenIterator = function(session, initialRow, initialColumn) {
6879
6516
  }
6880
6517
 
6881
6518
  return this.$rowTokens[this.$tokenIndex];
6882
- };
6519
+ };
6883
6520
  this.getCurrentToken = function () {
6884
6521
  return this.$rowTokens[this.$tokenIndex];
6885
- };
6522
+ };
6886
6523
  this.getCurrentTokenRow = function () {
6887
6524
  return this.$row;
6888
- };
6525
+ };
6889
6526
  this.getCurrentTokenColumn = function() {
6890
6527
  var rowTokens = this.$rowTokens;
6891
6528
  var tokenIndex = this.$tokenIndex;
@@ -7688,6 +7325,7 @@ function validateDelta(docLines, delta) {
7688
7325
  }
7689
7326
 
7690
7327
  exports.applyDelta = function(docLines, delta, doNotValidate) {
7328
+
7691
7329
  var row = delta.start.row;
7692
7330
  var startColumn = delta.start.column;
7693
7331
  var line = docLines[row] || "";
@@ -7779,6 +7417,7 @@ var Anchor = exports.Anchor = function(doc, row, column) {
7779
7417
  column: point.column + (point.row == deltaEnd.row ? deltaColShift : 0)
7780
7418
  };
7781
7419
  }
7420
+
7782
7421
  return {
7783
7422
  row: deltaStart.row,
7784
7423
  column: deltaStart.column
@@ -8027,7 +7666,7 @@ var Document = function(textOrLines) {
8027
7666
  column = this.$lines[row].length;
8028
7667
  }
8029
7668
  this.insertMergedLines({row: row, column: column}, lines);
8030
- };
7669
+ };
8031
7670
  this.insertMergedLines = function(position, lines) {
8032
7671
  var start = this.clippedPos(position.row, position.column);
8033
7672
  var end = {
@@ -8235,7 +7874,7 @@ var BackgroundTokenizer = function(tokenizer, editor) {
8235
7874
  currentLine++;
8236
7875
  } while (self.lines[currentLine]);
8237
7876
  processedLines ++;
8238
- if ((processedLines % 5 === 0) && (new Date() - workerStart) > 20) {
7877
+ if ((processedLines % 5 === 0) && (new Date() - workerStart) > 20) {
8239
7878
  self.running = setTimeout(self.$worker, 20);
8240
7879
  break;
8241
7880
  }
@@ -8814,17 +8453,16 @@ var RangeList = function() {
8814
8453
  if (r.start.row > endRow)
8815
8454
  break;
8816
8455
 
8817
- if (r.end.row < endRow) {
8456
+ if (r.end.row < endRow
8457
+ && (
8458
+ startRow < r.end.row
8459
+ || startRow == r.end.row && start.column < r.end.column
8460
+ )
8461
+ ) {
8818
8462
  r.end.row = startRow;
8819
8463
  r.end.column = start.column;
8820
8464
  }
8821
-
8822
- if (r.start.row < endRow || r.start.row == endRow && r.start.column <= end.colum) {
8823
- r.start.row = startRow;
8824
- r.start.column = start.column;
8825
- }
8826
-
8827
- if (r.end.row == endRow) {
8465
+ else if (r.end.row == endRow) {
8828
8466
  if (r.end.column <= end.column) {
8829
8467
  if (lineDif || r.end.column > start.column) {
8830
8468
  r.end.column = start.column;
@@ -8836,7 +8474,20 @@ var RangeList = function() {
8836
8474
  r.end.row += lineDif;
8837
8475
  }
8838
8476
  }
8839
- if (r.start.row == endRow) {
8477
+ else if (r.end.row > endRow) {
8478
+ r.end.row += lineDif;
8479
+ }
8480
+
8481
+ if (r.start.row < endRow
8482
+ && (
8483
+ startRow < r.start.row
8484
+ || startRow == r.start.row && start.column < r.start.column
8485
+ )
8486
+ ) {
8487
+ r.start.row = startRow;
8488
+ r.start.column = start.column;
8489
+ }
8490
+ else if (r.start.row == endRow) {
8840
8491
  if (r.start.column <= end.column) {
8841
8492
  if (lineDif || r.start.column > start.column) {
8842
8493
  r.start.column = start.column;
@@ -8848,6 +8499,9 @@ var RangeList = function() {
8848
8499
  r.start.row += lineDif;
8849
8500
  }
8850
8501
  }
8502
+ else if (r.start.row > endRow) {
8503
+ r.start.row += lineDif;
8504
+ }
8851
8505
  }
8852
8506
  }
8853
8507
 
@@ -9254,7 +8908,6 @@ function Folding() {
9254
8908
  foldLine.start.row = folds[0].start.row;
9255
8909
  foldLine.start.column = folds[0].start.column;
9256
8910
  } else
9257
- //
9258
8911
  if (fold.sameRow) {
9259
8912
  folds.splice(folds.indexOf(fold), 1);
9260
8913
  } else
@@ -15786,7 +15439,7 @@ var Gutter = function(parentEl) {
15786
15439
  var lastLineText = this.$lines.last() ? this.$lines.last().text : "";
15787
15440
 
15788
15441
  if (this.$fixedWidth || session.$useWrapMode)
15789
- lastLineText = session.getLength() + firstLineNumber;
15442
+ lastLineText = session.getLength() + firstLineNumber - 1;
15790
15443
 
15791
15444
  var gutterWidth = gutterRenderer
15792
15445
  ? gutterRenderer.getWidth(session, lastLineText, config)
@@ -15997,7 +15650,7 @@ var Gutter = function(parentEl) {
15997
15650
  this.$renderer = "";
15998
15651
  this.setShowLineNumbers = function(show) {
15999
15652
  this.$renderer = !show && {
16000
- getWidth: function() {return "";},
15653
+ getWidth: function() {return 0;},
16001
15654
  getText: function() {return "";}
16002
15655
  };
16003
15656
  };
@@ -17132,7 +16785,7 @@ var ScrollBar = function(parent) {
17132
16785
 
17133
16786
  this.setVisible(false);
17134
16787
  this.skipEvent = false;
17135
-
16788
+
17136
16789
  event.addListener(this.element, "scroll", this.onScroll.bind(this));
17137
16790
  event.addListener(this.element, "mousedown", event.preventDefault);
17138
16791
  };
@@ -17259,9 +16912,11 @@ var RenderLoop = function(onRender, win) {
17259
16912
  this.onRender = onRender;
17260
16913
  this.pending = false;
17261
16914
  this.changes = 0;
16915
+ this.$recursionLimit = 2;
17262
16916
  this.window = win || window;
17263
16917
  var _self = this;
17264
16918
  this._flush = function(ts) {
16919
+ _self.pending = false;
17265
16920
  var changes = _self.changes;
17266
16921
 
17267
16922
  if (changes) {
@@ -17270,8 +16925,12 @@ var RenderLoop = function(onRender, win) {
17270
16925
  _self.onRender(changes);
17271
16926
  }
17272
16927
 
17273
- if (_self.changes)
16928
+ if (_self.changes) {
16929
+ if (_self.$recursionLimit-- < 0) return;
17274
16930
  _self.schedule();
16931
+ } else {
16932
+ _self.$recursionLimit = 2;
16933
+ }
17275
16934
  };
17276
16935
  };
17277
16936
 
@@ -17279,11 +16938,18 @@ var RenderLoop = function(onRender, win) {
17279
16938
 
17280
16939
  this.schedule = function(change) {
17281
16940
  this.changes = this.changes | change;
17282
- if (this.changes) {
16941
+ if (this.changes && !this.pending) {
17283
16942
  event.nextFrame(this._flush);
16943
+ this.pending = true;
17284
16944
  }
17285
16945
  };
17286
16946
 
16947
+ this.clear = function(change) {
16948
+ var changes = this.changes;
16949
+ this.changes = 0;
16950
+ return changes;
16951
+ };
16952
+
17287
16953
  }).call(RenderLoop.prototype);
17288
16954
 
17289
16955
  exports.RenderLoop = RenderLoop;
@@ -17504,7 +17170,8 @@ var VScrollBar = require("./scrollbar").VScrollBar;
17504
17170
  var RenderLoop = require("./renderloop").RenderLoop;
17505
17171
  var FontMetrics = require("./layer/font_metrics").FontMetrics;
17506
17172
  var EventEmitter = require("./lib/event_emitter").EventEmitter;
17507
- var editorCss = ".ace_br1 {border-top-left-radius : 3px;}\
17173
+ var editorCss = "\
17174
+ .ace_br1 {border-top-left-radius : 3px;}\
17508
17175
  .ace_br2 {border-top-right-radius : 3px;}\
17509
17176
  .ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}\
17510
17177
  .ace_br4 {border-bottom-right-radius: 3px;}\
@@ -17943,11 +17610,6 @@ background-color: rgba(255, 255, 0,0.2);\
17943
17610
  position: absolute;\
17944
17611
  z-index: 8;\
17945
17612
  }\
17946
- .ace_text-input-ios {\
17947
- position: absolute !important;\
17948
- top: -100000px !important;\
17949
- left: -100000px !important;\
17950
- }\
17951
17613
  ";
17952
17614
 
17953
17615
  var useragent = require("./lib/useragent");
@@ -18062,7 +17724,7 @@ var VirtualRenderer = function(container, theme) {
18062
17724
  h: 0
18063
17725
  };
18064
17726
 
18065
- this.$keepTextAreaAtCursor = true;
17727
+ this.$keepTextAreaAtCursor = !useragent.isIOS;
18066
17728
 
18067
17729
  this.$loop = new RenderLoop(
18068
17730
  this.$renderChanges.bind(this),
@@ -18089,6 +17751,7 @@ var VirtualRenderer = function(container, theme) {
18089
17751
  this.CHANGE_MARKER_FRONT = 256;
18090
17752
  this.CHANGE_FULL = 512;
18091
17753
  this.CHANGE_H_SCROLL = 1024;
17754
+
18092
17755
  oop.implement(this, EventEmitter);
18093
17756
 
18094
17757
  this.updateCharacterSize = function() {
@@ -18256,6 +17919,7 @@ var VirtualRenderer = function(container, theme) {
18256
17919
  dom.setStyle(this.scrollBarH.element.style, "right", right);
18257
17920
  dom.setStyle(this.scroller.style, "right", right);
18258
17921
  dom.setStyle(this.scroller.style, "bottom", this.scrollBarH.getHeight());
17922
+
18259
17923
  if (this.session && this.session.getUseWrapMode() && this.adjustWrapLimit() || force) {
18260
17924
  changes |= this.CHANGE_FULL;
18261
17925
  }
@@ -18529,6 +18193,7 @@ var VirtualRenderer = function(container, theme) {
18529
18193
  if (!this.lineHeight) {
18530
18194
  this.$textLayer.checkForSizeChanges();
18531
18195
  }
18196
+
18532
18197
  this._signal("beforeRender");
18533
18198
 
18534
18199
  if (this.session && this.session.$bidiHandler)
@@ -18542,13 +18207,13 @@ var VirtualRenderer = function(container, theme) {
18542
18207
  changes & this.CHANGE_SCROLL ||
18543
18208
  changes & this.CHANGE_H_SCROLL
18544
18209
  ) {
18545
- changes |= this.$computeLayerConfig();
18210
+ changes |= this.$computeLayerConfig() | this.$loop.clear();
18546
18211
  if (config.firstRow != this.layerConfig.firstRow && config.firstRowScreen == this.layerConfig.firstRowScreen) {
18547
18212
  var st = this.scrollTop + (config.firstRow - this.layerConfig.firstRow) * this.lineHeight;
18548
18213
  if (st > 0) {
18549
18214
  this.scrollTop = st;
18550
18215
  changes = changes | this.CHANGE_SCROLL;
18551
- changes |= this.$computeLayerConfig();
18216
+ changes |= this.$computeLayerConfig() | this.$loop.clear();
18552
18217
  }
18553
18218
  }
18554
18219
  config = this.layerConfig;
@@ -18686,7 +18351,6 @@ var VirtualRenderer = function(container, theme) {
18686
18351
  if (this.$maxLines && this.lineHeight > 1)
18687
18352
  this.$autosize();
18688
18353
 
18689
- var offset = this.scrollTop % this.lineHeight;
18690
18354
  var minHeight = size.scrollerHeight + this.lineHeight;
18691
18355
 
18692
18356
  var scrollPastEnd = !this.$maxLines && this.$scrollPastEnd
@@ -18709,6 +18373,7 @@ var VirtualRenderer = function(container, theme) {
18709
18373
  this.scrollBarV.setVisible(vScroll);
18710
18374
  }
18711
18375
 
18376
+ var offset = this.scrollTop % this.lineHeight;
18712
18377
  var lineCount = Math.ceil(minHeight / this.lineHeight) - 1;
18713
18378
  var firstRow = Math.max(0, Math.round((this.scrollTop - offset) / this.lineHeight));
18714
18379
  var lastRow = firstRow + lineCount;
@@ -18756,6 +18421,7 @@ var VirtualRenderer = function(container, theme) {
18756
18421
 
18757
18422
  if (this.session.$bidiHandler)
18758
18423
  this.session.$bidiHandler.setContentWidth(longestLine - this.$padding);
18424
+
18759
18425
  return changes;
18760
18426
  };
18761
18427
 
@@ -18847,7 +18513,7 @@ var VirtualRenderer = function(container, theme) {
18847
18513
  } else if (scrollTop + this.$size.scrollerHeight - bottomMargin < top + this.lineHeight) {
18848
18514
  if (offset && scrollTop + this.$size.scrollerHeight - bottomMargin < top - this.lineHeight)
18849
18515
  top += offset * this.$size.scrollerHeight;
18850
- this.session.setScrollTop(top + this.lineHeight - this.$size.scrollerHeight);
18516
+ this.session.setScrollTop(top + this.lineHeight + bottomMargin - this.$size.scrollerHeight);
18851
18517
  }
18852
18518
 
18853
18519
  var scrollLeft = this.scrollLeft;
@@ -19694,7 +19360,7 @@ var PlaceHolder = function(session, length, pos, others, mainClass, othersClass)
19694
19360
  this.hideOtherMarkers();
19695
19361
  this._emit("cursorLeave", event);
19696
19362
  }
19697
- };
19363
+ };
19698
19364
  this.detach = function() {
19699
19365
  this.session.removeMarker(this.pos && this.pos.markerId);
19700
19366
  this.hideOtherMarkers();
@@ -20326,7 +19992,7 @@ var Editor = require("./editor").Editor;
20326
19992
  result = command.multiSelectAction(editor, e.args || {});
20327
19993
  }
20328
19994
  return result;
20329
- };
19995
+ };
20330
19996
  this.forEachSelection = function(cmd, args, options) {
20331
19997
  if (this.inVirtualSelectionMode)
20332
19998
  return;
@@ -21611,12 +21277,12 @@ exports.createEditSession = function(text, mode) {
21611
21277
  return doc;
21612
21278
  };
21613
21279
  exports.Range = Range;
21280
+ exports.Editor = Editor;
21614
21281
  exports.EditSession = EditSession;
21615
21282
  exports.UndoManager = UndoManager;
21616
21283
  exports.VirtualRenderer = Renderer;
21617
- exports.version = "1.4.1";
21618
- });
21619
- (function() {
21284
+ exports.version = "1.4.2";
21285
+ }); (function() {
21620
21286
  window.require(["ace/ace"], function(a) {
21621
21287
  if (a) {
21622
21288
  a.config.init(true);