tui_editor-rails 1.0.2.0

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