@coderline/alphatab-monaco 1.7.0-alpha.1626

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (763) hide show
  1. package/LICENSE +378 -0
  2. package/LICENSE.header +10 -0
  3. package/README.md +12 -0
  4. package/biome.jsonc +31 -0
  5. package/dist/abap.mjs +1419 -0
  6. package/dist/alphaTab.monaco.d.ts +40 -0
  7. package/dist/alphaTab.monaco.min.mjs +13 -0
  8. package/dist/alphaTab.monaco.mjs +14 -0
  9. package/dist/alphaTab.monaco2.mjs +205141 -0
  10. package/dist/alphatab-monaco.css +7100 -0
  11. package/dist/apex.mjs +351 -0
  12. package/dist/azcli.mjs +89 -0
  13. package/dist/bat.mjs +121 -0
  14. package/dist/bicep.mjs +130 -0
  15. package/dist/cameligo.mjs +195 -0
  16. package/dist/clojure.mjs +782 -0
  17. package/dist/coffee.mjs +253 -0
  18. package/dist/cpp.mjs +410 -0
  19. package/dist/csharp.mjs +347 -0
  20. package/dist/csp.mjs +74 -0
  21. package/dist/css.mjs +206 -0
  22. package/dist/cssMode.mjs +2106 -0
  23. package/dist/cypher.mjs +284 -0
  24. package/dist/dart.mjs +302 -0
  25. package/dist/dockerfile.mjs +151 -0
  26. package/dist/ecl.mjs +477 -0
  27. package/dist/elixir.mjs +590 -0
  28. package/dist/flow9.mjs +163 -0
  29. package/dist/freemarker2.mjs +1029 -0
  30. package/dist/fsharp.mjs +238 -0
  31. package/dist/go.mjs +239 -0
  32. package/dist/graphql.mjs +172 -0
  33. package/dist/handlebars.mjs +452 -0
  34. package/dist/hcl.mjs +204 -0
  35. package/dist/html.mjs +341 -0
  36. package/dist/htmlMode.mjs +2121 -0
  37. package/dist/ini.mjs +92 -0
  38. package/dist/java.mjs +253 -0
  39. package/dist/javascript.mjs +90 -0
  40. package/dist/jsonMode.mjs +2830 -0
  41. package/dist/julia.mjs +532 -0
  42. package/dist/kotlin.mjs +274 -0
  43. package/dist/less.mjs +182 -0
  44. package/dist/lexon.mjs +178 -0
  45. package/dist/liquid.mjs +273 -0
  46. package/dist/lua.mjs +183 -0
  47. package/dist/m3.mjs +231 -0
  48. package/dist/markdown.mjs +250 -0
  49. package/dist/mdx.mjs +197 -0
  50. package/dist/mips.mjs +219 -0
  51. package/dist/msdax.mjs +396 -0
  52. package/dist/mysql.mjs +899 -0
  53. package/dist/objective-c.mjs +204 -0
  54. package/dist/pascal.mjs +272 -0
  55. package/dist/pascaligo.mjs +185 -0
  56. package/dist/perl.mjs +647 -0
  57. package/dist/pgsql.mjs +872 -0
  58. package/dist/php.mjs +521 -0
  59. package/dist/pla.mjs +158 -0
  60. package/dist/postiats.mjs +928 -0
  61. package/dist/powerquery.mjs +911 -0
  62. package/dist/powershell.mjs +260 -0
  63. package/dist/protobuf.mjs +441 -0
  64. package/dist/pug.mjs +423 -0
  65. package/dist/python.mjs +333 -0
  66. package/dist/qsharp.mjs +322 -0
  67. package/dist/r.mjs +264 -0
  68. package/dist/razor.mjs +583 -0
  69. package/dist/redis.mjs +323 -0
  70. package/dist/redshift.mjs +830 -0
  71. package/dist/restructuredtext.mjs +195 -0
  72. package/dist/ruby.mjs +532 -0
  73. package/dist/rust.mjs +364 -0
  74. package/dist/sb.mjs +136 -0
  75. package/dist/scala.mjs +391 -0
  76. package/dist/scheme.mjs +129 -0
  77. package/dist/scss.mjs +281 -0
  78. package/dist/shell.mjs +242 -0
  79. package/dist/solidity.mjs +1388 -0
  80. package/dist/sophia.mjs +220 -0
  81. package/dist/sparql.mjs +222 -0
  82. package/dist/sql.mjs +874 -0
  83. package/dist/st.mjs +437 -0
  84. package/dist/swift.mjs +333 -0
  85. package/dist/systemverilog.mjs +597 -0
  86. package/dist/tcl.mjs +253 -0
  87. package/dist/tsMode.mjs +1384 -0
  88. package/dist/twig.mjs +413 -0
  89. package/dist/types/alphatab/src/AlphaTabApiBase.d.ts +2550 -0
  90. package/dist/types/alphatab/src/AlphaTabError.d.ts +15 -0
  91. package/dist/types/alphatab/src/CoreSettings.d.ts +212 -0
  92. package/dist/types/alphatab/src/DisplaySettings.d.ts +340 -0
  93. package/dist/types/alphatab/src/EngravingSettings.d.ts +430 -0
  94. package/dist/types/alphatab/src/Environment.d.ts +230 -0
  95. package/dist/types/alphatab/src/EventEmitter.d.ts +62 -0
  96. package/dist/types/alphatab/src/ExporterSettings.d.ts +23 -0
  97. package/dist/types/alphatab/src/FileLoadError.d.ts +9 -0
  98. package/dist/types/alphatab/src/FormatError.d.ts +8 -0
  99. package/dist/types/alphatab/src/ImporterSettings.d.ts +64 -0
  100. package/dist/types/alphatab/src/LayoutMode.d.ts +14 -0
  101. package/dist/types/alphatab/src/LogLevel.d.ts +27 -0
  102. package/dist/types/alphatab/src/Logger.d.ts +33 -0
  103. package/dist/types/alphatab/src/NotationSettings.d.ts +509 -0
  104. package/dist/types/alphatab/src/PlayerSettings.d.ts +411 -0
  105. package/dist/types/alphatab/src/ProgressEventArgs.d.ts +20 -0
  106. package/dist/types/alphatab/src/RenderingResources.d.ts +175 -0
  107. package/dist/types/alphatab/src/ResizeEventArgs.d.ts +19 -0
  108. package/dist/types/alphatab/src/Settings.d.ts +59 -0
  109. package/dist/types/alphatab/src/SmuflMetadata.d.ts +84 -0
  110. package/dist/types/alphatab/src/StaveProfile.d.ts +27 -0
  111. package/dist/types/alphatab/src/alphaTab.core.d.ts +36 -0
  112. package/dist/types/alphatab/src/alphaTab.main.d.ts +1 -0
  113. package/dist/types/alphatab/src/alphaTab.polyfills.d.ts +1 -0
  114. package/dist/types/alphatab/src/exporter/AlphaTexExporter.d.ts +24 -0
  115. package/dist/types/alphatab/src/exporter/Gp7Exporter.d.ts +10 -0
  116. package/dist/types/alphatab/src/exporter/GpifWriter.d.ts +61 -0
  117. package/dist/types/alphatab/src/exporter/ScoreExporter.d.ts +29 -0
  118. package/dist/types/alphatab/src/exporter/_barrel.d.ts +3 -0
  119. package/dist/types/alphatab/src/generated/CoreSettingsJson.d.ts +172 -0
  120. package/dist/types/alphatab/src/generated/CoreSettingsSerializer.d.ts +9 -0
  121. package/dist/types/alphatab/src/generated/DisplaySettingsJson.d.ts +328 -0
  122. package/dist/types/alphatab/src/generated/DisplaySettingsSerializer.d.ts +9 -0
  123. package/dist/types/alphatab/src/generated/EngravingSettingsCloner.d.ts +7 -0
  124. package/dist/types/alphatab/src/generated/EngravingSettingsJson.d.ts +388 -0
  125. package/dist/types/alphatab/src/generated/EngravingSettingsSerializer.d.ts +9 -0
  126. package/dist/types/alphatab/src/generated/EngravingStemInfoJson.d.ts +20 -0
  127. package/dist/types/alphatab/src/generated/EngravingStemInfoSerializer.d.ts +9 -0
  128. package/dist/types/alphatab/src/generated/ExporterSettingsJson.d.ts +24 -0
  129. package/dist/types/alphatab/src/generated/ExporterSettingsSerializer.d.ts +9 -0
  130. package/dist/types/alphatab/src/generated/ImporterSettingsJson.d.ts +65 -0
  131. package/dist/types/alphatab/src/generated/ImporterSettingsSerializer.d.ts +9 -0
  132. package/dist/types/alphatab/src/generated/NotationSettingsJson.d.ts +210 -0
  133. package/dist/types/alphatab/src/generated/NotationSettingsSerializer.d.ts +9 -0
  134. package/dist/types/alphatab/src/generated/PlayerSettingsJson.d.ts +276 -0
  135. package/dist/types/alphatab/src/generated/PlayerSettingsSerializer.d.ts +9 -0
  136. package/dist/types/alphatab/src/generated/RenderingResourcesJson.d.ts +168 -0
  137. package/dist/types/alphatab/src/generated/RenderingResourcesSerializer.d.ts +9 -0
  138. package/dist/types/alphatab/src/generated/SettingsJson.d.ts +48 -0
  139. package/dist/types/alphatab/src/generated/SettingsSerializer.d.ts +9 -0
  140. package/dist/types/alphatab/src/generated/SlidePlaybackSettingsJson.d.ts +31 -0
  141. package/dist/types/alphatab/src/generated/SlidePlaybackSettingsSerializer.d.ts +9 -0
  142. package/dist/types/alphatab/src/generated/VersionInfo.d.ts +9 -0
  143. package/dist/types/alphatab/src/generated/VibratoPlaybackSettingsJson.d.ts +49 -0
  144. package/dist/types/alphatab/src/generated/VibratoPlaybackSettingsSerializer.d.ts +9 -0
  145. package/dist/types/alphatab/src/generated/_jsonbarrel.d.ts +14 -0
  146. package/dist/types/alphatab/src/generated/model/AutomationCloner.d.ts +7 -0
  147. package/dist/types/alphatab/src/generated/model/AutomationSerializer.d.ts +9 -0
  148. package/dist/types/alphatab/src/generated/model/BackingTrackSerializer.d.ts +9 -0
  149. package/dist/types/alphatab/src/generated/model/BarSerializer.d.ts +9 -0
  150. package/dist/types/alphatab/src/generated/model/BarStyleSerializer.d.ts +9 -0
  151. package/dist/types/alphatab/src/generated/model/BeatCloner.d.ts +7 -0
  152. package/dist/types/alphatab/src/generated/model/BeatSerializer.d.ts +9 -0
  153. package/dist/types/alphatab/src/generated/model/BeatStyleSerializer.d.ts +9 -0
  154. package/dist/types/alphatab/src/generated/model/BendPointCloner.d.ts +7 -0
  155. package/dist/types/alphatab/src/generated/model/BendPointSerializer.d.ts +9 -0
  156. package/dist/types/alphatab/src/generated/model/ChordSerializer.d.ts +9 -0
  157. package/dist/types/alphatab/src/generated/model/FermataSerializer.d.ts +9 -0
  158. package/dist/types/alphatab/src/generated/model/HeaderFooterStyleSerializer.d.ts +9 -0
  159. package/dist/types/alphatab/src/generated/model/InstrumentArticulationSerializer.d.ts +9 -0
  160. package/dist/types/alphatab/src/generated/model/MasterBarSerializer.d.ts +9 -0
  161. package/dist/types/alphatab/src/generated/model/NoteCloner.d.ts +7 -0
  162. package/dist/types/alphatab/src/generated/model/NoteSerializer.d.ts +9 -0
  163. package/dist/types/alphatab/src/generated/model/NoteStyleSerializer.d.ts +9 -0
  164. package/dist/types/alphatab/src/generated/model/PlaybackInformationSerializer.d.ts +9 -0
  165. package/dist/types/alphatab/src/generated/model/RenderStylesheetSerializer.d.ts +9 -0
  166. package/dist/types/alphatab/src/generated/model/ScoreSerializer.d.ts +9 -0
  167. package/dist/types/alphatab/src/generated/model/ScoreStyleSerializer.d.ts +9 -0
  168. package/dist/types/alphatab/src/generated/model/SectionSerializer.d.ts +9 -0
  169. package/dist/types/alphatab/src/generated/model/StaffSerializer.d.ts +9 -0
  170. package/dist/types/alphatab/src/generated/model/SustainPedalMarkerSerializer.d.ts +9 -0
  171. package/dist/types/alphatab/src/generated/model/SyncPointDataCloner.d.ts +7 -0
  172. package/dist/types/alphatab/src/generated/model/SyncPointDataSerializer.d.ts +9 -0
  173. package/dist/types/alphatab/src/generated/model/TrackSerializer.d.ts +9 -0
  174. package/dist/types/alphatab/src/generated/model/TrackStyleSerializer.d.ts +9 -0
  175. package/dist/types/alphatab/src/generated/model/TuningSerializer.d.ts +9 -0
  176. package/dist/types/alphatab/src/generated/model/VoiceSerializer.d.ts +9 -0
  177. package/dist/types/alphatab/src/generated/model/VoiceStyleSerializer.d.ts +9 -0
  178. package/dist/types/alphatab/src/importer/AlphaTexImporter.d.ts +69 -0
  179. package/dist/types/alphatab/src/importer/BinaryStylesheet.d.ts +70 -0
  180. package/dist/types/alphatab/src/importer/CapellaImporter.d.ts +10 -0
  181. package/dist/types/alphatab/src/importer/CapellaParser.d.ts +75 -0
  182. package/dist/types/alphatab/src/importer/Gp3To5Importer.d.ts +95 -0
  183. package/dist/types/alphatab/src/importer/Gp7To8Importer.d.ts +10 -0
  184. package/dist/types/alphatab/src/importer/GpifParser.d.ts +131 -0
  185. package/dist/types/alphatab/src/importer/GpxFileSystem.d.ts +82 -0
  186. package/dist/types/alphatab/src/importer/GpxImporter.d.ts +10 -0
  187. package/dist/types/alphatab/src/importer/LayoutConfiguration.d.ts +38 -0
  188. package/dist/types/alphatab/src/importer/MusicXmlImporter.d.ts +128 -0
  189. package/dist/types/alphatab/src/importer/PartConfiguration.d.ts +27 -0
  190. package/dist/types/alphatab/src/importer/ScoreImporter.d.ts +22 -0
  191. package/dist/types/alphatab/src/importer/ScoreLoader.d.ts +32 -0
  192. package/dist/types/alphatab/src/importer/UnsupportedFormatError.d.ts +9 -0
  193. package/dist/types/alphatab/src/importer/_barrel.d.ts +5 -0
  194. package/dist/types/alphatab/src/importer/alphaTex/ATNF.d.ts +19 -0
  195. package/dist/types/alphatab/src/importer/alphaTex/AlphaTex1EnumMappings.d.ts +75 -0
  196. package/dist/types/alphatab/src/importer/alphaTex/AlphaTex1LanguageDefinitions.d.ts +39 -0
  197. package/dist/types/alphatab/src/importer/alphaTex/AlphaTex1LanguageHandler.d.ts +72 -0
  198. package/dist/types/alphatab/src/importer/alphaTex/AlphaTex1MetaDataReader.d.ts +42 -0
  199. package/dist/types/alphatab/src/importer/alphaTex/AlphaTexAst.d.ts +504 -0
  200. package/dist/types/alphatab/src/importer/alphaTex/AlphaTexLexer.d.ts +43 -0
  201. package/dist/types/alphatab/src/importer/alphaTex/AlphaTexParser.d.ts +60 -0
  202. package/dist/types/alphatab/src/importer/alphaTex/AlphaTexShared.d.ts +290 -0
  203. package/dist/types/alphatab/src/importer/alphaTex/IAlphaTexLanguageImportHandler.d.ts +50 -0
  204. package/dist/types/alphatab/src/importer/alphaTex/IAlphaTexMetaDataReader.d.ts +12 -0
  205. package/dist/types/alphatab/src/importer/alphaTex/_barrel.d.ts +4 -0
  206. package/dist/types/alphatab/src/io/BitReader.d.ts +18 -0
  207. package/dist/types/alphatab/src/io/ByteBuffer.d.ts +26 -0
  208. package/dist/types/alphatab/src/io/IOHelper.d.ts +38 -0
  209. package/dist/types/alphatab/src/io/IReadable.d.ts +48 -0
  210. package/dist/types/alphatab/src/io/IWriteable.d.ts +22 -0
  211. package/dist/types/alphatab/src/io/JsonHelper.d.ts +26 -0
  212. package/dist/types/alphatab/src/io/TypeConversions.d.ts +20 -0
  213. package/dist/types/alphatab/src/io/_barrel.d.ts +4 -0
  214. package/dist/types/alphatab/src/midi/AlphaSynthMidiFileHandler.d.ts +28 -0
  215. package/dist/types/alphatab/src/midi/BeatTickLookup.d.ts +63 -0
  216. package/dist/types/alphatab/src/midi/ControllerType.d.ts +84 -0
  217. package/dist/types/alphatab/src/midi/DeprecatedEvents.d.ts +103 -0
  218. package/dist/types/alphatab/src/midi/GeneralMidi.d.ts +13 -0
  219. package/dist/types/alphatab/src/midi/IMidiFileHandler.d.ts +79 -0
  220. package/dist/types/alphatab/src/midi/MasterBarTickLookup.d.ts +85 -0
  221. package/dist/types/alphatab/src/midi/MidiEvent.d.ts +292 -0
  222. package/dist/types/alphatab/src/midi/MidiFile.d.ts +72 -0
  223. package/dist/types/alphatab/src/midi/MidiFileGenerator.d.ts +150 -0
  224. package/dist/types/alphatab/src/midi/MidiPlaybackController.d.ts +36 -0
  225. package/dist/types/alphatab/src/midi/MidiTickLookup.d.ts +167 -0
  226. package/dist/types/alphatab/src/midi/MidiUtils.d.ts +37 -0
  227. package/dist/types/alphatab/src/midi/_barrel.d.ts +10 -0
  228. package/dist/types/alphatab/src/model/AccentuationType.d.ts +22 -0
  229. package/dist/types/alphatab/src/model/AccidentalType.d.ts +42 -0
  230. package/dist/types/alphatab/src/model/Automation.d.ts +113 -0
  231. package/dist/types/alphatab/src/model/BackingTrack.d.ts +13 -0
  232. package/dist/types/alphatab/src/model/Bar.d.ts +329 -0
  233. package/dist/types/alphatab/src/model/BarreShape.d.ts +18 -0
  234. package/dist/types/alphatab/src/model/Beat.d.ts +559 -0
  235. package/dist/types/alphatab/src/model/BendPoint.d.ts +26 -0
  236. package/dist/types/alphatab/src/model/BendStyle.d.ts +18 -0
  237. package/dist/types/alphatab/src/model/BendType.d.ts +46 -0
  238. package/dist/types/alphatab/src/model/BrushType.d.ts +26 -0
  239. package/dist/types/alphatab/src/model/Chord.d.ts +48 -0
  240. package/dist/types/alphatab/src/model/Clef.d.ts +26 -0
  241. package/dist/types/alphatab/src/model/Color.d.ts +40 -0
  242. package/dist/types/alphatab/src/model/CrescendoType.d.ts +18 -0
  243. package/dist/types/alphatab/src/model/Direction.d.ts +25 -0
  244. package/dist/types/alphatab/src/model/Duration.d.ts +50 -0
  245. package/dist/types/alphatab/src/model/DynamicValue.d.ts +92 -0
  246. package/dist/types/alphatab/src/model/ElementStyle.d.ts +13 -0
  247. package/dist/types/alphatab/src/model/FadeType.d.ts +22 -0
  248. package/dist/types/alphatab/src/model/Fermata.d.ts +34 -0
  249. package/dist/types/alphatab/src/model/Fingers.d.ts +34 -0
  250. package/dist/types/alphatab/src/model/Font.d.ts +117 -0
  251. package/dist/types/alphatab/src/model/GolpeType.d.ts +18 -0
  252. package/dist/types/alphatab/src/model/GraceGroup.d.ts +26 -0
  253. package/dist/types/alphatab/src/model/GraceType.d.ts +22 -0
  254. package/dist/types/alphatab/src/model/HarmonicType.d.ts +34 -0
  255. package/dist/types/alphatab/src/model/InstrumentArticulation.d.ts +71 -0
  256. package/dist/types/alphatab/src/model/JsonConverter.d.ts +95 -0
  257. package/dist/types/alphatab/src/model/KeySignature.d.ts +66 -0
  258. package/dist/types/alphatab/src/model/KeySignatureType.d.ts +14 -0
  259. package/dist/types/alphatab/src/model/Lyrics.d.ts +30 -0
  260. package/dist/types/alphatab/src/model/MasterBar.d.ts +182 -0
  261. package/dist/types/alphatab/src/model/ModelUtils.d.ts +134 -0
  262. package/dist/types/alphatab/src/model/MusicFontSymbol.d.ts +289 -0
  263. package/dist/types/alphatab/src/model/Note.d.ts +516 -0
  264. package/dist/types/alphatab/src/model/NoteAccidentalMode.d.ts +34 -0
  265. package/dist/types/alphatab/src/model/NoteOrnament.d.ts +11 -0
  266. package/dist/types/alphatab/src/model/Ottavia.d.ts +26 -0
  267. package/dist/types/alphatab/src/model/PercussionMapper.d.ts +15 -0
  268. package/dist/types/alphatab/src/model/PickStroke.d.ts +18 -0
  269. package/dist/types/alphatab/src/model/PlaybackInformation.d.ts +45 -0
  270. package/dist/types/alphatab/src/model/Rasgueado.d.ts +25 -0
  271. package/dist/types/alphatab/src/model/RenderStylesheet.d.ts +135 -0
  272. package/dist/types/alphatab/src/model/RepeatGroup.d.ts +33 -0
  273. package/dist/types/alphatab/src/model/Score.d.ts +224 -0
  274. package/dist/types/alphatab/src/model/Section.d.ts +17 -0
  275. package/dist/types/alphatab/src/model/SimileMark.d.ts +24 -0
  276. package/dist/types/alphatab/src/model/SlideInType.d.ts +18 -0
  277. package/dist/types/alphatab/src/model/SlideOutType.d.ts +34 -0
  278. package/dist/types/alphatab/src/model/Staff.d.ts +100 -0
  279. package/dist/types/alphatab/src/model/Track.d.ts +124 -0
  280. package/dist/types/alphatab/src/model/TripletFeel.d.ts +34 -0
  281. package/dist/types/alphatab/src/model/Tuning.d.ts +60 -0
  282. package/dist/types/alphatab/src/model/TupletGroup.d.ts +37 -0
  283. package/dist/types/alphatab/src/model/VibratoType.d.ts +18 -0
  284. package/dist/types/alphatab/src/model/Voice.d.ts +81 -0
  285. package/dist/types/alphatab/src/model/WahPedal.d.ts +9 -0
  286. package/dist/types/alphatab/src/model/WhammyType.d.ts +36 -0
  287. package/dist/types/alphatab/src/model/_barrel.d.ts +57 -0
  288. package/dist/types/alphatab/src/platform/Cursors.d.ts +31 -0
  289. package/dist/types/alphatab/src/platform/ICanvas.d.ts +102 -0
  290. package/dist/types/alphatab/src/platform/IContainer.d.ts +71 -0
  291. package/dist/types/alphatab/src/platform/IMouseEventArgs.d.ts +27 -0
  292. package/dist/types/alphatab/src/platform/IUiFacade.d.ts +175 -0
  293. package/dist/types/alphatab/src/platform/_barrel.d.ts +8 -0
  294. package/dist/types/alphatab/src/platform/javascript/AlphaSynthAudioExporterWorkerApi.d.ts +21 -0
  295. package/dist/types/alphatab/src/platform/javascript/AlphaSynthAudioWorkletOutput.d.ts +30 -0
  296. package/dist/types/alphatab/src/platform/javascript/AlphaSynthScriptProcessorOutput.d.ts +21 -0
  297. package/dist/types/alphatab/src/platform/javascript/AlphaSynthWebAudioOutputBase.d.ts +57 -0
  298. package/dist/types/alphatab/src/platform/javascript/AlphaSynthWebWorker.d.ts +31 -0
  299. package/dist/types/alphatab/src/platform/javascript/AlphaSynthWebWorkerApi.d.ts +98 -0
  300. package/dist/types/alphatab/src/platform/javascript/AlphaSynthWorkerSynthOutput.d.ts +33 -0
  301. package/dist/types/alphatab/src/platform/javascript/AlphaTabApi.d.ts +111 -0
  302. package/dist/types/alphatab/src/platform/javascript/AlphaTabWebWorker.d.ts +16 -0
  303. package/dist/types/alphatab/src/platform/javascript/AlphaTabWorkerScoreRenderer.d.ts +34 -0
  304. package/dist/types/alphatab/src/platform/javascript/AudioElementBackingTrackSynthOutput.d.ts +49 -0
  305. package/dist/types/alphatab/src/platform/javascript/BrowserMouseEventArgs.d.ts +14 -0
  306. package/dist/types/alphatab/src/platform/javascript/BrowserUiFacade.d.ts +96 -0
  307. package/dist/types/alphatab/src/platform/javascript/Html5Canvas.d.ts +57 -0
  308. package/dist/types/alphatab/src/platform/javascript/HtmlElementContainer.d.ts +45 -0
  309. package/dist/types/alphatab/src/platform/javascript/IWorkerScope.d.ts +8 -0
  310. package/dist/types/alphatab/src/platform/javascript/IntersectionObserverPolyfill.d.ts +15 -0
  311. package/dist/types/alphatab/src/platform/javascript/JQueryAlphaTab.d.ts +68 -0
  312. package/dist/types/alphatab/src/platform/javascript/ResizeObserverPolyfill.d.ts +15 -0
  313. package/dist/types/alphatab/src/platform/javascript/ScalableHtmlElementContainer.d.ts +26 -0
  314. package/dist/types/alphatab/src/platform/javascript/WebPlatform.d.ts +10 -0
  315. package/dist/types/alphatab/src/platform/skia/SkiaCanvas.d.ts +86 -0
  316. package/dist/types/alphatab/src/platform/svg/CssFontSvgCanvas.d.ts +11 -0
  317. package/dist/types/alphatab/src/platform/svg/FontSizes.d.ts +32 -0
  318. package/dist/types/alphatab/src/platform/svg/SvgCanvas.d.ts +48 -0
  319. package/dist/types/alphatab/src/rendering/BarRendererBase.d.ts +177 -0
  320. package/dist/types/alphatab/src/rendering/BarRendererFactory.d.ts +21 -0
  321. package/dist/types/alphatab/src/rendering/BeatXPosition.d.ts +31 -0
  322. package/dist/types/alphatab/src/rendering/EffectBand.d.ts +31 -0
  323. package/dist/types/alphatab/src/rendering/EffectBandSizingInfo.d.ts +12 -0
  324. package/dist/types/alphatab/src/rendering/EffectBandSlot.d.ts +22 -0
  325. package/dist/types/alphatab/src/rendering/EffectBarGlyphSizing.d.ts +37 -0
  326. package/dist/types/alphatab/src/rendering/EffectBarRenderer.d.ts +29 -0
  327. package/dist/types/alphatab/src/rendering/EffectBarRendererFactory.d.ts +22 -0
  328. package/dist/types/alphatab/src/rendering/EffectBarRendererInfo.d.ts +62 -0
  329. package/dist/types/alphatab/src/rendering/IScoreRenderer.d.ts +151 -0
  330. package/dist/types/alphatab/src/rendering/LineBarRenderer.d.ts +64 -0
  331. package/dist/types/alphatab/src/rendering/MultiBarRestBeatContainerGlyph.d.ts +10 -0
  332. package/dist/types/alphatab/src/rendering/NumberedBarRenderer.d.ts +54 -0
  333. package/dist/types/alphatab/src/rendering/NumberedBarRendererFactory.d.ts +18 -0
  334. package/dist/types/alphatab/src/rendering/NumberedBeatContainerGlyph.d.ts +9 -0
  335. package/dist/types/alphatab/src/rendering/RenderFinishedEventArgs.d.ts +47 -0
  336. package/dist/types/alphatab/src/rendering/ScoreBarRenderer.d.ts +68 -0
  337. package/dist/types/alphatab/src/rendering/ScoreBarRendererFactory.d.ts +18 -0
  338. package/dist/types/alphatab/src/rendering/ScoreBeatContainerGlyph.d.ts +12 -0
  339. package/dist/types/alphatab/src/rendering/ScoreRenderer.d.ts +55 -0
  340. package/dist/types/alphatab/src/rendering/ScoreRendererWrapper.d.ts +37 -0
  341. package/dist/types/alphatab/src/rendering/SlashBarRenderer.d.ts +41 -0
  342. package/dist/types/alphatab/src/rendering/SlashBarRendererFactory.d.ts +18 -0
  343. package/dist/types/alphatab/src/rendering/SlashBeatContainerGlyph.d.ts +9 -0
  344. package/dist/types/alphatab/src/rendering/TabBarRenderer.d.ts +57 -0
  345. package/dist/types/alphatab/src/rendering/TabBarRendererFactory.d.ts +22 -0
  346. package/dist/types/alphatab/src/rendering/_barrel.d.ts +11 -0
  347. package/dist/types/alphatab/src/rendering/effects/AlternateEndingsEffectInfo.d.ts +19 -0
  348. package/dist/types/alphatab/src/rendering/effects/BeatBarreEffectInfo.d.ts +21 -0
  349. package/dist/types/alphatab/src/rendering/effects/BeatTimerEffectInfo.d.ts +19 -0
  350. package/dist/types/alphatab/src/rendering/effects/CapoEffectInfo.d.ts +19 -0
  351. package/dist/types/alphatab/src/rendering/effects/ChordsEffectInfo.d.ts +19 -0
  352. package/dist/types/alphatab/src/rendering/effects/CrescendoEffectInfo.d.ts +19 -0
  353. package/dist/types/alphatab/src/rendering/effects/DirectionsEffectInfo.d.ts +19 -0
  354. package/dist/types/alphatab/src/rendering/effects/DynamicsEffectInfo.d.ts +21 -0
  355. package/dist/types/alphatab/src/rendering/effects/FadeEffectInfo.d.ts +19 -0
  356. package/dist/types/alphatab/src/rendering/effects/FermataEffectInfo.d.ts +19 -0
  357. package/dist/types/alphatab/src/rendering/effects/FingeringEffectInfo.d.ts +19 -0
  358. package/dist/types/alphatab/src/rendering/effects/FreeTimeEffectInfo.d.ts +19 -0
  359. package/dist/types/alphatab/src/rendering/effects/GolpeEffectInfo.d.ts +23 -0
  360. package/dist/types/alphatab/src/rendering/effects/HarmonicsEffectInfo.d.ts +23 -0
  361. package/dist/types/alphatab/src/rendering/effects/LeftHandTapEffectInfo.d.ts +16 -0
  362. package/dist/types/alphatab/src/rendering/effects/LetRingEffectInfo.d.ts +19 -0
  363. package/dist/types/alphatab/src/rendering/effects/LyricsEffectInfo.d.ts +19 -0
  364. package/dist/types/alphatab/src/rendering/effects/MarkerEffectInfo.d.ts +19 -0
  365. package/dist/types/alphatab/src/rendering/effects/NoteEffectInfoBase.d.ts +15 -0
  366. package/dist/types/alphatab/src/rendering/effects/NoteOrnamentEffectInfo.d.ts +19 -0
  367. package/dist/types/alphatab/src/rendering/effects/OttaviaEffectInfo.d.ts +22 -0
  368. package/dist/types/alphatab/src/rendering/effects/PalmMuteEffectInfo.d.ts +16 -0
  369. package/dist/types/alphatab/src/rendering/effects/PickSlideEffectInfo.d.ts +16 -0
  370. package/dist/types/alphatab/src/rendering/effects/PickStrokeEffectInfo.d.ts +19 -0
  371. package/dist/types/alphatab/src/rendering/effects/RasgueadoEffectInfo.d.ts +19 -0
  372. package/dist/types/alphatab/src/rendering/effects/SlightBeatVibratoEffectInfo.d.ts +19 -0
  373. package/dist/types/alphatab/src/rendering/effects/SlightNoteVibratoEffectInfo.d.ts +18 -0
  374. package/dist/types/alphatab/src/rendering/effects/SustainPedalEffectInfo.d.ts +19 -0
  375. package/dist/types/alphatab/src/rendering/effects/TapEffectInfo.d.ts +19 -0
  376. package/dist/types/alphatab/src/rendering/effects/TempoEffectInfo.d.ts +19 -0
  377. package/dist/types/alphatab/src/rendering/effects/TextEffectInfo.d.ts +19 -0
  378. package/dist/types/alphatab/src/rendering/effects/TrillEffectInfo.d.ts +16 -0
  379. package/dist/types/alphatab/src/rendering/effects/TripletFeelEffectInfo.d.ts +19 -0
  380. package/dist/types/alphatab/src/rendering/effects/WahPedalEffectInfo.d.ts +19 -0
  381. package/dist/types/alphatab/src/rendering/effects/WhammyBarEffectInfo.d.ts +19 -0
  382. package/dist/types/alphatab/src/rendering/effects/WideBeatVibratoEffectInfo.d.ts +19 -0
  383. package/dist/types/alphatab/src/rendering/effects/WideNoteVibratoEffectInfo.d.ts +16 -0
  384. package/dist/types/alphatab/src/rendering/glyphs/AccentuationGlyph.d.ts +13 -0
  385. package/dist/types/alphatab/src/rendering/glyphs/AccidentalGlyph.d.ts +10 -0
  386. package/dist/types/alphatab/src/rendering/glyphs/AccidentalGroupGlyph.d.ts +8 -0
  387. package/dist/types/alphatab/src/rendering/glyphs/AlternateEndingsGlyph.d.ts +15 -0
  388. package/dist/types/alphatab/src/rendering/glyphs/ArticStaccatoAboveGlyph.d.ts +8 -0
  389. package/dist/types/alphatab/src/rendering/glyphs/AugmentationDotGlyph.d.ts +8 -0
  390. package/dist/types/alphatab/src/rendering/glyphs/BarLineGlyph.d.ts +11 -0
  391. package/dist/types/alphatab/src/rendering/glyphs/BarNumberGlyph.d.ts +11 -0
  392. package/dist/types/alphatab/src/rendering/glyphs/BarTempoGlyph.d.ts +14 -0
  393. package/dist/types/alphatab/src/rendering/glyphs/BeatContainerGlyph.d.ts +34 -0
  394. package/dist/types/alphatab/src/rendering/glyphs/BeatGlyphBase.d.ts +24 -0
  395. package/dist/types/alphatab/src/rendering/glyphs/BeatOnNoteGlyphBase.d.ts +18 -0
  396. package/dist/types/alphatab/src/rendering/glyphs/BeatTimerGlyph.d.ts +14 -0
  397. package/dist/types/alphatab/src/rendering/glyphs/BeatVibratoGlyph.d.ts +9 -0
  398. package/dist/types/alphatab/src/rendering/glyphs/BendNoteHeadGroupGlyph.d.ts +26 -0
  399. package/dist/types/alphatab/src/rendering/glyphs/ChordDiagramContainerGlyph.d.ts +10 -0
  400. package/dist/types/alphatab/src/rendering/glyphs/ChordDiagramGlyph.d.ts +16 -0
  401. package/dist/types/alphatab/src/rendering/glyphs/ClefGlyph.d.ts +15 -0
  402. package/dist/types/alphatab/src/rendering/glyphs/CrescendoGlyph.d.ts +12 -0
  403. package/dist/types/alphatab/src/rendering/glyphs/DeadNoteHeadGlyph.d.ts +7 -0
  404. package/dist/types/alphatab/src/rendering/glyphs/DeadSlappedBeatGlyph.d.ts +10 -0
  405. package/dist/types/alphatab/src/rendering/glyphs/DiamondNoteHeadGlyph.d.ts +9 -0
  406. package/dist/types/alphatab/src/rendering/glyphs/DirectionsContainerGlyph.d.ts +15 -0
  407. package/dist/types/alphatab/src/rendering/glyphs/DynamicsGlyph.d.ts +10 -0
  408. package/dist/types/alphatab/src/rendering/glyphs/EffectGlyph.d.ts +24 -0
  409. package/dist/types/alphatab/src/rendering/glyphs/FadeGlyph.d.ts +11 -0
  410. package/dist/types/alphatab/src/rendering/glyphs/FermataGlyph.d.ts +11 -0
  411. package/dist/types/alphatab/src/rendering/glyphs/FingeringGroupGlyph.d.ts +28 -0
  412. package/dist/types/alphatab/src/rendering/glyphs/FlagGlyph.d.ts +11 -0
  413. package/dist/types/alphatab/src/rendering/glyphs/GhostNoteContainerGlyph.d.ts +29 -0
  414. package/dist/types/alphatab/src/rendering/glyphs/GhostParenthesisGlyph.d.ts +13 -0
  415. package/dist/types/alphatab/src/rendering/glyphs/Glyph.d.ts +18 -0
  416. package/dist/types/alphatab/src/rendering/glyphs/GlyphGroup.d.ts +15 -0
  417. package/dist/types/alphatab/src/rendering/glyphs/GroupedEffectGlyph.d.ts +20 -0
  418. package/dist/types/alphatab/src/rendering/glyphs/GuitarGolpeGlyph.d.ts +8 -0
  419. package/dist/types/alphatab/src/rendering/glyphs/KeySignatureGlyph.d.ts +8 -0
  420. package/dist/types/alphatab/src/rendering/glyphs/LeftHandTapGlyph.d.ts +8 -0
  421. package/dist/types/alphatab/src/rendering/glyphs/LeftToRightLayoutingGlyphGroup.d.ts +11 -0
  422. package/dist/types/alphatab/src/rendering/glyphs/LineRangedGlyph.d.ts +14 -0
  423. package/dist/types/alphatab/src/rendering/glyphs/LyricsGlyph.d.ts +14 -0
  424. package/dist/types/alphatab/src/rendering/glyphs/MultiBarRestGlyph.d.ts +12 -0
  425. package/dist/types/alphatab/src/rendering/glyphs/MusicFontGlyph.d.ts +34 -0
  426. package/dist/types/alphatab/src/rendering/glyphs/NoteHeadGlyph.d.ts +14 -0
  427. package/dist/types/alphatab/src/rendering/glyphs/NoteNumberGlyph.d.ts +20 -0
  428. package/dist/types/alphatab/src/rendering/glyphs/NoteOrnamentGlyph.d.ts +10 -0
  429. package/dist/types/alphatab/src/rendering/glyphs/NoteVibratoGlyph.d.ts +26 -0
  430. package/dist/types/alphatab/src/rendering/glyphs/NumberGlyph.d.ts +16 -0
  431. package/dist/types/alphatab/src/rendering/glyphs/NumberedBeatGlyph.d.ts +37 -0
  432. package/dist/types/alphatab/src/rendering/glyphs/NumberedDashGlyph.d.ts +12 -0
  433. package/dist/types/alphatab/src/rendering/glyphs/NumberedKeySignatureGlyph.d.ts +17 -0
  434. package/dist/types/alphatab/src/rendering/glyphs/NumberedNoteHeadGlyph.d.ts +14 -0
  435. package/dist/types/alphatab/src/rendering/glyphs/NumberedSlurGlyph.d.ts +14 -0
  436. package/dist/types/alphatab/src/rendering/glyphs/NumberedTieGlyph.d.ts +21 -0
  437. package/dist/types/alphatab/src/rendering/glyphs/OttavaGlyph.d.ts +15 -0
  438. package/dist/types/alphatab/src/rendering/glyphs/PercussionNoteHeadGlyph.d.ts +14 -0
  439. package/dist/types/alphatab/src/rendering/glyphs/PickStrokeGlyph.d.ts +10 -0
  440. package/dist/types/alphatab/src/rendering/glyphs/PictEdgeOfCymbalGlyph.d.ts +8 -0
  441. package/dist/types/alphatab/src/rendering/glyphs/RepeatCountGlyph.d.ts +11 -0
  442. package/dist/types/alphatab/src/rendering/glyphs/RowContainerGlyph.d.ts +12 -0
  443. package/dist/types/alphatab/src/rendering/glyphs/RowGlyphContainer.d.ts +13 -0
  444. package/dist/types/alphatab/src/rendering/glyphs/ScoreBeatGlyph.d.ts +29 -0
  445. package/dist/types/alphatab/src/rendering/glyphs/ScoreBeatPreNotesGlyph.d.ts +14 -0
  446. package/dist/types/alphatab/src/rendering/glyphs/ScoreBendGlyph.d.ts +17 -0
  447. package/dist/types/alphatab/src/rendering/glyphs/ScoreBrushGlyph.d.ts +13 -0
  448. package/dist/types/alphatab/src/rendering/glyphs/ScoreHelperNotesBaseGlyph.d.ts +15 -0
  449. package/dist/types/alphatab/src/rendering/glyphs/ScoreLegatoGlyph.d.ts +16 -0
  450. package/dist/types/alphatab/src/rendering/glyphs/ScoreNoteChordGlyph.d.ts +35 -0
  451. package/dist/types/alphatab/src/rendering/glyphs/ScoreNoteChordGlyphBase.d.ts +25 -0
  452. package/dist/types/alphatab/src/rendering/glyphs/ScoreNoteGlyphInfo.d.ts +9 -0
  453. package/dist/types/alphatab/src/rendering/glyphs/ScoreRestGlyph.d.ts +17 -0
  454. package/dist/types/alphatab/src/rendering/glyphs/ScoreSlideLineGlyph.d.ts +22 -0
  455. package/dist/types/alphatab/src/rendering/glyphs/ScoreSlurGlyph.d.ts +18 -0
  456. package/dist/types/alphatab/src/rendering/glyphs/ScoreTieGlyph.d.ts +20 -0
  457. package/dist/types/alphatab/src/rendering/glyphs/ScoreTimeSignatureGlyph.d.ts +8 -0
  458. package/dist/types/alphatab/src/rendering/glyphs/ScoreWhammyBarGlyph.d.ts +14 -0
  459. package/dist/types/alphatab/src/rendering/glyphs/SlashBeatGlyph.d.ts +24 -0
  460. package/dist/types/alphatab/src/rendering/glyphs/SlashNoteHeadGlyph.d.ts +24 -0
  461. package/dist/types/alphatab/src/rendering/glyphs/SlashRestGlyph.d.ts +9 -0
  462. package/dist/types/alphatab/src/rendering/glyphs/SlashTieGlyph.d.ts +21 -0
  463. package/dist/types/alphatab/src/rendering/glyphs/SpacingGlyph.d.ts +8 -0
  464. package/dist/types/alphatab/src/rendering/glyphs/StringNumberContainerGlyph.d.ts +11 -0
  465. package/dist/types/alphatab/src/rendering/glyphs/SustainPedalGlyph.d.ts +10 -0
  466. package/dist/types/alphatab/src/rendering/glyphs/TabBeatContainerGlyph.d.ts +13 -0
  467. package/dist/types/alphatab/src/rendering/glyphs/TabBeatGlyph.d.ts +25 -0
  468. package/dist/types/alphatab/src/rendering/glyphs/TabBeatPreNotesGlyph.d.ts +9 -0
  469. package/dist/types/alphatab/src/rendering/glyphs/TabBendGlyph.d.ts +24 -0
  470. package/dist/types/alphatab/src/rendering/glyphs/TabBendRenderPoint.d.ts +8 -0
  471. package/dist/types/alphatab/src/rendering/glyphs/TabBrushGlyph.d.ts +13 -0
  472. package/dist/types/alphatab/src/rendering/glyphs/TabClefGlyph.d.ts +8 -0
  473. package/dist/types/alphatab/src/rendering/glyphs/TabNoteChordGlyph.d.ts +33 -0
  474. package/dist/types/alphatab/src/rendering/glyphs/TabRestGlyph.d.ts +15 -0
  475. package/dist/types/alphatab/src/rendering/glyphs/TabSlideLineGlyph.d.ts +21 -0
  476. package/dist/types/alphatab/src/rendering/glyphs/TabSlurGlyph.d.ts +14 -0
  477. package/dist/types/alphatab/src/rendering/glyphs/TabTieGlyph.d.ts +21 -0
  478. package/dist/types/alphatab/src/rendering/glyphs/TabTimeSignatureGlyph.d.ts +9 -0
  479. package/dist/types/alphatab/src/rendering/glyphs/TabWhammyBarGlyph.d.ts +19 -0
  480. package/dist/types/alphatab/src/rendering/glyphs/TextGlyph.d.ts +18 -0
  481. package/dist/types/alphatab/src/rendering/glyphs/TieGlyph.d.ts +40 -0
  482. package/dist/types/alphatab/src/rendering/glyphs/TimeSignatureGlyph.d.ts +18 -0
  483. package/dist/types/alphatab/src/rendering/glyphs/TremoloPickingGlyph.d.ts +9 -0
  484. package/dist/types/alphatab/src/rendering/glyphs/TrillGlyph.d.ts +10 -0
  485. package/dist/types/alphatab/src/rendering/glyphs/TripletFeelGlyph.d.ts +15 -0
  486. package/dist/types/alphatab/src/rendering/glyphs/TuningContainerGlyph.d.ts +7 -0
  487. package/dist/types/alphatab/src/rendering/glyphs/TuningGlyph.d.ts +16 -0
  488. package/dist/types/alphatab/src/rendering/glyphs/VoiceContainerGlyph.d.ts +26 -0
  489. package/dist/types/alphatab/src/rendering/glyphs/WahPedalGlyph.d.ts +11 -0
  490. package/dist/types/alphatab/src/rendering/layout/HorizontalScreenLayout.d.ts +23 -0
  491. package/dist/types/alphatab/src/rendering/layout/PageViewLayout.d.ts +28 -0
  492. package/dist/types/alphatab/src/rendering/layout/ScoreLayout.d.ts +73 -0
  493. package/dist/types/alphatab/src/rendering/staves/BarLayoutingInfo.d.ts +44 -0
  494. package/dist/types/alphatab/src/rendering/staves/MasterBarsRenderers.d.ts +18 -0
  495. package/dist/types/alphatab/src/rendering/staves/RenderStaff.d.ts +72 -0
  496. package/dist/types/alphatab/src/rendering/staves/Spring.d.ts +16 -0
  497. package/dist/types/alphatab/src/rendering/staves/StaffSystem.d.ts +75 -0
  498. package/dist/types/alphatab/src/rendering/staves/StaffTrackGroup.d.ts +20 -0
  499. package/dist/types/alphatab/src/rendering/utils/AccidentalHelper.d.ts +89 -0
  500. package/dist/types/alphatab/src/rendering/utils/BarBounds.d.ts +45 -0
  501. package/dist/types/alphatab/src/rendering/utils/BarCollisionHelper.d.ts +31 -0
  502. package/dist/types/alphatab/src/rendering/utils/BarHelpers.d.ts +18 -0
  503. package/dist/types/alphatab/src/rendering/utils/BeamDirection.d.ts +7 -0
  504. package/dist/types/alphatab/src/rendering/utils/BeamingHelper.d.ts +92 -0
  505. package/dist/types/alphatab/src/rendering/utils/BeatBounds.d.ts +52 -0
  506. package/dist/types/alphatab/src/rendering/utils/Bounds.d.ts +23 -0
  507. package/dist/types/alphatab/src/rendering/utils/BoundsLookup.d.ts +98 -0
  508. package/dist/types/alphatab/src/rendering/utils/ElementStyleHelper.d.ts +29 -0
  509. package/dist/types/alphatab/src/rendering/utils/MasterBarBounds.d.ts +64 -0
  510. package/dist/types/alphatab/src/rendering/utils/NoteBounds.d.ts +25 -0
  511. package/dist/types/alphatab/src/rendering/utils/StaffSystemBounds.d.ts +45 -0
  512. package/dist/types/alphatab/src/synth/ActiveBeatsChangedEventArgs.d.ts +12 -0
  513. package/dist/types/alphatab/src/synth/AlphaSynth.d.ts +248 -0
  514. package/dist/types/alphatab/src/synth/AlphaSynthWrapper.d.ts +92 -0
  515. package/dist/types/alphatab/src/synth/BackingTrackPlayer.d.ts +53 -0
  516. package/dist/types/alphatab/src/synth/ExternalMediaPlayer.d.ts +55 -0
  517. package/dist/types/alphatab/src/synth/IAlphaSynth.d.ts +271 -0
  518. package/dist/types/alphatab/src/synth/IAudioExporter.d.ts +127 -0
  519. package/dist/types/alphatab/src/synth/IAudioSampleSynthesizer.d.ts +126 -0
  520. package/dist/types/alphatab/src/synth/ISynthOutput.d.ts +90 -0
  521. package/dist/types/alphatab/src/synth/MidiEventsPlayedEventArgs.d.ts +16 -0
  522. package/dist/types/alphatab/src/synth/MidiFileSequencer.d.ts +98 -0
  523. package/dist/types/alphatab/src/synth/PlaybackRange.d.ts +14 -0
  524. package/dist/types/alphatab/src/synth/PlaybackRangeChangedEventArgs.d.ts +16 -0
  525. package/dist/types/alphatab/src/synth/PlayerState.d.ts +14 -0
  526. package/dist/types/alphatab/src/synth/PlayerStateChangedEventArgs.d.ts +21 -0
  527. package/dist/types/alphatab/src/synth/PositionChangedEventArgs.d.ts +44 -0
  528. package/dist/types/alphatab/src/synth/SynthConstants.d.ts +30 -0
  529. package/dist/types/alphatab/src/synth/SynthHelper.d.ts +9 -0
  530. package/dist/types/alphatab/src/synth/_barrel.d.ts +19 -0
  531. package/dist/types/alphatab/src/synth/ds/CircularSampleBuffer.d.ts +38 -0
  532. package/dist/types/alphatab/src/synth/ds/Queue.d.ts +13 -0
  533. package/dist/types/alphatab/src/synth/soundfont/Hydra.d.ts +133 -0
  534. package/dist/types/alphatab/src/synth/soundfont/RiffChunk.d.ts +10 -0
  535. package/dist/types/alphatab/src/synth/synthesis/Channel.d.ts +21 -0
  536. package/dist/types/alphatab/src/synth/synthesis/Channels.d.ts +11 -0
  537. package/dist/types/alphatab/src/synth/synthesis/Envelope.d.ts +16 -0
  538. package/dist/types/alphatab/src/synth/synthesis/LoopMode.d.ts +8 -0
  539. package/dist/types/alphatab/src/synth/synthesis/OutputMode.d.ts +18 -0
  540. package/dist/types/alphatab/src/synth/synthesis/Preset.d.ts +10 -0
  541. package/dist/types/alphatab/src/synth/synthesis/Region.d.ts +110 -0
  542. package/dist/types/alphatab/src/synth/synthesis/SynthEvent.d.ts +12 -0
  543. package/dist/types/alphatab/src/synth/synthesis/TinySoundFont.d.ts +252 -0
  544. package/dist/types/alphatab/src/synth/synthesis/Voice.d.ts +43 -0
  545. package/dist/types/alphatab/src/synth/synthesis/VoiceEnvelope.d.ts +31 -0
  546. package/dist/types/alphatab/src/synth/synthesis/VoiceLfo.d.ts +10 -0
  547. package/dist/types/alphatab/src/synth/synthesis/VoiceLowPass.d.ts +16 -0
  548. package/dist/types/alphatab/src/synth/vorbis/IntBitReader.d.ts +26 -0
  549. package/dist/types/alphatab/src/synth/vorbis/OggReader.d.ts +23 -0
  550. package/dist/types/alphatab/src/synth/vorbis/VorbisFile.d.ts +9 -0
  551. package/dist/types/alphatab/src/synth/vorbis/VorbisStream.d.ts +13 -0
  552. package/dist/types/alphatab/src/synth/vorbis/VorbisStreamDecoder.d.ts +260 -0
  553. package/dist/types/alphatab/src/synth/vorbis/VorbisStreamReader.d.ts +49 -0
  554. package/dist/types/alphatab/src/util/FontLoadingChecker.d.ts +16 -0
  555. package/dist/types/alphatab/src/util/Lazy.d.ts +12 -0
  556. package/dist/types/alphatab/src/xml/XmlDocument.d.ts +10 -0
  557. package/dist/types/alphatab/src/xml/XmlError.d.ts +9 -0
  558. package/dist/types/alphatab/src/xml/XmlNode.d.ts +34 -0
  559. package/dist/types/alphatab/src/xml/XmlParser.d.ts +39 -0
  560. package/dist/types/alphatab/src/xml/XmlWriter.d.ts +20 -0
  561. package/dist/types/alphatab/src/zip/Crc32.d.ts +32 -0
  562. package/dist/types/alphatab/src/zip/Deflater.d.ts +74 -0
  563. package/dist/types/alphatab/src/zip/DeflaterConstants.d.ts +20 -0
  564. package/dist/types/alphatab/src/zip/DeflaterEngine.d.ts +124 -0
  565. package/dist/types/alphatab/src/zip/DeflaterHuffman.d.ts +76 -0
  566. package/dist/types/alphatab/src/zip/HuffTools.d.ts +11 -0
  567. package/dist/types/alphatab/src/zip/Huffman.d.ts +28 -0
  568. package/dist/types/alphatab/src/zip/Inflate.d.ts +40 -0
  569. package/dist/types/alphatab/src/zip/PendingBuffer.d.ts +65 -0
  570. package/dist/types/alphatab/src/zip/ZipEntry.d.ts +14 -0
  571. package/dist/types/alphatab/src/zip/ZipReader.d.ts +11 -0
  572. package/dist/types/alphatab/src/zip/ZipWriter.d.ts +16 -0
  573. package/dist/types/alphatex/src/common.d.ts +4 -0
  574. package/dist/types/alphatex/src/definitions.d.ts +8 -0
  575. package/dist/types/alphatex/src/enum.d.ts +48 -0
  576. package/dist/types/alphatex/src/metadata/bar/ac.d.ts +2 -0
  577. package/dist/types/alphatex/src/metadata/bar/accidentals.d.ts +2 -0
  578. package/dist/types/alphatex/src/metadata/bar/ae.d.ts +2 -0
  579. package/dist/types/alphatex/src/metadata/bar/barlineleft.d.ts +2 -0
  580. package/dist/types/alphatex/src/metadata/bar/barlineright.d.ts +2 -0
  581. package/dist/types/alphatex/src/metadata/bar/clef.d.ts +2 -0
  582. package/dist/types/alphatex/src/metadata/bar/db.d.ts +2 -0
  583. package/dist/types/alphatex/src/metadata/bar/ft.d.ts +2 -0
  584. package/dist/types/alphatex/src/metadata/bar/jump.d.ts +2 -0
  585. package/dist/types/alphatex/src/metadata/bar/ks.d.ts +2 -0
  586. package/dist/types/alphatex/src/metadata/bar/ottava.d.ts +2 -0
  587. package/dist/types/alphatex/src/metadata/bar/rc.d.ts +2 -0
  588. package/dist/types/alphatex/src/metadata/bar/ro.d.ts +2 -0
  589. package/dist/types/alphatex/src/metadata/bar/scale.d.ts +2 -0
  590. package/dist/types/alphatex/src/metadata/bar/section.d.ts +2 -0
  591. package/dist/types/alphatex/src/metadata/bar/simile.d.ts +2 -0
  592. package/dist/types/alphatex/src/metadata/bar/spd.d.ts +2 -0
  593. package/dist/types/alphatex/src/metadata/bar/sph.d.ts +2 -0
  594. package/dist/types/alphatex/src/metadata/bar/spu.d.ts +2 -0
  595. package/dist/types/alphatex/src/metadata/bar/sync.d.ts +2 -0
  596. package/dist/types/alphatex/src/metadata/bar/tempo.d.ts +2 -0
  597. package/dist/types/alphatex/src/metadata/bar/tf.d.ts +2 -0
  598. package/dist/types/alphatex/src/metadata/bar/ts.d.ts +2 -0
  599. package/dist/types/alphatex/src/metadata/bar/width.d.ts +2 -0
  600. package/dist/types/alphatex/src/metadata/score/album.d.ts +2 -0
  601. package/dist/types/alphatex/src/metadata/score/artist.d.ts +2 -0
  602. package/dist/types/alphatex/src/metadata/score/bracketextendmode.d.ts +2 -0
  603. package/dist/types/alphatex/src/metadata/score/copyright.d.ts +2 -0
  604. package/dist/types/alphatex/src/metadata/score/copyright2.d.ts +2 -0
  605. package/dist/types/alphatex/src/metadata/score/defaultsystemslayout.d.ts +2 -0
  606. package/dist/types/alphatex/src/metadata/score/firstsystemtracknamemode.d.ts +2 -0
  607. package/dist/types/alphatex/src/metadata/score/firstsystemtracknameorientation.d.ts +2 -0
  608. package/dist/types/alphatex/src/metadata/score/hidedynamics.d.ts +2 -0
  609. package/dist/types/alphatex/src/metadata/score/instructions.d.ts +2 -0
  610. package/dist/types/alphatex/src/metadata/score/multibarrest.d.ts +2 -0
  611. package/dist/types/alphatex/src/metadata/score/multitracktracknamepolicy.d.ts +2 -0
  612. package/dist/types/alphatex/src/metadata/score/music.d.ts +2 -0
  613. package/dist/types/alphatex/src/metadata/score/notices.d.ts +2 -0
  614. package/dist/types/alphatex/src/metadata/score/othersystemtracknamemode.d.ts +2 -0
  615. package/dist/types/alphatex/src/metadata/score/othersystemtracknameorientation.d.ts +2 -0
  616. package/dist/types/alphatex/src/metadata/score/showdynamics.d.ts +2 -0
  617. package/dist/types/alphatex/src/metadata/score/singletracktracknamepolicy.d.ts +2 -0
  618. package/dist/types/alphatex/src/metadata/score/subtitle.d.ts +2 -0
  619. package/dist/types/alphatex/src/metadata/score/systemslayout.d.ts +2 -0
  620. package/dist/types/alphatex/src/metadata/score/tab.d.ts +2 -0
  621. package/dist/types/alphatex/src/metadata/score/title.d.ts +4 -0
  622. package/dist/types/alphatex/src/metadata/score/usesystemsignseparator.d.ts +2 -0
  623. package/dist/types/alphatex/src/metadata/score/words.d.ts +2 -0
  624. package/dist/types/alphatex/src/metadata/score/wordsandmusic.d.ts +2 -0
  625. package/dist/types/alphatex/src/metadata/staff/articulation.d.ts +3 -0
  626. package/dist/types/alphatex/src/metadata/staff/capo.d.ts +2 -0
  627. package/dist/types/alphatex/src/metadata/staff/chord.d.ts +2 -0
  628. package/dist/types/alphatex/src/metadata/staff/displaytranspose.d.ts +2 -0
  629. package/dist/types/alphatex/src/metadata/staff/instrument.d.ts +2 -0
  630. package/dist/types/alphatex/src/metadata/staff/lyrics.d.ts +2 -0
  631. package/dist/types/alphatex/src/metadata/staff/transpose.d.ts +2 -0
  632. package/dist/types/alphatex/src/metadata/staff/tuning.d.ts +2 -0
  633. package/dist/types/alphatex/src/metadata/structural/staff.d.ts +2 -0
  634. package/dist/types/alphatex/src/metadata/structural/track.d.ts +2 -0
  635. package/dist/types/alphatex/src/metadata/structural/voice.d.ts +2 -0
  636. package/dist/types/alphatex/src/properties/beat/ad.d.ts +2 -0
  637. package/dist/types/alphatex/src/properties/beat/au.d.ts +2 -0
  638. package/dist/types/alphatex/src/properties/beat/balance.d.ts +2 -0
  639. package/dist/types/alphatex/src/properties/beat/bank.d.ts +2 -0
  640. package/dist/types/alphatex/src/properties/beat/barre.d.ts +2 -0
  641. package/dist/types/alphatex/src/properties/beat/bd.d.ts +2 -0
  642. package/dist/types/alphatex/src/properties/beat/beam.d.ts +2 -0
  643. package/dist/types/alphatex/src/properties/beat/bu.d.ts +2 -0
  644. package/dist/types/alphatex/src/properties/beat/ch.d.ts +2 -0
  645. package/dist/types/alphatex/src/properties/beat/cre.d.ts +2 -0
  646. package/dist/types/alphatex/src/properties/beat/d.d.ts +2 -0
  647. package/dist/types/alphatex/src/properties/beat/dd.d.ts +2 -0
  648. package/dist/types/alphatex/src/properties/beat/dec.d.ts +2 -0
  649. package/dist/types/alphatex/src/properties/beat/ds.d.ts +2 -0
  650. package/dist/types/alphatex/src/properties/beat/dy.d.ts +2 -0
  651. package/dist/types/alphatex/src/properties/beat/f.d.ts +2 -0
  652. package/dist/types/alphatex/src/properties/beat/fermata.d.ts +2 -0
  653. package/dist/types/alphatex/src/properties/beat/fo.d.ts +2 -0
  654. package/dist/types/alphatex/src/properties/beat/glpf.d.ts +2 -0
  655. package/dist/types/alphatex/src/properties/beat/glpt.d.ts +2 -0
  656. package/dist/types/alphatex/src/properties/beat/gr.d.ts +2 -0
  657. package/dist/types/alphatex/src/properties/beat/instrument.d.ts +2 -0
  658. package/dist/types/alphatex/src/properties/beat/legatoOrigin.d.ts +2 -0
  659. package/dist/types/alphatex/src/properties/beat/lyrics.d.ts +2 -0
  660. package/dist/types/alphatex/src/properties/beat/ot.d.ts +2 -0
  661. package/dist/types/alphatex/src/properties/beat/p.d.ts +2 -0
  662. package/dist/types/alphatex/src/properties/beat/rasg.d.ts +2 -0
  663. package/dist/types/alphatex/src/properties/beat/s.d.ts +2 -0
  664. package/dist/types/alphatex/src/properties/beat/sd.d.ts +2 -0
  665. package/dist/types/alphatex/src/properties/beat/slashed.d.ts +2 -0
  666. package/dist/types/alphatex/src/properties/beat/spd.d.ts +2 -0
  667. package/dist/types/alphatex/src/properties/beat/spe.d.ts +2 -0
  668. package/dist/types/alphatex/src/properties/beat/sph.d.ts +2 -0
  669. package/dist/types/alphatex/src/properties/beat/spu.d.ts +2 -0
  670. package/dist/types/alphatex/src/properties/beat/su.d.ts +2 -0
  671. package/dist/types/alphatex/src/properties/beat/tb.d.ts +2 -0
  672. package/dist/types/alphatex/src/properties/beat/tbe.d.ts +2 -0
  673. package/dist/types/alphatex/src/properties/beat/tempo.d.ts +2 -0
  674. package/dist/types/alphatex/src/properties/beat/timer.d.ts +2 -0
  675. package/dist/types/alphatex/src/properties/beat/tp.d.ts +2 -0
  676. package/dist/types/alphatex/src/properties/beat/tt.d.ts +2 -0
  677. package/dist/types/alphatex/src/properties/beat/tu.d.ts +2 -0
  678. package/dist/types/alphatex/src/properties/beat/txt.d.ts +2 -0
  679. package/dist/types/alphatex/src/properties/beat/v.d.ts +2 -0
  680. package/dist/types/alphatex/src/properties/beat/volume.d.ts +2 -0
  681. package/dist/types/alphatex/src/properties/beat/vs.d.ts +2 -0
  682. package/dist/types/alphatex/src/properties/beat/vw.d.ts +2 -0
  683. package/dist/types/alphatex/src/properties/beat/wahc.d.ts +2 -0
  684. package/dist/types/alphatex/src/properties/beat/waho.d.ts +2 -0
  685. package/dist/types/alphatex/src/properties/note/ac.d.ts +2 -0
  686. package/dist/types/alphatex/src/properties/note/acc.d.ts +2 -0
  687. package/dist/types/alphatex/src/properties/note/ah.d.ts +3 -0
  688. package/dist/types/alphatex/src/properties/note/b.d.ts +2 -0
  689. package/dist/types/alphatex/src/properties/note/be.d.ts +2 -0
  690. package/dist/types/alphatex/src/properties/note/fh.d.ts +2 -0
  691. package/dist/types/alphatex/src/properties/note/g.d.ts +2 -0
  692. package/dist/types/alphatex/src/properties/note/h.d.ts +2 -0
  693. package/dist/types/alphatex/src/properties/note/hac.d.ts +2 -0
  694. package/dist/types/alphatex/src/properties/note/hide.d.ts +2 -0
  695. package/dist/types/alphatex/src/properties/note/iturn.d.ts +2 -0
  696. package/dist/types/alphatex/src/properties/note/lf.d.ts +2 -0
  697. package/dist/types/alphatex/src/properties/note/lht.d.ts +2 -0
  698. package/dist/types/alphatex/src/properties/note/lmordent.d.ts +2 -0
  699. package/dist/types/alphatex/src/properties/note/lr.d.ts +2 -0
  700. package/dist/types/alphatex/src/properties/note/nh.d.ts +2 -0
  701. package/dist/types/alphatex/src/properties/note/ph.d.ts +2 -0
  702. package/dist/types/alphatex/src/properties/note/pm.d.ts +2 -0
  703. package/dist/types/alphatex/src/properties/note/psd.d.ts +2 -0
  704. package/dist/types/alphatex/src/properties/note/psu.d.ts +2 -0
  705. package/dist/types/alphatex/src/properties/note/rf.d.ts +2 -0
  706. package/dist/types/alphatex/src/properties/note/sh.d.ts +2 -0
  707. package/dist/types/alphatex/src/properties/note/sia.d.ts +2 -0
  708. package/dist/types/alphatex/src/properties/note/sib.d.ts +2 -0
  709. package/dist/types/alphatex/src/properties/note/sl.d.ts +2 -0
  710. package/dist/types/alphatex/src/properties/note/slur.d.ts +2 -0
  711. package/dist/types/alphatex/src/properties/note/sod.d.ts +2 -0
  712. package/dist/types/alphatex/src/properties/note/sou.d.ts +2 -0
  713. package/dist/types/alphatex/src/properties/note/ss.d.ts +2 -0
  714. package/dist/types/alphatex/src/properties/note/st.d.ts +2 -0
  715. package/dist/types/alphatex/src/properties/note/string.d.ts +2 -0
  716. package/dist/types/alphatex/src/properties/note/t.d.ts +3 -0
  717. package/dist/types/alphatex/src/properties/note/ten.d.ts +2 -0
  718. package/dist/types/alphatex/src/properties/note/th.d.ts +2 -0
  719. package/dist/types/alphatex/src/properties/note/tr.d.ts +2 -0
  720. package/dist/types/alphatex/src/properties/note/turn.d.ts +2 -0
  721. package/dist/types/alphatex/src/properties/note/umordent.d.ts +2 -0
  722. package/dist/types/alphatex/src/properties/note/v.d.ts +2 -0
  723. package/dist/types/alphatex/src/properties/note/vw.d.ts +2 -0
  724. package/dist/types/alphatex/src/properties/note/x.d.ts +2 -0
  725. package/dist/types/alphatex/src/types.d.ts +161 -0
  726. package/dist/types/lsp/src/index.d.ts +21 -0
  727. package/dist/types/lsp/src/server/completion.d.ts +3 -0
  728. package/dist/types/lsp/src/server/diagnostics.d.ts +2 -0
  729. package/dist/types/lsp/src/server/hover.d.ts +2 -0
  730. package/dist/types/lsp/src/server/index.d.ts +13 -0
  731. package/dist/types/lsp/src/server/signatureHelp.d.ts +2 -0
  732. package/dist/types/lsp/src/server/types.d.ts +15 -0
  733. package/dist/types/lsp/src/server/utils.d.ts +6 -0
  734. package/dist/types/monaco/src/alphaTab.monaco.d.ts +2 -0
  735. package/dist/types/monaco/src/alphatex.d.ts +6 -0
  736. package/dist/types/monaco/src/lsp.d.ts +20 -0
  737. package/dist/types/monaco/src/lspMonacoMappings.d.ts +24 -0
  738. package/dist/types/monaco/src/textmate.d.ts +15 -0
  739. package/dist/types/monaco/src/types.d.ts +15 -0
  740. package/dist/types/monaco/src/worker.d.ts +1 -0
  741. package/dist/types/monaco/test/placeholder.test.d.ts +1 -0
  742. package/dist/types/monaco/vite.config.d.ts +2 -0
  743. package/dist/types/tooling/src/typescript.d.ts +9 -0
  744. package/dist/types/tooling/src/vite.d.ts +13 -0
  745. package/dist/types/tooling/src/vite.plugin.dts.d.ts +1 -0
  746. package/dist/types/tooling/src/vite.plugin.min.d.ts +3 -0
  747. package/dist/typescript.mjs +375 -0
  748. package/dist/typespec.mjs +148 -0
  749. package/dist/vb.mjs +393 -0
  750. package/dist/wgsl.mjs +474 -0
  751. package/dist/xml.mjs +127 -0
  752. package/dist/yaml.mjs +238 -0
  753. package/package.json +58 -0
  754. package/src/alphaTab.monaco.ts +3 -0
  755. package/src/alphatex.ts +18 -0
  756. package/src/lsp.ts +296 -0
  757. package/src/lspMonacoMappings.ts +456 -0
  758. package/src/textmate.ts +90 -0
  759. package/src/types.ts +16 -0
  760. package/src/worker.ts +4 -0
  761. package/test/placeholder.test.ts +3 -0
  762. package/tsconfig.json +3 -0
  763. package/vite.config.ts +17 -0
