prism-rails 1.6.0.3 → 1.29.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +12 -0
- data/README.md +109 -44
- data/lib/prism-rails/version.rb +1 -1
- data/vendor/assets/javascripts/languages/index.js +82 -0
- data/vendor/assets/javascripts/languages/prism-abap.js +48 -0
- data/vendor/assets/javascripts/languages/prism-abnf.js +54 -0
- data/vendor/assets/javascripts/languages/prism-actionscript.js +19 -0
- data/vendor/assets/javascripts/languages/prism-ada.js +22 -0
- data/vendor/assets/javascripts/languages/prism-agda.js +24 -0
- data/vendor/assets/javascripts/languages/prism-al.js +25 -0
- data/vendor/assets/javascripts/languages/prism-antlr4.js +65 -0
- data/vendor/assets/javascripts/languages/prism-apacheconf.js +47 -0
- data/vendor/assets/javascripts/languages/prism-apex.js +65 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-apl.js +7 -4
- data/vendor/assets/javascripts/languages/prism-applescript.js +17 -0
- data/vendor/assets/javascripts/languages/prism-aql.js +49 -0
- data/vendor/assets/javascripts/languages/prism-arduino.js +7 -0
- data/vendor/assets/javascripts/languages/prism-arff.js +10 -0
- data/vendor/assets/javascripts/languages/prism-armasm.js +49 -0
- data/vendor/assets/javascripts/languages/prism-arturo.js +105 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-asciidoc.js +36 -73
- data/vendor/assets/javascripts/languages/prism-asm6502.js +29 -0
- data/vendor/assets/javascripts/languages/prism-asmatmel.js +43 -0
- data/vendor/assets/javascripts/languages/prism-aspnet.js +48 -0
- data/vendor/assets/javascripts/languages/prism-autohotkey.js +44 -0
- data/vendor/assets/javascripts/languages/prism-autoit.js +34 -0
- data/vendor/assets/javascripts/languages/prism-avisynth.js +188 -0
- data/vendor/assets/javascripts/languages/prism-avro-idl.js +50 -0
- data/vendor/assets/javascripts/languages/prism-awk.js +32 -0
- data/vendor/assets/javascripts/languages/prism-bash.js +235 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-basic.js +7 -4
- data/vendor/assets/javascripts/{prism → languages}/prism-batch.js +10 -10
- data/vendor/assets/javascripts/languages/prism-bbcode.js +29 -0
- data/vendor/assets/javascripts/languages/prism-bbj.js +19 -0
- data/vendor/assets/javascripts/languages/prism-bicep.js +77 -0
- data/vendor/assets/javascripts/languages/prism-birb.js +23 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-bison.js +2 -2
- data/vendor/assets/javascripts/languages/prism-bnf.js +21 -0
- data/vendor/assets/javascripts/languages/prism-bqn.js +63 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-brainfuck.js +1 -1
- data/vendor/assets/javascripts/languages/prism-brightscript.js +44 -0
- data/vendor/assets/javascripts/languages/prism-bro.js +37 -0
- data/vendor/assets/javascripts/languages/prism-bsl.js +75 -0
- data/vendor/assets/javascripts/languages/prism-c.js +80 -0
- data/vendor/assets/javascripts/languages/prism-cfscript.js +44 -0
- data/vendor/assets/javascripts/languages/prism-chaiscript.js +60 -0
- data/vendor/assets/javascripts/languages/prism-cil.js +27 -0
- data/vendor/assets/javascripts/languages/prism-cilkc.js +8 -0
- data/vendor/assets/javascripts/languages/prism-cilkcpp.js +9 -0
- data/vendor/assets/javascripts/languages/prism-clike.js +31 -0
- data/vendor/assets/javascripts/languages/prism-clojure.js +31 -0
- data/vendor/assets/javascripts/languages/prism-cmake.js +29 -0
- data/vendor/assets/javascripts/languages/prism-cobol.js +53 -0
- data/vendor/assets/javascripts/languages/prism-coffeescript.js +96 -0
- data/vendor/assets/javascripts/languages/prism-concurnas.js +61 -0
- data/vendor/assets/javascripts/languages/prism-cooklang.js +146 -0
- data/vendor/assets/javascripts/languages/prism-coq.js +54 -0
- data/vendor/assets/javascripts/languages/prism-core.js +1263 -0
- data/vendor/assets/javascripts/languages/prism-cpp.js +99 -0
- data/vendor/assets/javascripts/languages/prism-crystal.js +57 -0
- data/vendor/assets/javascripts/languages/prism-csharp.js +366 -0
- data/vendor/assets/javascripts/languages/prism-cshtml.js +199 -0
- data/vendor/assets/javascripts/languages/prism-csp.js +76 -0
- data/vendor/assets/javascripts/languages/prism-css-extras.js +120 -0
- data/vendor/assets/javascripts/languages/prism-css.js +64 -0
- data/vendor/assets/javascripts/languages/prism-csv.js +6 -0
- data/vendor/assets/javascripts/languages/prism-cue.js +84 -0
- data/vendor/assets/javascripts/languages/prism-cypher.js +36 -0
- data/vendor/assets/javascripts/languages/prism-d.js +84 -0
- data/vendor/assets/javascripts/languages/prism-dart.js +79 -0
- data/vendor/assets/javascripts/languages/prism-dataweave.js +41 -0
- data/vendor/assets/javascripts/languages/prism-dax.js +27 -0
- data/vendor/assets/javascripts/languages/prism-dhall.js +69 -0
- data/vendor/assets/javascripts/languages/prism-diff.js +64 -0
- data/vendor/assets/javascripts/languages/prism-django.js +60 -0
- data/vendor/assets/javascripts/languages/prism-dns-zone-file.js +33 -0
- data/vendor/assets/javascripts/languages/prism-docker.js +98 -0
- data/vendor/assets/javascripts/languages/prism-dot.js +76 -0
- data/vendor/assets/javascripts/languages/prism-ebnf.js +22 -0
- data/vendor/assets/javascripts/languages/prism-editorconfig.js +26 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-eiffel.js +19 -9
- data/vendor/assets/javascripts/languages/prism-ejs.js +26 -0
- data/vendor/assets/javascripts/languages/prism-elixir.js +98 -0
- data/vendor/assets/javascripts/languages/prism-elm.js +45 -0
- data/vendor/assets/javascripts/languages/prism-erb.js +25 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-erlang.js +12 -9
- data/vendor/assets/javascripts/languages/prism-etlua.js +23 -0
- data/vendor/assets/javascripts/languages/prism-excel-formula.js +66 -0
- data/vendor/assets/javascripts/languages/prism-factor.js +403 -0
- data/vendor/assets/javascripts/languages/prism-false.js +32 -0
- data/vendor/assets/javascripts/languages/prism-firestore-security-rules.js +35 -0
- data/vendor/assets/javascripts/languages/prism-flow.js +35 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-fortran.js +11 -8
- data/vendor/assets/javascripts/languages/prism-fsharp.js +75 -0
- data/vendor/assets/javascripts/languages/prism-ftl.js +98 -0
- data/vendor/assets/javascripts/languages/prism-gap.js +54 -0
- data/vendor/assets/javascripts/languages/prism-gcode.js +16 -0
- data/vendor/assets/javascripts/languages/prism-gdscript.js +27 -0
- data/vendor/assets/javascripts/languages/prism-gedcom.js +28 -0
- data/vendor/assets/javascripts/languages/prism-gettext.js +43 -0
- data/vendor/assets/javascripts/languages/prism-gherkin.js +85 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-git.js +3 -3
- data/vendor/assets/javascripts/languages/prism-glsl.js +3 -0
- data/vendor/assets/javascripts/languages/prism-gml.js +7 -0
- data/vendor/assets/javascripts/languages/prism-gn.js +51 -0
- data/vendor/assets/javascripts/languages/prism-go-module.js +24 -0
- data/vendor/assets/javascripts/languages/prism-go.js +28 -0
- data/vendor/assets/javascripts/languages/prism-gradle.js +63 -0
- data/vendor/assets/javascripts/languages/prism-graphql.js +211 -0
- data/vendor/assets/javascripts/languages/prism-groovy.js +65 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-haml.js +32 -37
- data/vendor/assets/javascripts/languages/prism-handlebars.js +40 -0
- data/vendor/assets/javascripts/languages/prism-haskell.js +66 -0
- data/vendor/assets/javascripts/languages/prism-haxe.js +78 -0
- data/vendor/assets/javascripts/languages/prism-hcl.js +63 -0
- data/vendor/assets/javascripts/languages/prism-hlsl.js +20 -0
- data/vendor/assets/javascripts/languages/prism-hoon.js +14 -0
- data/vendor/assets/javascripts/languages/prism-hpkp.js +14 -0
- data/vendor/assets/javascripts/languages/prism-hsts.js +14 -0
- data/vendor/assets/javascripts/languages/prism-http.js +151 -0
- data/vendor/assets/javascripts/languages/prism-ichigojam.js +15 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-icon.js +6 -3
- data/vendor/assets/javascripts/languages/prism-icu-message-format.js +148 -0
- data/vendor/assets/javascripts/languages/prism-idris.js +19 -0
- data/vendor/assets/javascripts/languages/prism-iecst.js +32 -0
- data/vendor/assets/javascripts/languages/prism-ignore.js +23 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-inform7.js +14 -11
- data/vendor/assets/javascripts/languages/prism-ini.js +42 -0
- data/vendor/assets/javascripts/languages/prism-io.js +22 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-j.js +12 -6
- data/vendor/assets/javascripts/languages/prism-java.js +124 -0
- data/vendor/assets/javascripts/languages/prism-javadoc.js +82 -0
- data/vendor/assets/javascripts/languages/prism-javadoclike.js +87 -0
- data/vendor/assets/javascripts/languages/prism-javascript.js +172 -0
- data/vendor/assets/javascripts/languages/prism-javastacktrace.js +142 -0
- data/vendor/assets/javascripts/languages/prism-jexl.js +14 -0
- data/vendor/assets/javascripts/languages/prism-jolie.js +41 -0
- data/vendor/assets/javascripts/languages/prism-jq.js +69 -0
- data/vendor/assets/javascripts/languages/prism-js-extras.js +135 -0
- data/vendor/assets/javascripts/languages/prism-js-templates.js +349 -0
- data/vendor/assets/javascripts/languages/prism-jsdoc.js +78 -0
- data/vendor/assets/javascripts/languages/prism-json.js +27 -0
- data/vendor/assets/javascripts/languages/prism-json5.js +23 -0
- data/vendor/assets/javascripts/languages/prism-jsonp.js +7 -0
- data/vendor/assets/javascripts/languages/prism-jsstacktrace.js +49 -0
- data/vendor/assets/javascripts/languages/prism-jsx.js +145 -0
- data/vendor/assets/javascripts/languages/prism-julia.js +35 -0
- data/vendor/assets/javascripts/languages/prism-keepalived.js +51 -0
- data/vendor/assets/javascripts/languages/prism-keyman.js +44 -0
- data/vendor/assets/javascripts/languages/prism-kotlin.js +88 -0
- data/vendor/assets/javascripts/languages/prism-kumir.js +106 -0
- data/vendor/assets/javascripts/languages/prism-kusto.js +44 -0
- data/vendor/assets/javascripts/languages/prism-latex.js +64 -0
- data/vendor/assets/javascripts/languages/prism-latte.js +63 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-less.js +6 -12
- data/vendor/assets/javascripts/languages/prism-lilypond.js +69 -0
- data/vendor/assets/javascripts/languages/prism-linker-script.js +30 -0
- data/vendor/assets/javascripts/languages/prism-liquid.js +66 -0
- data/vendor/assets/javascripts/languages/prism-lisp.js +197 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-livescript.js +20 -19
- data/vendor/assets/javascripts/languages/prism-llvm.js +19 -0
- data/vendor/assets/javascripts/languages/prism-log.js +120 -0
- data/vendor/assets/javascripts/languages/prism-lolcode.js +55 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-lua.js +3 -3
- data/vendor/assets/javascripts/languages/prism-magma.js +35 -0
- data/vendor/assets/javascripts/languages/prism-makefile.js +34 -0
- data/vendor/assets/javascripts/languages/prism-markdown.js +415 -0
- data/vendor/assets/javascripts/languages/prism-markup-templating.js +124 -0
- data/vendor/assets/javascripts/languages/prism-markup.js +186 -0
- data/vendor/assets/javascripts/languages/prism-mata.js +50 -0
- data/vendor/assets/javascripts/languages/prism-matlab.js +16 -0
- data/vendor/assets/javascripts/languages/prism-maxscript.js +91 -0
- data/vendor/assets/javascripts/languages/prism-mel.js +46 -0
- data/vendor/assets/javascripts/languages/prism-mermaid.js +113 -0
- data/vendor/assets/javascripts/languages/prism-metafont.js +84 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-mizar.js +3 -3
- data/vendor/assets/javascripts/languages/prism-mongodb.js +97 -0
- data/vendor/assets/javascripts/languages/prism-monkey.js +29 -0
- data/vendor/assets/javascripts/languages/prism-moonscript.js +57 -0
- data/vendor/assets/javascripts/languages/prism-n1ql.js +24 -0
- data/vendor/assets/javascripts/languages/prism-n4js.js +14 -0
- data/vendor/assets/javascripts/languages/prism-nand2tetris-hdl.js +9 -0
- data/vendor/assets/javascripts/languages/prism-naniscript.js +170 -0
- data/vendor/assets/javascripts/languages/prism-nasm.js +24 -0
- data/vendor/assets/javascripts/languages/prism-neon.js +40 -0
- data/vendor/assets/javascripts/languages/prism-nevod.js +125 -0
- data/vendor/assets/javascripts/languages/prism-nginx.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-nim.js +26 -12
- data/vendor/assets/javascripts/{prism → languages}/prism-nix.js +11 -13
- data/vendor/assets/javascripts/languages/prism-nsis.js +30 -0
- data/vendor/assets/javascripts/languages/prism-objectivec.js +12 -0
- data/vendor/assets/javascripts/languages/prism-ocaml.js +58 -0
- data/vendor/assets/javascripts/languages/prism-odin.js +99 -0
- data/vendor/assets/javascripts/languages/prism-opencl.js +61 -0
- data/vendor/assets/javascripts/languages/prism-openqasm.js +23 -0
- data/vendor/assets/javascripts/languages/prism-oz.js +28 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-parigp.js +8 -5
- data/vendor/assets/javascripts/languages/prism-parser.js +73 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-pascal.js +31 -10
- data/vendor/assets/javascripts/languages/prism-pascaligo.js +62 -0
- data/vendor/assets/javascripts/languages/prism-pcaxis.js +53 -0
- data/vendor/assets/javascripts/languages/prism-peoplecode.js +42 -0
- data/vendor/assets/javascripts/languages/prism-perl.js +156 -0
- data/vendor/assets/javascripts/languages/prism-php-extras.js +14 -0
- data/vendor/assets/javascripts/languages/prism-php.js +342 -0
- data/vendor/assets/javascripts/languages/prism-phpdoc.js +27 -0
- data/vendor/assets/javascripts/languages/prism-plant-uml.js +103 -0
- data/vendor/assets/javascripts/languages/prism-plsql.js +17 -0
- data/vendor/assets/javascripts/languages/prism-powerquery.js +55 -0
- data/vendor/assets/javascripts/languages/prism-powershell.js +58 -0
- data/vendor/assets/javascripts/languages/prism-processing.js +15 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-prolog.js +10 -8
- data/vendor/assets/javascripts/languages/prism-promql.js +99 -0
- data/vendor/assets/javascripts/languages/prism-properties.js +13 -0
- data/vendor/assets/javascripts/languages/prism-protobuf.js +43 -0
- data/vendor/assets/javascripts/languages/prism-psl.js +35 -0
- data/vendor/assets/javascripts/languages/prism-pug.js +188 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-puppet.js +13 -8
- data/vendor/assets/javascripts/{prism → languages}/prism-pure.js +27 -22
- data/vendor/assets/javascripts/languages/prism-purebasic.js +70 -0
- data/vendor/assets/javascripts/languages/prism-purescript.js +31 -0
- data/vendor/assets/javascripts/languages/prism-python.js +65 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-q.js +16 -9
- data/vendor/assets/javascripts/languages/prism-qml.js +61 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-qore.js +12 -9
- data/vendor/assets/javascripts/languages/prism-qsharp.js +132 -0
- data/vendor/assets/javascripts/languages/prism-r.js +22 -0
- data/vendor/assets/javascripts/languages/prism-racket.js +18 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-reason.js +8 -15
- data/vendor/assets/javascripts/languages/prism-regex.js +104 -0
- data/vendor/assets/javascripts/languages/prism-rego.js +30 -0
- data/vendor/assets/javascripts/languages/prism-renpy.js +29 -0
- data/vendor/assets/javascripts/languages/prism-rescript.js +60 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-rest.js +18 -18
- data/vendor/assets/javascripts/languages/prism-rip.js +38 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-roboconf.js +3 -3
- data/vendor/assets/javascripts/languages/prism-robotframework.js +104 -0
- data/vendor/assets/javascripts/languages/prism-ruby.js +189 -0
- data/vendor/assets/javascripts/languages/prism-rust.js +128 -0
- data/vendor/assets/javascripts/languages/prism-sas.js +326 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-sass.js +16 -12
- data/vendor/assets/javascripts/languages/prism-scala.js +50 -0
- data/vendor/assets/javascripts/languages/prism-scheme.js +120 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-scss.js +27 -21
- data/vendor/assets/javascripts/languages/prism-shell-session.js +70 -0
- data/vendor/assets/javascripts/languages/prism-smali.js +87 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-smalltalk.js +17 -10
- data/vendor/assets/javascripts/languages/prism-smarty.js +131 -0
- data/vendor/assets/javascripts/languages/prism-sml.js +68 -0
- data/vendor/assets/javascripts/languages/prism-solidity.js +22 -0
- data/vendor/assets/javascripts/languages/prism-solution-file.js +51 -0
- data/vendor/assets/javascripts/languages/prism-soy.js +96 -0
- data/vendor/assets/javascripts/languages/prism-sparql.js +18 -0
- data/vendor/assets/javascripts/languages/prism-splunk-spl.js +24 -0
- data/vendor/assets/javascripts/languages/prism-sqf.js +34 -0
- data/vendor/assets/javascripts/languages/prism-sql.js +32 -0
- data/vendor/assets/javascripts/languages/prism-squirrel.js +47 -0
- data/vendor/assets/javascripts/languages/prism-stan.js +65 -0
- data/vendor/assets/javascripts/languages/prism-stata.js +76 -0
- data/vendor/assets/javascripts/languages/prism-stylus.js +143 -0
- data/vendor/assets/javascripts/languages/prism-supercollider.js +36 -0
- data/vendor/assets/javascripts/languages/prism-swift.js +148 -0
- data/vendor/assets/javascripts/languages/prism-systemd.js +74 -0
- data/vendor/assets/javascripts/languages/prism-t4-cs.js +1 -0
- data/vendor/assets/javascripts/languages/prism-t4-templating.js +49 -0
- data/vendor/assets/javascripts/languages/prism-t4-vb.js +1 -0
- data/vendor/assets/javascripts/languages/prism-tap.js +22 -0
- data/vendor/assets/javascripts/languages/prism-tcl.js +46 -0
- data/vendor/assets/javascripts/languages/prism-textile.js +286 -0
- data/vendor/assets/javascripts/languages/prism-toml.js +49 -0
- data/vendor/assets/javascripts/languages/prism-tremor.js +72 -0
- data/vendor/assets/javascripts/languages/prism-tsx.js +15 -0
- data/vendor/assets/javascripts/languages/prism-tt2.js +53 -0
- data/vendor/assets/javascripts/languages/prism-turtle.js +54 -0
- data/vendor/assets/javascripts/languages/prism-twig.js +44 -0
- data/vendor/assets/javascripts/languages/prism-typescript.js +60 -0
- data/vendor/assets/javascripts/languages/prism-typoscript.js +80 -0
- data/vendor/assets/javascripts/languages/prism-unrealscript.js +42 -0
- data/vendor/assets/javascripts/languages/prism-uorazor.js +48 -0
- data/vendor/assets/javascripts/languages/prism-uri.js +96 -0
- data/vendor/assets/javascripts/languages/prism-v.js +81 -0
- data/vendor/assets/javascripts/languages/prism-vala.js +84 -0
- data/vendor/assets/javascripts/languages/prism-vbnet.js +22 -0
- data/vendor/assets/javascripts/languages/prism-velocity.js +72 -0
- data/vendor/assets/javascripts/languages/prism-verilog.js +26 -0
- data/vendor/assets/javascripts/languages/prism-vhdl.js +26 -0
- data/vendor/assets/javascripts/languages/prism-vim.js +10 -0
- data/vendor/assets/javascripts/languages/prism-visual-basic.js +29 -0
- data/vendor/assets/javascripts/languages/prism-warpscript.js +21 -0
- data/vendor/assets/javascripts/languages/prism-wasm.js +31 -0
- data/vendor/assets/javascripts/languages/prism-web-idl.js +101 -0
- data/vendor/assets/javascripts/languages/prism-wgsl.js +69 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-wiki.js +9 -8
- data/vendor/assets/javascripts/languages/prism-wolfram.js +29 -0
- data/vendor/assets/javascripts/languages/prism-wren.js +100 -0
- data/vendor/assets/javascripts/languages/prism-xeora.js +114 -0
- data/vendor/assets/javascripts/languages/prism-xml-doc.js +40 -0
- data/vendor/assets/javascripts/languages/prism-xojo.js +21 -0
- data/vendor/assets/javascripts/languages/prism-xquery.js +162 -0
- data/vendor/assets/javascripts/languages/prism-yaml.js +83 -0
- data/vendor/assets/javascripts/languages/prism-yang.js +20 -0
- data/vendor/assets/javascripts/languages/prism-zig.js +101 -0
- data/vendor/assets/javascripts/prism-plugin/prism-autolinker.js +63 -63
- data/vendor/assets/javascripts/prism-plugin/prism-autoloader.js +465 -122
- data/vendor/assets/javascripts/prism-plugin/prism-command-line.js +221 -63
- data/vendor/assets/javascripts/prism-plugin/prism-copy-to-clipboard.js +128 -43
- data/vendor/assets/javascripts/prism-plugin/prism-custom-class.js +105 -24
- data/vendor/assets/javascripts/prism-plugin/prism-data-uri-highlight.js +4 -8
- data/vendor/assets/javascripts/prism-plugin/prism-diff-highlight.js +90 -0
- data/vendor/assets/javascripts/prism-plugin/prism-download-button.js +20 -0
- data/vendor/assets/javascripts/prism-plugin/prism-file-highlight.js +179 -61
- data/vendor/assets/javascripts/prism-plugin/prism-filter-highlight-all.js +127 -0
- data/vendor/assets/javascripts/prism-plugin/prism-highlight-keywords.js +10 -13
- data/vendor/assets/javascripts/prism-plugin/prism-inline-color.js +105 -0
- data/vendor/assets/javascripts/prism-plugin/prism-jsonp-highlight.js +264 -112
- data/vendor/assets/javascripts/prism-plugin/prism-keep-markup.js +53 -24
- data/vendor/assets/javascripts/prism-plugin/prism-line-highlight.js +328 -115
- data/vendor/assets/javascripts/prism-plugin/prism-line-numbers.js +237 -42
- data/vendor/assets/javascripts/prism-plugin/prism-match-braces.js +190 -0
- data/vendor/assets/javascripts/prism-plugin/prism-normalize-whitespace.js +206 -149
- data/vendor/assets/javascripts/prism-plugin/prism-previewers.js +712 -0
- data/vendor/assets/javascripts/prism-plugin/prism-remove-initial-line-feed.js +17 -17
- data/vendor/assets/javascripts/prism-plugin/prism-show-invisibles.js +83 -19
- data/vendor/assets/javascripts/prism-plugin/prism-show-language.js +317 -20
- data/vendor/assets/javascripts/prism-plugin/prism-toolbar.js +61 -15
- data/vendor/assets/javascripts/prism-plugin/prism-treeview.js +70 -0
- data/vendor/assets/javascripts/prism-plugin/prism-unescaped-markup.js +39 -17
- data/vendor/assets/javascripts/prism-plugin/prism-wpd.js +132 -147
- data/vendor/assets/javascripts/prism.js +302 -127
- data/vendor/assets/stylesheets/prism-plugin/prism-autolinker.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-command-line.css +11 -1
- data/vendor/assets/stylesheets/prism-plugin/prism-command-line.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.css +13 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.css +33 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.css +26 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.css +4 -4
- data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.css +29 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-previewers.css +243 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-previewers.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.css +7 -6
- data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.css +22 -15
- data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-treeview.css +168 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-treeview.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.css +4 -4
- data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-wpd.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-a11y-dark.css +161 -0
- data/vendor/assets/stylesheets/{prism-atom-dark.css → prism-theme/prism-atom-dark.css} +10 -13
- data/vendor/assets/stylesheets/prism-theme/prism-autolinker.css +3 -0
- data/vendor/assets/stylesheets/{prism-base16-ateliersulphurpool.light.css → prism-theme/prism-base16-ateliersulphurpool.light.css} +60 -56
- data/vendor/assets/stylesheets/{prism-cb.css → prism-theme/prism-cb.css} +20 -50
- data/vendor/assets/stylesheets/prism-theme/prism-coldark-cold.css +317 -0
- data/vendor/assets/stylesheets/prism-theme/prism-coldark-dark.css +317 -0
- data/vendor/assets/stylesheets/prism-theme/prism-command-line.css +33 -0
- data/vendor/assets/stylesheets/prism-theme/prism-coy-without-shadows.css +140 -0
- data/vendor/assets/stylesheets/{prism-coy.css → prism-theme/prism-coy.css} +17 -19
- data/vendor/assets/stylesheets/prism-theme/prism-coy.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-darcula.css +159 -0
- data/vendor/assets/stylesheets/{prism-dark.css → prism-theme/prism-dark.css} +2 -1
- data/vendor/assets/stylesheets/prism-theme/prism-dark.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-dracula.css +122 -0
- data/vendor/assets/stylesheets/{prism-duotone-dark.css → prism-theme/prism-duotone-dark.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-earth.css → prism-theme/prism-duotone-earth.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-forest.css → prism-theme/prism-duotone-forest.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-light.css → prism-theme/prism-duotone-light.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-sea.css → prism-theme/prism-duotone-sea.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-space.css → prism-theme/prism-duotone-space.css} +58 -54
- data/vendor/assets/stylesheets/{prism-funky.css → prism-theme/prism-funky.css} +16 -2
- data/vendor/assets/stylesheets/prism-theme/prism-funky.min.css +1 -0
- data/vendor/assets/stylesheets/{prism-ghcolors.css → prism-theme/prism-ghcolors.css} +47 -44
- data/vendor/assets/stylesheets/prism-theme/prism-gruvbox-dark.css +143 -0
- data/vendor/assets/stylesheets/prism-theme/prism-gruvbox-light.css +143 -0
- data/vendor/assets/stylesheets/prism-theme/prism-holi-theme.css +119 -0
- data/vendor/assets/stylesheets/prism-theme/prism-hopscotch.css +132 -0
- data/vendor/assets/stylesheets/prism-theme/prism-laserwave.css +133 -0
- data/vendor/assets/stylesheets/prism-theme/prism-line-highlight.css +49 -0
- data/vendor/assets/stylesheets/prism-theme/prism-line-numbers.css +41 -0
- data/vendor/assets/stylesheets/prism-theme/prism-lucario.css +122 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-dark.css +205 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-light.css +207 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-oceanic.css +210 -0
- data/vendor/assets/stylesheets/prism-theme/prism-night-owl.css +158 -0
- data/vendor/assets/stylesheets/prism-theme/prism-nord.css +124 -0
- data/vendor/assets/stylesheets/{prism-okaidia.css → prism-theme/prism-okaidia.css} +5 -3
- data/vendor/assets/stylesheets/prism-theme/prism-okaidia.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-one-dark.css +440 -0
- data/vendor/assets/stylesheets/prism-theme/prism-one-light.css +428 -0
- data/vendor/assets/stylesheets/prism-theme/prism-pojoaque.css +151 -0
- data/vendor/assets/stylesheets/prism-theme/prism-previewers.css +242 -0
- data/vendor/assets/stylesheets/prism-theme/prism-shades-of-purple.css +196 -0
- data/vendor/assets/stylesheets/prism-theme/prism-show-invisibles.css +34 -0
- data/vendor/assets/stylesheets/prism-theme/prism-solarized-dark-atom.css +143 -0
- data/vendor/assets/stylesheets/{prism-solarizedlight.css → prism-theme/prism-solarizedlight.css} +5 -3
- data/vendor/assets/stylesheets/prism-theme/prism-solarizedlight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-synthwave84.css +140 -0
- data/vendor/assets/stylesheets/{prism-tomorrow.css → prism-theme/prism-tomorrow.css} +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-tomorrow.min.css +1 -0
- data/vendor/assets/stylesheets/{prism-toolbar.css → prism-theme/prism-toolbar.css} +15 -15
- data/vendor/assets/stylesheets/{prism-twilight.css → prism-theme/prism-twilight.css} +5 -34
- data/vendor/assets/stylesheets/prism-theme/prism-twilight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-unescaped-markup.css +10 -0
- data/vendor/assets/stylesheets/prism-theme/prism-vs.css +168 -0
- data/vendor/assets/stylesheets/prism-theme/prism-vsc-dark-plus.css +275 -0
- data/vendor/assets/stylesheets/prism-theme/prism-wpd.css +11 -0
- data/vendor/assets/stylesheets/prism-theme/prism-xonokai.css +162 -0
- data/vendor/assets/stylesheets/prism-theme/prism-z-touch.css +160 -0
- data/vendor/assets/stylesheets/prism.css +6 -3
- metadata +392 -151
- data/vendor/assets/javascripts/prism/prism-abap.js +0 -48
- data/vendor/assets/javascripts/prism/prism-actionscript.js +0 -17
- data/vendor/assets/javascripts/prism/prism-ada.js +0 -19
- data/vendor/assets/javascripts/prism/prism-apacheconf.js +0 -47
- data/vendor/assets/javascripts/prism/prism-applescript.js +0 -20
- data/vendor/assets/javascripts/prism/prism-aspnet.js +0 -36
- data/vendor/assets/javascripts/prism/prism-autohotkey.js +0 -27
- data/vendor/assets/javascripts/prism/prism-autoit.js +0 -33
- data/vendor/assets/javascripts/prism/prism-bash.js +0 -80
- data/vendor/assets/javascripts/prism/prism-bro.js +0 -50
- data/vendor/assets/javascripts/prism/prism-c.js +0 -33
- data/vendor/assets/javascripts/prism/prism-clike.js +0 -29
- data/vendor/assets/javascripts/prism/prism-coffeescript.js +0 -91
- data/vendor/assets/javascripts/prism/prism-core.js +0 -511
- data/vendor/assets/javascripts/prism/prism-cpp.js +0 -12
- data/vendor/assets/javascripts/prism/prism-crystal.js +0 -53
- data/vendor/assets/javascripts/prism/prism-csharp.js +0 -32
- data/vendor/assets/javascripts/prism/prism-css-extras.js +0 -16
- data/vendor/assets/javascripts/prism/prism-css.js +0 -51
- data/vendor/assets/javascripts/prism/prism-d.js +0 -64
- data/vendor/assets/javascripts/prism/prism-dart.js +0 -18
- data/vendor/assets/javascripts/prism/prism-diff.js +0 -20
- data/vendor/assets/javascripts/prism/prism-docker.js +0 -9
- data/vendor/assets/javascripts/prism/prism-elixir.js +0 -90
- data/vendor/assets/javascripts/prism/prism-fsharp.js +0 -33
- data/vendor/assets/javascripts/prism/prism-gherkin.js +0 -78
- data/vendor/assets/javascripts/prism/prism-glsl.js +0 -16
- data/vendor/assets/javascripts/prism/prism-go.js +0 -9
- data/vendor/assets/javascripts/prism/prism-graphql.js +0 -24
- data/vendor/assets/javascripts/prism/prism-groovy.js +0 -65
- data/vendor/assets/javascripts/prism/prism-handlebars.js +0 -83
- data/vendor/assets/javascripts/prism/prism-haskell.js +0 -35
- data/vendor/assets/javascripts/prism/prism-haxe.js +0 -43
- data/vendor/assets/javascripts/prism/prism-http.js +0 -50
- data/vendor/assets/javascripts/prism/prism-ini.js +0 -11
- data/vendor/assets/javascripts/prism/prism-java.js +0 -16
- data/vendor/assets/javascripts/prism/prism-javascript.js +0 -48
- data/vendor/assets/javascripts/prism/prism-jolie.js +0 -56
- data/vendor/assets/javascripts/prism/prism-json.js +0 -11
- data/vendor/assets/javascripts/prism/prism-jsx.js +0 -27
- data/vendor/assets/javascripts/prism/prism-julia.js +0 -12
- data/vendor/assets/javascripts/prism/prism-keyman.js +0 -14
- data/vendor/assets/javascripts/prism/prism-kotlin.js +0 -62
- data/vendor/assets/javascripts/prism/prism-latex.js +0 -61
- data/vendor/assets/javascripts/prism/prism-lolcode.js +0 -54
- data/vendor/assets/javascripts/prism/prism-makefile.js +0 -31
- data/vendor/assets/javascripts/prism/prism-markdown.js +0 -120
- data/vendor/assets/javascripts/prism/prism-markup.js +0 -46
- data/vendor/assets/javascripts/prism/prism-matlab.js +0 -14
- data/vendor/assets/javascripts/prism/prism-mel.js +0 -39
- data/vendor/assets/javascripts/prism/prism-monkey.js +0 -25
- data/vendor/assets/javascripts/prism/prism-nasm.js +0 -24
- data/vendor/assets/javascripts/prism/prism-nginx.js +0 -11
- data/vendor/assets/javascripts/prism/prism-nsis.js +0 -26
- data/vendor/assets/javascripts/prism/prism-objectivec.js +0 -5
- data/vendor/assets/javascripts/prism/prism-ocaml.js +0 -21
- data/vendor/assets/javascripts/prism/prism-oz.js +0 -21
- data/vendor/assets/javascripts/prism/prism-parser.js +0 -66
- data/vendor/assets/javascripts/prism/prism-perl.js +0 -140
- data/vendor/assets/javascripts/prism/prism-php-extras.js +0 -11
- data/vendor/assets/javascripts/prism/prism-php.js +0 -111
- data/vendor/assets/javascripts/prism/prism-powershell.js +0 -52
- data/vendor/assets/javascripts/prism/prism-processing.js +0 -18
- data/vendor/assets/javascripts/prism/prism-properties.js +0 -9
- data/vendor/assets/javascripts/prism/prism-protobuf.js +0 -8
- data/vendor/assets/javascripts/prism/prism-python.js +0 -27
- data/vendor/assets/javascripts/prism/prism-r.js +0 -19
- data/vendor/assets/javascripts/prism/prism-rip.js +0 -28
- data/vendor/assets/javascripts/prism/prism-ruby.js +0 -116
- data/vendor/assets/javascripts/prism/prism-rust.js +0 -53
- data/vendor/assets/javascripts/prism/prism-sas.js +0 -31
- data/vendor/assets/javascripts/prism/prism-scala.js +0 -18
- data/vendor/assets/javascripts/prism/prism-scheme.js +0 -26
- data/vendor/assets/javascripts/prism/prism-smarty.js +0 -127
- data/vendor/assets/javascripts/prism/prism-sql.js +0 -17
- data/vendor/assets/javascripts/prism/prism-stylus.js +0 -102
- data/vendor/assets/javascripts/prism/prism-swift.js +0 -25
- data/vendor/assets/javascripts/prism/prism-tcl.js +0 -43
- data/vendor/assets/javascripts/prism/prism-textile.js +0 -257
- data/vendor/assets/javascripts/prism/prism-twig.js +0 -46
- data/vendor/assets/javascripts/prism/prism-typescript.js +0 -5
- data/vendor/assets/javascripts/prism/prism-verilog.js +0 -17
- data/vendor/assets/javascripts/prism/prism-vhdl.js +0 -23
- data/vendor/assets/javascripts/prism/prism-vim.js +0 -10
- data/vendor/assets/javascripts/prism/prism-xojo.js +0 -20
- data/vendor/assets/javascripts/prism/prism-yaml.js +0 -44
- data/vendor/assets/stylesheets/prism-hopscotch.css +0 -124
- data/vendor/assets/stylesheets/prism-pojoaque.css +0 -134
- data/vendor/assets/stylesheets/prism-vs.css +0 -157
- data/vendor/assets/stylesheets/prism-xonokai.css +0 -164
- /data/vendor/assets/javascripts/{prism → languages}/prism-jade.js +0 -0
- /data/vendor/assets/stylesheets/{prism-show-language.css → prism-theme/prism-show-language.css} +0 -0
@@ -1,151 +1,303 @@
|
|
1
|
-
(function() {
|
2
|
-
if ( !self.Prism || !self.document || !document.querySelectorAll || ![].filter) return;
|
1
|
+
(function () {
|
3
2
|
|
3
|
+
if (typeof Prism === 'undefined' || typeof document === 'undefined') {
|
4
|
+
return;
|
5
|
+
}
|
6
|
+
|
7
|
+
/**
|
8
|
+
* @callback Adapter
|
9
|
+
* @param {any} response
|
10
|
+
* @param {HTMLPreElement} [pre]
|
11
|
+
* @returns {string | null}
|
12
|
+
*/
|
13
|
+
|
14
|
+
/**
|
15
|
+
* The list of adapter which will be used if `data-adapter` is not specified.
|
16
|
+
*
|
17
|
+
* @type {Array<{adapter: Adapter, name: string}>}
|
18
|
+
*/
|
4
19
|
var adapters = [];
|
5
|
-
|
6
|
-
|
7
|
-
|
20
|
+
|
21
|
+
/**
|
22
|
+
* Adds a new function to the list of adapters.
|
23
|
+
*
|
24
|
+
* If the given adapter is already registered or not a function or there is an adapter with the given name already,
|
25
|
+
* nothing will happen.
|
26
|
+
*
|
27
|
+
* @param {Adapter} adapter The adapter to be registered.
|
28
|
+
* @param {string} [name] The name of the adapter. Defaults to the function name of `adapter`.
|
29
|
+
*/
|
30
|
+
function registerAdapter(adapter, name) {
|
31
|
+
name = name || adapter.name;
|
32
|
+
if (typeof adapter === 'function' && !getAdapter(adapter) && !getAdapter(name)) {
|
33
|
+
adapters.push({ adapter: adapter, name: name });
|
8
34
|
}
|
9
35
|
}
|
36
|
+
/**
|
37
|
+
* Returns the given adapter itself, if registered, or a registered adapter with the given name.
|
38
|
+
*
|
39
|
+
* If no fitting adapter is registered, `null` will be returned.
|
40
|
+
*
|
41
|
+
* @param {string|Function} adapter The adapter itself or the name of an adapter.
|
42
|
+
* @returns {Adapter} A registered adapter or `null`.
|
43
|
+
*/
|
10
44
|
function getAdapter(adapter) {
|
11
|
-
if (typeof adapter ===
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
45
|
+
if (typeof adapter === 'function') {
|
46
|
+
for (var i = 0, item; (item = adapters[i++]);) {
|
47
|
+
if (item.adapter.valueOf() === adapter.valueOf()) {
|
48
|
+
return item.adapter;
|
49
|
+
}
|
50
|
+
}
|
51
|
+
} else if (typeof adapter === 'string') {
|
52
|
+
// eslint-disable-next-line no-redeclare
|
53
|
+
for (var i = 0, item; (item = adapters[i++]);) {
|
54
|
+
if (item.name === adapter) {
|
55
|
+
return item.adapter;
|
56
|
+
}
|
57
|
+
}
|
16
58
|
}
|
17
59
|
return null;
|
18
60
|
}
|
61
|
+
/**
|
62
|
+
* Remove the given adapter or the first registered adapter with the given name from the list of
|
63
|
+
* registered adapters.
|
64
|
+
*
|
65
|
+
* @param {string|Function} adapter The adapter itself or the name of an adapter.
|
66
|
+
*/
|
19
67
|
function removeAdapter(adapter) {
|
20
|
-
if (typeof adapter ===
|
68
|
+
if (typeof adapter === 'string') {
|
21
69
|
adapter = getAdapter(adapter);
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
70
|
+
}
|
71
|
+
if (typeof adapter === 'function') {
|
72
|
+
var index = adapters.findIndex(function (item) {
|
73
|
+
return item.adapter === adapter;
|
74
|
+
});
|
75
|
+
if (index >= 0) {
|
76
|
+
adapters.splice(index, 1);
|
26
77
|
}
|
27
78
|
}
|
28
79
|
}
|
29
80
|
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
return "Error: " + ( rsp.data.message || rsp.meta.status );
|
39
|
-
}
|
40
|
-
else if ( typeof(rsp.data.content) === "string" ) {
|
41
|
-
return typeof(atob) === "function"
|
42
|
-
? atob(rsp.data.content.replace(/\s/g, ""))
|
43
|
-
: "Your browser cannot decode base64";
|
81
|
+
registerAdapter(function github(rsp) {
|
82
|
+
if (rsp && rsp.meta && rsp.data) {
|
83
|
+
if (rsp.meta.status && rsp.meta.status >= 400) {
|
84
|
+
return 'Error: ' + (rsp.data.message || rsp.meta.status);
|
85
|
+
} else if (typeof (rsp.data.content) === 'string') {
|
86
|
+
return typeof (atob) === 'function'
|
87
|
+
? atob(rsp.data.content.replace(/\s/g, ''))
|
88
|
+
: 'Your browser cannot decode base64';
|
44
89
|
}
|
45
90
|
}
|
46
91
|
return null;
|
47
|
-
});
|
92
|
+
}, 'github');
|
48
93
|
registerAdapter(function gist(rsp, el) {
|
49
|
-
if (
|
50
|
-
if (
|
51
|
-
return
|
94
|
+
if (rsp && rsp.meta && rsp.data && rsp.data.files) {
|
95
|
+
if (rsp.meta.status && rsp.meta.status >= 400) {
|
96
|
+
return 'Error: ' + (rsp.data.message || rsp.meta.status);
|
52
97
|
}
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
98
|
+
|
99
|
+
var files = rsp.data.files;
|
100
|
+
var filename = el.getAttribute('data-filename');
|
101
|
+
if (filename == null) {
|
102
|
+
// Maybe in the future we can somehow render all files
|
103
|
+
// But the standard <script> include for gists does that nicely already,
|
104
|
+
// so that might be getting beyond the scope of this plugin
|
105
|
+
for (var key in files) {
|
106
|
+
if (files.hasOwnProperty(key)) {
|
107
|
+
filename = key;
|
108
|
+
break;
|
64
109
|
}
|
65
110
|
}
|
66
|
-
if (rsp.data.files[filename] !== undefined) {
|
67
|
-
return rsp.data.files[filename].content;
|
68
|
-
}
|
69
|
-
else {
|
70
|
-
return "Error: unknown or missing gist file " + filename;
|
71
|
-
}
|
72
111
|
}
|
112
|
+
|
113
|
+
if (files[filename] !== undefined) {
|
114
|
+
return files[filename].content;
|
115
|
+
}
|
116
|
+
return 'Error: unknown or missing gist file ' + filename;
|
73
117
|
}
|
74
118
|
return null;
|
119
|
+
}, 'gist');
|
120
|
+
registerAdapter(function bitbucket(rsp) {
|
121
|
+
if (rsp && rsp.node && typeof (rsp.data) === 'string') {
|
122
|
+
return rsp.data;
|
123
|
+
}
|
124
|
+
return null;
|
125
|
+
}, 'bitbucket');
|
126
|
+
|
127
|
+
|
128
|
+
var jsonpCallbackCounter = 0;
|
129
|
+
/**
|
130
|
+
* Makes a JSONP request.
|
131
|
+
*
|
132
|
+
* @param {string} src The URL of the resource to request.
|
133
|
+
* @param {string | undefined | null} callbackParameter The name of the callback parameter. If falsy, `"callback"`
|
134
|
+
* will be used.
|
135
|
+
* @param {(data: unknown) => void} onSuccess
|
136
|
+
* @param {(reason: "timeout" | "network") => void} onError
|
137
|
+
* @returns {void}
|
138
|
+
*/
|
139
|
+
function jsonp(src, callbackParameter, onSuccess, onError) {
|
140
|
+
var callbackName = 'prismjsonp' + jsonpCallbackCounter++;
|
141
|
+
|
142
|
+
var uri = document.createElement('a');
|
143
|
+
uri.href = src;
|
144
|
+
uri.href += (uri.search ? '&' : '?') + (callbackParameter || 'callback') + '=' + callbackName;
|
145
|
+
|
146
|
+
var script = document.createElement('script');
|
147
|
+
script.src = uri.href;
|
148
|
+
script.onerror = function () {
|
149
|
+
cleanup();
|
150
|
+
onError('network');
|
151
|
+
};
|
152
|
+
|
153
|
+
var timeoutId = setTimeout(function () {
|
154
|
+
cleanup();
|
155
|
+
onError('timeout');
|
156
|
+
}, Prism.plugins.jsonphighlight.timeout);
|
157
|
+
|
158
|
+
function cleanup() {
|
159
|
+
clearTimeout(timeoutId);
|
160
|
+
document.head.removeChild(script);
|
161
|
+
delete window[callbackName];
|
162
|
+
}
|
163
|
+
|
164
|
+
// the JSONP callback function
|
165
|
+
window[callbackName] = function (response) {
|
166
|
+
cleanup();
|
167
|
+
onSuccess(response);
|
168
|
+
};
|
169
|
+
|
170
|
+
document.head.appendChild(script);
|
171
|
+
}
|
172
|
+
|
173
|
+
var LOADING_MESSAGE = 'Loading…';
|
174
|
+
var MISSING_ADAPTER_MESSAGE = function (name) {
|
175
|
+
return '✖ Error: JSONP adapter function "' + name + '" doesn\'t exist';
|
176
|
+
};
|
177
|
+
var TIMEOUT_MESSAGE = function (url) {
|
178
|
+
return '✖ Error: Timeout loading ' + url;
|
179
|
+
};
|
180
|
+
var UNKNOWN_FAILURE_MESSAGE = '✖ Error: Cannot parse response (perhaps you need an adapter function?)';
|
181
|
+
|
182
|
+
var STATUS_ATTR = 'data-jsonp-status';
|
183
|
+
var STATUS_LOADING = 'loading';
|
184
|
+
var STATUS_LOADED = 'loaded';
|
185
|
+
var STATUS_FAILED = 'failed';
|
186
|
+
|
187
|
+
var SELECTOR = 'pre[data-jsonp]:not([' + STATUS_ATTR + '="' + STATUS_LOADED + '"])'
|
188
|
+
+ ':not([' + STATUS_ATTR + '="' + STATUS_LOADING + '"])';
|
189
|
+
|
190
|
+
|
191
|
+
Prism.hooks.add('before-highlightall', function (env) {
|
192
|
+
env.selector += ', ' + SELECTOR;
|
75
193
|
});
|
76
|
-
registerAdapter(function bitbucket(rsp, el) {
|
77
|
-
return rsp && rsp.node && typeof(rsp.data) === "string"
|
78
|
-
? rsp.data
|
79
|
-
: null;
|
80
|
-
});
|
81
194
|
|
82
|
-
|
83
|
-
|
195
|
+
Prism.hooks.add('before-sanity-check', function (env) {
|
196
|
+
var pre = /** @type {HTMLPreElement} */ (env.element);
|
197
|
+
if (pre.matches(SELECTOR)) {
|
198
|
+
env.code = ''; // fast-path the whole thing and go to complete
|
199
|
+
|
200
|
+
// mark as loading
|
201
|
+
pre.setAttribute(STATUS_ATTR, STATUS_LOADING);
|
84
202
|
|
85
|
-
|
86
|
-
|
87
|
-
|
203
|
+
// add code element with loading message
|
204
|
+
var code = pre.appendChild(document.createElement('CODE'));
|
205
|
+
code.textContent = LOADING_MESSAGE;
|
88
206
|
|
89
|
-
|
90
|
-
|
91
|
-
|
207
|
+
// set language
|
208
|
+
var language = env.language;
|
209
|
+
code.className = 'language-' + language;
|
92
210
|
|
93
|
-
|
211
|
+
// preload the language
|
212
|
+
var autoloader = Prism.plugins.autoloader;
|
213
|
+
if (autoloader) {
|
214
|
+
autoloader.loadLanguages(language);
|
215
|
+
}
|
216
|
+
|
217
|
+
var adapterName = pre.getAttribute('data-adapter');
|
94
218
|
var adapter = null;
|
95
|
-
if (
|
96
|
-
if (
|
97
|
-
adapter = window[
|
98
|
-
}
|
99
|
-
|
100
|
-
|
219
|
+
if (adapterName) {
|
220
|
+
if (typeof window[adapterName] === 'function') {
|
221
|
+
adapter = window[adapterName];
|
222
|
+
} else {
|
223
|
+
// mark as failed
|
224
|
+
pre.setAttribute(STATUS_ATTR, STATUS_FAILED);
|
225
|
+
|
226
|
+
code.textContent = MISSING_ADAPTER_MESSAGE(adapterName);
|
101
227
|
return;
|
102
228
|
}
|
103
229
|
}
|
104
230
|
|
105
|
-
var
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
clearTimeout(timeout);
|
123
|
-
delete window[cb];
|
124
|
-
|
125
|
-
var data = "";
|
126
|
-
|
127
|
-
if ( adapter ) {
|
128
|
-
data = adapter(rsp, pre);
|
129
|
-
}
|
130
|
-
else {
|
131
|
-
for ( var p in adapters ) {
|
132
|
-
data = adapters[p](rsp, pre);
|
133
|
-
if ( data !== null ) break;
|
231
|
+
var src = pre.getAttribute('data-jsonp');
|
232
|
+
|
233
|
+
jsonp(
|
234
|
+
src,
|
235
|
+
pre.getAttribute('data-callback'),
|
236
|
+
function (response) {
|
237
|
+
// interpret the received data using the adapter(s)
|
238
|
+
var data = null;
|
239
|
+
if (adapter) {
|
240
|
+
data = adapter(response, pre);
|
241
|
+
} else {
|
242
|
+
for (var i = 0, l = adapters.length; i < l; i++) {
|
243
|
+
data = adapters[i].adapter(response, pre);
|
244
|
+
if (data !== null) {
|
245
|
+
break;
|
246
|
+
}
|
247
|
+
}
|
134
248
|
}
|
135
|
-
}
|
136
249
|
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
250
|
+
if (data === null) {
|
251
|
+
// mark as failed
|
252
|
+
pre.setAttribute(STATUS_ATTR, STATUS_FAILED);
|
253
|
+
|
254
|
+
code.textContent = UNKNOWN_FAILURE_MESSAGE;
|
255
|
+
} else {
|
256
|
+
// mark as loaded
|
257
|
+
pre.setAttribute(STATUS_ATTR, STATUS_LOADED);
|
258
|
+
|
259
|
+
code.textContent = data;
|
260
|
+
Prism.highlightElement(code);
|
261
|
+
}
|
262
|
+
},
|
263
|
+
function () {
|
264
|
+
// mark as failed
|
265
|
+
pre.setAttribute(STATUS_ATTR, STATUS_FAILED);
|
266
|
+
|
267
|
+
code.textContent = TIMEOUT_MESSAGE(src);
|
143
268
|
}
|
144
|
-
|
269
|
+
);
|
270
|
+
}
|
271
|
+
});
|
145
272
|
|
146
|
-
document.head.appendChild(script);
|
147
|
-
});
|
148
|
-
}
|
149
273
|
|
150
|
-
|
151
|
-
|
274
|
+
Prism.plugins.jsonphighlight = {
|
275
|
+
/**
|
276
|
+
* The timeout after which an error message will be displayed.
|
277
|
+
*
|
278
|
+
* __Note:__ If the request succeeds after the timeout, it will still be processed and will override any
|
279
|
+
* displayed error messages.
|
280
|
+
*/
|
281
|
+
timeout: 5000,
|
282
|
+
registerAdapter: registerAdapter,
|
283
|
+
removeAdapter: removeAdapter,
|
284
|
+
|
285
|
+
/**
|
286
|
+
* Highlights all `pre` elements under the given container with a `data-jsonp` attribute by requesting the
|
287
|
+
* specified JSON and using the specified adapter or a registered adapter to extract the code to highlight
|
288
|
+
* from the response. The highlighted code will be inserted into the `pre` element.
|
289
|
+
*
|
290
|
+
* Note: Elements which are already loaded or currently loading will not be touched by this method.
|
291
|
+
*
|
292
|
+
* @param {Element | Document} [container=document]
|
293
|
+
*/
|
294
|
+
highlight: function (container) {
|
295
|
+
var elements = (container || document).querySelectorAll(SELECTOR);
|
296
|
+
|
297
|
+
for (var i = 0, element; (element = elements[i++]);) {
|
298
|
+
Prism.highlightElement(element);
|
299
|
+
}
|
300
|
+
}
|
301
|
+
};
|
302
|
+
|
303
|
+
}());
|
@@ -1,6 +1,6 @@
|
|
1
1
|
(function () {
|
2
2
|
|
3
|
-
if (typeof
|
3
|
+
if (typeof Prism === 'undefined' || typeof document === 'undefined' || !document.createRange) {
|
4
4
|
return;
|
5
5
|
}
|
6
6
|
|
@@ -11,38 +11,64 @@
|
|
11
11
|
return;
|
12
12
|
}
|
13
13
|
|
14
|
+
if (!Prism.util.isActive(env.element, 'keep-markup', true)) {
|
15
|
+
return;
|
16
|
+
}
|
17
|
+
|
18
|
+
var dropTokens = Prism.util.isActive(env.element, 'drop-tokens', false);
|
19
|
+
/**
|
20
|
+
* Returns whether the given element should be kept.
|
21
|
+
*
|
22
|
+
* @param {HTMLElement} element
|
23
|
+
* @returns {boolean}
|
24
|
+
*/
|
25
|
+
function shouldKeep(element) {
|
26
|
+
if (dropTokens && element.nodeName.toLowerCase() === 'span' && element.classList.contains('token')) {
|
27
|
+
return false;
|
28
|
+
}
|
29
|
+
return true;
|
30
|
+
}
|
31
|
+
|
14
32
|
var pos = 0;
|
15
33
|
var data = [];
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
o.posOpen = pos;
|
22
|
-
data.push(o);
|
34
|
+
function processElement(element) {
|
35
|
+
if (!shouldKeep(element)) {
|
36
|
+
// don't keep this element and just process its children
|
37
|
+
processChildren(element);
|
38
|
+
return;
|
23
39
|
}
|
24
|
-
|
25
|
-
|
40
|
+
|
41
|
+
var o = {
|
42
|
+
// Store original element so we can restore it after highlighting
|
43
|
+
element: element,
|
44
|
+
posOpen: pos
|
45
|
+
};
|
46
|
+
data.push(o);
|
47
|
+
|
48
|
+
processChildren(element);
|
49
|
+
|
50
|
+
o.posClose = pos;
|
51
|
+
}
|
52
|
+
function processChildren(element) {
|
53
|
+
for (var i = 0, l = element.childNodes.length; i < l; i++) {
|
54
|
+
var child = element.childNodes[i];
|
26
55
|
if (child.nodeType === 1) { // element
|
27
|
-
|
28
|
-
} else if(child.nodeType === 3) { // text
|
56
|
+
processElement(child);
|
57
|
+
} else if (child.nodeType === 3) { // text
|
29
58
|
pos += child.data.length;
|
30
59
|
}
|
31
60
|
}
|
32
|
-
|
33
|
-
|
34
|
-
}
|
35
|
-
};
|
36
|
-
f(env.element, true);
|
61
|
+
}
|
62
|
+
processChildren(env.element);
|
37
63
|
|
38
|
-
if (data
|
64
|
+
if (data.length) {
|
39
65
|
// data is an array of all existing tags
|
40
66
|
env.keepMarkup = data;
|
41
67
|
}
|
42
68
|
});
|
43
69
|
|
44
70
|
Prism.hooks.add('after-highlight', function (env) {
|
45
|
-
if(env.keepMarkup && env.keepMarkup.length) {
|
71
|
+
if (env.keepMarkup && env.keepMarkup.length) {
|
46
72
|
|
47
73
|
var walk = function (elt, nodeState) {
|
48
74
|
for (var i = 0, l = elt.childNodes.length; i < l; i++) {
|
@@ -55,12 +81,12 @@
|
|
55
81
|
}
|
56
82
|
|
57
83
|
} else if (child.nodeType === 3) { // text
|
58
|
-
if(!nodeState.nodeStart && nodeState.pos + child.data.length > nodeState.node.posOpen) {
|
84
|
+
if (!nodeState.nodeStart && nodeState.pos + child.data.length > nodeState.node.posOpen) {
|
59
85
|
// We found the start position
|
60
86
|
nodeState.nodeStart = child;
|
61
87
|
nodeState.nodeStartPos = nodeState.node.posOpen - nodeState.pos;
|
62
88
|
}
|
63
|
-
if(nodeState.nodeStart && nodeState.pos + child.data.length >= nodeState.node.posClose) {
|
89
|
+
if (nodeState.nodeStart && nodeState.pos + child.data.length >= nodeState.node.posClose) {
|
64
90
|
// We found the end position
|
65
91
|
nodeState.nodeEnd = child;
|
66
92
|
nodeState.nodeEndPos = nodeState.node.posClose - nodeState.pos;
|
@@ -70,12 +96,13 @@
|
|
70
96
|
}
|
71
97
|
|
72
98
|
if (nodeState.nodeStart && nodeState.nodeEnd) {
|
73
|
-
// Select the range and wrap it with the
|
99
|
+
// Select the range and wrap it with the element
|
74
100
|
var range = document.createRange();
|
75
101
|
range.setStart(nodeState.nodeStart, nodeState.nodeStartPos);
|
76
102
|
range.setEnd(nodeState.nodeEnd, nodeState.nodeEndPos);
|
77
|
-
nodeState.node.
|
78
|
-
|
103
|
+
nodeState.node.element.innerHTML = '';
|
104
|
+
nodeState.node.element.appendChild(range.extractContents());
|
105
|
+
range.insertNode(nodeState.node.element);
|
79
106
|
range.detach();
|
80
107
|
|
81
108
|
// Process is over
|
@@ -92,6 +119,8 @@
|
|
92
119
|
pos: 0
|
93
120
|
});
|
94
121
|
});
|
122
|
+
// Store new highlightedCode for later hooks calls
|
123
|
+
env.highlightedCode = env.element.innerHTML;
|
95
124
|
}
|
96
125
|
});
|
97
126
|
}());
|