tui_editor-rails 1.0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +8 -0
- data/.ruby-version +1 -0
- data/Gemfile +6 -0
- data/Gemfile.lock +20 -0
- data/README.md +69 -0
- data/Rakefile +2 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/example/.gitignore +30 -0
- data/example/.ruby-version +1 -0
- data/example/Gemfile +64 -0
- data/example/Gemfile.lock +224 -0
- data/example/README.md +67 -0
- data/example/Rakefile +6 -0
- data/example/app/assets/config/manifest.js +3 -0
- data/example/app/assets/images/.keep +0 -0
- data/example/app/assets/images/screen_capture.png +0 -0
- data/example/app/assets/javascripts/application.js +23 -0
- data/example/app/assets/javascripts/cable.js +13 -0
- data/example/app/assets/javascripts/channels/.keep +0 -0
- data/example/app/assets/javascripts/home.coffee +3 -0
- data/example/app/assets/javascripts/posts.coffee +3 -0
- data/example/app/assets/stylesheets/application.scss +4 -0
- data/example/app/assets/stylesheets/home.scss +3 -0
- data/example/app/assets/stylesheets/posts.scss +3 -0
- data/example/app/assets/stylesheets/scaffolds.scss +84 -0
- data/example/app/channels/application_cable/channel.rb +4 -0
- data/example/app/channels/application_cable/connection.rb +4 -0
- data/example/app/controllers/application_controller.rb +2 -0
- data/example/app/controllers/concerns/.keep +0 -0
- data/example/app/controllers/home_controller.rb +4 -0
- data/example/app/controllers/posts_controller.rb +74 -0
- data/example/app/helpers/application_helper.rb +2 -0
- data/example/app/helpers/home_helper.rb +2 -0
- data/example/app/helpers/posts_helper.rb +2 -0
- data/example/app/jobs/application_job.rb +2 -0
- data/example/app/mailers/application_mailer.rb +4 -0
- data/example/app/models/application_record.rb +3 -0
- data/example/app/models/concerns/.keep +0 -0
- data/example/app/models/post.rb +2 -0
- data/example/app/views/home/index.html.erb +11 -0
- data/example/app/views/layouts/application.html.erb +14 -0
- data/example/app/views/layouts/mailer.html.erb +13 -0
- data/example/app/views/layouts/mailer.text.erb +1 -0
- data/example/app/views/posts/_form.html.erb +27 -0
- data/example/app/views/posts/_post.json.jbuilder +2 -0
- data/example/app/views/posts/edit.html.erb +6 -0
- data/example/app/views/posts/index.html.erb +29 -0
- data/example/app/views/posts/index.json.jbuilder +1 -0
- data/example/app/views/posts/new.html.erb +5 -0
- data/example/app/views/posts/show.html.erb +14 -0
- data/example/app/views/posts/show.json.jbuilder +1 -0
- data/example/bin/bundle +3 -0
- data/example/bin/rails +9 -0
- data/example/bin/rake +9 -0
- data/example/bin/setup +36 -0
- data/example/bin/spring +17 -0
- data/example/bin/update +31 -0
- data/example/bin/yarn +11 -0
- data/example/config.ru +5 -0
- data/example/config/application.rb +19 -0
- data/example/config/boot.rb +4 -0
- data/example/config/cable.yml +10 -0
- data/example/config/credentials.yml.enc +1 -0
- data/example/config/database.yml +25 -0
- data/example/config/environment.rb +5 -0
- data/example/config/environments/development.rb +61 -0
- data/example/config/environments/production.rb +94 -0
- data/example/config/environments/test.rb +46 -0
- data/example/config/initializers/application_controller_renderer.rb +8 -0
- data/example/config/initializers/assets.rb +14 -0
- data/example/config/initializers/backtrace_silencers.rb +7 -0
- data/example/config/initializers/content_security_policy.rb +22 -0
- data/example/config/initializers/cookies_serializer.rb +5 -0
- data/example/config/initializers/filter_parameter_logging.rb +4 -0
- data/example/config/initializers/inflections.rb +16 -0
- data/example/config/initializers/mime_types.rb +4 -0
- data/example/config/initializers/wrap_parameters.rb +14 -0
- data/example/config/locales/en.yml +33 -0
- data/example/config/puma.rb +34 -0
- data/example/config/routes.rb +6 -0
- data/example/config/spring.rb +6 -0
- data/example/config/storage.yml +35 -0
- data/example/db/migrate/20180208210404_create_posts.rb +10 -0
- data/example/db/schema.rb +22 -0
- data/example/db/seeds.rb +7 -0
- data/example/lib/assets/.keep +0 -0
- data/example/lib/tasks/.keep +0 -0
- data/example/log/.keep +0 -0
- data/example/package.json +5 -0
- data/example/public/404.html +67 -0
- data/example/public/422.html +67 -0
- data/example/public/500.html +66 -0
- data/example/public/apple-touch-icon-precomposed.png +0 -0
- data/example/public/apple-touch-icon.png +0 -0
- data/example/public/favicon.ico +0 -0
- data/example/public/robots.txt +1 -0
- data/example/test/application_system_test_case.rb +5 -0
- data/example/test/controllers/.keep +0 -0
- data/example/test/controllers/home_controller_test.rb +9 -0
- data/example/test/controllers/posts_controller_test.rb +48 -0
- data/example/test/fixtures/.keep +0 -0
- data/example/test/fixtures/files/.keep +0 -0
- data/example/test/fixtures/posts.yml +9 -0
- data/example/test/helpers/.keep +0 -0
- data/example/test/integration/.keep +0 -0
- data/example/test/mailers/.keep +0 -0
- data/example/test/models/.keep +0 -0
- data/example/test/models/post_test.rb +7 -0
- data/example/test/system/.keep +0 -0
- data/example/test/system/posts_test.rb +45 -0
- data/example/test/test_helper.rb +10 -0
- data/example/tmp/.keep +0 -0
- data/example/vendor/.keep +0 -0
- data/lib/tui_editor/rails.rb +8 -0
- data/lib/tui_editor/rails/version.rb +5 -0
- data/tui_editor-rails.gemspec +34 -0
- data/vendor/assets/components/codemirror/.bower.json +31 -0
- data/vendor/assets/components/codemirror/AUTHORS +714 -0
- data/vendor/assets/components/codemirror/CHANGELOG.md +1316 -0
- data/vendor/assets/components/codemirror/CONTRIBUTING.md +92 -0
- data/vendor/assets/components/codemirror/LICENSE +21 -0
- data/vendor/assets/components/codemirror/README.md +35 -0
- data/vendor/assets/components/codemirror/addon/comment/comment.js +209 -0
- data/vendor/assets/components/codemirror/addon/comment/continuecomment.js +78 -0
- data/vendor/assets/components/codemirror/addon/dialog/dialog.css +32 -0
- data/vendor/assets/components/codemirror/addon/dialog/dialog.js +157 -0
- data/vendor/assets/components/codemirror/addon/display/autorefresh.js +47 -0
- data/vendor/assets/components/codemirror/addon/display/fullscreen.css +6 -0
- data/vendor/assets/components/codemirror/addon/display/fullscreen.js +41 -0
- data/vendor/assets/components/codemirror/addon/display/panel.js +123 -0
- data/vendor/assets/components/codemirror/addon/display/placeholder.js +63 -0
- data/vendor/assets/components/codemirror/addon/display/rulers.js +51 -0
- data/vendor/assets/components/codemirror/addon/edit/closebrackets.js +194 -0
- data/vendor/assets/components/codemirror/addon/edit/closetag.js +175 -0
- data/vendor/assets/components/codemirror/addon/edit/continuelist.js +89 -0
- data/vendor/assets/components/codemirror/addon/edit/matchbrackets.js +145 -0
- data/vendor/assets/components/codemirror/addon/edit/matchtags.js +66 -0
- data/vendor/assets/components/codemirror/addon/edit/trailingspace.js +27 -0
- data/vendor/assets/components/codemirror/addon/fold/brace-fold.js +105 -0
- data/vendor/assets/components/codemirror/addon/fold/comment-fold.js +59 -0
- data/vendor/assets/components/codemirror/addon/fold/foldcode.js +152 -0
- data/vendor/assets/components/codemirror/addon/fold/foldgutter.css +20 -0
- data/vendor/assets/components/codemirror/addon/fold/foldgutter.js +146 -0
- data/vendor/assets/components/codemirror/addon/fold/indent-fold.js +48 -0
- data/vendor/assets/components/codemirror/addon/fold/markdown-fold.js +49 -0
- data/vendor/assets/components/codemirror/addon/fold/xml-fold.js +182 -0
- data/vendor/assets/components/codemirror/addon/hint/anyword-hint.js +41 -0
- data/vendor/assets/components/codemirror/addon/hint/css-hint.js +60 -0
- data/vendor/assets/components/codemirror/addon/hint/html-hint.js +348 -0
- data/vendor/assets/components/codemirror/addon/hint/javascript-hint.js +155 -0
- data/vendor/assets/components/codemirror/addon/hint/show-hint.css +36 -0
- data/vendor/assets/components/codemirror/addon/hint/show-hint.js +432 -0
- data/vendor/assets/components/codemirror/addon/hint/sql-hint.js +286 -0
- data/vendor/assets/components/codemirror/addon/hint/xml-hint.js +110 -0
- data/vendor/assets/components/codemirror/addon/lint/coffeescript-lint.js +47 -0
- data/vendor/assets/components/codemirror/addon/lint/css-lint.js +40 -0
- data/vendor/assets/components/codemirror/addon/lint/html-lint.js +53 -0
- data/vendor/assets/components/codemirror/addon/lint/javascript-lint.js +63 -0
- data/vendor/assets/components/codemirror/addon/lint/json-lint.js +37 -0
- data/vendor/assets/components/codemirror/addon/lint/lint.css +73 -0
- data/vendor/assets/components/codemirror/addon/lint/lint.js +252 -0
- data/vendor/assets/components/codemirror/addon/lint/yaml-lint.js +41 -0
- data/vendor/assets/components/codemirror/addon/merge/merge.css +113 -0
- data/vendor/assets/components/codemirror/addon/merge/merge.js +1001 -0
- data/vendor/assets/components/codemirror/addon/mode/loadmode.js +64 -0
- data/vendor/assets/components/codemirror/addon/mode/multiplex.js +123 -0
- data/vendor/assets/components/codemirror/addon/mode/multiplex_test.js +33 -0
- data/vendor/assets/components/codemirror/addon/mode/overlay.js +90 -0
- data/vendor/assets/components/codemirror/addon/mode/simple.js +216 -0
- data/vendor/assets/components/codemirror/addon/runmode/colorize.js +40 -0
- data/vendor/assets/components/codemirror/addon/runmode/runmode-standalone.js +158 -0
- data/vendor/assets/components/codemirror/addon/runmode/runmode.js +72 -0
- data/vendor/assets/components/codemirror/addon/runmode/runmode.node.js +197 -0
- data/vendor/assets/components/codemirror/addon/scroll/annotatescrollbar.js +122 -0
- data/vendor/assets/components/codemirror/addon/scroll/scrollpastend.js +48 -0
- data/vendor/assets/components/codemirror/addon/scroll/simplescrollbars.css +66 -0
- data/vendor/assets/components/codemirror/addon/scroll/simplescrollbars.js +152 -0
- data/vendor/assets/components/codemirror/addon/search/jump-to-line.js +49 -0
- data/vendor/assets/components/codemirror/addon/search/match-highlighter.js +165 -0
- data/vendor/assets/components/codemirror/addon/search/matchesonscrollbar.css +8 -0
- data/vendor/assets/components/codemirror/addon/search/matchesonscrollbar.js +97 -0
- data/vendor/assets/components/codemirror/addon/search/search.js +252 -0
- data/vendor/assets/components/codemirror/addon/search/searchcursor.js +289 -0
- data/vendor/assets/components/codemirror/addon/selection/active-line.js +72 -0
- data/vendor/assets/components/codemirror/addon/selection/mark-selection.js +119 -0
- data/vendor/assets/components/codemirror/addon/selection/selection-pointer.js +98 -0
- data/vendor/assets/components/codemirror/addon/tern/tern.css +87 -0
- data/vendor/assets/components/codemirror/addon/tern/tern.js +718 -0
- data/vendor/assets/components/codemirror/addon/tern/worker.js +44 -0
- data/vendor/assets/components/codemirror/addon/wrap/hardwrap.js +144 -0
- data/vendor/assets/components/codemirror/bower.json +17 -0
- data/vendor/assets/components/codemirror/component-tools/bower.json +17 -0
- data/vendor/assets/components/codemirror/component-tools/build.sh +31 -0
- data/vendor/assets/components/codemirror/component-tools/update.py +38 -0
- data/vendor/assets/components/codemirror/keymap/emacs.js +416 -0
- data/vendor/assets/components/codemirror/keymap/sublime.js +685 -0
- data/vendor/assets/components/codemirror/keymap/vim.js +5219 -0
- data/vendor/assets/components/codemirror/lib/codemirror.css +346 -0
- data/vendor/assets/components/codemirror/lib/codemirror.js +9669 -0
- data/vendor/assets/components/codemirror/mode/apl/apl.js +174 -0
- data/vendor/assets/components/codemirror/mode/asciiarmor/asciiarmor.js +74 -0
- data/vendor/assets/components/codemirror/mode/asn.1/asn.1.js +204 -0
- data/vendor/assets/components/codemirror/mode/asterisk/asterisk.js +196 -0
- data/vendor/assets/components/codemirror/mode/brainfuck/brainfuck.js +85 -0
- data/vendor/assets/components/codemirror/mode/clike/clike.js +817 -0
- data/vendor/assets/components/codemirror/mode/clojure/clojure.js +306 -0
- data/vendor/assets/components/codemirror/mode/cmake/cmake.js +97 -0
- data/vendor/assets/components/codemirror/mode/cobol/cobol.js +255 -0
- data/vendor/assets/components/codemirror/mode/coffeescript/coffeescript.js +359 -0
- data/vendor/assets/components/codemirror/mode/commonlisp/commonlisp.js +124 -0
- data/vendor/assets/components/codemirror/mode/crystal/crystal.js +433 -0
- data/vendor/assets/components/codemirror/mode/css/css.js +832 -0
- data/vendor/assets/components/codemirror/mode/cypher/cypher.js +150 -0
- data/vendor/assets/components/codemirror/mode/d/d.js +218 -0
- data/vendor/assets/components/codemirror/mode/dart/dart.js +157 -0
- data/vendor/assets/components/codemirror/mode/diff/diff.js +47 -0
- data/vendor/assets/components/codemirror/mode/django/django.js +356 -0
- data/vendor/assets/components/codemirror/mode/dockerfile/dockerfile.js +79 -0
- data/vendor/assets/components/codemirror/mode/dtd/dtd.js +142 -0
- data/vendor/assets/components/codemirror/mode/dylan/dylan.js +352 -0
- data/vendor/assets/components/codemirror/mode/ebnf/ebnf.js +195 -0
- data/vendor/assets/components/codemirror/mode/ecl/ecl.js +206 -0
- data/vendor/assets/components/codemirror/mode/eiffel/eiffel.js +160 -0
- data/vendor/assets/components/codemirror/mode/elm/elm.js +205 -0
- data/vendor/assets/components/codemirror/mode/erlang/erlang.js +619 -0
- data/vendor/assets/components/codemirror/mode/factor/factor.js +85 -0
- data/vendor/assets/components/codemirror/mode/fcl/fcl.js +173 -0
- data/vendor/assets/components/codemirror/mode/forth/forth.js +180 -0
- data/vendor/assets/components/codemirror/mode/fortran/fortran.js +188 -0
- data/vendor/assets/components/codemirror/mode/gas/gas.js +345 -0
- data/vendor/assets/components/codemirror/mode/gfm/gfm.js +129 -0
- data/vendor/assets/components/codemirror/mode/gherkin/gherkin.js +178 -0
- data/vendor/assets/components/codemirror/mode/go/go.js +187 -0
- data/vendor/assets/components/codemirror/mode/groovy/groovy.js +230 -0
- data/vendor/assets/components/codemirror/mode/haml/haml.js +161 -0
- data/vendor/assets/components/codemirror/mode/handlebars/handlebars.js +62 -0
- data/vendor/assets/components/codemirror/mode/haskell-literate/haskell-literate.js +43 -0
- data/vendor/assets/components/codemirror/mode/haskell/haskell.js +267 -0
- data/vendor/assets/components/codemirror/mode/haxe/haxe.js +515 -0
- data/vendor/assets/components/codemirror/mode/htmlembedded/htmlembedded.js +37 -0
- data/vendor/assets/components/codemirror/mode/htmlmixed/htmlmixed.js +152 -0
- data/vendor/assets/components/codemirror/mode/http/http.js +113 -0
- data/vendor/assets/components/codemirror/mode/idl/idl.js +290 -0
- data/vendor/assets/components/codemirror/mode/javascript/javascript.js +865 -0
- data/vendor/assets/components/codemirror/mode/jinja2/jinja2.js +142 -0
- data/vendor/assets/components/codemirror/mode/jsx/jsx.js +148 -0
- data/vendor/assets/components/codemirror/mode/julia/julia.js +418 -0
- data/vendor/assets/components/codemirror/mode/livescript/livescript.js +280 -0
- data/vendor/assets/components/codemirror/mode/lua/lua.js +159 -0
- data/vendor/assets/components/codemirror/mode/markdown/markdown.js +872 -0
- data/vendor/assets/components/codemirror/mode/mathematica/mathematica.js +176 -0
- data/vendor/assets/components/codemirror/mode/mbox/mbox.js +129 -0
- data/vendor/assets/components/codemirror/mode/meta.js +217 -0
- data/vendor/assets/components/codemirror/mode/mirc/mirc.js +193 -0
- data/vendor/assets/components/codemirror/mode/mllike/mllike.js +356 -0
- data/vendor/assets/components/codemirror/mode/modelica/modelica.js +245 -0
- data/vendor/assets/components/codemirror/mode/mscgen/mscgen.js +175 -0
- data/vendor/assets/components/codemirror/mode/mumps/mumps.js +148 -0
- data/vendor/assets/components/codemirror/mode/nginx/nginx.js +178 -0
- data/vendor/assets/components/codemirror/mode/nsis/nsis.js +95 -0
- data/vendor/assets/components/codemirror/mode/ntriples/ntriples.js +195 -0
- data/vendor/assets/components/codemirror/mode/octave/octave.js +139 -0
- data/vendor/assets/components/codemirror/mode/oz/oz.js +252 -0
- data/vendor/assets/components/codemirror/mode/pascal/pascal.js +109 -0
- data/vendor/assets/components/codemirror/mode/pegjs/pegjs.js +114 -0
- data/vendor/assets/components/codemirror/mode/perl/perl.js +837 -0
- data/vendor/assets/components/codemirror/mode/php/php.js +234 -0
- data/vendor/assets/components/codemirror/mode/pig/pig.js +178 -0
- data/vendor/assets/components/codemirror/mode/powershell/powershell.js +398 -0
- data/vendor/assets/components/codemirror/mode/properties/properties.js +78 -0
- data/vendor/assets/components/codemirror/mode/protobuf/protobuf.js +69 -0
- data/vendor/assets/components/codemirror/mode/pug/pug.js +591 -0
- data/vendor/assets/components/codemirror/mode/puppet/puppet.js +220 -0
- data/vendor/assets/components/codemirror/mode/python/python.js +334 -0
- data/vendor/assets/components/codemirror/mode/q/q.js +139 -0
- data/vendor/assets/components/codemirror/mode/r/r.js +183 -0
- data/vendor/assets/components/codemirror/mode/rpm/rpm.js +109 -0
- data/vendor/assets/components/codemirror/mode/rst/rst.js +557 -0
- data/vendor/assets/components/codemirror/mode/ruby/ruby.js +296 -0
- data/vendor/assets/components/codemirror/mode/rust/rust.js +72 -0
- data/vendor/assets/components/codemirror/mode/sas/sas.js +303 -0
- data/vendor/assets/components/codemirror/mode/sass/sass.js +454 -0
- data/vendor/assets/components/codemirror/mode/scheme/scheme.js +249 -0
- data/vendor/assets/components/codemirror/mode/shell/shell.js +151 -0
- data/vendor/assets/components/codemirror/mode/sieve/sieve.js +193 -0
- data/vendor/assets/components/codemirror/mode/slim/slim.js +575 -0
- data/vendor/assets/components/codemirror/mode/smalltalk/smalltalk.js +168 -0
- data/vendor/assets/components/codemirror/mode/smarty/smarty.js +225 -0
- data/vendor/assets/components/codemirror/mode/solr/solr.js +104 -0
- data/vendor/assets/components/codemirror/mode/soy/soy.js +354 -0
- data/vendor/assets/components/codemirror/mode/sparql/sparql.js +180 -0
- data/vendor/assets/components/codemirror/mode/spreadsheet/spreadsheet.js +112 -0
- data/vendor/assets/components/codemirror/mode/sql/sql.js +488 -0
- data/vendor/assets/components/codemirror/mode/stex/stex.js +251 -0
- data/vendor/assets/components/codemirror/mode/stylus/stylus.js +771 -0
- data/vendor/assets/components/codemirror/mode/swift/swift.js +219 -0
- data/vendor/assets/components/codemirror/mode/tcl/tcl.js +139 -0
- data/vendor/assets/components/codemirror/mode/textile/textile.js +469 -0
- data/vendor/assets/components/codemirror/mode/tiddlywiki/tiddlywiki.css +14 -0
- data/vendor/assets/components/codemirror/mode/tiddlywiki/tiddlywiki.js +308 -0
- data/vendor/assets/components/codemirror/mode/tiki/tiki.css +26 -0
- data/vendor/assets/components/codemirror/mode/tiki/tiki.js +312 -0
- data/vendor/assets/components/codemirror/mode/toml/toml.js +88 -0
- data/vendor/assets/components/codemirror/mode/tornado/tornado.js +68 -0
- data/vendor/assets/components/codemirror/mode/troff/troff.js +84 -0
- data/vendor/assets/components/codemirror/mode/ttcn-cfg/ttcn-cfg.js +214 -0
- data/vendor/assets/components/codemirror/mode/ttcn/ttcn.js +283 -0
- data/vendor/assets/components/codemirror/mode/turtle/turtle.js +162 -0
- data/vendor/assets/components/codemirror/mode/twig/twig.js +141 -0
- data/vendor/assets/components/codemirror/mode/vb/vb.js +275 -0
- data/vendor/assets/components/codemirror/mode/vbscript/vbscript.js +350 -0
- data/vendor/assets/components/codemirror/mode/velocity/velocity.js +201 -0
- data/vendor/assets/components/codemirror/mode/verilog/verilog.js +675 -0
- data/vendor/assets/components/codemirror/mode/vhdl/vhdl.js +189 -0
- data/vendor/assets/components/codemirror/mode/vue/vue.js +77 -0
- data/vendor/assets/components/codemirror/mode/webidl/webidl.js +195 -0
- data/vendor/assets/components/codemirror/mode/xml/xml.js +401 -0
- data/vendor/assets/components/codemirror/mode/xquery/xquery.js +448 -0
- data/vendor/assets/components/codemirror/mode/yacas/yacas.js +204 -0
- data/vendor/assets/components/codemirror/mode/yaml-frontmatter/yaml-frontmatter.js +68 -0
- data/vendor/assets/components/codemirror/mode/yaml/yaml.js +118 -0
- data/vendor/assets/components/codemirror/mode/z80/z80.js +116 -0
- data/vendor/assets/components/codemirror/rollup.config.js +18 -0
- data/vendor/assets/components/codemirror/src/codemirror.js +3 -0
- data/vendor/assets/components/codemirror/src/display/Display.js +106 -0
- data/vendor/assets/components/codemirror/src/display/focus.js +47 -0
- data/vendor/assets/components/codemirror/src/display/gutters.js +34 -0
- data/vendor/assets/components/codemirror/src/display/highlight_worker.js +55 -0
- data/vendor/assets/components/codemirror/src/display/line_numbers.js +48 -0
- data/vendor/assets/components/codemirror/src/display/mode_state.js +22 -0
- data/vendor/assets/components/codemirror/src/display/operations.js +205 -0
- data/vendor/assets/components/codemirror/src/display/scroll_events.js +115 -0
- data/vendor/assets/components/codemirror/src/display/scrollbars.js +192 -0
- data/vendor/assets/components/codemirror/src/display/scrolling.js +184 -0
- data/vendor/assets/components/codemirror/src/display/selection.js +158 -0
- data/vendor/assets/components/codemirror/src/display/update_display.js +260 -0
- data/vendor/assets/components/codemirror/src/display/update_line.js +188 -0
- data/vendor/assets/components/codemirror/src/display/update_lines.js +64 -0
- data/vendor/assets/components/codemirror/src/display/view_tracking.js +153 -0
- data/vendor/assets/components/codemirror/src/edit/CodeMirror.js +214 -0
- data/vendor/assets/components/codemirror/src/edit/commands.js +178 -0
- data/vendor/assets/components/codemirror/src/edit/deleteNearSelection.js +30 -0
- data/vendor/assets/components/codemirror/src/edit/drop_events.js +119 -0
- data/vendor/assets/components/codemirror/src/edit/fromTextArea.js +61 -0
- data/vendor/assets/components/codemirror/src/edit/global_events.js +44 -0
- data/vendor/assets/components/codemirror/src/edit/key_events.js +159 -0
- data/vendor/assets/components/codemirror/src/edit/legacy.js +62 -0
- data/vendor/assets/components/codemirror/src/edit/main.js +69 -0
- data/vendor/assets/components/codemirror/src/edit/methods.js +539 -0
- data/vendor/assets/components/codemirror/src/edit/mouse_events.js +407 -0
- data/vendor/assets/components/codemirror/src/edit/options.js +191 -0
- data/vendor/assets/components/codemirror/src/edit/utils.js +7 -0
- data/vendor/assets/components/codemirror/src/input/ContentEditableInput.js +517 -0
- data/vendor/assets/components/codemirror/src/input/TextareaInput.js +350 -0
- data/vendor/assets/components/codemirror/src/input/indent.js +71 -0
- data/vendor/assets/components/codemirror/src/input/input.js +135 -0
- data/vendor/assets/components/codemirror/src/input/keymap.js +148 -0
- data/vendor/assets/components/codemirror/src/input/keynames.js +17 -0
- data/vendor/assets/components/codemirror/src/input/movement.js +110 -0
- data/vendor/assets/components/codemirror/src/line/highlight.js +284 -0
- data/vendor/assets/components/codemirror/src/line/line_data.js +337 -0
- data/vendor/assets/components/codemirror/src/line/pos.js +40 -0
- data/vendor/assets/components/codemirror/src/line/saw_special_spans.js +10 -0
- data/vendor/assets/components/codemirror/src/line/spans.js +372 -0
- data/vendor/assets/components/codemirror/src/line/utils_line.js +85 -0
- data/vendor/assets/components/codemirror/src/measurement/position_measurement.js +700 -0
- data/vendor/assets/components/codemirror/src/measurement/widgets.js +26 -0
- data/vendor/assets/components/codemirror/src/model/Doc.js +432 -0
- data/vendor/assets/components/codemirror/src/model/change_measurement.js +61 -0
- data/vendor/assets/components/codemirror/src/model/changes.js +330 -0
- data/vendor/assets/components/codemirror/src/model/chunk.js +167 -0
- data/vendor/assets/components/codemirror/src/model/document_data.js +111 -0
- data/vendor/assets/components/codemirror/src/model/history.js +228 -0
- data/vendor/assets/components/codemirror/src/model/line_widget.js +78 -0
- data/vendor/assets/components/codemirror/src/model/mark_text.js +292 -0
- data/vendor/assets/components/codemirror/src/model/selection.js +82 -0
- data/vendor/assets/components/codemirror/src/model/selection_updates.js +208 -0
- data/vendor/assets/components/codemirror/src/modes.js +96 -0
- data/vendor/assets/components/codemirror/src/util/StringStream.js +90 -0
- data/vendor/assets/components/codemirror/src/util/bidi.js +214 -0
- data/vendor/assets/components/codemirror/src/util/browser.js +33 -0
- data/vendor/assets/components/codemirror/src/util/dom.js +97 -0
- data/vendor/assets/components/codemirror/src/util/event.js +103 -0
- data/vendor/assets/components/codemirror/src/util/feature_detection.js +84 -0
- data/vendor/assets/components/codemirror/src/util/misc.js +150 -0
- data/vendor/assets/components/codemirror/src/util/operation_group.js +72 -0
- data/vendor/assets/components/codemirror/theme/3024-day.css +41 -0
- data/vendor/assets/components/codemirror/theme/3024-night.css +39 -0
- data/vendor/assets/components/codemirror/theme/abcdef.css +32 -0
- data/vendor/assets/components/codemirror/theme/ambiance-mobile.css +5 -0
- data/vendor/assets/components/codemirror/theme/ambiance.css +74 -0
- data/vendor/assets/components/codemirror/theme/base16-dark.css +38 -0
- data/vendor/assets/components/codemirror/theme/base16-light.css +38 -0
- data/vendor/assets/components/codemirror/theme/bespin.css +34 -0
- data/vendor/assets/components/codemirror/theme/blackboard.css +32 -0
- data/vendor/assets/components/codemirror/theme/cobalt.css +25 -0
- data/vendor/assets/components/codemirror/theme/colorforth.css +33 -0
- data/vendor/assets/components/codemirror/theme/dracula.css +40 -0
- data/vendor/assets/components/codemirror/theme/duotone-dark.css +35 -0
- data/vendor/assets/components/codemirror/theme/duotone-light.css +36 -0
- data/vendor/assets/components/codemirror/theme/eclipse.css +23 -0
- data/vendor/assets/components/codemirror/theme/elegant.css +13 -0
- data/vendor/assets/components/codemirror/theme/erlang-dark.css +34 -0
- data/vendor/assets/components/codemirror/theme/hopscotch.css +34 -0
- data/vendor/assets/components/codemirror/theme/icecoder.css +43 -0
- data/vendor/assets/components/codemirror/theme/isotope.css +34 -0
- data/vendor/assets/components/codemirror/theme/lesser-dark.css +47 -0
- data/vendor/assets/components/codemirror/theme/liquibyte.css +95 -0
- data/vendor/assets/components/codemirror/theme/material.css +53 -0
- data/vendor/assets/components/codemirror/theme/mbo.css +37 -0
- data/vendor/assets/components/codemirror/theme/mdn-like.css +46 -0
- data/vendor/assets/components/codemirror/theme/midnight.css +43 -0
- data/vendor/assets/components/codemirror/theme/monokai.css +36 -0
- data/vendor/assets/components/codemirror/theme/neat.css +12 -0
- data/vendor/assets/components/codemirror/theme/neo.css +43 -0
- data/vendor/assets/components/codemirror/theme/night.css +27 -0
- data/vendor/assets/components/codemirror/theme/oceanic-next.css +44 -0
- data/vendor/assets/components/codemirror/theme/panda-syntax.css +85 -0
- data/vendor/assets/components/codemirror/theme/paraiso-dark.css +38 -0
- data/vendor/assets/components/codemirror/theme/paraiso-light.css +38 -0
- data/vendor/assets/components/codemirror/theme/pastel-on-dark.css +52 -0
- data/vendor/assets/components/codemirror/theme/railscasts.css +34 -0
- data/vendor/assets/components/codemirror/theme/rubyblue.css +25 -0
- data/vendor/assets/components/codemirror/theme/seti.css +44 -0
- data/vendor/assets/components/codemirror/theme/shadowfox.css +52 -0
- data/vendor/assets/components/codemirror/theme/solarized.css +168 -0
- data/vendor/assets/components/codemirror/theme/the-matrix.css +30 -0
- data/vendor/assets/components/codemirror/theme/tomorrow-night-bright.css +35 -0
- data/vendor/assets/components/codemirror/theme/tomorrow-night-eighties.css +38 -0
- data/vendor/assets/components/codemirror/theme/ttcn.css +64 -0
- data/vendor/assets/components/codemirror/theme/twilight.css +32 -0
- data/vendor/assets/components/codemirror/theme/vibrant-ink.css +34 -0
- data/vendor/assets/components/codemirror/theme/xq-dark.css +53 -0
- data/vendor/assets/components/codemirror/theme/xq-light.css +43 -0
- data/vendor/assets/components/codemirror/theme/yeti.css +44 -0
- data/vendor/assets/components/codemirror/theme/zenburn.css +37 -0
- data/vendor/assets/components/eve/.bower.json +12 -0
- data/vendor/assets/components/eve/LICENSE +202 -0
- data/vendor/assets/components/eve/README.md +7 -0
- data/vendor/assets/components/eve/component.json +13 -0
- data/vendor/assets/components/eve/e.html +66 -0
- data/vendor/assets/components/eve/eve.js +371 -0
- data/vendor/assets/components/eve/package.json +18 -0
- data/vendor/assets/components/highlightjs/.bower.json +24 -0
- data/vendor/assets/components/highlightjs/LICENSE +24 -0
- data/vendor/assets/components/highlightjs/Makefile +21 -0
- data/vendor/assets/components/highlightjs/README.md +12 -0
- data/vendor/assets/components/highlightjs/bower.json +14 -0
- data/vendor/assets/components/highlightjs/component.json +12 -0
- data/vendor/assets/components/highlightjs/composer.json +26 -0
- data/vendor/assets/components/highlightjs/highlight.pack.js +16645 -0
- data/vendor/assets/components/highlightjs/highlight.pack.min.js +15 -0
- data/vendor/assets/components/highlightjs/package.json +8 -0
- data/vendor/assets/components/highlightjs/styles/agate.css +108 -0
- data/vendor/assets/components/highlightjs/styles/androidstudio.css +66 -0
- data/vendor/assets/components/highlightjs/styles/arduino-light.css +88 -0
- data/vendor/assets/components/highlightjs/styles/arta.css +73 -0
- data/vendor/assets/components/highlightjs/styles/ascetic.css +45 -0
- data/vendor/assets/components/highlightjs/styles/atelier-cave-dark.css +83 -0
- data/vendor/assets/components/highlightjs/styles/atelier-cave-light.css +85 -0
- data/vendor/assets/components/highlightjs/styles/atelier-cave.dark.css +113 -0
- data/vendor/assets/components/highlightjs/styles/atelier-cave.light.css +113 -0
- data/vendor/assets/components/highlightjs/styles/atelier-dune-dark.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-dune-light.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-dune.dark.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-dune.light.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-estuary-dark.css +84 -0
- data/vendor/assets/components/highlightjs/styles/atelier-estuary-light.css +84 -0
- data/vendor/assets/components/highlightjs/styles/atelier-estuary.dark.css +113 -0
- data/vendor/assets/components/highlightjs/styles/atelier-estuary.light.css +113 -0
- data/vendor/assets/components/highlightjs/styles/atelier-forest-dark.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-forest-light.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-forest.dark.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-forest.light.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-heath-dark.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-heath-light.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-heath.dark.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-heath.light.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-lakeside-dark.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-lakeside-light.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-lakeside.dark.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-lakeside.light.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-plateau-dark.css +84 -0
- data/vendor/assets/components/highlightjs/styles/atelier-plateau-light.css +84 -0
- data/vendor/assets/components/highlightjs/styles/atelier-plateau.dark.css +113 -0
- data/vendor/assets/components/highlightjs/styles/atelier-plateau.light.css +113 -0
- data/vendor/assets/components/highlightjs/styles/atelier-savanna-dark.css +84 -0
- data/vendor/assets/components/highlightjs/styles/atelier-savanna-light.css +84 -0
- data/vendor/assets/components/highlightjs/styles/atelier-savanna.dark.css +113 -0
- data/vendor/assets/components/highlightjs/styles/atelier-savanna.light.css +113 -0
- data/vendor/assets/components/highlightjs/styles/atelier-seaside-dark.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-seaside-light.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-seaside.dark.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-seaside.light.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-sulphurpool-dark.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-sulphurpool-light.css +69 -0
- data/vendor/assets/components/highlightjs/styles/atelier-sulphurpool.dark.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atelier-sulphurpool.light.css +94 -0
- data/vendor/assets/components/highlightjs/styles/atom-one-dark.css +96 -0
- data/vendor/assets/components/highlightjs/styles/atom-one-light.css +96 -0
- data/vendor/assets/components/highlightjs/styles/brown-paper.css +64 -0
- data/vendor/assets/components/highlightjs/styles/brown-papersq.png +0 -0
- data/vendor/assets/components/highlightjs/styles/brown_paper.css +103 -0
- data/vendor/assets/components/highlightjs/styles/brown_papersq.png +0 -0
- data/vendor/assets/components/highlightjs/styles/codepen-embed.css +60 -0
- data/vendor/assets/components/highlightjs/styles/color-brewer.css +71 -0
- data/vendor/assets/components/highlightjs/styles/darcula.css +77 -0
- data/vendor/assets/components/highlightjs/styles/dark.css +63 -0
- data/vendor/assets/components/highlightjs/styles/darkula.css +6 -0
- data/vendor/assets/components/highlightjs/styles/default.css +99 -0
- data/vendor/assets/components/highlightjs/styles/docco.css +97 -0
- data/vendor/assets/components/highlightjs/styles/dracula.css +76 -0
- data/vendor/assets/components/highlightjs/styles/far.css +71 -0
- data/vendor/assets/components/highlightjs/styles/foundation.css +88 -0
- data/vendor/assets/components/highlightjs/styles/github-gist.css +71 -0
- data/vendor/assets/components/highlightjs/styles/github.css +99 -0
- data/vendor/assets/components/highlightjs/styles/googlecode.css +89 -0
- data/vendor/assets/components/highlightjs/styles/grayscale.css +101 -0
- data/vendor/assets/components/highlightjs/styles/gruvbox-dark.css +108 -0
- data/vendor/assets/components/highlightjs/styles/gruvbox-light.css +108 -0
- data/vendor/assets/components/highlightjs/styles/hopscotch.css +83 -0
- data/vendor/assets/components/highlightjs/styles/hybrid.css +102 -0
- data/vendor/assets/components/highlightjs/styles/idea.css +97 -0
- data/vendor/assets/components/highlightjs/styles/ir-black.css +73 -0
- data/vendor/assets/components/highlightjs/styles/ir_black.css +106 -0
- data/vendor/assets/components/highlightjs/styles/kimbie.dark.css +74 -0
- data/vendor/assets/components/highlightjs/styles/kimbie.light.css +74 -0
- data/vendor/assets/components/highlightjs/styles/magula.css +70 -0
- data/vendor/assets/components/highlightjs/styles/mono-blue.css +59 -0
- data/vendor/assets/components/highlightjs/styles/monokai-sublime.css +83 -0
- data/vendor/assets/components/highlightjs/styles/monokai.css +70 -0
- data/vendor/assets/components/highlightjs/styles/monokai_sublime.css +154 -0
- data/vendor/assets/components/highlightjs/styles/obsidian.css +88 -0
- data/vendor/assets/components/highlightjs/styles/ocean.css +74 -0
- data/vendor/assets/components/highlightjs/styles/paraiso-dark.css +72 -0
- data/vendor/assets/components/highlightjs/styles/paraiso-light.css +72 -0
- data/vendor/assets/components/highlightjs/styles/paraiso.dark.css +96 -0
- data/vendor/assets/components/highlightjs/styles/paraiso.light.css +96 -0
- data/vendor/assets/components/highlightjs/styles/pojoaque.css +83 -0
- data/vendor/assets/components/highlightjs/styles/pojoaque.jpg +0 -0
- data/vendor/assets/components/highlightjs/styles/purebasic.css +96 -0
- data/vendor/assets/components/highlightjs/styles/qtcreator_dark.css +83 -0
- data/vendor/assets/components/highlightjs/styles/qtcreator_light.css +83 -0
- data/vendor/assets/components/highlightjs/styles/railscasts.css +106 -0
- data/vendor/assets/components/highlightjs/styles/rainbow.css +85 -0
- data/vendor/assets/components/highlightjs/styles/routeros.css +108 -0
- data/vendor/assets/components/highlightjs/styles/school-book.css +72 -0
- data/vendor/assets/components/highlightjs/styles/school-book.png +0 -0
- data/vendor/assets/components/highlightjs/styles/school_book.css +111 -0
- data/vendor/assets/components/highlightjs/styles/school_book.png +0 -0
- data/vendor/assets/components/highlightjs/styles/solarized-dark.css +84 -0
- data/vendor/assets/components/highlightjs/styles/solarized-light.css +84 -0
- data/vendor/assets/components/highlightjs/styles/solarized_dark.css +107 -0
- data/vendor/assets/components/highlightjs/styles/solarized_light.css +107 -0
- data/vendor/assets/components/highlightjs/styles/sunburst.css +102 -0
- data/vendor/assets/components/highlightjs/styles/tomorrow-night-blue.css +75 -0
- data/vendor/assets/components/highlightjs/styles/tomorrow-night-bright.css +74 -0
- data/vendor/assets/components/highlightjs/styles/tomorrow-night-eighties.css +74 -0
- data/vendor/assets/components/highlightjs/styles/tomorrow-night.css +75 -0
- data/vendor/assets/components/highlightjs/styles/tomorrow.css +72 -0
- data/vendor/assets/components/highlightjs/styles/vs.css +68 -0
- data/vendor/assets/components/highlightjs/styles/vs2015.css +115 -0
- data/vendor/assets/components/highlightjs/styles/xcode.css +93 -0
- data/vendor/assets/components/highlightjs/styles/xt256.css +92 -0
- data/vendor/assets/components/highlightjs/styles/zenburn.css +80 -0
- data/vendor/assets/components/jquery/.bower.json +25 -0
- data/vendor/assets/components/jquery/AUTHORS.txt +313 -0
- data/vendor/assets/components/jquery/LICENSE.txt +36 -0
- data/vendor/assets/components/jquery/README.md +67 -0
- data/vendor/assets/components/jquery/bower.json +14 -0
- data/vendor/assets/components/jquery/dist/core.js +399 -0
- data/vendor/assets/components/jquery/dist/jquery.js +10364 -0
- data/vendor/assets/components/jquery/dist/jquery.min.js +2 -0
- data/vendor/assets/components/jquery/dist/jquery.min.map +1 -0
- data/vendor/assets/components/jquery/dist/jquery.slim.js +8269 -0
- data/vendor/assets/components/jquery/dist/jquery.slim.min.js +2 -0
- data/vendor/assets/components/jquery/dist/jquery.slim.min.map +1 -0
- data/vendor/assets/components/jquery/external/sizzle/LICENSE.txt +36 -0
- data/vendor/assets/components/jquery/external/sizzle/dist/sizzle.js +2272 -0
- data/vendor/assets/components/jquery/external/sizzle/dist/sizzle.min.js +3 -0
- data/vendor/assets/components/jquery/external/sizzle/dist/sizzle.min.map +1 -0
- data/vendor/assets/components/jquery/src/.eslintrc.json +5 -0
- data/vendor/assets/components/jquery/src/ajax.js +856 -0
- data/vendor/assets/components/jquery/src/ajax/jsonp.js +103 -0
- data/vendor/assets/components/jquery/src/ajax/load.js +77 -0
- data/vendor/assets/components/jquery/src/ajax/parseXML.js +30 -0
- data/vendor/assets/components/jquery/src/ajax/script.js +77 -0
- data/vendor/assets/components/jquery/src/ajax/var/location.js +5 -0
- data/vendor/assets/components/jquery/src/ajax/var/nonce.js +5 -0
- data/vendor/assets/components/jquery/src/ajax/var/rquery.js +5 -0
- data/vendor/assets/components/jquery/src/ajax/xhr.js +170 -0
- data/vendor/assets/components/jquery/src/attributes.js +13 -0
- data/vendor/assets/components/jquery/src/attributes/attr.js +141 -0
- data/vendor/assets/components/jquery/src/attributes/classes.js +186 -0
- data/vendor/assets/components/jquery/src/attributes/prop.js +143 -0
- data/vendor/assets/components/jquery/src/attributes/support.js +33 -0
- data/vendor/assets/components/jquery/src/attributes/val.js +191 -0
- data/vendor/assets/components/jquery/src/callbacks.js +236 -0
- data/vendor/assets/components/jquery/src/core.js +399 -0
- data/vendor/assets/components/jquery/src/core/DOMEval.js +30 -0
- data/vendor/assets/components/jquery/src/core/access.js +72 -0
- data/vendor/assets/components/jquery/src/core/camelCase.js +23 -0
- data/vendor/assets/components/jquery/src/core/init.js +129 -0
- data/vendor/assets/components/jquery/src/core/nodeName.js +13 -0
- data/vendor/assets/components/jquery/src/core/parseHTML.js +65 -0
- data/vendor/assets/components/jquery/src/core/ready-no-deferred.js +97 -0
- data/vendor/assets/components/jquery/src/core/ready.js +86 -0
- data/vendor/assets/components/jquery/src/core/readyException.js +13 -0
- data/vendor/assets/components/jquery/src/core/stripAndCollapse.js +14 -0
- data/vendor/assets/components/jquery/src/core/support.js +20 -0
- data/vendor/assets/components/jquery/src/core/toType.js +20 -0
- data/vendor/assets/components/jquery/src/core/var/rsingleTag.js +6 -0
- data/vendor/assets/components/jquery/src/css.js +481 -0
- data/vendor/assets/components/jquery/src/css/addGetHookIf.js +26 -0
- data/vendor/assets/components/jquery/src/css/adjustCSS.js +73 -0
- data/vendor/assets/components/jquery/src/css/curCSS.js +65 -0
- data/vendor/assets/components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
- data/vendor/assets/components/jquery/src/css/showHide.js +105 -0
- data/vendor/assets/components/jquery/src/css/support.js +102 -0
- data/vendor/assets/components/jquery/src/css/var/cssExpand.js +5 -0
- data/vendor/assets/components/jquery/src/css/var/getStyles.js +17 -0
- data/vendor/assets/components/jquery/src/css/var/isHiddenWithinTree.js +34 -0
- data/vendor/assets/components/jquery/src/css/var/rboxStyle.js +7 -0
- data/vendor/assets/components/jquery/src/css/var/rnumnonpx.js +7 -0
- data/vendor/assets/components/jquery/src/css/var/swap.js +26 -0
- data/vendor/assets/components/jquery/src/data.js +180 -0
- data/vendor/assets/components/jquery/src/data/Data.js +162 -0
- data/vendor/assets/components/jquery/src/data/var/acceptData.js +19 -0
- data/vendor/assets/components/jquery/src/data/var/dataPriv.js +7 -0
- data/vendor/assets/components/jquery/src/data/var/dataUser.js +7 -0
- data/vendor/assets/components/jquery/src/deferred.js +399 -0
- data/vendor/assets/components/jquery/src/deferred/exceptionHook.js +21 -0
- data/vendor/assets/components/jquery/src/deprecated.js +98 -0
- data/vendor/assets/components/jquery/src/dimensions.js +57 -0
- data/vendor/assets/components/jquery/src/effects.js +702 -0
- data/vendor/assets/components/jquery/src/effects/Tween.js +123 -0
- data/vendor/assets/components/jquery/src/effects/animatedSelector.js +15 -0
- data/vendor/assets/components/jquery/src/event.js +748 -0
- data/vendor/assets/components/jquery/src/event/ajax.js +22 -0
- data/vendor/assets/components/jquery/src/event/alias.js +29 -0
- data/vendor/assets/components/jquery/src/event/focusin.js +55 -0
- data/vendor/assets/components/jquery/src/event/support.js +11 -0
- data/vendor/assets/components/jquery/src/event/trigger.js +199 -0
- data/vendor/assets/components/jquery/src/exports/amd.js +26 -0
- data/vendor/assets/components/jquery/src/exports/global.js +34 -0
- data/vendor/assets/components/jquery/src/jquery.js +40 -0
- data/vendor/assets/components/jquery/src/manipulation.js +486 -0
- data/vendor/assets/components/jquery/src/manipulation/_evalUrl.js +23 -0
- data/vendor/assets/components/jquery/src/manipulation/buildFragment.js +105 -0
- data/vendor/assets/components/jquery/src/manipulation/getAll.js +32 -0
- data/vendor/assets/components/jquery/src/manipulation/setGlobalEval.js +22 -0
- data/vendor/assets/components/jquery/src/manipulation/support.js +35 -0
- data/vendor/assets/components/jquery/src/manipulation/var/rcheckableType.js +5 -0
- data/vendor/assets/components/jquery/src/manipulation/var/rscriptType.js +5 -0
- data/vendor/assets/components/jquery/src/manipulation/var/rtagName.js +5 -0
- data/vendor/assets/components/jquery/src/manipulation/wrapMap.js +29 -0
- data/vendor/assets/components/jquery/src/offset.js +233 -0
- data/vendor/assets/components/jquery/src/queue.js +145 -0
- data/vendor/assets/components/jquery/src/queue/delay.js +24 -0
- data/vendor/assets/components/jquery/src/selector-native.js +237 -0
- data/vendor/assets/components/jquery/src/selector-sizzle.js +19 -0
- data/vendor/assets/components/jquery/src/selector.js +3 -0
- data/vendor/assets/components/jquery/src/serialize.js +132 -0
- data/vendor/assets/components/jquery/src/traversing.js +191 -0
- data/vendor/assets/components/jquery/src/traversing/findFilter.js +97 -0
- data/vendor/assets/components/jquery/src/traversing/var/dir.js +22 -0
- data/vendor/assets/components/jquery/src/traversing/var/rneedsContext.js +8 -0
- data/vendor/assets/components/jquery/src/traversing/var/siblings.js +17 -0
- data/vendor/assets/components/jquery/src/var/ObjectFunctionString.js +7 -0
- data/vendor/assets/components/jquery/src/var/arr.js +5 -0
- data/vendor/assets/components/jquery/src/var/class2type.js +6 -0
- data/vendor/assets/components/jquery/src/var/concat.js +7 -0
- data/vendor/assets/components/jquery/src/var/document.js +5 -0
- data/vendor/assets/components/jquery/src/var/documentElement.js +7 -0
- data/vendor/assets/components/jquery/src/var/fnToString.js +7 -0
- data/vendor/assets/components/jquery/src/var/getProto.js +5 -0
- data/vendor/assets/components/jquery/src/var/hasOwn.js +7 -0
- data/vendor/assets/components/jquery/src/var/indexOf.js +7 -0
- data/vendor/assets/components/jquery/src/var/isFunction.js +13 -0
- data/vendor/assets/components/jquery/src/var/isWindow.js +8 -0
- data/vendor/assets/components/jquery/src/var/pnum.js +5 -0
- data/vendor/assets/components/jquery/src/var/push.js +7 -0
- data/vendor/assets/components/jquery/src/var/rcssNum.js +9 -0
- data/vendor/assets/components/jquery/src/var/rnothtmlwhite.js +8 -0
- data/vendor/assets/components/jquery/src/var/slice.js +7 -0
- data/vendor/assets/components/jquery/src/var/support.js +6 -0
- data/vendor/assets/components/jquery/src/var/toString.js +7 -0
- data/vendor/assets/components/jquery/src/wrap.js +78 -0
- data/vendor/assets/components/markdown-it/.bower.json +38 -0
- data/vendor/assets/components/markdown-it/CHANGELOG.md +442 -0
- data/vendor/assets/components/markdown-it/CONTRIBUTING.md +15 -0
- data/vendor/assets/components/markdown-it/LICENSE +22 -0
- data/vendor/assets/components/markdown-it/Procfile +1 -0
- data/vendor/assets/components/markdown-it/README.md +294 -0
- data/vendor/assets/components/markdown-it/bin/markdown-it.js +113 -0
- data/vendor/assets/components/markdown-it/bower.json +28 -0
- data/vendor/assets/components/markdown-it/dist/markdown-it.js +7963 -0
- data/vendor/assets/components/markdown-it/dist/markdown-it.min.js +1 -0
- data/vendor/assets/components/markdown-it/package.json +64 -0
- data/vendor/assets/components/plantuml-encoder/.bower.json +29 -0
- data/vendor/assets/components/plantuml-encoder/LICENSE +19 -0
- data/vendor/assets/components/plantuml-encoder/README.md +38 -0
- data/vendor/assets/components/plantuml-encoder/bower.json +20 -0
- data/vendor/assets/components/plantuml-encoder/dist/plantuml-encoder.js +3994 -0
- data/vendor/assets/components/plantuml-encoder/dist/plantuml-encoder.min.js +1 -0
- data/vendor/assets/components/plantuml-encoder/package.json +33 -0
- data/vendor/assets/components/raphael/.bower.json +45 -0
- data/vendor/assets/components/raphael/bower.json +31 -0
- data/vendor/assets/components/raphael/dev/banner.txt +8 -0
- data/vendor/assets/components/raphael/dev/raphael.amd.js +14 -0
- data/vendor/assets/components/raphael/dev/raphael.core.js +5413 -0
- data/vendor/assets/components/raphael/dev/raphael.svg.js +1428 -0
- data/vendor/assets/components/raphael/dev/raphael.vml.js +1010 -0
- data/vendor/assets/components/raphael/dev/test/svg/dom.js +295 -0
- data/vendor/assets/components/raphael/dev/test/vml/dom.js +5 -0
- data/vendor/assets/components/raphael/license.txt +21 -0
- data/vendor/assets/components/raphael/raphael.js +8330 -0
- data/vendor/assets/components/raphael/raphael.min.js +3 -0
- data/vendor/assets/components/raphael/raphael.no-deps.js +7959 -0
- data/vendor/assets/components/raphael/raphael.no-deps.min.js +3 -0
- data/vendor/assets/components/raphael/webpack.config.js +62 -0
- data/vendor/assets/components/squire-rte/.bower.json +34 -0
- data/vendor/assets/components/squire-rte/Demo.html +143 -0
- data/vendor/assets/components/squire-rte/LICENSE +21 -0
- data/vendor/assets/components/squire-rte/Makefile +22 -0
- data/vendor/assets/components/squire-rte/README.md +473 -0
- data/vendor/assets/components/squire-rte/bower.json +24 -0
- data/vendor/assets/components/squire-rte/build/document.html +54 -0
- data/vendor/assets/components/squire-rte/build/squire-raw.js +4722 -0
- data/vendor/assets/components/squire-rte/build/squire.js +2 -0
- data/vendor/assets/components/squire-rte/package.json +31 -0
- data/vendor/assets/components/squire-rte/source/Clean.js +358 -0
- data/vendor/assets/components/squire-rte/source/Clipboard.js +331 -0
- data/vendor/assets/components/squire-rte/source/Constants.js +60 -0
- data/vendor/assets/components/squire-rte/source/Editor.js +2201 -0
- data/vendor/assets/components/squire-rte/source/KeyHandlers.js +502 -0
- data/vendor/assets/components/squire-rte/source/Node.js +553 -0
- data/vendor/assets/components/squire-rte/source/Range.js +540 -0
- data/vendor/assets/components/squire-rte/source/TreeWalker.js +118 -0
- data/vendor/assets/components/squire-rte/source/document.html +54 -0
- data/vendor/assets/components/squire-rte/source/exports.js +42 -0
- data/vendor/assets/components/squire-rte/source/intro.js +6 -0
- data/vendor/assets/components/squire-rte/source/outro.js +22 -0
- data/vendor/assets/components/to-mark/.bower.json +35 -0
- data/vendor/assets/components/to-mark/bower.json +22 -0
- data/vendor/assets/components/to-mark/demo/demo.html +24 -0
- data/vendor/assets/components/to-mark/demo/demo2.html +94 -0
- data/vendor/assets/components/to-mark/dist/to-mark.js +1283 -0
- data/vendor/assets/components/to-mark/dist/to-mark.min.js +1 -0
- data/vendor/assets/components/to-mark/gulpfile.js +112 -0
- data/vendor/assets/components/to-mark/karma.conf.js +260 -0
- data/vendor/assets/components/to-mark/package-lock.json +13061 -0
- data/vendor/assets/components/to-mark/package.json +53 -0
- data/vendor/assets/components/tui-chart/.bower.json +44 -0
- data/vendor/assets/components/tui-chart/CODE_OF_CONDUCT.md +73 -0
- data/vendor/assets/components/tui-chart/CONTRIBUTING.md +91 -0
- data/vendor/assets/components/tui-chart/LICENSE +21 -0
- data/vendor/assets/components/tui-chart/README.md +142 -0
- data/vendor/assets/components/tui-chart/bower.json +33 -0
- data/vendor/assets/components/tui-chart/dist/maps/china.js +10 -0
- data/vendor/assets/components/tui-chart/dist/maps/japan.js +10 -0
- data/vendor/assets/components/tui-chart/dist/maps/singapore.js +10 -0
- data/vendor/assets/components/tui-chart/dist/maps/south-korea.js +10 -0
- data/vendor/assets/components/tui-chart/dist/maps/taiwan.js +10 -0
- data/vendor/assets/components/tui-chart/dist/maps/thailand.js +10 -0
- data/vendor/assets/components/tui-chart/dist/maps/usa.js +10 -0
- data/vendor/assets/components/tui-chart/dist/maps/world.js +11 -0
- data/vendor/assets/components/tui-chart/dist/tui-chart.css +704 -0
- data/vendor/assets/components/tui-chart/dist/tui-chart.js +40567 -0
- data/vendor/assets/components/tui-chart/dist/tui-chart.min.css +10 -0
- data/vendor/assets/components/tui-chart/dist/tui-chart.min.js +20 -0
- data/vendor/assets/components/tui-chart/docs/COMMIT_MESSAGE_CONVENTION.md +49 -0
- data/vendor/assets/components/tui-chart/docs/ISSUE_TEMPLATE.md +24 -0
- data/vendor/assets/components/tui-chart/docs/PULL_REQUEST_TEMPLATE.md +42 -0
- data/vendor/assets/components/tui-chart/docs/README.md +11 -0
- data/vendor/assets/components/tui-chart/docs/wiki/README.md +27 -0
- data/vendor/assets/components/tui-chart/docs/wiki/_Sidebar.md +31 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-export-menu.md +66 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-type-radial.md +121 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-bar,column.md +312 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-bubble.md +63 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-column-line-combo.md +104 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-heatmap.md +39 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-line,area.md +333 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-line-area-combo.md +78 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-line-scatter-combo.md +101 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-map.md +153 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-pie-donut-combo.md +98 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-pie.md +186 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-scatter.md +58 -0
- data/vendor/assets/components/tui-chart/docs/wiki/chart-types-treemap.md +158 -0
- data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-china-map.md +38 -0
- data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-japan-map.md +51 -0
- data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-singapore-map.md +9 -0
- data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-south-korea-map.md +21 -0
- data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-taiwan-map.md +26 -0
- data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-thailand-map.md +82 -0
- data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-usa-map.md +55 -0
- data/vendor/assets/components/tui-chart/docs/wiki/code-table-of-world-map.md +180 -0
- data/vendor/assets/components/tui-chart/docs/wiki/features-axes.md +209 -0
- data/vendor/assets/components/tui-chart/docs/wiki/features-chart.md +157 -0
- data/vendor/assets/components/tui-chart/docs/wiki/features-circle-legend.md +20 -0
- data/vendor/assets/components/tui-chart/docs/wiki/features-legend.md +89 -0
- data/vendor/assets/components/tui-chart/docs/wiki/features-plot.md +141 -0
- data/vendor/assets/components/tui-chart/docs/wiki/features-series.md +240 -0
- data/vendor/assets/components/tui-chart/docs/wiki/features-tooltip.md +223 -0
- data/vendor/assets/components/tui-chart/docs/wiki/getting-started.md +74 -0
- data/vendor/assets/components/tui-chart/docs/wiki/import-chart-data-from-existing-table-element.md +150 -0
- data/vendor/assets/components/tui-chart/docs/wiki/table-of-supported-options.md +344 -0
- data/vendor/assets/components/tui-chart/docs/wiki/theme.md +338 -0
- data/vendor/assets/components/tui-chart/package-lock.json +8881 -0
- data/vendor/assets/components/tui-code-snippet/.bower.json +31 -0
- data/vendor/assets/components/tui-code-snippet/LICENSE +21 -0
- data/vendor/assets/components/tui-code-snippet/README.md +109 -0
- data/vendor/assets/components/tui-code-snippet/bower.json +20 -0
- data/vendor/assets/components/tui-code-snippet/demo/postBridge/README.md +26 -0
- data/vendor/assets/components/tui-code-snippet/demo/postBridge/public/popup.html +27 -0
- data/vendor/assets/components/tui-code-snippet/demo/postBridge/public/postBridge.html +31 -0
- data/vendor/assets/components/tui-code-snippet/demo/postBridge/server.js +28 -0
- data/vendor/assets/components/tui-code-snippet/dist/tui-code-snippet.js +4228 -0
- data/vendor/assets/components/tui-code-snippet/dist/tui-code-snippet.min.js +7 -0
- data/vendor/assets/components/tui-code-snippet/package-lock.json +6038 -0
- data/vendor/assets/components/tui-color-picker/.bower.json +37 -0
- data/vendor/assets/components/tui-color-picker/ISSUE_TEMPLATE.md +26 -0
- data/vendor/assets/components/tui-color-picker/LICENSE +34 -0
- data/vendor/assets/components/tui-color-picker/README.md +69 -0
- data/vendor/assets/components/tui-color-picker/bower.json +26 -0
- data/vendor/assets/components/tui-color-picker/dist/tui-color-picker.css +148 -0
- data/vendor/assets/components/tui-color-picker/dist/tui-color-picker.js +3146 -0
- data/vendor/assets/components/tui-color-picker/dist/tui-color-picker.min.css +7 -0
- data/vendor/assets/components/tui-color-picker/dist/tui-color-picker.min.js +9 -0
- data/vendor/assets/components/tui-color-picker/package-lock.json +8440 -0
- data/vendor/assets/components/tui-editor/.bower.json +71 -0
- data/vendor/assets/components/tui-editor/CODE_OF_CONDUCT.md +73 -0
- data/vendor/assets/components/tui-editor/CONTRIBUTING.md +92 -0
- data/vendor/assets/components/tui-editor/LICENSE +21 -0
- data/vendor/assets/components/tui-editor/README.md +204 -0
- data/vendor/assets/components/tui-editor/bower.json +59 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-Editor-all.js +36850 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-Editor-all.min.js +13 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-Editor.js +24646 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-Editor.min.js +7 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-Viewer-all.js +14768 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-Viewer-all.min.js +13 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-Viewer.js +3686 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-Viewer.min.js +7 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-contents.css +239 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-contents.min.css +1 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extChart.js +7040 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extChart.min.js +13 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extColorSyntax.js +472 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extColorSyntax.min.js +7 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extScrollSync.js +1241 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extScrollSync.min.js +7 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extTable.js +3930 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extTable.min.js +7 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extUML.js +212 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor-extUML.min.js +7 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor.css +1166 -0
- data/vendor/assets/components/tui-editor/dist/tui-editor.min.css +1 -0
- data/vendor/assets/components/tui-editor/docs/COMMIT_MESSAGE_CONVENTION.md +49 -0
- data/vendor/assets/components/tui-editor/docs/PULL_REQUEST_TEMPLATE.md +41 -0
- data/vendor/assets/components/tui-editor/docs/README.md +13 -0
- data/vendor/assets/components/tui-editor/docs/getting-started-with-bower.md +93 -0
- data/vendor/assets/components/tui-editor/docs/getting-started.md +76 -0
- data/vendor/assets/components/tui-editor/docs/using-extensions.md +91 -0
- data/vendor/assets/components/tui-editor/docs/writing-your-own-extension.md +167 -0
- data/vendor/assets/components/tui-editor/examples/example00-demo.html +85 -0
- data/vendor/assets/components/tui-editor/examples/example01-basic.html +37 -0
- data/vendor/assets/components/tui-editor/examples/example02-viewer-basic.html +68 -0
- data/vendor/assets/components/tui-editor/examples/example03-jquery.html +36 -0
- data/vendor/assets/components/tui-editor/examples/example04-viewer-jquery.html +67 -0
- data/vendor/assets/components/tui-editor/examples/example05-scrollsync.html +77 -0
- data/vendor/assets/components/tui-editor/examples/example06-colorsyntax.html +44 -0
- data/vendor/assets/components/tui-editor/examples/example07-table.html +48 -0
- data/vendor/assets/components/tui-editor/examples/example08-uml.html +69 -0
- data/vendor/assets/components/tui-editor/examples/example09-multiple-extensions.html +85 -0
- data/vendor/assets/components/tui-editor/examples/example10-viewer-multiple-extensions.html +86 -0
- data/vendor/assets/components/tui-editor/examples/example11-chart.html +60 -0
- data/vendor/assets/components/tui-editor/examples/example12-writing-extension.html +66 -0
- data/vendor/assets/components/tui-editor/examples/examples.json +41 -0
- data/vendor/assets/components/tui-editor/examples/explain.css +7 -0
- data/vendor/assets/components/tui-editor/package-lock.json +13289 -0
- data/vendor/assets/components/tui-editor/package.json +90 -0
- 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
|
+
});
|