{"mappings":"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","names":["doc","addListener","target","type","listener","options","numLines","str","start","end","count","languageMap","selectionChange","doc","addListener","languageMap","getLineStart","text","position","getLineEnd","voidlessLangs","voidTags","getLineBefore","text","position","getLineStart","getClosestToken","editor","selector","marginLeft","marginRight","position","value","line","numLines","walker","doc","node","offset","getLineEnd","userAgent","doc","isMac","isChrome","isWebKit","replace","pattern","replacements","m","index","re","flags","toString","space","braces","clikeIndent","isBracketPair","xmlOpeningTag","xmlClosingTag","openBracket","astroOpeningTag","re","braces","testBracketPair","start","end","value","clikeComment","isOpen","match","voidTags","htmlAutoIndent","tagPattern","getLineBefore","selection","markupComment","markupLanguage","comment","editor","autoCloseTags","tagMatcher","pairs","tags","i","tag","bracketIndenting","comments","indentPattern","markupTemplateLang","name","languageMap","getClosestToken","languageMap","bracketIndenting","languageMap","markupLanguage","clikeComment","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","start","value","getLineBefore","end","match","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","languageMap","languageMap","languageMap","languageMap","markupLanguage","xmlOpeningTag","voidTags","languageMap","markupLanguage","markupComment","astroOpeningTag","voidTags","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","languageMap","bracketIndenting","languageMap","markupLanguage","markupComment","xmlOpeningTag","voidTags","languageMap","languageMap","bracketIndenting","openingTag","re","space","braces","closingTag","inJsxContext","tags","pairs","brackets","bracketPairs","position","i","tag","min","bracket","jsxComment","languageMap","clikeComment","editor","matchBrackets","matchTags","getClosestToken","start","value","clikeIndent","getLineBefore","selection","testBracketPair","end","autoCloseTags","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","languageMap","clikeComment","editor","position","getClosestToken","markupComment","htmlAutoIndent","xmlOpeningTag","voidTags","start","end","value","autoCloseTags","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","markupLanguage","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","markupLanguage","xmlOpeningTag","voidTags","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","markupTemplateLang","languageMap","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","markupLanguage","xmlOpeningTag","voidTags","languageMap","languageMap","languageMap","languageMap","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","markupTemplateLang","languageMap","languageMap","languageMap","bracketIndenting","languageMap","languageMap","languageMap","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","markupTemplateLang","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","markupTemplateLang","languageMap","bracketIndenting","languageMap","bracketIndenting","markupTemplateLang","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","markupLanguage","xmlOpeningTag","voidTags","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","languageMap","bracketIndenting","markupTemplateLang","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","markupTemplateLang","clikeComment","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","markupLanguage","markupComment","astroOpeningTag","voidTags","languageMap","languageMap","bracketIndenting","languageMap","markupLanguage","markupComment","xmlOpeningTag","voidTags","languageMap","bracketIndenting","languageMap","markupTemplateLang","editor","position","getClosestToken","languageMap","bracketIndenting","markupTemplateLang","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","languageMap","bracketIndenting","languageMap","bracketIndenting","clikeComment","clikeIndent","languageMap","markupLanguage","xmlOpeningTag","voidTags","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","markupLanguage","markupComment","xmlOpeningTag","voidTags","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","markupLanguage","xmlOpeningTag","voidTags","languageMap","bracketIndenting","languageMap","bracketIndenting","languageMap","markupLanguage","languageMap","comment","xquery","languageMap","markupLanguage","editor","position","getClosestToken","languageMap","bracketIndenting","languageMap","bracketIndenting"],"sources":["../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/core.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/abap.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/utils/local.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/utils/index.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/prism/utils/shared.js","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/prism/utils/language.js","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/prism/utils/jsx-shared.js","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/shared/index.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/abnf.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/actionscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ada.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/agda.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/al.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/antlr4.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/apacheconf.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/apex.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/apl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/applescript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/aql.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/arduino.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/arff.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/arturo.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/asciidoc.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/asm.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/aspnet.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/astro.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/autohotkey.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/autoit.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/avisynth.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/avro-idl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/awk.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/bash.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/basic.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/batch.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/bbj.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/bicep.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/birb.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/bison.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/bqn.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/brightscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/bro.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/bsl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cfscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/chaiscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cil.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cilk.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/clike.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/clojure.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cmake.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cobol.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/coffeescript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/css.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/graphql.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/html.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ini.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/json.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/jsx.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/kotlin.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/lua.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/makefile.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/objectivec.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/opencl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/perl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/php.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/python.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/r.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/vbnet.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ruby.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/rust.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/sql.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/swift.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/wasm.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/xml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/yaml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/concurnas.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cooklang.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/coq.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cshtml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cue.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/cypher.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/dataweave.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/dax.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/dhall.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/django.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/dns-zone-file.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/docker.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/dot.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ebnf.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/editorconfig.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/eiffel.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ejs.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/elixir.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/elm.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/erb.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/erlang.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/etlua.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/excel-formula.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/factor.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/false.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/firestore-security-rules.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/fortran.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/fsharp.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ftl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/gap.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/gcode.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/gdscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/gettext.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/gherkin.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/git.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/glsl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/gml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/gn.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/go-module.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/gradle.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/groovy.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/haml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/handlebars.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/haskell.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/hcl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/hoon.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ichigojam.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/icon.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/iecst.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ignore.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/inform7.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/io.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/j.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/jolie.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/jq.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/julia.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/keepalived.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/keyman.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/kumir.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/kusto.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/latex.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/latte.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/lilypond.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/linker-script.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/liquid.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/lisp.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/livescript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/llvm.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/lolcode.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/magma.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/mata.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/matlab.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/maxscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/mel.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/mermaid.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/metafont.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/mizar.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/mongodb.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/monkey.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/moonscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/n1ql.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/n4js.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/nand2tetris-hdl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/naniscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/neon.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/nevod.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/nginx.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/nim.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/nix.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/nsis.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/ocaml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/odin.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/openqasm.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/oz.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/parigp.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/parser.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/pascal.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/peoplecode.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/plant-uml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/powerquery.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/powershell.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/processing.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/prolog.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/promql.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/properties.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/protobuf.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/psl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/pug.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/puppet.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/pure.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/purebasic.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/q.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/qml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/qore.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/qsharp.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/reason.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/rego.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/rescript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/rest.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/rip.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/roboconf.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/robotframework.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/sas.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/scala.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/scheme.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/smali.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/smalltalk.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/smarty.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/sml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/solidity.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/solution-file.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/soy.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/splunk-spl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/sqf.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/squirrel.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/stan.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/stata.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/stylus.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/supercollider.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/svelte.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/systemd.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/tcl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/textile.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/toml.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/tremor.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/tt2.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/turtle.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/twig.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/typoscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/unrealscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/uorazor.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/v.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/vala.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/velocity.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/verilog.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/vhdl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/vim.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/visual-basic.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/vue.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/warpscript.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/web-idl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/wgsl.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/wiki.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/wolfram.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/wren.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/xeora.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/xojo.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/xquery.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/yang.ts","../esm/npm/prism-code-editor@5.2.0/node_modules/prism-code-editor/src/languages/zig.ts"],"sourcesContent":["import type {\r\n\tEditorOptions,\r\n\tPrismEditor,\r\n\tKeyCommandCallback,\r\n\tLanguage,\r\n\tInputCommandCallback,\r\n\tEditorEventMap,\r\n\tInputSelection,\r\n\tEditorExtension,\r\n} from \"./types.js\"\r\nimport { highlightTokens, languages, tokenizeText, TokenStream } from \"./prism/index.js\"\r\n\r\n/**\r\n * Creates a code editor using the specified container and options.\r\n * @param container Element to append the editor to or a selector.\r\n * This can also be a `ShadowRoot` or `DocumentFragment` for example.\r\n * If omitted, you must manually append `editor.container` to the DOM.\r\n * @param options Options the editor is initialized with.\r\n * If omitted, the editor won't function until you call `editor.setOptions`.\r\n * @param extensions Extensions added before the first render. You can still add extensions later.\r\n * @returns Object to interact with the created editor.\r\n */\r\nconst createEditor = \u003cT extends {} = {}\u003e(\r\n\tcontainer?: ParentNode | string | null,\r\n\toptions?: (Partial\u003cEditorOptions\u003cT\u003e\u003e \u0026 Omit\u003cT, keyof EditorOptions\u003e) | null,\r\n\t...extensions: EditorExtension\u003cT\u003e[]\r\n): PrismEditor\u003cT\u003e =\u003e {\r\n\tlet language: string\r\n\tlet prevLines: string[] = []\r\n\tlet activeLine: HTMLDivElement\r\n\tlet value = \"\"\r\n\tlet activeLineNumber: number\r\n\tlet focused = false\r\n\tlet handleSelectionChange = true\r\n\tlet tokens: TokenStream = []\r\n\tlet readOnly: boolean\r\n\tlet lineCount = 0\r\n\r\n\tconst scrollContainer = editorTemplate()\r\n\tconst wrapper = \u003cHTMLDivElement\u003escrollContainer.firstChild\r\n\tconst lines = \u003cHTMLCollectionOf\u003cHTMLDivElement\u003e\u003ewrapper.children\r\n\tconst overlays = lines[0]\r\n\tconst textarea = \u003cHTMLTextAreaElement\u003eoverlays.firstChild\r\n\tconst currentOptions = { language: \"text\", value } as EditorOptions \u0026 T\r\n\tconst currentExtensions = new Set(extensions)\r\n\tconst listeners: {\r\n\t\t[P in keyof EditorEventMap]?: Set\u003cEditorEventMap\u003cT\u003e[P]\u003e\r\n\t} = {}\r\n\r\n\tconst setOptions = (options: Partial\u003cEditorOptions\u003e \u0026 Partial\u003cOmit\u003cT, keyof EditorOptions\u003e\u003e) =\u003e {\r\n\t\tObject.assign(currentOptions, options)\r\n\t\tlet isNewVal = value != (value = options.value ?? value)\r\n\t\tlet isNewLang = language != (language = currentOptions.language)\r\n\r\n\t\treadOnly = !!currentOptions.readOnly\r\n\t\tscrollContainer.style.tabSize = \u003cany\u003ecurrentOptions.tabSize || 2\r\n\t\ttextarea.inputMode = readOnly ? \"none\" : \"\"\r\n\t\ttextarea.setAttribute(\"aria-readonly\", \u003cany\u003ereadOnly)\r\n\t\tupdateClassName()\r\n\t\tupdateExtensions()\r\n\r\n\t\tif (isNewVal) {\r\n\t\t\tif (!focused) textarea.remove()\r\n\t\t\ttextarea.value = value\r\n\t\t\ttextarea.selectionEnd = 0\r\n\t\t\tif (!focused) overlays.prepend(textarea)\r\n\t\t}\r\n\r\n\t\tif (isNewVal || isNewLang) {\r\n\t\t\tupdate()\r\n\t\t}\r\n\t}\r\n\r\n\tconst update = () =\u003e {\r\n\t\ttokens = tokenizeText((value = textarea.value), languages[language] || {})\r\n\t\tdispatchEvent(\"tokenize\", tokens, language, value)\r\n\r\n\t\tlet newLines = highlightTokens(tokens).split(\"\\n\")\r\n\t\tlet start = 0\r\n\t\tlet end2 = lineCount\r\n\t\tlet end1 = (lineCount = newLines.length)\r\n\r\n\t\twhile (newLines[start] == prevLines[start] \u0026\u0026 start \u003c end1) ++start\r\n\t\twhile (end1 \u0026\u0026 newLines[--end1] == prevLines[--end2]);\r\n\r\n\t\tif (start == end1 \u0026\u0026 start == end2) lines[start + 1].innerHTML = newLines[start] + \"\\n\"\r\n\t\telse {\r\n\t\t\tlet insertStart = end2 \u003c start ? end2 : start - 1\r\n\t\t\tlet i = insertStart\r\n\t\t\tlet newHTML = \"\"\r\n\r\n\t\t\twhile (i \u003c end1) newHTML += `\u003cdiv class=pce-line aria-hidden=true\u003e${newLines[++i]}\\n\u003c/div\u003e`\r\n\t\t\tfor (i = end1 \u003c start ? end1 : start - 1; i \u003c end2; i++) lines[start + 1].remove()\r\n\t\t\tif (newHTML) lines[insertStart + 1].insertAdjacentHTML(\"afterend\", newHTML)\r\n\t\t\tscrollContainer.style.setProperty(\r\n\t\t\t\t\"--number-width\",\r\n\t\t\t\t(0 | Math.log10(lineCount)) + 1 + \".001ch\",\r\n\t\t\t)\r\n\t\t}\r\n\r\n\t\tdispatchEvent(\"update\", value)\r\n\t\tdispatchSelection(true)\r\n\t\tif (handleSelectionChange) setTimeout(setTimeout, 0, () =\u003e (handleSelectionChange = true))\r\n\r\n\t\tprevLines = newLines\r\n\t\thandleSelectionChange = false\r\n\t}\r\n\r\n\tconst updateExtensions = (newExtensions?: EditorExtension\u003cT\u003e[]) =\u003e {\r\n\t\t;(newExtensions || currentExtensions).forEach(extension =\u003e {\r\n\t\t\tif (typeof extension == \"object\") {\r\n\t\t\t\textension.update(self, currentOptions)\r\n\t\t\t\tif (newExtensions) currentExtensions.add(extension)\r\n\t\t\t} else {\r\n\t\t\t\textension(self, currentOptions)\r\n\t\t\t\tif (!newExtensions) currentExtensions.delete(extension)\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tconst updateClassName = ([start, end] = getInputSelection()) =\u003e {\r\n\t\tscrollContainer.className = `prism-code-editor language-${language}${\r\n\t\t\tcurrentOptions.lineNumbers == false ? \"\" : \" show-line-numbers\"\r\n\t\t} pce-${currentOptions.wordWrap ? \"\" : \"no\"}wrap${currentOptions.rtl ? \" pce-rtl\" : \"\"} pce-${\r\n\t\t\tstart \u003c end ? \"has\" : \"no\"\r\n\t\t}-selection${focused ? \" pce-focus\" : \"\"}${readOnly ? \" pce-readonly\" : \"\"}${\r\n\t\t\tcurrentOptions.class ? \" \" + currentOptions.class : \"\"\r\n\t\t}`\r\n\t}\r\n\r\n\tconst getInputSelection = (): InputSelection =\u003e [\r\n\t\ttextarea.selectionStart,\r\n\t\ttextarea.selectionEnd,\r\n\t\ttextarea.selectionDirection,\r\n\t]\r\n\r\n\tconst keyCommandMap: Record\u003cstring, KeyCommandCallback | null\u003e = {\r\n\t\tEscape() {\r\n\t\t\ttextarea.blur()\r\n\t\t},\r\n\t}\r\n\r\n\tconst inputCommandMap: Record\u003cstring, InputCommandCallback | null\u003e = {}\r\n\r\n\tconst dispatchEvent = \u003cT extends keyof EditorEventMap\u003e(\r\n\t\tname: T,\r\n\t\t...args: Parameters\u003cEditorEventMap[T]\u003e\r\n\t) =\u003e {\r\n\t\t// @ts-expect-error\r\n\t\tlisteners[name]?.forEach(handler =\u003e handler.apply(self, args))\r\n\t\t// @ts-expect-error\r\n\t\tcurrentOptions[\"on\" + name[0].toUpperCase() + name.slice(1)]?.(...args, self)\r\n\t}\r\n\r\n\tconst dispatchSelection = (force?: boolean) =\u003e {\r\n\t\tif (force || handleSelectionChange) {\r\n\t\t\tconst selection = getInputSelection()\r\n\t\t\tconst newLine =\r\n\t\t\t\tlines[(activeLineNumber = numLines(value, 0, selection[selection[2] \u003c \"f\" ? 0 : 1]))]\r\n\r\n\t\t\tif (newLine != activeLine) {\r\n\t\t\t\tactiveLine?.classList.remove(\"active-line\")\r\n\t\t\t\tnewLine.classList.add(\"active-line\")\r\n\t\t\t\tactiveLine = newLine\r\n\t\t\t}\r\n\t\t\tupdateClassName(selection)\r\n\t\t\tdispatchEvent(\"selectionChange\", selection, value)\r\n\t\t}\r\n\t}\r\n\r\n\tconst self: PrismEditor\u003cT\u003e = {\r\n\t\tcontainer: scrollContainer,\r\n\t\twrapper,\r\n\t\tlines,\r\n\t\ttextarea,\r\n\t\tget activeLine() {\r\n\t\t\treturn activeLineNumber\r\n\t\t},\r\n\t\tget value() {\r\n\t\t\treturn value\r\n\t\t},\r\n\t\toptions: currentOptions,\r\n\t\tget focused() {\r\n\t\t\treturn focused\r\n\t\t},\r\n\t\tget tokens() {\r\n\t\t\treturn tokens\r\n\t\t},\r\n\t\tinputCommandMap,\r\n\t\tkeyCommandMap,\r\n\t\textensions: {},\r\n\t\tsetOptions,\r\n\t\tupdate,\r\n\t\tgetSelection: getInputSelection,\r\n\t\taddExtensions(...extensions) {\r\n\t\t\tupdateExtensions(extensions)\r\n\t\t},\r\n\t\ton: (name, handler) =\u003e {\r\n\t\t\t;(listeners[name] ||= new Set\u003cany\u003e()).add(handler)\r\n\t\t\treturn () =\u003e listeners[name]!.delete(handler)\r\n\t\t},\r\n\t\tremove() {\r\n\t\t\tscrollContainer.remove()\r\n\t\t},\r\n\t}\r\n\r\n\taddListener(textarea, \"keydown\", e =\u003e {\r\n\t\tkeyCommandMap[e.key]?.(e, getInputSelection(), value) \u0026\u0026 preventDefault(e)\r\n\t})\r\n\r\n\taddListener(textarea, \"beforeinput\", e =\u003e {\r\n\t\tif (\r\n\t\t\treadOnly ||\r\n\t\t\t(e.inputType == \"insertText\" \u0026\u0026 inputCommandMap[e.data!]?.(e, getInputSelection(), value))\r\n\t\t)\r\n\t\t\tpreventDefault(e)\r\n\t})\r\n\taddListener(textarea, \"input\", update)\r\n\taddListener(textarea, \"blur\", () =\u003e {\r\n\t\tselectionChange = null\r\n\t\tfocused = false\r\n\t\tupdateClassName()\r\n\t})\r\n\taddListener(textarea, \"focus\", () =\u003e {\r\n\t\tselectionChange = dispatchSelection\r\n\t\tfocused = true\r\n\t\tupdateClassName()\r\n\t})\r\n\t// For browsers that support selectionchange on textareas\r\n\taddListener(textarea, \"selectionchange\", e =\u003e {\r\n\t\tdispatchSelection(!e.isTrusted)\r\n\t\tpreventDefault(e)\r\n\t})\r\n\r\n\tgetElement(container)?.append(scrollContainer)\r\n\toptions \u0026\u0026 setOptions(options)\r\n\treturn self\r\n}\r\n\r\n/**\r\n * Almost identical to {@link createEditor}, but instead of appending the editor to your\r\n * element, the editor replaces it.\r\n *\r\n * The `textContent` of the placeholder will be the code in the editor unless `options.value` is defined.\r\n * @param placeholder Node or selector which will be replaced by the editor.\r\n * @param options Options the editor is initialized with.\r\n * @param extensions Extensions added before the first render. You can still add extensions later.\r\n * @returns Object to interact with the created editor.\r\n */\r\nconst editorFromPlaceholder = \u003cT extends {} = {}\u003e(\r\n\tplaceholder: string | ChildNode,\r\n\toptions: Partial\u003cEditorOptions\u003cT\u003e\u003e \u0026 Omit\u003cT, keyof EditorOptions\u003e,\r\n\t...extensions: EditorExtension\u003cT\u003e[]\r\n) =\u003e {\r\n\tconst el = getElement(placeholder)!\r\n\tconst editor = createEditor\u003cT\u003e(\r\n\t\tnull,\r\n\t\tObject.assign({ value: el.textContent }, options),\r\n\t\t...extensions,\r\n\t)\r\n\tel.replaceWith(editor.container)\r\n\treturn editor\r\n}\r\n\r\n/** Equivalent to `document` in a browser setting, `null` otherwise. */\r\nconst doc = \"u\" \u003e typeof window ? document : null\r\n\r\nconst templateEl = /* @__PURE__ */ doc?.createElement(\"div\")\r\n\r\nconst createTemplate = \u003cT extends Element = HTMLDivElement\u003e(html: string, node?: Node) =\u003e {\r\n\tif (templateEl) {\r\n\t\ttemplateEl.innerHTML = html\r\n\t\tnode = templateEl.firstChild!\r\n\t}\r\n\treturn () =\u003e \u003cT\u003enode!.cloneNode(true)\r\n}\r\n\r\nconst addListener = \u003cT extends keyof HTMLElementEventMap\u003e(\r\n\ttarget: HTMLElement,\r\n\ttype: T,\r\n\tlistener: (this: HTMLElement, ev: HTMLElementEventMap[T]) =\u003e any,\r\n\toptions?: boolean | AddEventListenerOptions,\r\n) =\u003e target.addEventListener(type, listener, options)\r\n\r\nconst getElement = \u003cT extends Node\u003e(el?: T | string | null) =\u003e\r\n\ttypeof el == \"string\" ? doc!.querySelector\u003cHTMLElement\u003e(el) : el\r\n\r\n/**\r\n * Counts number of lines in the string between `start` and `end`.\r\n * If start and end are omitted, the whole string is searched.\r\n */\r\nconst numLines = (str: string, start = 0, end = Infinity) =\u003e {\r\n\tlet count = 1\r\n\tfor (; (start = str.indexOf(\"\\n\", start) + 1) \u0026\u0026 start \u003c= end; count++);\r\n\treturn count\r\n}\r\n\r\n/** Object storing all language specific behavior. */\r\nconst languageMap: Record\u003cstring, Language\u003e = {}\r\n\r\nconst editorTemplate = /* @__PURE__ */ createTemplate(\r\n\t\"\u003cdiv\u003e\u003cdiv class=pce-wrapper\u003e\u003cdiv class=pce-overlays\u003e\u003ctextarea class=pce-textarea spellcheck=false autocapitalize=off autocomplete=off\u003e\",\r\n)\r\n\r\nconst preventDefault = (e: Event) =\u003e {\r\n\te.preventDefault()\r\n\te.stopImmediatePropagation()\r\n}\r\n\r\nconst setSelectionChange = (f?: (force?: boolean) =\u003e void) =\u003e (selectionChange = f)\r\n\r\nlet selectionChange: null | undefined | ((force?: boolean) =\u003e void)\r\n\r\n// @ts-expect-error Allow adding listener to document\r\nif (doc) addListener(doc, \"selectionchange\", () =\u003e selectionChange?.())\r\n\r\nexport {\r\n\tcreateEditor,\r\n\tlanguageMap,\r\n\tnumLines,\r\n\tcreateTemplate,\r\n\tgetElement,\r\n\tpreventDefault,\r\n\teditorFromPlaceholder,\r\n\taddListener,\r\n\tsetSelectionChange,\r\n\tdoc,\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.abap = {\r\n\tcomments: {\r\n\t\tline: '\"',\r\n\t},\r\n}\r\n","import { PrismEditor } from \"../index.js\"\r\nimport { addListener } from \"../core.js\"\r\nimport { isChrome } from \"./index.js\"\r\nimport { PrismCodeBlock } from \"../client/code-block.js\"\r\n\r\nconst scrollToEl = (editor: PrismEditor, el: HTMLElement, paddingTop = 0) =\u003e {\r\n\tconst style = editor.container.style\r\n\r\n\tstyle.setProperty(\"--_sp\", \"var(--pce-scroll-padding, 2ch)\")\r\n\tstyle.scrollPaddingBlock = `calc(var(--_sp) + ${paddingTop}px) calc(var(--_sp) + ${\r\n\t\tisChrome \u0026\u0026 !el.offsetWidth ? el.offsetHeight : 0\r\n\t}px)`\r\n\r\n\tel.scrollIntoView({ block: \"nearest\" })\r\n\tstyle.scrollPaddingBlock = \"\"\r\n\tstyle.removeProperty(\"--_sp\")\r\n}\r\n\r\nconst getLineStart = (text: string, position: number) =\u003e\r\n\tposition ? text.lastIndexOf(\"\\n\", position - 1) + 1 : 0\r\n\r\nconst getLineEnd = (text: string, position: number) =\u003e\r\n\t(position = text.indexOf(\"\\n\", position)) + 1 ? position : text.length\r\n\r\nconst addListener2 = \u003cT extends keyof HTMLElementEventMap\u003e(\r\n\telement: HTMLElement,\r\n\ttype: T,\r\n\tlistener: (this: HTMLElement, ev: HTMLElementEventMap[T]) =\u003e any,\r\n\toptions?: boolean | AddEventListenerOptions,\r\n) =\u003e {\r\n\taddListener(element, type, listener, options)\r\n\treturn () =\u003e element.removeEventListener(type, listener, options)\r\n}\r\n\r\nconst addTextareaListener = \u003cT extends keyof HTMLElementEventMap\u003e(\r\n\teditor: PrismEditor,\r\n\ttype: T,\r\n\tlistener: (this: HTMLElement, ev: HTMLElementEventMap[T]) =\u003e any,\r\n\toptions?: boolean | AddEventListenerOptions,\r\n) =\u003e addListener2(editor.textarea, type, listener, options)\r\n\r\nconst getStyleValue = (el: HTMLElement, prop: keyof CSSStyleDeclaration) =\u003e\r\n\tparseFloat(\u003cstring\u003egetComputedStyle(el)[prop])\r\n\r\nconst getPosition = (editor: PrismEditor | PrismCodeBlock, el: HTMLElement) =\u003e {\r\n\tconst rect1 = el.getBoundingClientRect()\r\n\tconst rect2 = editor.lines[0].getBoundingClientRect()\r\n\r\n\treturn {\r\n\t\ttop: rect1.y - rect2.y,\r\n\t\tbottom: rect2.bottom - rect1.bottom,\r\n\t\tleft: rect1.x - rect2.x,\r\n\t\tright: rect2.right - rect1.right,\r\n\t\theight: rect1.height,\r\n\t}\r\n}\r\n\r\nconst updateNode = (node: Text, text: string) =\u003e {\r\n\tif (node.data != text) node.data = text\r\n}\r\n\r\nconst voidlessLangs = new Set(\"xml,rss,atom,jsx,tsx,xquery,xeora,xeoracube,actionscript\".split(\",\"))\r\nconst voidTags = /^(?:area|base|w?br|col|embed|hr|img|input|link|meta|source|track)$/\r\n\r\nexport {\r\n\tscrollToEl,\r\n\tgetLineStart,\r\n\tgetLineEnd,\r\n\tgetStyleValue,\r\n\taddListener2,\r\n\taddTextareaListener,\r\n\tgetPosition,\r\n\tupdateNode,\r\n\tvoidTags,\r\n\tvoidlessLangs,\r\n}\r\n","import { InputSelection, PrismEditor } from \"../index.js\"\r\nimport { numLines, doc } from \"../core.js\"\r\nimport { addListener2, getLineEnd, getLineStart } from \"./local.js\"\r\nimport { PrismCodeBlock } from \"../client/code-block.js\"\r\nimport { escapeHtml } from \"../prism/core.js\"\r\n\r\n/**\r\n * If {@link insertText} has been called, this variable stores the editor's selection\r\n * before the call. This variable is set to 0 right before {@link insertText} returns.\r\n * This can therefore be used inside a `beforeinput` handler to determine if\r\n * {@link insertText} fired the event, and if true, get the selection before the call.\r\n *\r\n * Intended for internal use only.\r\n */\r\nlet prevSelection: InputSelection | 0\r\n\r\n/**\r\n * Escapes all regex syntax characters with a backslash and returns the escaped string.\r\n *\r\n * The returned string is not safe inside a character class.\r\n */\r\nconst regexEscape = (str: string) =\u003e str.replace(/[$+?|.^*()[\\]{}\\\\]/g, \"\\\\$\u0026\")\r\n\r\n/** Returns the string between the position and the previous \\n. */\r\nconst getLineBefore = (text: string, position: number) =\u003e\r\n\ttext.slice(getLineStart(text, position), position)\r\n\r\n/**\r\n * Gets all lines that are at least partially between `start` and `end`.\r\n * @param text Text to search in.\r\n * @param start Start of the selection.\r\n * @param end End of the selection. Defaults to `start`.\r\n * @returns A tuple containing an array of lines, the starting position of the first line,\r\n * and the ending position of the last line.\r\n */\r\nconst getLines = (text: string, start: number, end = start) =\u003e\r\n\t[\r\n\t\ttext.slice((start = getLineStart(text, start)), (end = getLineEnd(text, end))).split(\"\\n\"),\r\n\t\tstart,\r\n\t\tend,\r\n\t] as const\r\n\r\n/**\r\n * Searches a full line for a token that matches a selector and contains `position`\r\n * within the specified margins. Tokens are searched in reverse document order which means\r\n * children are searched before their parents.\r\n * @param editor Editor you want to search in.\r\n * @param selector CSS selector for the tokens you want to search for.\r\n * @param marginLeft How far to the left of the token the position can be. Defaults to 0.\r\n * @param marginRight How far to the right of the token the position can be. Defaults to `marginLeft`.\r\n * @param position Position to search in. Defaults to `selectionStart`.\r\n * @returns A span element if one's found or undefined if not.\r\n * @example\r\n * This will return a string token if the cursor\r\n * is at least 1 character inside a string token\r\n * ```javascript\r\n * getClosestToken(editor, '.string', -1)\r\n * ```\r\n */\r\nconst getClosestToken = (\r\n\teditor: PrismEditor,\r\n\tselector: string,\r\n\tmarginLeft = 0,\r\n\tmarginRight = marginLeft,\r\n\tposition = editor.getSelection()[0],\r\n) =\u003e {\r\n\tconst value = editor.value\r\n\tconst line = editor.lines[numLines(value, 0, position)]\r\n\t// We unfortunitely have to include elements, else we can't get empty tokens\r\n\tconst walker = doc!.createTreeWalker(line, 5)\r\n\r\n\tlet node = walker.lastChild()\r\n\tlet offset = getLineEnd(value, position) + 1 - position - (\u003cText\u003enode).length\r\n\r\n\twhile (-offset \u003c= marginRight \u0026\u0026 (node = walker.previousNode())) {\r\n\t\tif (node.lastChild) continue\r\n\t\toffset -= (\u003cText\u003enode).length || 0\r\n\r\n\t\tif (offset \u003c= marginLeft) {\r\n\t\t\tfor (; node != line; node = node.parentNode!) {\r\n\t\t\t\tif ((\u003cElement\u003enode).matches?.(selector)) return \u003cHTMLSpanElement\u003enode\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/**\r\n * Gets the current language at a position.\r\n * Useful if you want to run different logic based on the language.\r\n * @param editor Editor to search in.\r\n * @param position Position to search in. Defaults to `selectionStart`.\r\n */\r\nconst getLanguage = (editor: PrismEditor, position?: number) =\u003e\r\n\tgetClosestToken(editor, \"[class*=language-]\", 0, 0, position)?.className.match(\r\n\t\t/language-(\\S*)/,\r\n\t)![1] || editor.options.language\r\n\r\n/**\r\n * Inserts text into the editor (unless it's read-only) while keeping undo/redo history.\r\n * Focuses the `textarea` if it isn't already.\r\n * @param editor Target editor.\r\n * @param text Text to insert.\r\n * @param start Position to start the insertion. Defaults to `selectionStart`.\r\n * @param end Position to end the insertion. Defaults to `start` if specified, else `selectionEnd`.\r\n * @param newCursorStart New starting position for the cursor. Defaults to the end of the inserted text.\r\n * @param newCursorEnd New ending position for the cursor. Defaults to `newCursorStart`.\r\n */\r\nconst insertText = (\r\n\teditor: PrismEditor,\r\n\ttext: string,\r\n\tstart?: number | null,\r\n\tend?: number | null,\r\n\tnewCursorStart?: number | null,\r\n\tnewCursorEnd?: number | null,\r\n) =\u003e {\r\n\tif (editor.options.readOnly) return\r\n\tprevSelection = editor.getSelection()\r\n\tend ??= start\r\n\r\n\tlet textarea = editor.textarea\r\n\tlet value = editor.value\r\n\t// Bug inserting new lines at the end if the editor ends with an empty line\r\n\tlet avoidBug =\r\n\t\tisChrome \u0026\u0026 !value[end ?? prevSelection[1]] \u0026\u0026 /\\n$/.test(text) \u0026\u0026 /^$|\\n$/.test(value)\r\n\tlet removeListener: () =\u003e any\r\n\r\n\teditor.focused || textarea.focus()\r\n\tif (start != null) textarea.setSelectionRange(start, end!)\r\n\r\n\tif (newCursorStart != null) {\r\n\t\tremoveListener = editor.on(\"update\", () =\u003e {\r\n\t\t\ttextarea.setSelectionRange(\r\n\t\t\t\tnewCursorStart,\r\n\t\t\t\tnewCursorEnd ?? newCursorStart,\r\n\t\t\t\t(\u003cInputSelection\u003eprevSelection)[2],\r\n\t\t\t)\r\n\t\t\tremoveListener()\r\n\t\t})\r\n\t}\r\n\r\n\t// Only Safari dispatches a beforeinput event\r\n\tisWebKit || textarea.dispatchEvent(new InputEvent(\"beforeinput\", { data: text }))\r\n\r\n\t// Inserting escaped HTML in Chrome and Safari instead for much better performance\r\n\tif (isChrome || isWebKit) {\r\n\t\tif (avoidBug) {\r\n\t\t\t// This means the last new line won't be inserted if there's\r\n\t\t\t// no selection, but that's less annoying than the bug.\r\n\t\t\ttextarea.selectionEnd--\r\n\t\t\ttext = text.slice(0, -1)\r\n\t\t}\r\n\t\t// New line at the end is always ignored in Safari\r\n\t\tif (isWebKit) text += \"\\n\"\r\n\t\tdoc!.execCommand(text ? \"insertHTML\" : \"delete\", false, escapeHtml(text, /\u003c/g, \"\u0026lt;\"))\r\n\t\tif (avoidBug) textarea.selectionStart++\r\n\t} else doc!.execCommand(text ? \"insertText\" : \"delete\", false, text)\r\n\r\n\tprevSelection = 0\r\n}\r\n\r\n/**\r\n * Sets the selection for the `textarea` and synchronously runs the selectionChange listeners.\r\n * If you don't want to synchronously run the listeners, use `textarea.setSelectionRange` instead.\r\n * @param editor Editor you want to change the selection of.\r\n * @param start New selectionStart.\r\n * @param end New selectionEnd. Defaults to `start`.\r\n * @param direction New direction.\r\n */\r\nconst setSelection = (\r\n\teditor: PrismEditor,\r\n\tstart: number,\r\n\tend = start,\r\n\tdirection?: \"backward\" | \"forward\" | \"none\",\r\n) =\u003e {\r\n\tlet textarea = editor.textarea\r\n\t// Webkit 18.3 and earlier focuses the textarea when changing the selection\r\n\tlet removeHandler = addListener2(textarea, \"focus\", e =\u003e {\r\n\t\tlet target = e.relatedTarget as HTMLElement\r\n\t\ttarget ? target.focus() : textarea.blur()\r\n\t})\r\n\r\n\ttextarea.setSelectionRange(start, end, direction)\r\n\tremoveHandler()\r\n\ttextarea.dispatchEvent(new Event(\"selectionchange\"))\r\n}\r\n\r\nconst userAgent = doc ? navigator.userAgent : \"\"\r\n/** Whether the user is on an Apple-based system. */\r\nconst isMac = doc ? /Mac|iPhone|iP[ao]d/.test(navigator.platform) : false\r\n/** Whether the browser is Chromium based. */\r\nconst isChrome = /Chrome\\//.test(userAgent)\r\n/** Whether the browser uses the WebKit browser engine. */\r\nconst isWebKit = !isChrome \u0026\u0026 /AppleWebKit\\//.test(userAgent)\r\n\r\n/**\r\n * Returns a 4 bit integer where each bit represents whether\r\n * each modifier is pressed in the order Shift, Meta, Ctrl, Alt.\r\n *\r\n * ```javascript\r\n * e.shiftKey \u0026\u0026 !e.metaKey \u0026\u0026 e.ctrlKey \u0026\u0026 e.altKey\r\n * // is equivalent to\r\n * getModifierCode(e) == 0b1011\r\n * ```\r\n */\r\nconst getModifierCode = (\r\n\te: KeyboardEvent, // @ts-expect-error\r\n): number =\u003e e.altKey + e.ctrlKey * 2 + e.metaKey * 4 + e.shiftKey * 8\r\n\r\n/**\r\n * Adds an overlay by appending the element to the editor's overlays.\r\n * Equivalent to calling `editor.lines[0].append(overlay)`.\r\n * @param editor Editor or code block you want to add an overlay to.\r\n * @param overlay The overlay you want to add.\r\n */\r\nconst addOverlay = (editor: PrismEditor | PrismCodeBlock, overlay: HTMLElement) =\u003e\r\n\teditor.lines[0].append(overlay)\r\n\r\n/**\r\n * Gets the position of the cursor in the document. It returns a tuple with three numbers:\r\n *\r\n * 1. The line number of the cursor\r\n * 2. The 1-based column of the cursor\r\n * 3. Number of characters selected\r\n *\r\n * @example\r\n * const [line, col, selected] = getDocumentPosition(editor)\r\n */\r\nconst getDocumentPosition = (editor: PrismEditor): [number, number, number] =\u003e {\r\n\tlet [start, end, dir] = editor.getSelection()\r\n\tlet pos = dir \u003c \"f\" ? start : end\r\n\tlet value = editor.value\r\n\tlet col = 0\r\n\tlet chars = 0\r\n\tlet tabSize = editor.options.tabSize || 2\r\n\r\n\tfor (const char of getLineBefore(value, pos)) {\r\n\t\tcol += char == \"\\t\" ? tabSize - (col % tabSize) : 1\r\n\t}\r\n\r\n\tfor (const _ of value.slice(start, end)) chars++\r\n\r\n\treturn [editor.activeLine, col + 1, chars]\r\n}\r\n\r\nexport {\r\n\tregexEscape,\r\n\tgetLineBefore,\r\n\tgetLines,\r\n\tgetClosestToken,\r\n\tgetLanguage,\r\n\tinsertText,\r\n\tgetModifierCode,\r\n\tsetSelection,\r\n\taddOverlay,\r\n\tgetDocumentPosition,\r\n\tisMac,\r\n\tisChrome,\r\n\tisWebKit,\r\n\tprevSelection,\r\n}\r\n","/**\r\n * Creates a nested pattern where all occurrences of the string `\u003cself\u003e` are replaced with the pattern itself.\r\n *\r\n * @param {string} pattern\r\n * @param {number} depthLog2\r\n */\r\nvar nested = (pattern, depthLog2) =\u003e {\r\n\tfor (var i = 0; i \u003c depthLog2; i++) {\r\n\t\tpattern = pattern.replace(/\u003cself\u003e/g, `(?:${pattern})`);\r\n\t}\r\n\treturn pattern.replace(/\u003cself\u003e/g, '[]');\r\n}\r\n\r\n/**\r\n * Replaces all placeholders \"\u003cn\u003e\" of given pattern with the n-th replacement (zero based).\r\n *\r\n * Note: This is a simple text based replacement. Be careful when using backreferences!\r\n *\r\n * @param {string} pattern the given pattern.\r\n * @param {string[]} replacements a list of replacement which can be inserted into the given pattern.\r\n * @returns the pattern with all placeholders replaced with their corresponding replacements.\r\n * @example replace(/a\u003c0\u003ea/.source, [/b+/.source]) === /a(?:b+)a/.source\r\n */\r\nvar replace = (pattern, replacements) =\u003e\r\n\tpattern.replace(/\u003c(\\d+)\u003e/g, (m, index) =\u003e `(?:${replacements[+index]})`);\r\n\r\n/**\r\n * @param {string} pattern \r\n * @param {string[]} replacements \r\n * @param {string=} flags\r\n */\r\nvar re = (pattern, replacements, flags) =\u003e RegExp(replace(pattern, replacements), flags);\r\n\r\nexport { nested, replace, re }\r\n","import { languages, rest, tokenize } from \"../core.js\";\r\n\r\nvar _clone = (o, visited) =\u003e {\r\n\tif (visited.has(o)) return visited.get(o);\r\n\tvar copy = o, t = toString.call(o).slice(8, -1);\r\n\r\n\tif (t == \"Object\") {\r\n\t\tvisited.set(o, copy = {});\r\n\t\tfor (var key in o) {\r\n\t\t\tcopy[key] = _clone(o[key], visited);\r\n\t\t}\r\n\t\tif (o[rest]) copy[rest] = _clone(o[rest], visited);\r\n\t\tif (o[tokenize]) copy[tokenize] = o[tokenize];\r\n\t}\r\n\telse if (t == \"Array\") {\r\n\t\tvisited.set(o, copy = []);\r\n\t\tfor (var i = 0, l = o.length; i \u003c l; i++) {\r\n\t\t\tcopy[i] = _clone(o[i], visited);\r\n\t\t}\r\n\t}\r\n\r\n\treturn copy;\r\n}\r\n\r\nvar clone = o =\u003e _clone(o, new Map);\r\n\r\nvar extend = (id, redef) =\u003e Object.assign(clone(languages[id]), redef);\r\n\r\nvar insertBefore = (grammar, before, insert) =\u003e {\r\n\tvar temp = {};\r\n\r\n\tfor (var token in grammar) {\r\n\t\ttemp[token] = grammar[token];\r\n\t\tdelete grammar[token];\r\n\t}\r\n\r\n\tfor (var token in temp) {\r\n\t\tif (token == before) Object.assign(grammar, insert);\r\n\r\n\t\t// Do not insert token which also occur in insert. See #1525\r\n\t\tif (!insert.hasOwnProperty(token)) {\r\n\t\t\tgrammar[token] = temp[token];\r\n\t\t}\r\n\t}\r\n}\r\n\r\nvar toString = {}.toString;\r\n\r\nexport { clone, insertBefore, extend }\r\n","import { Token, languages, tokenize, withoutTokenizer } from '../core.js';\r\nimport { clone, insertBefore } from './language.js';\r\nimport { clikeComment } from './patterns.js';\r\nimport { replace, re } from './shared.js';\r\n\r\nvar space = /\\s|\\/\\/.*(?!.)|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\//.source;\r\nvar braces = /\\{(?:[^{}]|\\{(?:[^{}]|\\{(?:[^{}]|\\{[^}]*\\})*\\})*\\})*\\}/.source;\r\n\r\n/**\r\n * @param {string} code\r\n * @param {*} grammar\r\n */\r\nvar tokenizer = (code, grammar) =\u003e {\r\n\tvar position = 0, tokens = withoutTokenizer(code, grammar);\r\n\tvar i = 0, openedTags = [], l = 0;\r\n\tvar token;\r\n\tvar j = 0;\r\n\tvar textStartPos;\r\n\tvar content;\r\n\tvar last;\r\n\tvar addStoredText = () =\u003e {\r\n\t\tif (textStartPos) {\r\n\t\t\tcontent = code.slice(textStartPos, position);\r\n\t\t\ttokens[j++] = new Token('plain-text', content, content);\r\n\t\t\ttextStartPos = 0;\r\n\t\t}\r\n\t};\r\n\r\n\tfor ( ; token = tokens[i]; i++, position += length) {\r\n\t\tvar length = token.length;\r\n\t\tvar isNeverText = token.type;\r\n\t\tvar tag, start;\r\n\r\n\t\tif (isNeverText) {\r\n\t\t\tcontent = token.content;\r\n\t\t\tif (isNeverText == 'tag') {\r\n\t\t\t\t// We found a tag, now find its kind\r\n\t\t\t\tstart = content[0].length;\r\n\t\t\t\ttag = content[2] ? code.substr(position + start, content[1].length) : '';\r\n\t\t\t\tif (start \u003e 1) {\r\n\t\t\t\t\t// Closing tag\r\n\t\t\t\t\tif (l \u0026\u0026 last[0] == tag) {\r\n\t\t\t\t\t\t// Pop matching opening tag\r\n\t\t\t\t\t\tlast = openedTags[--l - 1];\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (content[content.length - 1].length \u003c 2) {\r\n\t\t\t\t\t\t// Opening tag\r\n\t\t\t\t\t\topenedTags[l++] = last = [tag, 0];\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} else if (l \u0026\u0026 isNeverText == 'punctuation') {\r\n\t\t\t\tif (content == '{') last[1]++;\r\n\t\t\t\telse if (last[1] \u0026\u0026 content == '}') last[1]--;\r\n\t\t\t\telse {\r\n\t\t\t\t\tisNeverText = \"}()[]\".includes(content);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tisNeverText = false;\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (!isNeverText \u0026\u0026 l \u0026\u0026 !last[1]) {\r\n\t\t\t// Here we are inside a tag, and not inside a JSX context.\r\n\t\t\t// That's plain text: drop any tokens matched.\r\n\t\t\tif (!textStartPos) {\r\n\t\t\t\ttextStartPos = position;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\taddStoredText();\r\n\t\t\ttokens[j++] = token;\r\n\t\t}\r\n\t}\r\n\taddStoredText();\r\n\ttokens.length = j;\r\n\treturn tokens;\r\n};\r\n\r\n/**\r\n * Adds JSX tags along with the custom tokenizer to the grammar\r\n * @param {any} grammar\r\n * @param {string} name\r\n */\r\nvar addJsxTag = (grammar, name) =\u003e {\r\n\tinsertBefore(languages[name] = grammar = clone(grammar), 'regex', {\r\n\t\t'tag': {\r\n\t\t\tpattern: re(\r\n\t\t\t\t/\u003c\\/?(?:(?!\\d)[^\\s%=\u003c\u003e/]+(?:\u003c0\u003e(?:\u003c0\u003e*(?:[^\\s{=\u003c\u003e/*]+(?:\u003c0\u003e*=\u003c0\u003e*(?!\\s)(?:\"[^\"]*\"|'[^']*'|\u003c1\u003e)?|(?=[\\s/\u003e]))|\u003c1\u003e))*)?\u003c0\u003e*\\/?)?\u003e/.source, [space, braces], 'g'\r\n\t\t\t),\r\n\t\t\tinside: {\r\n\t\t\t\t'punctuation': /^\u003c\\/?|\\/?\u003e$/,\r\n\t\t\t\t'tag': {\r\n\t\t\t\t\tpattern: /^[^\\s/\u003c]+/,\r\n\t\t\t\t\tinside: {\r\n\t\t\t\t\t\t'namespace': /^[^:]+:/,\r\n\t\t\t\t\t\t'class-name': /^[A-Z]\\w*(?:\\.[A-Z]\\w*)*$/\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\t'attr-value': {\r\n\t\t\t\t\tpattern: re(/(=\u003c0\u003e*)(?:\"[^\"]*\"|'[^']*')/.source, [space]),\r\n\t\t\t\t\tlookbehind: true,\r\n\t\t\t\t\tinside: {\r\n\t\t\t\t\t\t'punctuation': /^[\"']|[\"']$/g\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\t'expression': {\r\n\t\t\t\t\tpattern: RegExp(braces, 'g'),\r\n\t\t\t\t\talias: 'language-' + name,\r\n\t\t\t\t\tinside: grammar\r\n\t\t\t\t},\r\n\t\t\t\t'comment': clikeComment,\r\n\t\t\t\t'attr-equals': /=/,\r\n\t\t\t\t'attr-name': {\r\n\t\t\t\t\tpattern: /\\S+/,\r\n\t\t\t\t\tinside: {\r\n\t\t\t\t\t\t'namespace': /^[^:]+:/\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\tgrammar[tokenize] = tokenizer;\r\n\treturn grammar;\r\n};\r\n\r\nexport { addJsxTag, space, braces };\r\n","import { CommentTokens, InputSelection, Language, PrismEditor, languageMap } from \"../../index.js\"\r\nimport { braces } from \"../../prism/utils/jsx-shared.js\"\r\nimport { re } from \"../../prism/utils/shared.js\"\r\nimport { getClosestToken, getLineBefore } from \"../../utils/index.js\"\r\nimport { voidTags } from \"../../utils/local.js\"\r\n\r\nconst clikeIndent = /[([{][^)\\]}]*$|^[^.]*\\b(?:case .+?|default):\\s*$/\r\nconst isBracketPair = /\\[]|\\(\\)|{}/\r\nconst xmlOpeningTag =\r\n\t/\u003c(?![\\d?!#@])([^\\s/=\u003e$\u003c%]+)(?:\\s(?:\\s*[^\\s/\"'=\u003e]+(?:\\s*=\\s*(?!\\s)(?:\"[^\"]*\"|'[^']*'|[^\\s\"'=\u003e]+(?=[\\s\u003e]))?|(?=[\\s/\u003e])))+)?\\s*\u003e[ \\t]*$/\r\nconst xmlClosingTag = /^\u003c\\/(?!\\d)[^\\s/=\u003e$\u003c%]+\\s*\u003e/\r\nconst openBracket = /[([{][^)\\]}]*$/\r\nconst astroOpeningTag = /* @__PURE__ */ re(\r\n\t/\u003c(?:(?![\\d!])([^\\s%=\u003c\u003e/]+)(?:\\s(?:\\s*(?:[^\\s{=\u003c\u003e/]+(?:\\s*=\\s*(?!\\s)(?:\"[^\"]*\"|'[^']*'|[^\\s{=\u003c\u003e/\"']+(?=[\\s/\u003e])|\u003c0\u003e)?|(?=[\\s/\u003e]))|\u003c0\u003e))*)?\\s*)?\u003e[ \\t]*$/\r\n\t\t.source,\r\n\t[braces],\r\n)\r\n\r\nconst testBracketPair = ([start, end]: InputSelection, value: string) =\u003e {\r\n\treturn isBracketPair.test(value[start - 1] + value[end])\r\n}\r\n\r\nconst clikeComment: CommentTokens = {\r\n\tline: \"//\",\r\n\tblock: [\"/*\", \"*/\"],\r\n}\r\n\r\nconst isOpen = (match: RegExpMatchArray | null, voidTags?: RegExp) =\u003e\r\n\t!!match \u0026\u0026 !voidTags?.test(match[1])\r\n\r\nconst htmlAutoIndent = (tagPattern: RegExp, voidTags?: RegExp): Language[\"autoIndent\"] =\u003e [\r\n\t([start], value) =\u003e\r\n\t\tisOpen(value.slice(0, start).match(tagPattern), voidTags) ||\r\n\t\topenBracket.test(getLineBefore(value, start)),\r\n\t(selection, value) =\u003e\r\n\t\ttestBracketPair(selection, value) ||\r\n\t\t(isOpen(value.slice(0, selection[0]).match(tagPattern), voidTags) \u0026\u0026\r\n\t\t\txmlClosingTag.test(value.slice(selection[1]))),\r\n]\r\n\r\nconst markupComment: CommentTokens = {\r\n\tblock: [\"\u003c!--\", \"--\u003e\"],\r\n}\r\n\r\nconst markupLanguage = (\r\n\tcomment = markupComment,\r\n\ttagPattern = xmlOpeningTag,\r\n\tvoidTags?: RegExp,\r\n): Language =\u003e ({\r\n\tcomments: comment,\r\n\tautoIndent: htmlAutoIndent(tagPattern, voidTags),\r\n\tautoCloseTags: ([start, end], value, editor) =\u003e {\r\n\t\treturn autoCloseTags(editor, start, end, value, tagPattern, voidTags)\r\n\t},\r\n})\r\n\r\nconst autoCloseTags = (\r\n\teditor: PrismEditor,\r\n\tstart: number,\r\n\tend: number,\r\n\tvalue: string,\r\n\ttagPattern: RegExp,\r\n\tvoidTags?: RegExp,\r\n) =\u003e {\r\n\tif (start == end) {\r\n\t\tlet match: string | RegExpExecArray | null = tagPattern.exec(value.slice(0, start) + \"\u003e\")\r\n\t\tlet tagMatcher = editor.extensions.matchTags\r\n\t\tif (match \u0026\u0026 ((match = match[1] || \"\"), !voidTags?.test(match))) {\r\n\t\t\tif (tagMatcher) {\r\n\t\t\t\tlet { pairs, tags } = tagMatcher\r\n\t\t\t\tfor (let i = tags.length; i; ) {\r\n\t\t\t\t\tlet tag = tags[--i]\r\n\t\t\t\t\tif (tag[1] \u003e= start \u0026\u0026 tag[4] \u0026\u0026 tag[5] \u0026\u0026 tag[3] == match \u0026\u0026 pairs[i] == null) {\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn `\u003c/${match}\u003e`\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst bracketIndenting = (comments = clikeComment, indentPattern = openBracket): Language =\u003e ({\r\n\tcomments,\r\n\tautoIndent: [\r\n\t\t([start], value) =\u003e indentPattern.test(getLineBefore(value, start)),\r\n\t\ttestBracketPair,\r\n\t],\r\n})\r\n\r\nconst markupTemplateLang = (name: string, comments: CommentTokens): Language =\u003e\r\n\t(languageMap[name] = {\r\n\t\tcomments,\r\n\t\tautoIndent: htmlAutoIndent(xmlOpeningTag, voidTags),\r\n\t\tautoCloseTags: ([start, end], value, editor) =\u003e {\r\n\t\t\treturn getClosestToken(editor, \".\" + name, 0, 0, start)\r\n\t\t\t\t? \"\"\r\n\t\t\t\t: autoCloseTags(editor, start, end, value, xmlOpeningTag, voidTags)\r\n\t\t},\r\n\t})\r\n\r\nexport {\r\n\tclikeIndent,\r\n\tisBracketPair,\r\n\txmlOpeningTag,\r\n\txmlClosingTag,\r\n\topenBracket,\r\n\tautoCloseTags,\r\n\ttestBracketPair,\r\n\tclikeComment,\r\n\tbracketIndenting,\r\n\thtmlAutoIndent,\r\n\tvoidTags,\r\n\tmarkupTemplateLang,\r\n\tmarkupLanguage,\r\n\tmarkupComment,\r\n\tastroOpeningTag,\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.abnf = bracketIndenting({ line: \";\" })\r\n","import { languageMap } from \"..\"\r\nimport { clikeComment, markupLanguage } from \"./shared\"\r\n\r\nlanguageMap.actionscript = markupLanguage(clikeComment)\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.ada = bracketIndenting({ line: \"--\" })\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.agda = {\r\n\tcomments: {\r\n\t\tline: \"--\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.al = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.g4 = languageMap.antlr4 = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { getLineBefore } from \"../utils\"\r\n\r\nlanguageMap.apacheconf = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n\tautoIndent: [\r\n\t\t([start], value) =\u003e /\u003c\\w+\\b.*\u003e[ \\t]*$/.test(getLineBefore(value, start)),\r\n\t\t([start, end], value) =\u003e\r\n\t\t\t/\u003c\\w+\\b.*\u003e$/.test(getLineBefore(value, start)) \u0026\u0026 /^\u003c\\/\\w+\\b.*\u003e/.test(value.slice(end)),\r\n\t],\r\n\tautoCloseTags([start], value) {\r\n\t\tlet match = /\u003c(\\w+)\\b.*\u003e/.exec(getLineBefore(value, start) + \"\u003e\")\r\n\t\treturn match! \u0026\u0026 `\u003c/${match[1]}\u003e`\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.apex = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.apl = bracketIndenting({ line: \"⍝\" })\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.applescript = {\r\n\tcomments: {\r\n\t\tline: \"--\",\r\n\t\tblock: [\"(*\", \"*)\"],\r\n\t},\r\n}\r\n","import { languageMap } from \"..\";\r\nimport { bracketIndenting } from \"./shared\";\r\n\r\nlanguageMap.aql = bracketIndenting()","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.ino = languageMap.arduino = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.arff = {\r\n\tcomments: {\r\n\t\tline: \"%\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.art = languageMap.arturo = {\r\n\tcomments: {\r\n\t\tline: \";\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.adoc = languageMap.asciidoc = {\r\n\tcomments: {\r\n\t\tline: \"//\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap[\"arm-asm\"] =\r\n\tlanguageMap.armasm =\r\n\tlanguageMap.asm6502 =\r\n\tlanguageMap.asmatmel =\r\n\tlanguageMap.nasm =\r\n\t\t{ comments: { line: \";\" } }\r\n","import { languageMap } from \"../core\"\r\nimport { markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.aspnet = markupLanguage({ block: [\"\u003c%--\", \"--%\u003e\"] }, xmlOpeningTag, voidTags)\r\n","import { languageMap } from \"..\"\r\nimport { astroOpeningTag, markupComment, markupLanguage, voidTags } from \"./shared\"\r\n\r\nlanguageMap.astro = markupLanguage(markupComment, astroOpeningTag, voidTags)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.autohotkey = bracketIndenting({\r\n\tline: \";\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.autoit = {\r\n\tcomments: {\r\n\t\tline: \";\",\r\n\t\tblock: [\"#cs\", \"#ce\"],\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.avs = languageMap.avisynth = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.avdl = languageMap[\"avro-idl\"] = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.awk = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.sh = languageMap.shell = languageMap.bash = bracketIndenting({ line: \"#\" })\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.basic = {\r\n\tcomments: {\r\n\t\tline: \"!\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.batch = {\r\n\tcomments: {\r\n\t\tline: \"::\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.bbj = {\r\n\tcomments: {\r\n\t\tline: \"REM\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.bicep = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.birb = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.bison = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.bqn = bracketIndenting({ line: \"#\" })\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.brightscript = {\r\n\tcomments: { line: \"'\" },\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.bro = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.bsl = bracketIndenting({\r\n\tline: \"//\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.cfscript = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.chaiscript = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.cil = bracketIndenting({\r\n\tline: \"//\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap[\"cilk-c\"] =\r\n\tlanguageMap.cilkc =\r\n\tlanguageMap.cilk =\r\n\tlanguageMap[\"cilk-cpp\"] =\r\n\tlanguageMap.cilkcpp =\r\n\t\tbracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.clike =\r\n\tlanguageMap.js =\r\n\tlanguageMap.javascript =\r\n\tlanguageMap.ts =\r\n\tlanguageMap.typescript =\r\n\tlanguageMap.java =\r\n\tlanguageMap.cs =\r\n\tlanguageMap.csharp =\r\n\tlanguageMap.c =\r\n\tlanguageMap.cpp =\r\n\tlanguageMap.go =\r\n\tlanguageMap.d =\r\n\tlanguageMap.dart =\r\n\tlanguageMap.flow =\r\n\tlanguageMap.haxe =\r\n\t\tbracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.clojure = bracketIndenting({\r\n\tline: \";\",\r\n})\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.cmake = bracketIndenting({ line: \"#\", block: [\"#[[\", \"]]\"] })\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.cobol = {\r\n\tcomments: {\r\n\t\tline: \"*\",\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.coffee = languageMap.coffeescript = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"###\", \"###\"],\r\n})\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting, clikeComment } from \"./shared\"\r\n\r\nlanguageMap.css = bracketIndenting({\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n\r\nlanguageMap.less = languageMap.scss = bracketIndenting()\r\n\r\nlanguageMap.sass = {\r\n\tcomments: clikeComment,\r\n\t// Let's not bother with auto-indenting for sass\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.graphql = bracketIndenting({ line: \"#\" })\r\n","import { languageMap } from \"../core\"\r\nimport { markupComment, markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.markup =\r\n\tlanguageMap.html =\r\n\tlanguageMap.markdown =\r\n\tlanguageMap.md =\r\n\t\tmarkupLanguage(markupComment, xmlOpeningTag, voidTags)\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.ini = {\r\n\tcomments: {\r\n\t\tline: \";\",\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.json = languageMap.json5 = languageMap.jsonp = bracketIndenting()\r\n","import { CommentTokens } from \"..\"\r\nimport { languageMap } from \"../core\"\r\nimport { Bracket, BracketMatcher } from \"../extensions/matchBrackets\"\r\nimport { Tag, TagMatcher } from \"../extensions/matchTags\"\r\nimport { re } from \"../prism/utils/shared\"\r\nimport { space, braces } from \"../prism/utils/jsx-shared\"\r\nimport { getClosestToken, getLineBefore } from \"../utils\"\r\nimport { autoCloseTags, clikeComment, clikeIndent, testBracketPair } from \"./shared\"\r\n\r\nconst openingTag = re(\r\n\t/(?:^|[^\\w$])\u003c(?:(?!\\d)([^\\s%=\u003c\u003e/]+)(?:(?:\u003c0\u003e|\u003c0\u003e*\u003c(?:[^\u003c\u003e=]|=[^\u003c]|=?\u003c(?:[^\u003c\u003e]|\u003c[^\u003c\u003e]*\u003e)*\u003e)*\u003e)(?:\u003c0\u003e*(?:[^\\s\"'{=\u003c\u003e/*]+(?:\u003c0\u003e*=\u003c0\u003e*(?!\\s)(?:\"[^\"]*\"|'[^']*'|\u003c1\u003e)?|(?=[\\s/\u003e]))|\u003c1\u003e))*)?\u003c0\u003e*)?\u003e[ \\t]*$/\r\n\t\t.source,\r\n\t[space, braces],\r\n)\r\n\r\nconst closingTag = /^\u003c\\/(?!\\d)[^\\s%=\u003c\u003e/]*\\s*\u003e/\r\n\r\nconst inJsxContext = (\r\n\t{ tags, pairs }: TagMatcher,\r\n\t{ brackets, pairs: bracketPairs }: BracketMatcher,\r\n\tposition: number,\r\n) =\u003e {\r\n\tfor (let i = tags.length, tag: Tag, min = 0; (tag = tags[--i]); ) {\r\n\t\tif (tag[2] \u003e position \u0026\u0026 tag[1] \u003c position) min = tag[1]\r\n\t\telse if (\r\n\t\t\t!tag[4] \u0026\u0026\r\n\t\t\ttag[5] \u0026\u0026\r\n\t\t\ttag[1] \u003e= min \u0026\u0026\r\n\t\t\ttag[2] \u003c= position \u0026\u0026\r\n\t\t\t!(tags[pairs[i]!]?.[1] \u003c position)\r\n\t\t) {\r\n\t\t\tfor (let i = brackets.length, bracket: Bracket; (bracket = brackets[--i]); ) {\r\n\t\t\t\tif (\r\n\t\t\t\t\tbracket[1] \u003e= tag[2] \u0026\u0026\r\n\t\t\t\t\tbracket[1] \u003c position \u0026\u0026\r\n\t\t\t\t\tbracket[4] == \"{\" \u0026\u0026\r\n\t\t\t\t\t!(brackets[bracketPairs[i]!]?.[1] \u003c position)\r\n\t\t\t\t) {\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn true\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst jsxComment: CommentTokens = {\r\n\tblock: [\"{/*\", \"*/}\"],\r\n}\r\n\r\nlanguageMap.jsx = languageMap.tsx = {\r\n\tcomments: clikeComment,\r\n\tgetComments(editor, position) {\r\n\t\tconst { matchBrackets, matchTags } = editor.extensions\r\n\t\tconst inJsx =\r\n\t\t\tmatchBrackets \u0026\u0026 matchTags\r\n\t\t\t\t? inJsxContext(matchTags, matchBrackets, position)\r\n\t\t\t\t: getClosestToken(editor, \".plain-text\", 0, 0, position)\r\n\t\treturn inJsx ? jsxComment : clikeComment\r\n\t},\r\n\tautoIndent: [\r\n\t\t([start], value) =\u003e\r\n\t\t\topeningTag.test(value.slice(0, start)) || clikeIndent.test(getLineBefore(value, start)),\r\n\t\t(selection, value) =\u003e\r\n\t\t\ttestBracketPair(selection, value) ||\r\n\t\t\t(openingTag.test(value.slice(0, selection[0])) \u0026\u0026 closingTag.test(value.slice(selection[1]))),\r\n\t],\r\n\tautoCloseTags: ([start, end], value, editor) =\u003e {\r\n\t\treturn autoCloseTags(editor, start, end, value, openingTag)\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.kts = languageMap.kt = languageMap.kotlin = bracketIndenting()\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.lua = bracketIndenting({ line: \"--\", block: [\"--[[\", \"]]\"] })\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.makefile = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.objc = languageMap.objectivec = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.opencl = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.perl = bracketIndenting({ line: \"#\" })\r\n","import { languageMap } from \"..\"\r\nimport { getClosestToken } from \"../utils\"\r\nimport {\r\n\tautoCloseTags,\r\n\tclikeComment,\r\n\thtmlAutoIndent,\r\n\tmarkupComment,\r\n\tvoidTags,\r\n\txmlOpeningTag,\r\n} from \"./shared\"\r\n\r\nlanguageMap.php = {\r\n\tcomments: clikeComment,\r\n\tgetComments: (editor, position) =\u003e {\r\n\t\tif (getClosestToken(editor, \".php\", 0, 0, position)) return clikeComment\r\n\t\treturn markupComment\r\n\t},\r\n\tautoIndent: htmlAutoIndent(xmlOpeningTag, voidTags),\r\n\tautoCloseTags: ([start, end], value, editor) =\u003e {\r\n\t\treturn !value.includes(\"\u003c?\") || getClosestToken(editor, \".php\", 0, 0, start)\r\n\t\t\t? \"\"\r\n\t\t\t: autoCloseTags(editor, start, end, value, xmlOpeningTag, voidTags)\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.rpy =\r\n\tlanguageMap.renpy =\r\n\tlanguageMap.py =\r\n\tlanguageMap.python =\r\n\t\tbracketIndenting({ line: \"#\" }, /[([{][^)\\]}]*$|:\\s*$/)\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.r = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.vbnet = {\r\n\tcomments: {\r\n\t\tline: \"'\",\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.crystal = languageMap.rb = languageMap.ruby = bracketIndenting({ line: \"#\", block: [\"=begin\", \"=end\"] })\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.rust = bracketIndenting()\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.plsql = languageMap.sql = bracketIndenting({\r\n\tline: \"--\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.swift = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.wasm = {\r\n\tcomments: {\r\n\t\tline: \";;\",\r\n\t\tblock: [\"(;\", \";)\"],\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { markupLanguage } from \"./shared\"\r\n\r\n// Same as HTML, but without void tags\r\nlanguageMap.xml =\r\n\tlanguageMap.ssml =\r\n\tlanguageMap.atom =\r\n\tlanguageMap.rss =\r\n\tlanguageMap.mathml =\r\n\tlanguageMap.svg =\r\n\t\tmarkupLanguage()\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.yml = languageMap.yaml = bracketIndenting({ line: \"#\" })\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.conc = languageMap.concurnas = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.cooklang = {\r\n\tcomments: {\r\n\t\tline: \"--\",\r\n\t\tblock: [\"[-\", \"-]\"],\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.coq = bracketIndenting({ block: [\"(*\", \"*)\"] })\r\n","import { languageMap } from \"../core\"\r\nimport { markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.razor = languageMap.cshtml = markupLanguage(\r\n\t{ block: [\"@*\", \"*@\"] },\r\n\txmlOpeningTag,\r\n\tvoidTags,\r\n)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.cue = bracketIndenting({ line: \"//\" })\r\n","import { languageMap } from \"..\";\r\nimport { bracketIndenting } from \"./shared\";\r\n\r\nlanguageMap.cypher = bracketIndenting({ line: \"//\" })","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.dataweave = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.dax = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.dhall = bracketIndenting({\r\n\tline: \"--\",\r\n\tblock: [\"{-\", \"-}\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { markupTemplateLang } from \"./shared\"\r\n\r\nlanguageMap.jinja2 = markupTemplateLang(\"django\", {\r\n\tblock: [\"{#\", \"#}\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap[\"dns-zone\"] = languageMap[\"dns-zone-file\"] = {\r\n\tcomments: {\r\n\t\tline: \";\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.dockerfile = languageMap.docker = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.gv = languageMap.dot = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.ebnf = bracketIndenting({\r\n\tblock: [\"(*\", \"*)\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.editorconfig = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.eiffel = bracketIndenting({\r\n\tline: \"--\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.ejs = markupLanguage({ block: [\"\u003c%#\", \"%\u003e\"] }, xmlOpeningTag, voidTags)\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.elixir = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.elm = {\r\n\tcomments: {\r\n\t\tline: \"--\",\r\n\t\tblock: [\"{-\", \"-}\"],\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport \"./html\"\r\n\r\nlanguageMap.erb = languageMap.html\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.erlang = {\r\n\tcomments: {\r\n\t\tline: \"%\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport \"./html\"\r\n\r\nlanguageMap.etlua = languageMap.html\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap[\"xlsx\"] =\r\n\tlanguageMap[\"xls\"] =\r\n\tlanguageMap[\"excel-formula\"] =\r\n\t\tbracketIndenting({\r\n\t\t\tblock: ['N(\"', '\")'],\r\n\t\t})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.factor = bracketIndenting({\r\n\tline: \"!\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.false = {\r\n\tcomments: {\r\n\t\tblock: [\"{\", \"}\"],\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap[\"firestore-security-rules\"] = bracketIndenting({\r\n\tline: \"//\",\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.fortran = {\r\n\tcomments: {\r\n\t\tline: \"!\",\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.fsharp = bracketIndenting({ line: \"//\", block: [\"(*\", \"*)\"] })\r\n","import { markupTemplateLang } from \"./shared\"\r\n\r\nmarkupTemplateLang(\"ftl\", {\r\n\tblock: [\"\u003c#--\", \"--\u003e\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.gap = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.gcode = {\r\n\tcomments: {\r\n\t\tline: \";\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.gdscript = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.gettext = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.gherkin = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.git = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.glsl = languageMap.hlsl = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.gamemakerlanguage = languageMap.gml = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.gni = languageMap.gn = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap[\"go-mod\"] = languageMap[\"go-module\"] = bracketIndenting({\r\n\tline: \"//\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.gradle = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.groovy = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.haml = bracketIndenting({ line: \"-#\" })\r\n","import { languageMap } from \"..\"\r\nimport { markupTemplateLang } from \"./shared\"\r\n\r\nlanguageMap.mustache = languageMap.hbs = markupTemplateLang(\"handlebars\", {\r\n\tblock: [\"{{!\", \"}}\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.idr =\r\n\tlanguageMap.idris =\r\n\tlanguageMap.hs =\r\n\tlanguageMap.haskell =\r\n\tlanguageMap.purs =\r\n\tlanguageMap.purescript =\r\n\t\tbracketIndenting({\r\n\t\t\tline: \"--\",\r\n\t\t\tblock: [\"{-\", \"-}\"],\r\n\t\t})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.hcl = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.hoon = {\r\n\tcomments: {\r\n\t\tline: \"::\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.ichigojam = bracketIndenting({\r\n\tline: \"'\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.icon = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.iecst = bracketIndenting({\r\n\tline: \"//\",\r\n\tblock: [\"(*\", \"*)\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.npmignore =\r\n\tlanguageMap.hgignore =\r\n\tlanguageMap.gitignore =\r\n\tlanguageMap.ignore =\r\n\t\t{\r\n\t\t\tcomments: {\r\n\t\t\t\tline: \"#\",\r\n\t\t\t},\r\n\t\t}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.inform7 = bracketIndenting({\r\n\tblock: [\"[\", \"]\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.io = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.j = {\r\n\tcomments: {\r\n\t\tline: \"NB.\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.jolie = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.jq = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.julia = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"#=\", \"=#\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.keepalived = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.keyman = {\r\n\tcomments: {\r\n\t\tline: \"c\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.kumir = bracketIndenting({\r\n\tline: \"|\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.kusto = bracketIndenting({\r\n\tline: \"//\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.context = languageMap.tex = languageMap.latex = bracketIndenting({ line: \"%\" })\r\n","import { markupTemplateLang } from \"./shared\"\r\n\r\nmarkupTemplateLang(\"latte\", {\r\n\tblock: [\"{*\", \"*}\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.ly = languageMap.lilypond = bracketIndenting({\r\n\tline: \"%\",\r\n\tblock: [\"%{\", \"%}\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.ld = languageMap[\"linker-script\"] = bracketIndenting({\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { markupTemplateLang } from \"./shared\"\r\n\r\nmarkupTemplateLang(\"liquid\", {\r\n\tblock: [\"{% comment %}\", \"{% endcomment %}\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap[\"emacs-lisp\"] =\r\n\tlanguageMap.emacs =\r\n\tlanguageMap.elisp =\r\n\tlanguageMap.lisp =\r\n\t\tbracketIndenting({ line: \";\" })\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.livescript = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.llvm = bracketIndenting({\r\n\tline: \";\",\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.lolcode = {\r\n\tcomments: {\r\n\t\tline: \"BTW\",\r\n\t\tblock: [\"OBTW\", \"TLDR\"],\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.magma = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.mata = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.matlab = bracketIndenting({\r\n\tline: \"%\",\r\n\tblock: [\"%{\", \"}%\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.maxscript = bracketIndenting({\r\n\tline: \"--\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.mel = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.mermaid = bracketIndenting({\r\n\tline: \"%%\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.metafont = bracketIndenting({\r\n\tline: \"%\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.mizar = bracketIndenting({\r\n\tline: \"::\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.mongodb = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.monkey = bracketIndenting({\r\n\tline: \"'\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.moon = languageMap.moonscript = bracketIndenting({\r\n\tline: \"--\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.n1ql = bracketIndenting({\r\n\tline: \"--\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.n4jsd = languageMap.n4js = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap[\"nand2tetris-hdl\"] = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.nani = languageMap.naniscript = bracketIndenting({\r\n\tline: \";\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.neon = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.nevod = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.nginx = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.nim = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.nix = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.nsis = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.ocaml = bracketIndenting({\r\n\tblock: [\"(*\", \"*)\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.odin = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.qasm = languageMap.openqasm = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.oz = bracketIndenting({\r\n\tline: \"%\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.parigp = bracketIndenting({\r\n\tline: \"\\\\\\\\\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.parser = markupLanguage(\r\n\t{\r\n\t\tline: \"#\",\r\n\t\tblock: [\"\u003c!--\", \"--\u003e\"],\r\n\t},\r\n\txmlOpeningTag,\r\n\tvoidTags,\r\n)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.pascaligo = languageMap.objectpascal = languageMap.pascal = bracketIndenting({\r\n\tline: \"//\",\r\n\tblock: [\"(*\", \"*)\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.pcode = languageMap.peoplecode = {\r\n\tcomments: {\r\n\t\tblock: [\"/*\", \"*/\"],\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.plantuml = languageMap[\"plant-uml\"] = bracketIndenting({\r\n\tline: \"'\",\r\n\tblock: [\"/'\", \"'/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.mscript = languageMap.pq = languageMap.powerquery = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.powershell = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"\u003c#\", \"#\u003e\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.processing = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.prolog = bracketIndenting({\r\n\tline: \"%\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.promql = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.properties = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.protobuf = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.psl = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.pug = bracketIndenting({\r\n\tline: \"//-\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.puppet = bracketIndenting({\r\n\tline: \"#\",\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.pure = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.pbfasm = languageMap.purebasic = bracketIndenting({\r\n\tline: \";\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.q = bracketIndenting({\r\n\tline: \"/\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.qml = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.qore = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.qs = languageMap.qsharp = bracketIndenting({\r\n\tline: \"//\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.reason = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.rego = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.res = languageMap.rescript = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.rest = {\r\n\tcomments: {\r\n\t\tline: \"..\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.rip = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.roboconf = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.robot = languageMap.robotframework = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.sas = bracketIndenting({\r\n\tblock: [\"/*\", \"*/\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.scala = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.racket = languageMap.scheme = bracketIndenting({\r\n\tline: \";\",\r\n\tblock: [\"#|\", \"|#\"],\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.smali = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.smalltalk = bracketIndenting({\r\n\tblock: ['\"', '\"'],\r\n})\r\n","import { markupTemplateLang } from \"./shared\"\r\n\r\nmarkupTemplateLang(\"smarty\", {\r\n\tblock: [\"{*\", \"*}\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.smlnj = languageMap.sml = bracketIndenting({\r\n\tblock: [\"(*\", \"*)\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.sol = languageMap.solidity = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.sln = languageMap[\"solution-file\"] = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { markupTemplateLang, clikeComment } from \"./shared\"\r\n\r\nmarkupTemplateLang(\"soy\", clikeComment)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap[\"splunk-spl\"] = bracketIndenting({\r\n\tblock: ['`comment(\"', '\")`'],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.sqf = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.squirrel = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.stan = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.stata = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.stylus = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.sclang = languageMap.supercollider = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { astroOpeningTag, markupComment, markupLanguage, voidTags } from \"./shared\"\r\n\r\nlanguageMap.svelte = markupLanguage(markupComment, astroOpeningTag, voidTags)\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.systemd = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.tcl = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { markupComment, markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.textile = markupLanguage(markupComment, xmlOpeningTag, voidTags)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.toml = bracketIndenting({\r\n\tline: \"#\",\r\n})\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.trickle =\r\n\tlanguageMap.troy =\r\n\tlanguageMap.tremor =\r\n\t\t{\r\n\t\t\tcomments: {\r\n\t\t\t\tline: \"#\",\r\n\t\t\t},\r\n\t\t}\r\n","import { getClosestToken } from \"../utils\"\r\nimport { markupTemplateLang } from \"./shared\"\r\n\r\nmarkupTemplateLang(\"tt2\", {\r\n\tblock: [\"[%#\", \"%]\"],\r\n}).getComments = (editor, position) =\u003e ({\r\n\tline: getClosestToken(editor, \".tt2\", 0, 0, position) \u0026\u0026 \"#\",\r\n\tblock: [\"[%#\", \"%]\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.rq =\r\n\tlanguageMap.sparql =\r\n\tlanguageMap.trig =\r\n\tlanguageMap.turtle =\r\n\t\tbracketIndenting({ line: \"#\" })\r\n","import { markupTemplateLang } from \"./shared\"\r\n\r\nmarkupTemplateLang(\"twig\", {\r\n\tblock: [\"{#\", \"#}\"],\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.tsconfig = languageMap.typoscript = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.uc =\r\n\tlanguageMap.uscript =\r\n\tlanguageMap.unrealscript =\r\n\t\tbracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.uorazor = {\r\n\tcomments: {\r\n\t\tline: \"#\",\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.v = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting, clikeComment, clikeIndent } from \"./shared\"\r\n\r\nlanguageMap.vala = bracketIndenting(clikeComment, clikeIndent)\r\n","import { languageMap } from \"..\"\r\nimport { markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.velocity = markupLanguage(\r\n\t{\r\n\t\tline: \"##\",\r\n\t\tblock: [\"#*\", \"*#\"],\r\n\t},\r\n\txmlOpeningTag,\r\n\tvoidTags,\r\n)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.verilog = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.vhdl = bracketIndenting({\r\n\tline: \"--\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.vim = bracketIndenting({\r\n\tline: '\"',\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.vba = languageMap.vb = languageMap[\"visual-basic\"] = bracketIndenting({\r\n\tline: \"'\",\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { markupComment, markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.vue = markupLanguage(markupComment, xmlOpeningTag, voidTags)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.warpscript = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.webidl = languageMap[\"web-idl\"] = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.wgsl = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { markupLanguage, voidTags, xmlOpeningTag } from \"./shared\"\r\n\r\nlanguageMap.wiki = markupLanguage(\r\n\t{\r\n\t\tblock: [\"/*\", \"*/\"],\r\n\t},\r\n\txmlOpeningTag,\r\n\tvoidTags,\r\n)\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.nb =\r\n\tlanguageMap.wl =\r\n\tlanguageMap.mathematica =\r\n\tlanguageMap.wolfram =\r\n\t\tbracketIndenting({ block: [\"(*\", \"*)\"] })\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.wren = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { markupLanguage } from \"./shared\"\r\n\r\nlanguageMap.xeoracube = languageMap.xeora = markupLanguage()\r\n","import { languageMap } from \"..\"\r\n\r\nlanguageMap.xojo = {\r\n\tcomments: {\r\n\t\tline: \"//\",\r\n\t},\r\n}\r\n","import { languageMap } from \"../core\"\r\nimport { getClosestToken } from \"../utils\"\r\nimport { markupLanguage } from \"./shared\"\r\n\r\nconst comment: [string, string] = [\"(:\", \":)\"]\r\n\r\nconst xquery = (languageMap.xquery = markupLanguage(\r\n\t{ block: comment },\r\n\t/\u003c(?!!|\\d)([^\\s/=\u003e$\u003c%]+)(?:\\s+[^\\s/=\u003e]+(?:\\s*=\\s*([\"'])(?:\\{\\{|\\{(?!\\{)(?:[^{}]|\\{(?:[^{}]|\\{[^}]*\\})*\\})*\\}|(?!\\2)[^{])*\\2)?)*\\s*\u003e[ \\t]*$/,\r\n))\r\n\r\nxquery.getComments = (editor, position) =\u003e ({\r\n\tblock: getClosestToken(editor, \".plain-text\", 0, 0, position) ? [\"{(:\", \":)}\"] : comment,\r\n})\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.yang = bracketIndenting()\r\n","import { languageMap } from \"..\"\r\nimport { bracketIndenting } from \"./shared\"\r\n\r\nlanguageMap.zig = bracketIndenting({\r\n\tline: \"//\",\r\n})\r\n"],"version":3}