@@ -0,0 +1,1029 @@
1
+ /*!
2
+ * alphaTab Monaco v1.7.0-alpha.1626 (develop, build 1626)
3
+ *
4
+ * Copyright © 2025, Daniel Kuschny and Contributors, All rights reserved.
5
+ *
6
+ * This Source Code Form is subject to the terms of the Mozilla Public
7
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
8
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
+ *
10
+ * @preserve
11
+ * @license
12
+ */
13
+
14
+ import { m as monaco_editor_core_star } from './alphaTab.monaco2.mjs';
15
+
16
+ /*!-----------------------------------------------------------------------------
17
+ * Copyright (c) Microsoft Corporation. All rights reserved.
18
+ * Version: 0.54.0(7c2310116c57517348bbd868a21139f32454be22)
19
+ * Released under the MIT license
20
+ * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
21
+ *-----------------------------------------------------------------------------*/
22
+
23
+ var __defProp = Object.defineProperty;
24
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
25
+ var __getOwnPropNames = Object.getOwnPropertyNames;
26
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
27
+ var __copyProps = (to, from, except, desc) => {
28
+ if (from && typeof from === "object" || typeof from === "function") {
29
+ for (let key of __getOwnPropNames(from))
30
+ if (!__hasOwnProp.call(to, key) && key !== except)
31
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
32
+ }
33
+ return to;
34
+ };
35
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget);
36
+
37
+ // src/fillers/monaco-editor-core.ts
38
+ var monaco_editor_core_exports = {};
39
+ __reExport(monaco_editor_core_exports, monaco_editor_core_star);
40
+
41
+ // src/basic-languages/freemarker2/freemarker2.ts
42
+ var EMPTY_ELEMENTS = [
43
+ "assign",
44
+ "flush",
45
+ "ftl",
46
+ "return",
47
+ "global",
48
+ "import",
49
+ "include",
50
+ "break",
51
+ "continue",
52
+ "local",
53
+ "nested",
54
+ "nt",
55
+ "setting",
56
+ "stop",
57
+ "t",
58
+ "lt",
59
+ "rt",
60
+ "fallback"
61
+ ];
62
+ var BLOCK_ELEMENTS = [
63
+ "attempt",
64
+ "autoesc",
65
+ "autoEsc",
66
+ "compress",
67
+ "comment",
68
+ "escape",
69
+ "noescape",
70
+ "function",
71
+ "if",
72
+ "list",
73
+ "items",
74
+ "sep",
75
+ "macro",
76
+ "noparse",
77
+ "noParse",
78
+ "noautoesc",
79
+ "noAutoEsc",
80
+ "outputformat",
81
+ "switch",
82
+ "visit",
83
+ "recurse"
84
+ ];
85
+ var TagSyntaxAngle = {
86
+ close: ">",
87
+ id: "angle",
88
+ open: "<"
89
+ };
90
+ var TagSyntaxBracket = {
91
+ close: "\\]",
92
+ id: "bracket",
93
+ open: "\\["
94
+ };
95
+ var TagSyntaxAuto = {
96
+ close: "[>\\]]",
97
+ id: "auto",
98
+ open: "[<\\[]"
99
+ };
100
+ var InterpolationSyntaxDollar = {
101
+ close: "\\}",
102
+ id: "dollar",
103
+ open1: "\\$",
104
+ open2: "\\{"
105
+ };
106
+ var InterpolationSyntaxBracket = {
107
+ close: "\\]",
108
+ id: "bracket",
109
+ open1: "\\[",
110
+ open2: "="
111
+ };
112
+ function createLangConfiguration(ts) {
113
+ return {
114
+ brackets: [
115
+ ["<", ">"],
116
+ ["[", "]"],
117
+ ["(", ")"],
118
+ ["{", "}"]
119
+ ],
120
+ comments: {
121
+ blockComment: [`${ts.open}--`, `--${ts.close}`]
122
+ },
123
+ autoCloseBefore: "\n\r }]),.:;=",
124
+ autoClosingPairs: [
125
+ { open: "{", close: "}" },
126
+ { open: "[", close: "]" },
127
+ { open: "(", close: ")" },
128
+ { open: '"', close: '"', notIn: ["string"] },
129
+ { open: "'", close: "'", notIn: ["string"] }
130
+ ],
131
+ surroundingPairs: [
132
+ { open: '"', close: '"' },
133
+ { open: "'", close: "'" },
134
+ { open: "{", close: "}" },
135
+ { open: "[", close: "]" },
136
+ { open: "(", close: ")" },
137
+ { open: "<", close: ">" }
138
+ ],
139
+ folding: {
140
+ markers: {
141
+ start: new RegExp(
142
+ `${ts.open}#(?:${BLOCK_ELEMENTS.join("|")})([^/${ts.close}]*(?!/)${ts.close})[^${ts.open}]*$`
143
+ ),
144
+ end: new RegExp(`${ts.open}/#(?:${BLOCK_ELEMENTS.join("|")})[\\r\\n\\t ]*>`)
145
+ }
146
+ },
147
+ onEnterRules: [
148
+ {
149
+ beforeText: new RegExp(
150
+ `${ts.open}#(?!(?:${EMPTY_ELEMENTS.join("|")}))([a-zA-Z_]+)([^/${ts.close}]*(?!/)${ts.close})[^${ts.open}]*$`
151
+ ),
152
+ afterText: new RegExp(`^${ts.open}/#([a-zA-Z_]+)[\\r\\n\\t ]*${ts.close}$`),
153
+ action: {
154
+ indentAction: monaco_editor_core_exports.languages.IndentAction.IndentOutdent
155
+ }
156
+ },
157
+ {
158
+ beforeText: new RegExp(
159
+ `${ts.open}#(?!(?:${EMPTY_ELEMENTS.join("|")}))([a-zA-Z_]+)([^/${ts.close}]*(?!/)${ts.close})[^${ts.open}]*$`
160
+ ),
161
+ action: { indentAction: monaco_editor_core_exports.languages.IndentAction.Indent }
162
+ }
163
+ ]
164
+ };
165
+ }
166
+ function createLangConfigurationAuto() {
167
+ return {
168
+ // Cannot set block comment delimiter in auto mode...
169
+ // It depends on the content and the cursor position of the file...
170
+ brackets: [
171
+ ["<", ">"],
172
+ ["[", "]"],
173
+ ["(", ")"],
174
+ ["{", "}"]
175
+ ],
176
+ autoCloseBefore: "\n\r }]),.:;=",
177
+ autoClosingPairs: [
178
+ { open: "{", close: "}" },
179
+ { open: "[", close: "]" },
180
+ { open: "(", close: ")" },
181
+ { open: '"', close: '"', notIn: ["string"] },
182
+ { open: "'", close: "'", notIn: ["string"] }
183
+ ],
184
+ surroundingPairs: [
185
+ { open: '"', close: '"' },
186
+ { open: "'", close: "'" },
187
+ { open: "{", close: "}" },
188
+ { open: "[", close: "]" },
189
+ { open: "(", close: ")" },
190
+ { open: "<", close: ">" }
191
+ ],
192
+ folding: {
193
+ markers: {
194
+ start: new RegExp(`[<\\[]#(?:${BLOCK_ELEMENTS.join("|")})([^/>\\]]*(?!/)[>\\]])[^<\\[]*$`),
195
+ end: new RegExp(`[<\\[]/#(?:${BLOCK_ELEMENTS.join("|")})[\\r\\n\\t ]*>`)
196
+ }
197
+ },
198
+ onEnterRules: [
199
+ {
200
+ beforeText: new RegExp(
201
+ `[<\\[]#(?!(?:${EMPTY_ELEMENTS.join("|")}))([a-zA-Z_]+)([^/>\\]]*(?!/)[>\\]])[^[<\\[]]*$`
202
+ ),
203
+ afterText: new RegExp(`^[<\\[]/#([a-zA-Z_]+)[\\r\\n\\t ]*[>\\]]$`),
204
+ action: {
205
+ indentAction: monaco_editor_core_exports.languages.IndentAction.IndentOutdent
206
+ }
207
+ },
208
+ {
209
+ beforeText: new RegExp(
210
+ `[<\\[]#(?!(?:${EMPTY_ELEMENTS.join("|")}))([a-zA-Z_]+)([^/>\\]]*(?!/)[>\\]])[^[<\\[]]*$`
211
+ ),
212
+ action: { indentAction: monaco_editor_core_exports.languages.IndentAction.Indent }
213
+ }
214
+ ]
215
+ };
216
+ }
217
+ function createMonarchLanguage(ts, is) {
218
+ const id = `_${ts.id}_${is.id}`;
219
+ const s = (name) => name.replace(/__id__/g, id);
220
+ const r = (regexp) => {
221
+ const source = regexp.source.replace(/__id__/g, id);
222
+ return new RegExp(source, regexp.flags);
223
+ };
224
+ return {
225
+ // Settings
226
+ unicode: true,
227
+ includeLF: false,
228
+ start: s("default__id__"),
229
+ ignoreCase: false,
230
+ defaultToken: "invalid",
231
+ tokenPostfix: `.freemarker2`,
232
+ brackets: [
233
+ { open: "{", close: "}", token: "delimiter.curly" },
234
+ { open: "[", close: "]", token: "delimiter.square" },
235
+ { open: "(", close: ")", token: "delimiter.parenthesis" },
236
+ { open: "<", close: ">", token: "delimiter.angle" }
237
+ ],
238
+ // Dynamic RegExp
239
+ [s("open__id__")]: new RegExp(ts.open),
240
+ [s("close__id__")]: new RegExp(ts.close),
241
+ [s("iOpen1__id__")]: new RegExp(is.open1),
242
+ [s("iOpen2__id__")]: new RegExp(is.open2),
243
+ [s("iClose__id__")]: new RegExp(is.close),
244
+ // <#START_TAG : "<" | "<#" | "[#">
245
+ // <#END_TAG : "</" | "</#" | "[/#">
246
+ [s("startTag__id__")]: r(/(@open__id__)(#)/),
247
+ [s("endTag__id__")]: r(/(@open__id__)(\/#)/),
248
+ [s("startOrEndTag__id__")]: r(/(@open__id__)(\/?#)/),
249
+ // <#CLOSE_TAG1 : (<BLANK>)* (">" | "]")>
250
+ [s("closeTag1__id__")]: r(/((?:@blank)*)(@close__id__)/),
251
+ // <#CLOSE_TAG2 : (<BLANK>)* ("/")? (">" | "]")>
252
+ [s("closeTag2__id__")]: r(/((?:@blank)*\/?)(@close__id__)/),
253
+ // Static RegExp
254
+ // <#BLANK : " " | "\t" | "\n" | "\r">
255
+ blank: /[ \t\n\r]/,
256
+ // <FALSE : "false">
257
+ // <TRUE : "true">
258
+ // <IN : "in">
259
+ // <AS : "as">
260
+ // <USING : "using">
261
+ keywords: ["false", "true", "in", "as", "using"],
262
+ // Directive names that cannot have an expression parameters and cannot be self-closing
263
+ // E.g. <#if id==2> ... </#if>
264
+ directiveStartCloseTag1: /attempt|recover|sep|auto[eE]sc|no(?:autoe|AutoE)sc|compress|default|no[eE]scape|comment|no[pP]arse/,
265
+ // Directive names that cannot have an expression parameter and can be self-closing
266
+ // E.g. <#if> ... <#else> ... </#if>
267
+ // E.g. <#if> ... <#else /></#if>
268
+ directiveStartCloseTag2: /else|break|continue|return|stop|flush|t|lt|rt|nt|nested|recurse|fallback|ftl/,
269
+ // Directive names that can have an expression parameter and cannot be self-closing
270
+ // E.g. <#if id==2> ... </#if>
271
+ directiveStartBlank: /if|else[iI]f|list|for[eE]ach|switch|case|assign|global|local|include|import|function|macro|transform|visit|stop|return|call|setting|output[fF]ormat|nested|recurse|escape|ftl|items/,
272
+ // Directive names that can have an end tag
273
+ // E.g. </#if>
274
+ directiveEndCloseTag1: /if|list|items|sep|recover|attempt|for[eE]ach|local|global|assign|function|macro|output[fF]ormat|auto[eE]sc|no(?:autoe|AutoE)sc|compress|transform|switch|escape|no[eE]scape/,
275
+ // <#ESCAPED_CHAR :
276
+ // "\\"
277
+ // (
278
+ // ("n" | "t" | "r" | "f" | "b" | "g" | "l" | "a" | "\\" | "'" | "\"" | "{" | "=")
279
+ // |
280
+ // ("x" ["0"-"9", "A"-"F", "a"-"f"])
281
+ // )
282
+ // >
283
+ // Note: While the JavaCC tokenizer rule only specifies one hex digit,
284
+ // FreeMarker actually interprets up to 4 hex digits.
285
+ escapedChar: /\\(?:[ntrfbgla\\'"\{=]|(?:x[0-9A-Fa-f]{1,4}))/,
286
+ // <#ASCII_DIGIT: ["0" - "9"]>
287
+ asciiDigit: /[0-9]/,
288
+ // <INTEGER : (["0"-"9"])+>
289
+ integer: /[0-9]+/,
290
+ // <#NON_ESCAPED_ID_START_CHAR:
291
+ // [
292
+ // // This was generated on JDK 1.8.0_20 Win64 with src/main/misc/identifierChars/IdentifierCharGenerator.java
293
+ // ...
294
+ // ]
295
+ nonEscapedIdStartChar: /[\$@-Z_a-z\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u1FFF\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183-\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3006\u3031-\u3035\u303B-\u303C\u3040-\u318F\u31A0-\u31BA\u31F0-\u31FF\u3300-\u337F\u3400-\u4DB5\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,
296
+ // <#ESCAPED_ID_CHAR: "\\" ("-" | "." | ":" | "#")>
297
+ escapedIdChar: /\\[\-\.:#]/,
298
+ // <#ID_START_CHAR: <NON_ESCAPED_ID_START_CHAR>|<ESCAPED_ID_CHAR>>
299
+ idStartChar: /(?:@nonEscapedIdStartChar)|(?:@escapedIdChar)/,
300
+ // <ID: <ID_START_CHAR> (<ID_START_CHAR>|<ASCII_DIGIT>)*>
301
+ id: /(?:@idStartChar)(?:(?:@idStartChar)|(?:@asciiDigit))*/,
302
+ // Certain keywords / operators are allowed to index hashes
303
+ //
304
+ // Expression DotVariable(Expression exp) :
305
+ // {
306
+ // Token t;
307
+ // }
308
+ // {
309
+ // <DOT>
310
+ // (
311
+ // t = <ID> | t = <TIMES> | t = <DOUBLE_STAR>
312
+ // |
313
+ // (
314
+ // t = <LESS_THAN>
315
+ // |
316
+ // t = <LESS_THAN_EQUALS>
317
+ // |
318
+ // t = <ESCAPED_GT>
319
+ // |
320
+ // t = <ESCAPED_GTE>
321
+ // |
322
+ // t = <FALSE>
323
+ // |
324
+ // t = <TRUE>
325
+ // |
326
+ // t = <IN>
327
+ // |
328
+ // t = <AS>
329
+ // |
330
+ // t = <USING>
331
+ // )
332
+ // {
333
+ // if (!Character.isLetter(t.image.charAt(0))) {
334
+ // throw new ParseException(t.image + " is not a valid identifier.", template, t);
335
+ // }
336
+ // }
337
+ // )
338
+ // {
339
+ // notListLiteral(exp, "hash");
340
+ // notStringLiteral(exp, "hash");
341
+ // notBooleanLiteral(exp, "hash");
342
+ // Dot dot = new Dot(exp, t.image);
343
+ // dot.setLocation(template, exp, t);
344
+ // return dot;
345
+ // }
346
+ // }
347
+ specialHashKeys: /\*\*|\*|false|true|in|as|using/,
348
+ // <DOUBLE_EQUALS : "==">
349
+ // <EQUALS : "=">
350
+ // <NOT_EQUALS : "!=">
351
+ // <PLUS_EQUALS : "+=">
352
+ // <MINUS_EQUALS : "-=">
353
+ // <TIMES_EQUALS : "*=">
354
+ // <DIV_EQUALS : "/=">
355
+ // <MOD_EQUALS : "%=">
356
+ // <PLUS_PLUS : "++">
357
+ // <MINUS_MINUS : "--">
358
+ // <LESS_THAN_EQUALS : "lte" | "\\lte" | "<=" | "&lt;=">
359
+ // <LESS_THAN : "lt" | "\\lt" | "<" | "&lt;">
360
+ // <ESCAPED_GTE : "gte" | "\\gte" | "&gt;=">
361
+ // <ESCAPED_GT: "gt" | "\\gt" | "&gt;">
362
+ // <DOUBLE_STAR : "**">
363
+ // <PLUS : "+">
364
+ // <MINUS : "-">
365
+ // <TIMES : "*">
366
+ // <PERCENT : "%">
367
+ // <AND : "&" | "&&" | "&amp;&amp;" | "\\and" >
368
+ // <OR : "|" | "||">
369
+ // <EXCLAM : "!">
370
+ // <COMMA : ",">
371
+ // <SEMICOLON : ";">
372
+ // <COLON : ":">
373
+ // <ELLIPSIS : "...">
374
+ // <DOT_DOT_ASTERISK : "..*" >
375
+ // <DOT_DOT_LESS : "..<" | "..!" >
376
+ // <DOT_DOT : "..">
377
+ // <EXISTS : "??">
378
+ // <BUILT_IN : "?">
379
+ // <LAMBDA_ARROW : "->" | "-&gt;">
380
+ namedSymbols: /&lt;=|&gt;=|\\lte|\\lt|&lt;|\\gte|\\gt|&gt;|&amp;&amp;|\\and|-&gt;|->|==|!=|\+=|-=|\*=|\/=|%=|\+\+|--|<=|&&|\|\||:|\.\.\.|\.\.\*|\.\.<|\.\.!|\?\?|=|<|\+|-|\*|\/|%|\||\.\.|\?|!|&|\.|,|;/,
381
+ arrows: ["->", "-&gt;"],
382
+ delimiters: [";", ":", ",", "."],
383
+ stringOperators: ["lte", "lt", "gte", "gt"],
384
+ noParseTags: ["noparse", "noParse", "comment"],
385
+ tokenizer: {
386
+ // Parser states
387
+ // Plain text
388
+ [s("default__id__")]: [
389
+ { include: s("@directive_token__id__") },
390
+ { include: s("@interpolation_and_text_token__id__") }
391
+ ],
392
+ // A FreeMarker expression inside a directive, e.g. <#if 2<3>
393
+ [s("fmExpression__id__.directive")]: [
394
+ { include: s("@blank_and_expression_comment_token__id__") },
395
+ { include: s("@directive_end_token__id__") },
396
+ { include: s("@expression_token__id__") }
397
+ ],
398
+ // A FreeMarker expression inside an interpolation, e.g. ${2+3}
399
+ [s("fmExpression__id__.interpolation")]: [
400
+ { include: s("@blank_and_expression_comment_token__id__") },
401
+ { include: s("@expression_token__id__") },
402
+ { include: s("@greater_operators_token__id__") }
403
+ ],
404
+ // In an expression and inside a not-yet closed parenthesis / bracket
405
+ [s("inParen__id__.plain")]: [
406
+ { include: s("@blank_and_expression_comment_token__id__") },
407
+ { include: s("@directive_end_token__id__") },
408
+ { include: s("@expression_token__id__") }
409
+ ],
410
+ [s("inParen__id__.gt")]: [
411
+ { include: s("@blank_and_expression_comment_token__id__") },
412
+ { include: s("@expression_token__id__") },
413
+ { include: s("@greater_operators_token__id__") }
414
+ ],
415
+ // Expression for the unified call, e.g. <@createMacro() ... >
416
+ [s("noSpaceExpression__id__")]: [
417
+ { include: s("@no_space_expression_end_token__id__") },
418
+ { include: s("@directive_end_token__id__") },
419
+ { include: s("@expression_token__id__") }
420
+ ],
421
+ // For the function of a unified call. Special case for when the
422
+ // expression is a simple identifier.
423
+ // <@join [1,2] ",">
424
+ // <@null!join [1,2] ",">
425
+ [s("unifiedCall__id__")]: [{ include: s("@unified_call_token__id__") }],
426
+ // For singly and doubly quoted string (that may contain interpolations)
427
+ [s("singleString__id__")]: [{ include: s("@string_single_token__id__") }],
428
+ [s("doubleString__id__")]: [{ include: s("@string_double_token__id__") }],
429
+ // For singly and doubly quoted string (that may not contain interpolations)
430
+ [s("rawSingleString__id__")]: [{ include: s("@string_single_raw_token__id__") }],
431
+ [s("rawDoubleString__id__")]: [{ include: s("@string_double_raw_token__id__") }],
432
+ // For a comment in an expression
433
+ // ${ 1 + <#-- comment --> 2}
434
+ [s("expressionComment__id__")]: [{ include: s("@expression_comment_token__id__") }],
435
+ // For <#noparse> ... </#noparse>
436
+ // For <#noParse> ... </#noParse>
437
+ // For <#comment> ... </#comment>
438
+ [s("noParse__id__")]: [{ include: s("@no_parse_token__id__") }],
439
+ // For <#-- ... -->
440
+ [s("terseComment__id__")]: [{ include: s("@terse_comment_token__id__") }],
441
+ // Common rules
442
+ [s("directive_token__id__")]: [
443
+ // <ATTEMPT : <START_TAG> "attempt" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
444
+ // <RECOVER : <START_TAG> "recover" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
445
+ // <SEP : <START_TAG> "sep" <CLOSE_TAG1>>
446
+ // <AUTOESC : <START_TAG> "auto" ("e"|"E") "sc" <CLOSE_TAG1>> {
447
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 4), DEFAULT);
448
+ // }
449
+ // <NOAUTOESC : <START_TAG> "no" ("autoe"|"AutoE") "sc" <CLOSE_TAG1>> {
450
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 2), DEFAULT);
451
+ // }
452
+ // <COMPRESS : <START_TAG> "compress" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
453
+ // <DEFAUL : <START_TAG> "default" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
454
+ // <NOESCAPE : <START_TAG> "no" ("e" | "E") "scape" <CLOSE_TAG1>> {
455
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 2), DEFAULT);
456
+ // }
457
+ //
458
+ // <COMMENT : <START_TAG> "comment" <CLOSE_TAG1>> {
459
+ // handleTagSyntaxAndSwitch(matchedToken, NO_PARSE); noparseTag = "comment";
460
+ // }
461
+ // <NOPARSE: <START_TAG> "no" ("p" | "P") "arse" <CLOSE_TAG1>> {
462
+ // int tagNamingConvention = getTagNamingConvention(matchedToken, 2);
463
+ // handleTagSyntaxAndSwitch(matchedToken, tagNamingConvention, NO_PARSE);
464
+ // noparseTag = tagNamingConvention == Configuration.CAMEL_CASE_NAMING_CONVENTION ? "noParse" : "noparse";
465
+ // }
466
+ [
467
+ r(/(?:@startTag__id__)(@directiveStartCloseTag1)(?:@closeTag1__id__)/),
468
+ ts.id === "auto" ? {
469
+ cases: {
470
+ "$1==<": { token: "@rematch", switchTo: `@default_angle_${is.id}` },
471
+ "$1==[": { token: "@rematch", switchTo: `@default_bracket_${is.id}` }
472
+ }
473
+ } : [
474
+ { token: "@brackets.directive" },
475
+ { token: "delimiter.directive" },
476
+ {
477
+ cases: {
478
+ "@noParseTags": { token: "tag", next: s("@noParse__id__.$3") },
479
+ "@default": { token: "tag" }
480
+ }
481
+ },
482
+ { token: "delimiter.directive" },
483
+ { token: "@brackets.directive" }
484
+ ]
485
+ ],
486
+ // <ELSE : <START_TAG> "else" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
487
+ // <BREAK : <START_TAG> "break" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
488
+ // <CONTINUE : <START_TAG> "continue" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
489
+ // <SIMPLE_RETURN : <START_TAG> "return" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
490
+ // <HALT : <START_TAG> "stop" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
491
+ // <FLUSH : <START_TAG> "flush" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
492
+ // <TRIM : <START_TAG> "t" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
493
+ // <LTRIM : <START_TAG> "lt" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
494
+ // <RTRIM : <START_TAG> "rt" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
495
+ // <NOTRIM : <START_TAG> "nt" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
496
+ // <SIMPLE_NESTED : <START_TAG> "nested" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
497
+ // <SIMPLE_RECURSE : <START_TAG> "recurse" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
498
+ // <FALLBACK : <START_TAG> "fallback" <CLOSE_TAG2>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
499
+ // <TRIVIAL_FTL_HEADER : ("<#ftl" | "[#ftl") ("/")? (">" | "]")> { ftlHeader(matchedToken); }
500
+ [
501
+ r(/(?:@startTag__id__)(@directiveStartCloseTag2)(?:@closeTag2__id__)/),
502
+ ts.id === "auto" ? {
503
+ cases: {
504
+ "$1==<": { token: "@rematch", switchTo: `@default_angle_${is.id}` },
505
+ "$1==[": { token: "@rematch", switchTo: `@default_bracket_${is.id}` }
506
+ }
507
+ } : [
508
+ { token: "@brackets.directive" },
509
+ { token: "delimiter.directive" },
510
+ { token: "tag" },
511
+ { token: "delimiter.directive" },
512
+ { token: "@brackets.directive" }
513
+ ]
514
+ ],
515
+ // <IF : <START_TAG> "if" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
516
+ // <ELSE_IF : <START_TAG> "else" ("i" | "I") "f" <BLANK>> {
517
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 4), FM_EXPRESSION);
518
+ // }
519
+ // <LIST : <START_TAG> "list" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
520
+ // <FOREACH : <START_TAG> "for" ("e" | "E") "ach" <BLANK>> {
521
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 3), FM_EXPRESSION);
522
+ // }
523
+ // <SWITCH : <START_TAG> "switch" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
524
+ // <CASE : <START_TAG> "case" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
525
+ // <ASSIGN : <START_TAG> "assign" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
526
+ // <GLOBALASSIGN : <START_TAG> "global" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
527
+ // <LOCALASSIGN : <START_TAG> "local" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
528
+ // <_INCLUDE : <START_TAG> "include" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
529
+ // <IMPORT : <START_TAG> "import" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
530
+ // <FUNCTION : <START_TAG> "function" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
531
+ // <MACRO : <START_TAG> "macro" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
532
+ // <TRANSFORM : <START_TAG> "transform" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
533
+ // <VISIT : <START_TAG> "visit" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
534
+ // <STOP : <START_TAG> "stop" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
535
+ // <RETURN : <START_TAG> "return" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
536
+ // <CALL : <START_TAG> "call" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
537
+ // <SETTING : <START_TAG> "setting" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
538
+ // <OUTPUTFORMAT : <START_TAG> "output" ("f"|"F") "ormat" <BLANK>> {
539
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 6), FM_EXPRESSION);
540
+ // }
541
+ // <NESTED : <START_TAG> "nested" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
542
+ // <RECURSE : <START_TAG> "recurse" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
543
+ // <ESCAPE : <START_TAG> "escape" <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
544
+ //
545
+ // Note: FreeMarker grammar appears to treat the FTL header as a special case,
546
+ // in order to remove new lines after the header (?), but since we only need
547
+ // to tokenize for highlighting, we can include this directive here.
548
+ // <FTL_HEADER : ("<#ftl" | "[#ftl") <BLANK>> { ftlHeader(matchedToken); }
549
+ //
550
+ // Note: FreeMarker grammar appears to treat the items directive as a special case for
551
+ // the AST parsing process, but since we only need to tokenize, we can include this
552
+ // directive here.
553
+ // <ITEMS : <START_TAG> "items" (<BLANK>)+ <AS> <BLANK>> { handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION); }
554
+ [
555
+ r(/(?:@startTag__id__)(@directiveStartBlank)(@blank)/),
556
+ ts.id === "auto" ? {
557
+ cases: {
558
+ "$1==<": { token: "@rematch", switchTo: `@default_angle_${is.id}` },
559
+ "$1==[": { token: "@rematch", switchTo: `@default_bracket_${is.id}` }
560
+ }
561
+ } : [
562
+ { token: "@brackets.directive" },
563
+ { token: "delimiter.directive" },
564
+ { token: "tag" },
565
+ { token: "", next: s("@fmExpression__id__.directive") }
566
+ ]
567
+ ],
568
+ // <END_IF : <END_TAG> "if" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
569
+ // <END_LIST : <END_TAG> "list" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
570
+ // <END_SEP : <END_TAG> "sep" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
571
+ // <END_RECOVER : <END_TAG> "recover" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
572
+ // <END_ATTEMPT : <END_TAG> "attempt" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
573
+ // <END_FOREACH : <END_TAG> "for" ("e" | "E") "ach" <CLOSE_TAG1>> {
574
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 3), DEFAULT);
575
+ // }
576
+ // <END_LOCAL : <END_TAG> "local" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
577
+ // <END_GLOBAL : <END_TAG> "global" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
578
+ // <END_ASSIGN : <END_TAG> "assign" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
579
+ // <END_FUNCTION : <END_TAG> "function" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
580
+ // <END_MACRO : <END_TAG> "macro" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
581
+ // <END_OUTPUTFORMAT : <END_TAG> "output" ("f" | "F") "ormat" <CLOSE_TAG1>> {
582
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 6), DEFAULT);
583
+ // }
584
+ // <END_AUTOESC : <END_TAG> "auto" ("e" | "E") "sc" <CLOSE_TAG1>> {
585
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 4), DEFAULT);
586
+ // }
587
+ // <END_NOAUTOESC : <END_TAG> "no" ("autoe"|"AutoE") "sc" <CLOSE_TAG1>> {
588
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 2), DEFAULT);
589
+ // }
590
+ // <END_COMPRESS : <END_TAG> "compress" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
591
+ // <END_TRANSFORM : <END_TAG> "transform" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
592
+ // <END_SWITCH : <END_TAG> "switch" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
593
+ // <END_ESCAPE : <END_TAG> "escape" <CLOSE_TAG1>> { handleTagSyntaxAndSwitch(matchedToken, DEFAULT); }
594
+ // <END_NOESCAPE : <END_TAG> "no" ("e" | "E") "scape" <CLOSE_TAG1>> {
595
+ // handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 2), DEFAULT);
596
+ // }
597
+ [
598
+ r(/(?:@endTag__id__)(@directiveEndCloseTag1)(?:@closeTag1__id__)/),
599
+ ts.id === "auto" ? {
600
+ cases: {
601
+ "$1==<": { token: "@rematch", switchTo: `@default_angle_${is.id}` },
602
+ "$1==[": { token: "@rematch", switchTo: `@default_bracket_${is.id}` }
603
+ }
604
+ } : [
605
+ { token: "@brackets.directive" },
606
+ { token: "delimiter.directive" },
607
+ { token: "tag" },
608
+ { token: "delimiter.directive" },
609
+ { token: "@brackets.directive" }
610
+ ]
611
+ ],
612
+ // <UNIFIED_CALL : "<@" | "[@" > { unifiedCall(matchedToken); }
613
+ [
614
+ r(/(@open__id__)(@)/),
615
+ ts.id === "auto" ? {
616
+ cases: {
617
+ "$1==<": { token: "@rematch", switchTo: `@default_angle_${is.id}` },
618
+ "$1==[": { token: "@rematch", switchTo: `@default_bracket_${is.id}` }
619
+ }
620
+ } : [
621
+ { token: "@brackets.directive" },
622
+ { token: "delimiter.directive", next: s("@unifiedCall__id__") }
623
+ ]
624
+ ],
625
+ // <UNIFIED_CALL_END : ("<" | "[") "/@" ((<ID>) ("."<ID>)*)? <CLOSE_TAG1>> { unifiedCallEnd(matchedToken); }
626
+ [
627
+ r(/(@open__id__)(\/@)((?:(?:@id)(?:\.(?:@id))*)?)(?:@closeTag1__id__)/),
628
+ [
629
+ { token: "@brackets.directive" },
630
+ { token: "delimiter.directive" },
631
+ { token: "tag" },
632
+ { token: "delimiter.directive" },
633
+ { token: "@brackets.directive" }
634
+ ]
635
+ ],
636
+ // <TERSE_COMMENT : ("<" | "[") "#--" > { noparseTag = "-->"; handleTagSyntaxAndSwitch(matchedToken, NO_PARSE); }
637
+ [
638
+ r(/(@open__id__)#--/),
639
+ ts.id === "auto" ? {
640
+ cases: {
641
+ "$1==<": { token: "@rematch", switchTo: `@default_angle_${is.id}` },
642
+ "$1==[": { token: "@rematch", switchTo: `@default_bracket_${is.id}` }
643
+ }
644
+ } : { token: "comment", next: s("@terseComment__id__") }
645
+ ],
646
+ // <UNKNOWN_DIRECTIVE : ("[#" | "[/#" | "<#" | "</#") (["a"-"z", "A"-"Z", "_"])+>
647
+ [
648
+ r(/(?:@startOrEndTag__id__)([a-zA-Z_]+)/),
649
+ ts.id === "auto" ? {
650
+ cases: {
651
+ "$1==<": { token: "@rematch", switchTo: `@default_angle_${is.id}` },
652
+ "$1==[": { token: "@rematch", switchTo: `@default_bracket_${is.id}` }
653
+ }
654
+ } : [
655
+ { token: "@brackets.directive" },
656
+ { token: "delimiter.directive" },
657
+ { token: "tag.invalid", next: s("@fmExpression__id__.directive") }
658
+ ]
659
+ ]
660
+ ],
661
+ // <DEFAULT, NO_DIRECTIVE> TOKEN :
662
+ [s("interpolation_and_text_token__id__")]: [
663
+ // <DOLLAR_INTERPOLATION_OPENING : "${"> { startInterpolation(matchedToken); }
664
+ // <SQUARE_BRACKET_INTERPOLATION_OPENING : "[="> { startInterpolation(matchedToken); }
665
+ [
666
+ r(/(@iOpen1__id__)(@iOpen2__id__)/),
667
+ [
668
+ { token: is.id === "bracket" ? "@brackets.interpolation" : "delimiter.interpolation" },
669
+ {
670
+ token: is.id === "bracket" ? "delimiter.interpolation" : "@brackets.interpolation",
671
+ next: s("@fmExpression__id__.interpolation")
672
+ }
673
+ ]
674
+ ],
675
+ // <STATIC_TEXT_FALSE_ALARM : "$" | "#" | "<" | "[" | "{"> // to handle a lone dollar sign or "<" or "# or <@ with whitespace after"
676
+ // <STATIC_TEXT_WS : ("\n" | "\r" | "\t" | " ")+>
677
+ // <STATIC_TEXT_NON_WS : (~["$", "<", "#", "[", "{", "\n", "\r", "\t", " "])+>
678
+ [/[\$#<\[\{]|(?:@blank)+|[^\$<#\[\{\n\r\t ]+/, { token: "source" }]
679
+ ],
680
+ // <STRING_LITERAL :
681
+ // (
682
+ // "\""
683
+ // ((~["\"", "\\"]) | <ESCAPED_CHAR>)*
684
+ // "\""
685
+ // )
686
+ // |
687
+ // (
688
+ // "'"
689
+ // ((~["'", "\\"]) | <ESCAPED_CHAR>)*
690
+ // "'"
691
+ // )
692
+ // >
693
+ [s("string_single_token__id__")]: [
694
+ [/[^'\\]/, { token: "string" }],
695
+ [/@escapedChar/, { token: "string.escape" }],
696
+ [/'/, { token: "string", next: "@pop" }]
697
+ ],
698
+ [s("string_double_token__id__")]: [
699
+ [/[^"\\]/, { token: "string" }],
700
+ [/@escapedChar/, { token: "string.escape" }],
701
+ [/"/, { token: "string", next: "@pop" }]
702
+ ],
703
+ // <RAW_STRING : "r" (("\"" (~["\""])* "\"") | ("'" (~["'"])* "'"))>
704
+ [s("string_single_raw_token__id__")]: [
705
+ [/[^']+/, { token: "string.raw" }],
706
+ [/'/, { token: "string.raw", next: "@pop" }]
707
+ ],
708
+ [s("string_double_raw_token__id__")]: [
709
+ [/[^"]+/, { token: "string.raw" }],
710
+ [/"/, { token: "string.raw", next: "@pop" }]
711
+ ],
712
+ // <FM_EXPRESSION, IN_PAREN, NO_SPACE_EXPRESSION, NAMED_PARAMETER_EXPRESSION> TOKEN :
713
+ [s("expression_token__id__")]: [
714
+ // Strings
715
+ [
716
+ /(r?)(['"])/,
717
+ {
718
+ cases: {
719
+ "r'": [
720
+ { token: "keyword" },
721
+ { token: "string.raw", next: s("@rawSingleString__id__") }
722
+ ],
723
+ 'r"': [
724
+ { token: "keyword" },
725
+ { token: "string.raw", next: s("@rawDoubleString__id__") }
726
+ ],
727
+ "'": [{ token: "source" }, { token: "string", next: s("@singleString__id__") }],
728
+ '"': [{ token: "source" }, { token: "string", next: s("@doubleString__id__") }]
729
+ }
730
+ }
731
+ ],
732
+ // Numbers
733
+ // <INTEGER : (["0"-"9"])+>
734
+ // <DECIMAL : <INTEGER> "." <INTEGER>>
735
+ [
736
+ /(?:@integer)(?:\.(?:@integer))?/,
737
+ {
738
+ cases: {
739
+ "(?:@integer)": { token: "number" },
740
+ "@default": { token: "number.float" }
741
+ }
742
+ }
743
+ ],
744
+ // Special hash keys that must not be treated as identifiers
745
+ // after a period, e.g. a.** is accessing the key "**" of a
746
+ [
747
+ /(\.)(@blank*)(@specialHashKeys)/,
748
+ [{ token: "delimiter" }, { token: "" }, { token: "identifier" }]
749
+ ],
750
+ // Symbols / operators
751
+ [
752
+ /(?:@namedSymbols)/,
753
+ {
754
+ cases: {
755
+ "@arrows": { token: "meta.arrow" },
756
+ "@delimiters": { token: "delimiter" },
757
+ "@default": { token: "operators" }
758
+ }
759
+ }
760
+ ],
761
+ // Identifiers
762
+ [
763
+ /@id/,
764
+ {
765
+ cases: {
766
+ "@keywords": { token: "keyword.$0" },
767
+ "@stringOperators": { token: "operators" },
768
+ "@default": { token: "identifier" }
769
+ }
770
+ }
771
+ ],
772
+ // <OPEN_BRACKET : "[">
773
+ // <CLOSE_BRACKET : "]">
774
+ // <OPEN_PAREN : "(">
775
+ // <CLOSE_PAREN : ")">
776
+ // <OPENING_CURLY_BRACKET : "{">
777
+ // <CLOSING_CURLY_BRACKET : "}">
778
+ [
779
+ /[\[\]\(\)\{\}]/,
780
+ {
781
+ cases: {
782
+ "\\[": {
783
+ cases: {
784
+ "$S2==gt": { token: "@brackets", next: s("@inParen__id__.gt") },
785
+ "@default": { token: "@brackets", next: s("@inParen__id__.plain") }
786
+ }
787
+ },
788
+ "\\]": {
789
+ cases: {
790
+ ...is.id === "bracket" ? {
791
+ "$S2==interpolation": { token: "@brackets.interpolation", next: "@popall" }
792
+ } : {},
793
+ // This cannot happen while in auto mode, since this applies only to an
794
+ // fmExpression inside a directive. But once we encounter the start of a
795
+ // directive, we can establish the tag syntax mode.
796
+ ...ts.id === "bracket" ? {
797
+ "$S2==directive": { token: "@brackets.directive", next: "@popall" }
798
+ } : {},
799
+ // Ignore mismatched paren
800
+ [s("$S1==inParen__id__")]: { token: "@brackets", next: "@pop" },
801
+ "@default": { token: "@brackets" }
802
+ }
803
+ },
804
+ "\\(": { token: "@brackets", next: s("@inParen__id__.gt") },
805
+ "\\)": {
806
+ cases: {
807
+ [s("$S1==inParen__id__")]: { token: "@brackets", next: "@pop" },
808
+ "@default": { token: "@brackets" }
809
+ }
810
+ },
811
+ "\\{": {
812
+ cases: {
813
+ "$S2==gt": { token: "@brackets", next: s("@inParen__id__.gt") },
814
+ "@default": { token: "@brackets", next: s("@inParen__id__.plain") }
815
+ }
816
+ },
817
+ "\\}": {
818
+ cases: {
819
+ ...is.id === "bracket" ? {} : {
820
+ "$S2==interpolation": { token: "@brackets.interpolation", next: "@popall" }
821
+ },
822
+ // Ignore mismatched paren
823
+ [s("$S1==inParen__id__")]: { token: "@brackets", next: "@pop" },
824
+ "@default": { token: "@brackets" }
825
+ }
826
+ }
827
+ }
828
+ }
829
+ ],
830
+ // <OPEN_MISPLACED_INTERPOLATION : "${" | "#{" | "[=">
831
+ [/\$\{/, { token: "delimiter.invalid" }]
832
+ ],
833
+ // <FM_EXPRESSION, IN_PAREN, NAMED_PARAMETER_EXPRESSION> SKIP :
834
+ [s("blank_and_expression_comment_token__id__")]: [
835
+ // < ( " " | "\t" | "\n" | "\r" )+ >
836
+ [/(?:@blank)+/, { token: "" }],
837
+ // < ("<" | "[") ("#" | "!") "--"> : EXPRESSION_COMMENT
838
+ [/[<\[][#!]--/, { token: "comment", next: s("@expressionComment__id__") }]
839
+ ],
840
+ // <FM_EXPRESSION, NO_SPACE_EXPRESSION, NAMED_PARAMETER_EXPRESSION> TOKEN :
841
+ [s("directive_end_token__id__")]: [
842
+ // <DIRECTIVE_END : ">">
843
+ // {
844
+ // if (inFTLHeader) {
845
+ // eatNewline();
846
+ // inFTLHeader = false;
847
+ // }
848
+ // if (squBracTagSyntax || postInterpolationLexState != -1 /* We are in an interpolation */) {
849
+ // matchedToken.kind = NATURAL_GT;
850
+ // } else {
851
+ // SwitchTo(DEFAULT);
852
+ // }
853
+ // }
854
+ // This cannot happen while in auto mode, since this applies only to an
855
+ // fmExpression inside a directive. But once we encounter the start of a
856
+ // directive, we can establish the tag syntax mode.
857
+ [
858
+ />/,
859
+ ts.id === "bracket" ? { token: "operators" } : { token: "@brackets.directive", next: "@popall" }
860
+ ],
861
+ // <EMPTY_DIRECTIVE_END : "/>" | "/]">
862
+ // It is a syntax error to end a tag with the wrong close token
863
+ // Let's indicate that to the user by not closing the tag
864
+ [
865
+ r(/(\/)(@close__id__)/),
866
+ [{ token: "delimiter.directive" }, { token: "@brackets.directive", next: "@popall" }]
867
+ ]
868
+ ],
869
+ // <IN_PAREN> TOKEN :
870
+ [s("greater_operators_token__id__")]: [
871
+ // <NATURAL_GT : ">">
872
+ [/>/, { token: "operators" }],
873
+ // <NATURAL_GTE : ">=">
874
+ [/>=/, { token: "operators" }]
875
+ ],
876
+ // <NO_SPACE_EXPRESSION> TOKEN :
877
+ [s("no_space_expression_end_token__id__")]: [
878
+ // <TERMINATING_WHITESPACE : (["\n", "\r", "\t", " "])+> : FM_EXPRESSION
879
+ [/(?:@blank)+/, { token: "", switchTo: s("@fmExpression__id__.directive") }]
880
+ ],
881
+ [s("unified_call_token__id__")]: [
882
+ // Special case for a call where the expression is just an ID
883
+ // <UNIFIED_CALL> <ID> <BLANK>+
884
+ [
885
+ /(@id)((?:@blank)+)/,
886
+ [{ token: "tag" }, { token: "", next: s("@fmExpression__id__.directive") }]
887
+ ],
888
+ [
889
+ r(/(@id)(\/?)(@close__id__)/),
890
+ [
891
+ { token: "tag" },
892
+ { token: "delimiter.directive" },
893
+ { token: "@brackets.directive", next: "@popall" }
894
+ ]
895
+ ],
896
+ [/./, { token: "@rematch", next: s("@noSpaceExpression__id__") }]
897
+ ],
898
+ // <NO_PARSE> TOKEN :
899
+ [s("no_parse_token__id__")]: [
900
+ // <MAYBE_END :
901
+ // ("<" | "[")
902
+ // "/"
903
+ // ("#")?
904
+ // (["a"-"z", "A"-"Z"])+
905
+ // ( " " | "\t" | "\n" | "\r" )*
906
+ // (">" | "]")
907
+ // >
908
+ [
909
+ r(/(@open__id__)(\/#?)([a-zA-Z]+)((?:@blank)*)(@close__id__)/),
910
+ {
911
+ cases: {
912
+ "$S2==$3": [
913
+ { token: "@brackets.directive" },
914
+ { token: "delimiter.directive" },
915
+ { token: "tag" },
916
+ { token: "" },
917
+ { token: "@brackets.directive", next: "@popall" }
918
+ ],
919
+ "$S2==comment": [
920
+ { token: "comment" },
921
+ { token: "comment" },
922
+ { token: "comment" },
923
+ { token: "comment" },
924
+ { token: "comment" }
925
+ ],
926
+ "@default": [
927
+ { token: "source" },
928
+ { token: "source" },
929
+ { token: "source" },
930
+ { token: "source" },
931
+ { token: "source" }
932
+ ]
933
+ }
934
+ }
935
+ ],
936
+ // <KEEP_GOING : (~["<", "[", "-"])+>
937
+ // <LONE_LESS_THAN_OR_DASH : ["<", "[", "-"]>
938
+ [
939
+ /[^<\[\-]+|[<\[\-]/,
940
+ {
941
+ cases: {
942
+ "$S2==comment": { token: "comment" },
943
+ "@default": { token: "source" }
944
+ }
945
+ }
946
+ ]
947
+ ],
948
+ // <EXPRESSION_COMMENT> SKIP:
949
+ [s("expression_comment_token__id__")]: [
950
+ // < "-->" | "--]">
951
+ [
952
+ /--[>\]]/,
953
+ {
954
+ token: "comment",
955
+ next: "@pop"
956
+ }
957
+ ],
958
+ // < (~["-", ">", "]"])+ >
959
+ // < ">">
960
+ // < "]">
961
+ // < "-">
962
+ [/[^\->\]]+|[>\]\-]/, { token: "comment" }]
963
+ ],
964
+ [s("terse_comment_token__id__")]: [
965
+ // <TERSE_COMMENT_END : "-->" | "--]">
966
+ [r(/--(?:@close__id__)/), { token: "comment", next: "@popall" }],
967
+ // <KEEP_GOING : (~["<", "[", "-"])+>
968
+ // <LONE_LESS_THAN_OR_DASH : ["<", "[", "-"]>
969
+ [/[^<\[\-]+|[<\[\-]/, { token: "comment" }]
970
+ ]
971
+ }
972
+ };
973
+ }
974
+ function createMonarchLanguageAuto(is) {
975
+ const angle = createMonarchLanguage(TagSyntaxAngle, is);
976
+ const bracket = createMonarchLanguage(TagSyntaxBracket, is);
977
+ const auto = createMonarchLanguage(TagSyntaxAuto, is);
978
+ return {
979
+ // Angle and bracket syntax mode
980
+ // We switch to one of these once we have determined the mode
981
+ ...angle,
982
+ ...bracket,
983
+ ...auto,
984
+ // Settings
985
+ unicode: true,
986
+ includeLF: false,
987
+ start: `default_auto_${is.id}`,
988
+ ignoreCase: false,
989
+ defaultToken: "invalid",
990
+ tokenPostfix: `.freemarker2`,
991
+ brackets: [
992
+ { open: "{", close: "}", token: "delimiter.curly" },
993
+ { open: "[", close: "]", token: "delimiter.square" },
994
+ { open: "(", close: ")", token: "delimiter.parenthesis" },
995
+ { open: "<", close: ">", token: "delimiter.angle" }
996
+ ],
997
+ tokenizer: {
998
+ ...angle.tokenizer,
999
+ ...bracket.tokenizer,
1000
+ ...auto.tokenizer
1001
+ }
1002
+ };
1003
+ }
1004
+ var TagAngleInterpolationDollar = {
1005
+ conf: createLangConfiguration(TagSyntaxAngle),
1006
+ language: createMonarchLanguage(TagSyntaxAngle, InterpolationSyntaxDollar)
1007
+ };
1008
+ var TagBracketInterpolationDollar = {
1009
+ conf: createLangConfiguration(TagSyntaxBracket),
1010
+ language: createMonarchLanguage(TagSyntaxBracket, InterpolationSyntaxDollar)
1011
+ };
1012
+ var TagAngleInterpolationBracket = {
1013
+ conf: createLangConfiguration(TagSyntaxAngle),
1014
+ language: createMonarchLanguage(TagSyntaxAngle, InterpolationSyntaxBracket)
1015
+ };
1016
+ var TagBracketInterpolationBracket = {
1017
+ conf: createLangConfiguration(TagSyntaxBracket),
1018
+ language: createMonarchLanguage(TagSyntaxBracket, InterpolationSyntaxBracket)
1019
+ };
1020
+ var TagAutoInterpolationDollar = {
1021
+ conf: createLangConfigurationAuto(),
1022
+ language: createMonarchLanguageAuto(InterpolationSyntaxDollar)
1023
+ };
1024
+ var TagAutoInterpolationBracket = {
1025
+ conf: createLangConfigurationAuto(),
1026
+ language: createMonarchLanguageAuto(InterpolationSyntaxBracket)
1027
+ };
1028
+
1029
+ export { TagAngleInterpolationBracket, TagAngleInterpolationDollar, TagAutoInterpolationBracket, TagAutoInterpolationDollar, TagBracketInterpolationBracket, TagBracketInterpolationDollar };