tui_editor-rails 1.0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (887) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +8 -0
  3. data/.ruby-version +1 -0
  4. data/Gemfile +6 -0
  5. data/Gemfile.lock +20 -0
  6. data/README.md +69 -0
  7. data/Rakefile +2 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +8 -0
  10. data/example/.gitignore +30 -0
  11. data/example/.ruby-version +1 -0
  12. data/example/Gemfile +64 -0
  13. data/example/Gemfile.lock +224 -0
  14. data/example/README.md +67 -0
  15. data/example/Rakefile +6 -0
  16. data/example/app/assets/config/manifest.js +3 -0
  17. data/example/app/assets/images/.keep +0 -0
  18. data/example/app/assets/images/screen_capture.png +0 -0
  19. data/example/app/assets/javascripts/application.js +23 -0
  20. data/example/app/assets/javascripts/cable.js +13 -0
  21. data/example/app/assets/javascripts/channels/.keep +0 -0
  22. data/example/app/assets/javascripts/home.coffee +3 -0
  23. data/example/app/assets/javascripts/posts.coffee +3 -0
  24. data/example/app/assets/stylesheets/application.scss +4 -0
  25. data/example/app/assets/stylesheets/home.scss +3 -0
  26. data/example/app/assets/stylesheets/posts.scss +3 -0
  27. data/example/app/assets/stylesheets/scaffolds.scss +84 -0
  28. data/example/app/channels/application_cable/channel.rb +4 -0
  29. data/example/app/channels/application_cable/connection.rb +4 -0
  30. data/example/app/controllers/application_controller.rb +2 -0
  31. data/example/app/controllers/concerns/.keep +0 -0
  32. data/example/app/controllers/home_controller.rb +4 -0
  33. data/example/app/controllers/posts_controller.rb +74 -0
  34. data/example/app/helpers/application_helper.rb +2 -0
  35. data/example/app/helpers/home_helper.rb +2 -0
  36. data/example/app/helpers/posts_helper.rb +2 -0
  37. data/example/app/jobs/application_job.rb +2 -0
  38. data/example/app/mailers/application_mailer.rb +4 -0
  39. data/example/app/models/application_record.rb +3 -0
  40. data/example/app/models/concerns/.keep +0 -0
  41. data/example/app/models/post.rb +2 -0
  42. data/example/app/views/home/index.html.erb +11 -0
  43. data/example/app/views/layouts/application.html.erb +14 -0
  44. data/example/app/views/layouts/mailer.html.erb +13 -0
  45. data/example/app/views/layouts/mailer.text.erb +1 -0
  46. data/example/app/views/posts/_form.html.erb +27 -0
  47. data/example/app/views/posts/_post.json.jbuilder +2 -0
  48. data/example/app/views/posts/edit.html.erb +6 -0
  49. data/example/app/views/posts/index.html.erb +29 -0
  50. data/example/app/views/posts/index.json.jbuilder +1 -0
  51. data/example/app/views/posts/new.html.erb +5 -0
  52. data/example/app/views/posts/show.html.erb +14 -0
  53. data/example/app/views/posts/show.json.jbuilder +1 -0
  54. data/example/bin/bundle +3 -0
  55. data/example/bin/rails +9 -0
  56. data/example/bin/rake +9 -0
  57. data/example/bin/setup +36 -0
  58. data/example/bin/spring +17 -0
  59. data/example/bin/update +31 -0
  60. data/example/bin/yarn +11 -0
  61. data/example/config.ru +5 -0
  62. data/example/config/application.rb +19 -0
  63. data/example/config/boot.rb +4 -0
  64. data/example/config/cable.yml +10 -0
  65. data/example/config/credentials.yml.enc +1 -0
  66. data/example/config/database.yml +25 -0
  67. data/example/config/environment.rb +5 -0
  68. data/example/config/environments/development.rb +61 -0
  69. data/example/config/environments/production.rb +94 -0
  70. data/example/config/environments/test.rb +46 -0
  71. data/example/config/initializers/application_controller_renderer.rb +8 -0
  72. data/example/config/initializers/assets.rb +14 -0
  73. data/example/config/initializers/backtrace_silencers.rb +7 -0
  74. data/example/config/initializers/content_security_policy.rb +22 -0
  75. data/example/config/initializers/cookies_serializer.rb +5 -0
  76. data/example/config/initializers/filter_parameter_logging.rb +4 -0
  77. data/example/config/initializers/inflections.rb +16 -0
  78. data/example/config/initializers/mime_types.rb +4 -0
  79. data/example/config/initializers/wrap_parameters.rb +14 -0
  80. data/example/config/locales/en.yml +33 -0
  81. data/example/config/puma.rb +34 -0
  82. data/example/config/routes.rb +6 -0
  83. data/example/config/spring.rb +6 -0
  84. data/example/config/storage.yml +35 -0
  85. data/example/db/migrate/20180208210404_create_posts.rb +10 -0
  86. data/example/db/schema.rb +22 -0
  87. data/example/db/seeds.rb +7 -0
  88. data/example/lib/assets/.keep +0 -0
  89. data/example/lib/tasks/.keep +0 -0
  90. data/example/log/.keep +0 -0
  91. data/example/package.json +5 -0
  92. data/example/public/404.html +67 -0
  93. data/example/public/422.html +67 -0
  94. data/example/public/500.html +66 -0
  95. data/example/public/apple-touch-icon-precomposed.png +0 -0
  96. data/example/public/apple-touch-icon.png +0 -0
  97. data/example/public/favicon.ico +0 -0
  98. data/example/public/robots.txt +1 -0
  99. data/example/test/application_system_test_case.rb +5 -0
  100. data/example/test/controllers/.keep +0 -0
  101. data/example/test/controllers/home_controller_test.rb +9 -0
  102. data/example/test/controllers/posts_controller_test.rb +48 -0
  103. data/example/test/fixtures/.keep +0 -0
  104. data/example/test/fixtures/files/.keep +0 -0
  105. data/example/test/fixtures/posts.yml +9 -0
  106. data/example/test/helpers/.keep +0 -0
  107. data/example/test/integration/.keep +0 -0
  108. data/example/test/mailers/.keep +0 -0
  109. data/example/test/models/.keep +0 -0
  110. data/example/test/models/post_test.rb +7 -0
  111. data/example/test/system/.keep +0 -0
  112. data/example/test/system/posts_test.rb +45 -0
  113. data/example/test/test_helper.rb +10 -0
  114. data/example/tmp/.keep +0 -0
  115. data/example/vendor/.keep +0 -0
  116. data/lib/tui_editor/rails.rb +8 -0
  117. data/lib/tui_editor/rails/version.rb +5 -0
  118. data/tui_editor-rails.gemspec +34 -0
  119. data/vendor/assets/components/codemirror/.bower.json +31 -0
  120. data/vendor/assets/components/codemirror/AUTHORS +714 -0
  121. data/vendor/assets/components/codemirror/CHANGELOG.md +1316 -0
  122. data/vendor/assets/components/codemirror/CONTRIBUTING.md +92 -0
  123. data/vendor/assets/components/codemirror/LICENSE +21 -0
  124. data/vendor/assets/components/codemirror/README.md +35 -0
  125. data/vendor/assets/components/codemirror/addon/comment/comment.js +209 -0
  126. data/vendor/assets/components/codemirror/addon/comment/continuecomment.js +78 -0
  127. data/vendor/assets/components/codemirror/addon/dialog/dialog.css +32 -0
  128. data/vendor/assets/components/codemirror/addon/dialog/dialog.js +157 -0
  129. data/vendor/assets/components/codemirror/addon/display/autorefresh.js +47 -0
  130. data/vendor/assets/components/codemirror/addon/display/fullscreen.css +6 -0
  131. data/vendor/assets/components/codemirror/addon/display/fullscreen.js +41 -0
  132. data/vendor/assets/components/codemirror/addon/display/panel.js +123 -0
  133. data/vendor/assets/components/codemirror/addon/display/placeholder.js +63 -0
  134. data/vendor/assets/components/codemirror/addon/display/rulers.js +51 -0
  135. data/vendor/assets/components/codemirror/addon/edit/closebrackets.js +194 -0
  136. data/vendor/assets/components/codemirror/addon/edit/closetag.js +175 -0
  137. data/vendor/assets/components/codemirror/addon/edit/continuelist.js +89 -0
  138. data/vendor/assets/components/codemirror/addon/edit/matchbrackets.js +145 -0
  139. data/vendor/assets/components/codemirror/addon/edit/matchtags.js +66 -0
  140. data/vendor/assets/components/codemirror/addon/edit/trailingspace.js +27 -0
  141. data/vendor/assets/components/codemirror/addon/fold/brace-fold.js +105 -0
  142. data/vendor/assets/components/codemirror/addon/fold/comment-fold.js +59 -0
  143. data/vendor/assets/components/codemirror/addon/fold/foldcode.js +152 -0
  144. data/vendor/assets/components/codemirror/addon/fold/foldgutter.css +20 -0
  145. data/vendor/assets/components/codemirror/addon/fold/foldgutter.js +146 -0
  146. data/vendor/assets/components/codemirror/addon/fold/indent-fold.js +48 -0
  147. data/vendor/assets/components/codemirror/addon/fold/markdown-fold.js +49 -0
  148. data/vendor/assets/components/codemirror/addon/fold/xml-fold.js +182 -0
  149. data/vendor/assets/components/codemirror/addon/hint/anyword-hint.js +41 -0
  150. data/vendor/assets/components/codemirror/addon/hint/css-hint.js +60 -0
  151. data/vendor/assets/components/codemirror/addon/hint/html-hint.js +348 -0
  152. data/vendor/assets/components/codemirror/addon/hint/javascript-hint.js +155 -0
  153. data/vendor/assets/components/codemirror/addon/hint/show-hint.css +36 -0
  154. data/vendor/assets/components/codemirror/addon/hint/show-hint.js +432 -0
  155. data/vendor/assets/components/codemirror/addon/hint/sql-hint.js +286 -0
  156. data/vendor/assets/components/codemirror/addon/hint/xml-hint.js +110 -0
  157. data/vendor/assets/components/codemirror/addon/lint/coffeescript-lint.js +47 -0
  158. data/vendor/assets/components/codemirror/addon/lint/css-lint.js +40 -0
  159. data/vendor/assets/components/codemirror/addon/lint/html-lint.js +53 -0
  160. data/vendor/assets/components/codemirror/addon/lint/javascript-lint.js +63 -0
  161. data/vendor/assets/components/codemirror/addon/lint/json-lint.js +37 -0
  162. data/vendor/assets/components/codemirror/addon/lint/lint.css +73 -0
  163. data/vendor/assets/components/codemirror/addon/lint/lint.js +252 -0
  164. data/vendor/assets/components/codemirror/addon/lint/yaml-lint.js +41 -0
  165. data/vendor/assets/components/codemirror/addon/merge/merge.css +113 -0
  166. data/vendor/assets/components/codemirror/addon/merge/merge.js +1001 -0
  167. data/vendor/assets/components/codemirror/addon/mode/loadmode.js +64 -0
  168. data/vendor/assets/components/codemirror/addon/mode/multiplex.js +123 -0
  169. data/vendor/assets/components/codemirror/addon/mode/multiplex_test.js +33 -0
  170. data/vendor/assets/components/codemirror/addon/mode/overlay.js +90 -0
  171. data/vendor/assets/components/codemirror/addon/mode/simple.js +216 -0
  172. data/vendor/assets/components/codemirror/addon/runmode/colorize.js +40 -0
  173. data/vendor/assets/components/codemirror/addon/runmode/runmode-standalone.js +158 -0
  174. data/vendor/assets/components/codemirror/addon/runmode/runmode.js +72 -0
  175. data/vendor/assets/components/codemirror/addon/runmode/runmode.node.js +197 -0
  176. data/vendor/assets/components/codemirror/addon/scroll/annotatescrollbar.js +122 -0
  177. data/vendor/assets/components/codemirror/addon/scroll/scrollpastend.js +48 -0
  178. data/vendor/assets/components/codemirror/addon/scroll/simplescrollbars.css +66 -0
  179. data/vendor/assets/components/codemirror/addon/scroll/simplescrollbars.js +152 -0
  180. data/vendor/assets/components/codemirror/addon/search/jump-to-line.js +49 -0
  181. data/vendor/assets/components/codemirror/addon/search/match-highlighter.js +165 -0
  182. data/vendor/assets/components/codemirror/addon/search/matchesonscrollbar.css +8 -0
  183. data/vendor/assets/components/codemirror/addon/search/matchesonscrollbar.js +97 -0
  184. data/vendor/assets/components/codemirror/addon/search/search.js +252 -0
  185. data/vendor/assets/components/codemirror/addon/search/searchcursor.js +289 -0
  186. data/vendor/assets/components/codemirror/addon/selection/active-line.js +72 -0
  187. data/vendor/assets/components/codemirror/addon/selection/mark-selection.js +119 -0
  188. data/vendor/assets/components/codemirror/addon/selection/selection-pointer.js +98 -0
  189. data/vendor/assets/components/codemirror/addon/tern/tern.css +87 -0
  190. data/vendor/assets/components/codemirror/addon/tern/tern.js +718 -0
  191. data/vendor/assets/components/codemirror/addon/tern/worker.js +44 -0
  192. data/vendor/assets/components/codemirror/addon/wrap/hardwrap.js +144 -0
  193. data/vendor/assets/components/codemirror/bower.json +17 -0
  194. data/vendor/assets/components/codemirror/component-tools/bower.json +17 -0
  195. data/vendor/assets/components/codemirror/component-tools/build.sh +31 -0
  196. data/vendor/assets/components/codemirror/component-tools/update.py +38 -0
  197. data/vendor/assets/components/codemirror/keymap/emacs.js +416 -0
  198. data/vendor/assets/components/codemirror/keymap/sublime.js +685 -0
  199. data/vendor/assets/components/codemirror/keymap/vim.js +5219 -0
  200. data/vendor/assets/components/codemirror/lib/codemirror.css +346 -0
  201. data/vendor/assets/components/codemirror/lib/codemirror.js +9669 -0
  202. data/vendor/assets/components/codemirror/mode/apl/apl.js +174 -0
  203. data/vendor/assets/components/codemirror/mode/asciiarmor/asciiarmor.js +74 -0
  204. data/vendor/assets/components/codemirror/mode/asn.1/asn.1.js +204 -0
  205. data/vendor/assets/components/codemirror/mode/asterisk/asterisk.js +196 -0
  206. data/vendor/assets/components/codemirror/mode/brainfuck/brainfuck.js +85 -0
  207. data/vendor/assets/components/codemirror/mode/clike/clike.js +817 -0
  208. data/vendor/assets/components/codemirror/mode/clojure/clojure.js +306 -0
  209. data/vendor/assets/components/codemirror/mode/cmake/cmake.js +97 -0
  210. data/vendor/assets/components/codemirror/mode/cobol/cobol.js +255 -0
  211. data/vendor/assets/components/codemirror/mode/coffeescript/coffeescript.js +359 -0
  212. data/vendor/assets/components/codemirror/mode/commonlisp/commonlisp.js +124 -0
  213. data/vendor/assets/components/codemirror/mode/crystal/crystal.js +433 -0
  214. data/vendor/assets/components/codemirror/mode/css/css.js +832 -0
  215. data/vendor/assets/components/codemirror/mode/cypher/cypher.js +150 -0
  216. data/vendor/assets/components/codemirror/mode/d/d.js +218 -0
  217. data/vendor/assets/components/codemirror/mode/dart/dart.js +157 -0
  218. data/vendor/assets/components/codemirror/mode/diff/diff.js +47 -0
  219. data/vendor/assets/components/codemirror/mode/django/django.js +356 -0
  220. data/vendor/assets/components/codemirror/mode/dockerfile/dockerfile.js +79 -0
  221. data/vendor/assets/components/codemirror/mode/dtd/dtd.js +142 -0
  222. data/vendor/assets/components/codemirror/mode/dylan/dylan.js +352 -0
  223. data/vendor/assets/components/codemirror/mode/ebnf/ebnf.js +195 -0
  224. data/vendor/assets/components/codemirror/mode/ecl/ecl.js +206 -0
  225. data/vendor/assets/components/codemirror/mode/eiffel/eiffel.js +160 -0
  226. data/vendor/assets/components/codemirror/mode/elm/elm.js +205 -0
  227. data/vendor/assets/components/codemirror/mode/erlang/erlang.js +619 -0
  228. data/vendor/assets/components/codemirror/mode/factor/factor.js +85 -0
  229. data/vendor/assets/components/codemirror/mode/fcl/fcl.js +173 -0
  230. data/vendor/assets/components/codemirror/mode/forth/forth.js +180 -0
  231. data/vendor/assets/components/codemirror/mode/fortran/fortran.js +188 -0
  232. data/vendor/assets/components/codemirror/mode/gas/gas.js +345 -0
  233. data/vendor/assets/components/codemirror/mode/gfm/gfm.js +129 -0
  234. data/vendor/assets/components/codemirror/mode/gherkin/gherkin.js +178 -0
  235. data/vendor/assets/components/codemirror/mode/go/go.js +187 -0
  236. data/vendor/assets/components/codemirror/mode/groovy/groovy.js +230 -0
  237. data/vendor/assets/components/codemirror/mode/haml/haml.js +161 -0
  238. data/vendor/assets/components/codemirror/mode/handlebars/handlebars.js +62 -0
  239. data/vendor/assets/components/codemirror/mode/haskell-literate/haskell-literate.js +43 -0
  240. data/vendor/assets/components/codemirror/mode/haskell/haskell.js +267 -0
  241. data/vendor/assets/components/codemirror/mode/haxe/haxe.js +515 -0
  242. data/vendor/assets/components/codemirror/mode/htmlembedded/htmlembedded.js +37 -0
  243. data/vendor/assets/components/codemirror/mode/htmlmixed/htmlmixed.js +152 -0
  244. data/vendor/assets/components/codemirror/mode/http/http.js +113 -0
  245. data/vendor/assets/components/codemirror/mode/idl/idl.js +290 -0
  246. data/vendor/assets/components/codemirror/mode/javascript/javascript.js +865 -0
  247. data/vendor/assets/components/codemirror/mode/jinja2/jinja2.js +142 -0
  248. data/vendor/assets/components/codemirror/mode/jsx/jsx.js +148 -0
  249. data/vendor/assets/components/codemirror/mode/julia/julia.js +418 -0
  250. data/vendor/assets/components/codemirror/mode/livescript/livescript.js +280 -0
  251. data/vendor/assets/components/codemirror/mode/lua/lua.js +159 -0
  252. data/vendor/assets/components/codemirror/mode/markdown/markdown.js +872 -0
  253. data/vendor/assets/components/codemirror/mode/mathematica/mathematica.js +176 -0
  254. data/vendor/assets/components/codemirror/mode/mbox/mbox.js +129 -0
  255. data/vendor/assets/components/codemirror/mode/meta.js +217 -0
  256. data/vendor/assets/components/codemirror/mode/mirc/mirc.js +193 -0
  257. data/vendor/assets/components/codemirror/mode/mllike/mllike.js +356 -0
  258. data/vendor/assets/components/codemirror/mode/modelica/modelica.js +245 -0
  259. data/vendor/assets/components/codemirror/mode/mscgen/mscgen.js +175 -0
  260. data/vendor/assets/components/codemirror/mode/mumps/mumps.js +148 -0
  261. data/vendor/assets/components/codemirror/mode/nginx/nginx.js +178 -0
  262. data/vendor/assets/components/codemirror/mode/nsis/nsis.js +95 -0
  263. data/vendor/assets/components/codemirror/mode/ntriples/ntriples.js +195 -0
  264. data/vendor/assets/components/codemirror/mode/octave/octave.js +139 -0
  265. data/vendor/assets/components/codemirror/mode/oz/oz.js +252 -0
  266. data/vendor/assets/components/codemirror/mode/pascal/pascal.js +109 -0
  267. data/vendor/assets/components/codemirror/mode/pegjs/pegjs.js +114 -0
  268. data/vendor/assets/components/codemirror/mode/perl/perl.js +837 -0
  269. data/vendor/assets/components/codemirror/mode/php/php.js +234 -0
  270. data/vendor/assets/components/codemirror/mode/pig/pig.js +178 -0
  271. data/vendor/assets/components/codemirror/mode/powershell/powershell.js +398 -0
  272. data/vendor/assets/components/codemirror/mode/properties/properties.js +78 -0
  273. data/vendor/assets/components/codemirror/mode/protobuf/protobuf.js +69 -0
  274. data/vendor/assets/components/codemirror/mode/pug/pug.js +591 -0
  275. data/vendor/assets/components/codemirror/mode/puppet/puppet.js +220 -0
  276. data/vendor/assets/components/codemirror/mode/python/python.js +334 -0
  277. data/vendor/assets/components/codemirror/mode/q/q.js +139 -0
  278. data/vendor/assets/components/codemirror/mode/r/r.js +183 -0
  279. data/vendor/assets/components/codemirror/mode/rpm/rpm.js +109 -0
  280. data/vendor/assets/components/codemirror/mode/rst/rst.js +557 -0
  281. data/vendor/assets/components/codemirror/mode/ruby/ruby.js +296 -0
  282. data/vendor/assets/components/codemirror/mode/rust/rust.js +72 -0
  283. data/vendor/assets/components/codemirror/mode/sas/sas.js +303 -0
  284. data/vendor/assets/components/codemirror/mode/sass/sass.js +454 -0
  285. data/vendor/assets/components/codemirror/mode/scheme/scheme.js +249 -0
  286. data/vendor/assets/components/codemirror/mode/shell/shell.js +151 -0
  287. data/vendor/assets/components/codemirror/mode/sieve/sieve.js +193 -0
  288. data/vendor/assets/components/codemirror/mode/slim/slim.js +575 -0
  289. data/vendor/assets/components/codemirror/mode/smalltalk/smalltalk.js +168 -0
  290. data/vendor/assets/components/codemirror/mode/smarty/smarty.js +225 -0
  291. data/vendor/assets/components/codemirror/mode/solr/solr.js +104 -0
  292. data/vendor/assets/components/codemirror/mode/soy/soy.js +354 -0
  293. data/vendor/assets/components/codemirror/mode/sparql/sparql.js +180 -0
  294. data/vendor/assets/components/codemirror/mode/spreadsheet/spreadsheet.js +112 -0
  295. data/vendor/assets/components/codemirror/mode/sql/sql.js +488 -0
  296. data/vendor/assets/components/codemirror/mode/stex/stex.js +251 -0
  297. data/vendor/assets/components/codemirror/mode/stylus/stylus.js +771 -0
  298. data/vendor/assets/components/codemirror/mode/swift/swift.js +219 -0
  299. data/vendor/assets/components/codemirror/mode/tcl/tcl.js +139 -0
  300. data/vendor/assets/components/codemirror/mode/textile/textile.js +469 -0
  301. data/vendor/assets/components/codemirror/mode/tiddlywiki/tiddlywiki.css +14 -0
  302. data/vendor/assets/components/codemirror/mode/tiddlywiki/tiddlywiki.js +308 -0
  303. data/vendor/assets/components/codemirror/mode/tiki/tiki.css +26 -0
  304. data/vendor/assets/components/codemirror/mode/tiki/tiki.js +312 -0
  305. data/vendor/assets/components/codemirror/mode/toml/toml.js +88 -0
  306. data/vendor/assets/components/codemirror/mode/tornado/tornado.js +68 -0
  307. data/vendor/assets/components/codemirror/mode/troff/troff.js +84 -0
  308. data/vendor/assets/components/codemirror/mode/ttcn-cfg/ttcn-cfg.js +214 -0
  309. data/vendor/assets/components/codemirror/mode/ttcn/ttcn.js +283 -0
  310. data/vendor/assets/components/codemirror/mode/turtle/turtle.js +162 -0
  311. data/vendor/assets/components/codemirror/mode/twig/twig.js +141 -0
  312. data/vendor/assets/components/codemirror/mode/vb/vb.js +275 -0
  313. data/vendor/assets/components/codemirror/mode/vbscript/vbscript.js +350 -0
  314. data/vendor/assets/components/codemirror/mode/velocity/velocity.js +201 -0
  315. data/vendor/assets/components/codemirror/mode/verilog/verilog.js +675 -0
  316. data/vendor/assets/components/codemirror/mode/vhdl/vhdl.js +189 -0
  317. data/vendor/assets/components/codemirror/mode/vue/vue.js +77 -0
  318. data/vendor/assets/components/codemirror/mode/webidl/webidl.js +195 -0
  319. data/vendor/assets/components/codemirror/mode/xml/xml.js +401 -0
  320. data/vendor/assets/components/codemirror/mode/xquery/xquery.js +448 -0
  321. data/vendor/assets/components/codemirror/mode/yacas/yacas.js +204 -0
  322. data/vendor/assets/components/codemirror/mode/yaml-frontmatter/yaml-frontmatter.js +68 -0
  323. data/vendor/assets/components/codemirror/mode/yaml/yaml.js +118 -0
  324. data/vendor/assets/components/codemirror/mode/z80/z80.js +116 -0
  325. data/vendor/assets/components/codemirror/rollup.config.js +18 -0
  326. data/vendor/assets/components/codemirror/src/codemirror.js +3 -0
  327. data/vendor/assets/components/codemirror/src/display/Display.js +106 -0
  328. data/vendor/assets/components/codemirror/src/display/focus.js +47 -0
  329. data/vendor/assets/components/codemirror/src/display/gutters.js +34 -0
  330. data/vendor/assets/components/codemirror/src/display/highlight_worker.js +55 -0
  331. data/vendor/assets/components/codemirror/src/display/line_numbers.js +48 -0
  332. data/vendor/assets/components/codemirror/src/display/mode_state.js +22 -0
  333. data/vendor/assets/components/codemirror/src/display/operations.js +205 -0
  334. data/vendor/assets/components/codemirror/src/display/scroll_events.js +115 -0
  335. data/vendor/assets/components/codemirror/src/display/scrollbars.js +192 -0
  336. data/vendor/assets/components/codemirror/src/display/scrolling.js +184 -0
  337. data/vendor/assets/components/codemirror/src/display/selection.js +158 -0
  338. data/vendor/assets/components/codemirror/src/display/update_display.js +260 -0
  339. data/vendor/assets/components/codemirror/src/display/update_line.js +188 -0
  340. data/vendor/assets/components/codemirror/src/display/update_lines.js +64 -0
  341. data/vendor/assets/components/codemirror/src/display/view_tracking.js +153 -0
  342. data/vendor/assets/components/codemirror/src/edit/CodeMirror.js +214 -0
  343. data/vendor/assets/components/codemirror/src/edit/commands.js +178 -0
  344. data/vendor/assets/components/codemirror/src/edit/deleteNearSelection.js +30 -0
  345. data/vendor/assets/components/codemirror/src/edit/drop_events.js +119 -0
  346. data/vendor/assets/components/codemirror/src/edit/fromTextArea.js +61 -0
  347. data/vendor/assets/components/codemirror/src/edit/global_events.js +44 -0
  348. data/vendor/assets/components/codemirror/src/edit/key_events.js +159 -0
  349. data/vendor/assets/components/codemirror/src/edit/legacy.js +62 -0
  350. data/vendor/assets/components/codemirror/src/edit/main.js +69 -0
  351. data/vendor/assets/components/codemirror/src/edit/methods.js +539 -0
  352. data/vendor/assets/components/codemirror/src/edit/mouse_events.js +407 -0
  353. data/vendor/assets/components/codemirror/src/edit/options.js +191 -0
  354. data/vendor/assets/components/codemirror/src/edit/utils.js +7 -0
  355. data/vendor/assets/components/codemirror/src/input/ContentEditableInput.js +517 -0
  356. data/vendor/assets/components/codemirror/src/input/TextareaInput.js +350 -0
  357. data/vendor/assets/components/codemirror/src/input/indent.js +71 -0
  358. data/vendor/assets/components/codemirror/src/input/input.js +135 -0
  359. data/vendor/assets/components/codemirror/src/input/keymap.js +148 -0
  360. data/vendor/assets/components/codemirror/src/input/keynames.js +17 -0
  361. data/vendor/assets/components/codemirror/src/input/movement.js +110 -0
  362. data/vendor/assets/components/codemirror/src/line/highlight.js +284 -0
  363. data/vendor/assets/components/codemirror/src/line/line_data.js +337 -0
  364. data/vendor/assets/components/codemirror/src/line/pos.js +40 -0
  365. data/vendor/assets/components/codemirror/src/line/saw_special_spans.js +10 -0
  366. data/vendor/assets/components/codemirror/src/line/spans.js +372 -0
  367. data/vendor/assets/components/codemirror/src/line/utils_line.js +85 -0
  368. data/vendor/assets/components/codemirror/src/measurement/position_measurement.js +700 -0
  369. data/vendor/assets/components/codemirror/src/measurement/widgets.js +26 -0
  370. data/vendor/assets/components/codemirror/src/model/Doc.js +432 -0
  371. data/vendor/assets/components/codemirror/src/model/change_measurement.js +61 -0
  372. data/vendor/assets/components/codemirror/src/model/changes.js +330 -0
  373. data/vendor/assets/components/codemirror/src/model/chunk.js +167 -0
  374. data/vendor/assets/components/codemirror/src/model/document_data.js +111 -0
  375. data/vendor/assets/components/codemirror/src/model/history.js +228 -0
  376. data/vendor/assets/components/codemirror/src/model/line_widget.js +78 -0
  377. data/vendor/assets/components/codemirror/src/model/mark_text.js +292 -0
  378. data/vendor/assets/components/codemirror/src/model/selection.js +82 -0
  379. data/vendor/assets/components/codemirror/src/model/selection_updates.js +208 -0
  380. data/vendor/assets/components/codemirror/src/modes.js +96 -0
  381. data/vendor/assets/components/codemirror/src/util/StringStream.js +90 -0
  382. data/vendor/assets/components/codemirror/src/util/bidi.js +214 -0
  383. data/vendor/assets/components/codemirror/src/util/browser.js +33 -0
  384. data/vendor/assets/components/codemirror/src/util/dom.js +97 -0
  385. data/vendor/assets/components/codemirror/src/util/event.js +103 -0
  386. data/vendor/assets/components/codemirror/src/util/feature_detection.js +84 -0
  387. data/vendor/assets/components/codemirror/src/util/misc.js +150 -0
  388. data/vendor/assets/components/codemirror/src/util/operation_group.js +72 -0
  389. data/vendor/assets/components/codemirror/theme/3024-day.css +41 -0
  390. data/vendor/assets/components/codemirror/theme/3024-night.css +39 -0
  391. data/vendor/assets/components/codemirror/theme/abcdef.css +32 -0
  392. data/vendor/assets/components/codemirror/theme/ambiance-mobile.css +5 -0
  393. data/vendor/assets/components/codemirror/theme/ambiance.css +74 -0
  394. data/vendor/assets/components/codemirror/theme/base16-dark.css +38 -0
  395. data/vendor/assets/components/codemirror/theme/base16-light.css +38 -0
  396. data/vendor/assets/components/codemirror/theme/bespin.css +34 -0
  397. data/vendor/assets/components/codemirror/theme/blackboard.css +32 -0
  398. data/vendor/assets/components/codemirror/theme/cobalt.css +25 -0
  399. data/vendor/assets/components/codemirror/theme/colorforth.css +33 -0
  400. data/vendor/assets/components/codemirror/theme/dracula.css +40 -0
  401. data/vendor/assets/components/codemirror/theme/duotone-dark.css +35 -0
  402. data/vendor/assets/components/codemirror/theme/duotone-light.css +36 -0
  403. data/vendor/assets/components/codemirror/theme/eclipse.css +23 -0
  404. data/vendor/assets/components/codemirror/theme/elegant.css +13 -0
  405. data/vendor/assets/components/codemirror/theme/erlang-dark.css +34 -0
  406. data/vendor/assets/components/codemirror/theme/hopscotch.css +34 -0
  407. data/vendor/assets/components/codemirror/theme/icecoder.css +43 -0
  408. data/vendor/assets/components/codemirror/theme/isotope.css +34 -0
  409. data/vendor/assets/components/codemirror/theme/lesser-dark.css +47 -0
  410. data/vendor/assets/components/codemirror/theme/liquibyte.css +95 -0
  411. data/vendor/assets/components/codemirror/theme/material.css +53 -0
  412. data/vendor/assets/components/codemirror/theme/mbo.css +37 -0
  413. data/vendor/assets/components/codemirror/theme/mdn-like.css +46 -0
  414. data/vendor/assets/components/codemirror/theme/midnight.css +43 -0
  415. data/vendor/assets/components/codemirror/theme/monokai.css +36 -0
  416. data/vendor/assets/components/codemirror/theme/neat.css +12 -0
  417. data/vendor/assets/components/codemirror/theme/neo.css +43 -0
  418. data/vendor/assets/components/codemirror/theme/night.css +27 -0
  419. data/vendor/assets/components/codemirror/theme/oceanic-next.css +44 -0
  420. data/vendor/assets/components/codemirror/theme/panda-syntax.css +85 -0
  421. data/vendor/assets/components/codemirror/theme/paraiso-dark.css +38 -0
  422. data/vendor/assets/components/codemirror/theme/paraiso-light.css +38 -0
  423. data/vendor/assets/components/codemirror/theme/pastel-on-dark.css +52 -0
  424. data/vendor/assets/components/codemirror/theme/railscasts.css +34 -0
  425. data/vendor/assets/components/codemirror/theme/rubyblue.css +25 -0
  426. data/vendor/assets/components/codemirror/theme/seti.css +44 -0
  427. data/vendor/assets/components/codemirror/theme/shadowfox.css +52 -0
  428. data/vendor/assets/components/codemirror/theme/solarized.css +168 -0
  429. data/vendor/assets/components/codemirror/theme/the-matrix.css +30 -0
  430. data/vendor/assets/components/codemirror/theme/tomorrow-night-bright.css +35 -0
  431. data/vendor/assets/components/codemirror/theme/tomorrow-night-eighties.css +38 -0
  432. data/vendor/assets/components/codemirror/theme/ttcn.css +64 -0
  433. data/vendor/assets/components/codemirror/theme/twilight.css +32 -0
  434. data/vendor/assets/components/codemirror/theme/vibrant-ink.css +34 -0
  435. data/vendor/assets/components/codemirror/theme/xq-dark.css +53 -0
  436. data/vendor/assets/components/codemirror/theme/xq-light.css +43 -0
  437. data/vendor/assets/components/codemirror/theme/yeti.css +44 -0
  438. data/vendor/assets/components/codemirror/theme/zenburn.css +37 -0
  439. data/vendor/assets/components/eve/.bower.json +12 -0
  440. data/vendor/assets/components/eve/LICENSE +202 -0
  441. data/vendor/assets/components/eve/README.md +7 -0
  442. data/vendor/assets/components/eve/component.json +13 -0
  443. data/vendor/assets/components/eve/e.html +66 -0
  444. data/vendor/assets/components/eve/eve.js +371 -0
  445. data/vendor/assets/components/eve/package.json +18 -0
  446. data/vendor/assets/components/highlightjs/.bower.json +24 -0
  447. data/vendor/assets/components/highlightjs/LICENSE +24 -0
  448. data/vendor/assets/components/highlightjs/Makefile +21 -0
  449. data/vendor/assets/components/highlightjs/README.md +12 -0
  450. data/vendor/assets/components/highlightjs/bower.json +14 -0
  451. data/vendor/assets/components/highlightjs/component.json +12 -0
  452. data/vendor/assets/components/highlightjs/composer.json +26 -0
  453. data/vendor/assets/components/highlightjs/highlight.pack.js +16645 -0
  454. data/vendor/assets/components/highlightjs/highlight.pack.min.js +15 -0
  455. data/vendor/assets/components/highlightjs/package.json +8 -0
  456. data/vendor/assets/components/highlightjs/styles/agate.css +108 -0
  457. data/vendor/assets/components/highlightjs/styles/androidstudio.css +66 -0
  458. data/vendor/assets/components/highlightjs/styles/arduino-light.css +88 -0
  459. data/vendor/assets/components/highlightjs/styles/arta.css +73 -0
  460. data/vendor/assets/components/highlightjs/styles/ascetic.css +45 -0
  461. data/vendor/assets/components/highlightjs/styles/atelier-cave-dark.css +83 -0
  462. data/vendor/assets/components/highlightjs/styles/atelier-cave-light.css +85 -0
  463. data/vendor/assets/components/highlightjs/styles/atelier-cave.dark.css +113 -0
  464. data/vendor/assets/components/highlightjs/styles/atelier-cave.light.css +113 -0
  465. data/vendor/assets/components/highlightjs/styles/atelier-dune-dark.css +69 -0
  466. data/vendor/assets/components/highlightjs/styles/atelier-dune-light.css +69 -0
  467. data/vendor/assets/components/highlightjs/styles/atelier-dune.dark.css +94 -0
  468. data/vendor/assets/components/highlightjs/styles/atelier-dune.light.css +94 -0
  469. data/vendor/assets/components/highlightjs/styles/atelier-estuary-dark.css +84 -0
  470. data/vendor/assets/components/highlightjs/styles/atelier-estuary-light.css +84 -0
  471. data/vendor/assets/components/highlightjs/styles/atelier-estuary.dark.css +113 -0
  472. data/vendor/assets/components/highlightjs/styles/atelier-estuary.light.css +113 -0
  473. data/vendor/assets/components/highlightjs/styles/atelier-forest-dark.css +69 -0
  474. data/vendor/assets/components/highlightjs/styles/atelier-forest-light.css +69 -0
  475. data/vendor/assets/components/highlightjs/styles/atelier-forest.dark.css +94 -0
  476. data/vendor/assets/components/highlightjs/styles/atelier-forest.light.css +94 -0
  477. data/vendor/assets/components/highlightjs/styles/atelier-heath-dark.css +69 -0
  478. data/vendor/assets/components/highlightjs/styles/atelier-heath-light.css +69 -0
  479. data/vendor/assets/components/highlightjs/styles/atelier-heath.dark.css +94 -0
  480. data/vendor/assets/components/highlightjs/styles/atelier-heath.light.css +94 -0
  481. data/vendor/assets/components/highlightjs/styles/atelier-lakeside-dark.css +69 -0
  482. data/vendor/assets/components/highlightjs/styles/atelier-lakeside-light.css +69 -0
  483. data/vendor/assets/components/highlightjs/styles/atelier-lakeside.dark.css +94 -0
  484. data/vendor/assets/components/highlightjs/styles/atelier-lakeside.light.css +94 -0
  485. data/vendor/assets/components/highlightjs/styles/atelier-plateau-dark.css +84 -0
  486. data/vendor/assets/components/highlightjs/styles/atelier-plateau-light.css +84 -0
  487. data/vendor/assets/components/highlightjs/styles/atelier-plateau.dark.css +113 -0
  488. data/vendor/assets/components/highlightjs/styles/atelier-plateau.light.css +113 -0
  489. data/vendor/assets/components/highlightjs/styles/atelier-savanna-dark.css +84 -0
  490. data/vendor/assets/components/highlightjs/styles/atelier-savanna-light.css +84 -0
  491. data/vendor/assets/components/highlightjs/styles/atelier-savanna.dark.css +113 -0
  492. data/vendor/assets/components/highlightjs/styles/atelier-savanna.light.css +113 -0
  493. data/vendor/assets/components/highlightjs/styles/atelier-seaside-dark.css +69 -0
  494. data/vendor/assets/components/highlightjs/styles/atelier-seaside-light.css +69 -0
  495. data/vendor/assets/components/highlightjs/styles/atelier-seaside.dark.css +94 -0
  496. data/vendor/assets/components/highlightjs/styles/atelier-seaside.light.css +94 -0
  497. data/vendor/assets/components/highlightjs/styles/atelier-sulphurpool-dark.css +69 -0
  498. data/vendor/assets/components/highlightjs/styles/atelier-sulphurpool-light.css +69 -0
  499. data/vendor/assets/components/highlightjs/styles/atelier-sulphurpool.dark.css +94 -0
  500. data/vendor/assets/components/highlightjs/styles/atelier-sulphurpool.light.css +94 -0
  501. data/vendor/assets/components/highlightjs/styles/atom-one-dark.css +96 -0
  502. data/vendor/assets/components/highlightjs/styles/atom-one-light.css +96 -0
  503. data/vendor/assets/components/highlightjs/styles/brown-paper.css +64 -0
  504. data/vendor/assets/components/highlightjs/styles/brown-papersq.png +0 -0
  505. data/vendor/assets/components/highlightjs/styles/brown_paper.css +103 -0
  506. data/vendor/assets/components/highlightjs/styles/brown_papersq.png +0 -0
  507. data/vendor/assets/components/highlightjs/styles/codepen-embed.css +60 -0
  508. data/vendor/assets/components/highlightjs/styles/color-brewer.css +71 -0
  509. data/vendor/assets/components/highlightjs/styles/darcula.css +77 -0
  510. data/vendor/assets/components/highlightjs/styles/dark.css +63 -0
  511. data/vendor/assets/components/highlightjs/styles/darkula.css +6 -0
  512. data/vendor/assets/components/highlightjs/styles/default.css +99 -0
  513. data/vendor/assets/components/highlightjs/styles/docco.css +97 -0
  514. data/vendor/assets/components/highlightjs/styles/dracula.css +76 -0
  515. data/vendor/assets/components/highlightjs/styles/far.css +71 -0
  516. data/vendor/assets/components/highlightjs/styles/foundation.css +88 -0
  517. data/vendor/assets/components/highlightjs/styles/github-gist.css +71 -0
  518. data/vendor/assets/components/highlightjs/styles/github.css +99 -0
  519. data/vendor/assets/components/highlightjs/styles/googlecode.css +89 -0
  520. data/vendor/assets/components/highlightjs/styles/grayscale.css +101 -0
  521. data/vendor/assets/components/highlightjs/styles/gruvbox-dark.css +108 -0
  522. data/vendor/assets/components/highlightjs/styles/gruvbox-light.css +108 -0
  523. data/vendor/assets/components/highlightjs/styles/hopscotch.css +83 -0
  524. data/vendor/assets/components/highlightjs/styles/hybrid.css +102 -0
  525. data/vendor/assets/components/highlightjs/styles/idea.css +97 -0
  526. data/vendor/assets/components/highlightjs/styles/ir-black.css +73 -0
  527. data/vendor/assets/components/highlightjs/styles/ir_black.css +106 -0
  528. data/vendor/assets/components/highlightjs/styles/kimbie.dark.css +74 -0
  529. data/vendor/assets/components/highlightjs/styles/kimbie.light.css +74 -0
  530. data/vendor/assets/components/highlightjs/styles/magula.css +70 -0
  531. data/vendor/assets/components/highlightjs/styles/mono-blue.css +59 -0
  532. data/vendor/assets/components/highlightjs/styles/monokai-sublime.css +83 -0
  533. data/vendor/assets/components/highlightjs/styles/monokai.css +70 -0
  534. data/vendor/assets/components/highlightjs/styles/monokai_sublime.css +154 -0
  535. data/vendor/assets/components/highlightjs/styles/obsidian.css +88 -0
  536. data/vendor/assets/components/highlightjs/styles/ocean.css +74 -0
  537. data/vendor/assets/components/highlightjs/styles/paraiso-dark.css +72 -0
  538. data/vendor/assets/components/highlightjs/styles/paraiso-light.css +72 -0
  539. data/vendor/assets/components/highlightjs/styles/paraiso.dark.css +96 -0
  540. data/vendor/assets/components/highlightjs/styles/paraiso.light.css +96 -0
  541. data/vendor/assets/components/highlightjs/styles/pojoaque.css +83 -0
  542. data/vendor/assets/components/highlightjs/styles/pojoaque.jpg +0 -0
  543. data/vendor/assets/components/highlightjs/styles/purebasic.css +96 -0
  544. data/vendor/assets/components/highlightjs/styles/qtcreator_dark.css +83 -0
  545. data/vendor/assets/components/highlightjs/styles/qtcreator_light.css +83 -0
  546. data/vendor/assets/components/highlightjs/styles/railscasts.css +106 -0
  547. data/vendor/assets/components/highlightjs/styles/rainbow.css +85 -0
  548. data/vendor/assets/components/highlightjs/styles/routeros.css +108 -0
  549. data/vendor/assets/components/highlightjs/styles/school-book.css +72 -0
  550. data/vendor/assets/components/highlightjs/styles/school-book.png +0 -0
  551. data/vendor/assets/components/highlightjs/styles/school_book.css +111 -0
  552. data/vendor/assets/components/highlightjs/styles/school_book.png +0 -0
  553. data/vendor/assets/components/highlightjs/styles/solarized-dark.css +84 -0
  554. data/vendor/assets/components/highlightjs/styles/solarized-light.css +84 -0
  555. data/vendor/assets/components/highlightjs/styles/solarized_dark.css +107 -0
  556. data/vendor/assets/components/highlightjs/styles/solarized_light.css +107 -0
  557. data/vendor/assets/components/highlightjs/styles/sunburst.css +102 -0
  558. data/vendor/assets/components/highlightjs/styles/tomorrow-night-blue.css +75 -0
  559. data/vendor/assets/components/highlightjs/styles/tomorrow-night-bright.css +74 -0
  560. data/vendor/assets/components/highlightjs/styles/tomorrow-night-eighties.css +74 -0
  561. data/vendor/assets/components/highlightjs/styles/tomorrow-night.css +75 -0
  562. data/vendor/assets/components/highlightjs/styles/tomorrow.css +72 -0
  563. data/vendor/assets/components/highlightjs/styles/vs.css +68 -0
  564. data/vendor/assets/components/highlightjs/styles/vs2015.css +115 -0
  565. data/vendor/assets/components/highlightjs/styles/xcode.css +93 -0
  566. data/vendor/assets/components/highlightjs/styles/xt256.css +92 -0
  567. data/vendor/assets/components/highlightjs/styles/zenburn.css +80 -0
  568. data/vendor/assets/components/jquery/.bower.json +25 -0
  569. data/vendor/assets/components/jquery/AUTHORS.txt +313 -0
  570. data/vendor/assets/components/jquery/LICENSE.txt +36 -0
  571. data/vendor/assets/components/jquery/README.md +67 -0
  572. data/vendor/assets/components/jquery/bower.json +14 -0
  573. data/vendor/assets/components/jquery/dist/core.js +399 -0
  574. data/vendor/assets/components/jquery/dist/jquery.js +10364 -0
  575. data/vendor/assets/components/jquery/dist/jquery.min.js +2 -0
  576. data/vendor/assets/components/jquery/dist/jquery.min.map +1 -0
  577. data/vendor/assets/components/jquery/dist/jquery.slim.js +8269 -0
  578. data/vendor/assets/components/jquery/dist/jquery.slim.min.js +2 -0
  579. data/vendor/assets/components/jquery/dist/jquery.slim.min.map +1 -0
  580. data/vendor/assets/components/jquery/external/sizzle/LICENSE.txt +36 -0
  581. data/vendor/assets/components/jquery/external/sizzle/dist/sizzle.js +2272 -0
  582. data/vendor/assets/components/jquery/external/sizzle/dist/sizzle.min.js +3 -0
  583. data/vendor/assets/components/jquery/external/sizzle/dist/sizzle.min.map +1 -0
  584. data/vendor/assets/components/jquery/src/.eslintrc.json +5 -0
  585. data/vendor/assets/components/jquery/src/ajax.js +856 -0
  586. data/vendor/assets/components/jquery/src/ajax/jsonp.js +103 -0
  587. data/vendor/assets/components/jquery/src/ajax/load.js +77 -0
  588. data/vendor/assets/components/jquery/src/ajax/parseXML.js +30 -0
  589. data/vendor/assets/components/jquery/src/ajax/script.js +77 -0
  590. data/vendor/assets/components/jquery/src/ajax/var/location.js +5 -0
  591. data/vendor/assets/components/jquery/src/ajax/var/nonce.js +5 -0
  592. data/vendor/assets/components/jquery/src/ajax/var/rquery.js +5 -0
  593. data/vendor/assets/components/jquery/src/ajax/xhr.js +170 -0
  594. data/vendor/assets/components/jquery/src/attributes.js +13 -0
  595. data/vendor/assets/components/jquery/src/attributes/attr.js +141 -0
  596. data/vendor/assets/components/jquery/src/attributes/classes.js +186 -0
  597. data/vendor/assets/components/jquery/src/attributes/prop.js +143 -0
  598. data/vendor/assets/components/jquery/src/attributes/support.js +33 -0
  599. data/vendor/assets/components/jquery/src/attributes/val.js +191 -0
  600. data/vendor/assets/components/jquery/src/callbacks.js +236 -0
  601. data/vendor/assets/components/jquery/src/core.js +399 -0
  602. data/vendor/assets/components/jquery/src/core/DOMEval.js +30 -0
  603. data/vendor/assets/components/jquery/src/core/access.js +72 -0
  604. data/vendor/assets/components/jquery/src/core/camelCase.js +23 -0
  605. data/vendor/assets/components/jquery/src/core/init.js +129 -0
  606. data/vendor/assets/components/jquery/src/core/nodeName.js +13 -0
  607. data/vendor/assets/components/jquery/src/core/parseHTML.js +65 -0
  608. data/vendor/assets/components/jquery/src/core/ready-no-deferred.js +97 -0
  609. data/vendor/assets/components/jquery/src/core/ready.js +86 -0
  610. data/vendor/assets/components/jquery/src/core/readyException.js +13 -0
  611. data/vendor/assets/components/jquery/src/core/stripAndCollapse.js +14 -0
  612. data/vendor/assets/components/jquery/src/core/support.js +20 -0
  613. data/vendor/assets/components/jquery/src/core/toType.js +20 -0
  614. data/vendor/assets/components/jquery/src/core/var/rsingleTag.js +6 -0
  615. data/vendor/assets/components/jquery/src/css.js +481 -0
  616. data/vendor/assets/components/jquery/src/css/addGetHookIf.js +26 -0
  617. data/vendor/assets/components/jquery/src/css/adjustCSS.js +73 -0
  618. data/vendor/assets/components/jquery/src/css/curCSS.js +65 -0
  619. data/vendor/assets/components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
  620. data/vendor/assets/components/jquery/src/css/showHide.js +105 -0
  621. data/vendor/assets/components/jquery/src/css/support.js +102 -0
  622. data/vendor/assets/components/jquery/src/css/var/cssExpand.js +5 -0
  623. data/vendor/assets/components/jquery/src/css/var/getStyles.js +17 -0
  624. data/vendor/assets/components/jquery/src/css/var/isHiddenWithinTree.js +34 -0
  625. data/vendor/assets/components/jquery/src/css/var/rboxStyle.js +7 -0
  626. data/vendor/assets/components/jquery/src/css/var/rnumnonpx.js +7 -0
  627. data/vendor/assets/components/jquery/src/css/var/swap.js +26 -0
  628. data/vendor/assets/components/jquery/src/data.js +180 -0
  629. data/vendor/assets/components/jquery/src/data/Data.js +162 -0
  630. data/vendor/assets/components/jquery/src/data/var/acceptData.js +19 -0
  631. data/vendor/assets/components/jquery/src/data/var/dataPriv.js +7 -0
  632. data/vendor/assets/components/jquery/src/data/var/dataUser.js +7 -0
  633. data/vendor/assets/components/jquery/src/deferred.js +399 -0
  634. data/vendor/assets/components/jquery/src/deferred/exceptionHook.js +21 -0
  635. data/vendor/assets/components/jquery/src/deprecated.js +98 -0
  636. data/vendor/assets/components/jquery/src/dimensions.js +57 -0
  637. data/vendor/assets/components/jquery/src/effects.js +702 -0
  638. data/vendor/assets/components/jquery/src/effects/Tween.js +123 -0
  639. data/vendor/assets/components/jquery/src/effects/animatedSelector.js +15 -0
  640. data/vendor/assets/components/jquery/src/event.js +748 -0
  641. data/vendor/assets/components/jquery/src/event/ajax.js +22 -0
  642. data/vendor/assets/components/jquery/src/event/alias.js +29 -0
  643. data/vendor/assets/components/jquery/src/event/focusin.js +55 -0
  644. data/vendor/assets/components/jquery/src/event/support.js +11 -0
  645. data/vendor/assets/components/jquery/src/event/trigger.js +199 -0
  646. data/vendor/assets/components/jquery/src/exports/amd.js +26 -0
  647. data/vendor/assets/components/jquery/src/exports/global.js +34 -0
  648. data/vendor/assets/components/jquery/src/jquery.js +40 -0
  649. data/vendor/assets/components/jquery/src/manipulation.js +486 -0
  650. data/vendor/assets/components/jquery/src/manipulation/_evalUrl.js +23 -0
  651. data/vendor/assets/components/jquery/src/manipulation/buildFragment.js +105 -0
  652. data/vendor/assets/components/jquery/src/manipulation/getAll.js +32 -0
  653. data/vendor/assets/components/jquery/src/manipulation/setGlobalEval.js +22 -0
  654. data/vendor/assets/components/jquery/src/manipulation/support.js +35 -0
  655. data/vendor/assets/components/jquery/src/manipulation/var/rcheckableType.js +5 -0
  656. data/vendor/assets/components/jquery/src/manipulation/var/rscriptType.js +5 -0
  657. data/vendor/assets/components/jquery/src/manipulation/var/rtagName.js +5 -0
  658. data/vendor/assets/components/jquery/src/manipulation/wrapMap.js +29 -0
  659. data/vendor/assets/components/jquery/src/offset.js +233 -0
  660. data/vendor/assets/components/jquery/src/queue.js +145 -0
  661. data/vendor/assets/components/jquery/src/queue/delay.js +24 -0
  662. data/vendor/assets/components/jquery/src/selector-native.js +237 -0
  663. data/vendor/assets/components/jquery/src/selector-sizzle.js +19 -0
  664. data/vendor/assets/components/jquery/src/selector.js +3 -0
  665. data/vendor/assets/components/jquery/src/serialize.js +132 -0
  666. data/vendor/assets/components/jquery/src/traversing.js +191 -0
  667. data/vendor/assets/components/jquery/src/traversing/findFilter.js +97 -0
  668. data/vendor/assets/components/jquery/src/traversing/var/dir.js +22 -0
  669. data/vendor/assets/components/jquery/src/traversing/var/rneedsContext.js +8 -0
  670. data/vendor/assets/components/jquery/src/traversing/var/siblings.js +17 -0
  671. data/vendor/assets/components/jquery/src/var/ObjectFunctionString.js +7 -0
  672. data/vendor/assets/components/jquery/src/var/arr.js +5 -0
  673. data/vendor/assets/components/jquery/src/var/class2type.js +6 -0
  674. data/vendor/assets/components/jquery/src/var/concat.js +7 -0
  675. data/vendor/assets/components/jquery/src/var/document.js +5 -0
  676. data/vendor/assets/components/jquery/src/var/documentElement.js +7 -0
  677. data/vendor/assets/components/jquery/src/var/fnToString.js +7 -0
  678. data/vendor/assets/components/jquery/src/var/getProto.js +5 -0
  679. data/vendor/assets/components/jquery/src/var/hasOwn.js +7 -0
  680. data/vendor/assets/components/jquery/src/var/indexOf.js +7 -0
  681. data/vendor/assets/components/jquery/src/var/isFunction.js +13 -0
  682. data/vendor/assets/components/jquery/src/var/isWindow.js +8 -0
  683. data/vendor/assets/components/jquery/src/var/pnum.js +5 -0
  684. data/vendor/assets/components/jquery/src/var/push.js +7 -0
  685. data/vendor/assets/components/jquery/src/var/rcssNum.js +9 -0
  686. data/vendor/assets/components/jquery/src/var/rnothtmlwhite.js +8 -0
  687. data/vendor/assets/components/jquery/src/var/slice.js +7 -0
  688. data/vendor/assets/components/jquery/src/var/support.js +6 -0
  689. data/vendor/assets/components/jquery/src/var/toString.js +7 -0
  690. data/vendor/assets/components/jquery/src/wrap.js +78 -0
  691. data/vendor/assets/components/markdown-it/.bower.json +38 -0
  692. data/vendor/assets/components/markdown-it/CHANGELOG.md +442 -0
  693. data/vendor/assets/components/markdown-it/CONTRIBUTING.md +15 -0
  694. data/vendor/assets/components/markdown-it/LICENSE +22 -0
  695. data/vendor/assets/components/markdown-it/Procfile +1 -0
  696. data/vendor/assets/components/markdown-it/README.md +294 -0
  697. data/vendor/assets/components/markdown-it/bin/markdown-it.js +113 -0
  698. data/vendor/assets/components/markdown-it/bower.json +28 -0
  699. data/vendor/assets/components/markdown-it/dist/markdown-it.js +7963 -0
  700. data/vendor/assets/components/markdown-it/dist/markdown-it.min.js +1 -0
  701. data/vendor/assets/components/markdown-it/package.json +64 -0
  702. data/vendor/assets/components/plantuml-encoder/.bower.json +29 -0
  703. data/vendor/assets/components/plantuml-encoder/LICENSE +19 -0
  704. data/vendor/assets/components/plantuml-encoder/README.md +38 -0
  705. data/vendor/assets/components/plantuml-encoder/bower.json +20 -0
  706. data/vendor/assets/components/plantuml-encoder/dist/plantuml-encoder.js +3994 -0
  707. data/vendor/assets/components/plantuml-encoder/dist/plantuml-encoder.min.js +1 -0
  708. data/vendor/assets/components/plantuml-encoder/package.json +33 -0
  709. data/vendor/assets/components/raphael/.bower.json +45 -0
  710. data/vendor/assets/components/raphael/bower.json +31 -0
  711. data/vendor/assets/components/raphael/dev/banner.txt +8 -0
  712. data/vendor/assets/components/raphael/dev/raphael.amd.js +14 -0
  713. data/vendor/assets/components/raphael/dev/raphael.core.js +5413 -0
  714. data/vendor/assets/components/raphael/dev/raphael.svg.js +1428 -0
  715. data/vendor/assets/components/raphael/dev/raphael.vml.js +1010 -0
  716. data/vendor/assets/components/raphael/dev/test/svg/dom.js +295 -0
  717. data/vendor/assets/components/raphael/dev/test/vml/dom.js +5 -0
  718. data/vendor/assets/components/raphael/license.txt +21 -0
  719. data/vendor/assets/components/raphael/raphael.js +8330 -0
  720. data/vendor/assets/components/raphael/raphael.min.js +3 -0
  721. data/vendor/assets/components/raphael/raphael.no-deps.js +7959 -0
  722. data/vendor/assets/components/raphael/raphael.no-deps.min.js +3 -0
  723. data/vendor/assets/components/raphael/webpack.config.js +62 -0
  724. data/vendor/assets/components/squire-rte/.bower.json +34 -0
  725. data/vendor/assets/components/squire-rte/Demo.html +143 -0
  726. data/vendor/assets/components/squire-rte/LICENSE +21 -0
  727. data/vendor/assets/components/squire-rte/Makefile +22 -0
  728. data/vendor/assets/components/squire-rte/README.md +473 -0
  729. data/vendor/assets/components/squire-rte/bower.json +24 -0
  730. data/vendor/assets/components/squire-rte/build/document.html +54 -0
  731. data/vendor/assets/components/squire-rte/build/squire-raw.js +4722 -0
  732. data/vendor/assets/components/squire-rte/build/squire.js +2 -0
  733. data/vendor/assets/components/squire-rte/package.json +31 -0
  734. data/vendor/assets/components/squire-rte/source/Clean.js +358 -0
  735. data/vendor/assets/components/squire-rte/source/Clipboard.js +331 -0
  736. data/vendor/assets/components/squire-rte/source/Constants.js +60 -0
  737. data/vendor/assets/components/squire-rte/source/Editor.js +2201 -0
  738. data/vendor/assets/components/squire-rte/source/KeyHandlers.js +502 -0
  739. data/vendor/assets/components/squire-rte/source/Node.js +553 -0
  740. data/vendor/assets/components/squire-rte/source/Range.js +540 -0
  741. data/vendor/assets/components/squire-rte/source/TreeWalker.js +118 -0
  742. data/vendor/assets/components/squire-rte/source/document.html +54 -0
  743. data/vendor/assets/components/squire-rte/source/exports.js +42 -0
  744. data/vendor/assets/components/squire-rte/source/intro.js +6 -0
  745. data/vendor/assets/components/squire-rte/source/outro.js +22 -0
  746. data/vendor/assets/components/to-mark/.bower.json +35 -0
  747. data/vendor/assets/components/to-mark/bower.json +22 -0
  748. data/vendor/assets/components/to-mark/demo/demo.html +24 -0
  749. data/vendor/assets/components/to-mark/demo/demo2.html +94 -0
  750. data/vendor/assets/components/to-mark/dist/to-mark.js +1283 -0
  751. data/vendor/assets/components/to-mark/dist/to-mark.min.js +1 -0
  752. data/vendor/assets/components/to-mark/gulpfile.js +112 -0
  753. data/vendor/assets/components/to-mark/karma.conf.js +260 -0
  754. data/vendor/assets/components/to-mark/package-lock.json +13061 -0
  755. data/vendor/assets/components/to-mark/package.json +53 -0
  756. data/vendor/assets/components/tui-chart/.bower.json +44 -0
  757. data/vendor/assets/components/tui-chart/CODE_OF_CONDUCT.md +73 -0
  758. data/vendor/assets/components/tui-chart/CONTRIBUTING.md +91 -0
  759. data/vendor/assets/components/tui-chart/LICENSE +21 -0
  760. data/vendor/assets/components/tui-chart/README.md +142 -0
  761. data/vendor/assets/components/tui-chart/bower.json +33 -0
  762. data/vendor/assets/components/tui-chart/dist/maps/china.js +10 -0
  763. data/vendor/assets/components/tui-chart/dist/maps/japan.js +10 -0
  764. data/vendor/assets/components/tui-chart/dist/maps/singapore.js +10 -0
  765. data/vendor/assets/components/tui-chart/dist/maps/south-korea.js +10 -0
  766. data/vendor/assets/components/tui-chart/dist/maps/taiwan.js +10 -0
  767. data/vendor/assets/components/tui-chart/dist/maps/thailand.js +10 -0
  768. data/vendor/assets/components/tui-chart/dist/maps/usa.js +10 -0
  769. data/vendor/assets/components/tui-chart/dist/maps/world.js +11 -0
  770. data/vendor/assets/components/tui-chart/dist/tui-chart.css +704 -0
  771. data/vendor/assets/components/tui-chart/dist/tui-chart.js +40567 -0
  772. data/vendor/assets/components/tui-chart/dist/tui-chart.min.css +10 -0
  773. data/vendor/assets/components/tui-chart/dist/tui-chart.min.js +20 -0
  774. data/vendor/assets/components/tui-chart/docs/COMMIT_MESSAGE_CONVENTION.md +49 -0
  775. data/vendor/assets/components/tui-chart/docs/ISSUE_TEMPLATE.md +24 -0
  776. data/vendor/assets/components/tui-chart/docs/PULL_REQUEST_TEMPLATE.md +42 -0
  777. data/vendor/assets/components/tui-chart/docs/README.md +11 -0
  778. data/vendor/assets/components/tui-chart/docs/wiki/README.md +27 -0
  779. data/vendor/assets/components/tui-chart/docs/wiki/_Sidebar.md +31 -0
  780. data/vendor/assets/components/tui-chart/docs/wiki/chart-export-menu.md +66 -0
  781. data/vendor/assets/components/tui-chart/docs/wiki/chart-type-radial.md +121 -0
  782. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-bar,column.md +312 -0
  783. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-bubble.md +63 -0
  784. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-column-line-combo.md +104 -0
  785. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-heatmap.md +39 -0
  786. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-line,area.md +333 -0
  787. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-line-area-combo.md +78 -0
  788. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-line-scatter-combo.md +101 -0
  789. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-map.md +153 -0
  790. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-pie-donut-combo.md +98 -0
  791. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-pie.md +186 -0
  792. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-scatter.md +58 -0
  793. data/vendor/assets/components/tui-chart/docs/wiki/chart-types-treemap.md +158 -0
  794. data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-china-map.md +38 -0
  795. data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-japan-map.md +51 -0
  796. data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-singapore-map.md +9 -0
  797. data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-south-korea-map.md +21 -0
  798. data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-taiwan-map.md +26 -0
  799. data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-thailand-map.md +82 -0
  800. data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-usa-map.md +55 -0
  801. data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-world-map.md +180 -0
  802. data/vendor/assets/components/tui-chart/docs/wiki/features-axes.md +209 -0
  803. data/vendor/assets/components/tui-chart/docs/wiki/features-chart.md +157 -0
  804. data/vendor/assets/components/tui-chart/docs/wiki/features-circle-legend.md +20 -0
  805. data/vendor/assets/components/tui-chart/docs/wiki/features-legend.md +89 -0
  806. data/vendor/assets/components/tui-chart/docs/wiki/features-plot.md +141 -0
  807. data/vendor/assets/components/tui-chart/docs/wiki/features-series.md +240 -0
  808. data/vendor/assets/components/tui-chart/docs/wiki/features-tooltip.md +223 -0
  809. data/vendor/assets/components/tui-chart/docs/wiki/getting-started.md +74 -0
  810. data/vendor/assets/components/tui-chart/docs/wiki/import-chart-data-from-existing-table-element.md +150 -0
  811. data/vendor/assets/components/tui-chart/docs/wiki/table-of-supported-options.md +344 -0
  812. data/vendor/assets/components/tui-chart/docs/wiki/theme.md +338 -0
  813. data/vendor/assets/components/tui-chart/package-lock.json +8881 -0
  814. data/vendor/assets/components/tui-code-snippet/.bower.json +31 -0
  815. data/vendor/assets/components/tui-code-snippet/LICENSE +21 -0
  816. data/vendor/assets/components/tui-code-snippet/README.md +109 -0
  817. data/vendor/assets/components/tui-code-snippet/bower.json +20 -0
  818. data/vendor/assets/components/tui-code-snippet/demo/postBridge/README.md +26 -0
  819. data/vendor/assets/components/tui-code-snippet/demo/postBridge/public/popup.html +27 -0
  820. data/vendor/assets/components/tui-code-snippet/demo/postBridge/public/postBridge.html +31 -0
  821. data/vendor/assets/components/tui-code-snippet/demo/postBridge/server.js +28 -0
  822. data/vendor/assets/components/tui-code-snippet/dist/tui-code-snippet.js +4228 -0
  823. data/vendor/assets/components/tui-code-snippet/dist/tui-code-snippet.min.js +7 -0
  824. data/vendor/assets/components/tui-code-snippet/package-lock.json +6038 -0
  825. data/vendor/assets/components/tui-color-picker/.bower.json +37 -0
  826. data/vendor/assets/components/tui-color-picker/ISSUE_TEMPLATE.md +26 -0
  827. data/vendor/assets/components/tui-color-picker/LICENSE +34 -0
  828. data/vendor/assets/components/tui-color-picker/README.md +69 -0
  829. data/vendor/assets/components/tui-color-picker/bower.json +26 -0
  830. data/vendor/assets/components/tui-color-picker/dist/tui-color-picker.css +148 -0
  831. data/vendor/assets/components/tui-color-picker/dist/tui-color-picker.js +3146 -0
  832. data/vendor/assets/components/tui-color-picker/dist/tui-color-picker.min.css +7 -0
  833. data/vendor/assets/components/tui-color-picker/dist/tui-color-picker.min.js +9 -0
  834. data/vendor/assets/components/tui-color-picker/package-lock.json +8440 -0
  835. data/vendor/assets/components/tui-editor/.bower.json +71 -0
  836. data/vendor/assets/components/tui-editor/CODE_OF_CONDUCT.md +73 -0
  837. data/vendor/assets/components/tui-editor/CONTRIBUTING.md +92 -0
  838. data/vendor/assets/components/tui-editor/LICENSE +21 -0
  839. data/vendor/assets/components/tui-editor/README.md +204 -0
  840. data/vendor/assets/components/tui-editor/bower.json +59 -0
  841. data/vendor/assets/components/tui-editor/dist/tui-editor-Editor-all.js +36850 -0
  842. data/vendor/assets/components/tui-editor/dist/tui-editor-Editor-all.min.js +13 -0
  843. data/vendor/assets/components/tui-editor/dist/tui-editor-Editor.js +24646 -0
  844. data/vendor/assets/components/tui-editor/dist/tui-editor-Editor.min.js +7 -0
  845. data/vendor/assets/components/tui-editor/dist/tui-editor-Viewer-all.js +14768 -0
  846. data/vendor/assets/components/tui-editor/dist/tui-editor-Viewer-all.min.js +13 -0
  847. data/vendor/assets/components/tui-editor/dist/tui-editor-Viewer.js +3686 -0
  848. data/vendor/assets/components/tui-editor/dist/tui-editor-Viewer.min.js +7 -0
  849. data/vendor/assets/components/tui-editor/dist/tui-editor-contents.css +239 -0
  850. data/vendor/assets/components/tui-editor/dist/tui-editor-contents.min.css +1 -0
  851. data/vendor/assets/components/tui-editor/dist/tui-editor-extChart.js +7040 -0
  852. data/vendor/assets/components/tui-editor/dist/tui-editor-extChart.min.js +13 -0
  853. data/vendor/assets/components/tui-editor/dist/tui-editor-extColorSyntax.js +472 -0
  854. data/vendor/assets/components/tui-editor/dist/tui-editor-extColorSyntax.min.js +7 -0
  855. data/vendor/assets/components/tui-editor/dist/tui-editor-extScrollSync.js +1241 -0
  856. data/vendor/assets/components/tui-editor/dist/tui-editor-extScrollSync.min.js +7 -0
  857. data/vendor/assets/components/tui-editor/dist/tui-editor-extTable.js +3930 -0
  858. data/vendor/assets/components/tui-editor/dist/tui-editor-extTable.min.js +7 -0
  859. data/vendor/assets/components/tui-editor/dist/tui-editor-extUML.js +212 -0
  860. data/vendor/assets/components/tui-editor/dist/tui-editor-extUML.min.js +7 -0
  861. data/vendor/assets/components/tui-editor/dist/tui-editor.css +1166 -0
  862. data/vendor/assets/components/tui-editor/dist/tui-editor.min.css +1 -0
  863. data/vendor/assets/components/tui-editor/docs/COMMIT_MESSAGE_CONVENTION.md +49 -0
  864. data/vendor/assets/components/tui-editor/docs/PULL_REQUEST_TEMPLATE.md +41 -0
  865. data/vendor/assets/components/tui-editor/docs/README.md +13 -0
  866. data/vendor/assets/components/tui-editor/docs/getting-started-with-bower.md +93 -0
  867. data/vendor/assets/components/tui-editor/docs/getting-started.md +76 -0
  868. data/vendor/assets/components/tui-editor/docs/using-extensions.md +91 -0
  869. data/vendor/assets/components/tui-editor/docs/writing-your-own-extension.md +167 -0
  870. data/vendor/assets/components/tui-editor/examples/example00-demo.html +85 -0
  871. data/vendor/assets/components/tui-editor/examples/example01-basic.html +37 -0
  872. data/vendor/assets/components/tui-editor/examples/example02-viewer-basic.html +68 -0
  873. data/vendor/assets/components/tui-editor/examples/example03-jquery.html +36 -0
  874. data/vendor/assets/components/tui-editor/examples/example04-viewer-jquery.html +67 -0
  875. data/vendor/assets/components/tui-editor/examples/example05-scrollsync.html +77 -0
  876. data/vendor/assets/components/tui-editor/examples/example06-colorsyntax.html +44 -0
  877. data/vendor/assets/components/tui-editor/examples/example07-table.html +48 -0
  878. data/vendor/assets/components/tui-editor/examples/example08-uml.html +69 -0
  879. data/vendor/assets/components/tui-editor/examples/example09-multiple-extensions.html +85 -0
  880. data/vendor/assets/components/tui-editor/examples/example10-viewer-multiple-extensions.html +86 -0
  881. data/vendor/assets/components/tui-editor/examples/example11-chart.html +60 -0
  882. data/vendor/assets/components/tui-editor/examples/example12-writing-extension.html +66 -0
  883. data/vendor/assets/components/tui-editor/examples/examples.json +41 -0
  884. data/vendor/assets/components/tui-editor/examples/explain.css +7 -0
  885. data/vendor/assets/components/tui-editor/package-lock.json +13289 -0
  886. data/vendor/assets/components/tui-editor/package.json +90 -0
  887. metadata +956 -0
@@ -0,0 +1,7 @@
1
+ /*!
2
+ * tui-editor
3
+ * @version 1.0.2
4
+ * @author NHN Ent. FE Development Lab <dl_javascript@nhnent.com> (https://nhnent.github.io/tui.editor/)
5
+ * @license MIT
6
+ */
7
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("jquery"),function(){try{return require("tui-editor")}catch(e){}}(),function(){try{return require("tui-editor/dist/tui-editor-Viewer")}catch(e){}}(),require("tui-color-picker"));else if("function"==typeof define&&define.amd)define(["jquery","tui-editor","tui-editor/dist/tui-editor-Viewer","tui-color-picker"],t);else{var o="object"==typeof exports?t(require("jquery"),function(){try{return require("tui-editor")}catch(e){}}(),function(){try{return require("tui-editor/dist/tui-editor-Viewer")}catch(e){}}(),require("tui-color-picker")):t(e.$,e.tui&&e.tui.Editor,e.tui&&e.tui.Editor,e.tui&&e.tui.colorPicker);for(var r in o)("object"==typeof exports?exports:e)[r]=o[r]}}("undefined"!=typeof self?self:this,function(e,t,o,r){return function(e){function t(r){if(o[r])return o[r].exports;var n=o[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,t),n.l=!0,n.exports}var o={};return t.m=e,t.c=o,t.d=function(e,o,r){t.o(e,o)||Object.defineProperty(e,o,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(o,"a",o),o},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="dist/",t(t.s=44)}({0:function(t,o){t.exports=e},1:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=void 0;try{r=o(4)}catch(e){}if(!r)try{r=o(5)}catch(e){}t.default=r},4:function(e,o){if(void 0===t){var r=new Error('Cannot find module "undefined"');throw r.code="MODULE_NOT_FOUND",r}e.exports=t},44:function(e,t,o){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function n(e){var t=e.options.colorSyntax,o=void 0===t?{}:t,r=o.preset,n=o.useCustomSyntax,l=void 0!==n&&n;e.eventManager.listen("convertorAfterMarkdownToHtmlConverted",function(e){return l?e.replace(m,function(e,t,o){return c(o,t).result}):e}),e.eventManager.listen("convertorAfterHtmlToMarkdownConverted",function(e){var t=l?b:x;return e.replace(t,function(e,t,o){return t.match(w)&&(t=a(t)),l?u(o,t).result:e.replace(/ ?class="colour" ?/g," ").replace(w,t)})}),e.isViewer()||"default"!==e.getUI().name||(e.addCommand("markdown",{name:"color",exec:function(e,t){var o=e.getEditor(),r=o.getCursor("from"),n=o.getCursor("to"),i=void 0,a=void 0;if(t){if(l){var s=u(o.getSelection(),t);i=s.result,a=s.from,o.replaceSelection(i)}else{var f=c(o.getSelection(),t);i=f.result,a=f.from,o.replaceSelection(i)}o.setSelection({line:r.line,ch:r.ch+a},{line:n.line,ch:r.line===n.line?n.ch+a:n.ch}),e.focus()}}}),e.addCommand("wysiwyg",{name:"color",exec:function(e,t){var o=e.getEditor();t&&(o.hasFormat("PRE")||(t===C?o.changeFormat(null,{class:"colour",tag:"span"}):o.setTextColour(t)),e.focus())}}),i(e,r))}function i(e,t){var o=e.i18n;e.eventManager.addEventType("colorButtonClicked"),e.getUI().toolbar.addButton({className:"tui-color",event:"colorButtonClicked",tooltip:o.get("Text color")},4);var r=e.getUI().toolbar.$el.find("button.tui-color"),n=(0,p.default)("<div />"),i=(0,p.default)('<button type="button" class="te-apply-button">입력</button>'),u={container:n[0]};t&&(u.preset=t);var c=g.default.create(u),l=c.getColor();n.append(i);var a=e.getUI().createPopup({header:!1,title:!1,content:n,className:"tui-popup-color",$target:e.getUI().$el,css:{width:"auto",position:"absolute"}});e.eventManager.listen("focus",function(){a.hide()}),e.eventManager.listen("colorButtonClicked",function(){if(e.eventManager.emit("closeAllPopup"),a.isShow())a.hide();else{var t=r.position();a.$el.css({top:t.top+r.outerHeight(!0),left:t.left}),a.show(),c.slider.toggle(!0)}}),e.eventManager.listen("closeAllPopup",function(){a.hide()}),e.eventManager.listen("removeEditor",function(){c.off("selectColor")}),c.on("selectColor",function(t){l=t.color,"palette"===t.origin&&(e.exec("color",l),a.hide())}),a.$el.find(".te-apply-button").on("click",function(){e.exec("color",l)})}function u(e,t){return l("{color:"+t+"}",e,"{color}")}function c(e,t){return l('<span style="color:'+t+'">',e,"</span>")}function l(e,t,o){return{result:""+e+t+o,from:e.length,to:e.length+t.length}}function a(e){return e.replace(w,function(e,t,o,r){return"#"+s(t)+s(o)+s(r)})}function s(e){var t=parseInt(e,10);return t=t.toString(16),t=f(t)}function f(e){var t="00"+e;return t.substr(t.length-2)}Object.defineProperty(t,"__esModule",{value:!0});var d=o(0),p=r(d),v=o(45),g=r(v),y=o(1),h=r(y),m=/\{color:(.+?)}(.*?)\{color}/g,x=/<span (?:class="colour" )?style="color:(.+?)"(?: class="colour")?>(.*?)/g,b=/<span (?:class="colour" )?style="color:(.+?)"(?: class="colour")?>(.*?)<\/span>/g,w=/rgb\((\d+)[, ]+(\d+)[, ]+(\d+)\)/g,C="#181818";h.default.defineExtension("colorSyntax",n),t.default=n},45:function(e,t){e.exports=r},5:function(e,t){if(void 0===o){var r=new Error('Cannot find module "undefined"');throw r.code="MODULE_NOT_FOUND",r}e.exports=o}})});
@@ -0,0 +1,1241 @@
1
+ /*!
2
+ * tui-editor
3
+ * @version 1.0.2
4
+ * @author NHN Ent. FE Development Lab <dl_javascript@nhnent.com> (https://nhnent.github.io/tui.editor/)
5
+ * @license MIT
6
+ */
7
+ (function webpackUniversalModuleDefinition(root, factory) {
8
+ if(typeof exports === 'object' && typeof module === 'object')
9
+ module.exports = factory(require("jquery"), require("tui-code-snippet"), (function webpackLoadOptionalExternalModule() { try { return require("tui-editor"); } catch(e) {} }()), (function webpackLoadOptionalExternalModule() { try { return require("tui-editor/dist/tui-editor-Viewer"); } catch(e) {} }()));
10
+ else if(typeof define === 'function' && define.amd)
11
+ define(["jquery", "tui-code-snippet", "tui-editor", "tui-editor/dist/tui-editor-Viewer"], factory);
12
+ else {
13
+ var a = typeof exports === 'object' ? factory(require("jquery"), require("tui-code-snippet"), (function webpackLoadOptionalExternalModule() { try { return require("tui-editor"); } catch(e) {} }()), (function webpackLoadOptionalExternalModule() { try { return require("tui-editor/dist/tui-editor-Viewer"); } catch(e) {} }())) : factory(root["$"], (root["tui"] && root["tui"]["util"]), (root["tui"] && root["tui"]["Editor"]), (root["tui"] && root["tui"]["Editor"]));
14
+ for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
15
+ }
16
+ })(typeof self !== 'undefined' ? self : this, function(__WEBPACK_EXTERNAL_MODULE_0__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_4__, __WEBPACK_EXTERNAL_MODULE_5__) {
17
+ return /******/ (function(modules) { // webpackBootstrap
18
+ /******/ // The module cache
19
+ /******/ var installedModules = {};
20
+ /******/
21
+ /******/ // The require function
22
+ /******/ function __webpack_require__(moduleId) {
23
+ /******/
24
+ /******/ // Check if module is in cache
25
+ /******/ if(installedModules[moduleId]) {
26
+ /******/ return installedModules[moduleId].exports;
27
+ /******/ }
28
+ /******/ // Create a new module (and put it into the cache)
29
+ /******/ var module = installedModules[moduleId] = {
30
+ /******/ i: moduleId,
31
+ /******/ l: false,
32
+ /******/ exports: {}
33
+ /******/ };
34
+ /******/
35
+ /******/ // Execute the module function
36
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
37
+ /******/
38
+ /******/ // Flag the module as loaded
39
+ /******/ module.l = true;
40
+ /******/
41
+ /******/ // Return the exports of the module
42
+ /******/ return module.exports;
43
+ /******/ }
44
+ /******/
45
+ /******/
46
+ /******/ // expose the modules object (__webpack_modules__)
47
+ /******/ __webpack_require__.m = modules;
48
+ /******/
49
+ /******/ // expose the module cache
50
+ /******/ __webpack_require__.c = installedModules;
51
+ /******/
52
+ /******/ // define getter function for harmony exports
53
+ /******/ __webpack_require__.d = function(exports, name, getter) {
54
+ /******/ if(!__webpack_require__.o(exports, name)) {
55
+ /******/ Object.defineProperty(exports, name, {
56
+ /******/ configurable: false,
57
+ /******/ enumerable: true,
58
+ /******/ get: getter
59
+ /******/ });
60
+ /******/ }
61
+ /******/ };
62
+ /******/
63
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
64
+ /******/ __webpack_require__.n = function(module) {
65
+ /******/ var getter = module && module.__esModule ?
66
+ /******/ function getDefault() { return module['default']; } :
67
+ /******/ function getModuleExports() { return module; };
68
+ /******/ __webpack_require__.d(getter, 'a', getter);
69
+ /******/ return getter;
70
+ /******/ };
71
+ /******/
72
+ /******/ // Object.prototype.hasOwnProperty.call
73
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
74
+ /******/
75
+ /******/ // __webpack_public_path__
76
+ /******/ __webpack_require__.p = "dist/";
77
+ /******/
78
+ /******/ // Load entry module and return exports
79
+ /******/ return __webpack_require__(__webpack_require__.s = 46);
80
+ /******/ })
81
+ /************************************************************************/
82
+ /******/ ({
83
+
84
+ /***/ 0:
85
+ /***/ (function(module, exports) {
86
+
87
+ module.exports = __WEBPACK_EXTERNAL_MODULE_0__;
88
+
89
+ /***/ }),
90
+
91
+ /***/ 1:
92
+ /***/ (function(module, exports, __webpack_require__) {
93
+
94
+ "use strict";
95
+
96
+
97
+ Object.defineProperty(exports, "__esModule", {
98
+ value: true
99
+ });
100
+ /**
101
+ * @fileoverview Editor/Viewer proxy for extensions
102
+ * @author NHN Ent. FE Development Lab <dl_javascript@nhnent.com>
103
+ */
104
+ /* eslint global-require: 0 no-empty: 0 */
105
+
106
+ var Editor = void 0;
107
+ try {
108
+ Editor = __webpack_require__(4);
109
+ } catch (e) {}
110
+ if (!Editor) {
111
+ try {
112
+ Editor = __webpack_require__(5);
113
+ } catch (e) {}
114
+ }
115
+
116
+ exports.default = Editor;
117
+
118
+ /***/ }),
119
+
120
+ /***/ 2:
121
+ /***/ (function(module, exports) {
122
+
123
+ module.exports = __WEBPACK_EXTERNAL_MODULE_2__;
124
+
125
+ /***/ }),
126
+
127
+ /***/ 4:
128
+ /***/ (function(module, exports) {
129
+
130
+ if(typeof __WEBPACK_EXTERNAL_MODULE_4__ === 'undefined') {var e = new Error("Cannot find module \"undefined\""); e.code = 'MODULE_NOT_FOUND'; throw e;}
131
+ module.exports = __WEBPACK_EXTERNAL_MODULE_4__;
132
+
133
+ /***/ }),
134
+
135
+ /***/ 46:
136
+ /***/ (function(module, exports, __webpack_require__) {
137
+
138
+ "use strict";
139
+
140
+
141
+ Object.defineProperty(exports, "__esModule", {
142
+ value: true
143
+ });
144
+
145
+ var _jquery = __webpack_require__(0);
146
+
147
+ var _jquery2 = _interopRequireDefault(_jquery);
148
+
149
+ var _editorProxy = __webpack_require__(1);
150
+
151
+ var _editorProxy2 = _interopRequireDefault(_editorProxy);
152
+
153
+ var _scrollManager = __webpack_require__(47);
154
+
155
+ var _scrollManager2 = _interopRequireDefault(_scrollManager);
156
+
157
+ var _sectionManager = __webpack_require__(48);
158
+
159
+ var _sectionManager2 = _interopRequireDefault(_sectionManager);
160
+
161
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
162
+
163
+ /**
164
+ * @fileoverview Implements Scroll Sync Extension
165
+ * @author NHN Ent. FE Development Lab <dl_javascript@nhnent.com>
166
+ */
167
+ var Button = _editorProxy2.default.Button;
168
+
169
+ /**
170
+ * scrollSync plugin
171
+ * @param {Editor} editor - editor
172
+ * @ignore
173
+ */
174
+
175
+ function scrollSyncExtension(editor) {
176
+ var className = 'tui-scrollsync';
177
+ var i18n = editor.i18n;
178
+ var TOOL_TIP = {
179
+ active: i18n.get('Auto scroll enabled'),
180
+ inActive: i18n.get('Auto scroll disabled')
181
+ };
182
+
183
+ if (editor.isViewer()) {
184
+ return;
185
+ }
186
+
187
+ var cm = editor.getCodeMirror();
188
+ var sectionManager = new _sectionManager2.default(cm, editor.preview);
189
+ var scrollManager = new _scrollManager2.default(sectionManager, cm, editor.preview.$el);
190
+
191
+ var isScrollable = false;
192
+ var isActive = true;
193
+ var button = void 0;
194
+ var $divider = void 0;
195
+
196
+ // UI
197
+ if (editor.getUI().name === 'default') {
198
+ // init button
199
+ button = new Button({
200
+ className: className,
201
+ command: 'scrollSyncToggle',
202
+ tooltip: TOOL_TIP.active,
203
+ $el: (0, _jquery2.default)('<button class="active ' + className + '" type="button"></button>')
204
+ });
205
+
206
+ $divider = editor.getUI().toolbar.addDivider();
207
+ editor.getUI().toolbar.addButton(button);
208
+
209
+ changeButtonVisiblityStateIfNeed();
210
+ // hide scroll follow button in wysiwyg
211
+ editor.on('changeMode', changeButtonVisiblityStateIfNeed);
212
+ editor.on('changePreviewStyle', changeButtonVisiblityStateIfNeed);
213
+
214
+ // Commands
215
+ editor.addCommand('markdown', {
216
+ name: 'scrollSyncToggle',
217
+ exec: function exec() {
218
+ isActive = !isActive;
219
+ button._onOut();
220
+ if (isActive) {
221
+ button.$el.addClass('active');
222
+ button.tooltip = TOOL_TIP.active;
223
+ } else {
224
+ button.$el.removeClass('active');
225
+ button.tooltip = TOOL_TIP.inActive;
226
+ }
227
+ button._onOver();
228
+ }
229
+ });
230
+ }
231
+
232
+ // Events
233
+ cm.on('change', function () {
234
+ isScrollable = false;
235
+ sectionManager.makeSectionList();
236
+ });
237
+
238
+ /**
239
+ * change button visiblity state
240
+ */
241
+ function changeButtonVisiblityStateIfNeed() {
242
+ if (editor.mdPreviewStyle === 'vertical' && editor.currentMode === 'markdown') {
243
+ button.$el.show();
244
+ $divider.show();
245
+ } else {
246
+ button.$el.hide();
247
+ $divider.hide();
248
+ }
249
+ }
250
+
251
+ editor.on('previewRenderAfter', function () {
252
+ sectionManager.sectionMatch();
253
+ scrollManager.syncPreviewScrollTopToMarkdown();
254
+ isScrollable = true;
255
+ });
256
+
257
+ editor.eventManager.listen('scroll', function (event) {
258
+ if (!isActive) {
259
+ return;
260
+ }
261
+
262
+ if (isScrollable && editor.preview.isVisible()) {
263
+ if (event.source === 'markdown' && !scrollManager.isMarkdownScrollEventBlocked) {
264
+ scrollManager.syncPreviewScrollTopToMarkdown();
265
+ } else if (event.source === 'preview' && !scrollManager.isPreviewScrollEventBlocked) {
266
+ scrollManager.syncMarkdownScrollTopToPreview();
267
+ }
268
+ } else {
269
+ scrollManager.saveScrollInfo();
270
+ }
271
+ });
272
+ }
273
+
274
+ _editorProxy2.default.defineExtension('scrollSync', scrollSyncExtension);
275
+
276
+ exports.default = scrollSyncExtension;
277
+
278
+ /***/ }),
279
+
280
+ /***/ 47:
281
+ /***/ (function(module, exports, __webpack_require__) {
282
+
283
+ "use strict";
284
+
285
+
286
+ Object.defineProperty(exports, "__esModule", {
287
+ value: true
288
+ });
289
+
290
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /**
291
+ * @fileoverview Implements Scroll Sync Extension ScrollManager Module
292
+ * @author NHN Ent. FE Development Lab <dl_javascript@nhnent.com>
293
+ */
294
+
295
+
296
+ var _tuiCodeSnippet = __webpack_require__(2);
297
+
298
+ var _tuiCodeSnippet2 = _interopRequireDefault(_tuiCodeSnippet);
299
+
300
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
301
+
302
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
303
+
304
+ var PREVIEW_MARGIN_TOP = 57;
305
+ var SCROLL_TOP_PADDING = 20;
306
+ var SCROLL_BOCKING_RESET_DELAY = 15;
307
+
308
+ /**
309
+ * Class ScrollManager
310
+ * manage scroll sync between markdown editor and preview
311
+ */
312
+
313
+ var ScrollManager = function () {
314
+ /**
315
+ * Creates an instance of ScrollManager.
316
+ * @param {SectionManager} sectionManager - sectionManager
317
+ * @param {CodeMirror} cm - CodeMirror
318
+ * @param {jQuery} $previewContainerEl - preview container
319
+ * @memberof ScrollManager
320
+ */
321
+ function ScrollManager(sectionManager, cm, $previewContainerEl) {
322
+ _classCallCheck(this, ScrollManager);
323
+
324
+ this.sectionManager = sectionManager;
325
+ this.cm = cm;
326
+ this.$previewContainerEl = $previewContainerEl;
327
+ this.$contents = this.$previewContainerEl.find('.tui-editor-contents');
328
+ this.releaseTimer = null;
329
+ /**
330
+ * current timeout id needs animation
331
+ * @type {number}
332
+ */
333
+ this._currentTimeoutId = null;
334
+
335
+ /**
336
+ * Saved scrollInfo object of CodeMirror
337
+ * @type {object}
338
+ */
339
+ this._savedScrollInfo = null;
340
+ }
341
+
342
+ /**
343
+ * _getEditorSectionHeight
344
+ * Return section height of editor
345
+ * @param {object} section section be calculated height
346
+ * @returns {number} height
347
+ * @private
348
+ */
349
+
350
+
351
+ _createClass(ScrollManager, [{
352
+ key: '_getEditorSectionHeight',
353
+ value: function _getEditorSectionHeight(section) {
354
+ var height = this.cm.heightAtLine(section.end, 'local');
355
+ height -= this.cm.heightAtLine(section.start > 0 ? section.start - 1 : 0, 'local');
356
+
357
+ return height;
358
+ }
359
+
360
+ /**
361
+ * _getLineHeightGapInSection
362
+ * Return height gap between passed line in passed section
363
+ * @param {object} section section be calculated
364
+ * @param {number} line line number
365
+ * @returns {number} gap
366
+ * @private
367
+ */
368
+
369
+ }, {
370
+ key: '_getEditorLineHeightGapInSection',
371
+ value: function _getEditorLineHeightGapInSection(section, line) {
372
+ var gap = this.cm.heightAtLine(line, 'local');
373
+ gap -= this.cm.heightAtLine(section.start > 0 ? section.start - 1 : 0, 'local');
374
+
375
+ return Math.max(gap, 0);
376
+ }
377
+
378
+ /**
379
+ * _getSectionScrollRatio
380
+ * Return ratio of height between scrollTop line and scrollTop section
381
+ * @param {object} section section be calculated
382
+ * @param {number} line line number
383
+ * @returns {number} ratio
384
+ * @private
385
+ */
386
+
387
+ }, {
388
+ key: '_getEditorSectionScrollRatio',
389
+ value: function _getEditorSectionScrollRatio(section, line) {
390
+ var isOneLine = section.end === section.start;
391
+ var ratio = void 0;
392
+
393
+ if (isOneLine) {
394
+ ratio = 0;
395
+ } else {
396
+ ratio = this._getEditorLineHeightGapInSection(section, line) / this._getEditorSectionHeight(section);
397
+ }
398
+
399
+ return ratio;
400
+ }
401
+
402
+ /**
403
+ * _getScrollFactorsOfEditor
404
+ * Return Scroll Information of editor for preview scroll sync
405
+ * @returns {object} scroll factors
406
+ * @private
407
+ */
408
+
409
+ }, {
410
+ key: '_getScrollFactorsOfEditor',
411
+ value: function _getScrollFactorsOfEditor() {
412
+ var cm = this.cm;
413
+
414
+ var scrollInfo = cm.getScrollInfo();
415
+ var topLine = void 0,
416
+ topSection = void 0,
417
+ ratio = void 0,
418
+ factors = void 0;
419
+
420
+ // if codemirror has not visible scrollInfo have incorrect value
421
+ // so we use saved scroll info for alternative
422
+ scrollInfo = this._fallbackScrollInfoIfIncorrect(scrollInfo);
423
+
424
+ var isEditorBottom = scrollInfo.height - scrollInfo.top <= scrollInfo.clientHeight;
425
+
426
+ if (isEditorBottom) {
427
+ factors = {
428
+ isEditorBottom: isEditorBottom
429
+ };
430
+ } else {
431
+ topLine = cm.coordsChar({
432
+ left: scrollInfo.left,
433
+ top: scrollInfo.top
434
+ }, 'local').line;
435
+
436
+ topSection = this.sectionManager.sectionByLine(topLine);
437
+
438
+ ratio = this._getEditorSectionScrollRatio(topSection, topLine);
439
+
440
+ factors = {
441
+ section: topSection,
442
+ sectionRatio: ratio
443
+ };
444
+ }
445
+
446
+ return factors;
447
+ }
448
+
449
+ /**
450
+ * Return Scroll Information of editor for Markdown scroll sync
451
+ * @returns {object} scroll factors
452
+ * @private
453
+ */
454
+
455
+ }, {
456
+ key: '_getScrollInfoForMarkdown',
457
+ value: function _getScrollInfoForMarkdown() {
458
+ var _this = this;
459
+
460
+ var sectionList = this.sectionManager.getSectionList();
461
+ var factors = void 0;
462
+
463
+ _tuiCodeSnippet2.default.forEachArray(sectionList, function (section) {
464
+ var $div = section.$previewSectionEl;
465
+ var $preview = $div.parent().parent();
466
+ var isPreviewBottom = $preview[0].clientHeight - $preview.scrollTop() <= $preview[0].height;
467
+ var needNext = true;
468
+
469
+ if (isPreviewBottom) {
470
+ factors = {
471
+ isPreviewBottom: isPreviewBottom
472
+ };
473
+ needNext = false;
474
+ } else if (_this._isTopSection($preview, $div)) {
475
+ factors = {
476
+ section: section,
477
+ sectionRatio: _this._getMarkdownEditorScrollRatio($preview, $div)
478
+ };
479
+ needNext = false;
480
+ }
481
+
482
+ return needNext;
483
+ });
484
+
485
+ return factors;
486
+ }
487
+
488
+ /**
489
+ * Return ScrollRatio for Markdown scroll value
490
+ * @param {jQuery} $preview jQuery wrapped preview container
491
+ * @param {jQuery} $div jQuery wrapped section div element
492
+ * @returns {number}
493
+ * @private
494
+ */
495
+
496
+ }, {
497
+ key: '_getMarkdownEditorScrollRatio',
498
+ value: function _getMarkdownEditorScrollRatio($preview, $div) {
499
+ return ($preview.scrollTop() - $div[0].offsetTop) / $div.height();
500
+ }
501
+
502
+ /**
503
+ * _getScrollTopForPreview
504
+ * Return scrollTop value for preview
505
+ * @returns {number|undefined} scrollTop value, when something wrong then return undefined
506
+ * @private
507
+ */
508
+
509
+ }, {
510
+ key: '_getScrollTopForPreview',
511
+ value: function _getScrollTopForPreview() {
512
+ var scrollTop = void 0;
513
+
514
+ var scrollFactors = this._getScrollFactorsOfEditor();
515
+ var section = scrollFactors.section,
516
+ sectionRatio = scrollFactors.sectionRatio;
517
+
518
+
519
+ if (scrollFactors.isEditorBottom) {
520
+ scrollTop = this.$contents.height();
521
+ } else if (section.$previewSectionEl) {
522
+ scrollTop = section.$previewSectionEl[0].offsetTop;
523
+ scrollTop += section.$previewSectionEl.height() * sectionRatio - SCROLL_TOP_PADDING;
524
+ }
525
+
526
+ scrollTop = scrollTop && Math.max(scrollTop, 0);
527
+
528
+ return scrollTop;
529
+ }
530
+
531
+ /**
532
+ * Return scrollTop value for Markdown editor
533
+ * @returns {number}
534
+ * @private
535
+ */
536
+
537
+ }, {
538
+ key: '_getScrollTopForMarkdown',
539
+ value: function _getScrollTopForMarkdown() {
540
+ var scrollTop = void 0;
541
+ var scrollFactors = this._getScrollInfoForMarkdown();
542
+ var ratio = scrollFactors.sectionRatio;
543
+
544
+ if (scrollFactors.isPreviewBottom) {
545
+ scrollTop = this.cm.getScrollInfo().height;
546
+ } else if (scrollFactors.section) {
547
+ var section = scrollFactors.section;
548
+
549
+ var coordsAtStart = this.cm.charCoords({
550
+ line: section.start,
551
+ char: 0
552
+ }, 'local');
553
+ var coordsAtEnd = this.cm.charCoords({
554
+ line: section.end,
555
+ char: 0
556
+ }, 'local');
557
+
558
+ scrollTop = coordsAtStart.top;
559
+ scrollTop += (coordsAtEnd.top - coordsAtStart.top) * ratio;
560
+ }
561
+
562
+ scrollTop = scrollTop && Math.max(scrollTop, 0);
563
+
564
+ return scrollTop;
565
+ }
566
+
567
+ /**
568
+ * syncPreviewScrollTopToMarkdown
569
+ * sync preview scroll to markdown
570
+ */
571
+
572
+ }, {
573
+ key: 'syncPreviewScrollTopToMarkdown',
574
+ value: function syncPreviewScrollTopToMarkdown() {
575
+ var _this2 = this;
576
+
577
+ var $previewContainerEl = this.$previewContainerEl;
578
+
579
+ var sourceScrollTop = $previewContainerEl.scrollTop();
580
+ var targetScrollTop = this._getScrollTopForPreview();
581
+
582
+ this.isPreviewScrollEventBlocked = true;
583
+
584
+ this._animateRun(sourceScrollTop, targetScrollTop, function (deltaScrollTop) {
585
+ clearTimeout(_this2.releaseTimer);
586
+
587
+ $previewContainerEl.scrollTop(deltaScrollTop);
588
+
589
+ _this2.releaseTimer = setTimeout(function () {
590
+ _this2.isPreviewScrollEventBlocked = false;
591
+ }, SCROLL_BOCKING_RESET_DELAY);
592
+ });
593
+ }
594
+
595
+ /**
596
+ * syncMarkdownScrollTopToPreview
597
+ * sync markdown scroll to preview
598
+ */
599
+
600
+ }, {
601
+ key: 'syncMarkdownScrollTopToPreview',
602
+ value: function syncMarkdownScrollTopToPreview() {
603
+ var _this3 = this;
604
+
605
+ var codeMirror = this.cm;
606
+ var codeMirrorScrollInfo = codeMirror.getScrollInfo();
607
+ var sourceScrollTop = codeMirrorScrollInfo.top;
608
+ var targetScrollTop = this._getScrollTopForMarkdown();
609
+
610
+ this.isMarkdownScrollEventBlocked = true;
611
+
612
+ this._animateRun(sourceScrollTop, targetScrollTop, function (deltaScrollTop) {
613
+ clearTimeout(_this3.releaseTimer);
614
+
615
+ codeMirror.scrollTo(0, deltaScrollTop);
616
+
617
+ _this3.releaseTimer = setTimeout(function () {
618
+ _this3.isMarkdownScrollEventBlocked = false;
619
+ }, SCROLL_BOCKING_RESET_DELAY);
620
+ });
621
+ }
622
+
623
+ /**
624
+ * _animateRun
625
+ * animate with passed Callback
626
+ * @param {number} originValue original value
627
+ * @param {number} targetValue target value
628
+ * @param {function} stepCB callback function
629
+ * @private
630
+ */
631
+
632
+ }, {
633
+ key: '_animateRun',
634
+ value: function _animateRun(originValue, targetValue, stepCB) {
635
+ var valueDiff = targetValue - originValue,
636
+ startTime = Date.now(),
637
+ self = this;
638
+
639
+ // if already doing animation
640
+ if (this._currentTimeoutId) {
641
+ clearTimeout(this._currentTimeoutId);
642
+ }
643
+
644
+ /**
645
+ * Each animation step
646
+ */
647
+ function step() {
648
+ var stepTime = Date.now();
649
+ var progress = (stepTime - startTime) / 200; // 200 is animation time
650
+ var deltaValue = void 0;
651
+
652
+ if (progress < 1) {
653
+ deltaValue = originValue + valueDiff * Math.cos((1 - progress) * Math.PI / 2);
654
+ stepCB(Math.ceil(deltaValue));
655
+ self._currentTimeoutId = setTimeout(step, 1);
656
+ } else {
657
+ stepCB(targetValue);
658
+ self._currentTimeoutId = null;
659
+ }
660
+ }
661
+
662
+ step();
663
+ }
664
+
665
+ /**
666
+ * Fallback to saved scrolInfo if incorrect scrollInfo passed
667
+ * this because incorrect CodeMirror returns scrollInfo if CodeMirror is invisible
668
+ * @param {object} scrollInfo scrollInfo
669
+ * @returns {object} scrollInfo
670
+ * @private
671
+ */
672
+
673
+ }, {
674
+ key: '_fallbackScrollInfoIfIncorrect',
675
+ value: function _fallbackScrollInfoIfIncorrect(scrollInfo) {
676
+ return scrollInfo.height < 0 && this._savedScrollInfo ? this._savedScrollInfo : scrollInfo;
677
+ }
678
+
679
+ /**
680
+ * Save Codemirror's scrollInfo for alternative use
681
+ * memberOf ScrollManager
682
+ */
683
+
684
+ }, {
685
+ key: 'saveScrollInfo',
686
+ value: function saveScrollInfo() {
687
+ this._savedScrollInfo = this.cm.getScrollInfo();
688
+ }
689
+
690
+ /**
691
+ * Return whether given range is top section of preview contents or not
692
+ * @param {jQuery} $preview jQuery wrapped preview container
693
+ * @param {jQuery} $div jQuery wrapped section div element
694
+ * @returns {boolean}
695
+ * @private
696
+ */
697
+
698
+ }, {
699
+ key: '_isTopSection',
700
+ value: function _isTopSection($preview, $div) {
701
+ var previewScrollTop = $preview.scrollTop();
702
+ var divOffsetTop = $div[0].offsetTop;
703
+ var divHeight = $div.height();
704
+ var isSectionBegin = previewScrollTop >= divOffsetTop - PREVIEW_MARGIN_TOP;
705
+ var isSectionEnd = previewScrollTop > divOffsetTop + divHeight;
706
+
707
+ return isSectionBegin && !isSectionEnd;
708
+ }
709
+ }]);
710
+
711
+ return ScrollManager;
712
+ }();
713
+
714
+ exports.default = ScrollManager;
715
+
716
+ /***/ }),
717
+
718
+ /***/ 48:
719
+ /***/ (function(module, exports, __webpack_require__) {
720
+
721
+ "use strict";
722
+
723
+
724
+ Object.defineProperty(exports, "__esModule", {
725
+ value: true
726
+ });
727
+
728
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /**
729
+ * @fileoverview Implements Scroll Sync Extension SectionManager Module
730
+ * @author NHN Ent. FE Development Lab <dl_javascript@nhnent.com>
731
+ */
732
+
733
+
734
+ var _jquery = __webpack_require__(0);
735
+
736
+ var _jquery2 = _interopRequireDefault(_jquery);
737
+
738
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
739
+
740
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
741
+
742
+ var FIND_HEADER_RX = /^ *(#{1,6}) +([^\n]+?) *#* *(?:\n+|$)/;
743
+ var FIND_LIST_RX = /^ *(\*|-|\d+\.|[*-] \[[ xX]])\s/;
744
+ var FIND_QUOTE_RX = /^ {0,3}(> ?)+\s/;
745
+ var FIND_IMAGE_RX = /^ {0,3}!\[([^[\]]*)]\(([^)]*)\)/;
746
+ var FIND_SETEXT_HEADER_RX = /^ *(?:={1,}|-{1,})\s*$/;
747
+ var FIND_CODEBLOCK_END_RX = /^ *(`{3,}|~{3,})[ ]*$/;
748
+ var FIND_CODEBLOCK_START_RX = /^ *(`{3,}|~{3,})[ .]*(\S+)? */;
749
+ var FIND_SPACE = /\s/g;
750
+
751
+ /**
752
+ * Class SectionManager
753
+ * manage logical markdown content sections
754
+ */
755
+
756
+ var SectionManager = function () {
757
+ /**
758
+ * Creates an instance of SectionManager.
759
+ * @param {CodeMirror} cm - codemirror
760
+ * @param {Preview} preview - preview
761
+ * @memberof SectionManager
762
+ */
763
+ function SectionManager(cm, preview) {
764
+ _classCallCheck(this, SectionManager);
765
+
766
+ this.cm = cm;
767
+ this.preview = preview;
768
+ this.$previewContent = preview.$el.find('.tui-editor-contents');
769
+
770
+ /**
771
+ * section list
772
+ * @type {object[]}
773
+ */
774
+ this._sectionList = null;
775
+
776
+ /**
777
+ * current working section needs making section list
778
+ * @type {object}
779
+ */
780
+ this._currentSection = null;
781
+ }
782
+
783
+ /**
784
+ * _addNewSection
785
+ * add new section
786
+ * @param {number} start initial start line number
787
+ * @param {number} end initial end line number
788
+ * @private
789
+ */
790
+
791
+
792
+ _createClass(SectionManager, [{
793
+ key: '_addNewSection',
794
+ value: function _addNewSection(start, end) {
795
+ var newSection = this._makeSectionData(start, end);
796
+ this._sectionList.push(newSection);
797
+ this._currentSection = newSection;
798
+ }
799
+
800
+ /**
801
+ * getSectionList
802
+ * return section list
803
+ * @returns {object[]} section object list
804
+ */
805
+
806
+ }, {
807
+ key: 'getSectionList',
808
+ value: function getSectionList() {
809
+ if (!this._sectionList) {
810
+ this.makeSectionList();
811
+ }
812
+
813
+ return this._sectionList;
814
+ }
815
+
816
+ /**
817
+ * _makeSectionData
818
+ * make default section object
819
+ * @param {number} start initial start line number
820
+ * @param {number} end initial end line number
821
+ * @returns {object} section object
822
+ * @private
823
+ */
824
+
825
+ }, {
826
+ key: '_makeSectionData',
827
+ value: function _makeSectionData(start, end) {
828
+ return {
829
+ start: start,
830
+ end: end,
831
+ $previewSectionEl: null
832
+ };
833
+ }
834
+
835
+ /**
836
+ * _updateCurrentSectionEnd
837
+ * update current section's end line number
838
+ * @param {number} end end value to update
839
+ * @private
840
+ */
841
+
842
+ }, {
843
+ key: '_updateCurrentSectionEnd',
844
+ value: function _updateCurrentSectionEnd(end) {
845
+ this._currentSection.end = end;
846
+ }
847
+
848
+ /**
849
+ * _eachLineState
850
+ * iterate codemiror lines, callback function parameter pass line type and line number
851
+ * @param {function} iteratee callback function
852
+ * @private
853
+ */
854
+
855
+ }, {
856
+ key: '_eachLineState',
857
+ value: function _eachLineState(iteratee) {
858
+ var isSection = void 0,
859
+ i = void 0,
860
+ lineString = void 0,
861
+ nextLineString = void 0,
862
+ prevLineString = void 0,
863
+ isTrimming = true,
864
+ onTable = false,
865
+ onCodeBlock = false,
866
+ trimCapture = '';
867
+ var isRightAfterImageSection = false;
868
+ var isEnsuredSection = false;
869
+ var codeblockStartLineIndex = void 0;
870
+
871
+ var lineLength = this.cm.getDoc().lineCount();
872
+
873
+ for (i = 0; i < lineLength; i += 1) {
874
+ isSection = false;
875
+ lineString = this.cm.getLine(i);
876
+ nextLineString = this.cm.getLine(i + 1) || '';
877
+ prevLineString = this.cm.getLine(i - 1) || '';
878
+ var isCodeBlockEnded = this._isCodeBlockEnd(prevLineString) && codeblockStartLineIndex !== i - 1;
879
+
880
+ if (onTable && (!lineString || !this._isTableCode(lineString))) {
881
+ onTable = false;
882
+ } else if (!onTable && this._isTable(lineString, nextLineString)) {
883
+ onTable = true;
884
+ }
885
+
886
+ if (onCodeBlock && isCodeBlockEnded) {
887
+ onCodeBlock = false;
888
+ }
889
+ if (!onCodeBlock && this._isCodeBlockStart(lineString)) {
890
+ onCodeBlock = this._doFollowedLinesHaveCodeBlockEnd(i, lineLength);
891
+ codeblockStartLineIndex = i;
892
+ }
893
+
894
+ if (isEnsuredSection && lineString.length !== 0) {
895
+ if (this._isIndependentImage(onCodeBlock, onTable, lineString, prevLineString)) {
896
+ isRightAfterImageSection = true;
897
+ isEnsuredSection = true;
898
+ } else {
899
+ isRightAfterImageSection = false;
900
+ isEnsuredSection = false;
901
+ }
902
+
903
+ isSection = true;
904
+ } else if (this._isAtxHeader(lineString)) {
905
+ isRightAfterImageSection = false;
906
+ isSection = true;
907
+ isEnsuredSection = false;
908
+ // setext header
909
+ } else if (!this._isCodeBlockEnd(lineString) && !onTable && this._isSeTextHeader(lineString, nextLineString)) {
910
+ isRightAfterImageSection = false;
911
+ isSection = true;
912
+ isEnsuredSection = false;
913
+ } else if (this._isIndependentImage(onCodeBlock, onTable, lineString, prevLineString)) {
914
+ isRightAfterImageSection = true;
915
+ isSection = true;
916
+ isEnsuredSection = false;
917
+ } else if (isRightAfterImageSection && lineString.length === 0) {
918
+ isRightAfterImageSection = false;
919
+ isEnsuredSection = true;
920
+ }
921
+
922
+ // resolve wrong number of sections mismatch compare to preview
923
+ if (isTrimming) {
924
+ trimCapture += lineString.trim();
925
+
926
+ if (trimCapture) {
927
+ isTrimming = false;
928
+ } else {
929
+ continue;
930
+ }
931
+ }
932
+
933
+ iteratee(isSection, i);
934
+ }
935
+ }
936
+
937
+ /**
938
+ * Return whether is independent image line with padding lines top and bottom
939
+ * @param {boolean} onCodeBlock Is on codeblock
940
+ * @param {boolean} onTable Is on table
941
+ * @param {string} lineString Current line string
942
+ * @param {string} prevLineString Previous line string
943
+ * @returns {boolean}
944
+ * @private
945
+ */
946
+
947
+ }, {
948
+ key: '_isIndependentImage',
949
+ value: function _isIndependentImage(onCodeBlock, onTable, lineString, prevLineString) {
950
+ return !onCodeBlock && !onTable && this._isImage(lineString) && !this._isList(lineString) && !this._isQuote(lineString) && prevLineString.length === 0;
951
+ }
952
+
953
+ /**
954
+ * _doFollowedLinesHaveCodeBlockEnd
955
+ * Check if follow lines have codeblock end
956
+ * @param {number} lineIndex current index
957
+ * @param {number} lineLength line length
958
+ * @returns {boolean} result
959
+ * @private
960
+ */
961
+
962
+ }, {
963
+ key: '_doFollowedLinesHaveCodeBlockEnd',
964
+ value: function _doFollowedLinesHaveCodeBlockEnd(lineIndex, lineLength) {
965
+ var doLineHaveCodeBlockEnd = false;
966
+
967
+ for (var i = lineIndex + 1; i < lineLength; i += 1) {
968
+ if (this._isCodeBlockEnd(this.cm.getLine(i))) {
969
+ doLineHaveCodeBlockEnd = true;
970
+ break;
971
+ }
972
+ }
973
+
974
+ return doLineHaveCodeBlockEnd;
975
+ }
976
+
977
+ /**
978
+ * _isCodeBlockStart
979
+ * Check if passed string have code block start
980
+ * @param {string} string string to check
981
+ * @returns {boolean} result
982
+ * @private
983
+ */
984
+
985
+ }, {
986
+ key: '_isCodeBlockStart',
987
+ value: function _isCodeBlockStart(string) {
988
+ return FIND_CODEBLOCK_START_RX.test(string);
989
+ }
990
+
991
+ /**
992
+ * _isCodeBlockEnd
993
+ * Check if passed string have code block end
994
+ * @param {string} string string to check
995
+ * @returns {boolean} result
996
+ * @private
997
+ */
998
+
999
+ }, {
1000
+ key: '_isCodeBlockEnd',
1001
+ value: function _isCodeBlockEnd(string) {
1002
+ return FIND_CODEBLOCK_END_RX.test(string);
1003
+ }
1004
+
1005
+ /**
1006
+ * _isTable
1007
+ * Check if passed string have table
1008
+ * @param {string} lineString current line string
1009
+ * @param {string} nextLineString next line string
1010
+ * @returns {boolean} result
1011
+ * @private
1012
+ */
1013
+
1014
+ }, {
1015
+ key: '_isTable',
1016
+ value: function _isTable(lineString, nextLineString) {
1017
+ return this._isTableCode(lineString) && this._isTableAligner(nextLineString);
1018
+ }
1019
+
1020
+ /**
1021
+ * _isTableCode
1022
+ * Check if passed string have table code
1023
+ * @param {string} string string to check
1024
+ * @returns {boolean} result
1025
+ * @private
1026
+ */
1027
+
1028
+ }, {
1029
+ key: '_isTableCode',
1030
+ value: function _isTableCode(string) {
1031
+ return (/(^\S?.*\|.*)/.test(string)
1032
+ );
1033
+ }
1034
+
1035
+ /**
1036
+ * _isTableAligner
1037
+ * Check if passed string have table align code
1038
+ * @param {string} string string to check
1039
+ * @returns {boolean} result
1040
+ * @private
1041
+ */
1042
+
1043
+ }, {
1044
+ key: '_isTableAligner',
1045
+ value: function _isTableAligner(string) {
1046
+ return (/(\s*[-:]+\s*\|)+/.test(string)
1047
+ );
1048
+ }
1049
+
1050
+ /**
1051
+ * _isAtxHeader
1052
+ * Check if passed string have atx header
1053
+ * @param {string} string string to check
1054
+ * @returns {boolean} result
1055
+ * @private
1056
+ */
1057
+
1058
+ }, {
1059
+ key: '_isAtxHeader',
1060
+ value: function _isAtxHeader(string) {
1061
+ return FIND_HEADER_RX.test(string);
1062
+ }
1063
+
1064
+ /**
1065
+ * _isSeTextHeader
1066
+ * @param {string} lineString current line string
1067
+ * @param {string} nextLineString next line string
1068
+ * @returns {boolean} result
1069
+ * @private
1070
+ */
1071
+
1072
+ }, {
1073
+ key: '_isSeTextHeader',
1074
+ value: function _isSeTextHeader(lineString, nextLineString) {
1075
+ return lineString.replace(FIND_SPACE, '') !== '' && nextLineString && FIND_SETEXT_HEADER_RX.test(nextLineString);
1076
+ }
1077
+ }, {
1078
+ key: '_isImage',
1079
+ value: function _isImage(lineString) {
1080
+ return FIND_IMAGE_RX.test(lineString);
1081
+ }
1082
+ }, {
1083
+ key: '_isList',
1084
+ value: function _isList(lineString) {
1085
+ return FIND_LIST_RX.test(lineString);
1086
+ }
1087
+ }, {
1088
+ key: '_isQuote',
1089
+ value: function _isQuote(lineString) {
1090
+ return FIND_QUOTE_RX.test(lineString);
1091
+ }
1092
+
1093
+ /**
1094
+ * makeSectionList
1095
+ * make section list
1096
+ */
1097
+
1098
+ }, {
1099
+ key: 'makeSectionList',
1100
+ value: function makeSectionList() {
1101
+ var _this = this;
1102
+
1103
+ this._sectionList = [];
1104
+
1105
+ this._eachLineState(function (isSection, lineNumber) {
1106
+ if (isSection || !_this._sectionList.length) {
1107
+ _this._addNewSection(lineNumber, lineNumber);
1108
+ } else {
1109
+ _this._updateCurrentSectionEnd(lineNumber);
1110
+ }
1111
+ });
1112
+ }
1113
+
1114
+ /**
1115
+ * sectionMatch
1116
+ * make preview sections then match section list with preview section element
1117
+ */
1118
+
1119
+ }, {
1120
+ key: 'sectionMatch',
1121
+ value: function sectionMatch() {
1122
+ if (this.getSectionList()) {
1123
+ var sections = this._getPreviewSections();
1124
+ this._matchPreviewSectionsWithSectionlist(sections);
1125
+ }
1126
+ }
1127
+
1128
+ /**
1129
+ * _matchPreviewSectionsWithSectionlist
1130
+ * match section list with preview section element
1131
+ * @param {HTMLNode[]} sections section nodes
1132
+ * @private
1133
+ */
1134
+
1135
+ }, {
1136
+ key: '_matchPreviewSectionsWithSectionlist',
1137
+ value: function _matchPreviewSectionsWithSectionlist(sections) {
1138
+ var sectionList = this.getSectionList();
1139
+ sections.forEach(function (childs, index) {
1140
+ var section = sectionList[index];
1141
+ if (section) {
1142
+ var $sectionDiv = (0, _jquery2.default)('<div class=\'content-id-' + index + '\'></div>');
1143
+ section.$previewSectionEl = (0, _jquery2.default)(childs).wrapAll($sectionDiv).parent();
1144
+ }
1145
+ });
1146
+ }
1147
+
1148
+ /**
1149
+ * _getPreviewSections
1150
+ * get preview html section group to make section
1151
+ * @returns {array[]} element node array
1152
+ * @private
1153
+ */
1154
+
1155
+ }, {
1156
+ key: '_getPreviewSections',
1157
+ value: function _getPreviewSections() {
1158
+ var sections = [];
1159
+ var lastSection = 0;
1160
+ var isRightAfterImageSection = false;
1161
+
1162
+ sections[0] = [];
1163
+
1164
+ this.$previewContent.contents().filter(findElementNodeFilter).each(function (index, el) {
1165
+ var isParagraph = el.tagName === 'P';
1166
+ var isHeading = el.tagName.match(/^(H1|H2|H3|H4|H5|H6)$/);
1167
+ var isImage = isParagraph && el.childNodes[0].nodeName === 'IMG';
1168
+
1169
+ if ((isHeading || isImage || isRightAfterImageSection) && sections[lastSection].length) {
1170
+ sections.push([]);
1171
+ lastSection += 1;
1172
+ isRightAfterImageSection = false;
1173
+ }
1174
+
1175
+ if (isImage) {
1176
+ isRightAfterImageSection = true;
1177
+ }
1178
+
1179
+ sections[lastSection].push(el);
1180
+ });
1181
+
1182
+ return sections;
1183
+ }
1184
+
1185
+ /**
1186
+ * _sectionByLine
1187
+ * get section by markdown line
1188
+ * @param {number} line markdown editor line number
1189
+ * @returns {object} section
1190
+ */
1191
+
1192
+ }, {
1193
+ key: 'sectionByLine',
1194
+ value: function sectionByLine(line) {
1195
+ var sectionIndex = void 0;
1196
+ var sectionList = this.getSectionList();
1197
+ var sectionLength = sectionList.length;
1198
+
1199
+ for (sectionIndex = 0; sectionIndex < sectionLength; sectionIndex += 1) {
1200
+ if (line <= sectionList[sectionIndex].end) {
1201
+ break;
1202
+ }
1203
+ }
1204
+
1205
+ if (sectionIndex === sectionLength) {
1206
+ sectionIndex = sectionLength - 1;
1207
+ }
1208
+
1209
+ return sectionList[sectionIndex];
1210
+ }
1211
+ }]);
1212
+
1213
+ return SectionManager;
1214
+ }();
1215
+
1216
+ /**
1217
+ * findElementNodeFilter
1218
+ * @this Node
1219
+ * @returns {boolean} true or not
1220
+ * @ignore
1221
+ */
1222
+
1223
+
1224
+ function findElementNodeFilter() {
1225
+ return this.nodeType === Node.ELEMENT_NODE;
1226
+ }
1227
+
1228
+ exports.default = SectionManager;
1229
+
1230
+ /***/ }),
1231
+
1232
+ /***/ 5:
1233
+ /***/ (function(module, exports) {
1234
+
1235
+ if(typeof __WEBPACK_EXTERNAL_MODULE_5__ === 'undefined') {var e = new Error("Cannot find module \"undefined\""); e.code = 'MODULE_NOT_FOUND'; throw e;}
1236
+ module.exports = __WEBPACK_EXTERNAL_MODULE_5__;
1237
+
1238
+ /***/ })
1239
+
1240
+ /******/ });
1241
+ });